diff options
author | Rhys Perry <pendingchaos02@gmail.com> | 2019-11-11 14:19:51 +0000 |
---|---|---|
committer | Dylan Baker <dylan@pnwbakers.com> | 2019-11-19 16:54:04 -0800 |
commit | 35182247fc19130a3657f8a3af8e6156caed135d (patch) | |
tree | 3f6acbb678ef9cbeb90bc54301cdd10035c50500 | |
parent | ab4df0ec7269a1846e7cdde0c7bec051f2daf2d7 (diff) | |
download | mesa-35182247fc19130a3657f8a3af8e6156caed135d.tar.gz mesa-35182247fc19130a3657f8a3af8e6156caed135d.tar.bz2 mesa-35182247fc19130a3657f8a3af8e6156caed135d.zip |
aco: fix 64-bit fsign with 0
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Fixes: 93c8ebfa ('aco: Initial commit of independent AMD compiler')
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
(cherry picked from commit be1d11249bde1e041f6eb9c0acedb041ab450c4b)
-rw-r--r-- | src/amd/compiler/aco_instruction_selection.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/amd/compiler/aco_instruction_selection.cpp b/src/amd/compiler/aco_instruction_selection.cpp index d32ee580613..ed6ece3e6f2 100644 --- a/src/amd/compiler/aco_instruction_selection.cpp +++ b/src/amd/compiler/aco_instruction_selection.cpp @@ -1647,7 +1647,7 @@ void visit_alu_instr(isel_context *ctx, nir_alu_instr *instr) } else if (dst.size() == 2) { Temp cond = bld.vopc(aco_opcode::v_cmp_nlt_f64, bld.hint_vcc(bld.def(s2)), Operand(0u), src); Temp tmp = bld.vop1(aco_opcode::v_mov_b32, bld.def(v1), Operand(0x3FF00000u)); - Temp upper = bld.vop2_e64(aco_opcode::v_cndmask_b32, bld.def(v1), tmp, src, cond); + Temp upper = bld.vop2_e64(aco_opcode::v_cndmask_b32, bld.def(v1), tmp, emit_extract_vector(ctx, src, 1, v1), cond); cond = bld.vopc(aco_opcode::v_cmp_le_f64, bld.hint_vcc(bld.def(s2)), Operand(0u), src); tmp = bld.vop1(aco_opcode::v_mov_b32, bld.def(v1), Operand(0xBFF00000u)); |