St0fF
77d04598d3
fix VS2012 compile issues
...
small fixes needed to compile under Win8.1/VS2012/static_lib
2018-04-09 17:37:01 +02:00
John Kessenich
11b5c31108
Update revision.
2018-04-05 19:57:40 -06:00
John Kessenich
a89f8cf76b
Merge branch 'nonuniform-dynindex'
2018-04-05 13:53:31 -06:00
John Kessenich
4597fea82e
Update revision.
2018-04-05 13:50:02 -06:00
John Kessenich
6a8a678c4f
Revision/Version update.
2018-04-05 13:45:52 -06:00
John Kessenich
5611c6d27b
GLSL/SPV: Implement SPV_EXT_descriptor_indexing and GL_EXT_nonuniform_qualifier
2018-04-05 11:25:02 -06:00
John Kessenich
0b5e5da7e7
Update revision.
2018-04-02 15:04:19 -06:00
Jeff Bolz
2abe9a4d34
Implement GL_NV_shader_subgroup_partitioned
2018-03-29 22:52:17 -05:00
John Kessenich
ead8622484
Non-functional. Rationalizations enabling future generalizations:
...
- Use much simpler method to update implicit array sizes.
The previous overly complicated method was error prone.
- Rationalize all use of unsized arrays.
- Combine decorations when generating SPIR-V, to simplify
adding extensions.
2018-03-28 18:01:20 -06:00
John Kessenich
859b0342b8
Types: Fix #1290 : Rationalize and correct "mixed" style array dimensioning.
...
There a couple functional problems, which when reduced down also led to
some good simplifications and rationalization. So, this commit:
- corrects "mixed" functionality: int[A] f[B] -> f[B][A]
- correct multi-identifier decls: int[A] f[B], g[C] -> f and g are independently sized.
- increases symmetry between different places in the code that do this
- makes fewer ways to do the same thing; several methods are just gone now
- makes more clear when something is copied or shared
2018-03-26 00:38:53 -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
95b1334aa2
Bump patch version.
2018-03-19 01:11:04 -06:00
John Kessenich
0af69da12e
Bump patch version.
2018-03-16 11:52:10 -06:00
Josh de Kock
b3e80f5aec
include/Common.h: reorder includes to avoid redefinition on some platforms
...
On some systems sstream defines snprintf, this leads to the a redefinition of sprintf_s if snprintf is defined before checking if it exists in sstream.
2018-03-11 19:51:17 +00:00
John Kessenich
a51525059f
Merge pull request #1269 from bkaradzic/master
...
Fixed GCC+Clang errors and warnings on Linux and OSX.
2018-03-07 14:31:57 -07:00
John Kessenich
fb97d25c98
Merge branch 'feature' of https://github.com/amdrexu/glslang into amdrexu-feature
2018-03-07 14:29:45 -07:00
John Kessenich
f15fbc04f7
Merge branch 'bugfix' of https://github.com/amdrexu/glslang into amdrexu-bugfix
2018-03-07 14:25:46 -07:00
John Kessenich
56364b0850
Merge branch 'sheredom-fixup_sm_60_wording'
2018-03-07 14:21:55 -07:00
John Kessenich
ac3707921e
Revert the commits that change OpArrayLength type and bumped the version number.
...
Now, version 5.* is all connected to making the uint type, which doesn't quite work.
Generator versions 4 and 6 do not do this.
2018-03-07 11:48:25 -07:00
Branimir Karadžić
1e5c946326
Fixed ifdef.
2018-03-06 20:11:46 -08:00
John Kessenich
66011cb2c2
SPV: Implement Vulkan 1.1 features and extensions.
2018-03-06 16:12:04 -07:00
Rex Xu
4f5b99e37e
Add more error checks for interpolateAtVertexAMD()
2018-03-06 15:01:40 +08:00
John Kessenich
c6c80a6e48
Versioning: Address #1255 : Move to semantic versioning.
...
Still missing is automation and final decisions on mechanisms in general.
2018-03-05 22:23:17 -07:00
Branimir Karadžić
1de8e54d66
Fixed GCC+Clang errors and warnings on Linux and OSX.
2018-03-03 13:04:12 -08:00
Rex Xu
1e5d7b0b27
Implement the extension GL_AMD_gpu_shader_half_float_fetch
...
- Support new opaque types: f16sampler*, f16image*, f16subpassInput*.
- Add new built-in GLSL texture/image functions.
2018-03-02 16:48:03 +08:00
John Kessenich
4bee531fc1
HLSL: Fix #1249 : Always execute both sides of ternary "?:".
...
This is semantically required by HLSL, and frequently results in using
OpSelect instead of control flow.
2018-02-20 21:32:33 -07:00
John Kessenich
a2858d9bdd
GLSL: Implement GL_EXT_control_flow_attributes.
...
See https://github.com/KhronosGroup/GLSL/pull/11 .
2018-02-01 00:55:08 -07:00
John Kessenich
e18fd20d5c
HLSL: Refactor attribute implementation.
...
- make it sharable with GLSL
- correct the case insensitivity
- remove the map; queries are not needed, all entries need processing
- make it easier to build bottom up (will help GLSL parsing)
- support semantic checking and reporting
- allow front-end dependent semantics and attribute name mapping
2018-02-01 00:30:34 -07:00
John Kessenich
e349af7e20
Non-functional: Fix #1231 : remove duplicated code.
2018-01-31 22:15:45 -07:00
John Kessenich
838d7afc61
SPV: HLSL: Move to correct HLSL barrier semantics, per Khronos recommendation.
2017-12-16 00:34:08 -07:00
John Kessenich
be3842f6ae
GLSL: Implement XFB for redeclared built-in blocks.
2017-12-15 04:43:59 -07:00
Piers Daniell
1c5443c693
Add implementation of SPV_EXT_fragment_fully_covered
...
This implementation uses the GLSL extension
GL_NV_conservative_raster_underestimation to generate the new SPIR-V
FullyCoveredEXT built in.
2017-12-14 07:42:23 -07:00
LoopDawg
2e62910633
HLSL: matrix and vector truncations for m*v, v*m, m*m
...
HLSL truncates the vector, or one of the two matrix dimensions if there is a
dimensional mismatch in m*v, v*m, or m*m.
This PR adds that ability. Conversion constructors are added as required.
2017-11-22 12:01:45 -07:00
John Kessenich
fd1d07daf1
Memory: Put pragma tables in the pool.
...
Fixes #916 (the last change covered by the PR).
3rd list item in #976 .
2017-11-20 17:41:39 -07:00
John Kessenich
cb42541e51
Memory: Remove the need for per-thread tear down.
...
Make key objects using the memory pool own their own pool and delete it,
such that there is not generic per-thread pool to manage.
2017-11-13 01:52:11 -07:00
John Kessenich
be20905582
Memory: Non-Functional: Rationalize and improve encapsulation of TLS usage.
...
This will make the next (functional) commit easier to see.
2017-11-12 15:28:58 -07:00
John Kessenich
e8d21388ed
Fix nondeterminism discussed in 258b700f59
2017-11-02 00:05:53 -06:00
Aaron Muir Hamilton
07c0bcea92
Only try swizzles on vectors, numbers, and booleans.
2017-10-21 19:54:37 +00:00
John Kessenich
ad2bc097e2
Merge pull request #1094 from LoopDawg/split-shadow-tx
...
HLSL: nonfunctional: rename setId -> switchId, add comment
2017-10-11 01:48:49 +03:00
John Kessenich
ddb45f8d95
Merge pull request #1080 from hedejing/master
...
Add getAsLoopNode() method for TIntermLoop
2017-10-11 01:48:04 +03:00
He Dejing
fdbd0ebab1
Add getAsLoopNode() method for Loop node
...
follow local conventions of spaces
2017-10-08 15:40:42 +08:00
LoopDawg
028c5a8dc4
HLSL: nonfunctional: rename setId -> switchId, add comment
...
Method rename, add comment about its intended use. No
test diffs.
2017-10-07 16:43:18 -06:00
John Kessenich
48d6e798bc
SPV: Correct semantics of atomic-counter decrement.
...
The semantics differ between GLSL/HLSL and SPIR-V.
Translate between these.
2017-10-06 21:21:48 -06:00
LoopDawg
73c57bbe50
HLSL: split textures used for both shadow and non-shadow modes
...
A single texture can statically appear in code mixed with a shadow sampler
and a non-shadow sampler. This would be create invalid SPIR-V, unless
one of them is provably dead.
The previous detection of this happened before DCE, so some shaders would
trigger the error even though they wouldn't after DCE. To handle that
case, this PR splits the texture into two: one with each mode. It sets
"needsLegalization" (if that happens for any texture) to warn that this shader
will need post-compilation legalization.
If the texture is only used with one of the two modes, behavior is as it
was before.
2017-10-06 11:23:16 -06:00
John Kessenich
d41993d9d2
SPV: rationalize parameter handling for "original" and "writable" parameters.
2017-09-29 09:58:11 -06:00
John Kessenich
4f4683d251
Merge pull request #1050 from amdrexu/feature
...
Implement the extension GL_AMD_shader_fragment_mask
2017-09-12 09:09:37 -06:00
John Kessenich
d9bd97d054
Build: Fix strdup -> _strdup warnings.
2017-09-11 21:56:09 -06:00
John Kessenich
5002c26b5e
Fix #1043 : set all scan string-locations to have bias, not just the first one.
2017-09-11 20:35:49 -06:00
amhagan
05506bb874
Implement the extension GL_AMD_shader_fragment_mask
2017-09-09 22:05:24 +08:00
John Kessenich
8268a35504
Build: Attempt better support for VS 2012.
...
Fix #1020 . Fix #1021 . Fix #1022 .
2017-08-25 21:35:37 -06:00