diff options
author | Ilia Mirkin <[email protected]> | 2016-01-19 05:37:24 -0500 |
---|---|---|
committer | Ilia Mirkin <[email protected]> | 2016-01-20 19:37:34 -0500 |
commit | daa0fd7843dfc3f2f209a1b755df01f4dbc8122f (patch) | |
tree | 58e2da30bc7ec082fd5fca3bf72e873348d63583 | |
parent | c0b66d96d77b646282f7e732c4c25761431336c3 (diff) |
nv50/ir: 64-bit splitting fixes
Take reading shader outputs into account, and use setFlagsDef for the
carry since we rely on having i->flagsDef being set.
Signed-off-by: Ilia Mirkin <[email protected]>
-rw-r--r-- | src/gallium/drivers/nouveau/codegen/nv50_ir_build_util.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_build_util.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_build_util.cpp index 1bf7240e131..f58cf97646e 100644 --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_build_util.cpp +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_build_util.cpp @@ -615,6 +615,7 @@ BuildUtil::split64BitOpPostRA(Function *fn, Instruction *i, case FILE_MEMORY_CONST: case FILE_MEMORY_SHARED: case FILE_SHADER_INPUT: + case FILE_SHADER_OUTPUT: hi->getSrc(s)->reg.data.offset += 4; break; default: @@ -625,7 +626,7 @@ BuildUtil::split64BitOpPostRA(Function *fn, Instruction *i, } } if (srcNr == 2) { - lo->setDef(1, carry); + lo->setFlagsDef(1, carry); hi->setFlagsSrc(hi->srcCount(), carry); } return hi; |