comparison graal/GraalCompiler/src/com/sun/c1x/graph/GraphBuilder.java @ 2662:440ceca8e3d7

Add exception handlers only to Invoke and Throw instructions. Deoptimize if there is an exception in a HotSpot runtime call.
author Thomas Wuerthinger <thomas@wuerthinger.net>
date Wed, 11 May 2011 18:16:01 +0200
parents 194d93d089bd
children 405e7947a940
comparison
equal deleted inserted replaced
2661:194d93d089bd 2662:440ceca8e3d7
941 if (++stats.nodeCount >= C1XOptions.MaximumInstructionCount) { 941 if (++stats.nodeCount >= C1XOptions.MaximumInstructionCount) {
942 // bailout if we've exceeded the maximum inlining size 942 // bailout if we've exceeded the maximum inlining size
943 throw new CiBailout("Method and/or inlining is too large"); 943 throw new CiBailout("Method and/or inlining is too large");
944 } 944 }
945 945
946 if (x.canTrap()) { 946 if (x instanceof Invoke || x instanceof Throw) {
947 // connect the instruction to any exception handlers 947 // connect the instruction to any exception handlers
948 x.setExceptionHandlers(handleException(x, bci)); 948 x.setExceptionHandlers(handleException(x, bci));
949 } 949 }
950 950
951 return x; 951 return x;