Mercurial > hg > graal-jvmci-8
comparison src/share/vm/utilities/constantTag.hpp @ 1660:083fde3b838e
6964498: JSR 292 invokedynamic sites need local bootstrap methods
Summary: Add JVM_CONSTANT_InvokeDynamic records to constant pool to determine per-instruction BSMs.
Reviewed-by: twisti
author | jrose |
---|---|
date | Thu, 15 Jul 2010 18:40:45 -0700 |
parents | 136b78722a08 |
children | 3b2dea75431e |
comparison
equal
deleted
inserted
replaced
1649:a528509c992b | 1660:083fde3b838e |
---|---|
78 bool is_field_or_method() const { return is_field() || is_method() || is_interface_method(); } | 78 bool is_field_or_method() const { return is_field() || is_method() || is_interface_method(); } |
79 bool is_symbol() const { return is_utf8(); } | 79 bool is_symbol() const { return is_utf8(); } |
80 | 80 |
81 bool is_method_type() const { return _tag == JVM_CONSTANT_MethodType; } | 81 bool is_method_type() const { return _tag == JVM_CONSTANT_MethodType; } |
82 bool is_method_handle() const { return _tag == JVM_CONSTANT_MethodHandle; } | 82 bool is_method_handle() const { return _tag == JVM_CONSTANT_MethodHandle; } |
83 bool is_invoke_dynamic() const { return _tag == JVM_CONSTANT_InvokeDynamic; } | |
83 | 84 |
84 constantTag() { | 85 constantTag() { |
85 _tag = JVM_CONSTANT_Invalid; | 86 _tag = JVM_CONSTANT_Invalid; |
86 } | 87 } |
87 constantTag(jbyte tag) { | 88 constantTag(jbyte tag) { |
88 assert((tag >= 0 && tag <= JVM_CONSTANT_NameAndType) || | 89 assert((tag >= 0 && tag <= JVM_CONSTANT_NameAndType) || |
89 (tag >= JVM_CONSTANT_MethodHandle && tag <= JVM_CONSTANT_MethodType) || | 90 (tag >= JVM_CONSTANT_MethodHandle && tag <= JVM_CONSTANT_InvokeDynamic) || |
90 (tag >= JVM_CONSTANT_InternalMin && tag <= JVM_CONSTANT_InternalMax), "Invalid constant tag"); | 91 (tag >= JVM_CONSTANT_InternalMin && tag <= JVM_CONSTANT_InternalMax), "Invalid constant tag"); |
91 _tag = tag; | 92 _tag = tag; |
92 } | 93 } |
93 | 94 |
94 jbyte value() { return _tag; } | 95 jbyte value() { return _tag; } |