hoenicke
5815ab3a08
Fix Warnings
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1411 379699f6-c40d-0410-875b-85095c16579e
12 years ago
hoenicke
4ff081adef
Changed enum to enumeration to make it compile with Java 5
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1390 379699f6-c40d-0410-875b-85095c16579e
19 years ago
hoenicke
487a4b49d9
Some copyright/documentation updates
...
* src/net/sf/jode/bytecode/BinaryInfo.java (ACC_*): added
constants describing modifier attributes.
* src/net/sf/jode/bytecode/BasicBlockReader.java
(convertHandlers): remove empty handlers.
(readCode): merge adjacent try-blocks (splitted by javac-1.4
return rule).
* src/net/sf/jode/bytecode/FieldInfo.java (syntheticFlag):
removed, use modifier and ACC_SYNTHETIC (new in java 5) instead.
Changed all usages. When writing it currently writes out both
old and new synthetic format.
(getSignature): New method to return full generic signature.
* src/net/sf/jode/bytecode/MethodInfo.java
(syntheticFlag, getSignature): likewise.
* src/net/sf/jode/bytecode/ClassInfo.java (getSignature):
new method to return full generic signature.
* src/net/sf/jode/decompiler/MethodAnalyzer.java (skipWriting):
Skip java 5 bridge methods.
* src/net/sf/jode/expr/InvokeOperator.java (getClassAnalyzer):
Check for null callee.
* src/net/sf/jode/expr/FlowBlock.java (analyze): New order for
T1,T2 analysis: Do not do T1 analysis when the block has more
than one real successor and the next block can be easily merged.
See comment for more information.
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1383 379699f6-c40d-0410-875b-85095c16579e
20 years ago
hoenicke
f43b317ae8
Set copyright to LGPL for packages util,bytecode,jvm,expr,flow and decompiler.
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1367 379699f6-c40d-0410-875b-85095c16579e
22 years ago
hoenicke
c11b2426df
Handle empty blocks used for "while(true) {}"
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1362 379699f6-c40d-0410-875b-85095c16579e
23 years ago
hoenicke
31ebef4f9c
Changed compilation procedure to ant.
...
Renamed jode package to net.sf.jode
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1333 379699f6-c40d-0410-875b-85095c16579e
23 years ago
hoenicke
f2d8663e9f
* jode/AssertError.java: removed, all uses are now replaced
...
by java.lang.InternalError.
* jode/Makefile.am: removed AssertError.java
* jode/bytecode/ClassInfo.java: reworked handling of inner
classes.
(extraClasses): removed, they are calculated automatically.
(hasInnerClassesAttr): new variable.
(readInnerClassesAttribute): Mark all classes in the constant
pool as having OUTERCLASS info filled. Don't handle extraClasses
specially.
(prepareWriting): Change for automatically generating outer
class info.
(getKnownAttributes): dito.
(writeKnownAttributes): dito.
(getExtraClasses): removed.
(setExtraClasses): removed.
* jode/bytecode/ClassAnalyzer.java (conflicts): load or guess
declarations of info before getting inner classes.
* jode/decompiler/TabbedPrintWriter.java (BreakPoint.endOp):
Set options correctly.
* jode/expr/InvokeOperator.java (getMethodInfo): load or guess
declarations before accessing methods.
* jode/flow/FlowBlock.java (resolveSomeJumps): When creating a
if-then-else move the jump from the then branch to the if, before
restarting analysis.
(doT1): handle the case when lastModified.jump is null. Throw
statements have no jump now.
* jode/jvm/SyntheticAnalyzer (checkAccess): Fix the detection for
PUTDUPSTATIC/FIELD.
* jode/type/ClassType.java (getCastHelper): More checks when
cast is not needed: interfaces and null pointer.
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1331 379699f6-c40d-0410-875b-85095c16579e
23 years ago
hoenicke
e78e8b0472
Applied more patches from Jode-1.1 branch
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1329 379699f6-c40d-0410-875b-85095c16579e
23 years ago
hoenicke
c30ac484c5
Applied changes from the Jode-1.1 tree.
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1327 379699f6-c40d-0410-875b-85095c16579e
23 years ago
hoenicke
712f5d03dd
Insert a jump to end-of-method after a valued return, since try-catch analysis
...
needs it.
opc_return shouldn't occur in new bytecode interface
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1273 379699f6-c40d-0410-875b-85095c16579e
24 years ago
hoenicke
4a63627c87
Big updates: bytecode instruction interface, new types for the decompiler,
...
option parsing a bit reworked.
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1267 379699f6-c40d-0410-875b-85095c16579e
24 years ago
hoenicke
0b2f10fddf
beautification
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1257 379699f6-c40d-0410-875b-85095c16579e
24 years ago
hoenicke
3378492cd3
New bytecode interface, no .java.in files anymore
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1247 379699f6-c40d-0410-875b-85095c16579e
24 years ago
hoenicke
60889790b5
Remove most modifiers from static constructors, since java syntax
...
doesn't allow them.
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1237 379699f6-c40d-0410-875b-85095c16579e
24 years ago
jochen
92878b6692
Line breaking added.
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1227 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
9ce95e120a
New Decompiler/ProgressListener interface
...
bug fix in blockInitializers (now uses StructuredBlocks)
Makefile optimized
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1217 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
c5b840847b
added dropInfo
...
Decompiler, JodeApplet and JodeWindow moved into decompile package
makeDeclaration now transmits the done set over class borders
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1201 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
62ca43d74f
OuterValues added
...
inner/anonymous classes completely reworked
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1191 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
74001822d7
simplified parameter handling.
...
added comments
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1158 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
02522b5cef
instructions collectionified
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1102 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
6786a3fa35
using the autoconfigured @COLLECTIONS@ imports.
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1087 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
9a042f80c8
ConstructorOperator removed, InvokeOperator handles it all.
...
insertStructuredBlock must be called _after_ analyzation.
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1080 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
d4b15f7b44
use member functions to access Instruction fields
...
cleaned up imports
use appendBlock instead of sequentialT1
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1072 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
6e053f676e
ClassAnalyzer now handles OPTION_IMMEDIATE flag
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1035 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
60e617facd
Don't allow instructions to merge over the end boundary of a try block
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1000 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
0b4cbb226c
fixed the check for default constructors modifiers
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@974 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
c880423ef9
don't print classes if verbose
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@960 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
b6ebe189e2
Only remove abstract, but not public modifier in interface method
...
setJikesBlockIdentifier
SimpleMap instead of SimpleDictionary
minor fixes
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@925 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
5764dddd92
removed debugging messages
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@919 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
8368c6ef37
jikes constructor's outerValue[0] parameter handling
...
bug fixes
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@913 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
8978eb0fb2
small bug fix
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@910 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
13d300eb66
CodeAnalyzer merged into MethodAnalyzer
...
outerValues completely reworked
more passes: analyze, analyzeInnerClasses, makeDeclaration
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@907 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
3a1455664a
not working yet, I plan to merge it with MethodAnalyzer
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@876 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
5dda632277
isAnonymousConstructor added
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@868 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
ceb0ce32d5
use setExpression to propagate this/outerValues
...
handle anonymous/method scope classes
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@844 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
a49faf53f7
Print snythetic access methods, if inner or anonymous classes disabled
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@786 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
7cc18ada02
static classes don't get a this$0 in constructor
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@763 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
95916f7a1b
inner/anonymous classes handling in constructors
...
new option syntax
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@736 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
54f3f0c2b0
printType,
...
call type.guessName for abstract methods
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@704 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
8e74989f48
GlobalOptions
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@684 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
62747d9f22
Analyze synthetics on demand
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@660 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
78eb752b08
attribute handling in bytecode
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@631 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
553ddf518b
JodeEnvironment removed (ImportHandler)
...
Types moved to jode.type
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@592 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
1aa1cddc0b
getParamCount removed
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@532 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
15b9ad802a
MethodType changed
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@490 379699f6-c40d-0410-875b-85095c16579e
25 years ago
jochen
ea628da246
CodeInfo loading moved to codeanalyzer
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@472 379699f6-c40d-0410-875b-85095c16579e
26 years ago
jochen
2d28ebd78e
getCode
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@407 379699f6-c40d-0410-875b-85095c16579e
26 years ago
jochen
9fbbedb0ad
*** empty log message ***
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@347 379699f6-c40d-0410-875b-85095c16579e
26 years ago
jochen
1742ed3380
isSynthetic
...
isGetClass
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@262 379699f6-c40d-0410-875b-85095c16579e
26 years ago
jochen
ab5f3eb09f
new_decompiler_package
...
git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@255 379699f6-c40d-0410-875b-85095c16579e
26 years ago