Tests: Non-determinancy: Add back in the IntMin tests.

This commit is contained in:
John Kessenich 2017-10-28 12:55:02 -06:00
parent a63622286f
commit 5866e67b8d
5 changed files with 85 additions and 2 deletions

View File

@ -0,0 +1,51 @@
constFoldIntMin.frag
Shader version: 460
Requested GL_AMD_gpu_shader_int16
Requested GL_ARB_gpu_shader_int64
0:? Sequence
0:5 Function Definition: a( ( global void)
0:5 Function Parameters:
0:6 Sequence
0:6 Sequence
0:6 move second child to first child ( temp int16_t)
0:6 'u' ( temp int16_t)
0:6 Constant:
0:6 32768 (const int)
0:7 Sequence
0:7 move second child to first child ( temp int)
0:7 'v' ( temp int)
0:7 Constant:
0:7 -2147483648 (const int)
0:8 Sequence
0:8 move second child to first child ( temp int64_t)
0:8 'w' ( temp int64_t)
0:8 Constant:
0:8 -9223372036854775808 (const int64_t)
0:9 Sequence
0:9 move second child to first child ( temp int16_t)
0:9 'x' ( temp int16_t)
0:9 Constant:
0:9 0 (const int)
0:10 Sequence
0:10 move second child to first child ( temp int)
0:10 'y' ( temp int)
0:10 Constant:
0:10 0 (const int)
0:11 Sequence
0:11 move second child to first child ( temp int64_t)
0:11 'z' ( temp int64_t)
0:11 Constant:
0:11 0 (const int64_t)
0:? Linker Objects
Linked fragment stage:
ERROR: Linking fragment stage: Missing entry point: Each stage requires one entry point
Shader version: 460
Requested GL_AMD_gpu_shader_int16
Requested GL_ARB_gpu_shader_int64
0:? Sequence
0:? Linker Objects

View File

@ -0,0 +1,14 @@
cppIntMinOverNegativeOne.frag
Shader version: 100
0:? Sequence
0:? Linker Objects
Linked fragment stage:
ERROR: Linking fragment stage: Missing entry point: Each stage requires one entry point
Shader version: 100
0:? Sequence
0:? Linker Objects

12
Test/constFoldIntMin.frag Normal file
View File

@ -0,0 +1,12 @@
#version 460 core
#extension GL_AMD_gpu_shader_int16 : enable
#extension GL_ARB_gpu_shader_int64 : enable
void a(){
int16_t u = -32768S / -1S; // SHRT_MIN
int v = -2147483648 / -1; // INT_MIN
int64_t w = -9223372036854775808L / -1L; // LLONG_MIN
int16_t x = -32768S % -1S; // SHRT_MIN
int y = -2147483648 % -1; // INT_MIN
int64_t z = -9223372036854775808L % -1L; // LLONG_MIN
}

View File

@ -0,0 +1,6 @@
#if (-2147483648 / -1) != 0
#error INT_MIN / -1 should yield 0, something went wrong.
#endif
#if (-2147483648 % -1) != 0
#error INT_MIN % -1 should yield 0, something went wrong.
#endif

View File

@ -78,7 +78,7 @@ INSTANTIATE_TEST_CASE_P(
"matrixError.vert",
"cppSimple.vert",
"cppIndent.vert",
// "cppIntMinOverNegativeOne.frag",
"cppIntMinOverNegativeOne.frag",
"cppNest.vert",
"cppBad.vert",
"cppBad2.vert",
@ -115,7 +115,7 @@ INSTANTIATE_TEST_CASE_P(
"330comp.frag",
"constErrors.frag",
"constFold.frag",
// "constFoldIntMin.frag",
"constFoldIntMin.frag",
"errors.frag",
"forwardRef.frag",
"uint.frag",