aco/tests: Allow specifiying the test subvariant in setup_cs
authorTony Wasserka <tony.wasserka@gmx.de>
Thu, 5 Nov 2020 11:43:14 +0000 (12:43 +0100)
committerMarge Bot <eric+marge@anholt.net>
Tue, 29 Dec 2020 18:57:10 +0000 (18:57 +0000)
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7461>

src/amd/compiler/tests/helpers.cpp
src/amd/compiler/tests/helpers.h
src/amd/compiler/tests/test_optimizer.cpp

index 724c86b..f0ab616 100644 (file)
@@ -43,7 +43,6 @@ std::unique_ptr<Program> program;
 Builder bld(NULL);
 Temp inputs[16];
 Temp exec_input;
-const char *subvariant = "";
 
 static VkInstance instance_cache[CHIP_LAST] = {VK_NULL_HANDLE};
 static VkDevice device_cache[CHIP_LAST] = {VK_NULL_HANDLE};
@@ -94,11 +93,10 @@ void create_program(enum chip_class chip_class, Stage stage, unsigned wave_size,
 }
 
 bool setup_cs(const char *input_spec, enum chip_class chip_class,
-              enum radeon_family family, unsigned wave_size)
+              enum radeon_family family, const char* subvariant,
+              unsigned wave_size)
 {
-   const char *old_subvariant = subvariant;
-   subvariant = "";
-   if (!set_variant(chip_class, old_subvariant))
+   if (!set_variant(chip_class, subvariant))
       return false;
 
    memset(&info, 0, sizeof(info));
index 11fa546..3ce9fab 100644 (file)
@@ -66,12 +66,12 @@ extern std::unique_ptr<aco::Program> program;
 extern aco::Builder bld;
 extern aco::Temp exec_input;
 extern aco::Temp inputs[16];
-extern const char *subvariant;
 
 void create_program(enum chip_class chip_class, aco::Stage stage,
                     unsigned wave_size=64, enum radeon_family family=CHIP_UNKNOWN);
 bool setup_cs(const char *input_spec, enum chip_class chip_class,
-              enum radeon_family family=CHIP_UNKNOWN, unsigned wave_size=64);
+              enum radeon_family family=CHIP_UNKNOWN, const char* subvariant = "",
+              unsigned wave_size=64);
 
 void finish_program(aco::Program *program);
 void finish_validator_test();
index da00fce..08cd7d1 100644 (file)
@@ -521,9 +521,7 @@ static const clamp_config clamp_configs[] = {
 
 BEGIN_TEST(optimize.clamp)
    for (clamp_config cfg : clamp_configs) {
-      subvariant = cfg.name;
-
-      if (!setup_cs("v1 v1 v1", GFX9))
+      if (!setup_cs("v1 v1 v1", GFX9, CHIP_UNKNOWN, cfg.name))
          continue;
 
       //! cfg: @match_func(min max med3 lb ub)