4329 Commits

Author SHA1 Message Date
Greg Fischer
eb92526d5e
Merge pull request #2719 from ZhiqianXia/GL_EXT_shader_integer_mix
Add the preamble for GL_EXT_shader_integer_mix
2021-11-02 11:03:45 -06:00
ZhiqianXia
e76116982a Add the GL_EXT_shader_integer_mix Preamble for glsl.
Signed-off-by: ZhiqianXia <xzq0528@outlook.com>
2021-11-02 14:39:28 +08:00
Greg Fischer
77d680e1c3
Merge pull request #2712 from ZhiqianXia/switch_error
glslang should report a error for Feature: last case/default label not followed by statements'.
2021-11-01 10:19:09 -06:00
ZhiqianXia
1de2d1745b To be compatible with Feature: 'last case/default label not followed by statements'.
Signed-off-by: ZhiqianXia <xzq0528@outlook.com>
2021-10-28 09:23:19 +08:00
Greg Fischer
d1608ab1ef
Merge pull request #2796 from greg-lunarg/i2793
Remove support for double trig, pow, exp and log
2021-10-27 13:28:57 -06:00
Greg Fischer
432a43cccb Remove support for double trig, pow, exp and log
These are not supported in core GLSL or under any extension

Fixes 2793
2021-10-27 11:59:26 -06:00
Greg Fischer
44b57597d8
Merge pull request #2792 from jeremy-lunarg/hayes-2760
Return new allocator for copied containers
2021-10-26 10:52:19 -06:00
Jeremy Hayes
c9cc4845b9 Return new allocator for copied containers
Fix #2760.

Implement the optional function select_on_container_copy_contruction to
return a default-contructed allocator for containers that are
copy-constructed. This gives copy-constructed containers a pool
allocator for the current thead.

There may be a similar problem with the copy contructor which takes
allocators of type "Other" but, in practice, there is only one place
where this is being used and the allocators are always the same. (i.e.
executing from the same thread)
2021-10-25 10:59:27 -06:00
Greg Fischer
3afa350331
Merge pull request #2780 from kevin-mccullough/FixCrossStageCheck
Fix cross-stage check to allow subsequent stage to use previous stage's binding
2021-10-22 14:44:10 -06:00
Greg Fischer
38fd9221db
Merge pull request #2777 from amdrexu/bugfix
Make modifications of GL_EXT_spirv_intrinsics
2021-10-21 12:59:22 -06:00
Greg Fischer
9290474dcf
Merge pull request #2787 from greg-lunarg/i2779
Allow 8/16-bit integer as array index
2021-10-20 18:26:59 -06:00
Greg Fischer
8020da3f18
Merge pull request #2788 from alelenv/iomapper_sr_fix
Skip auto decorating shader record buffer blocks with 'set' and 'binding'.
2021-10-20 16:28:11 -06:00
Greg Fischer
a450fe757b
Merge pull request #2789 from greg-lunarg/i2785
Accept gl_ViewportMask in version 430 and later
2021-10-20 15:17:21 -06:00
Greg Fischer
82b2668d58 Allow 8/16-bit integer as array index
Also enable 8/16 bit int capability in SPIR-V in such cases.

Also enable 64 bit capabilities when used in operations.

Fixes #2779
2021-10-20 15:15:30 -06:00
Greg Fischer
6639be7c2d Accept gl_ViewportMask in version 430 and later
Was previously accepted only in 450 or later.

Fixes #2785
2021-10-20 13:51:23 -06:00
alelenv
c571cd8f89 Skip auto decorating shader record buffer blocks with 'set' and
'binding'.
2021-10-19 20:59:35 -07:00
Greg Fischer
6351fcef28
Merge pull request #2786 from dneto0/current-source-dir
Fix Cmake rule for extension header generation
2021-10-19 17:09:56 -06:00
David Neto
36333d1fb9 Fix Cmake rule for extension header generation
Allow glslang to be embedded in an enclosing project (such as Shaderc)
2021-10-19 17:32:52 -04:00
Greg Fischer
2598bc7a5b
Merge pull request #2783 from chrisforbes/untangle
Untangle use of core glslang version enums in SpvPostProcess
2021-10-19 11:20:42 -06:00
Greg Fischer
7f1d926a3a
Merge pull request #2749 from AaronHaganAMD/master
GL_EXT_spirv_intrinsics port of GL_EXT_shader_realtime_clock
2021-10-18 15:14:07 -06:00
amhagan
035a3bbc4a GL_EXT_spirv_intrinsics - Port extensions
Add mechanism to use GL_EXT_spirv_intrinsics headers in glslang.
Ported GL_EXT_shader_realtime_clock as an example.
2021-10-15 14:13:08 -04:00
Rex Xu
07aec25f82 Make modifications of GL_EXT_spirv_intrinsics
1. spirv_execution_mode_id and spirv_decorate_id could support
   specialization constants. The original implementation always
   assume only normal frontend constants are valid. It is not true.

2. spirv_type donesn't support type_specifier as an option of
   spirv_type_parameter. At present, only constant_expression is the
   valid option.
2021-10-15 20:22:36 +08:00
Chris Forbes
dd097e5adb Untangle use of core glslang version enums in SpvPostProcess
This is the only thing requiring GlslangToSpv.h to be included here.

Change-Id: I72e9e278aa1e6d717e83f9dbf11e089aafe2eb0e
2021-10-14 08:43:34 -07:00
Kevin McCullough
d3567231eb Fix cross-stage check to allow subsequent stage to use previous stage's binding 2021-10-13 14:57:06 -07:00
Greg Fischer
b9ba4c5743
Merge pull request #2770 from ncesario-lunarg/ncesario-cmake-endif
cmake: Remove "conditions" from endif
2021-10-07 12:33:37 -06:00
Greg Fischer
c8cdbac705
Merge pull request #2771 from mbechard/master
rename member variable for clarity
2021-10-06 10:15:06 -06:00
Nathaniel Cesario
c8ef4f8a9f cmake: Remove "conditions" from endif
See https://cmake.org/cmake/help/latest/command/endif.html and
https://cmake.org/cmake/help/latest/command/if.html.

If the else/endif condition does not match the if condition verbatim,
an error is produced on some versions of cmake. This change removes
these "legacy conditions."
2021-09-30 11:00:09 -06:00
Malcolm Bechard
7b57c6e32a rename member variable for clarity
it's a little strange how the resolver takes an arbitrary intermediate
in it's constructor. Really this should be an 'options' object that
holds the various resolve/remapping options which are read from this
intermediate.
At least for now rename it so it's more clear it's used differently from
other intermediates that are accessed in the resolver (such as the per
stage ones).
2021-09-29 15:31:28 -04:00
Greg Fischer
581897f462
Merge pull request #2768 from greg-lunarg/i2744
Fix variable scoping of do-while
2021-09-24 13:27:08 -06:00
Greg Fischer
994987bc90 Fix variable scoping of do-while
Fixes #2744
2021-09-24 10:48:52 -06:00
Greg Fischer
fb0e4983e4
Merge pull request #2767 from greg-lunarg/i2763
Fix unreachable code in getSampledType()
2021-09-23 10:41:34 -06:00
Greg Fischer
3d03b7822e
Scalarize vector readFirstInvocationARB (#2766)
Fixes #2761
2021-09-23 10:40:43 -06:00
Greg Fischer
4ea41b650d Fix unreachable code in getSampledType()
Fixed #2763
2021-09-22 15:16:30 -06:00
Malcolm Bechard
3f04389a18
Auto push constant blocks (#2764)
* add ability to upgrade uniform block to push constants assuming it fits within the size limit imposed by the caller
* allow selecting the packing for the auto push constants
* check the size using the potential layout packing of the push constants
2021-09-22 11:41:10 -06:00
Greg Fischer
c2604615f4
Merge pull request #2685 from kevin-mccullough/FixIsIoResizeArrayTesselationStageHandling
Fix isIoResizeArray() tessellation stage handling
2021-09-21 16:29:30 -06:00
Greg Fischer
6baa85f6ce
Merge pull request #2762 from greg-lunarg/2757
Fix SPIR-V for HLSL SampleBias
2021-09-20 10:14:47 -06:00
Greg Fischer
8b87b84001 Fix SPIR-V for SampleBias
Fixes #2757
2021-09-17 17:22:39 -06:00
Greg Fischer
0f886fe7d3
Merge pull request #2759 from mbechard/vkRelaxed-RetargetID
GL_EXT_vulkan_glsl_relaxed - retarget gl_VertexID to gl_VertexIndex
2021-09-17 13:58:48 -06:00
Greg Fischer
cce85320a8
Merge pull request #2756 from mbechard/vkRelaxed-AvoidDuplicateUniform
GL_EXT_vulkan_glsl_relaxed - avoid growing the global uniform block with duplicates
2021-09-17 13:58:04 -06:00
Malcolm Bechard
05794b46a7 GL_EXT_vulkan_glsl_relaxed - retarget gl_VertexID to gl_VertexIndex
instead of allowing for multiple declarations of the variable in the
resulting SPIR-V, instead use a retargeted mechanism to cause references
to gl_VertexID and gl_InstanceID to use the gl_VertexIndex and
gl_InstanceIndex symbol.
2021-09-16 17:40:49 -04:00
Malcolm Bechard
d3bff63cae avoid growing the global uniform block with duplicates
When using GL_EXT_vulkan_glsl_relaxed, check to see if a
uniform already exists in the block uniform block, and if so,
ensure they are the same type. Otherwise, avoid growing the block
with a duplicate.
2021-09-15 23:39:02 -04:00
Greg Fischer
80dcc36907
Merge pull request #2745 from jeremy-lunarg/hayes-fix-warnings
Fix GCC warnings
2021-09-15 11:09:14 -06:00
Greg Fischer
14943d4e7d
Merge pull request #2752 from InsertAReallyCreativeNameHere/master
Change MINGW_HAS_SECURE_API checks.
2021-09-15 10:57:44 -06:00
Greg Fischer
07c5392f50
Merge pull request #2755 from greg-lunarg/2748
Run update_precision() on array and matrix constructors.
2021-09-15 09:42:34 -06:00
Greg Fischer
62ed14518f Run update_precision() on array and matrix constructors. 2021-09-14 12:17:58 -06:00
InsertAReallyCreativeNameHere
12e27e17de
Change MINGW_HAS_SECURE_API checks.
MINGW_HAS_SECURE_API can be defined as 0, but this will be ignored here without this change.
Without these *_s "safe" functions, this code will also build on Windows XP.
2021-09-09 06:43:23 +10:00
Greg Fischer
e0771b5d4c
Merge pull request #2747 from greg-lunarg/i2740
Perform update_precision on constructors and converts
2021-09-02 16:11:37 -06:00
Greg Fischer
8ef6a4cb4d Perform update_precision on constructors and converts
Fixes #2740
2021-09-02 14:18:51 -06:00
Jeremy Hayes
012436d680 Fix GCC warnings
Fix -Wsign-compare warnings.
Fix -Wunused-parameter warnings.
2021-08-31 16:40:35 -06:00
Greg Fischer
2fb89a0072
Merge pull request #2738 from greg-lunarg/kg119
Update known goods and CHANGES for 11.6.0
2021-08-25 15:21:08 -06:00