comparison src/share/vm/opto/phaseX.hpp @ 18041:52b4284cb496

Merge with jdk8u20-b26
author Gilles Duboscq <duboscq@ssw.jku.at>
date Wed, 15 Oct 2014 16:02:50 +0200
parents 89152779163c
children
comparison
equal deleted inserted replaced
17606:45d7b2c7029d 18041:52b4284cb496
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;