summaryrefslogtreecommitdiffstats
path: root/src/intel/compiler/test_eu_validate.cpp
diff options
context:
space:
mode:
authorMatt Turner <[email protected]>2020-01-13 11:17:27 -0800
committerMarge Bot <[email protected]>2020-01-22 00:19:20 +0000
commit49c21802cbca8240b272318759b1e472142929e6 (patch)
treebb761cbcc11a9736ecd71e19ae899d73afa3fee8 /src/intel/compiler/test_eu_validate.cpp
parentbb47aa2124c055c8dabeda7c1b4c48372e63098c (diff)
intel/compiler: Split has_64bit_types into float/int
Gen7 has 64-bit floats but not 64-bit ints. Acked-by: Caio Marcelo de Oliveira Filho <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2635>
Diffstat (limited to 'src/intel/compiler/test_eu_validate.cpp')
-rw-r--r--src/intel/compiler/test_eu_validate.cpp71
1 files changed, 58 insertions, 13 deletions
diff --git a/src/intel/compiler/test_eu_validate.cpp b/src/intel/compiler/test_eu_validate.cpp
index 7d7daa4581a..d794af4259d 100644
--- a/src/intel/compiler/test_eu_validate.cpp
+++ b/src/intel/compiler/test_eu_validate.cpp
@@ -893,7 +893,13 @@ TEST_P(validation_test, byte_64bit_conversion)
return;
for (unsigned i = 0; i < ARRAY_SIZE(inst); i++) {
- if (!devinfo.has_64bit_types && type_sz(inst[i].src_type) == 8)
+ if (!devinfo.has_64bit_float &&
+ inst[i].src_type == BRW_REGISTER_TYPE_DF)
+ continue;
+
+ if (!devinfo.has_64bit_int &&
+ (inst[i].src_type == BRW_REGISTER_TYPE_Q ||
+ inst[i].src_type == BRW_REGISTER_TYPE_UQ))
continue;
brw_MOV(p, retype(g0, inst[i].dst_type), retype(g0, inst[i].src_type));
@@ -989,10 +995,17 @@ TEST_P(validation_test, half_float_conversion)
return;
for (unsigned i = 0; i < ARRAY_SIZE(inst); i++) {
- if (!devinfo.has_64bit_types &&
- (type_sz(inst[i].src_type) == 8 || type_sz(inst[i].dst_type) == 8)) {
+ if (!devinfo.has_64bit_float &&
+ (inst[i].dst_type == BRW_REGISTER_TYPE_DF ||
+ inst[i].src_type == BRW_REGISTER_TYPE_DF))
+ continue;
+
+ if (!devinfo.has_64bit_int &&
+ (inst[i].dst_type == BRW_REGISTER_TYPE_Q ||
+ inst[i].dst_type == BRW_REGISTER_TYPE_UQ ||
+ inst[i].src_type == BRW_REGISTER_TYPE_Q ||
+ inst[i].src_type == BRW_REGISTER_TYPE_UQ))
continue;
- }
brw_MOV(p, retype(g0, inst[i].dst_type), retype(g0, inst[i].src_type));
@@ -1875,8 +1888,16 @@ TEST_P(validation_test, qword_low_power_align1_regioning_restrictions)
return;
for (unsigned i = 0; i < ARRAY_SIZE(inst); i++) {
- if (!devinfo.has_64bit_types &&
- (type_sz(inst[i].dst_type) == 8 || type_sz(inst[i].src_type) == 8))
+ if (!devinfo.has_64bit_float &&
+ (inst[i].dst_type == BRW_REGISTER_TYPE_DF ||
+ inst[i].src_type == BRW_REGISTER_TYPE_DF))
+ continue;
+
+ if (!devinfo.has_64bit_int &&
+ (inst[i].dst_type == BRW_REGISTER_TYPE_Q ||
+ inst[i].dst_type == BRW_REGISTER_TYPE_UQ ||
+ inst[i].src_type == BRW_REGISTER_TYPE_Q ||
+ inst[i].src_type == BRW_REGISTER_TYPE_UQ))
continue;
if (inst[i].opcode == BRW_OPCODE_MOV) {
@@ -1999,8 +2020,16 @@ TEST_P(validation_test, qword_low_power_no_indirect_addressing)
return;
for (unsigned i = 0; i < ARRAY_SIZE(inst); i++) {
- if (!devinfo.has_64bit_types &&
- (type_sz(inst[i].dst_type) == 8 || type_sz(inst[i].src_type) == 8))
+ if (!devinfo.has_64bit_float &&
+ (inst[i].dst_type == BRW_REGISTER_TYPE_DF ||
+ inst[i].src_type == BRW_REGISTER_TYPE_DF))
+ continue;
+
+ if (!devinfo.has_64bit_int &&
+ (inst[i].dst_type == BRW_REGISTER_TYPE_Q ||
+ inst[i].dst_type == BRW_REGISTER_TYPE_UQ ||
+ inst[i].src_type == BRW_REGISTER_TYPE_Q ||
+ inst[i].src_type == BRW_REGISTER_TYPE_UQ))
continue;
if (inst[i].opcode == BRW_OPCODE_MOV) {
@@ -2139,8 +2168,16 @@ TEST_P(validation_test, qword_low_power_no_64bit_arf)
return;
for (unsigned i = 0; i < ARRAY_SIZE(inst); i++) {
- if (!devinfo.has_64bit_types &&
- (type_sz(inst[i].dst_type) == 8 || type_sz(inst[i].src_type) == 8))
+ if (!devinfo.has_64bit_float &&
+ (inst[i].dst_type == BRW_REGISTER_TYPE_DF ||
+ inst[i].src_type == BRW_REGISTER_TYPE_DF))
+ continue;
+
+ if (!devinfo.has_64bit_int &&
+ (inst[i].dst_type == BRW_REGISTER_TYPE_Q ||
+ inst[i].dst_type == BRW_REGISTER_TYPE_UQ ||
+ inst[i].src_type == BRW_REGISTER_TYPE_Q ||
+ inst[i].src_type == BRW_REGISTER_TYPE_UQ))
continue;
if (inst[i].opcode == BRW_OPCODE_MOV) {
@@ -2171,7 +2208,7 @@ TEST_P(validation_test, qword_low_power_no_64bit_arf)
clear_instructions(p);
}
- if (!devinfo.has_64bit_types)
+ if (!devinfo.has_64bit_float)
return;
/* MAC implicitly reads the accumulator */
@@ -2348,8 +2385,16 @@ TEST_P(validation_test, qword_low_power_no_depctrl)
return;
for (unsigned i = 0; i < ARRAY_SIZE(inst); i++) {
- if (!devinfo.has_64bit_types &&
- (type_sz(inst[i].dst_type) == 8 || type_sz(inst[i].src_type) == 8))
+ if (!devinfo.has_64bit_float &&
+ (inst[i].dst_type == BRW_REGISTER_TYPE_DF ||
+ inst[i].src_type == BRW_REGISTER_TYPE_DF))
+ continue;
+
+ if (!devinfo.has_64bit_int &&
+ (inst[i].dst_type == BRW_REGISTER_TYPE_Q ||
+ inst[i].dst_type == BRW_REGISTER_TYPE_UQ ||
+ inst[i].src_type == BRW_REGISTER_TYPE_Q ||
+ inst[i].src_type == BRW_REGISTER_TYPE_UQ))
continue;
if (inst[i].opcode == BRW_OPCODE_MOV) {