Mercurial > hg > truffle
comparison src/share/vm/opto/graphKit.hpp @ 1746:4b29a725c43c
6912064: type profiles need to be exploited more for dynamic language support
Reviewed-by: kvn
author | jrose |
---|---|
date | Fri, 20 Aug 2010 23:40:30 -0700 |
parents | c18cbe5936b8 |
children | f95d63e2154a |
comparison
equal
deleted
inserted
replaced
1730:f55c4f82ab9d | 1746:4b29a725c43c |
---|---|
339 // If never_see_null, use an uncommon trap (*null_control sees a top). | 339 // If never_see_null, use an uncommon trap (*null_control sees a top). |
340 // The cast is not valid along the null path; keep a copy of the original. | 340 // The cast is not valid along the null path; keep a copy of the original. |
341 Node* null_check_oop(Node* value, Node* *null_control, | 341 Node* null_check_oop(Node* value, Node* *null_control, |
342 bool never_see_null = false); | 342 bool never_see_null = false); |
343 | 343 |
344 // Check the null_seen bit. | |
345 bool seems_never_null(Node* obj, ciProfileData* data); | |
346 | |
347 // Use the type profile to narrow an object type. | |
348 Node* maybe_cast_profiled_receiver(Node* not_null_obj, | |
349 ciProfileData* data, | |
350 ciKlass* require_klass); | |
351 | |
344 // Cast obj to not-null on this path | 352 // Cast obj to not-null on this path |
345 Node* cast_not_null(Node* obj, bool do_replace_in_map = true); | 353 Node* cast_not_null(Node* obj, bool do_replace_in_map = true); |
346 // Replace all occurrences of one node by another. | 354 // Replace all occurrences of one node by another. |
347 void replace_in_map(Node* old, Node* neww); | 355 void replace_in_map(Node* old, Node* neww); |
348 | 356 |