< prev index next >

src/share/vm/oops/generateOopMap.cpp

Print this page
rev 11179 : 8140594: Various minor code improvements (compiler)
Reviewed-by: thartmann

@@ -1676,12 +1676,18 @@
 
 void GenerateOopMap::ppdupswap(int poplen, const char *out) {
   CellTypeState actual[5];
   assert(poplen < 5, "this must be less than length of actual vector");
 
-  // pop all arguments
-  for(int i = 0; i < poplen; i++) actual[i] = pop();
+  // Pop all arguments.
+  for (int i = 0; i < poplen; i++) {
+    actual[i] = pop();
+  }
+  // Field _state is uninitialized when calling push.
+  for (int i = poplen; i < 5; i++) {
+    actual[i] = CellTypeState::uninit;
+  }
 
   // put them back
   char push_ch = *out++;
   while (push_ch != '\0') {
     int idx = push_ch - '1';
< prev index next >