< prev index next > src/hotspot/share/ci/ciMethod.hpp
Print this page
bool caller_sensitive() const { return get_Method()->caller_sensitive(); }
bool force_inline() const { return get_Method()->force_inline(); }
bool dont_inline() const { return get_Method()->dont_inline(); }
bool intrinsic_candidate() const { return get_Method()->intrinsic_candidate(); }
- bool is_static_initializer() const { return get_Method()->is_static_initializer(); }
+ bool is_class_initializer() const { return get_Method()->is_class_initializer(); }
int comp_level();
int highest_osr_comp_level();
Bytecodes::Code java_code_at_bci(int bci) {
// Does type profiling provide any useful information at this point?
bool argument_profiled_type(int bci, int i, ciKlass*& type, ProfilePtrKind& ptr_kind);
bool parameter_profiled_type(int i, ciKlass*& type, ProfilePtrKind& ptr_kind);
bool return_profiled_type(int bci, ciKlass*& type, ProfilePtrKind& ptr_kind);
+ bool array_access_profiled_type(int bci, ciKlass*& array_type, ciKlass*& element_type, ProfilePtrKind& element_ptr, bool &flat_array, bool &null_free);
ciField* get_field_at_bci( int bci, bool &will_link);
ciMethod* get_method_at_bci(int bci, bool &will_link, ciSignature* *declared_signature);
ciMethod* get_method_at_bci(int bci) {
bool ignored_will_link;
bool is_synchronized() const { return flags().is_synchronized(); }
bool is_native () const { return flags().is_native(); }
bool is_interface () const { return flags().is_interface(); }
bool is_abstract () const { return flags().is_abstract(); }
bool is_strict () const { return flags().is_strict(); }
+ bool has_vararg () const { return flags().has_vararg(); }
// Other flags
bool is_empty_method() const;
bool is_vanilla_constructor() const;
bool is_final_method() const { return is_final() || holder()->is_final(); }
bool has_loops () const;
bool has_jsrs () const;
bool is_getter () const;
bool is_setter () const;
bool is_accessor () const;
- bool is_initializer () const;
bool can_be_statically_bound() const { return _can_be_statically_bound; }
bool has_reserved_stack_access() const { return _has_reserved_stack_access; }
bool is_boxing_method() const;
bool is_unboxing_method() const;
- bool is_object_initializer() const;
+ bool is_object_constructor() const;
+ bool is_static_init_factory() const;
+ bool is_object_constructor_or_class_initializer() const;
bool can_be_statically_bound(ciInstanceKlass* context) const;
// Replay data methods
void dump_name_as_ascii(outputStream* st);
// Print the name of this method in various incarnations.
void print_name(outputStream* st = tty);
void print_short_name(outputStream* st = tty);
static bool is_consistent_info(ciMethod* declared_method, ciMethod* resolved_method);
+
+ // Support for the inline type calling convention
+ bool has_scalarized_args() const;
+ const GrowableArray<SigEntry>* get_sig_cc();
};
#endif // SHARE_CI_CIMETHOD_HPP
< prev index next >