mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-23 12:34:32 +02:00
6695810: null oop passed to encode_heap_oop_not_null
Fix several problems in C2 related to Escape Analysis and Compressed Oops. Reviewed-by: never, jrose
This commit is contained in:
parent
dbf60cec88
commit
757229db71
19 changed files with 1085 additions and 248 deletions
|
@ -72,7 +72,8 @@ public:
|
|||
// This one should probably be a phase-specific function:
|
||||
static bool all_controls_dominate(Node* dom, Node* sub);
|
||||
|
||||
// Is this Node a MemNode or some descendent? Default is YES.
|
||||
// Find any cast-away of null-ness and keep its control.
|
||||
static Node *Ideal_common_DU_postCCP( PhaseCCP *ccp, Node* n, Node* adr );
|
||||
virtual Node *Ideal_DU_postCCP( PhaseCCP *ccp );
|
||||
|
||||
virtual const class TypePtr *adr_type() const; // returns bottom_type of address
|
||||
|
@ -150,6 +151,9 @@ public:
|
|||
// zero out the control input.
|
||||
virtual Node *Ideal(PhaseGVN *phase, bool can_reshape);
|
||||
|
||||
// Split instance field load through Phi.
|
||||
Node* split_through_phi(PhaseGVN *phase);
|
||||
|
||||
// Recover original value from boxed values
|
||||
Node *eliminate_autobox(PhaseGVN *phase);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue