summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/nouveau
diff options
context:
space:
mode:
authorKarol Herbst <[email protected]>2018-10-19 19:26:39 +0200
committerKarol Herbst <[email protected]>2018-10-20 03:00:04 +0200
commit2d235d69c825a22f218507fd2ba186973ba79002 (patch)
tree80733b2a2882501557354ccf0550647d5d39ddb2 /src/gallium/drivers/nouveau
parentbfb2b902464b1c493e4bfa1f3c2da065a964ac85 (diff)
nv50/ir: fix ConstantFolding::createMul for 64 bit muls
Fixes: 2f52925f5c60c72c9389bfdc122c3d5f8e15b25f "nv50/ir: move a * b -> a << log2(b) code into createMul()" Reviewed-by: Rhys Perry <[email protected]> Signed-off-by: Karol Herbst <[email protected]>
Diffstat (limited to 'src/gallium/drivers/nouveau')
-rw-r--r--src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
index d851cf3c37c..8767e5efb99 100644
--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
@@ -965,7 +965,7 @@ ConstantFolding::createMul(DataType ty, Value *def, Value *a, int64_t b, Value *
if (b >= 0 && util_is_power_of_two_or_zero64(b)) {
int shl = util_logbase2_64(b);
- Value *res = c ? bld.getSSA() : def;
+ Value *res = c ? bld.getSSA(typeSizeof(ty)) : def;
bld.mkOp2(OP_SHL, ty, res, a, bld.mkImm(shl));
if (c)
bld.mkOp2(OP_ADD, ty, def, res, c);