< prev index next >
src/hotspot/share/c1/c1_LIRGenerator.hpp
Print this page
@@ -268,10 +268,11 @@
Value flattenable_load_field_prolog(LoadField* x, CodeEmitInfo* info);
void access_flattened_array(bool is_load, LIRItem& array, LIRItem& index, LIRItem& obj_item);
bool needs_flattened_array_store_check(StoreIndexed* x);
void check_flattened_array(LIRItem& array, CodeStub* slow_path);
+ void substituability_check(IfOp* x, LIRItem& left, LIRItem& right, LIRItem& t_val, LIRItem& f_val);
public:
LIR_Opr call_runtime(BasicTypeArray* signature, LIRItemList* args, address entry, ValueType* result_type, CodeEmitInfo* info);
LIR_Opr call_runtime(BasicTypeArray* signature, LIR_OprList* args, address entry, ValueType* result_type, CodeEmitInfo* info);
@@ -325,11 +326,11 @@
ciObject* get_jobject_constant(Value value);
LIRItemList* invoke_visit_arguments(Invoke* x);
void invoke_load_arguments(Invoke* x, LIRItemList* args, const LIR_OprList* arg_list);
-
+ void invoke_load_one_argument(LIRItem* param, LIR_Opr loc);
void trace_block_entry(BlockBegin* block);
// volatile field operations are never patchable because a klass
// must be loaded to know it's volatile which means that the offset
// it always known as well.
< prev index next >