JesusFreke@JesusFreke.com
be6afd1812
Add tests for a negitave hex numbers with an alpha (a-f) digit
...
git-svn-id: https://smali.googlecode.com/svn/trunk@741 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:32:36 +00:00
JesusFreke@JesusFreke.com
4ccbb4e8bd
Rename the ENUM token to ENUM_DIRECTIVE
...
git-svn-id: https://smali.googlecode.com/svn/trunk@740 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:32:30 +00:00
JesusFreke@JesusFreke.com
58b9ba9e08
Whitespace changes
...
git-svn-id: https://smali.googlecode.com/svn/trunk@739 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:32:24 +00:00
JesusFreke@JesusFreke.com
e01409c11f
Change the way unresolvable odex instructions are handled, so that it doesn't cause problems with try/catch blocks
...
git-svn-id: https://smali.googlecode.com/svn/trunk@737 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-12 15:55:44 +00:00
JesusFreke@JesusFreke.com
f7344d33d0
Split the logic for generating the instruction method items depending on whether we need to use the MethodAnalyzer or not
...
git-svn-id: https://smali.googlecode.com/svn/trunk@736 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-12 15:55:36 +00:00
JesusFreke@JesusFreke.com
41265daa5a
Fix a NPE when looking up a non-existant method
...
git-svn-id: https://smali.googlecode.com/svn/trunk@732 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-10 01:49:26 +00:00
JesusFreke@JesusFreke.com
76f566a55b
Use the /range instructions when deodexing an execute-inline/range instruction
...
git-svn-id: https://smali.googlecode.com/svn/trunk@731 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-10 01:43:18 +00:00
JesusFreke@JesusFreke.com
2880e1c625
Add the inline method table for froyo's dalvik
...
git-svn-id: https://smali.googlecode.com/svn/trunk@726 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-09 01:45:27 +00:00
JesusFreke@JesusFreke.com
14348d570e
Add support for the new dey36 odex header
...
git-svn-id: https://smali.googlecode.com/svn/trunk@725 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-09 01:45:14 +00:00
JesusFreke@JesusFreke.com
48a8e040a1
Get rid of the unneeded getNumberOfLexerErrors() method in the lexer
...
git-svn-id: https://smali.googlecode.com/svn/trunk@724 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-18 19:33:16 +00:00
JesusFreke@JesusFreke.com
86df593d85
Don't generate verbose parser errors by default, but add a smali parameter to enable them
...
git-svn-id: https://smali.googlecode.com/svn/trunk@723 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-18 19:33:12 +00:00
JesusFreke@JesusFreke.com
9f69ec12ea
Fix an NPE when generating the error message for the case of multiple .locals or .registers directives in a method
...
git-svn-id: https://smali.googlecode.com/svn/trunk@722 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-18 19:33:07 +00:00
JesusFreke@JesusFreke.com
af7330e5d5
Minor tweak to BASE_FLOAT_OR_ID
...
git-svn-id: https://smali.googlecode.com/svn/trunk@721 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-18 19:33:03 +00:00
JesusFreke@JesusFreke.com
cafef597c9
Move the totalMethodRegisters calculation back up to when the rule is matched, because the value is needed for subsequent rules
...
git-svn-id: https://smali.googlecode.com/svn/trunk@720 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-18 19:32:59 +00:00
JesusFreke@JesusFreke.com
4d9801a89d
Various tweaks to improve error handling
...
git-svn-id: https://smali.googlecode.com/svn/trunk@719 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-18 05:04:03 +00:00
JesusFreke@JesusFreke.com
4c114f0918
Refactor the parameter directive rule, so that it doesn't use a syntactic predicate
...
git-svn-id: https://smali.googlecode.com/svn/trunk@718 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-18 05:03:58 +00:00
JesusFreke@JesusFreke.com
fd997c84b6
Refactor the registers directive related rules
...
git-svn-id: https://smali.googlecode.com/svn/trunk@717 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-18 05:03:38 +00:00
JesusFreke@JesusFreke.com
4fb7679be9
Refactor the rules related to the .parameter directive, so that it doesn't use syntactic predicates
...
git-svn-id: https://smali.googlecode.com/svn/trunk@716 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-17 07:02:56 +00:00
JesusFreke@JesusFreke.com
368a8faed9
Call a method to throw the OdexedInstructionException, instead of throwing the exception itself
...
This prevents java from complaining about unreachable code after the throw statement
git-svn-id: https://smali.googlecode.com/svn/trunk@715 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-17 07:02:52 +00:00
JesusFreke@JesusFreke.com
cda416b795
Sort the annotations in an AnnotationSetItem based on the TypeIdItem index
...
git-svn-id: https://smali.googlecode.com/svn/trunk@714 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-17 07:02:48 +00:00
JesusFreke@JesusFreke.com
f2370e3a2e
Add tests for the various types of annotations
...
git-svn-id: https://smali.googlecode.com/svn/trunk@713 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-17 07:02:43 +00:00
JesusFreke@JesusFreke.com
ec643e6520
Use the SIMPLE_NAME token for label names, instead of creating a new LABEL token
...
git-svn-id: https://smali.googlecode.com/svn/trunk@712 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-17 07:02:39 +00:00
JesusFreke@JesusFreke.com
28a614553b
Use the simple_name rule instead of matching SIMPLE_NAME in the local_directive rule
...
git-svn-id: https://smali.googlecode.com/svn/trunk@711 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-17 07:02:35 +00:00
JesusFreke@JesusFreke.com
10b9349716
Use method_name instead of simple_name for the method branch of the type_field_method_literal rule
...
git-svn-id: https://smali.googlecode.com/svn/trunk@710 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-17 07:02:30 +00:00
JesusFreke@JesusFreke.com
fbea4e751f
Cleaned up imports
...
git-svn-id: https://smali.googlecode.com/svn/trunk@709 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-16 07:26:08 +00:00
JesusFreke@JesusFreke.com
6b3647e984
Cleaned up imports
...
git-svn-id: https://smali.googlecode.com/svn/trunk@708 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-16 07:26:01 +00:00
JesusFreke@JesusFreke.com
2feb05f645
Rewrite smali's lexer, and modify the parser and tree walker accordingly
...
The lexer is now much more like a normal lexer, instead of having the long multi-token rules
git-svn-id: https://smali.googlecode.com/svn/trunk@707 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-16 07:25:57 +00:00
JesusFreke@JesusFreke.com
3e4c1193cf
Update dump option to use -D instead of -d
...
git-svn-id: https://smali.googlecode.com/svn/trunk@706 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-16 07:25:54 +00:00
JesusFreke@JesusFreke.com
6a7f2e2d24
Move to ANTLR v3.2
...
git-svn-id: https://smali.googlecode.com/svn/trunk@705 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-16 07:25:47 +00:00
JesusFreke@JesusFreke.com
b3abca4c90
cleaned up imports
...
git-svn-id: https://smali.googlecode.com/svn/trunk@704 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-16 07:25:29 +00:00
JesusFreke@JesusFreke.com
cf01189c7f
Update version to 1.2.3
...
git-svn-id: https://smali.googlecode.com/svn/trunk@703 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-16 07:25:24 +00:00
JesusFreke@JesusFreke.com
2371e35aae
Exit on the first error by default, but add the -I option for ignoring errors and continuing with disassembly
...
git-svn-id: https://smali.googlecode.com/svn/trunk@701 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:03:25 +00:00
JesusFreke@JesusFreke.com
0808ee81c6
use Array.clone instead of Arrays.copyOf, to be compliant with java 5
...
git-svn-id: https://smali.googlecode.com/svn/trunk@700 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:03:17 +00:00
JesusFreke@JesusFreke.com
bde73b303c
minor changes to option usage info
...
git-svn-id: https://smali.googlecode.com/svn/trunk@699 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:03:13 +00:00
JesusFreke@JesusFreke.com
db806b1261
minor reformatting - reorder the options
...
git-svn-id: https://smali.googlecode.com/svn/trunk@698 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:03:09 +00:00
JesusFreke@JesusFreke.com
c6734e8a60
Fix a typo in the commented out format for a packed-switch structure
...
git-svn-id: https://smali.googlecode.com/svn/trunk@697 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:03:06 +00:00
JesusFreke@JesusFreke.com
d293bc1eb3
Always read and write files using UTF8
...
git-svn-id: https://smali.googlecode.com/svn/trunk@696 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:03:01 +00:00
JesusFreke@JesusFreke.com
51cf2f54d5
Add support in smali for the invoke-direct-quick opcode
...
git-svn-id: https://smali.googlecode.com/svn/trunk@695 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:02:56 +00:00
JesusFreke@JesusFreke.com
e861da1285
Fix the output format for the .parameter directive
...
git-svn-id: https://smali.googlecode.com/svn/trunk@694 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:02:52 +00:00
JesusFreke@JesusFreke.com
c1cc0e0934
Add better support for the case when an odex file has missing classes
...
git-svn-id: https://smali.googlecode.com/svn/trunk@693 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:02:48 +00:00
JesusFreke@JesusFreke.com
19b601436a
Fix the formatting of the instruction offset comment
...
git-svn-id: https://smali.googlecode.com/svn/trunk@692 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:02:39 +00:00
JesusFreke@JesusFreke.com
baec3bc450
Fix the workaround for the ext.jar BCP special case
...
git-svn-id: https://smali.googlecode.com/svn/trunk@691 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:02:35 +00:00
JesusFreke@JesusFreke.com
306fe8753a
Use the platform specific newline character/string
...
git-svn-id: https://smali.googlecode.com/svn/trunk@690 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:02:31 +00:00
JesusFreke@JesusFreke.com
adb1511f4e
minor linewrap change
...
git-svn-id: https://smali.googlecode.com/svn/trunk@689 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:02:27 +00:00
JesusFreke@JesusFreke.com
0b2f7d6a57
delete IndentingPrintWriter and refactor everything to use IndentingWriter directly
...
git-svn-id: https://smali.googlecode.com/svn/trunk@688 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:02:16 +00:00
JesusFreke@JesusFreke.com
bf483ac86d
use a character comparison instead of a string comparison for TypeIdItem.getRegisterCount()
...
git-svn-id: https://smali.googlecode.com/svn/trunk@687 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:02:11 +00:00
JesusFreke@JesusFreke.com
bba8645009
minor optimizations in ByteArrayInput
...
git-svn-id: https://smali.googlecode.com/svn/trunk@686 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:02:08 +00:00
JesusFreke@JesusFreke.com
1f29ee7351
Change ByteArrayInput.readNullTerminatedBytes() to ByteArrayInput.readNullTerminatedUtf8String()
...
git-svn-id: https://smali.googlecode.com/svn/trunk@685 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:02:03 +00:00
JesusFreke@JesusFreke.com
89325d96cc
minor line wrap change
...
git-svn-id: https://smali.googlecode.com/svn/trunk@684 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:01:55 +00:00
JesusFreke@JesusFreke.com
4b82fba3ba
Refactor dexlib so that sections are read in based on the dependency order
...
This allows us to simply the read logic somewhat, getting rid of the concept of a "pre-created" item
git-svn-id: https://smali.googlecode.com/svn/trunk@683 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-04-03 23:01:41 +00:00