625 Commits

Author SHA1 Message Date
JesusFreke@JesusFreke.com
b3ba356d94 Update version to 1.2.6
git-svn-id: https://smali.googlecode.com/svn/trunk@796 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-12-21 17:33:14 +00:00
JesusFreke@JesusFreke.com
2c486b4ee7 Add the high and low surrogate characters as valid characters for identifiers
The dex format allows any supplemental character to be used for identifiers,
but jflex doesn't directly support supplemental characters. However, we can
tell jflex to accept a high and low surrogate character pair instead, which
has the same effect as directly accepting any supplemental character

git-svn-id: https://smali.googlecode.com/svn/trunk@795 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-11-18 04:57:05 +00:00
JesusFreke@JesusFreke.com
83ef98462a Fix an issue where smali doesn't recognize field/class names that look like an integer
git-svn-id: https://smali.googlecode.com/svn/trunk@794 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-11-04 16:48:27 +00:00
JesusFreke@JesusFreke.com
922c533809 Update version to 1.2.5
git-svn-id: https://smali.googlecode.com/svn/trunk@792 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-10-31 20:20:59 +00:00
JesusFreke@JesusFreke.com
879b119b8d Remove the jflex dependency in the smali pom file
git-svn-id: https://smali.googlecode.com/svn/trunk@791 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-10-28 17:23:35 +00:00
JesusFreke@JesusFreke.com
b9f9e85d84 Append a # to the end of class names that happen to be reserved file names on windows
git-svn-id: https://smali.googlecode.com/svn/trunk@790 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-09-25 16:04:33 +00:00
JesusFreke@JesusFreke.com
8ec2ab7602 Add static helper method to TypeListItem
git-svn-id: https://smali.googlecode.com/svn/trunk@789 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-08-17 13:28:57 +00:00
JesusFreke@JesusFreke.com
4b72225e9d Move the IndentingWriter class to the util project
git-svn-id: https://smali.googlecode.com/svn/trunk@788 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-08-17 13:27:58 +00:00
JesusFreke@JesusFreke.com
bbf4dbba61 Rename fileNameHandler to ClassFileNameHandler and move it to the utils project
git-svn-id: https://smali.googlecode.com/svn/trunk@787 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-08-17 13:27:25 +00:00
JesusFreke@JesusFreke.com
525ad75b9d Fix @Override issues when compiling with java 1.5
git-svn-id: https://smali.googlecode.com/svn/trunk@786 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-08-17 13:27:06 +00:00
JesusFreke@JesusFreke.com
a6e5671a62 Add support for class names that differ only by case on case insensitive file systems
git-svn-id: https://smali.googlecode.com/svn/trunk@784 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-08-02 00:58:12 +00:00
JesusFreke@JesusFreke.com
bcc4d2d9e1 misc whitespace changes
git-svn-id: https://smali.googlecode.com/svn/trunk@783 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-08-02 00:58:03 +00:00
JesusFreke@JesusFreke.com
4b06cfbe7f Add top level NOTICE file with copyright notices
git-svn-id: https://smali.googlecode.com/svn/trunk@782 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-08-02 00:57:56 +00:00
JesusFreke@JesusFreke.com
128e8279c3 Add modification notices to Apache licensed files
git-svn-id: https://smali.googlecode.com/svn/trunk@781 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-08-02 00:57:45 +00:00
JesusFreke@JesusFreke.com
854c577425 Fix an issue when assembling a file with blank annotation sets
git-svn-id: https://smali.googlecode.com/svn/trunk@776 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-07-29 03:10:18 +00:00
JesusFreke@JesusFreke.com
58536878c4 Allow "null" as a valid identifier
git-svn-id: https://smali.googlecode.com/svn/trunk@766 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-07-14 00:29:10 +00:00
JesusFreke@JesusFreke.com
f4d1fb8aba bump version to 1.2.4
git-svn-id: https://smali.googlecode.com/svn/trunk@765 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-07-14 00:29:06 +00:00
JesusFreke@JesusFreke.com
8913c59363 Fixed issue 37, where the -b option to baksmali wasn't disabling all debug directives
git-svn-id: https://smali.googlecode.com/svn/trunk@764 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-26 11:18:41 +00:00
JesusFreke@JesusFreke.com
9c79173818 Incorporate the null check from the previous commit into the containing if statement
git-svn-id: https://smali.googlecode.com/svn/trunk@763 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-23 13:31:57 +00:00
JesusFreke@JesusFreke.com
ecc73ab3f5 Fix an NPE when there is a <clinit> with no codeItem
git-svn-id: https://smali.googlecode.com/svn/trunk@762 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-23 13:29:50 +00:00
JesusFreke@JesusFreke.com
a53606120a Add support for the new execute-inline/range odexed instruction in smali
git-svn-id: https://smali.googlecode.com/svn/trunk@760 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:35:03 +00:00
JesusFreke@JesusFreke.com
5922b466bf Add support for a new -T debugging option that prints out all the tokens
git-svn-id: https://smali.googlecode.com/svn/trunk@759 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:34:56 +00:00
JesusFreke@JesusFreke.com
73d1b5d3cb Print out an error message for invalid tokens in the lexer, but add a way to suppress the errors
Suppress the lexer errors for unit tests

git-svn-id: https://smali.googlecode.com/svn/trunk@758 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:34:49 +00:00
JesusFreke@JesusFreke.com
a377d50495 Add a method to retrieve the message for InvalidToken
git-svn-id: https://smali.googlecode.com/svn/trunk@757 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:34:43 +00:00
JesusFreke@JesusFreke.com
3da1ca27bd Improve the error reporting in the parser
git-svn-id: https://smali.googlecode.com/svn/trunk@756 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:34:36 +00:00
JesusFreke@JesusFreke.com
1c42f47ada Add support for reporting of the source file name from the lexer, to be used for error messages
git-svn-id: https://smali.googlecode.com/svn/trunk@755 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:34:29 +00:00
JesusFreke@JesusFreke.com
9ac6fa5048 Add a utility method for constructing a relative path
git-svn-id: https://smali.googlecode.com/svn/trunk@754 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:34:20 +00:00
JesusFreke@JesusFreke.com
52ff693c8f Check for lexer errors
git-svn-id: https://smali.googlecode.com/svn/trunk@753 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:34:09 +00:00
JesusFreke@JesusFreke.com
1fd0276b78 Fix an issue parsing arrays of primitive types when parsing param lists
git-svn-id: https://smali.googlecode.com/svn/trunk@752 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:34:00 +00:00
JesusFreke@JesusFreke.com
f65966da4f Add a (somewhat) real smali file as a lexer test
git-svn-id: https://smali.googlecode.com/svn/trunk@751 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:33:52 +00:00
JesusFreke@JesusFreke.com
22532f9dd9 Don't print the expected/actual tokens during the lexer tests
git-svn-id: https://smali.googlecode.com/svn/trunk@750 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:33:47 +00:00
JesusFreke@JesusFreke.com
2c69ece4a5 Add the remaining lexer tests
git-svn-id: https://smali.googlecode.com/svn/trunk@749 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:33:35 +00:00
JesusFreke@JesusFreke.com
b873c047f0 Simply the line comment rule, so that it doesn't include the newline at the end of the line
git-svn-id: https://smali.googlecode.com/svn/trunk@748 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:33:28 +00:00
JesusFreke@JesusFreke.com
35bfbe82f0 Don't allow strings or chars to span newlines
git-svn-id: https://smali.googlecode.com/svn/trunk@747 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:33:23 +00:00
JesusFreke@JesusFreke.com
b9f0c569ea Add better support for invalid strings and chars
git-svn-id: https://smali.googlecode.com/svn/trunk@746 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:33:16 +00:00
JesusFreke@JesusFreke.com
8136408a58 Add support for numbers in the token names, for the lexer/parser for the token specification grammar for the lexer tests
git-svn-id: https://smali.googlecode.com/svn/trunk@745 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:33:11 +00:00
JesusFreke@JesusFreke.com
9f2671f5ff Add a framework for lexer tests, plus a preliminary (incomplete) set of tests
git-svn-id: https://smali.googlecode.com/svn/trunk@744 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:33:00 +00:00
JesusFreke@JesusFreke.com
4c872e9a7c Add new jflex based lexer, that uses significantly less static memory (the ANTLR lexer used around 30mb in static data)
git-svn-id: https://smali.googlecode.com/svn/trunk@743 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:32:50 +00:00
JesusFreke@JesusFreke.com
04c02b038b Fix-up some test in LongLiteralTest
git-svn-id: https://smali.googlecode.com/svn/trunk@742 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
2010-06-13 20:32:43 +00:00
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