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