Mercurial > hg > truffle
comparison graal/GraalCompiler/src/com/sun/c1x/target/amd64/AMD64LIRGenerator.java @ 2773:27512ea6bbcb
exception dispatch simplification:
* BlockMap creates exception dispatch blocks (so they're iterated in the right order)
* GraphBuilder uses exception dispatch blocks, simplified handleException, removed updateDispatchChain
* simplified mergeOrClone
* removed successor & predecessor methods from BlockBegin
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Tue, 24 May 2011 12:07:17 +0200 |
parents | cc2b98e2b832 |
children | d3fc4fe063bf |
comparison
equal
deleted
inserted
replaced
2772:3e3338a1abb9 | 2773:27512ea6bbcb |
---|---|
515 | 515 |
516 @Override | 516 @Override |
517 public void visitExceptionDispatch(ExceptionDispatch x) { | 517 public void visitExceptionDispatch(ExceptionDispatch x) { |
518 // TODO ls: this needs some more work... | 518 // TODO ls: this needs some more work... |
519 | 519 |
520 RiType riType = x.handler().handler.catchType(); | 520 RiType riType = x.catchType(); |
521 assert riType.isResolved(); | 521 assert riType.isResolved(); |
522 | 522 |
523 XirArgument obj = toXirArgument(x.exception()); | 523 XirArgument obj = toXirArgument(x.exception()); |
524 XirArgument clazz = toXirArgument(riType.getEncoding(Representation.ObjectHub)); | 524 XirArgument clazz = toXirArgument(riType.getEncoding(Representation.ObjectHub)); |
525 XirSnippet snippet = xir.genInstanceOf(site(x), obj, clazz, riType); | 525 XirSnippet snippet = xir.genInstanceOf(site(x), obj, clazz, riType); |