Lines Matching refs:Instruction
54 constexpr bool IsInstructionDirectConst(Instruction::Code opcode) { in IsInstructionDirectConst()
55 return Instruction::CONST_4 <= opcode && opcode <= Instruction::CONST_WIDE_HIGH16; in IsInstructionDirectConst()
58 constexpr bool IsInstructionConstWide(Instruction::Code opcode) { in IsInstructionConstWide()
59 return Instruction::CONST_WIDE_16 <= opcode && opcode <= Instruction::CONST_WIDE_HIGH16; in IsInstructionConstWide()
62 constexpr bool IsInstructionReturn(Instruction::Code opcode) { in IsInstructionReturn()
63 return Instruction::RETURN_VOID <= opcode && opcode <= Instruction::RETURN_OBJECT; in IsInstructionReturn()
66 constexpr bool IsInstructionInvoke(Instruction::Code opcode) { in IsInstructionInvoke()
67 return Instruction::INVOKE_VIRTUAL <= opcode && opcode <= Instruction::INVOKE_INTERFACE_RANGE && in IsInstructionInvoke()
68 opcode != Instruction::RETURN_VOID_NO_BARRIER; in IsInstructionInvoke()
71 constexpr bool IsInstructionQuickInvoke(Instruction::Code opcode) { in IsInstructionQuickInvoke()
72 return opcode == Instruction::INVOKE_VIRTUAL_QUICK || in IsInstructionQuickInvoke()
73 opcode == Instruction::INVOKE_VIRTUAL_RANGE_QUICK; in IsInstructionQuickInvoke()
76 constexpr bool IsInstructionInvokeStatic(Instruction::Code opcode) { in IsInstructionInvokeStatic()
77 return opcode == Instruction::INVOKE_STATIC || opcode == Instruction::INVOKE_STATIC_RANGE; in IsInstructionInvokeStatic()
80 constexpr bool IsInstructionGoto(Instruction::Code opcode) { in IsInstructionGoto()
81 return Instruction::GOTO <= opcode && opcode <= Instruction::GOTO_32; in IsInstructionGoto()
84 constexpr bool IsInstructionIfCc(Instruction::Code opcode) { in IsInstructionIfCc()
85 return Instruction::IF_EQ <= opcode && opcode <= Instruction::IF_LE; in IsInstructionIfCc()
88 constexpr bool IsInstructionIfCcZ(Instruction::Code opcode) { in IsInstructionIfCcZ()
89 return Instruction::IF_EQZ <= opcode && opcode <= Instruction::IF_LEZ; in IsInstructionIfCcZ()
92 constexpr bool IsInstructionIGet(Instruction::Code code) { in IsInstructionIGet()
93 return Instruction::IGET <= code && code <= Instruction::IGET_SHORT; in IsInstructionIGet()
96 constexpr bool IsInstructionIPut(Instruction::Code code) { in IsInstructionIPut()
97 return Instruction::IPUT <= code && code <= Instruction::IPUT_SHORT; in IsInstructionIPut()
100 constexpr bool IsInstructionSGet(Instruction::Code code) { in IsInstructionSGet()
101 return Instruction::SGET <= code && code <= Instruction::SGET_SHORT; in IsInstructionSGet()
104 constexpr bool IsInstructionSPut(Instruction::Code code) { in IsInstructionSPut()
105 return Instruction::SPUT <= code && code <= Instruction::SPUT_SHORT; in IsInstructionSPut()
108 constexpr bool IsInstructionAGet(Instruction::Code code) { in IsInstructionAGet()
109 return Instruction::AGET <= code && code <= Instruction::AGET_SHORT; in IsInstructionAGet()
112 constexpr bool IsInstructionAPut(Instruction::Code code) { in IsInstructionAPut()
113 return Instruction::APUT <= code && code <= Instruction::APUT_SHORT; in IsInstructionAPut()
116 constexpr bool IsInstructionIGetOrIPut(Instruction::Code code) { in IsInstructionIGetOrIPut()
117 return Instruction::IGET <= code && code <= Instruction::IPUT_SHORT; in IsInstructionIGetOrIPut()
120 constexpr bool IsInstructionIGetQuickOrIPutQuick(Instruction::Code code) { in IsInstructionIGetQuickOrIPutQuick()
121 return (code >= Instruction::IGET_QUICK && code <= Instruction::IPUT_OBJECT_QUICK) || in IsInstructionIGetQuickOrIPutQuick()
122 (code >= Instruction::IPUT_BOOLEAN_QUICK && code <= Instruction::IGET_SHORT_QUICK); in IsInstructionIGetQuickOrIPutQuick()
125 constexpr bool IsInstructionSGetOrSPut(Instruction::Code code) { in IsInstructionSGetOrSPut()
126 return Instruction::SGET <= code && code <= Instruction::SPUT_SHORT; in IsInstructionSGetOrSPut()
129 constexpr bool IsInstructionAGetOrAPut(Instruction::Code code) { in IsInstructionAGetOrAPut()
130 return Instruction::AGET <= code && code <= Instruction::APUT_SHORT; in IsInstructionAGetOrAPut()
133 constexpr bool IsInstructionBinOp2Addr(Instruction::Code code) { in IsInstructionBinOp2Addr()
134 return Instruction::ADD_INT_2ADDR <= code && code <= Instruction::REM_DOUBLE_2ADDR; in IsInstructionBinOp2Addr()
137 constexpr bool IsInvokeInstructionRange(Instruction::Code opcode) { in IsInvokeInstructionRange()
139 return opcode >= Instruction::INVOKE_VIRTUAL_RANGE; in IsInvokeInstructionRange()
142 constexpr DexInvokeType InvokeInstructionType(Instruction::Code opcode) { in InvokeInstructionType()
145 ? (opcode - Instruction::INVOKE_VIRTUAL_RANGE) in InvokeInstructionType()
146 : (opcode - Instruction::INVOKE_VIRTUAL)); in InvokeInstructionType()
149 constexpr DexMemAccessType IGetMemAccessType(Instruction::Code code) { in IGetMemAccessType()
151 return static_cast<DexMemAccessType>(code - Instruction::IGET); in IGetMemAccessType()
154 constexpr DexMemAccessType IPutMemAccessType(Instruction::Code code) { in IPutMemAccessType()
156 return static_cast<DexMemAccessType>(code - Instruction::IPUT); in IPutMemAccessType()
159 constexpr DexMemAccessType SGetMemAccessType(Instruction::Code code) { in SGetMemAccessType()
161 return static_cast<DexMemAccessType>(code - Instruction::SGET); in SGetMemAccessType()
164 constexpr DexMemAccessType SPutMemAccessType(Instruction::Code code) { in SPutMemAccessType()
166 return static_cast<DexMemAccessType>(code - Instruction::SPUT); in SPutMemAccessType()
169 constexpr DexMemAccessType AGetMemAccessType(Instruction::Code code) { in AGetMemAccessType()
171 return static_cast<DexMemAccessType>(code - Instruction::AGET); in AGetMemAccessType()
174 constexpr DexMemAccessType APutMemAccessType(Instruction::Code code) { in APutMemAccessType()
176 return static_cast<DexMemAccessType>(code - Instruction::APUT); in APutMemAccessType()
179 constexpr DexMemAccessType IGetOrIPutMemAccessType(Instruction::Code code) { in IGetOrIPutMemAccessType()
181 return (code >= Instruction::IPUT) ? IPutMemAccessType(code) : IGetMemAccessType(code); in IGetOrIPutMemAccessType()
184 inline DexMemAccessType IGetQuickOrIPutQuickMemAccessType(Instruction::Code code) { in IGetQuickOrIPutQuickMemAccessType()
187 case Instruction::IGET_QUICK: case Instruction::IPUT_QUICK: in IGetQuickOrIPutQuickMemAccessType()
189 case Instruction::IGET_WIDE_QUICK: case Instruction::IPUT_WIDE_QUICK: in IGetQuickOrIPutQuickMemAccessType()
191 case Instruction::IGET_OBJECT_QUICK: case Instruction::IPUT_OBJECT_QUICK: in IGetQuickOrIPutQuickMemAccessType()
193 case Instruction::IGET_BOOLEAN_QUICK: case Instruction::IPUT_BOOLEAN_QUICK: in IGetQuickOrIPutQuickMemAccessType()
195 case Instruction::IGET_BYTE_QUICK: case Instruction::IPUT_BYTE_QUICK: in IGetQuickOrIPutQuickMemAccessType()
197 case Instruction::IGET_CHAR_QUICK: case Instruction::IPUT_CHAR_QUICK: in IGetQuickOrIPutQuickMemAccessType()
199 case Instruction::IGET_SHORT_QUICK: case Instruction::IPUT_SHORT_QUICK: in IGetQuickOrIPutQuickMemAccessType()
207 constexpr DexMemAccessType SGetOrSPutMemAccessType(Instruction::Code code) { in SGetOrSPutMemAccessType()
209 return (code >= Instruction::SPUT) ? SPutMemAccessType(code) : SGetMemAccessType(code); in SGetOrSPutMemAccessType()
212 constexpr DexMemAccessType AGetOrAPutMemAccessType(Instruction::Code code) { in AGetOrAPutMemAccessType()
214 return (code >= Instruction::APUT) ? APutMemAccessType(code) : AGetMemAccessType(code); in AGetOrAPutMemAccessType()