gm107/ir: make use of MOV32I for all immediates
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Sun, 26 Jun 2016 22:52:46 +0000 (00:52 +0200)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Sun, 26 Jun 2016 22:28:02 +0000 (00:28 +0200)
MOV only allows to emit 19-bits immediates. This is similar to the
previous fix I did for IMUL.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
Cc: <mesa-stable@lists.freedesktop.org>
src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp

index 1010ecfe927d0826f0ec6c4f295933b31978e94a..25a9a529fa6dd9e860d06b62377b39e6557c5f9a 100644 (file)
@@ -678,8 +678,7 @@ CodeEmitterGM107::emitRAM()
 void
 CodeEmitterGM107::emitMOV()
 {
-   if ( insn->src(0).getFile() != FILE_IMMEDIATE ||
-       (insn->sType != TYPE_F32 && !longIMMD(insn->src(0)))) {
+   if (insn->src(0).getFile() != FILE_IMMEDIATE) {
       switch (insn->src(0).getFile()) {
       case FILE_GPR:
          if (insn->def(0).getFile() == FILE_PREDICATE) {