1 // Copyright (c) 2016, the R8 project authors. Please see the AUTHORS file 2 // for details. All rights reserved. Use of this source code is governed by a 3 // BSD-style license that can be found in the LICENSE file. 4 package com.android.tools.r8.code; 5 6 import com.android.tools.r8.ir.code.NumericType; 7 import com.android.tools.r8.ir.conversion.IRBuilder; 8 9 public class DivIntLit8 extends Format22b { 10 11 public static final int OPCODE = 0xdb; 12 public static final String NAME = "DivIntLit8"; 13 public static final String SMALI_NAME = "div-int/lit8"; 14 DivIntLit8(int high, BytecodeStream stream)15 DivIntLit8(int high, BytecodeStream stream) { 16 super(high, stream); 17 } 18 DivIntLit8(int dest, int left, int constant)19 public DivIntLit8(int dest, int left, int constant) { 20 super(dest, left, constant); 21 } 22 getName()23 public String getName() { 24 return NAME; 25 } 26 getSmaliName()27 public String getSmaliName() { 28 return SMALI_NAME; 29 } 30 getOpcode()31 public int getOpcode() { 32 return OPCODE; 33 } 34 35 @Override buildIR(IRBuilder builder)36 public void buildIR(IRBuilder builder) { 37 builder.addDivLiteral(NumericType.INT, AA, BB, CC); 38 } 39 40 @Override canThrow()41 public boolean canThrow() { 42 return true; 43 } 44 } 45