IRC.git
13 years agoBug fixes for gc
jzhou [Thu, 24 Mar 2011 00:12:27 +0000 (00:12 +0000)]
Bug fixes for gc

13 years agoget rid of length field....
bdemsky [Wed, 23 Mar 2011 23:52:28 +0000 (23:52 +0000)]
get rid of length field....

13 years agoBug fixes for gc
jzhou [Wed, 23 Mar 2011 19:15:59 +0000 (19:15 +0000)]
Bug fixes for gc

13 years agoBug fix
jzhou [Wed, 23 Mar 2011 17:28:24 +0000 (17:28 +0000)]
Bug fix

13 years agoMoved all unused methods to the bottom of the file.
stephey [Wed, 23 Mar 2011 12:56:25 +0000 (12:56 +0000)]
Moved all unused methods to the bottom of the file.

NOT yet ready to DELETE them for 2 reasons:

1) Some code is relevant to Jim's task of finding weakly connected heap groups.
2) If Jim ever decides that a state can have effects that go deeper than just 1 level (i.e. if we have effects that tell us that we can visit a.b.c without changing states), then we'd need to use the code to generate traversal graphs before printing. They've already been modified to (mostly) work with states, but just have a few small bugs from me changing other parts of the code.

13 years agoChanged a lot of things in RCR. It works for the most part (manually inspected with...
stephey [Wed, 23 Mar 2011 10:22:39 +0000 (10:22 +0000)]
Changed a lot of things in RCR. It works for the most part (manually inspected with the state diagram from the power benchmark). There are minor issues with the printout such as empty { } and nothing being inlined since the refCount for states seems to NOT work. Also, there seems to be states with empty effects... which is weird. The major issue is that the buildcode has problems interfacing with the new code. Some problems, not even Jim could figure them out.

13 years agobug fix
bdemsky [Wed, 23 Mar 2011 09:43:45 +0000 (09:43 +0000)]
bug fix

13 years agobug fixes...
bdemsky [Wed, 23 Mar 2011 09:25:46 +0000 (09:25 +0000)]
bug fixes...

13 years agobug fixes
bdemsky [Wed, 23 Mar 2011 01:31:38 +0000 (01:31 +0000)]
bug fixes

13 years agoBug fixes in MGC verison. SPECjbb2005 is now working with 62-core gc.
jzhou [Wed, 23 Mar 2011 01:05:04 +0000 (01:05 +0000)]
Bug fixes in MGC verison. SPECjbb2005 is now working with 62-core gc.

13 years agoJim told me to do this...
stephey [Wed, 23 Mar 2011 01:00:01 +0000 (01:00 +0000)]
Jim told me to do this...

13 years agochanged options in code to actually print reach states on genreach output graphs
jjenista [Wed, 23 Mar 2011 00:35:14 +0000 (00:35 +0000)]
changed options in code to actually print reach states on genreach output graphs

13 years agoa bug, fix it later
jjenista [Wed, 23 Mar 2011 00:34:25 +0000 (00:34 +0000)]
a bug, fix it later

13 years agocc paper example, THERE IS A BUG
jjenista [Tue, 22 Mar 2011 23:44:06 +0000 (23:44 +0000)]
cc paper example, THERE IS A BUG

13 years agobug fix
bdemsky [Tue, 22 Mar 2011 22:34:11 +0000 (22:34 +0000)]
bug fix

13 years agobug fixes
bdemsky [Tue, 22 Mar 2011 22:33:47 +0000 (22:33 +0000)]
bug fixes

13 years agosmall bug
bdemsky [Tue, 22 Mar 2011 09:26:25 +0000 (09:26 +0000)]
small bug

13 years agofix mistake....allocnodes are like disjoint heapregionnodes...
bdemsky [Tue, 22 Mar 2011 09:15:09 +0000 (09:15 +0000)]
fix mistake....allocnodes are like disjoint heapregionnodes...
create new class allocsitenode which is like allocsite from disjointness...
hacked rcr file so it would compile with this change..unclear if it will work correctly

13 years agochanges to give compiler run times for phases....
bdemsky [Tue, 22 Mar 2011 07:15:49 +0000 (07:15 +0000)]
changes to give compiler run times for phases....

13 years agochange so that new analysis runs for all benchmarks
bdemsky [Tue, 22 Mar 2011 04:53:59 +0000 (04:53 +0000)]
change so that new analysis runs for all benchmarks

13 years agobug fix on the glb function of the lattice + working on the checking with the composi...
yeom [Tue, 22 Mar 2011 01:04:32 +0000 (01:04 +0000)]
bug fix on the glb function of the lattice + working on the checking with the composite lattice

13 years agoWork in progress... I need to rework how to handle the case if we have more than...
stephey [Mon, 21 Mar 2011 09:15:53 +0000 (09:15 +0000)]
Work in progress... I need to rework how to handle the case if we have more than 1 starting location for each state.

Here's a TODO list for things out of my control:
1) Need total number of independent heaproots (for hashtable creation).
2) Need to be able to get connected component ID (heaproot ID) from current state.
3) Need to get to get Demsky's Pointer Analysis Graph (and someone should check the way I used it is correct, see createTraversalGraph and addToTraversalGraphStartingAt)
4) Fix the way BuildCodeOoOJavaCode gets a weakmap on line 1822
5) Need a list a list of Allocs that have transitions leading into them per state (needed to know where to start traversal from a transitioned-to state.)
6) See TODOs in SMFEState.java

13 years agodon't need to do pointer analysis in Main
bdemsky [Mon, 21 Mar 2011 07:44:46 +0000 (07:44 +0000)]
don't need to do pointer analysis in Main

13 years agofixing bugs...
bdemsky [Mon, 21 Mar 2011 06:22:37 +0000 (06:22 +0000)]
fixing bugs...

13 years agoUpdated hashRCR and Queue_RCR to conform with new standards (i.e. storing both a...
stephey [Sat, 19 Mar 2011 23:47:41 +0000 (23:47 +0000)]
Updated hashRCR and Queue_RCR to conform with new standards (i.e. storing both a ptr and a state). Fixed a bug in Queue_RCR where the first dequeue is a null.... Don't know how that could have been overlooked for so long and not cause an error...

13 years agochanges.
yeom [Sat, 19 Mar 2011 01:44:14 +0000 (01:44 +0000)]
changes.

13 years agowe took DFJ and broke its arm, and we'll reset the bones in an upcoming patch
jjenista [Sat, 19 Mar 2011 01:21:49 +0000 (01:21 +0000)]
we took DFJ and broke its arm, and we'll reset the bones in an upcoming patch

13 years agochanges...extra accessible analysis
bdemsky [Sat, 19 Mar 2011 00:55:37 +0000 (00:55 +0000)]
changes...extra accessible analysis

13 years agoFix bug for MGC garbage collection
jzhou [Sat, 19 Mar 2011 00:18:11 +0000 (00:18 +0000)]
Fix bug for MGC garbage collection

13 years agochanging to new traversers/examiners
jjenista [Fri, 18 Mar 2011 21:14:45 +0000 (21:14 +0000)]
changing to new traversers/examiners

13 years agomore bug fixes
bdemsky [Fri, 18 Mar 2011 21:14:12 +0000 (21:14 +0000)]
more bug fixes

13 years agomore changes...
bdemsky [Fri, 18 Mar 2011 09:47:08 +0000 (09:47 +0000)]
more changes...

13 years agochanges
bdemsky [Fri, 18 Mar 2011 08:53:34 +0000 (08:53 +0000)]
changes

13 years agomore changes
bdemsky [Fri, 18 Mar 2011 08:37:57 +0000 (08:37 +0000)]
more changes

13 years agoadd rcr-pointer option
bdemsky [Fri, 18 Mar 2011 08:37:40 +0000 (08:37 +0000)]
add rcr-pointer option

13 years agocommit hacks to effect analysis...interfaces to allow disjoint/pointer analysis to...
bdemsky [Fri, 18 Mar 2011 08:32:33 +0000 (08:32 +0000)]
commit hacks to effect analysis...interfaces to allow disjoint/pointer analysis to be exchanged

13 years agoPatch in effects analysis hooks....have to add new accessor methods...add interface...
bdemsky [Fri, 18 Mar 2011 05:23:19 +0000 (05:23 +0000)]
Patch in effects analysis hooks....have to add new accessor methods...add interface for allocsite...

13 years agoneed to decouple effects from AllocSite
bdemsky [Fri, 18 Mar 2011 01:40:40 +0000 (01:40 +0000)]
need to decouple effects from AllocSite

13 years agoa new compiler flag, "-printlinenum", has been added to print out line numbers in...
yeom [Fri, 18 Mar 2011 00:17:01 +0000 (00:17 +0000)]
a new compiler flag, "-printlinenum", has been added to print out line numbers in the generated C codes

13 years agoRemove compilation errors for MGC code with gc
jzhou [Fri, 18 Mar 2011 00:13:10 +0000 (00:13 +0000)]
Remove compilation errors for MGC code with gc

13 years agomy changes
bdemsky [Fri, 18 Mar 2011 00:01:17 +0000 (00:01 +0000)]
my changes

13 years agochanges: propagating line number references to flatnodes
yeom [Thu, 17 Mar 2011 19:18:55 +0000 (19:18 +0000)]
changes: propagating line number references to flatnodes

13 years agomore changes...
bdemsky [Thu, 17 Mar 2011 10:01:18 +0000 (10:01 +0000)]
more changes...

13 years agomore changes...do node-based taints...taint edges...change taintset...
bdemsky [Thu, 17 Mar 2011 07:42:02 +0000 (07:42 +0000)]
more changes...do node-based taints...taint edges...change taintset...

13 years agocompiling again...
bdemsky [Thu, 17 Mar 2011 05:44:05 +0000 (05:44 +0000)]
compiling again...

13 years agokeep the current snapshot before making further changes.
yeom [Thu, 17 Mar 2011 01:39:34 +0000 (01:39 +0000)]
keep the current snapshot before making further changes.

13 years agoFix compilation problems for multicore code
jzhou [Thu, 17 Mar 2011 00:49:19 +0000 (00:49 +0000)]
Fix compilation problems for multicore code

13 years agochanges towards taints
bdemsky [Thu, 17 Mar 2011 00:26:38 +0000 (00:26 +0000)]
changes towards taints

13 years agochanges on the java grammar. the line number of a source code propagates to the Parse...
yeom [Wed, 16 Mar 2011 23:41:46 +0000 (23:41 +0000)]
changes on the java grammar. the line number of a source code propagates to the ParserNode

13 years agoBug fix. Now the SPECjbb2005 can run with small workload that does not invoke gc
jzhou [Wed, 16 Mar 2011 23:18:16 +0000 (23:18 +0000)]
Bug fix. Now the SPECjbb2005 can run with small workload that does not invoke gc

13 years agopushing changes
bdemsky [Wed, 16 Mar 2011 22:56:56 +0000 (22:56 +0000)]
pushing changes

13 years agostarting towards taints
bdemsky [Wed, 16 Mar 2011 19:14:06 +0000 (19:14 +0000)]
starting towards taints

13 years agobug fix...can now analyze specjbb...~44,000 lines of source code files in 42 seconds...
bdemsky [Tue, 15 Mar 2011 10:45:12 +0000 (10:45 +0000)]
bug fix...can now analyze specjbb...~44,000 lines of source code files in 42 seconds...

13 years agosmall hacks to speed up stuff...don't compute graphs for primitive field read/writes...
bdemsky [Tue, 15 Mar 2011 10:26:57 +0000 (10:26 +0000)]
small hacks to speed up stuff...don't compute graphs for primitive field read/writes...just reuse other graphs that are the same

13 years agobug fixes for the day....lots of them
bdemsky [Tue, 15 Mar 2011 09:53:19 +0000 (09:53 +0000)]
bug fixes for the day....lots of them

13 years agorefactoring the lattice implementation / having a way to declare the variable with...
yeom [Tue, 15 Mar 2011 02:05:04 +0000 (02:05 +0000)]
refactoring the lattice implementation / having a way to declare the variable with delta locations(declared by using single-value annotation) / working on comparison of single,composite, and delta locations.

13 years agoFix bug for synchronized blocks. Inside a synchronized block, there could have return...
jzhou [Tue, 15 Mar 2011 00:10:53 +0000 (00:10 +0000)]
Fix bug for synchronized blocks. Inside a synchronized block, there could have return statements. Need to make sure that the locks grabbed should have been released before these return statements execute

13 years agobug fix
bdemsky [Mon, 14 Mar 2011 02:26:47 +0000 (02:26 +0000)]
bug fix

13 years agolots of bugs
bdemsky [Mon, 14 Mar 2011 02:26:34 +0000 (02:26 +0000)]
lots of bugs

13 years agoFix bug in Class Library
jzhou [Sat, 12 Mar 2011 00:40:03 +0000 (00:40 +0000)]
Fix bug in Class Library

13 years agobug fixes
jjenista [Fri, 11 Mar 2011 23:20:52 +0000 (23:20 +0000)]
bug fixes

13 years agoput together parts of DFJ that assumed we did not know the interprocedural parent...
jjenista [Fri, 11 Mar 2011 22:15:56 +0000 (22:15 +0000)]
put together parts of DFJ that assumed we did not know the interprocedural parent set of a given task

13 years agorunning on some benchmarks....
bdemsky [Fri, 11 Mar 2011 07:34:02 +0000 (07:34 +0000)]
running on some benchmarks....

13 years agoanother benchmark working
bdemsky [Fri, 11 Mar 2011 06:51:27 +0000 (06:51 +0000)]
another benchmark working

13 years agoa few more bugs fixed...lots of debug code
bdemsky [Fri, 11 Mar 2011 06:31:55 +0000 (06:31 +0000)]
a few more bugs fixed...lots of debug code

13 years agopublic interface for the later compiler phases
jjenista [Thu, 10 Mar 2011 23:02:35 +0000 (23:02 +0000)]
public interface for the later compiler phases

13 years agostate machines for traverers seem to be working for small examples
jjenista [Thu, 10 Mar 2011 22:12:05 +0000 (22:12 +0000)]
state machines for traverers seem to be working for small examples

13 years agomore bug fixes...
bdemsky [Thu, 10 Mar 2011 09:46:04 +0000 (09:46 +0000)]
more bug fixes...

13 years agoeven more bug fixes...3 test cases work
bdemsky [Thu, 10 Mar 2011 09:23:17 +0000 (09:23 +0000)]
even more bug fixes...3 test cases work

13 years agomore bug fixes...two examples working
bdemsky [Thu, 10 Mar 2011 08:13:27 +0000 (08:13 +0000)]
more bug fixes...two examples working

13 years agobug fixes...
bdemsky [Thu, 10 Mar 2011 07:40:55 +0000 (07:40 +0000)]
bug fixes...

13 years agoFix a bug of field initialization. Previously the field initializations are done...
jzhou [Thu, 10 Mar 2011 03:09:09 +0000 (03:09 +0000)]
Fix a bug of field initialization. Previously the field initializations are done in a reverse definition order. This could cause problem when a field's initialization depends on another fields initialization. As in the Java language specification, it is only specified that a instance field's initialization should be before its first usage in the field initializations, we simply change to do the field initializations in the same order as they are defined

13 years agobug fixes
bdemsky [Thu, 10 Mar 2011 02:10:12 +0000 (02:10 +0000)]
bug fixes

13 years agochanges
bdemsky [Wed, 9 Mar 2011 23:29:37 +0000 (23:29 +0000)]
changes

13 years agochanges
bdemsky [Wed, 9 Mar 2011 21:54:19 +0000 (21:54 +0000)]
changes

13 years agoFix bugs in Class Library
jzhou [Sun, 6 Mar 2011 01:56:03 +0000 (01:56 +0000)]
Fix bugs in Class Library

13 years agoShrink the size of the final binary. If it is too large it will have problem executi...
jzhou [Sun, 6 Mar 2011 00:24:45 +0000 (00:24 +0000)]
Shrink the size of the final binary.  If it is too large it will have problem executing on Tilera.  We compress the virtual dispatch table: we use one row to represent the methods defined in interfaces that have the same prototype; and we do not generate colums for interfaces as there can not be instances of interfaces.  Moreover, we do not generate methods that are never invoked.

13 years agointroduce new flag -ssjava for enabling SSJava feature and start working on the imple...
yeom [Sat, 5 Mar 2011 00:44:10 +0000 (00:44 +0000)]
introduce new flag -ssjava for enabling SSJava feature and start working on the implementation of flow-down rule checking plus minor updates.

13 years agomore code for state machines in dfj traversers
jjenista [Sat, 5 Mar 2011 00:02:19 +0000 (00:02 +0000)]
more code for state machines in dfj traversers

13 years agoextend taints for a new mode in DFJ that helps build the state machine traversers
jjenista [Fri, 4 Mar 2011 23:10:03 +0000 (23:10 +0000)]
extend taints for a new mode in DFJ that helps build the state machine traversers

13 years agoa tiny example to show if the state machines are working
jjenista [Fri, 4 Mar 2011 23:09:19 +0000 (23:09 +0000)]
a tiny example to show if the state machines are working

13 years agoadd a second task to generate conflicts
jjenista [Fri, 4 Mar 2011 23:08:40 +0000 (23:08 +0000)]
add a second task to generate conflicts

13 years agochanges
bdemsky [Fri, 4 Mar 2011 07:15:39 +0000 (07:15 +0000)]
changes

13 years agoFix bugs for interfaces. \n\nFor methods declared in interfaces, there always need...
jzhou [Fri, 4 Mar 2011 02:30:57 +0000 (02:30 +0000)]
Fix bugs for interfaces. \n\nFor methods declared in interfaces, there always need virtual dispatch.\n\n The other bug is that previously the method numbering strategy always start from 0 when numbering a class'es method.  When there are no interfaces, all classes form a tree with Object as the root and the numbering works fine.  But with interfaces, the inherit hierachy would no longer be a tree and there will have serious problems.  #0 would be always assigned to some method of Object and every interfaces.  If a Class implements any interfaces, it would have at least two methods with #0 and it would only be able to access one of it and lose the others.  Also we need to make sure that each method of a interface should have a distinguished number so that when a class implements multiple interfaces, it would not lose access of any of the methods defined in the interfaces.  So when numbering the methods in Virtual, we first numbering all the methods in the interfaces and give them a distinguished number. Then we numbering the classes and start from the following number.  As interfaces could have methods with the same name, a method in a class could match multiple entries in its super interfaces/classes.  We record all these entries in order to fill in the virtual table correctly

13 years agoadd grammar for the definition of location hierarchy. location hierarchy is stored...
yeom [Thu, 3 Mar 2011 19:33:42 +0000 (19:33 +0000)]
add grammar for the definition of location hierarchy. location hierarchy is stored in the lattice data structure. class descriptor has a lattice object since each class maintains its own location hierarchy,

13 years agoa functioning test program for stephen that produces a bad traverser for current...
jjenista [Thu, 3 Mar 2011 19:33:29 +0000 (19:33 +0000)]
a functioning test program for stephen that produces a bad traverser for current dfj system

13 years agoa test case showing a bug in disjoint analysis basic points-to stuff
jjenista [Thu, 3 Mar 2011 18:31:32 +0000 (18:31 +0000)]
a test case showing a bug in disjoint analysis basic points-to stuff

13 years agomore code changes
bdemsky [Thu, 3 Mar 2011 09:10:19 +0000 (09:10 +0000)]
more code changes

13 years agoAdd unit tests for Abstract class support, Enum type support, Field Initializer suppo...
jzhou [Thu, 3 Mar 2011 02:44:16 +0000 (02:44 +0000)]
Add unit tests for Abstract class support, Enum type support, Field Initializer support, Interface support, Static inner class support, static field/block support, switch-case statement support, and try-catch support

13 years agoRemove commented out code
jzhou [Thu, 3 Mar 2011 02:19:59 +0000 (02:19 +0000)]
Remove commented out code

13 years agochanges
bdemsky [Thu, 3 Mar 2011 02:08:11 +0000 (02:08 +0000)]
changes

13 years agoFix bugs for interfaces and a bug in the Class library
jzhou [Thu, 3 Mar 2011 02:07:49 +0000 (02:07 +0000)]
Fix bugs for interfaces and a bug in the Class library

13 years agomore changes
bdemsky [Thu, 3 Mar 2011 01:56:17 +0000 (01:56 +0000)]
more changes

13 years agomore code cleanup
bdemsky [Wed, 2 Mar 2011 23:20:17 +0000 (23:20 +0000)]
more code cleanup

13 years agocode cleanup
bdemsky [Wed, 2 Mar 2011 22:53:45 +0000 (22:53 +0000)]
code cleanup

13 years agochanges towards making this work
bdemsky [Wed, 2 Mar 2011 22:05:52 +0000 (22:05 +0000)]
changes towards making this work

13 years agoA small bug for Enum
jzhou [Wed, 2 Mar 2011 19:29:10 +0000 (19:29 +0000)]
A small bug for Enum

13 years agoFix the field name for object.c and thread.c, there are no Class name prefix anymore
jzhou [Wed, 2 Mar 2011 19:28:38 +0000 (19:28 +0000)]
Fix the field name for object.c and thread.c, there are no Class name prefix anymore

13 years agoFix bugs for static fields/blocks and instanceof operation. To effectively support...
jzhou [Wed, 2 Mar 2011 00:42:13 +0000 (00:42 +0000)]
Fix bugs for static fields/blocks and instanceof operation.  To effectively support static fields/blocks, we need to generate a special version for methods that could be invoked in static blocks or when initializing static fields.  In the special version, if there are classes with static fields/blocks are involved, we'll check if the static fields have been initialized and if the static blocks have been executed.  Previously we misused C micros to implement this(MGC_STATIC_INIT_CHECK).  Now we remove this wrong macro and generate the required special version.  For instanceof operation, we fix two bugs.  One is that previously we did not take interfaces into consider and the other is that in the instanceof(struct Object *, int) function we did not check if the Object is NULL or not.  If the Object is NULL, we shall always return false.

13 years agoadd annotation descriptor. type descriptor is responsible for keeping corresponding...
yeom [Tue, 1 Mar 2011 22:49:11 +0000 (22:49 +0000)]
add annotation descriptor. type descriptor is responsible for keeping corresponding annotations.