i965: Return Q and UQ types for int64 and uint64
authorIan Romanick <ian.d.romanick@intel.com>
Thu, 1 Sep 2016 18:45:22 +0000 (11:45 -0700)
committerIan Romanick <ian.d.romanick@intel.com>
Fri, 20 Jan 2017 23:41:23 +0000 (15:41 -0800)
It seems like maybe this should return a different type based on Gen.  Q
and UQ only exist on Gen8+, but, based on the old comment, I believe
previous Gens can generate 64-bit moves.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
src/mesa/drivers/dri/i965/brw_nir.c

index a5912a02c92dc9d7f82bd578da89be3b453132e8..3ead880292746d27fb1e7fa24d08bfeca2c91e73 100644 (file)
@@ -721,11 +721,9 @@ brw_type_for_nir_type(nir_alu_type type)
    case nir_type_float64:
       return BRW_REGISTER_TYPE_DF;
    case nir_type_int64:
+      return BRW_REGISTER_TYPE_Q;
    case nir_type_uint64:
-      /* TODO we should only see these in moves, so for now it's ok, but when
-       * we add actual 64-bit integer support we should fix this.
-       */
-      return BRW_REGISTER_TYPE_DF;
+      return BRW_REGISTER_TYPE_UQ;
    default:
       unreachable("unknown type");
    }