636 Commits

Author SHA1 Message Date
JesusFreke@JesusFreke.com
300ad56aa3 Add the logic to iterate over all the instructions as the register information for them is updated
git-svn-id: https://smali.googlecode.com/svn/trunk@612 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-02-08 02:27:42 +00:00
JesusFreke@JesusFreke.com
fa323d30a0 When merging register types, an Unknown type and a known type should merge to the known type
git-svn-id: https://smali.googlecode.com/svn/trunk@611 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-02-08 02:27:36 +00:00
JesusFreke@JesusFreke.com
a0314c265e Handle uninitialized referenced appropriately
git-svn-id: https://smali.googlecode.com/svn/trunk@610 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-02-08 02:27:30 +00:00
JesusFreke@JesusFreke.com
b615ba6f51 Add concrete implementations of RegisterIterator for Format35c and Format3rc
git-svn-id: https://smali.googlecode.com/svn/trunk@609 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-02-08 02:27:23 +00:00
JesusFreke@JesusFreke.com
6192896f88 Add pastEnd() method to RegisterIterator
git-svn-id: https://smali.googlecode.com/svn/trunk@608 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-02-08 02:27:18 +00:00
JesusFreke@JesusFreke.com
06d1aacf61 Add getCount() method to RegisterIterator
git-svn-id: https://smali.googlecode.com/svn/trunk@607 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-02-08 02:27:12 +00:00
JesusFreke@JesusFreke.com
6d11e9062d Fix the register check for the source register in handleIputObject, and add misc TODO
git-svn-id: https://smali.googlecode.com/svn/trunk@606 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-27 07:09:38 +00:00
JesusFreke@JesusFreke.com
51cec00885 Implemented verification for sput-object
git-svn-id: https://smali.googlecode.com/svn/trunk@605 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-27 07:09:32 +00:00
JesusFreke@JesusFreke.com
f08a9e1c2c Implemented verification for sput-wide
git-svn-id: https://smali.googlecode.com/svn/trunk@604 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-27 07:09:26 +00:00
JesusFreke@JesusFreke.com
9d45d563fe Implemented verification for sput/sput-boolean/sput-byte/sput-char/sput-short
git-svn-id: https://smali.googlecode.com/svn/trunk@603 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-27 06:22:11 +00:00
JesusFreke@JesusFreke.com
2d6d6eb22c Implemented verification for sget-object
git-svn-id: https://smali.googlecode.com/svn/trunk@602 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-27 04:56:23 +00:00
JesusFreke@JesusFreke.com
2f233fefd9 Implemented verification for sget-wide
git-svn-id: https://smali.googlecode.com/svn/trunk@601 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-27 04:54:00 +00:00
JesusFreke@JesusFreke.com
bd215cd95b Clean up handle32BitPrimitiveSget a bit
git-svn-id: https://smali.googlecode.com/svn/trunk@600 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-27 04:53:53 +00:00
JesusFreke@JesusFreke.com
052f4890ab Implemented verification for sget/sget-boolean/sget-byte/sget-char/sget-short
git-svn-id: https://smali.googlecode.com/svn/trunk@599 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-27 04:37:16 +00:00
JesusFreke@JesusFreke.com
50ff624741 Implemented verification for iput-object
git-svn-id: https://smali.googlecode.com/svn/trunk@598 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-27 03:14:25 +00:00
JesusFreke@JesusFreke.com
92616c9f60 Implemented verification for iput-wide
git-svn-id: https://smali.googlecode.com/svn/trunk@597 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-27 02:44:59 +00:00
JesusFreke@JesusFreke.com
9971346f4c Implemented verification for iput/iput-boolean/iput-byte/iput-char/iput-short
git-svn-id: https://smali.googlecode.com/svn/trunk@596 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-27 02:16:59 +00:00
JesusFreke@JesusFreke.com
7a58f2434a Implemented verification for iget-object
git-svn-id: https://smali.googlecode.com/svn/trunk@595 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-27 02:16:52 +00:00
JesusFreke@JesusFreke.com
9d92fd3748 Implemented verification for iget-wide
git-svn-id: https://smali.googlecode.com/svn/trunk@594 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-27 01:53:53 +00:00
JesusFreke@JesusFreke.com
4f84e8f9e9 Implemented verification for iget/iget-boolean/iget-byte/iget-char/iget-short
git-svn-id: https://smali.googlecode.com/svn/trunk@593 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-26 03:17:42 +00:00
JesusFreke@JesusFreke.com
898e750048 Implemented verification for aput-object
git-svn-id: https://smali.googlecode.com/svn/trunk@592 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-25 02:18:24 +00:00
JesusFreke@JesusFreke.com
55d43e36eb Implemented verification for aput-wide
git-svn-id: https://smali.googlecode.com/svn/trunk@591 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-25 01:55:07 +00:00
JesusFreke@JesusFreke.com
c849236be2 Implemented verification for aput/aput-boolean/aput-byte/aput-char/aput-short
git-svn-id: https://smali.googlecode.com/svn/trunk@590 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-25 01:42:45 +00:00
JesusFreke@JesusFreke.com
461a797324 Implemented verification for aget-object
git-svn-id: https://smali.googlecode.com/svn/trunk@589 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-25 01:05:15 +00:00
JesusFreke@JesusFreke.com
c308b24b62 Implemented verification for aget-wide
git-svn-id: https://smali.googlecode.com/svn/trunk@588 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-25 00:36:52 +00:00
JesusFreke@JesusFreke.com
b239745290 Implemented verification for aget/aget-boolean/aget-byte/aget-char/aget-short
git-svn-id: https://smali.googlecode.com/svn/trunk@587 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-25 00:20:56 +00:00
JesusFreke@JesusFreke.com
16a709ba04 Implemented verification for if-ltz/gez/gtz/lez
git-svn-id: https://smali.googlecode.com/svn/trunk@586 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 20:44:05 +00:00
JesusFreke@JesusFreke.com
cb00252b6a Implemented verification for if-eqz/nez
git-svn-id: https://smali.googlecode.com/svn/trunk@585 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 20:43:59 +00:00
JesusFreke@JesusFreke.com
150acd9db9 Implemented verification for if-lt/ge/gt/le
git-svn-id: https://smali.googlecode.com/svn/trunk@584 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 20:43:52 +00:00
JesusFreke@JesusFreke.com
aba6bb0bbd Implemented verification for if-eq and if-ne
git-svn-id: https://smali.googlecode.com/svn/trunk@583 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 20:14:53 +00:00
JesusFreke@JesusFreke.com
f1a74cea19 Implemented verification for float/double/long comparison instructions
git-svn-id: https://smali.googlecode.com/svn/trunk@582 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 19:54:01 +00:00
JesusFreke@JesusFreke.com
b7e7811527 Fix how the address for the array data is calculated
git-svn-id: https://smali.googlecode.com/svn/trunk@581 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 19:35:35 +00:00
JesusFreke@JesusFreke.com
cda44f70cf Implemented verification for packed-switch and sparse-switch
git-svn-id: https://smali.googlecode.com/svn/trunk@580 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 19:33:38 +00:00
JesusFreke@JesusFreke.com
898edda7ce Implemented verification for goto/16/32
git-svn-id: https://smali.googlecode.com/svn/trunk@579 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 19:19:27 +00:00
JesusFreke@JesusFreke.com
ed140ca3e4 Implemented verification for throw
git-svn-id: https://smali.googlecode.com/svn/trunk@578 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 19:17:41 +00:00
JesusFreke@JesusFreke.com
472d3ea584 Implemented verification for fill-array-data
git-svn-id: https://smali.googlecode.com/svn/trunk@577 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 07:52:55 +00:00
JesusFreke@JesusFreke.com
ac8785e5d5 Implemented verification for filled-new-array/range
git-svn-id: https://smali.googlecode.com/svn/trunk@576 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 03:40:43 +00:00
JesusFreke@JesusFreke.com
9e5dd85d83 Implemented verification for filled-new-array
git-svn-id: https://smali.googlecode.com/svn/trunk@575 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 03:06:38 +00:00
JesusFreke@JesusFreke.com
fffb29fd9d Implement ClassPath class, refactor analysis code to use new ClassPath functionality, start adding verification for individual opcodes
git-svn-id: https://smali.googlecode.com/svn/trunk@574 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 00:55:17 +00:00
JesusFreke@JesusFreke.com
2d5d83efca whitespace changes
git-svn-id: https://smali.googlecode.com/svn/trunk@573 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 00:55:05 +00:00
JesusFreke@JesusFreke.com
baabf9a11b Add the SETS_REGISTER flag to Opcode
git-svn-id: https://smali.googlecode.com/svn/trunk@572 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 00:54:59 +00:00
JesusFreke@JesusFreke.com
2a0192cec1 Use a consistent error message for common superclass lookup
git-svn-id: https://smali.googlecode.com/svn/trunk@571 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 00:54:53 +00:00
JesusFreke@JesusFreke.com
41d8cd7df2 use spaces instead of tabs in deodexerant
git-svn-id: https://smali.googlecode.com/svn/trunk@570 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-24 00:54:48 +00:00
JesusFreke@JesusFreke.com
d27ca7f7a6 Initial commit of analysis stuff.
So far, it only builds the AnalyzedInstruction list, and populates the
predecessors/successors of each instruction

git-svn-id: https://smali.googlecode.com/svn/trunk@566 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-12 08:11:00 +00:00
JesusFreke@JesusFreke.com
f3a83f9e4c Minor comment change
git-svn-id: https://smali.googlecode.com/svn/trunk@565 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-12 08:10:50 +00:00
JesusFreke@JesusFreke.com
8fcc31d5f2 Add new CAN_CONTINUE flag to Opcode
git-svn-id: https://smali.googlecode.com/svn/trunk@564 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-12 08:10:43 +00:00
JesusFreke@JesusFreke.com
7eef1e37e7 Add addition "FirstInstrucitonTest" method to the deodex_test1 baksmali test
git-svn-id: https://smali.googlecode.com/svn/trunk@563 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-12 08:10:37 +00:00
JesusFreke@JesusFreke.com
daa8cef392 Add new RecursiveExceptionHandler example
git-svn-id: https://smali.googlecode.com/svn/trunk@562 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-12 08:10:30 +00:00
JesusFreke@JesusFreke.com
b2e1e2067d deodex refactoring part 1
Significantly simplified how instructions are handled in baksmali. Normal
disassembly seems to be working, deodexing definitely not.

git-svn-id: https://smali.googlecode.com/svn/trunk@561 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-12 08:10:23 +00:00
JesusFreke@JesusFreke.com
575bd4ce54 Remove unused 'fixed' field from DeodexUtil.insn
git-svn-id: https://smali.googlecode.com/svn/trunk@560 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-01-12 08:09:51 +00:00