1389 Commits

Author SHA1 Message Date
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