File tree Expand file tree Collapse file tree 1 file changed +3
-3
lines changed Expand file tree Collapse file tree 1 file changed +3
-3
lines changed Original file line number Diff line number Diff line change @@ -1490,13 +1490,13 @@ const Type* RotateLeftNode::Value(PhaseGVN* phase) const {
1490
1490
}
1491
1491
1492
1492
Node* RotateLeftNode::Ideal (PhaseGVN *phase, bool can_reshape) {
1493
- const Type * t1 = phase->type (in (1 ));
1494
- const Type * t2 = phase->type (in (2 ));
1493
+ const Type* t1 = phase->type (in (1 ));
1494
+ const Type* t2 = phase->type (in (2 ));
1495
1495
if (t2->isa_int () && t2->is_int ()->is_con ()) {
1496
1496
if (t1->isa_int ()) {
1497
1497
int lshift = t2->is_int ()->get_con () & 31 ;
1498
1498
return new RotateRightNode (in (1 ), phase->intcon (32 - (lshift & 31 )), TypeInt::INT);
1499
- } else {
1499
+ } else if (t1 != Type::TOP) {
1500
1500
assert (t1->isa_long (), " Type must be a long" );
1501
1501
int lshift = t2->is_int ()->get_con () & 63 ;
1502
1502
return new RotateRightNode (in (1 ), phase->intcon (64 - (lshift & 63 )), TypeLong::LONG);
You can’t perform that action at this time.
0 commit comments