Граф коммитов

3140 Коммитов

Автор SHA1 Сообщение Дата
Nico Weber 76577b1aec Fix -Wextra-semi warnings in headers used in Chromium 2019-02-21 11:05:21 -05:00
John Kessenich 58d6905ea0
Merge pull request #1700 from KhronosGroup/fix-pp
PP: Remove sub-tokens in macro recording and record spaces correctly.
2019-02-19 23:57:06 +07:00
John Kessenich 6225dd4ba1 PP: Faithfully track white-space through macro record/use, fixing bugs:
This fixes the comparison in macro body redefinitions, where initial
white-space differences do not matter, but internal white-space differences
do matter.
2019-02-19 07:26:54 -07:00
John Kessenich 5cdf3c5a23 PP: Non-functional: Remove the sub-tokenization of macro stream record.
This has been a continually fragile area. Switching to a vector of real
objects, instead of a linearized stream of characters, removes a bunch of
code and generally makes this area more robust.
2019-02-19 07:26:36 -07:00
John Kessenich bce1f51096 Build: Fix #1640: Change strcpy to snprintf. 2019-02-18 22:25:58 -07:00
John Kessenich 9f538c7207
Merge pull request #1696 from baldurk/fix-nonblock-array-size
Fix treatment of array input/output variables in reflection
2019-02-17 13:15:11 +07:00
John Kessenich 6fee94460f PP: Fix #1694: Rationalize errors on partially expanded macro argument. 2019-02-16 07:35:13 -07:00
John Kessenich da1be9a322
Merge pull request #1697 from sparmarNV/fix-NV_mesh_shader
Fix resizing of gl_PrimitiveIndicesNV[] to max_primitives*geomSize
2019-02-14 17:49:29 +07:00
Sahil Parmar 6708b0ee82 Handle resizing/error checks for mesh shader out arrays 2019-02-13 17:40:27 -08:00
Sahil Parmar 9466850f54 Update gtest to explicitly size gl_PrimitiveIndicesNV[] 2019-02-12 12:27:21 -08:00
Sahil Parmar ab027bef3d Fix resizing of gl_PrimitiveIndicesNV[] to max_primitives*geomSize
- This change also allows redeclaration of gl_PrimitiveIndicesNV and
  adds error checks against incorrect explicit array size.
- Also modifies gtests to check array bound limits and redeclare gl_PrimitiveIndicesNV[].
2019-02-11 15:15:33 -08:00
baldurk 879562b766 Fix treatment of array input/output variables in reflection
* Non-block arrays should not be ignored when exploding types.
* When not exploding, set the array size correctly on each item.
2019-02-11 16:39:12 +00:00
John Kessenich 05d12a9461
Merge pull request #1695 from baldurk/explode-reflected-io-blocks
Add option to unwrap I/O block aggregates in reflection
2019-02-11 22:08:10 +07:00
baldurk 1905069857 Add option to unwrap I/O block aggregates in reflection
* We follow similar rules to uniform block exploding.
2019-02-11 11:53:52 +00:00
John Kessenich 567396b6b4 Whitespace: Fix some tabs->spaces, mostly to retriggered failed bots. 2019-02-11 03:43:12 -07:00
John Kessenich 9840f11f85 PP: Fix #1694: Handle badly formed argument substitution.
Also added a warning for no space after a macro name.
2019-02-11 03:05:00 -07:00
John Kessenich d83344fc4e
Merge pull request #1684 from baldurk/reflection-interface-improve
Opt-in improvements to reflection interface
2019-02-09 12:59:30 +07:00
baldurk 4513df9175 Reflow for better readability 2019-02-08 10:48:48 +00:00
John Kessenich f6e7c4d2de Bump version. 2019-02-07 23:56:53 -07:00
John Kessenich 377bccb143 Build: Fix #1665: remove __fastcall 2019-02-07 23:28:37 -07:00
John Kessenich 1ff8346b38
Merge pull request #1693 from sparmarNV/fix-NV_mesh_shader
Add missing support for gl_MeshViewCountNV/gl_MeshViewIndicesNV in task shaders
2019-02-08 11:34:47 +07:00
Sahil Parmar 3958927a59 Add missing support for gl_MeshViewCountNV/gl_MeshViewIndicesNV in task shaders 2019-02-07 14:28:12 -08:00
John Kessenich 9dda1281e6
Merge pull request #1692 from alan-baker/update-spvtools
Update SPIRV-Tools and tests expectations
2019-02-07 10:27:58 +07:00
Alan Baker aeeaf08f02 Update expected test results 2019-02-06 14:18:19 -05:00
Alan Baker 75f443bdc8 Update SPIRV-Tools version 2019-02-06 14:17:51 -05:00
baldurk a972e73ad7 Add option to reflect all block members, inactive or active.
* The stages mask is more fine-grained, and each variable or block's mask
  indicates which stages it's active in.
2019-02-04 12:02:59 +00:00
baldurk 657acc0c40 Add option to reflect buffer blocks & variables separately to uniforms
* Also note the uniform indices of atomic counter buffers
2019-02-04 12:02:59 +00:00
baldurk 4a2aa82236 Reflect array stride, top-level array stride, and block member count 2019-02-04 12:02:59 +00:00
baldurk 0af5e3e346 Reflect pipeline outputs as well as inputs, optionally from other stages
* We add an option to reflect inputs from other stages than vertex, if only a
  later subset of the stages is linked into the program.
2019-02-04 12:02:59 +00:00
baldurk edf8212ab8 Add an option to report array variables with trailing [0] suffix
* This is as expected by ARB_program_interface_query
2019-02-04 11:21:09 +00:00
baldurk 15c37f79a9 Include array index in reflected uniform names more consistently
* This comes from the resolution of issues 4, 5 & 6 in
  ARB_program_interface_query, stating that uniform buffers should have their
  members expanded out as normal and arrays should have elements added.
* If a buffer block has a large array e.g. [10000] we don't want to iterate over
  every array element. Instead we should only expand out the first [0] element,
  then expand as normal from there.
* The array name should still be appended with [0] to indicate that it's an
  array.
2019-02-04 11:21:09 +00:00
baldurk 6d47785825 Add options to control how reflection information is built 2019-02-04 11:21:09 +00:00
baldurk 1dc5dcf0a5 Move TObjectReflection into public interface to clean up reflection
* Forwarding functions are left to preserve source compatibility with code using
  the old queries.
2019-02-04 11:21:07 +00:00
John Kessenich 9983f99e87
Merge pull request #1687 from Igalia/apinheiro/no-more-struct-member-offsets
ParseHelper: don't assign xfb_offset for struct members
2019-02-03 23:22:21 +07:00
John Kessenich e7c7c6d659
Merge pull request #1667 from amdrexu/bugfix
Add 8-bit/16-bit transform feedback support for future use
2019-02-03 23:05:42 +07:00
Rex Xu eaf31ab98c Add 8-bit/16-bit transform feedback support for future use 2019-02-03 23:31:32 +08:00
John Kessenich dc2d5673a1
Merge pull request #1690 from BinaryRK/relative-include-fix
Use relative include paths in StandAlone/ResourceLimits.h
2019-02-03 10:32:33 +07:00
BinaryRK 0d5c86644a Switch to relative include path for ResourceLimits 2019-02-02 16:18:49 +02:00
John Kessenich 4f50a46385
Merge pull request #1688 from mattparks/patch-1
Switched to std::string for TReflection and TObjectReflection
2019-02-01 06:28:20 -08:00
John Kessenich de3b8e3bf3 Fix #1682: flesh out more vulkan/SPV ModuleProcessed 2019-02-01 04:09:38 -07:00
John Kessenich f96d7dc2c0
Merge pull request #1686 from mspang/glslang-fuchsia-build
Port Unix/ossource.cpp to Fuchsia
2019-01-31 23:27:01 -08:00
John Kessenich 1694883215
Merge pull request #1685 from baldurk/warning-fix
Fix a couple of warnings clang found
2019-01-31 22:44:19 -08:00
John Kessenich 32651b86e6
Merge pull request #1683 from null77/disable-extra-semi
Disable Clang extra semicolon warning.
2019-01-31 22:43:32 -08:00
Matthew Albrecht 91af94019a Switched to std::string for TReflection and TObjectReflection
In MSVC 2017 Debug mode when a reflection is deleted (when a shader goes out of scope) xutility will fail to clear the children due to the TString allocator implementation. By switching to std::string xutility no longer throws the error.
2019-01-31 22:53:35 -06:00
Alejandro Piñeiro 0f66082d1d ParseHelper: don't assign xfb_offset for struct members
This commit undoes the code on the commit "ParseHelper: assign
xfb_offset for struct members too" (commit
af8c1bdb16), except the method renaming,
and updates the tests.

During the review of the implementation of Vulkan extension
VK_EXT_transform_feedback for the Linux Intel driver, it was pointed
that the Vulkan environment spec for SPIR-V only ever refers to block
or block members being decorated. It would be strange to not do the
same for OpenGL (ARB_gl_spirv). That would also fit better to what
GLSL does, where setting explicit xfb offsets for struct members is
not allowed.

FWIW, the original patch was proposed based on the fact that
ARB_gl_spirv is relying on OpenGL for how xfb offsets should be
assigned to members, and it was not clear (at least to me) which is
the responsible of such.
2019-01-31 17:09:30 +01:00
Michael Spang d39c040df9 Port Unix/ossource.cpp to Fuchsia
Fuchsia has pthreads but doesn't have sys/resource.h and doesn't
implement pthread_cleanup_push().

ANGLE bug: 2475
2019-01-30 15:15:11 -05:00
baldurk 6a87400c14 Add missing override specifiers in virtual class 2019-01-30 17:29:46 +00:00
baldurk 332b173c82 Fix mismatched integer comparison (size_t/unsigned int vs int) 2019-01-30 17:29:44 +00:00
Jamie Madill 1a1651c6e9 Disable Clang extra semicolon warning.
Usually this warning is disabled by default. But when turned on Clang
complains about extra semicolons in Glslang headers. Turn this off for
now. See http://crbug.com/926235
2019-01-30 11:37:15 -05:00
John Kessenich c9e03360e2
Merge pull request #1675 from nicebyte/ext_yuv_target
Add support for GL_EXT_YUV_target
2019-01-29 19:03:11 -08:00