aco: don't allow partial copies on GFX6/7
authorDaniel Schürmann <daniel@schuermann.dev>
Tue, 23 Jun 2020 09:19:27 +0000 (10:19 +0100)
committerMarge Bot <eric+marge@anholt.net>
Wed, 24 Jun 2020 10:52:28 +0000 (10:52 +0000)
These are not supported due to missing SDWA instructions

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5207>

src/amd/compiler/aco_lower_to_hw_instr.cpp

index b208bb6fd342da42420e4ba66a2b77bea9bd5a1e..e3bc6944ed114b37efbe7a1a68e6e232443d32e0 100644 (file)
@@ -1323,7 +1323,7 @@ void handle_operands(std::map<PhysReg, copy_operation>& copy_map, lower_context*
          return;
       }
       if (it == copy_map.end()) {
-         if (!skip_partial_copies)
+         if (!skip_partial_copies || ctx->program->chip_class < GFX8)
             break;
          skip_partial_copies = false;
          it = copy_map.begin();