Branch: refs/heads/master Home: http://github.com/penberg/jato
Commit: dd86fa95f7c3eb3ace8492e96ab77c4f4606ec07 http://github.com/penberg/jato/commit/dd86fa95f7c3eb3ace8492e96ab77c4f4606ec07 Author: Pekka Enberg <penb...@cs.helsinki.fi> Date: 2009-09-04 (Fri, 04 Sep 2009) Changed paths: M Makefile A regression/jvm/GcTortureTest.java M regression/run-suite.sh Log Message: ----------- regression: GC torture test This patch adds a simple torture test for GC. Signed-off-by: Pekka Enberg <penb...@cs.helsinki.fi> Commit: 0c960d430b8755bb169090c090947eacffef32e3 http://github.com/penberg/jato/commit/0c960d430b8755bb169090c090947eacffef32e3 Author: Tomek Grabiec <tgrab...@gmail.com> Date: 2009-09-04 (Fri, 04 Sep 2009) Changed paths: M include/jit/basic-block.h M jit/basic-block.c M jit/exception-bc.c M jit/invoke-bc.c Log Message: ----------- jit: make clear_mimic_stack() work on stack instead of basic block Signed-off-by: Tomek Grabiec <tgrab...@gmail.com> Signed-off-by: Pekka Enberg <penb...@cs.helsinki.fi> Commit: 93e5df794bbbc82dbee8e5bde2e0329007325cf8 http://github.com/penberg/jato/commit/93e5df794bbbc82dbee8e5bde2e0329007325cf8 Author: Tomek Grabiec <tgrab...@gmail.com> Date: 2009-09-04 (Fri, 04 Sep 2009) Changed paths: M jit/basic-block.c M jit/switch-bc.c M test/jit/basic-block-test.c Log Message: ----------- jit: split tableswitch/lookupswitch bsaic block at the end. This way, the order of basic blocks matches the values of .start and .end It also makes created basic blocks have empty bytecode range (start == end). Signed-off-by: Tomek Grabiec <tgrab...@gmail.com> Signed-off-by: Pekka Enberg <penb...@cs.helsinki.fi> Commit: ff538e8675c0acbac77f18d1e3ea23a1bd2bb957 http://github.com/penberg/jato/commit/ff538e8675c0acbac77f18d1e3ea23a1bd2bb957 Author: Tomek Grabiec <tgrab...@gmail.com> Date: 2009-09-04 (Fri, 04 Sep 2009) Changed paths: M jit/switch-bc.c Log Message: ----------- jit: set .has_branch flag for created basic blocks for tableswitch/lookupswitch. We must set that flag so that mimic stack resolution will put moves before branch instructions. Signed-off-by: Tomek Grabiec <tgrab...@gmail.com> Signed-off-by: Pekka Enberg <penb...@cs.helsinki.fi> Commit: cc5babc99ebae9e2e825a2d8c7499cf28e700f25 http://github.com/penberg/jato/commit/cc5babc99ebae9e2e825a2d8c7499cf28e700f25 Author: Tomek Grabiec <tgrab...@gmail.com> Date: 2009-09-04 (Fri, 04 Sep 2009) Changed paths: M include/jit/basic-block.h M include/lib/stack.h M jit/basic-block.c M jit/bytecode-to-ir.c M lib/stack.c Log Message: ----------- jit: fix mimic stack content propagation The mimic stack propagation procedure was pushing elements onto successors' stacks on every CFG edge. This caused that the successor's stack was larger then it should be. Suppose we have basic block X, which has N predecessors. For each X's predecessor, Q elements were pushed onto X's mimic stack, so finally it had N*Q elements instead of Q. The X's mimic stack was then also propagated, along with extra elements. This led to generation of many unnecessary register moves. In some CFG configurations this may lead to degenerative mimic stack resolution, where STMT_STORE is inserted with src temporary that is assigned only on some paths. This leads to incorrect liveness analysis of the temporary register, because it is seen to be used before it is defined. The register appears to be always live before it's use position, which is wrong, and could cause problems with GC. Signed-off-by: Tomek Grabiec <tgrab...@gmail.com> Signed-off-by: Pekka Enberg <penb...@cs.helsinki.fi> ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Jatovm-devel mailing list Jatovm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jatovm-devel