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.
4package com.android.tools.r8.code;
5
6import com.android.tools.r8.ir.code.MemberType;
7import com.android.tools.r8.ir.conversion.IRBuilder;
8
9public class AputWide extends Format23x {
10
11  public static final int OPCODE = 0x4c;
12  public static final String NAME = "AputWide";
13  public static final String SMALI_NAME = "aput-wide";
14
15  /*package*/ AputWide(int high, BytecodeStream stream) {
16    super(high, stream);
17  }
18
19  public AputWide(int AA, int BB, int CC) {
20    super(AA, BB, CC);
21  }
22
23  public String getName() {
24    return NAME;
25  }
26
27  public String getSmaliName() {
28    return SMALI_NAME;
29  }
30
31  public int getOpcode() {
32    return OPCODE;
33  }
34
35  @Override
36  public void buildIR(IRBuilder builder) {
37    builder.addArrayPut(MemberType.WIDE, AA, BB, CC);
38  }
39
40  @Override
41  public boolean canThrow() {
42    return true;
43  }
44}
45