mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-30 21:30:04 +00:00 
			
		
		
		
	shader/tests: Refactor shader_jit tests to just shader tests
				
					
				
			Since these tests will test both the interpreter and the jit, they are no longer jit-specific tests and are more general shader-tests.
This commit is contained in:
		
							parent
							
								
									18c057f276
								
							
						
					
					
						commit
						6e994fcb92
					
				
					 2 changed files with 22 additions and 22 deletions
				
			
		|  | @ -13,7 +13,7 @@ add_executable(tests | ||||||
|     audio_core/lle/lle.cpp |     audio_core/lle/lle.cpp | ||||||
|     audio_core/audio_fixures.h |     audio_core/audio_fixures.h | ||||||
|     audio_core/decoder_tests.cpp |     audio_core/decoder_tests.cpp | ||||||
|     video_core/shader/shader_jit_compiler.cpp |     video_core/shader.cpp | ||||||
|     audio_core/merryhime_3ds_audio/merry_audio/merry_audio.cpp |     audio_core/merryhime_3ds_audio/merry_audio/merry_audio.cpp | ||||||
|     audio_core/merryhime_3ds_audio/merry_audio/merry_audio.h |     audio_core/merryhime_3ds_audio/merry_audio/merry_audio.h | ||||||
|     audio_core/merryhime_3ds_audio/merry_audio/service_fixture.cpp |     audio_core/merryhime_3ds_audio/merry_audio/service_fixture.cpp | ||||||
|  |  | ||||||
|  | @ -170,7 +170,7 @@ private: | ||||||
| #define SHADER_TEST_CASE(NAME, TAG)                                                                \ | #define SHADER_TEST_CASE(NAME, TAG)                                                                \ | ||||||
|     TEMPLATE_TEST_CASE(NAME, TAG, ShaderInterpreterTest, ShaderJitTest) |     TEMPLATE_TEST_CASE(NAME, TAG, ShaderInterpreterTest, ShaderJitTest) | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("ADD", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("ADD", "[video_core][shader]") { | ||||||
|     const auto sh_input1 = SourceRegister::MakeInput(0); |     const auto sh_input1 = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_input2 = SourceRegister::MakeInput(1); |     const auto sh_input2 = SourceRegister::MakeInput(1); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
|  | @ -187,7 +187,7 @@ SHADER_TEST_CASE("ADD", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(std::isinf(shader.Run({INFINITY, -1.0f}).x)); |     REQUIRE(std::isinf(shader.Run({INFINITY, -1.0f}).x)); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("CALL", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("CALL", "[video_core][shader]") { | ||||||
|     const auto sh_input = SourceRegister::MakeInput(0); |     const auto sh_input = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
| 
 | 
 | ||||||
|  | @ -222,7 +222,7 @@ SHADER_TEST_CASE("CALL", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(shader.Run(0.f).x == Catch::Approx(1.f)); |     REQUIRE(shader.Run(0.f).x == Catch::Approx(1.f)); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("DP3", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("DP3", "[video_core][shader]") { | ||||||
|     const auto sh_input1 = SourceRegister::MakeInput(0); |     const auto sh_input1 = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_input2 = SourceRegister::MakeInput(1); |     const auto sh_input2 = SourceRegister::MakeInput(1); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
|  | @ -238,7 +238,7 @@ SHADER_TEST_CASE("DP3", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(shader.Run({vec4_one, vec4_one}).x == 3.0f); |     REQUIRE(shader.Run({vec4_one, vec4_one}).x == 3.0f); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("DP4", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("DP4", "[video_core][shader]") { | ||||||
|     const auto sh_input1 = SourceRegister::MakeInput(0); |     const auto sh_input1 = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_input2 = SourceRegister::MakeInput(1); |     const auto sh_input2 = SourceRegister::MakeInput(1); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
|  | @ -254,7 +254,7 @@ SHADER_TEST_CASE("DP4", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(shader.Run({vec4_one, vec4_one}).x == 4.0f); |     REQUIRE(shader.Run({vec4_one, vec4_one}).x == 4.0f); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("DPH", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("DPH", "[video_core][shader]") { | ||||||
|     const auto sh_input1 = SourceRegister::MakeInput(0); |     const auto sh_input1 = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_input2 = SourceRegister::MakeInput(1); |     const auto sh_input2 = SourceRegister::MakeInput(1); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
|  | @ -271,7 +271,7 @@ SHADER_TEST_CASE("DPH", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(shader.Run({vec4_zero, vec4_one}).x == 1.0f); |     REQUIRE(shader.Run({vec4_zero, vec4_one}).x == 1.0f); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("LG2", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("LG2", "[video_core][shader]") { | ||||||
|     const auto sh_input = SourceRegister::MakeInput(0); |     const auto sh_input = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
| 
 | 
 | ||||||
|  | @ -288,7 +288,7 @@ SHADER_TEST_CASE("LG2", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(shader.Run(1.e24f).x == Catch::Approx(79.7262742773f)); |     REQUIRE(shader.Run(1.e24f).x == Catch::Approx(79.7262742773f)); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("EX2", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("EX2", "[video_core][shader]") { | ||||||
|     const auto sh_input = SourceRegister::MakeInput(0); |     const auto sh_input = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
| 
 | 
 | ||||||
|  | @ -306,7 +306,7 @@ SHADER_TEST_CASE("EX2", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(std::isinf(shader.Run(800.f).x)); |     REQUIRE(std::isinf(shader.Run(800.f).x)); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("MUL", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("MUL", "[video_core][shader]") { | ||||||
|     const auto sh_input1 = SourceRegister::MakeInput(0); |     const auto sh_input1 = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_input2 = SourceRegister::MakeInput(1); |     const auto sh_input2 = SourceRegister::MakeInput(1); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
|  | @ -325,7 +325,7 @@ SHADER_TEST_CASE("MUL", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(shader.Run({+INFINITY, -INFINITY}).x == -INFINITY); |     REQUIRE(shader.Run({+INFINITY, -INFINITY}).x == -INFINITY); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("SGE", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("SGE", "[video_core][shader]") { | ||||||
|     const auto sh_input1 = SourceRegister::MakeInput(0); |     const auto sh_input1 = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_input2 = SourceRegister::MakeInput(1); |     const auto sh_input2 = SourceRegister::MakeInput(1); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
|  | @ -346,7 +346,7 @@ SHADER_TEST_CASE("SGE", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(shader.Run({-1.0f, +1.0f}).x == 0.0f); |     REQUIRE(shader.Run({-1.0f, +1.0f}).x == 0.0f); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("SLT", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("SLT", "[video_core][shader]") { | ||||||
|     const auto sh_input1 = SourceRegister::MakeInput(0); |     const auto sh_input1 = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_input2 = SourceRegister::MakeInput(1); |     const auto sh_input2 = SourceRegister::MakeInput(1); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
|  | @ -367,7 +367,7 @@ SHADER_TEST_CASE("SLT", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(shader.Run({-1.0f, +1.0f}).x == 1.0f); |     REQUIRE(shader.Run({-1.0f, +1.0f}).x == 1.0f); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("FLR", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("FLR", "[video_core][shader]") { | ||||||
|     const auto sh_input1 = SourceRegister::MakeInput(0); |     const auto sh_input1 = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
| 
 | 
 | ||||||
|  | @ -384,7 +384,7 @@ SHADER_TEST_CASE("FLR", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(std::isinf(shader.Run({INFINITY}).x)); |     REQUIRE(std::isinf(shader.Run({INFINITY}).x)); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("MAX", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("MAX", "[video_core][shader]") { | ||||||
|     const auto sh_input1 = SourceRegister::MakeInput(0); |     const auto sh_input1 = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_input2 = SourceRegister::MakeInput(1); |     const auto sh_input2 = SourceRegister::MakeInput(1); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
|  | @ -403,7 +403,7 @@ SHADER_TEST_CASE("MAX", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(shader.Run({-INFINITY, +INFINITY}).x == +INFINITY); |     REQUIRE(shader.Run({-INFINITY, +INFINITY}).x == +INFINITY); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("MIN", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("MIN", "[video_core][shader]") { | ||||||
|     const auto sh_input1 = SourceRegister::MakeInput(0); |     const auto sh_input1 = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_input2 = SourceRegister::MakeInput(1); |     const auto sh_input2 = SourceRegister::MakeInput(1); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
|  | @ -422,7 +422,7 @@ SHADER_TEST_CASE("MIN", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(shader.Run({-INFINITY, +INFINITY}).x == -INFINITY); |     REQUIRE(shader.Run({-INFINITY, +INFINITY}).x == -INFINITY); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("RCP", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("RCP", "[video_core][shader]") { | ||||||
|     const auto sh_input = SourceRegister::MakeInput(0); |     const auto sh_input = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
| 
 | 
 | ||||||
|  | @ -447,7 +447,7 @@ SHADER_TEST_CASE("RCP", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(shader.Run({0.0625f}).x == Catch::Approx(16.0f).margin(0.004f)); |     REQUIRE(shader.Run({0.0625f}).x == Catch::Approx(16.0f).margin(0.004f)); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("RSQ", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("RSQ", "[video_core][shader]") { | ||||||
|     const auto sh_input = SourceRegister::MakeInput(0); |     const auto sh_input = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
| 
 | 
 | ||||||
|  | @ -473,7 +473,7 @@ SHADER_TEST_CASE("RSQ", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(shader.Run({0.0625f}).x == Catch::Approx(4.0f).margin(0.004f)); |     REQUIRE(shader.Run({0.0625f}).x == Catch::Approx(4.0f).margin(0.004f)); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("Uniform Read", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("Uniform Read", "[video_core][shader]") { | ||||||
|     const auto sh_input = SourceRegister::MakeInput(0); |     const auto sh_input = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_c0 = SourceRegister::MakeFloat(0); |     const auto sh_c0 = SourceRegister::MakeFloat(0); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
|  | @ -506,7 +506,7 @@ SHADER_TEST_CASE("Uniform Read", "[video_core][shader][shader_jit]") { | ||||||
|     } |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("Address Register Offset", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("Address Register Offset", "[video_core][shader]") { | ||||||
|     const auto sh_input = SourceRegister::MakeInput(0); |     const auto sh_input = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_c40 = SourceRegister::MakeFloat(40); |     const auto sh_c40 = SourceRegister::MakeFloat(40); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
|  | @ -556,7 +556,7 @@ SHADER_TEST_CASE("Address Register Offset", "[video_core][shader][shader_jit]") | ||||||
|     REQUIRE(shader.Run(-129.f) == f_uniforms[40]); |     REQUIRE(shader.Run(-129.f) == f_uniforms[40]); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("Dest Mask", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("Dest Mask", "[video_core][shader]") { | ||||||
|     const auto sh_input = SourceRegister::MakeInput(0); |     const auto sh_input = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
| 
 | 
 | ||||||
|  | @ -586,7 +586,7 @@ SHADER_TEST_CASE("Dest Mask", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(shader("xyzw")->Run({iota_vec}) == iota_vec); |     REQUIRE(shader("xyzw")->Run({iota_vec}) == iota_vec); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("MAD", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("MAD", "[video_core][shader]") { | ||||||
|     const auto sh_input1 = SourceRegister::MakeInput(0); |     const auto sh_input1 = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_input2 = SourceRegister::MakeInput(1); |     const auto sh_input2 = SourceRegister::MakeInput(1); | ||||||
|     const auto sh_input3 = SourceRegister::MakeInput(2); |     const auto sh_input3 = SourceRegister::MakeInput(2); | ||||||
|  | @ -634,7 +634,7 @@ SHADER_TEST_CASE("MAD", "[video_core][shader][shader_jit]") { | ||||||
|     REQUIRE(shader.Run({vec4_nan, vec4_zero, vec4_zero}) == vec4_nan); |     REQUIRE(shader.Run({vec4_nan, vec4_zero, vec4_zero}) == vec4_nan); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("Nested Loop", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("Nested Loop", "[video_core][shader]") { | ||||||
|     const auto sh_input = SourceRegister::MakeInput(0); |     const auto sh_input = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_temp = SourceRegister::MakeTemporary(0); |     const auto sh_temp = SourceRegister::MakeTemporary(0); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
|  | @ -672,7 +672,7 @@ SHADER_TEST_CASE("Nested Loop", "[video_core][shader][shader_jit]") { | ||||||
|     } |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| SHADER_TEST_CASE("Source Swizzle", "[video_core][shader][shader_jit]") { | SHADER_TEST_CASE("Source Swizzle", "[video_core][shader]") { | ||||||
|     const auto sh_input = SourceRegister::MakeInput(0); |     const auto sh_input = SourceRegister::MakeInput(0); | ||||||
|     const auto sh_output = DestRegister::MakeOutput(0); |     const auto sh_output = DestRegister::MakeOutput(0); | ||||||
| 
 | 
 | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue