< prev index next >

src/hotspot/share/classfile/stackMapFrame.cpp

Print this page

        

@@ -1,7 +1,7 @@
 /*
- * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
  * under the terms of the GNU General Public License version 2 only, as
  * published by the Free Software Foundation.

@@ -99,18 +99,22 @@
   _locals_size = init_local_num;
 
   switch (ss.type()) {
     case T_OBJECT:
     case T_ARRAY:
+    case T_VALUETYPE:
     {
       Symbol* sig = ss.as_symbol(CHECK_(VerificationType::bogus_type()));
       // Create another symbol to save as signature stream unreferences
       // this symbol.
       Symbol* sig_copy =
         verifier()->create_temporary_symbol(sig, 0, sig->utf8_length(),
                                  CHECK_(VerificationType::bogus_type()));
       assert(sig_copy == sig, "symbols don't match");
+      if (ss.type() == T_VALUETYPE) {
+        return VerificationType::valuetype_type(sig_copy);
+      }
       return VerificationType::reference_type(sig_copy);
     }
     case T_INT:     return VerificationType::integer_type();
     case T_BYTE:    return VerificationType::byte_type();
     case T_CHAR:    return VerificationType::char_type();
< prev index next >