src/share/vm/opto/graphKit.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/share/vm/opto/graphKit.hpp	Sat Aug  2 06:38:27 2014
--- new/src/share/vm/opto/graphKit.hpp	Sat Aug  2 06:38:26 2014

*** 827,847 **** --- 827,843 ---- // Generate a check-cast idiom. Used by both the check-cast bytecode // and the array-store bytecode Node* gen_checkcast( Node *subobj, Node* superkls, Node* *failure_control = NULL ); // Generate a subtyping check. Takes as input the subtype and supertype. // Returns 2 values: sets the default control() to the true path and // returns the false path. Only reads from constant memory taken from the // default memory; does not write anything. It also doesn't take in an // Object; if you wish to check an Object you need to load the Object's // class prior to coming here. Node* gen_subtype_check(Node* subklass, Node* superklass); // Static parse-time type checking logic for gen_subtype_check: enum { SSC_always_false, SSC_always_true, SSC_easy_test, SSC_full_test }; int static_subtype_check(ciKlass* superk, ciKlass* subk); + Node* gen_subtype_check(Node* subklass, Node* superklass) { + MergeMemNode* mem = merged_memory(); + Node* ctrl = control(); + Node* n = Phase::gen_subtype_check(subklass, superklass, &ctrl, mem, &_gvn); + set_control(ctrl); + return n; + } // Exact type check used for predicted calls and casts. // Rewrites (*casted_receiver) to be casted to the stronger type. // (Caller is responsible for doing replace_in_map.) Node* type_check_receiver(Node* receiver, ciKlass* klass, float prob,

src/share/vm/opto/graphKit.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File