JesusFreke@JesusFreke.com
8fc44f0bbc
updated version number to 1.01
...
git-svn-id: https://smali.googlecode.com/svn/trunk@494 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-12-09 09:56:04 +00:00
JesusFreke@JesusFreke.com
e2684fa219
- refactored/simplified the label code
...
- changed the handler_ label prefix to catch_ and catchall_
- added support for the new -i/--indexed-labels option, which numbers the labels incrementally for each method by type, rather than using the bytecode offset
git-svn-id: https://smali.googlecode.com/svn/trunk@493 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-12-01 08:14:21 +00:00
JesusFreke@JesusFreke.com
8555ce95d5
converted the labels in the deodex tests to the new label format
...
git-svn-id: https://smali.googlecode.com/svn/trunk@492 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-12-01 08:13:57 +00:00
JesusFreke@JesusFreke.com
a5fb30849d
minor verbage change for the -l/--use-locals option
...
git-svn-id: https://smali.googlecode.com/svn/trunk@491 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-11-23 07:27:19 +00:00
JesusFreke@JesusFreke.com
3ff70dc8da
add support for the .locals directive in smali
...
git-svn-id: https://smali.googlecode.com/svn/trunk@490 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-11-23 07:19:06 +00:00
JesusFreke@JesusFreke.com
ff80035f43
add support for the .locals directive and the --use-locals/-l option for baksmali
...
git-svn-id: https://smali.googlecode.com/svn/trunk@489 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-11-23 06:47:33 +00:00
JesusFreke@JesusFreke.com
87e8649095
Added wrapper scripts for baksmali.jar and smali.jar
...
git-svn-id: https://smali.googlecode.com/svn/trunk@488 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-11-08 17:57:53 +00:00
JesusFreke@JesusFreke.com
6de675fc3d
Add a possible cause to the error message when one of the classes for superclass lookup cannot be found
...
git-svn-id: https://smali.googlecode.com/svn/trunk@486 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-11-08 06:59:55 +00:00
JesusFreke@JesusFreke.com
3cf2781481
Print version info in usage message
...
git-svn-id: https://smali.googlecode.com/svn/trunk@485 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-11-08 06:26:08 +00:00
JesusFreke@JesusFreke.com
688d1b1295
update integration tests to use new label format
...
git-svn-id: https://smali.googlecode.com/svn/trunk@484 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-11-08 05:34:23 +00:00
JesusFreke@JesusFreke.com
dade116d27
update version to 1.0
...
git-svn-id: https://smali.googlecode.com/svn/trunk@483 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-11-08 05:22:23 +00:00
JesusFreke@JesusFreke.com
6ff845a9c1
open the odex file as read-only
...
git-svn-id: https://smali.googlecode.com/svn/trunk@482 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-11-08 05:00:55 +00:00
JesusFreke@JesusFreke.com
090e553f34
check if a static final field is set within the static constructor, and if so, add a comment stating such if it makes sense to do so (for primitive types, or reference/array types that have a non-null initializer)
...
git-svn-id: https://smali.googlecode.com/svn/trunk@481 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-19 04:48:50 +00:00
JesusFreke@JesusFreke.com
05c9404ecd
set the SparseArrays even if classDataItem is null
...
git-svn-id: https://smali.googlecode.com/svn/trunk@480 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-19 04:47:17 +00:00
JesusFreke@JesusFreke.com
b09920f24f
Use the shorter form of decodeUnsignedShort
...
git-svn-id: https://smali.googlecode.com/svn/trunk@479 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-19 03:34:03 +00:00
JesusFreke@JesusFreke.com
29f49465ca
Use a SparseArray instead of a HashMap, and add get*Count methods to AnnotationDirectoryItem so we can initialize the SparseArrays with the correct capacity
...
git-svn-id: https://smali.googlecode.com/svn/trunk@478 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-19 03:18:35 +00:00
JesusFreke@JesusFreke.com
cd5d4c0385
Use proper hygiene. Close those files/streams!
...
git-svn-id: https://smali.googlecode.com/svn/trunk@477 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-14 02:37:26 +00:00
JesusFreke@JesusFreke.com
1d93e2c7a8
Updated the description for the rewrite option
...
git-svn-id: https://smali.googlecode.com/svn/trunk@476 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-14 02:27:37 +00:00
JesusFreke@JesusFreke.com
bdf45f5b4f
whitespace fix
...
git-svn-id: https://smali.googlecode.com/svn/trunk@475 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-14 02:15:13 +00:00
JesusFreke@JesusFreke.com
dee6ba748e
Add a rewrite option, to rewrite the input smali files using the new label syntax
...
git-svn-id: https://smali.googlecode.com/svn/trunk@474 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-14 02:14:59 +00:00
JesusFreke@JesusFreke.com
518fe629c1
minor tweaks to the lexer and parser so that none of the input is thrown away
...
git-svn-id: https://smali.googlecode.com/svn/trunk@473 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-13 23:52:22 +00:00
JesusFreke@JesusFreke.com
e66d450f42
update version to 0.97
...
git-svn-id: https://smali.googlecode.com/svn/trunk@472 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-13 23:51:24 +00:00
JesusFreke@JesusFreke.com
3d632a6234
Fixed the template for commented out labels
...
git-svn-id: https://smali.googlecode.com/svn/trunk@471 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-13 22:06:09 +00:00
JesusFreke@JesusFreke.com
c8d83493d1
Add support for reading a classes.dex file from an apk/jar
...
git-svn-id: https://smali.googlecode.com/svn/trunk@470 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-13 21:55:24 +00:00
JesusFreke@JesusFreke.com
4080fe659d
Improve handling of the dex and odex magic values
...
git-svn-id: https://smali.googlecode.com/svn/trunk@469 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-13 19:57:25 +00:00
JesusFreke@JesusFreke.com
343848c849
Include the first 8 bytes of the file when reporting a bad magic value
...
git-svn-id: https://smali.googlecode.com/svn/trunk@468 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-13 19:45:54 +00:00
JesusFreke@JesusFreke.com
4a0d9d3fa1
Change the sytax for labels from label: to :label
...
git-svn-id: https://smali.googlecode.com/svn/trunk@467 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-13 02:50:42 +00:00
JesusFreke@JesusFreke.com
dbaa44be6c
wasn't propogating deadness in all cases
...
git-svn-id: https://smali.googlecode.com/svn/trunk@462 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-11 03:14:40 +00:00
JesusFreke@JesusFreke.com
a37715b6ec
remove debugging printf
...
git-svn-id: https://smali.googlecode.com/svn/trunk@461 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-11 01:58:34 +00:00
JesusFreke@JesusFreke.com
a948461964
Check for null when looking up a superclass
...
git-svn-id: https://smali.googlecode.com/svn/trunk@460 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-11 01:45:28 +00:00
JesusFreke@JesusFreke.com
cc4bbc46ea
Fixed a crash when trying to look up the superclass for Object
...
git-svn-id: https://smali.googlecode.com/svn/trunk@459 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-11 01:44:57 +00:00
JesusFreke@JesusFreke.com
04473936a1
remove test println
...
git-svn-id: https://smali.googlecode.com/svn/trunk@458 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-10 06:45:15 +00:00
JesusFreke@JesusFreke.com
8e9ceda4f9
expand the test case to test out more stuff
...
git-svn-id: https://smali.googlecode.com/svn/trunk@457 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-10 06:43:44 +00:00
JesusFreke@JesusFreke.com
a171922cbd
add TODO
...
git-svn-id: https://smali.googlecode.com/svn/trunk@456 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-10 06:43:15 +00:00
JesusFreke@JesusFreke.com
c65a8d8b5f
Added better support for the case when an optimized instruction can't be resolved due to the object register always being null. It should comment out any dead code following the unresolved instruction (to prevent verification issues, due to the changed method call)
...
git-svn-id: https://smali.googlecode.com/svn/trunk@455 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-10 06:40:58 +00:00
JesusFreke@JesusFreke.com
ddc8655d10
Fix some null checking logic
...
git-svn-id: https://smali.googlecode.com/svn/trunk@454 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-10 02:01:38 +00:00
JesusFreke@JesusFreke.com
cf4e7ce360
added another deodex test case
...
git-svn-id: https://smali.googlecode.com/svn/trunk@453 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-10 01:22:25 +00:00
JesusFreke@JesusFreke.com
61eedba1ab
Fix a bug when creating a dex file that has a blank section for one of the indexed item types
...
git-svn-id: https://smali.googlecode.com/svn/trunk@452 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-09 06:58:50 +00:00
JesusFreke@JesusFreke.com
a6bf1ed0fe
store types as strings, to allow for intermediate types that don't exist in the dex file
...
git-svn-id: https://smali.googlecode.com/svn/trunk@451 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-09 06:38:01 +00:00
JesusFreke@JesusFreke.com
c3deed2751
Added a tricky test case for the deodexer
...
git-svn-id: https://smali.googlecode.com/svn/trunk@450 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-09 05:15:40 +00:00
JesusFreke@JesusFreke.com
e942607e1a
delete TODO
...
git-svn-id: https://smali.googlecode.com/svn/trunk@449 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-09 05:09:45 +00:00
JesusFreke@JesusFreke.com
726d88404d
Handle a rare case where deodexing an instruction invalidates a previously deodexed instruction somewhere else because of the new register information available
...
git-svn-id: https://smali.googlecode.com/svn/trunk@448 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-09 04:21:20 +00:00
JesusFreke@JesusFreke.com
8b260a1d81
Changed the instruction map to a Sparse array, plus various cleanup
...
git-svn-id: https://smali.googlecode.com/svn/trunk@447 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-09 03:40:31 +00:00
JesusFreke@JesusFreke.com
c2c37aed3b
removed todo comment
...
git-svn-id: https://smali.googlecode.com/svn/trunk@446 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-09 01:44:48 +00:00
JesusFreke@JesusFreke.com
a3d7d2423d
- removed insn.fixed
...
- added a merge table for the register type merge logic
git-svn-id: https://smali.googlecode.com/svn/trunk@445 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-09 01:43:57 +00:00
JesusFreke@JesusFreke.com
e6e9569227
change the field lookup to a field dump, and the inline method lookup to an inline method dump
...
git-svn-id: https://smali.googlecode.com/svn/trunk@444 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-08 23:05:53 +00:00
JesusFreke@JesusFreke.com
6fa95185b7
Added caching for the rest of the deodexerant commands
...
git-svn-id: https://smali.googlecode.com/svn/trunk@443 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-08 23:04:44 +00:00
JesusFreke@JesusFreke.com
f0e3677538
fix the "null" fixed instructions.. again
...
git-svn-id: https://smali.googlecode.com/svn/trunk@442 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-08 20:34:19 +00:00
JesusFreke@JesusFreke.com
7f91677f24
Add a check on the vtable index when doing a virtual method lookup
...
git-svn-id: https://smali.googlecode.com/svn/trunk@441 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-08 20:27:12 +00:00
JesusFreke@JesusFreke.com
665884682c
- Add support for the change in deodexerant where it now dumps all vtable entries, instead of having to query for a specific one
...
- cache the vtable information we get from deodexerant
git-svn-id: https://smali.googlecode.com/svn/trunk@440 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2009-09-08 20:19:28 +00:00