comparison src/share/vm/opto/memnode.hpp @ 85:f3b3fe64f59f

6692301: Side effect in NumberFormat tests with -server -Xcomp Summary: Optimization in CmpPNode::sub() removed the valid compare instruction because of false positive answer from detect_dominating_control(). Reviewed-by: jrose, sgoldman
author kvn
date Tue, 15 Apr 2008 10:49:32 -0700
parents 2a9af0b9cb1c
children ec73d88d5b43
comparison
equal deleted inserted replaced
84:6e085831cad7 85:f3b3fe64f59f
68 static bool adr_phi_is_loop_invariant(Node* adr_phi, Node* cast); 68 static bool adr_phi_is_loop_invariant(Node* adr_phi, Node* cast);
69 69
70 static Node *optimize_simple_memory_chain(Node *mchain, const TypePtr *t_adr, PhaseGVN *phase); 70 static Node *optimize_simple_memory_chain(Node *mchain, const TypePtr *t_adr, PhaseGVN *phase);
71 static Node *optimize_memory_chain(Node *mchain, const TypePtr *t_adr, PhaseGVN *phase); 71 static Node *optimize_memory_chain(Node *mchain, const TypePtr *t_adr, PhaseGVN *phase);
72 // This one should probably be a phase-specific function: 72 // This one should probably be a phase-specific function:
73 static bool detect_dominating_control(Node* dom, Node* sub); 73 static bool all_controls_dominate(Node* dom, Node* sub);
74 74
75 // Is this Node a MemNode or some descendent? Default is YES. 75 // Is this Node a MemNode or some descendent? Default is YES.
76 virtual Node *Ideal_DU_postCCP( PhaseCCP *ccp ); 76 virtual Node *Ideal_DU_postCCP( PhaseCCP *ccp );
77 77
78 virtual const class TypePtr *adr_type() const; // returns bottom_type of address 78 virtual const class TypePtr *adr_type() const; // returns bottom_type of address