Merge pull request #1597 from sheredom/add_conversion_folding

Add conversion folding when the source is a constant.
This commit is contained in:
John Kessenich
2018-11-27 03:53:28 -07:00
committed by GitHub
11 changed files with 1012 additions and 40 deletions

View File

@@ -0,0 +1,645 @@
constantUnaryConversion.comp
Shader version: 450
Requested GL_KHX_shader_explicit_arithmetic_types
local_size = (1, 1, 1)
0:? Sequence
0:48 Function Definition: main( ( global void)
0:48 Function Parameters:
0:? Linker Objects
0:? 'bool_init' ( const bool)
0:? true (const bool)
0:? 'int8_t_init' ( const int8_t)
0:? -1 (const int)
0:? 'int16_t_init' ( const int16_t)
0:? -2 (const int)
0:? 'int32_t_init' ( const int)
0:? -3 (const int)
0:? 'int64_t_init' ( const int64_t)
0:? -4 (const int64_t)
0:? 'uint8_t_init' ( const uint8_t)
0:? 1 (const int)
0:? 'uint16_t_init' ( const uint16_t)
0:? 2 (const int)
0:? 'uint32_t_init' ( const uint)
0:? 3 (const uint)
0:? 'uint64_t_init' ( const uint64_t)
0:? 4 (const uint64_t)
0:? 'float16_t_init' ( const float16_t)
0:? 42.000000
0:? 'float32_t_init' ( const float)
0:? 13.000000
0:? 'float64_t_init' ( const double)
0:? -4.000000
0:? 'bool_to_bool' ( const bool)
0:? true (const bool)
0:? 'int8_t_to_bool' ( const bool)
0:? -1 (const int)
0:? 'int16_t_to_bool' ( const bool)
0:? -2 (const int)
0:? 'int32_t_to_bool' ( const bool)
0:? true (const bool)
0:? 'int64_t_to_bool' ( const bool)
0:? true (const bool)
0:? 'uint8_t_to_bool' ( const bool)
0:? 1 (const int)
0:? 'uint16_t_to_bool' ( const bool)
0:? 2 (const int)
0:? 'uint32_t_to_bool' ( const bool)
0:? true (const bool)
0:? 'uint64_t_to_bool' ( const bool)
0:? true (const bool)
0:? 'float16_t_to_bool' ( const bool)
0:? true (const bool)
0:? 'float32_t_to_bool' ( const bool)
0:? true (const bool)
0:? 'float64_t_to_bool' ( const bool)
0:? true (const bool)
0:? 'bool_to_int8_t' ( const int8_t)
0:? true (const bool)
0:? 'int8_t_to_int8_t' ( const int8_t)
0:? -1 (const int)
0:? 'int16_t_to_int8_t' ( const int8_t)
0:? -2 (const int)
0:? 'int32_t_to_int8_t' ( const int8_t)
0:? -3 (const int)
0:? 'int64_t_to_int8_t' ( const int8_t)
0:? -4 (const int64_t)
0:? 'uint8_t_to_int8_t' ( const int8_t)
0:? 1 (const int)
0:? 'uint16_t_to_int8_t' ( const int8_t)
0:? 2 (const int)
0:? 'uint32_t_to_int8_t' ( const int8_t)
0:? 3 (const uint)
0:? 'uint64_t_to_int8_t' ( const int8_t)
0:? 4 (const uint64_t)
0:? 'float16_t_to_int8_t' ( const int8_t)
0:? 42.000000
0:? 'float32_t_to_int8_t' ( const int8_t)
0:? 13.000000
0:? 'float64_t_to_int8_t' ( const int8_t)
0:? -4.000000
0:? 'bool_to_int16_t' ( const int16_t)
0:? true (const bool)
0:? 'int8_t_to_int16_t' ( const int16_t)
0:? -1 (const int)
0:? 'int16_t_to_int16_t' ( const int16_t)
0:? -2 (const int)
0:? 'int32_t_to_int16_t' ( const int16_t)
0:? -3 (const int)
0:? 'int64_t_to_int16_t' ( const int16_t)
0:? -4 (const int64_t)
0:? 'uint8_t_to_int16_t' ( const int16_t)
0:? 1 (const int)
0:? 'uint16_t_to_int16_t' ( const int16_t)
0:? 2 (const int)
0:? 'uint32_t_to_int16_t' ( const int16_t)
0:? 3 (const uint)
0:? 'uint64_t_to_int16_t' ( const int16_t)
0:? 4 (const uint64_t)
0:? 'float16_t_to_int16_t' ( const int16_t)
0:? 42.000000
0:? 'float32_t_to_int16_t' ( const int16_t)
0:? 13.000000
0:? 'float64_t_to_int16_t' ( const int16_t)
0:? -4.000000
0:? 'bool_to_int32_t' ( const int)
0:? 1 (const int)
0:? 'int8_t_to_int32_t' ( const int)
0:? -1 (const int)
0:? 'int16_t_to_int32_t' ( const int)
0:? -2 (const int)
0:? 'int32_t_to_int32_t' ( const int)
0:? -3 (const int)
0:? 'int64_t_to_int32_t' ( const int)
0:? -4 (const int)
0:? 'uint8_t_to_int32_t' ( const int)
0:? 1 (const int)
0:? 'uint16_t_to_int32_t' ( const int)
0:? 2 (const int)
0:? 'uint32_t_to_int32_t' ( const int)
0:? 3 (const int)
0:? 'uint64_t_to_int32_t' ( const int)
0:? 4 (const int)
0:? 'float16_t_to_int32_t' ( const int)
0:? 42 (const int)
0:? 'float32_t_to_int32_t' ( const int)
0:? 13 (const int)
0:? 'float64_t_to_int32_t' ( const int)
0:? -4 (const int)
0:? 'bool_to_int64_t' ( const int64_t)
0:? 1 (const int64_t)
0:? 'int8_t_to_int64_t' ( const int64_t)
0:? -1 (const int)
0:? 'int16_t_to_int64_t' ( const int64_t)
0:? -2 (const int)
0:? 'int32_t_to_int64_t' ( const int64_t)
0:? -3 (const int64_t)
0:? 'int64_t_to_int64_t' ( const int64_t)
0:? -4 (const int64_t)
0:? 'uint8_t_to_int64_t' ( const int64_t)
0:? 1 (const int)
0:? 'uint16_t_to_int64_t' ( const int64_t)
0:? 2 (const int)
0:? 'uint32_t_to_int64_t' ( const int64_t)
0:? 3 (const int64_t)
0:? 'uint64_t_to_int64_t' ( const int64_t)
0:? 4 (const int64_t)
0:? 'float16_t_to_int64_t' ( const int64_t)
0:? 42 (const int64_t)
0:? 'float32_t_to_int64_t' ( const int64_t)
0:? 13 (const int64_t)
0:? 'float64_t_to_int64_t' ( const int64_t)
0:? -4 (const int64_t)
0:? 'bool_to_uint8_t' ( const uint8_t)
0:? true (const bool)
0:? 'int8_t_to_uint8_t' ( const uint8_t)
0:? -1 (const int)
0:? 'int16_t_to_uint8_t' ( const uint8_t)
0:? -2 (const int)
0:? 'int32_t_to_uint8_t' ( const uint8_t)
0:? -3 (const int)
0:? 'int64_t_to_uint8_t' ( const uint8_t)
0:? -4 (const int64_t)
0:? 'uint8_t_to_uint8_t' ( const uint8_t)
0:? 1 (const int)
0:? 'uint16_t_to_uint8_t' ( const uint8_t)
0:? 2 (const int)
0:? 'uint32_t_to_uint8_t' ( const uint8_t)
0:? 3 (const uint)
0:? 'uint64_t_to_uint8_t' ( const uint8_t)
0:? 4 (const uint64_t)
0:? 'float16_t_to_uint8_t' ( const uint8_t)
0:? 42.000000
0:? 'float32_t_to_uint8_t' ( const uint8_t)
0:? 13.000000
0:? 'float64_t_to_uint8_t' ( const uint8_t)
0:? -4.000000
0:? 'bool_to_uint16_t' ( const uint16_t)
0:? true (const bool)
0:? 'int8_t_to_uint16_t' ( const uint16_t)
0:? -1 (const int)
0:? 'int16_t_to_uint16_t' ( const uint16_t)
0:? -2 (const int)
0:? 'int32_t_to_uint16_t' ( const uint16_t)
0:? -3 (const int)
0:? 'int64_t_to_uint16_t' ( const uint16_t)
0:? -4 (const int64_t)
0:? 'uint8_t_to_uint16_t' ( const uint16_t)
0:? 1 (const int)
0:? 'uint16_t_to_uint16_t' ( const uint16_t)
0:? 2 (const int)
0:? 'uint32_t_to_uint16_t' ( const uint16_t)
0:? 3 (const uint)
0:? 'uint64_t_to_uint16_t' ( const uint16_t)
0:? 4 (const uint64_t)
0:? 'float16_t_to_uint16_t' ( const uint16_t)
0:? 42.000000
0:? 'float32_t_to_uint16_t' ( const uint16_t)
0:? 13.000000
0:? 'float64_t_to_uint16_t' ( const uint16_t)
0:? -4.000000
0:? 'bool_to_uint32_t' ( const uint)
0:? 1 (const uint)
0:? 'int8_t_to_uint32_t' ( const uint)
0:? -1 (const int)
0:? 'int16_t_to_uint32_t' ( const uint)
0:? -2 (const int)
0:? 'int32_t_to_uint32_t' ( const uint)
0:? 4294967293 (const uint)
0:? 'int64_t_to_uint32_t' ( const uint)
0:? 4294967292 (const uint)
0:? 'uint8_t_to_uint32_t' ( const uint)
0:? 1 (const int)
0:? 'uint16_t_to_uint32_t' ( const uint)
0:? 2 (const int)
0:? 'uint32_t_to_uint32_t' ( const uint)
0:? 3 (const uint)
0:? 'uint64_t_to_uint32_t' ( const uint)
0:? 4 (const uint)
0:? 'float16_t_to_uint32_t' ( const uint)
0:? 42 (const uint)
0:? 'float32_t_to_uint32_t' ( const uint)
0:? 13 (const uint)
0:? 'float64_t_to_uint32_t' ( const uint)
0:? 4294967292 (const uint)
0:? 'bool_to_uint64_t' ( const uint64_t)
0:? 1 (const uint64_t)
0:? 'int8_t_to_uint64_t' ( const uint64_t)
0:? -1 (const int)
0:? 'int16_t_to_uint64_t' ( const uint64_t)
0:? -2 (const int)
0:? 'int32_t_to_uint64_t' ( const uint64_t)
0:? 18446744073709551613 (const uint64_t)
0:? 'int64_t_to_uint64_t' ( const uint64_t)
0:? 18446744073709551612 (const uint64_t)
0:? 'uint8_t_to_uint64_t' ( const uint64_t)
0:? 1 (const int)
0:? 'uint16_t_to_uint64_t' ( const uint64_t)
0:? 2 (const int)
0:? 'uint32_t_to_uint64_t' ( const uint64_t)
0:? 3 (const uint64_t)
0:? 'uint64_t_to_uint64_t' ( const uint64_t)
0:? 4 (const uint64_t)
0:? 'float16_t_to_uint64_t' ( const uint64_t)
0:? 42 (const uint64_t)
0:? 'float32_t_to_uint64_t' ( const uint64_t)
0:? 13 (const uint64_t)
0:? 'float64_t_to_uint64_t' ( const uint64_t)
0:? 18446744073709551612 (const uint64_t)
0:? 'bool_to_float16_t' ( const float16_t)
0:? 1.000000
0:? 'int8_t_to_float16_t' ( const float16_t)
0:? -1 (const int)
0:? 'int16_t_to_float16_t' ( const float16_t)
0:? -2 (const int)
0:? 'int32_t_to_float16_t' ( const float16_t)
0:? -3.000000
0:? 'int64_t_to_float16_t' ( const float16_t)
0:? -4.000000
0:? 'uint8_t_to_float16_t' ( const float16_t)
0:? 1 (const int)
0:? 'uint16_t_to_float16_t' ( const float16_t)
0:? 2 (const int)
0:? 'uint32_t_to_float16_t' ( const float16_t)
0:? 3.000000
0:? 'uint64_t_to_float16_t' ( const float16_t)
0:? 4.000000
0:? 'float16_t_to_float16_t' ( const float16_t)
0:? 42.000000
0:? 'float32_t_to_float16_t' ( const float16_t)
0:? 13.000000
0:? 'float64_t_to_float16_t' ( const float16_t)
0:? -4.000000
0:? 'bool_to_float32_t' ( const float)
0:? 1.000000
0:? 'int8_t_to_float32_t' ( const float)
0:? -1 (const int)
0:? 'int16_t_to_float32_t' ( const float)
0:? -2 (const int)
0:? 'int32_t_to_float32_t' ( const float)
0:? -3.000000
0:? 'int64_t_to_float32_t' ( const float)
0:? -4.000000
0:? 'uint8_t_to_float32_t' ( const float)
0:? 1 (const int)
0:? 'uint16_t_to_float32_t' ( const float)
0:? 2 (const int)
0:? 'uint32_t_to_float32_t' ( const float)
0:? 3.000000
0:? 'uint64_t_to_float32_t' ( const float)
0:? 4.000000
0:? 'float16_t_to_float32_t' ( const float)
0:? 42.000000
0:? 'float32_t_to_float32_t' ( const float)
0:? 13.000000
0:? 'float64_t_to_float32_t' ( const float)
0:? -4.000000
0:? 'bool_to_float64_t' ( const double)
0:? 1.000000
0:? 'int8_t_to_float64_t' ( const double)
0:? -1 (const int)
0:? 'int16_t_to_float64_t' ( const double)
0:? -2 (const int)
0:? 'int32_t_to_float64_t' ( const double)
0:? -3.000000
0:? 'int64_t_to_float64_t' ( const double)
0:? -4.000000
0:? 'uint8_t_to_float64_t' ( const double)
0:? 1 (const int)
0:? 'uint16_t_to_float64_t' ( const double)
0:? 2 (const int)
0:? 'uint32_t_to_float64_t' ( const double)
0:? 3.000000
0:? 'uint64_t_to_float64_t' ( const double)
0:? 4.000000
0:? 'float16_t_to_float64_t' ( const double)
0:? 42.000000
0:? 'float32_t_to_float64_t' ( const double)
0:? 13.000000
0:? 'float64_t_to_float64_t' ( const double)
0:? -4.000000
Linked compute stage:
Shader version: 450
Requested GL_KHX_shader_explicit_arithmetic_types
local_size = (1, 1, 1)
0:? Sequence
0:48 Function Definition: main( ( global void)
0:48 Function Parameters:
0:? Linker Objects
0:? 'bool_init' ( const bool)
0:? true (const bool)
0:? 'int8_t_init' ( const int8_t)
0:? -1 (const int)
0:? 'int16_t_init' ( const int16_t)
0:? -2 (const int)
0:? 'int32_t_init' ( const int)
0:? -3 (const int)
0:? 'int64_t_init' ( const int64_t)
0:? -4 (const int64_t)
0:? 'uint8_t_init' ( const uint8_t)
0:? 1 (const int)
0:? 'uint16_t_init' ( const uint16_t)
0:? 2 (const int)
0:? 'uint32_t_init' ( const uint)
0:? 3 (const uint)
0:? 'uint64_t_init' ( const uint64_t)
0:? 4 (const uint64_t)
0:? 'float16_t_init' ( const float16_t)
0:? 42.000000
0:? 'float32_t_init' ( const float)
0:? 13.000000
0:? 'float64_t_init' ( const double)
0:? -4.000000
0:? 'bool_to_bool' ( const bool)
0:? true (const bool)
0:? 'int8_t_to_bool' ( const bool)
0:? -1 (const int)
0:? 'int16_t_to_bool' ( const bool)
0:? -2 (const int)
0:? 'int32_t_to_bool' ( const bool)
0:? true (const bool)
0:? 'int64_t_to_bool' ( const bool)
0:? true (const bool)
0:? 'uint8_t_to_bool' ( const bool)
0:? 1 (const int)
0:? 'uint16_t_to_bool' ( const bool)
0:? 2 (const int)
0:? 'uint32_t_to_bool' ( const bool)
0:? true (const bool)
0:? 'uint64_t_to_bool' ( const bool)
0:? true (const bool)
0:? 'float16_t_to_bool' ( const bool)
0:? true (const bool)
0:? 'float32_t_to_bool' ( const bool)
0:? true (const bool)
0:? 'float64_t_to_bool' ( const bool)
0:? true (const bool)
0:? 'bool_to_int8_t' ( const int8_t)
0:? true (const bool)
0:? 'int8_t_to_int8_t' ( const int8_t)
0:? -1 (const int)
0:? 'int16_t_to_int8_t' ( const int8_t)
0:? -2 (const int)
0:? 'int32_t_to_int8_t' ( const int8_t)
0:? -3 (const int)
0:? 'int64_t_to_int8_t' ( const int8_t)
0:? -4 (const int64_t)
0:? 'uint8_t_to_int8_t' ( const int8_t)
0:? 1 (const int)
0:? 'uint16_t_to_int8_t' ( const int8_t)
0:? 2 (const int)
0:? 'uint32_t_to_int8_t' ( const int8_t)
0:? 3 (const uint)
0:? 'uint64_t_to_int8_t' ( const int8_t)
0:? 4 (const uint64_t)
0:? 'float16_t_to_int8_t' ( const int8_t)
0:? 42.000000
0:? 'float32_t_to_int8_t' ( const int8_t)
0:? 13.000000
0:? 'float64_t_to_int8_t' ( const int8_t)
0:? -4.000000
0:? 'bool_to_int16_t' ( const int16_t)
0:? true (const bool)
0:? 'int8_t_to_int16_t' ( const int16_t)
0:? -1 (const int)
0:? 'int16_t_to_int16_t' ( const int16_t)
0:? -2 (const int)
0:? 'int32_t_to_int16_t' ( const int16_t)
0:? -3 (const int)
0:? 'int64_t_to_int16_t' ( const int16_t)
0:? -4 (const int64_t)
0:? 'uint8_t_to_int16_t' ( const int16_t)
0:? 1 (const int)
0:? 'uint16_t_to_int16_t' ( const int16_t)
0:? 2 (const int)
0:? 'uint32_t_to_int16_t' ( const int16_t)
0:? 3 (const uint)
0:? 'uint64_t_to_int16_t' ( const int16_t)
0:? 4 (const uint64_t)
0:? 'float16_t_to_int16_t' ( const int16_t)
0:? 42.000000
0:? 'float32_t_to_int16_t' ( const int16_t)
0:? 13.000000
0:? 'float64_t_to_int16_t' ( const int16_t)
0:? -4.000000
0:? 'bool_to_int32_t' ( const int)
0:? 1 (const int)
0:? 'int8_t_to_int32_t' ( const int)
0:? -1 (const int)
0:? 'int16_t_to_int32_t' ( const int)
0:? -2 (const int)
0:? 'int32_t_to_int32_t' ( const int)
0:? -3 (const int)
0:? 'int64_t_to_int32_t' ( const int)
0:? -4 (const int)
0:? 'uint8_t_to_int32_t' ( const int)
0:? 1 (const int)
0:? 'uint16_t_to_int32_t' ( const int)
0:? 2 (const int)
0:? 'uint32_t_to_int32_t' ( const int)
0:? 3 (const int)
0:? 'uint64_t_to_int32_t' ( const int)
0:? 4 (const int)
0:? 'float16_t_to_int32_t' ( const int)
0:? 42 (const int)
0:? 'float32_t_to_int32_t' ( const int)
0:? 13 (const int)
0:? 'float64_t_to_int32_t' ( const int)
0:? -4 (const int)
0:? 'bool_to_int64_t' ( const int64_t)
0:? 1 (const int64_t)
0:? 'int8_t_to_int64_t' ( const int64_t)
0:? -1 (const int)
0:? 'int16_t_to_int64_t' ( const int64_t)
0:? -2 (const int)
0:? 'int32_t_to_int64_t' ( const int64_t)
0:? -3 (const int64_t)
0:? 'int64_t_to_int64_t' ( const int64_t)
0:? -4 (const int64_t)
0:? 'uint8_t_to_int64_t' ( const int64_t)
0:? 1 (const int)
0:? 'uint16_t_to_int64_t' ( const int64_t)
0:? 2 (const int)
0:? 'uint32_t_to_int64_t' ( const int64_t)
0:? 3 (const int64_t)
0:? 'uint64_t_to_int64_t' ( const int64_t)
0:? 4 (const int64_t)
0:? 'float16_t_to_int64_t' ( const int64_t)
0:? 42 (const int64_t)
0:? 'float32_t_to_int64_t' ( const int64_t)
0:? 13 (const int64_t)
0:? 'float64_t_to_int64_t' ( const int64_t)
0:? -4 (const int64_t)
0:? 'bool_to_uint8_t' ( const uint8_t)
0:? true (const bool)
0:? 'int8_t_to_uint8_t' ( const uint8_t)
0:? -1 (const int)
0:? 'int16_t_to_uint8_t' ( const uint8_t)
0:? -2 (const int)
0:? 'int32_t_to_uint8_t' ( const uint8_t)
0:? -3 (const int)
0:? 'int64_t_to_uint8_t' ( const uint8_t)
0:? -4 (const int64_t)
0:? 'uint8_t_to_uint8_t' ( const uint8_t)
0:? 1 (const int)
0:? 'uint16_t_to_uint8_t' ( const uint8_t)
0:? 2 (const int)
0:? 'uint32_t_to_uint8_t' ( const uint8_t)
0:? 3 (const uint)
0:? 'uint64_t_to_uint8_t' ( const uint8_t)
0:? 4 (const uint64_t)
0:? 'float16_t_to_uint8_t' ( const uint8_t)
0:? 42.000000
0:? 'float32_t_to_uint8_t' ( const uint8_t)
0:? 13.000000
0:? 'float64_t_to_uint8_t' ( const uint8_t)
0:? -4.000000
0:? 'bool_to_uint16_t' ( const uint16_t)
0:? true (const bool)
0:? 'int8_t_to_uint16_t' ( const uint16_t)
0:? -1 (const int)
0:? 'int16_t_to_uint16_t' ( const uint16_t)
0:? -2 (const int)
0:? 'int32_t_to_uint16_t' ( const uint16_t)
0:? -3 (const int)
0:? 'int64_t_to_uint16_t' ( const uint16_t)
0:? -4 (const int64_t)
0:? 'uint8_t_to_uint16_t' ( const uint16_t)
0:? 1 (const int)
0:? 'uint16_t_to_uint16_t' ( const uint16_t)
0:? 2 (const int)
0:? 'uint32_t_to_uint16_t' ( const uint16_t)
0:? 3 (const uint)
0:? 'uint64_t_to_uint16_t' ( const uint16_t)
0:? 4 (const uint64_t)
0:? 'float16_t_to_uint16_t' ( const uint16_t)
0:? 42.000000
0:? 'float32_t_to_uint16_t' ( const uint16_t)
0:? 13.000000
0:? 'float64_t_to_uint16_t' ( const uint16_t)
0:? -4.000000
0:? 'bool_to_uint32_t' ( const uint)
0:? 1 (const uint)
0:? 'int8_t_to_uint32_t' ( const uint)
0:? -1 (const int)
0:? 'int16_t_to_uint32_t' ( const uint)
0:? -2 (const int)
0:? 'int32_t_to_uint32_t' ( const uint)
0:? 4294967293 (const uint)
0:? 'int64_t_to_uint32_t' ( const uint)
0:? 4294967292 (const uint)
0:? 'uint8_t_to_uint32_t' ( const uint)
0:? 1 (const int)
0:? 'uint16_t_to_uint32_t' ( const uint)
0:? 2 (const int)
0:? 'uint32_t_to_uint32_t' ( const uint)
0:? 3 (const uint)
0:? 'uint64_t_to_uint32_t' ( const uint)
0:? 4 (const uint)
0:? 'float16_t_to_uint32_t' ( const uint)
0:? 42 (const uint)
0:? 'float32_t_to_uint32_t' ( const uint)
0:? 13 (const uint)
0:? 'float64_t_to_uint32_t' ( const uint)
0:? 4294967292 (const uint)
0:? 'bool_to_uint64_t' ( const uint64_t)
0:? 1 (const uint64_t)
0:? 'int8_t_to_uint64_t' ( const uint64_t)
0:? -1 (const int)
0:? 'int16_t_to_uint64_t' ( const uint64_t)
0:? -2 (const int)
0:? 'int32_t_to_uint64_t' ( const uint64_t)
0:? 18446744073709551613 (const uint64_t)
0:? 'int64_t_to_uint64_t' ( const uint64_t)
0:? 18446744073709551612 (const uint64_t)
0:? 'uint8_t_to_uint64_t' ( const uint64_t)
0:? 1 (const int)
0:? 'uint16_t_to_uint64_t' ( const uint64_t)
0:? 2 (const int)
0:? 'uint32_t_to_uint64_t' ( const uint64_t)
0:? 3 (const uint64_t)
0:? 'uint64_t_to_uint64_t' ( const uint64_t)
0:? 4 (const uint64_t)
0:? 'float16_t_to_uint64_t' ( const uint64_t)
0:? 42 (const uint64_t)
0:? 'float32_t_to_uint64_t' ( const uint64_t)
0:? 13 (const uint64_t)
0:? 'float64_t_to_uint64_t' ( const uint64_t)
0:? 18446744073709551612 (const uint64_t)
0:? 'bool_to_float16_t' ( const float16_t)
0:? 1.000000
0:? 'int8_t_to_float16_t' ( const float16_t)
0:? -1 (const int)
0:? 'int16_t_to_float16_t' ( const float16_t)
0:? -2 (const int)
0:? 'int32_t_to_float16_t' ( const float16_t)
0:? -3.000000
0:? 'int64_t_to_float16_t' ( const float16_t)
0:? -4.000000
0:? 'uint8_t_to_float16_t' ( const float16_t)
0:? 1 (const int)
0:? 'uint16_t_to_float16_t' ( const float16_t)
0:? 2 (const int)
0:? 'uint32_t_to_float16_t' ( const float16_t)
0:? 3.000000
0:? 'uint64_t_to_float16_t' ( const float16_t)
0:? 4.000000
0:? 'float16_t_to_float16_t' ( const float16_t)
0:? 42.000000
0:? 'float32_t_to_float16_t' ( const float16_t)
0:? 13.000000
0:? 'float64_t_to_float16_t' ( const float16_t)
0:? -4.000000
0:? 'bool_to_float32_t' ( const float)
0:? 1.000000
0:? 'int8_t_to_float32_t' ( const float)
0:? -1 (const int)
0:? 'int16_t_to_float32_t' ( const float)
0:? -2 (const int)
0:? 'int32_t_to_float32_t' ( const float)
0:? -3.000000
0:? 'int64_t_to_float32_t' ( const float)
0:? -4.000000
0:? 'uint8_t_to_float32_t' ( const float)
0:? 1 (const int)
0:? 'uint16_t_to_float32_t' ( const float)
0:? 2 (const int)
0:? 'uint32_t_to_float32_t' ( const float)
0:? 3.000000
0:? 'uint64_t_to_float32_t' ( const float)
0:? 4.000000
0:? 'float16_t_to_float32_t' ( const float)
0:? 42.000000
0:? 'float32_t_to_float32_t' ( const float)
0:? 13.000000
0:? 'float64_t_to_float32_t' ( const float)
0:? -4.000000
0:? 'bool_to_float64_t' ( const double)
0:? 1.000000
0:? 'int8_t_to_float64_t' ( const double)
0:? -1 (const int)
0:? 'int16_t_to_float64_t' ( const double)
0:? -2 (const int)
0:? 'int32_t_to_float64_t' ( const double)
0:? -3.000000
0:? 'int64_t_to_float64_t' ( const double)
0:? -4.000000
0:? 'uint8_t_to_float64_t' ( const double)
0:? 1 (const int)
0:? 'uint16_t_to_float64_t' ( const double)
0:? 2 (const int)
0:? 'uint32_t_to_float64_t' ( const double)
0:? 3.000000
0:? 'uint64_t_to_float64_t' ( const double)
0:? 4.000000
0:? 'float16_t_to_float64_t' ( const double)
0:? 42.000000
0:? 'float32_t_to_float64_t' ( const double)
0:? 13.000000
0:? 'float64_t_to_float64_t' ( const double)
0:? -4.000000

View File

@@ -1,7 +1,7 @@
spv.16bitstorage-int.frag
// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 171
// Id's are bound by 172
Capability Shader
Capability StorageUniformBufferBlock16
@@ -204,7 +204,10 @@ spv.16bitstorage-int.frag
114: 20(int) Constant 7
115: 20(int) Constant 6
116: TypePointer Uniform 20(int)
166: 39(ivec2) ConstantComposite 32 33
166: 6(int16_t) Constant 1
167: 6(int16_t) Constant 2
168: 7(i16vec2) ConstantComposite 166 167
170: 6(int16_t) Constant 3
4(main): 2 Function None 3
5: Label
69(x0): 68(ptr) Variable Function
@@ -324,11 +327,9 @@ spv.16bitstorage-int.frag
164: 6(int16_t) Load 163
165: 28(ptr) AccessChain 19(b2) 21
Store 165 164
167: 7(i16vec2) SConvert 166
168: 42(ptr) AccessChain 19(b2) 32
Store 168 167
169: 6(int16_t) SConvert 58
170: 28(ptr) AccessChain 19(b2) 21
Store 170 169
169: 42(ptr) AccessChain 19(b2) 32
Store 169 168
171: 28(ptr) AccessChain 19(b2) 21
Store 171 170
Return
FunctionEnd

View File

@@ -205,8 +205,10 @@ spv.16bitstorage-uint.frag
115: 20(int) Constant 7
116: 20(int) Constant 6
117: TypePointer Uniform 9(int)
167: 39(ivec2) ConstantComposite 82 10
170: 9(int) Constant 3
167: 6(int16_t) Constant 1
168: 6(int16_t) Constant 2
169: 7(i16vec2) ConstantComposite 167 168
171: 6(int16_t) Constant 3
4(main): 2 Function None 3
5: Label
69(x0): 68(ptr) Variable Function
@@ -326,10 +328,8 @@ spv.16bitstorage-uint.frag
165: 6(int16_t) Load 164
166: 28(ptr) AccessChain 19(b2) 21
Store 166 165
168: 7(i16vec2) UConvert 167
169: 42(ptr) AccessChain 19(b2) 32
Store 169 168
171: 6(int16_t) UConvert 170
170: 42(ptr) AccessChain 19(b2) 32
Store 170 169
172: 28(ptr) AccessChain 19(b2) 21
Store 172 171
Return

View File

@@ -1,7 +1,7 @@
spv.16bitstorage.frag
// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 173
// Id's are bound by 172
Capability Shader
Capability StorageUniformBufferBlock16
@@ -204,9 +204,10 @@ spv.16bitstorage.frag
114: 20(int) Constant 7
115: 20(int) Constant 6
116: TypePointer Uniform 20(int)
166: 37(float) Constant 1073741824
167: 40(fvec2) ConstantComposite 83 166
170: 37(float) Constant 1077936128
166:6(float16_t) Constant 15360
167:6(float16_t) Constant 16384
168: 7(f16vec2) ConstantComposite 166 167
170:6(float16_t) Constant 16896
4(main): 2 Function None 3
5: Label
70(x0): 69(ptr) Variable Function
@@ -326,11 +327,9 @@ spv.16bitstorage.frag
164:6(float16_t) Load 163
165: 28(ptr) AccessChain 19(b2) 21
Store 165 164
168: 7(f16vec2) FConvert 167
169: 43(ptr) AccessChain 19(b2) 32
Store 169 168
171:6(float16_t) FConvert 170
172: 28(ptr) AccessChain 19(b2) 21
Store 172 171
171: 28(ptr) AccessChain 19(b2) 21
Store 171 170
Return
FunctionEnd

View File

@@ -1,7 +1,7 @@
spv.8bitstorage-int.frag
// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 171
// Id's are bound by 172
Capability Shader
Capability CapabilityUniformAndStorageBuffer8BitAccess
@@ -203,7 +203,10 @@ spv.8bitstorage-int.frag
114: 20(int) Constant 7
115: 20(int) Constant 6
116: TypePointer Uniform 20(int)
166: 39(ivec2) ConstantComposite 32 33
166: 6(int8_t) Constant 1
167: 6(int8_t) Constant 2
168: 7(i8vec2) ConstantComposite 166 167
170: 6(int8_t) Constant 3
4(main): 2 Function None 3
5: Label
69(x0): 68(ptr) Variable Function
@@ -323,11 +326,9 @@ spv.8bitstorage-int.frag
164: 6(int8_t) Load 163
165: 28(ptr) AccessChain 19(b2) 21
Store 165 164
167: 7(i8vec2) SConvert 166
168: 42(ptr) AccessChain 19(b2) 32
Store 168 167
169: 6(int8_t) SConvert 58
170: 28(ptr) AccessChain 19(b2) 21
Store 170 169
169: 42(ptr) AccessChain 19(b2) 32
Store 169 168
171: 28(ptr) AccessChain 19(b2) 21
Store 171 170
Return
FunctionEnd

View File

@@ -204,8 +204,10 @@ spv.8bitstorage-uint.frag
115: 20(int) Constant 7
116: 20(int) Constant 6
117: TypePointer Uniform 9(int)
167: 39(ivec2) ConstantComposite 82 10
170: 9(int) Constant 3
167: 6(int8_t) Constant 1
168: 6(int8_t) Constant 2
169: 7(i8vec2) ConstantComposite 167 168
171: 6(int8_t) Constant 3
4(main): 2 Function None 3
5: Label
69(x0): 68(ptr) Variable Function
@@ -325,10 +327,8 @@ spv.8bitstorage-uint.frag
165: 6(int8_t) Load 164
166: 28(ptr) AccessChain 19(b2) 21
Store 166 165
168: 7(i8vec2) UConvert 167
169: 42(ptr) AccessChain 19(b2) 32
Store 169 168
171: 6(int8_t) UConvert 170
170: 42(ptr) AccessChain 19(b2) 32
Store 170 169
172: 28(ptr) AccessChain 19(b2) 21
Store 172 171
Return