< prev index next >

src/share/vm/opto/loopnode.cpp

Print this page

        

*** 895,905 **** return stride()->bottom_type()->is_int()->get_con(); } //============================================================================= //------------------------------Value----------------------------------------- ! const Type *LoopLimitNode::Value( PhaseTransform *phase ) const { const Type* init_t = phase->type(in(Init)); const Type* limit_t = phase->type(in(Limit)); const Type* stride_t = phase->type(in(Stride)); // Either input is TOP ==> the result is TOP if (init_t == Type::TOP) return Type::TOP; --- 895,905 ---- return stride()->bottom_type()->is_int()->get_con(); } //============================================================================= //------------------------------Value----------------------------------------- ! const Type* LoopLimitNode::Value(PhaseGVN* phase) const { const Type* init_t = phase->type(in(Init)); const Type* limit_t = phase->type(in(Limit)); const Type* stride_t = phase->type(in(Stride)); // Either input is TOP ==> the result is TOP if (init_t == Type::TOP) return Type::TOP;
*** 1009,1019 **** return NULL; // No progress } //------------------------------Identity--------------------------------------- // If stride == 1 return limit node. ! Node *LoopLimitNode::Identity( PhaseTransform *phase ) { int stride_con = phase->type(in(Stride))->is_int()->get_con(); if (stride_con == 1 || stride_con == -1) return in(Limit); return this; } --- 1009,1019 ---- return NULL; // No progress } //------------------------------Identity--------------------------------------- // If stride == 1 return limit node. ! Node* LoopLimitNode::Identity(PhaseGVN* phase) { int stride_con = phase->type(in(Stride))->is_int()->get_con(); if (stride_con == 1 || stride_con == -1) return in(Limit); return this; }
< prev index next >