comparison src/share/vm/opto/phaseX.hpp @ 17799:752ba2e5f6d0

Merge
author kvn
date Tue, 25 Feb 2014 15:11:18 -0800
parents de95063c0e34
children 4ca6dc0799b6 70649f10b88c
comparison
equal deleted inserted replaced
17798:f040cf9fc9c0 17799:752ba2e5f6d0
90 assert(table_index < _max, "Must be within table"); 90 assert(table_index < _max, "Must be within table");
91 return _table[table_index]; 91 return _table[table_index];
92 } 92 }
93 93
94 void remove_useless_nodes(VectorSet &useful); // replace with sentinel 94 void remove_useless_nodes(VectorSet &useful); // replace with sentinel
95 void replace_with(NodeHash* nh); 95 void replace_with(NodeHash* nh);
96 void check_no_speculative_types(); // Check no speculative part for type nodes in table
96 97
97 Node *sentinel() { return _sentinel; } 98 Node *sentinel() { return _sentinel; }
98 99
99 #ifndef PRODUCT 100 #ifndef PRODUCT
100 Node *find_index(uint idx); // For debugging 101 Node *find_index(uint idx); // For debugging
499 // Create a new if below new_entry for the predicate to be cloned 500 // Create a new if below new_entry for the predicate to be cloned
500 ProjNode* create_new_if_for_predicate(ProjNode* cont_proj, Node* new_entry, 501 ProjNode* create_new_if_for_predicate(ProjNode* cont_proj, Node* new_entry,
501 Deoptimization::DeoptReason reason); 502 Deoptimization::DeoptReason reason);
502 503
503 void remove_speculative_types(); 504 void remove_speculative_types();
505 void check_no_speculative_types() {
506 _table.check_no_speculative_types();
507 }
504 508
505 #ifndef PRODUCT 509 #ifndef PRODUCT
506 protected: 510 protected:
507 // Sub-quadratic implementation of VerifyIterativeGVN. 511 // Sub-quadratic implementation of VerifyIterativeGVN.
508 julong _verify_counter; 512 julong _verify_counter;