Rex Xu
86e49d1773
HLSL: Move frexp() to a separate test file.
2017-03-29 17:04:58 +08:00
John Kessenich
aa3c64c214
Fix #800 (mostly): set of Linux warnings.
2017-03-28 09:52:38 -06:00
John Kessenich
9fb31ce8ec
Tests: strengthen the value of test for NV members.
2017-03-24 18:58:48 -06:00
John Kessenich
0e7378446b
Fix #790 : Don't emit NV-specific interface members unless enabled by extension.
2017-03-24 18:40:40 -06:00
John Kessenich
93750bc0a4
Merge pull request #796 from steve-lunarg/emptystruct-return-fix
...
HLSL: fix crash on empty struct return from entry point
2017-03-24 09:11:00 -06:00
steve-lunarg
d8e34c5119
HLSL: fix crash on empty struct return from entry point
2017-03-24 08:56:37 -06:00
John Kessenich
19ea56899c
Tests: Update test results.
2017-03-23 14:52:38 -06:00
John Kessenich
000c818efb
HLSL: Allow use of $Global members in between function calls.
...
This allows global initializers to use $Global members.
2017-03-22 23:21:34 -06:00
John Kessenich
7a41f96d10
HLSL: Implement 'this' keyword.
2017-03-22 11:38:22 -06:00
John Kessenich
3778979cd4
HLSL: non-static member functions: track and find active anonymous 'this' scopes and members.
...
Thanks to @steve-lunarg for his input and discussions on handling member functions.
2017-03-21 23:56:40 -06:00
John Kessenich
f4ba25e009
HLSL: Non-functional: the symbol field of a token was in practice unused; remove it.
...
Another precurser to getting member non-static functions working.
2017-03-21 18:36:04 -06:00
John Kessenich
5a8390696d
Merge pull request #782 from steve-lunarg/builtin-methods-prefix
...
HLSL: use prefix for builtin functions names to avoid namespace colli…
2017-03-19 23:49:55 -06:00
John Kessenich
1dd65ca398
Merge pull request #779 from steve-lunarg/buffer-unsampled-fix
...
HLSL: Buffer types should be unsampled.
2017-03-19 23:46:03 -06:00
steve-lunarg
e7d0752a33
HLSL: use prefix for builtin functions names to avoid namespace collisions
...
It would have been possible for globally scoped user functions to collide
with builtin method names. This adds a prefix to avoid polluting the
namespace.
Ideally this would be an invalid character to use in user identifiers, but
as that requires changing the scanner, for the moment it's an unlikely yet
valid prefix.
2017-03-19 18:22:11 -06:00
John Kessenich
4960baaf66
HLSL: Basic turn on of non-static member functions.
...
Still need: pass by reference in SPIR-V and symbol-table level
for accessing 'this' members from member functions.
2017-03-19 18:09:59 -06:00
John Kessenich
dfbdd9eb20
HLSL: Add implicit-this tracking to TFunction.
2017-03-19 13:10:28 -06:00
John Kessenich
f3d88bd498
HLSL non-functional: Generalize namespace nesting.
...
Also use this to move deferred member-function-body parsing to a better
place.
This should also be well poised for implementing the 'namespace' keyword.
2017-03-19 13:01:58 -06:00
steve-lunarg
d3947d232a
WIP: HLSL: propagate readonly qualifier for buffer types
2017-03-19 12:40:12 -06:00
steve-lunarg
cf2e7275e8
WIP: HLSL: Buffer types should be unsampled.
...
RWBuffer objects were generating (properly) unsampled resoures, while
Buffer objects were not. This fixes that.
2017-03-17 13:19:42 -06:00
John Kessenich
e751bca75c
Fix #777 : don't parse .suffix if <stage> is provided.
...
Adding a test for this also uncovered an extraneous \r in the runtests script,
fixed now.
2017-03-16 11:30:20 -06:00
John Kessenich
26013595fd
Merge pull request #776 from amdrexu/bugfix
...
SPV: Fix unexpected declarations of capability and extension
2017-03-16 09:54:00 -06:00
Rex Xu
5e317ffe40
SPV: Fix unexpected declarations of capability and extension
2017-03-16 23:02:39 +08:00
John Kessenich
36b218de91
HLSL: Fix #771 : add inline keyword.
2017-03-15 09:05:14 -06:00
John Kessenich
95e736c83b
Merge pull request #767 from DragoonX6/master
...
Fix building on MinGW-w64
2017-03-15 08:45:50 -06:00
John Kessenich
2dd643ff03
Merge branch 'TiemoJung-semantic_handling'
2017-03-14 22:44:24 -06:00
John Kessenich
2dc50ff372
Merge branch 'semantic_handling' of https://github.com/TiemoJung/glslang into TiemoJung-semantic_handling
2017-03-14 21:49:42 -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
c08fb8ab9c
Full stack: properly implement GL_EXT_device_group and GL_EXT_multiview.
2017-03-14 16:45:30 -06:00
John Kessenich
78cfba97e1
Fix location of #defines for core and compatibility profile.
...
These were recently added for all profiles, versus just desktop.
2017-03-14 15:19:32 -06:00
John Kessenich
601b7fa4b9
Revert previous check-in, until knowing what the spec. is and whether the test failure is related.
2017-03-13 22:49:36 -06:00
John Kessenich
7a44a31dee
SPV: Address #759 : make ViewIndex and DeviceIndex by 'in', not 'uniform'.
2017-03-13 15:43:26 -06:00
John Kessenich
946e0a6d8c
Merge pull request #768 from amdrexu/bugfix
...
HLSL: Additional channel value for textureGatherXXX().
2017-03-13 15:31:11 -06:00
Rex Xu
d41a696c30
HLSL: Additional channel value for textureGatherXXX().
...
When mapping HLSL gather intrinsics to GLSL textureGatherXXX() built-in
function, the channel selection value is only valid for non-shadow samplers.
2017-03-13 17:07:18 +08:00
DragoonX6
8155934be6
Fix building on MinGW-w64
...
Some HLSL to Spirv tests fail.
2017-03-12 04:54:37 +01:00
John Kessenich
b16f7e6819
HLSL: Member-functions: capture body token stream for deferred syntax/semantics.
...
This is needed for accessing types/variables within a member function body that are
not known until after the struct is finished being declared. However, that funtionality
is not yet present, this is just the deferred processing, which is working for
static member functions.
2017-03-11 19:37:29 -07:00
John Kessenich
088d52bac2
HLSL: Non-functional: consolidate function declarator information.
2017-03-11 19:37:29 -07:00
John Kessenich
c04c6a4067
Merge pull request #762 from LukasBanana/master
...
Added 'GL_core_profile' and 'GL_compatibility_profile' to macro expansion
2017-03-11 14:16:58 -07:00
John Kessenich
54ee28f4d0
HLSL: Add scoping operator, accept static member functions, and support calling them.
2017-03-11 14:13:00 -07:00
John Kessenich
5f12d2f752
HLSL: non-functional: simplify handleBuiltInMethod() to isBuiltInMethod().
2017-03-11 10:15:47 -07:00
Lukas Hermanns
1fbc6e6ca1
Added 'GL_core_profile' and 'GL_compatibility_profile' macro definition to preamble.
...
Added version check (version >= 150) for GL_(core/compatibility)_profile macros.
Added GL_core_profile standard macro check to "150.vert" test file.
Fixed version check for GL_core_profile macros, and removed bad token character from 150.vert test.
Updated 150.vert.out test base-result with google-test suite.
2017-03-11 12:34:46 +01:00
John Kessenich
523e20dc02
PP: Recognize the '::' token, and translate appropriately to GLSL/HLSL token.
2017-03-10 18:03:43 -07:00
John Kessenich
6212e86faa
Merge pull request #764 from steve-lunarg/imagequery-sign
...
Preserve signedness in SPIR-V image query ops
2017-03-10 15:35:12 -07:00
steve-lunarg
0b5c2ae70e
Preserve signedness in SPV image query ops
...
The AST->SPIRV translation of image queries was dropping signedness,
causing some validation troubles.
2017-03-10 12:51:59 -07:00
John Kessenich
757bc87445
Merge pull request #763 from steve-lunarg/nullstruct-preservation
...
HLSL: preserve empty structures after splitting
2017-03-10 09:16:06 -07:00
steve-lunarg
4198b8bfc4
WIP: HLSL: preserve empty structures after splitting
2017-03-09 19:10:57 -07:00
John Kessenich
6e1d50a7a2
HLSL: Accept SV_Cull/ClipDistanceN, by refactoring the way semantics are mapped.
2017-03-09 14:37:32 -07:00
John Kessenich
229a6f7f7b
Merge pull request #761 from baldurk/vs2010-compile-fixes
...
Compile fixes for VS2010
2017-03-09 11:28:21 -07:00
John Kessenich
79f8bf0dcd
Merge pull request #760 from steve-lunarg/gathercmpred
...
HLSL: Enable GatherCmpRed. Green/Blue/Alpha cannot be supported.
2017-03-09 11:13:31 -07:00
baldurk
5d5db80d35
Compile fixes for VS2010
...
* Removed range-based for
* Added explicit return type to non-trivial lambda
* Added explicit scope for tInterstageIoData
2017-03-09 17:48:59 +00:00
steve-lunarg
d00b026111
Enable GatherCmpRed. Green/Blue/Alpha cannot be supported.
...
This implements GatherCmpRed in terms of OpImageDrefGather.
There appears to be no way to implement the Green/Blue/Apha forms: see #673 .
2017-03-09 08:59:45 -07:00