Commit Graph

2802 Commits

Author SHA1 Message Date
Matthew Albrecht
857f25cfd2 Added the cmake option to disable building SPVRemapper. 2018-07-07 16:54:34 -05:00
John Kessenich
64315a8aed
Merge pull request #1434 from antiagainst/fix-spirv-tools-header
Use public SPIRV-Tools header
2018-07-06 13:18:32 -06:00
Lei Zhang
a2c39a2947 Use public SPIRV-Tools header 2018-07-04 14:53:45 -04:00
John Kessenich
cd57b4ba0f
Merge pull request #1431 from KhronosGroup/implement-8-16-bit-storage
Implement GL_EXT_shader_16bit_storage and GL_EXT_shader_8bit_storage …
2018-07-03 14:21:07 -06:00
John Kessenich
312dcfb070 Implement GL_EXT_shader_16bit_storage and GL_EXT_shader_8bit_storage extensions.
These introduce limited support for 8/16-bit types such that they can only be accessed in buffer memory and converted to/from 32-bit types.

Contributed from Khronos-internal work.
2018-07-03 13:51:31 -06:00
John Kessenich
eefab240f7 Bump revision. 2018-07-03 09:34:43 -06:00
John Kessenich
dccfeedfc3 HLSL: Fix #1423: implement CalculateLevelOfDetailUnclamped().
(If there is a bias issue, we need to discover what it is.)
2018-07-02 18:53:19 -06:00
John Kessenich
ab8960fd12
Merge pull request #1416 from aejsmith/samplerless-texture-functions
Add support for GL_EXT_samplerless_texture_functions
2018-07-02 18:35:41 -06:00
John Kessenich
513cc4cf87 Merge branch 'HaydnTrigg-patch-1' 2018-07-02 16:13:29 -06:00
John Kessenich
c88edb1319 Merge branch 'patch-1' of https://github.com/HaydnTrigg/glslang into HaydnTrigg-patch-1 2018-07-02 16:04:08 -06:00
John Kessenich
5e70195477
Merge pull request #1420 from KhronosGroup/spir-dis
SPV: Add option to print disassembly in standard form using SPIRV-Tools.
2018-07-02 15:55:01 -06:00
John Kessenich
e2156222d3 SPV: Add option to print disassembly in standard form using SPIRV-Tools. 2018-07-02 15:54:12 -06:00
John Kessenich
6d61684f4b Bump revision. 2018-07-02 13:49:16 -06:00
John Kessenich
802c62bca4 PP: Rationalize return values of MacroExpand.
This results in better error recovery, including fewer
crashes on badly formed PP input.
2018-07-02 13:47:31 -06:00
John Kessenich
9cc81de096 PP/HLSL: Fix #1424: support comma in nested curly braces for macro arg 2018-07-02 10:40:32 -06:00
Alex Smith
e47bfaedf6 Add support for GL_EXT_samplerless_texture_functions 2018-07-01 10:58:53 +01:00
Haydn Trigg
e826286f99
Constant.cpp Floating point divide by zero
Constant.cpp will throw a floating point divide by zero if floating point exceptions are enabled in Win32 causing the program to crash. This fix manually checks the right-hand argument of the division and sets appropriate Infinity, Negative Infinity, or NAN as if the floating point exceptions were disabled.
2018-06-29 13:55:06 -04:00
John Kessenich
0b964b3c35
Merge pull request #1419 from tgjones/spirv-remap-artifact
Include spirv-remap.exe in AppVeyor artifacts
2018-06-27 16:47:38 -06:00
Tim Jones
9177e05f31
Include spirv-remap.exe in AppVeyor artifacts 2018-06-27 17:31:19 +08:00
John Kessenich
ef1f899b5d
Merge pull request #1413 from karl-lunarg/fix-update
script: Improve update sources script
2018-06-22 00:33:36 -06:00
Karl Schultz
fa403b9691 script: Improve update sources script
- remove unused variable to pass pylint
- Use another approach to detect if known-good remote is already
  present to avoid the need for "ignore following errors" message.
2018-06-21 17:30:07 -06:00
John Kessenich
16cf5a5dc2
Merge pull request #1411 from KhronosGroup/fix-literal-warnings
Build: Make literal casting have fewer warnings and be more consistent.
2018-06-20 18:54:12 -06:00
John Kessenich
866f67140e Build: Make literal casting have fewer warnings and be more consistent. 2018-06-20 18:10:55 -06:00
John Kessenich
5fe506a8ba
Merge pull request #1409 from greg-lunarg/remap3
Add support for OpConstantNull and OpConstantSampler to spirv-remap
2018-06-19 23:52:10 -06:00
GregF
c6831d1ed4 Add support for OpConstantNull and OpConstantSampler to spirv-remap
Fixes issue #1408
2018-06-19 13:51:28 -06:00
John Kessenich
c99304c5dc Bump revision. 2018-06-19 09:47:23 -06:00
John Kessenich
2a805d9cea Revert "GLSL: Fix #1279: refract does not have a double-type eta."
This reverts commit ebec909487.

Khronos decided glslang was originally correct, and the specifications
are incorrect.
2018-06-19 09:43:09 -06:00
John Kessenich
bea08fe02a
Merge pull request #1405 from Igalia/nroberts/amb-arrays
Take into account arrays of opaque types with --auto-map-bindings
2018-06-14 21:13:43 -06:00
Neil Roberts
1d024b5346 Take into account arrays of opaque types when reserving bindings
TDefaultIoResolverBase::reserveSlot and getFreeSlot now have a size
parameter to reserve a range of bindings. This is used by
TDefaultIoResolver::resolveBinding to reserve a continuous range when
the type is an array and the target API is GL.
2018-06-14 14:54:33 +02:00
John Kessenich
2c8265bb62 GLSL: Fix #1358: Support "struct name", where name could be a user type 2018-06-11 19:28:15 -06:00
John Kessenich
1ea8f595f9
Merge pull request #1402 from greg-lunarg/kg21
Update spirv-tools known-good
2018-06-08 12:56:23 -06:00
GregF
ff50b9fbb9 Update spirv-tools known-good
Includes the following spirv-opt improvements:

Preserve inst-to-block and def-use in passes.
Add store for var initializer in inlining.
Handle types with self references.
2018-06-08 11:10:33 -06:00
John Kessenich
7dc1a989b8
Merge pull request #1401 from dneto0/bad-e11
Relax a stringToDouble test for, OSX AppleClang 9.1
2018-06-07 01:33:48 -06:00
David Neto
617d1b1209 Relax a stringToDouble test for, OSX AppleClang 9.1
1e-323 was flushed to zero.
1e-308 is also flushed to zero.
Use 1e-307 instead, which still satisfies the test intent.

Fixes #1400
2018-06-06 22:36:42 -07:00
John Kessenich
ba018e6762 SPV: Fix #1399 emit ImageGatherExtended when using ConstOffsets operand 2018-06-05 08:53:36 -06: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
14b85d3ff3 Fix #1395: GLSL volatile maps to SPIR-V Volatile and Coherent.
The major version number was bumped in the previous commit to support
this.
2018-06-04 15:36:03 -06:00
John Kessenich
d6c975572e Change the major revision number for next commit. 2018-06-04 15:33:31 -06:00
John Kessenich
a7eb582ac5 Bump revision. 2018-06-04 15:30:54 -06:00
John Kessenich
9c3fde7f50
Merge pull request #1397 from LoopDawg/warning-fix-4
Fix several signed/unsigned comparison compile warnings.
2018-06-02 23:27:45 -06:00
LoopDawg
470a68cfd4 Fix several signed/unsigned comparison compile warnings. 2018-06-01 20:23:50 -06:00
John Kessenich
32d3ec3199
Merge pull request #1394 from greg-lunarg/kg20
Update spirv-tools known-good.
2018-05-31 18:31:18 -06:00
GregF
b0c42b2884 Update spirv-tools known-good.
Includes:

Fold FMix feeding Extract, and use the simplification pass.
2018-05-31 16:17:18 -06:00
John Kessenich
4f88853412 Fix #1391: Remove use of nonportable strnlen(). 2018-05-27 19:53:20 -06:00
John Kessenich
b91189dbe5
Merge pull request #876 from ligfx/cmaketargetincludedirectories
CMake: use target_include_directories to expose includes
2018-05-27 19:29:42 -06:00
Michael Maltese
a895f378ee CMake: use target_include_directories to expose includes
This makes glslang simpler to embed in larger projects.
2018-05-27 11:36:32 -07:00
John Kessenich
92d05c0c83
Merge pull request #1386 from zeux/master
Fix TextureUpgradeAndSamplerRemovalTransform when used with qualifiers
2018-05-25 16:10:58 -06:00
John Kessenich
369dc87a8f
Merge pull request #1387 from jeffbolznv/disassembly_explicit_types
Add bit width of types to disassembleInstruction
2018-05-25 15:55:41 -06:00
John Kessenich
fa34a9adea
Merge pull request #1385 from KhronosGroup/fix-strtod
PP: Fix strtod problems: add tests, remove 2nd use, replace
2018-05-25 11:08:14 -06:00
John Kessenich
3e8e9f7bbd PP: Implement locale-independent strtod, using istringstream and a fast path.
Fixes #1228. Fixes #234.

This uses imbue() to be locale independent.  Notes:

- 'sstream >> double' is much slower than strtod()
  * this was measurable in the test suite as a whole, despite being
    a tiny fraction of what the test suite does
- so, this embeds a fast path that bypasses sstream most of the time
  => the test suite is faster than before
- sstream is probably slower, because it does more accurate rounding than strtod()
- sstream does not create INFINITY by itself, this was done based on failure inferencing
2018-05-24 22:08:30 -06:00