Merge pull request #1289 from Igalia/igalia/dmat-scalar-division

Use the correct type for the constant for matrix/scalar division
This commit is contained in:
John Kessenich 2018-03-15 23:49:59 -06:00 committed by GitHub
commit cb32c54466
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 20 additions and 1 deletions

View file

@ -848,6 +848,23 @@ Id Builder::makeFloat16Constant(float f16, bool specConstant)
return c->getResultId();
}
Id Builder::makeFpConstant(Id type, double d, bool specConstant)
{
assert(isFloatType(type));
switch (getScalarTypeWidth(type)) {
case 16:
return makeFloat16Constant(d, specConstant);
case 32:
return makeFloatConstant(d, specConstant);
case 64:
return makeDoubleConstant(d, specConstant);
}
assert(false);
}
Id Builder::findCompositeConstant(Op typeClass, const std::vector<Id>& comps)
{
Instruction* constant = 0;