Module: Mesa
Branch: main
Commit: d8291cc7ee8cc7c62d1241ea347dfcd777f4d16b
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=d8291cc7ee8cc7c62d1241ea347dfcd777f4d16b

Author: Gert Wollny <[email protected]>
Date:   Mon Jul 10 19:42:11 2023 +0200

r600/sfn/tests: add simple copy-prop test with register source

Just to make sure the register intrinsic conversion doesn't need the helpers.

Signed-off-by: Gert Wollny <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24212>

---

 .../drivers/r600/sfn/tests/sfn_optimizer_test.cpp  | 36 ++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/src/gallium/drivers/r600/sfn/tests/sfn_optimizer_test.cpp 
b/src/gallium/drivers/r600/sfn/tests/sfn_optimizer_test.cpp
index ce6203c1cf5..9d48e28c39c 100644
--- a/src/gallium/drivers/r600/sfn/tests/sfn_optimizer_test.cpp
+++ b/src/gallium/drivers/r600/sfn/tests/sfn_optimizer_test.cpp
@@ -125,6 +125,42 @@ EXPORT_DONE PIXEL 0 S2.xyzw
    check(sh, shader_expect);
 }
 
+TEST_F(TestShaderFromNir, CopyPropRegDest)
+{
+const char *shader_input =
+   R"(FS
+CHIPCLASS EVERGREEN
+REGISTERS R0.x
+PROP MAX_COLOR_EXPORTS:1
+PROP COLOR_EXPORTS:1
+PROP COLOR_EXPORT_MASK:15
+OUTPUT LOC:0 NAME:1 MASK:15
+SHADER
+ALU MOV S2.x : R0.x {W}
+ALU MUL S3.x : S2.x S2.x {W}
+EXPORT_DONE PIXEL 0 S3.xxxx
+)";
+
+const char *shader_expect =
+   R"(FS
+CHIPCLASS EVERGREEN
+REGISTERS R0.x
+PROP MAX_COLOR_EXPORTS:1
+PROP COLOR_EXPORTS:1
+PROP COLOR_EXPORT_MASK:15
+OUTPUT LOC:0 NAME:1 MASK:15
+SHADER
+ALU MUL S3.x : R0.x R0.x {W}
+EXPORT_DONE PIXEL 0 S3.xxxx
+)";
+
+   auto sh = from_string(shader_input);
+
+   optimize(*sh);
+
+   check(sh, shader_expect);
+}
+
 TEST_F(TestShaderFromNir, OptimizeWithDestArrayValue)
 {
    auto sh = from_string(shader_with_dest_array);

Reply via email to