* src/vm/jit/exceptiontable.c: New file.
[cacao.git] / src / vm / jit / alpha / codegen.c
index ed9064e01f4aa213a3ddccdc015a6ef36092fa0f..893cdce70d0a8c24a7e6622dab6089eeb351e4b7 100644 (file)
@@ -87,7 +87,6 @@ bool codegen_emit(jitdata *jd)
        varinfo            *var;
        basicblock         *bptr;
        instruction        *iptr;
-       exception_entry    *ex;
        u2                  currentline;
        methodinfo         *lm;             /* local methodinfo for ICMD_INVOKE*  */
        unresolved_method  *um;
@@ -141,17 +140,7 @@ bool codegen_emit(jitdata *jd)
        (void) dseg_add_unique_address(cd, code);              /* CodeinfoPointer */
        (void) dseg_add_unique_s4(cd, cd->stackframesize * 8); /* FrameSize       */
 
-       /* IsSync contains the offset relative to the stack pointer for the
-          argument of monitor_exit used in the exception handler. Since the
-          offset could be zero and give a wrong meaning of the flag it is
-          offset by one.
-       */
-       /* XXX Remove this "offset by one". */
-
-       code->synchronizedoffset = (rd->memuse + 1) * 8;
-
-       /* REMOVEME dummy IsSync */
-       (void) dseg_add_unique_s4(cd, 0);
+       code->synchronizedoffset = rd->memuse * 8;
 
        /* REMOVEME: We still need it for exception handling in assembler. */
 
@@ -165,17 +154,6 @@ bool codegen_emit(jitdata *jd)
 
        dseg_addlinenumbertablesize(cd);
 
-       (void) dseg_add_unique_s4(cd, jd->exceptiontablelength);   /* ExTableSize */
-
-       /* create exception table */
-
-       for (ex = jd->exceptiontable; ex != NULL; ex = ex->down) {
-               dseg_add_target(cd, ex->start);
-               dseg_add_target(cd, ex->end);
-               dseg_add_target(cd, ex->handler);
-               (void) dseg_add_unique_address(cd, ex->catchtype.any);
-       }
-       
        /* create stack frame (if necessary) */
 
        if (cd->stackframesize)