Ben Gruver
a43de2411e
Add support for the invoke-object-init/jumbo odex opcode
2011-11-20 15:47:53 -08:00
Ben Gruver
4a5692f827
Add support for the return-void-barrier odex instruction
2011-11-20 15:47:49 -08:00
Ben Gruver
c8de336727
Use Format 35c for invoke-direct-empty, and get rid of Format 35s
2011-11-20 15:46:40 -08:00
Ben Gruver
ea7afb0265
Add support for the invoke-object-init/range opcode in ICS
2011-11-20 15:46:40 -08:00
Ben Gruver
5967598d01
Add support for specifying a custom inline method table to use while deodexing
2011-11-20 15:46:40 -08:00
Ben Gruver
e00d96c438
Fix an issue with the handling of sparse-switch-data blocks
2011-11-20 15:46:40 -08:00
Ben Gruver
addb2dcdd4
Add new deodexerant utility, to dump dalvik's inline method table
2011-11-20 15:46:40 -08:00
Ben Gruver
c2f08d5123
Add support for an --api-level parameter
2011-11-20 15:46:40 -08:00
Ben Gruver
6729493700
Add support in MethodAnalyzer for the new opcodes
2011-11-20 15:46:40 -08:00
Ben Gruver
b0ca7cb99b
Add support for auto-upgrading to /jumbo variants of instructions when needed/possible
2011-11-20 15:46:39 -08:00
Ben Gruver
c4db7e2473
Add support for Format5rc
2011-11-20 15:46:39 -08:00
Ben Gruver
8d323b3c48
Add support for blank register ranges
2011-11-20 15:46:39 -08:00
Ben Gruver
de5b35dbb6
Add support for Format52c (field references)
2011-11-20 15:46:39 -08:00
Ben Gruver
1efc2c0388
Add support for Format52c (type references)
2011-11-20 15:46:39 -08:00
Ben Gruver
a70eb74985
Fix performance issue when assembling classes with many static fields
2011-11-20 15:46:39 -08:00
Ben Gruver
d863324ffb
Add support for Format41c (field references)
2011-11-20 15:46:39 -08:00
Ben Gruver
8b3b577f00
Add additional checks for index size when writing various items
2011-11-20 15:46:39 -08:00
Ben Gruver
d12c769276
Add support for Format41c (type references)
2011-11-20 15:46:38 -08:00
Ben Gruver
d064d69992
Fix up jumbo string tests
2011-11-20 15:46:38 -08:00
Ben Gruver
9c5ea8fa92
Lay the groundwork for general 32-bit IndexedItem references
2011-11-20 15:46:38 -08:00
Ben Gruver
95cd71c2d0
Lay the groundwork for expanded (16-bit) opcodes
2011-11-20 15:46:32 -08:00
Ben Gruver
166fc9296e
Refactor out the getRegCount method into a seperate InvokeInstruction interface
2011-11-19 11:39:49 -08:00
Ben Gruver
f40b4e9a1e
Delete the old, unused string template
2011-11-19 11:39:49 -08:00
Ben Gruver
b0c62b9781
Seperate out execute-inline and execute-inline/range into seperate 35mi and 3rmi formats
2011-11-19 11:39:49 -08:00
Ben Gruver
bda056b7b0
Add the throw-verification-error token to the instruction test for the lexer
2011-11-19 11:39:49 -08:00
Ben Gruver
3bfd77dff0
Use the term VtableIndex rather than MethodIndex for invoke-*-quick instructions/formats
2011-11-19 11:39:49 -08:00
Ben Gruver
8e51717604
Add support for the THROW_VERIFICATION_ERROR opcode in MethodAnalyzer
2011-11-19 11:39:49 -08:00
Ben Gruver
5d88046301
.gitignore mvn target directories
2011-11-19 11:39:49 -08:00
Ben Gruver
880e82dc63
Update NOTICE to include info on Google Inc. copyrighted code
2011-11-19 11:39:49 -08:00
Ben Gruver
225535b1c9
Add .gitignore files to exclude the target directory for the various modules
2011-11-19 11:39:45 -08:00
Ben Gruver
78d50d3273
Bump the version to 1.2.9-dev
2011-10-11 15:02:08 -04:00
Ben Gruver
4ba8cebf01
Add additional verbage for the --allow-odex-instructions in smali
2011-10-10 02:01:59 -04:00
Ben Gruver
df00f6b8a8
Add support for assembling format 22c odex instructions
2011-10-10 00:55:17 -04:00
Ben Gruver
f5f64b26f7
Add support for assembling format 21c odex instructions
2011-10-10 00:47:44 -04:00
Ben Gruver
f356647461
Add lexer tests for throw-verification-error and related tokens
2011-10-09 22:53:35 -04:00
Ben Gruver
2829262f9d
Improve the error reporting for the lexer tests
2011-10-09 22:52:56 -04:00
Ben Gruver
94e5a39ad2
Add initial support for allowing assembly of odex instructions
...
Initially, only throw-verification-error is supported
2011-10-09 22:51:44 -04:00
Ben Gruver
bbe539f2d2
Add support for the throw-verification-error opcode
2011-10-09 22:51:39 -04:00
Ben Gruver
cb3e0ea38a
Improve the way sparse/packed switch data blocks are found and processed
2011-10-09 01:19:25 -04:00
Ben Gruver
82cdb8a8af
Fix an incorrectly formatted offset to the debug info, in the dump for a code item
2011-09-20 22:38:51 -04:00
Ben Gruver
f8637cedd5
Add an example showing how methods can be overriden based on return value
2011-09-17 18:01:03 -04:00
Ben Gruver
049bba5d98
Fix an infinite loop in findMethodByMethodIdInternal
2011-08-14 20:09:12 -04:00
Ben Gruver
2337fcb31b
Bump the version number to 1.2.8-dev
2011-08-13 20:45:56 -04:00
Ben Gruver
a91109b8a7
Take into account defining class information when resolving field offsets
...
This fixes an issue when deodexing, where a field offset is incorrectly
resolved when trying to access a field defined in an ancestor class
when the the child class defines a field with the same name
Kudos to brightidea @ xda-dev for digging into this issue and figuring
out the problem!
2011-08-13 02:22:16 -04:00
Ben Gruver
c2e3d1a320
Remove unused instanceFieldLookup field in ClassPath.ClassDef
2011-08-12 22:51:50 -04:00
Ben Gruver
4dbfae78e9
Rename literalTools to LiteralTools
...
Just for evancharlton
2011-07-20 20:13:38 -04:00
Ben Gruver
3c4f8094a2
Fix possible issue(?) in IntegerRenderer.writeUnsignedTo
2011-07-15 13:32:36 -04:00
Ben Gruver
74c14ffcca
Rename the printLongAsHex and printIntAsHex methods in IndentingWriter for clarity
2011-07-15 13:32:36 -04:00
Ben Gruver
f119fc6db5
Fix the printIntAsDec method in Indenting writer to correctly handle negative values
2011-07-15 13:32:27 -04:00
jesusfreke@jesusfreke.com
fadcc2dcb9
Ignore the link section in the header
...
git-svn-id: https://smali.googlecode.com/svn/trunk@812 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2011-07-15 09:22:43 +00:00