[JIT] Fix incorrect definition for constant VectorConvertX2X

This commit is contained in:
DrChat 2018-03-02 19:03:48 -06:00
parent 3a8f8f2ecb
commit 894bbf9e26
3 changed files with 4 additions and 5 deletions

View File

@ -702,8 +702,7 @@ bool ConstantPropagationPass::Run(HIRBuilder* builder) {
if (i->src1.value->IsConstant()) {
v->set_zero(VEC128_TYPE);
v->VectorConvertF2I(i->src1.value,
!!(i->flags & ARITHMETIC_UNSIGNED),
!!(i->flags & ARITHMETIC_SATURATE));
!!(i->flags & ARITHMETIC_UNSIGNED));
i->Remove();
}
break;
@ -711,7 +710,7 @@ bool ConstantPropagationPass::Run(HIRBuilder* builder) {
if (i->src1.value->IsConstant()) {
v->set_zero(VEC128_TYPE);
v->VectorConvertI2F(i->src1.value,
!!(i->flags & ARITHMETIC_SATURATE));
!!(i->flags & ARITHMETIC_UNSIGNED));
i->Remove();
}
break;

View File

@ -1090,7 +1090,7 @@ void Value::VectorConvertI2F(Value* other, bool is_unsigned) {
}
}
void Value::VectorConvertF2I(Value* other, bool is_unsigned, bool saturate) {
void Value::VectorConvertF2I(Value* other, bool is_unsigned) {
assert_true(type == VEC128_TYPE);
// FIXME(DrChat): This does not saturate!

View File

@ -527,7 +527,7 @@ class Value {
void VectorCompareUGT(Value* other, TypeName type);
void VectorCompareUGE(Value* other, TypeName type);
void VectorConvertI2F(Value* other, bool is_unsigned);
void VectorConvertF2I(Value* other, bool is_unsigned, bool saturate);
void VectorConvertF2I(Value* other, bool is_unsigned);
void VectorShl(Value* other, TypeName type);
void VectorShr(Value* other, TypeName type);
void VectorRol(Value* other, TypeName type);