Alexander Galazin
32def9f467
Rename GL_KHX_shader_explicit_arithmetic_types to GL_EXT_shader_explicit_arithmetic_types
2018-12-03 13:16:59 +01:00
Grigory Dzhavadyan
4c9876b34c
Add names for composite constants in SPIR-V
...
Consider the following code:
layout(constant_id=0) const int Y = 1;
layout(constant_id=1) const int Z = 2;
layout(constant_id=3) const int X = Y + Z;
Previously, it would produce SPIR-V decorations like this:
Decorate 21(Y) SpecId 1
Decorate 22 SpecId 3
Decorate 33(Z) SpecId 0
This seems inaccurate, since the spec constant `X` that is dependent on
the two others did not get a name in the SPIR-V decorations. This behavior
may potentially negatively affect shader introspection capabilities.
This change alters the behavior to always add a name, which results in the code
above producing the following decorations:
Decorate 21(Y) SpecId 1
Decorate 22(X) SpecId 3
Decorate 33(Z) SpecId 0
2018-11-02 00:45:12 -07:00
John Kessenich
ad7645f4f5
Fix #1360 : uint->int width conversions must still be typed as uint.
2018-06-04 20:09:30 -06:00
John Kessenich
d6c975572e
Change the major revision number for next commit.
2018-06-04 15:33:31 -06:00
Jeff Bolz
af7a94876c
Add bit width of types to disassembleInstruction
2018-05-24 21:08:20 -05:00
John Kessenich
647fccaf2f
AST: Fix shift conversions, which don't require matching types.
...
The base and shift amount need to be integers, but not of the same type.
This fixes #1296 and replaces #1297 .
2018-03-15 21:11:36 -06: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
John Kessenich
66011cb2c2
SPV: Implement Vulkan 1.1 features and extensions.
2018-03-06 16:12:04 -07:00
John Kessenich
0216f24f0e
SPV: Bump up the generator number.
2018-03-03 11:47:07 -07:00
John Kessenich
71b5da60d0
SPV: Bump up generator number, because previous commit changes code gen slightly.
2018-02-06 08:06:36 -07:00
John Kessenich
2b5ea9f851
SPV Version: Emit the requested SPIR-V version, not the header version.
...
Fixes #1236 .
2018-01-31 18:41:59 -07:00
John Kessenich
6c1c2766b6
SPV: Bump SPIR-V header to the unified1 version (version 1.2).
2018-01-29 16:16:11 -07:00
John Kessenich
c72e5937dd
SPV: Bump the generator number to account for barrier changes.
2017-12-16 00:34:08 -07:00
John Kessenich
07ed11f9a0
SPV: GeneratorVersion: bump version number because of atomic decrement change.
2017-10-07 11:41:20 -06:00
John Kessenich
e00e8f45a6
GLSL: replace general missing functionality with specific messages.
2017-06-05 16:42:33 -06:00
Endre Oma
ad58d45437
SPV: Emit names of specialization constants
2017-01-31 21:16:17 +01:00
John Kessenich
fb06e9552e
Don't print the "Linked stage" message unless the AST is being dumped.
2016-12-03 13:59:51 -07:00
John Kessenich
4bfb32e17b
Merge branch 'bugfix2' of https://github.com/amdrexu/glslang into amdrexu-bugfix2
2016-09-09 10:46:10 -06:00
Rex Xu
c9f349234f
SPV: Use OpBitcast to implement 4 pack/unpack built-in functions.
2016-09-09 17:50:07 +08:00
Rex Xu
99c4dd16db
Preprocessor: UINT_MAX is translated to constant incorrectly.
2016-09-09 17:06:15 +08:00
Rex Xu
64bcfdb632
Parser: Add 64-bit type conversion for specialization constant.
2016-09-05 22:20:28 +08:00
Lei Zhang
17535f7d55
Create a new logger class for all messages w.r.t. SPIR-V build.
2016-05-05 10:15:06 -04:00
Rex Xu
8ff43de891
Implement the extension GL_ARB_gpu_shader_int64
...
- Add new keyword int64_t/uint64_t/i64vec/u64vec.
- Support 64-bit integer literals (dec/hex/oct).
- Support built-in operators for 64-bit integer type.
- Add implicit and explicit type conversion for 64-bit integer type.
- Add new built-in functions defined in this extension.
2016-04-30 13:34:34 +08:00