src/share/vm/utilities/constantTag.hpp

changeset 4037
da91efe96a93
parent 2742
ed69575596ac
child 4643
f16e75e0cf11
     1.1 --- a/src/share/vm/utilities/constantTag.hpp	Fri Aug 31 16:39:35 2012 -0700
     1.2 +++ b/src/share/vm/utilities/constantTag.hpp	Sat Sep 01 13:25:18 2012 -0400
     1.3 @@ -1,5 +1,5 @@
     1.4  /*
     1.5 - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
     1.6 + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
     1.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     1.8   *
     1.9   * This code is free software; you can redistribute it and/or modify it
    1.10 @@ -39,11 +39,12 @@
    1.11    JVM_CONSTANT_InternalMin              = 100,  // First implementation tag (aside from bad value of course)
    1.12    JVM_CONSTANT_UnresolvedClass          = 100,  // Temporary tag until actual use
    1.13    JVM_CONSTANT_ClassIndex               = 101,  // Temporary tag while constructing constant pool
    1.14 -  JVM_CONSTANT_UnresolvedString         = 102,  // Temporary tag until actual use
    1.15 -  JVM_CONSTANT_StringIndex              = 103,  // Temporary tag while constructing constant pool
    1.16 -  JVM_CONSTANT_UnresolvedClassInError   = 104,  // Error tag due to resolution error
    1.17 -  JVM_CONSTANT_Object                   = 105,  // Required for BoundMethodHandle arguments.
    1.18 -  JVM_CONSTANT_InternalMax              = 105   // Last implementation tag
    1.19 +  JVM_CONSTANT_StringIndex              = 102,  // Temporary tag while constructing constant pool
    1.20 +  JVM_CONSTANT_UnresolvedClassInError   = 103,  // Error tag due to resolution error
    1.21 +  JVM_CONSTANT_MethodHandleInError      = 104,  // Error tag due to resolution error
    1.22 +  JVM_CONSTANT_MethodTypeInError        = 105,  // Error tag due to resolution error
    1.23 +  JVM_CONSTANT_Object                   = 106,  // Required for BoundMethodHandle arguments.
    1.24 +  JVM_CONSTANT_InternalMax              = 106   // Last implementation tag
    1.25  };
    1.26  
    1.27  
    1.28 @@ -73,8 +74,14 @@
    1.29      return _tag == JVM_CONSTANT_UnresolvedClassInError;
    1.30    }
    1.31  
    1.32 +  bool is_method_handle_in_error() const {
    1.33 +    return _tag == JVM_CONSTANT_MethodHandleInError;
    1.34 +  }
    1.35 +  bool is_method_type_in_error() const {
    1.36 +    return _tag == JVM_CONSTANT_MethodTypeInError;
    1.37 +  }
    1.38 +
    1.39    bool is_klass_index() const       { return _tag == JVM_CONSTANT_ClassIndex; }
    1.40 -  bool is_unresolved_string() const { return _tag == JVM_CONSTANT_UnresolvedString; }
    1.41    bool is_string_index() const      { return _tag == JVM_CONSTANT_StringIndex; }
    1.42  
    1.43    bool is_object() const            { return _tag == JVM_CONSTANT_Object; }
    1.44 @@ -91,8 +98,7 @@
    1.45    bool is_loadable_constant() const {
    1.46      return ((_tag >= JVM_CONSTANT_Integer && _tag <= JVM_CONSTANT_String) ||
    1.47              is_method_type() || is_method_handle() ||
    1.48 -            is_unresolved_klass() || is_unresolved_string() ||
    1.49 -            is_object());
    1.50 +            is_unresolved_klass() || is_object());
    1.51    }
    1.52  
    1.53    constantTag() {

mercurial