Skip to content

Commit daec77c

Browse files
author
Eric Bodden
committed
preparing for 2.3.0 release
1 parent 9815c71 commit daec77c

File tree

3 files changed

+41
-39
lines changed

3 files changed

+41
-39
lines changed

CHANGES

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Improvements and API changes in version 2.2.6
1+
Improvements and API changes in version 2.3.0
22

33
1. Integrated new JastAdd-based frontend with support for Java 5
44
source code. Thanks to Torbjorn Ekman for contributing his

Release_Notice

Lines changed: 37 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,45 @@
11
Dear Soot Users,
22

3-
We are pleased to announce that Soot version 2.2.5 is now available
3+
We are pleased to announce that Soot version 2.3.0 is now available
44
at: http://www.sable.mcgill.ca/soot/
55

66
This release contains the following additions and improvements:
77

8-
1. Soot now has an option to prepend the classpath given on the
9-
command line to the default classpath. See the documentation on
10-
the option -pp for details.
11-
12-
2. Included Manu Sridharan's demand-driven points-to analysis. See
13-
http://doi.acm.org/10.1145/1133255.1134027 for details. It can be
14-
activated via: -p cg.spark cs-demand:true
15-
16-
3. Added local must-alias and not-may alias analyses. See package
17-
soot.jimple.toolkits.pointer.
18-
19-
4. Updated NullnessAnalysis for better performance. Thanks to Julian
20-
Tibble!
21-
22-
5. The flow analysis framework is now generic. One can explicitly
23-
declare the type of the abstraction and that is used for the fixed
24-
point iteration and the node type for the graph that is iterated over.
25-
This avoids a lot of casting one had to do in the past.
26-
27-
6. Between versions 2.2.3 and 2.2.4, a bug was introduced to Spark:
28-
PointsToSetInternal now implements equals/hashCode which confused the
29-
propagator algorithm because it was relying on comparison by identity.
30-
This lead to a five-fold slowdown on the points-to analyses and
31-
potentially wrong results. The bug has now been fixed by modifying
32-
the propagator algorithm. Original speed was restored.
33-
34-
7. Richard Halpert's lock allocator as published at PACT'07, see:
35-
http://www.sable.mcgill.ca/publications/papers/#pact2007
36-
It is accessible via the wjtn (whole-jimple transaction) pack.
37-
38-
Due to the use of generics this version of Soot as well as all
39-
upcoming versions require to run on a JVM supporting Java version 5 or
40-
higher.
8+
1. Integrated new JastAdd-based frontend with support for Java 5
9+
source code. Thanks to Torbjorn Ekman for contributing his
10+
frontend and his implementation of Java2Jimple!
11+
12+
2. At the very least if -validate is on, Soot now checks that @this
13+
is only assigned in the first statement of an instance method.
14+
This has always been an implicit assumption for Jimple code
15+
but up until now was not enforced.
16+
17+
3. Integrated full support for preserving annotations in Jimple
18+
and writing them to bytecode. SOURCE level annotations are
19+
preserved if code is read from source and the flag
20+
-p jb preserve-source-annotations is given. (does not hold for
21+
package and local variable annotations) SOURCE level annotations
22+
are not written into bytecode by Soot.
23+
Annotations can easily be added to SootClass, SootMethod and
24+
SootField instances using the utility class
25+
soot.jimple.toolkits.annotation.j5anno.AnnotationGenerator.
26+
(Thanks to Will Benton!)
27+
28+
4. Java 5 Annotations for fields, classes, parameters and methods
29+
are now fully preserved in bytecode. Jasmin was changed to
30+
implement this support.
31+
32+
5. Ben Bellamy contributed a new implementation for the type assigner.
33+
This is to be published under the title 'Efficient Local Type
34+
Inference' at OOPSLA '08. The new type assigner is usually
35+
faster (it is applied when processing bytecode), and sometimes
36+
more precise. In particular it should always infer the most
37+
narrow type possible.
38+
39+
Also we incorporated fixes to numerous bugs. Thanks for reporting bugs
40+
and/or prividing fixes!
41+
42+
See http://www.sable.mcgill.ca/soot/CHANGES for details.
4143

4244
As of version 2.2.0 the Soot bugzilla is available at:
4345
http://svn.sable.mcgill.ca/bugzilla/. We encourage you to add any Soot
@@ -51,4 +53,4 @@ like to know what's going on look there.
5153
Regards,
5254

5355
Eric Bodden
54-
Sable Research Group, McGill University
56+
Sable Research Group, McGill University

src/soot/Main.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
*/
1919

2020
/*
21-
* Modified by the Sable Research Group and others 1997-1999.
21+
* Modified by the Sable Research Group and others 1997-2008.
2222
* See the 'credits' file distributed with Soot for the complete list of
2323
* contributors. (Soot is distributed at http://www.sable.mcgill.ca/soot)
2424
*/
@@ -40,9 +40,9 @@ public static Main v() {
4040
return G.v().soot_Main();
4141
}
4242
// TODO: the following string should be updated by the source control
43-
// No it shouldn't. Prcs is horribly borken in this respect, and causes
43+
// No it shouldn't. Prcs is horribly broken in this respect, and causes
4444
// the code to not compile all the time.
45-
public final String versionString = "2.2.5";
45+
public final String versionString = "2.3.0";
4646

4747
private Date start;
4848
private Date finish;

0 commit comments

Comments
 (0)