1303 static void pd_compiler2_init();
1304
1305 // Static parse-time type checking logic for gen_subtype_check:
1306 enum { SSC_always_false, SSC_always_true, SSC_easy_test, SSC_full_test };
1307 int static_subtype_check(ciKlass* superk, ciKlass* subk);
1308
1309 static Node* conv_I2X_index(PhaseGVN* phase, Node* offset, const TypeInt* sizetype,
1310 // Optional control dependency (for example, on range check)
1311 Node* ctrl = NULL);
1312
1313 // Convert integer value to a narrowed long type dependent on ctrl (for example, a range check)
1314 static Node* constrained_convI2L(PhaseGVN* phase, Node* value, const TypeInt* itype, Node* ctrl);
1315
1316 // Auxiliary method for randomized fuzzing/stressing
1317 static bool randomized_select(int count);
1318
1319 // supporting clone_map
1320 CloneMap& clone_map();
1321 void set_clone_map(Dict* d);
1322
1323 };
1324
1325 #endif // SHARE_VM_OPTO_COMPILE_HPP
|
1303 static void pd_compiler2_init();
1304
1305 // Static parse-time type checking logic for gen_subtype_check:
1306 enum { SSC_always_false, SSC_always_true, SSC_easy_test, SSC_full_test };
1307 int static_subtype_check(ciKlass* superk, ciKlass* subk);
1308
1309 static Node* conv_I2X_index(PhaseGVN* phase, Node* offset, const TypeInt* sizetype,
1310 // Optional control dependency (for example, on range check)
1311 Node* ctrl = NULL);
1312
1313 // Convert integer value to a narrowed long type dependent on ctrl (for example, a range check)
1314 static Node* constrained_convI2L(PhaseGVN* phase, Node* value, const TypeInt* itype, Node* ctrl);
1315
1316 // Auxiliary method for randomized fuzzing/stressing
1317 static bool randomized_select(int count);
1318
1319 // supporting clone_map
1320 CloneMap& clone_map();
1321 void set_clone_map(Dict* d);
1322
1323
1324 Node* create_vt_node(Node* n, ciValueKlass* vk, ciValueKlass* base_vk, int base_offset, int base_input);
1325 };
1326
1327 #endif // SHARE_VM_OPTO_COMPILE_HPP
|