Mercurial > hg > graal-jvmci-8
comparison src/share/vm/oops/method.hpp @ 14704:b51e29501f30
Merged with jdk9/dev/hotspot changeset 9486a41de3b7
author | twisti |
---|---|
date | Tue, 18 Mar 2014 20:19:10 -0700 |
parents | d8041d695d19 8504393de66b |
children | 92aa6797d639 |
comparison
equal
deleted
inserted
replaced
14647:8f483e200405 | 14704:b51e29501f30 |
---|---|
106 #ifdef CC_INTERP | 106 #ifdef CC_INTERP |
107 int _result_index; // C++ interpreter needs for converting results to/from stack | 107 int _result_index; // C++ interpreter needs for converting results to/from stack |
108 #endif | 108 #endif |
109 u2 _method_size; // size of this object | 109 u2 _method_size; // size of this object |
110 u1 _intrinsic_id; // vmSymbols::intrinsic_id (0 == _none) | 110 u1 _intrinsic_id; // vmSymbols::intrinsic_id (0 == _none) |
111 u1 _jfr_towrite : 1, // Flags | 111 |
112 _caller_sensitive : 1, | 112 // Flags |
113 _force_inline : 1, | 113 enum Flags { |
114 _hidden : 1, | 114 _jfr_towrite = 1 << 0, |
115 _dont_inline : 1, | 115 _caller_sensitive = 1 << 1, |
116 : 3; | 116 _force_inline = 1 << 2, |
117 _dont_inline = 1 << 3, | |
118 _hidden = 1 << 4 | |
119 }; | |
120 u1 _flags; | |
117 | 121 |
118 #ifndef PRODUCT | 122 #ifndef PRODUCT |
119 int _compiled_invocation_count; // Number of nmethod invocations so far (for perf. debugging) | 123 int _compiled_invocation_count; // Number of nmethod invocations so far (for perf. debugging) |
120 #endif | 124 #endif |
121 // Entry point for calling both from and to the interpreter. | 125 // Entry point for calling both from and to the interpreter. |
757 | 761 |
758 // Helper routines for intrinsic_id() and vmIntrinsics::method(). | 762 // Helper routines for intrinsic_id() and vmIntrinsics::method(). |
759 void init_intrinsic_id(); // updates from _none if a match | 763 void init_intrinsic_id(); // updates from _none if a match |
760 static vmSymbols::SID klass_id_for_intrinsics(Klass* holder); | 764 static vmSymbols::SID klass_id_for_intrinsics(Klass* holder); |
761 | 765 |
762 bool jfr_towrite() { return _jfr_towrite; } | 766 bool jfr_towrite() { |
763 void set_jfr_towrite(bool x) { _jfr_towrite = x; } | 767 return (_flags & _jfr_towrite) != 0; |
764 bool caller_sensitive() { return _caller_sensitive; } | 768 } |
765 void set_caller_sensitive(bool x) { _caller_sensitive = x; } | 769 void set_jfr_towrite(bool x) { |
766 bool force_inline() { return _force_inline; } | 770 _flags = x ? (_flags | _jfr_towrite) : (_flags & ~_jfr_towrite); |
767 void set_force_inline(bool x) { _force_inline = x; } | 771 } |
768 bool dont_inline() { return _dont_inline; } | 772 |
769 void set_dont_inline(bool x) { _dont_inline = x; } | 773 bool caller_sensitive() { |
770 bool is_hidden() { return _hidden; } | 774 return (_flags & _caller_sensitive) != 0; |
771 void set_hidden(bool x) { _hidden = x; } | 775 } |
776 void set_caller_sensitive(bool x) { | |
777 _flags = x ? (_flags | _caller_sensitive) : (_flags & ~_caller_sensitive); | |
778 } | |
779 | |
780 bool force_inline() { | |
781 return (_flags & _force_inline) != 0; | |
782 } | |
783 void set_force_inline(bool x) { | |
784 _flags = x ? (_flags | _force_inline) : (_flags & ~_force_inline); | |
785 } | |
786 | |
787 bool dont_inline() { | |
788 return (_flags & _dont_inline) != 0; | |
789 } | |
790 void set_dont_inline(bool x) { | |
791 _flags = x ? (_flags | _dont_inline) : (_flags & ~_dont_inline); | |
792 } | |
793 | |
794 bool is_hidden() { | |
795 return (_flags & _hidden) != 0; | |
796 } | |
797 void set_hidden(bool x) { | |
798 _flags = x ? (_flags | _hidden) : (_flags & ~_hidden); | |
799 } | |
800 | |
772 ConstMethod::MethodType method_type() const { | 801 ConstMethod::MethodType method_type() const { |
773 return _constMethod->method_type(); | 802 return _constMethod->method_type(); |
774 } | 803 } |
775 bool is_overpass() const { return method_type() == ConstMethod::OVERPASS; } | 804 bool is_overpass() const { return method_type() == ConstMethod::OVERPASS; } |
776 | 805 |