aboutsummaryrefslogtreecommitdiff
path: root/smali/src/main/jflex/smaliLexer.flex
diff options
context:
space:
mode:
Diffstat (limited to 'smali/src/main/jflex/smaliLexer.flex')
-rw-r--r--smali/src/main/jflex/smaliLexer.flex15
1 files changed, 12 insertions, 3 deletions
diff --git a/smali/src/main/jflex/smaliLexer.flex b/smali/src/main/jflex/smaliLexer.flex
index ab1dca9b..8697b8d7 100644
--- a/smali/src/main/jflex/smaliLexer.flex
+++ b/smali/src/main/jflex/smaliLexer.flex
@@ -369,7 +369,8 @@ Type = {PrimitiveType} | {ClassDescriptor} | {ArrayDescriptor}
return newToken(VERIFICATION_ERROR_TYPE);
}
- "vtable@0x" {HexDigit}+ { return newToken(VTABLE_OFFSET); }
+ "inline@0x" {HexDigit}+ { return newToken(INLINE_INDEX); }
+ "vtable@0x" {HexDigit}+ { return newToken(VTABLE_INDEX); }
"field@0x" {HexDigit}+ { return newToken(FIELD_OFFSET); }
"+" {Integer} { return newToken(OFFSET); }
@@ -536,7 +537,11 @@ Type = {PrimitiveType} | {ClassDescriptor} | {ArrayDescriptor}
return newToken(INSTRUCTION_FORMAT35s_METHOD);
}
- "execute-inline" | "invoke-virtual-quick" | "invoke-super-quick" {
+ "execute-inline" {
+ return newToken(INSTRUCTION_FORMAT35mi_METHOD);
+ }
+
+ "invoke-virtual-quick" | "invoke-super-quick" {
return newToken(INSTRUCTION_FORMAT35ms_METHOD);
}
@@ -549,7 +554,11 @@ Type = {PrimitiveType} | {ClassDescriptor} | {ArrayDescriptor}
return newToken(INSTRUCTION_FORMAT3rc_TYPE);
}
- "execute-inline/range" | "invoke-virtual-quick/range" | "invoke-super-quick/range" {
+ "execute-inline/range" {
+ return newToken(INSTRUCTION_FORMAT3rmi_METHOD);
+ }
+
+ "invoke-virtual-quick/range" | "invoke-super-quick/range" {
return newToken(INSTRUCTION_FORMAT3rms_METHOD);
}