/* src/vm/jit/allocator/lsra.c - linear scan register allocator
- Copyright (C) 2005, 2006 R. Grafl, A. Krall, C. Kruegel,
+ Copyright (C) 2005, 2006, 2007 R. Grafl, A. Krall, C. Kruegel,
C. Oates, R. Obermaisser, M. Platter, M. Probst, S. Ring,
E. Steiner, C. Thalinger, D. Thuernbeck, P. Tomsich, C. Ullrich,
J. Wenninger, Institut f. Computersprachen - TU Wien
Contact: cacao@cacaojvm.org
Authors: Christian Ullrich
-
- Changes: Christian Thalinger
+ Christian Thalinger
Edwin Steiner
- $Id: lsra.c 5240 2006-08-16 11:31:02Z christian $
-
*/
m = jd->m;
ls = jd->ls;
- ex = jd->cd->exceptiontable;
+ ex = jd->exceptiontable;
/* add cfg edges from all bb of a try block to the start of the according */
/* exception handler to ensure the right order after depthfirst search */
#ifdef LSRA_DEBUG_VERBOSE
if (compileverbose)
- printf("ExTable(%i): ", jd->cd->exceptiontablelength);
+ printf("ExTable(%i): ", jd->exceptiontablelength);
#endif
for (; ex != NULL; ex = ex->down) {
liveness_init(jd);
- ls->lifetimecount = ls->maxlifetimes + cd->maxlocals * (TYPE_ADR+1);
+ ls->lifetimecount = ls->maxlifetimes + jd->maxlocals * (TYPE_ADR+1);
ls->lifetime = DMNEW(struct lifetime, ls->lifetimecount);
ls->lt_used = DMNEW(int, ls->lifetimecount);
ls->lt_int = DMNEW(int, ls->lifetimecount);
break;
default:
- *exceptionptr =
- new_internalerror("Unknown ICMD %d during register allocation",
- iptr->opc);
+ exceptions_throw_internalerror("Unknown ICMD %d during register allocation",
+ iptr->opc);
return;
} /* switch */
}