< prev index next >

src/hotspot/share/ci/ciMethod.cpp

Print this page

        

@@ -45,10 +45,11 @@
 #include "oops/method.inline.hpp"
 #include "oops/oop.inline.hpp"
 #include "prims/nativeLookup.hpp"
 #include "runtime/deoptimization.hpp"
 #include "runtime/handles.inline.hpp"
+#include "runtime/sharedRuntime.hpp"
 #include "utilities/bitMap.inline.hpp"
 #include "utilities/xmlstream.hpp"
 #ifdef COMPILER2
 #include "ci/bcEscapeAnalyzer.hpp"
 #include "ci/ciTypeFlow.hpp"

@@ -1418,10 +1419,11 @@
 // ------------------------------------------------------------------
 
 static BasicType erase_to_word_type(BasicType bt) {
   if (is_subword_type(bt)) return T_INT;
   if (bt == T_ARRAY)       return T_OBJECT;
+  if (bt == T_VALUETYPE)   return T_OBJECT;
   return bt;
 }
 
 static bool basic_types_match(ciType* t1, ciType* t2) {
   if (t1 == t2)  return true;

@@ -1505,5 +1507,18 @@
   }
   return true; // no mismatch found
 }
 
 // ------------------------------------------------------------------
+
+bool ciMethod::has_scalarized_args() const {
+  VM_ENTRY_MARK;
+  return get_Method()->has_scalarized_args();
+}
+
+const GrowableArray<SigEntry>* ciMethod::get_sig_cc() {
+  VM_ENTRY_MARK;
+  if (get_Method()->adapter() == NULL) {
+    return NULL;
+  }
+  return get_Method()->adapter()->get_sig_cc();
+}
< prev index next >