comparison graal/GraalCompiler/src/com/sun/c1x/lir/LIRInstruction.java @ 2707:7ed72769d51a

exception handling related changes: * changed blockPredecessors to list of Instructions, instead of Blocks * removed explicit predecessor management in BlockBegin, now using predecessors from Graph structure * replaced generated LIR exception entries with exception dispatch chains in IR * added Unwind and ExceptionDispatch instructions * removed ExceptionEntry flag in BlockBegin and all code depending on it * removed exceptionHandler list from Instruction, replaced by exception Edge on Invoke and Throw * replaced list of ExceptionHandlers with single exception edge in debug info misc: * changed GraphvizPrinter layout (smaller ports on large nodes) * removed defunct run config
author Lukas Stadler <lukas.stadler@jku.at>
date Wed, 18 May 2011 18:09:20 +0200
parents 16b9a8b5ad39
children c1ce2a53d6c3
comparison
equal deleted inserted replaced
2677:0ea5f12e873a 2707:7ed72769d51a
481 assert index < allocatorTempInputCount + allocatorTempCount; 481 assert index < allocatorTempInputCount + allocatorTempCount;
482 allocatorOperands.set(index + allocatorOutputCount + allocatorInputCount, location); 482 allocatorOperands.set(index + allocatorOutputCount + allocatorInputCount, location);
483 } 483 }
484 } 484 }
485 485
486 public final List<ExceptionHandler> exceptionEdges() { 486 public final BlockBegin exceptionEdge() {
487 if (info != null && info.exceptionHandlers != null) { 487 return info.exceptionEdge;
488 return info.exceptionHandlers;
489 }
490
491 return Collections.emptyList();
492 } 488 }
493 489
494 @Override 490 @Override
495 public String toString() { 491 public String toString() {
496 return toString(OperandFormatter.DEFAULT); 492 return toString(OperandFormatter.DEFAULT);