comparison src/share/vm/opto/loopTransform.cpp @ 14422:2b8e28fdf503

Merge
author kvn
date Tue, 05 Nov 2013 17:38:04 -0800
parents cfd05ec74089 60a32bb8ff99
children da862781b584
comparison
equal deleted inserted replaced
14421:3068270ba476 14422:2b8e28fdf503
711 switch (n->Opcode()) { 711 switch (n->Opcode()) {
712 case Op_XorI: xors_in_loop++; break; // CRC32 java code 712 case Op_XorI: xors_in_loop++; break; // CRC32 java code
713 case Op_ModL: body_size += 30; break; 713 case Op_ModL: body_size += 30; break;
714 case Op_DivL: body_size += 30; break; 714 case Op_DivL: body_size += 30; break;
715 case Op_MulL: body_size += 10; break; 715 case Op_MulL: body_size += 10; break;
716 case Op_FlagsProj:
717 // Can't handle unrolling of loops containing
718 // nodes that generate a FlagsProj at the moment
719 return false;
716 case Op_StrComp: 720 case Op_StrComp:
717 case Op_StrEquals: 721 case Op_StrEquals:
718 case Op_StrIndexOf: 722 case Op_StrIndexOf:
719 case Op_EncodeISOArray: 723 case Op_EncodeISOArray:
720 case Op_AryEq: { 724 case Op_AryEq: {
774 } 778 }
775 if (bol->as_Bool()->_test._test == BoolTest::ne) 779 if (bol->as_Bool()->_test._test == BoolTest::ne)
776 continue; // not RC 780 continue; // not RC
777 781
778 Node *cmp = bol->in(1); 782 Node *cmp = bol->in(1);
783 if (cmp->is_FlagsProj()) {
784 continue;
785 }
779 786
780 Node *rc_exp = cmp->in(1); 787 Node *rc_exp = cmp->in(1);
781 Node *limit = cmp->in(2); 788 Node *limit = cmp->in(2);
782 789
783 Node *limit_c = phase->get_ctrl(limit); 790 Node *limit_c = phase->get_ctrl(limit);