diff options
author | Matt Turner <[email protected]> | 2020-01-13 11:17:27 -0800 |
---|---|---|
committer | Marge Bot <[email protected]> | 2020-01-22 00:19:20 +0000 |
commit | 49c21802cbca8240b272318759b1e472142929e6 (patch) | |
tree | bb761cbcc11a9736ecd71e19ae899d73afa3fee8 /src/intel/compiler/test_eu_validate.cpp | |
parent | bb47aa2124c055c8dabeda7c1b4c48372e63098c (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.cpp | 71 |
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) { |