changeset 1276:eb264976c3df

2008-12-16 Andrew Haley <aph@redhat.com> * ports/hotspot/src/share/vm/shark/sharkFunction.cpp (SharkFunction::CreatePopFrame): Remove _LP64 special-case code. * ports/hotspot/src/share/vm/shark/sharkBlock.cpp (SharkBlock::parse): Don't call pop() more than once in an arglist.
author Andrew Haley <aph@redhat.com>
date Tue, 16 Dec 2008 15:57:47 +0000
parents edaae21dab0b
children a30fada94a6c
files ChangeLog ports/hotspot/src/share/vm/shark/sharkBlock.cpp ports/hotspot/src/share/vm/shark/sharkFunction.cpp
diffstat 3 files changed, 24 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Mon Dec 15 12:31:08 2008 -0500
+++ b/ChangeLog	Tue Dec 16 15:57:47 2008 +0000
@@ -1,3 +1,11 @@
+2008-12-16  Andrew Haley  <aph@redhat.com>
+
+	* ports/hotspot/src/share/vm/shark/sharkFunction.cpp
+	(SharkFunction::CreatePopFrame): Remove _LP64 special-case code.
+
+	* ports/hotspot/src/share/vm/shark/sharkBlock.cpp (SharkBlock::parse):
+	Don't call pop() more than once in an arglist.
+
 2008-12-15  Lillian Angel  <langel@redhat.com>
 
 	Fixes #475888
--- a/ports/hotspot/src/share/vm/shark/sharkBlock.cpp	Mon Dec 15 12:31:08 2008 -0500
+++ b/ports/hotspot/src/share/vm/shark/sharkBlock.cpp	Tue Dec 16 15:57:47 2008 +0000
@@ -838,10 +838,12 @@
       do_if(ICmpInst::ICMP_NE, SharkValue::null(), pop());
       break;
     case Bytecodes::_if_acmpeq:
-      do_if(ICmpInst::ICMP_EQ, pop(), pop());
+      b = pop(); a = pop();
+      do_if(ICmpInst::ICMP_EQ, b, a);
       break;
     case Bytecodes::_if_acmpne:
-      do_if(ICmpInst::ICMP_NE, pop(), pop());
+      b = pop(); a = pop();
+      do_if(ICmpInst::ICMP_NE, b, a);
       break;
     case Bytecodes::_ifeq:
       do_if(ICmpInst::ICMP_EQ, SharkValue::jint_constant(0), pop());
@@ -862,22 +864,28 @@
       do_if(ICmpInst::ICMP_SGE, SharkValue::jint_constant(0), pop());
       break;
     case Bytecodes::_if_icmpeq:
-      do_if(ICmpInst::ICMP_EQ, pop(), pop());
+      b = pop(); a = pop();
+      do_if(ICmpInst::ICMP_EQ, b, a);
       break;
     case Bytecodes::_if_icmpne:
-      do_if(ICmpInst::ICMP_NE, pop(), pop());
+      b = pop(); a = pop();
+      do_if(ICmpInst::ICMP_NE, b, a);
       break;
     case Bytecodes::_if_icmplt:
-      do_if(ICmpInst::ICMP_SLT, pop(), pop());
+      b = pop(); a = pop();
+      do_if(ICmpInst::ICMP_SLT, b, a);
       break;
     case Bytecodes::_if_icmple:
-      do_if(ICmpInst::ICMP_SLE, pop(), pop());
+      b = pop(); a = pop();
+      do_if(ICmpInst::ICMP_SLE, b, a);
       break;
     case Bytecodes::_if_icmpgt:
-      do_if(ICmpInst::ICMP_SGT, pop(), pop());
+      b = pop(); a = pop();
+      do_if(ICmpInst::ICMP_SGT, b, a);
       break;
     case Bytecodes::_if_icmpge:
-      do_if(ICmpInst::ICMP_SGE, pop(), pop());
+      b = pop(); a = pop();
+      do_if(ICmpInst::ICMP_SGE, b, a);
       break;
 
     case Bytecodes::_tableswitch:
--- a/ports/hotspot/src/share/vm/shark/sharkFunction.cpp	Mon Dec 15 12:31:08 2008 -0500
+++ b/ports/hotspot/src/share/vm/shark/sharkFunction.cpp	Tue Dec 16 15:57:47 2008 +0000
@@ -190,10 +190,6 @@
       builder()->CreateIntToPtr(
         fp, PointerType::getUnqual(SharkType::intptr_type()))));
 
-#ifdef _LP64
-  if (result_slots == 2)
-    return builder()->CreateAdd(sp, LLVMValue::jint_constant(wordSize));
-#endif // _LP64
   return sp;
 }