comparison src/share/vm/opto/memnode.cpp @ 7957:0d26ce8e9251

Merge
author acorn
date Mon, 28 Jan 2013 10:34:07 -0500
parents b30b3c2a0cf2
children 6931f425c517
comparison
equal deleted inserted replaced
7956:16fb9f942703 7957:0d26ce8e9251
2795 if (in(0) && phase->type(in(0)) == Type::TOP) return Type::TOP; 2795 if (in(0) && phase->type(in(0)) == Type::TOP) return Type::TOP;
2796 return bottom_type(); 2796 return bottom_type();
2797 } 2797 }
2798 2798
2799 //============================================================================= 2799 //=============================================================================
2800 //------------------------------match_edge-------------------------------------
2801 // Do not match memory edge
2802 uint EncodeISOArrayNode::match_edge(uint idx) const {
2803 return idx == 2 || idx == 3; // EncodeISOArray src (Binary dst len)
2804 }
2805
2806 //------------------------------Ideal------------------------------------------
2807 // Return a node which is more "ideal" than the current node. Strip out
2808 // control copies
2809 Node *EncodeISOArrayNode::Ideal(PhaseGVN *phase, bool can_reshape) {
2810 return remove_dead_region(phase, can_reshape) ? this : NULL;
2811 }
2812
2813 //------------------------------Value------------------------------------------
2814 const Type *EncodeISOArrayNode::Value(PhaseTransform *phase) const {
2815 if (in(0) && phase->type(in(0)) == Type::TOP) return Type::TOP;
2816 return bottom_type();
2817 }
2818
2819 //=============================================================================
2800 MemBarNode::MemBarNode(Compile* C, int alias_idx, Node* precedent) 2820 MemBarNode::MemBarNode(Compile* C, int alias_idx, Node* precedent)
2801 : MultiNode(TypeFunc::Parms + (precedent == NULL? 0: 1)), 2821 : MultiNode(TypeFunc::Parms + (precedent == NULL? 0: 1)),
2802 _adr_type(C->get_adr_type(alias_idx)) 2822 _adr_type(C->get_adr_type(alias_idx))
2803 { 2823 {
2804 init_class_id(Class_MemBar); 2824 init_class_id(Class_MemBar);