Mercurial > hg > graal-compiler
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); |