1418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager// Copyright (c) 2016, the R8 project authors. Please see the AUTHORS file
2418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager// for details. All rights reserved. Use of this source code is governed by a
3418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager// BSD-style license that can be found in the LICENSE file.
4418d1ca139ea11316113beafbb3b3dd3fd5587aMads Agerpackage com.android.tools.r8.code;
5418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager
6418d1ca139ea11316113beafbb3b3dd3fd5587aMads Agerimport com.android.tools.r8.ir.code.NumericType;
7418d1ca139ea11316113beafbb3b3dd3fd5587aMads Agerimport com.android.tools.r8.ir.conversion.IRBuilder;
8418d1ca139ea11316113beafbb3b3dd3fd5587aMads Agerpublic class NegDouble extends Format12x {
9418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager
10418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  public static final int OPCODE = 0x80;
11418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  public static final String NAME = "NegDouble";
12418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  public static final String SMALI_NAME = "neg-double";
13418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager
14418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  /*package*/ NegDouble(int high, BytecodeStream stream) {
15418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager    super(high, stream);
16418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  }
17418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager
18418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  public NegDouble(int dest, int source) {
19418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager    super(dest, source);
20418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  }
21418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager
22418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  public String getName() {
23418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager    return NAME;
24418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  }
25418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager
26418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  public String getSmaliName() {
27418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager    return SMALI_NAME;
28418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  }
29418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager
30418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  public int getOpcode() {
31418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager    return OPCODE;
32418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  }
33418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager
34418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  @Override
35418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  public void buildIR(IRBuilder builder) {
36418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager    builder.addNeg(NumericType.DOUBLE, A, B);
37418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager  }
38418d1ca139ea11316113beafbb3b3dd3fd5587aMads Ager}
39