Commit Graph

3456 Commits

Author SHA1 Message Date
Jeff Bolz
c1ad396258 Avoid generating 8/16-bit constants when 8/16-bit arithmetic extensions aren't enabled 2019-07-10 15:04:29 -05:00
John Kessenich
f970253a5d
Merge pull request #1827 from alan-baker/update-spirv-tools
Update spirv tools
2019-07-10 11:45:48 -06:00
John Kessenich
8aa9a7bb8f
Merge pull request #1825 from amdrexu/bugfix
Change implementation of gl_SIMDGroupSizeAMD
2019-07-09 00:14:27 -06:00
Alan Baker
87dd98f0e9 Test updates 2019-07-08 14:14:23 -04:00
Alan Baker
5a391cc57c Update SPIRV-Tools revision 2019-07-08 14:14:13 -04:00
Rex Xu
e085d83427 Change implementation of gl_SIMDGroupSizeAMD 2019-07-06 23:40:10 +08:00
John Kessenich
96524f9168 SPV: Fix #1783: Don't do bounds checking for spec-const-expression size
It's okay for symbolic spec-consts, but without constant folding,
not okay when the array size is an expression.
2019-07-03 09:37:25 -06:00
John Kessenich
4b4b41a634 HLSL: Fix #1815: Don't constant fold spec-constant array indexing. 2019-07-03 01:28:51 -06:00
John Kessenich
22683b409e
Merge pull request #1819 from jeffbolznv/demote
update spirv-headers to pick up demote_to_helper_invocation
2019-07-02 11:04:44 -06:00
Jeff Bolz
6a50a7850d update spirv-headers to pick up demote_to_helper_invocation 2019-07-02 10:58:15 -05:00
John Kessenich
e5c394bcba Standalone: Fix #1814: Check that linkage was specified for reflection. 2019-07-02 09:47:42 -06:00
John Kessenich
974a586688
Merge pull request #1817 from jeffbolznv/demote
Implement GL_EXT_demote_to_helper_invocation
2019-07-02 02:20:18 -06:00
John Kessenich
73f0108138 Build: Tweak PR #1808 to avoid an implicit conversion warning. 2019-07-02 01:51:50 -06:00
Jeff Bolz
ba6170b534 Implement GL_EXT_demote_to_helper_invocation 2019-07-01 09:36:15 -05:00
John Kessenich
4162de4bbf
Merge pull request #1811 from ShabbyX/fix
Remove extraneous semicolons
2019-06-26 00:53:18 -06:00
John Kessenich
1e063615d0
Merge pull request #1812 from ShabbyX/master
Remove __DATE__ and __TIME__ usage
2019-06-26 00:52:12 -06:00
Jeff Bolz
531344905f Handle SPIR-V type mismatch when constructing a composite 2019-06-25 13:32:35 -05:00
Shahbaz Youssefi
f4edb8f820 Remove __DATE__ and __TIME__ usage
These macros result in a non-deterministic build.  In chromium, these
macros are specifically set to empty, resulting in a compile error.
2019-06-25 13:20:42 -04:00
Shahbaz Youssefi
6cca0e983e Remove extraneous semicolons
They cause a warning (-Wextra-semi) that can lead to a compile error
(-Werror).
2019-06-25 13:20:16 -04:00
John Kessenich
4e6b9ea329
Merge pull request #1808 from jeffbolznv/promote_types
Handle all basic scalar types in promoteConstantUnion
2019-06-23 09:10:16 -06:00
Jeff Bolz
4b5c498923 Add a bunch of missing cases to promoteConstantUnion. Use macros to expand all the cases more simply. 2019-06-22 22:28:25 -05:00
John Kessenich
46cf14638a
Merge pull request #1807 from digit-google/fuchsia-fixes
BUILD.gn: Fix file for use with Fuchsia platform build.
2019-06-22 20:45:18 -06:00
Jeff Bolz
8912336663 Add test for constant type conversion 2019-06-21 23:32:25 -05:00
David 'Digit' Turner
1f5799c155 BUILD.gn: Fix file for use with Fuchsia platform build.
In order to upgrade the version of glslang used by the
Fuchsia platform source tree, BUILD.gn needs to be
slightly modified to care about the case where it is
not used with the Chromium //build configuration:

- Remove a new compiler warning to ensure proper
  compilation with -Werror (which is the default).

- Add a build target for spirv-remap, which is used
  by Fuchsia at build time to optimize the precompiled
  shaders of some of its graphics libraries.
2019-06-21 16:00:30 +02:00
John Kessenich
f9d08a25fb
Merge pull request #1804 from KhronosGroup/fix-930-subgroup--mask-ops
AST/SPV: Fix #930: translate uvec4 <-> uint64 for SubgroupGeMask et. al.
2019-06-18 02:00:46 -06:00
John Kessenich
8e96e247fa Bump revision. 2019-06-18 00:37:51 -06:00
John Kessenich
9c14f77f5d AST/SPV: Fix #930: translate uvec4 <-> uint64 for SubgroupGeMask et. al.
On reading built-in variables SubgroupEqMask, SubgroupGeMask, SubgroupGtMask,
SubgroupLeMask, and SubgroupLtMask, the AST expects 64-bit ints, while SPIR-V
is defined as vectors of 32-bit ints.

The declaration type has to be translated in the opposite direction.
2019-06-18 00:36:17 -06:00
John Kessenich
11805e41d9 Bump revision. 2019-06-18 00:33:46 -06:00
John Kessenich
a9b00ac5d5
Merge pull request #1806 from KhronosGroup/nan-clamp
SPV: Add a switch for favoring non-NaN operands in min, max, and clamp.
2019-06-18 00:26:25 -06:00
John Kessenich
5d73a3c95c
Merge pull request #1698 from jeffbolznv/private_storage_variables
Add Float16/Int8/Int16 capabilities for private variables and function parameters
2019-06-17 23:42:13 -06:00
John Kessenich
605afc7b1b SPV: Add a switch for favoring non-NaN operands in min, max, and clamp. 2019-06-17 23:33:09 -06:00
John Kessenich
d579c0a7d4 Bump revision. 2019-06-17 22:33:11 -06:00
John Kessenich
9db72785be
Merge pull request #1803 from Igalia/siglesias/fix-gl_SubGroupSizeARB-tese-geom
Fix gl_SubGroupSizeARB builtin treatment
2019-06-17 09:16:02 -06:00
Samuel Iglesias Gonsálvez
2cfde2bdbe Delete duplicated gl_SubGroupSizeARB builtin treatment
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
2019-06-17 16:05:52 +02:00
John Kessenich
def9662348
Merge pull request #1796 from Igalia/siglesias/fix-gl_SubGroupSizeARB-tese-geom
Add missing GL_ARB_shader_ballot builtins to Geometry and Tessellatio…
2019-06-16 23:02:02 -06:00
John Kessenich
69596baef3
Merge pull request #1799 from jeffbolznv/volatile_semantics
Add gl_SemanticsVolatile to GL_KHR_memory_scope_semantics, and make volatile-qualified atomics generate MemorySemanticsVolatile when using the Vulkan memory model
2019-06-16 22:31:16 -06:00
Samuel Iglesias Gonsálvez
dbe6b06dde Add missing GL_ARB_shader_ballot builtins to Geometry and Tessellation shaders
When processing Geometry and Tessellation Control/Evaluation shaders,
the builtins defined by GL_ARB_shader_ballot were not processed by
glslang. This specially a problem for gl_SubGroupSizeARB because, it is
treated as shader input instead of uniform on Vulkan.

Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
2019-06-15 12:55:50 +02:00
Jeff Bolz
38a52fca93 Add gl_SemanticsVolatile to GL_KHR_memory_scope_semantics, and make volatile-qualified atomics generate MemorySemanticsVolatile when using the Vulkan memory model 2019-06-14 09:57:01 -05:00
John Kessenich
96ee92f09b
Merge pull request #1797 from alan-baker/update-tools
Update tools
2019-06-13 09:48:47 -06:00
Alan Baker
e86cc18e8c Update test expectations for new SPIRV-Tools 2019-06-13 08:54:31 -04:00
Alan Baker
4d8df4f636 Update known good SPIRV-Tools 2019-06-13 08:54:01 -04:00
John Kessenich
9866ad9195
Merge pull request #1787 from dgkoch/add_sm_builtins
Support GL_NV_shader_sm_builtins
2019-06-09 20:50:07 -06:00
Daniel Koch
2cb2f197a7 Add support for GL_NV_shader_sm_builtins
Including spirv and AST tests

Also increase size of TBuiltInVariable bitfields since we've now exceeded 127
and add a static_assert to make this easier to find next time it happens!
2019-06-08 08:53:11 -04:00
John Kessenich
92b5c9ee91 GLSL: Revert f6873f7 to fix #1764. 2019-06-08 04:30:46 -06:00
John Kessenich
60e774b22f
Merge pull request #1794 from jeffbolznv/pre_legalization
Use spvValidatorOptionsSetBeforeHlslLegalization for pre-legalized HLSL
2019-06-08 04:04:15 -06:00
John Kessenich
f575f4c8e4
Merge pull request #1793 from greg-lunarg/kg104
Uppdate spirv-tools known-good
2019-06-08 02:06:33 -06:00
Jeff Bolz
fd556e32b3 Use spvValidatorOptionsSetBeforeHlslLegalization for pre-legalized HLSL 2019-06-07 14:42:08 -05:00
Greg Fischer
21eebe7421 Uppdate spirv-tools known-good 2019-06-06 13:18:08 -06:00
Canon lee
fc017379e3 code format refine 2019-06-07 00:16:31 +08:00
Roy
a137d2ba86 Add interface symbol and uniform symbol location auto mapping for OpenGL shader. 2019-06-06 17:54:04 +08:00