changeset 9768:cbf274a92e5b

a leaf foreign call does not need debug info
author Doug Simon <doug.simon@oracle.com>
date Fri, 17 May 2013 22:02:46 +0200
parents e415e58e0db2
children 15a696a25108
files graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotLIRGenerator.java
diffstat 1 files changed, 6 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotLIRGenerator.java	Fri May 17 22:02:11 2013 +0200
+++ b/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotLIRGenerator.java	Fri May 17 22:02:46 2013 +0200
@@ -231,14 +231,16 @@
                 }
             }
         }
-        if (!hsLinkage.isLeaf()) {
-            append(new AMD64HotSpotCRuntimeCallPrologueOp());
-        }
 
-        Variable result = super.emitForeignCall(linkage, info, args);
+        Variable result;
 
         if (!hsLinkage.isLeaf()) {
+            assert info != null;
+            append(new AMD64HotSpotCRuntimeCallPrologueOp());
+            result = super.emitForeignCall(linkage, info, args);
             append(new AMD64HotSpotCRuntimeCallEpilogueOp());
+        } else {
+            result = super.emitForeignCall(linkage, null, args);
         }
 
         if (destroysRegisters) {