change else{if} to else if in AndNot
This commit is contained in:
@@ -1872,18 +1872,16 @@ Value* HIRBuilder::AndNot(Value* value1, Value* value2) {
|
|||||||
ASSERT_NON_FLOAT_TYPE(value1);
|
ASSERT_NON_FLOAT_TYPE(value1);
|
||||||
ASSERT_NON_FLOAT_TYPE(value2);
|
ASSERT_NON_FLOAT_TYPE(value2);
|
||||||
ASSERT_TYPES_EQUAL(value1, value2);
|
ASSERT_TYPES_EQUAL(value1, value2);
|
||||||
//only other type it can be used with is INT64_TYPE (andc)
|
// only other type it can be used with is INT64_TYPE (andc)
|
||||||
if (value1->type != VEC128_TYPE) {
|
if (value1->type != VEC128_TYPE) {
|
||||||
return this->And(this->Not(value2), value1);
|
return this->And(this->Not(value2), value1);
|
||||||
|
} else if (value1 == value2) {
|
||||||
|
return LoadZero(value1->type);
|
||||||
|
} else if (value1->IsConstantZero()) {
|
||||||
|
return value1;
|
||||||
|
} else if (value2->IsConstantZero()) {
|
||||||
|
return value1;
|
||||||
} else {
|
} else {
|
||||||
if (value1 == value2) {
|
|
||||||
return LoadZero(value1->type);
|
|
||||||
} else if (value1->IsConstantZero()) {
|
|
||||||
return value1;
|
|
||||||
} else if (value2->IsConstantZero()) {
|
|
||||||
return value1;
|
|
||||||
}
|
|
||||||
|
|
||||||
Instr* i = AppendInstr(OPCODE_AND_NOT_info, 0, AllocValue(value1->type));
|
Instr* i = AppendInstr(OPCODE_AND_NOT_info, 0, AllocValue(value1->type));
|
||||||
i->set_src1(value1);
|
i->set_src1(value1);
|
||||||
i->set_src2(value2);
|
i->set_src2(value2);
|
||||||
|
|||||||
Reference in New Issue
Block a user