13 Commits

Author SHA1 Message Date
Chow
8111268575
Add Shared/Std140 SSBO process & top-level array elements related (#2231)
* Add Shared/Std140 SSBO process & top-level array elements related
process

1.Add process options for shared/std140 ssbo, following ubo process
2.Add IO Variables reflection option, would keep all input/output
variables in reflection
3.Add Top-level related process, fix top-level array size issues,
following spec
4.Split ssbo/ubo reflection options, merge blowup expanding all into
function blowupActiveAggregate to allow other functions keep same entry
format.

Add options in StandAlone and test symbols.

1. Add options in StandAlone for std140/shared ubo/ssbo and all io variables reflection.
2. Add test for ssbo. When EShReflectionSharedStd140SSBO turns on, generated symbol and output would be different, to remind the difference. Defaultly disabled and nothing would change, nor blocking normal test.

* Add options in runtest script, refresh test results.

Add options in StandAlone:
--reflect-all-io-variables --reflect-shared-std140-ubo --reflect-shared-std140-ssbo

refresh test results.
Now the index, size of unsized array are expected.
2020-06-04 01:47:18 -06:00
pmistryNV
7d65f09b83
Add support for extension GL_ARB_shader_storage_buffer_object (#2184)
Enable below features for GL Core version 420:
* layout qualifier "std430"
* storage qualifier "buffer"
* atomic memory functions
2020-04-22 22:46:52 -06:00
pmistryNV
3f4e5c4563
Add support for extension GL_ARB_shader_image_size (#2185) 2020-04-19 20:47:54 -06:00
John Kessenich
1c3ab274b1 Test Results Only: Include size in implicitly sized arrays (change to unsized).
This effects 60 tests, in a trivial way, but is critical to factor out this
noise from future planned changes.
2018-03-25 14:05:38 -06:00
John Kessenich
c5f2ab965f GLSL: Disallow unsized arrays of atomic_uint.
This tracks Khronos-private specification bug 15945.
2017-06-08 10:07:14 -06:00
John Kessenich
e00e8f45a6 GLSL: replace general missing functionality with specific messages. 2017-06-05 16:42:33 -06:00
John Kessenich
71c100d7c0 GLSL output: Removed fixed-size buffer; fixes #769.
Makes some white-space differences in most output, plus a few cases
where more could have been put out but was cut short by the previous
fix-sized buffer.
2017-03-14 19:51:29 -06:00
John Kessenich
d3f1122a44 Whole stack: Fix stale types in the AST linker object nodes, fixing #557.
Rationalizes the entire tracking of the linker object nodes, effecting
GLSL, HLSL, and SPIR-V, to allow tracked objects to be fully edited before
their type snapshot for linker objects.

Should only effect things when the rest of the AST contained no reference to
the symbol, because normal AST nodes were not stale. Also will only effect such
objects when their types were edited.
2016-11-05 10:22:33 -06:00
John Kessenich
934855a642 Fix issue #382: Detect implicitly-sized atomic_uint arrays. 2016-07-19 15:50:58 -06:00
John Kessenich
cc16fa0720 Tests: Move to just linefeed to simply cross-platform test changes. 2015-12-10 18:01:54 -07:00
John Kessenich
dff18a2be0 glslang: Formally track all built-in variables, right from the beginning, to enable avoiding all textual compares at any subsequent stage in the stack. (To be used in future check ins.)
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31224 e7fa87d3-cd2b-0410-9028-fcbf551c1848
2015-05-18 16:45:49 +00:00
John Kessenich
8b37b04ecc glslang AST output: include global vs. temp (local) in the printed output. This only effects test results, but a future check-in is going to fix some globals.
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@30973 e7fa87d3-cd2b-0410-9028-fcbf551c1848
2015-04-29 10:16:56 +00:00
John Kessenich
d1888f83f6 Implement conservative depth layout qualifiers. Based partly on a submission.
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@27758 e7fa87d3-cd2b-0410-9028-fcbf551c1848
2014-08-18 21:27:53 +00:00