2885 Commits

Author SHA1 Message Date
John Kessenich
1dcd162399 GLSL/SPV: no location on atomic_uint; Fix #1339. 2018-04-09 17:21:30 -06:00
Cory Bloor
39bbad5a00 Minor cleanup in ShaderLang.cpp
Use unique_ptr to simplify memory management in ProcessDeferred.
2018-04-09 16:18:37 -06:00
St0fF
a1184ddd48 fix further MSVC 2012 build issues
MSVC 2012 does not allow initializer lists - replaced with corrresponding CTor calls.
2018-04-09 21:08:14 +02:00
St0fF
e735042306 add ability to record accessed and declared "named defines"
Added the needed 2 sets to TIntermediate, added accessor-functions, inserter functions.  Implemented recording of such named defines inside the preprocessor parser.
2018-04-09 19:28:45 +02:00
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
b92ce60fc7 GLSL/SPV: Fix #1310: don't create unnecessary integer matrices. 2018-04-07 18:49:54 -06:00
John Kessenich
88a6a18119 README: Expand on the C++11 compiler requirement for MSVS. 2018-04-06 10:38:38 -06:00
John Kessenich
11b5c31108 Update revision. 2018-04-05 19:57:40 -06:00
John Kessenich
5d8d7882be Fix #1328: ENABLE_HLSL=OFF breaking build. 2018-04-05 19:52:38 -06:00
John Kessenich
f52b63812a Fix #1331: Emit SPV_GOOGLE_hlsl_functionality1 for counters.
It was missing when there were no semantics.
2018-04-05 19:35:38 -06:00
John Kessenich
7f0bcfd8d8 Fix #1333: Protect against -g for non-generating code. 2018-04-05 19:00:01 -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
John Kessenich
6a4a427efe GLSL: Implement correct semantic checking for run-time sized arrays. 2018-04-02 14:52:15 -06:00
John Kessenich
5a867acad5 Linker: Fix #1329: correctly merge unsized arrays, and fix link tests. 2018-04-01 21:22:34 -06:00
John Kessenich
ed834895ea
Merge pull request #1327 from mattparks/patch2
Added getter for uniform block bindings
2018-03-30 13:36:10 -06:00
Matthew Albrecht
2199356979 Added getter for uniform block bindings 2018-03-30 09:58:01 -05:00
Matthew Albrecht
6c5f649ae8 Allowed for LIB_TYPE to be set to switch between static and shared libs for glslang, SPIRV, and HLSL 2018-03-30 09:32:03 -05:00
John Kessenich
fbdba369c9
Merge pull request #1325 from KhronosGroup/simplify-doc
Non-Functional: Remove unused parts of the disassembler.
2018-03-30 00:53:23 -06:00
John Kessenich
10971553b8 Non-Functional: Remove unused parts of the disassembler. 2018-03-30 00:11:39 -06:00
John Kessenich
d688796adc
Merge pull request #1322 from jeffbolznv/master
Implement GL_NV_shader_subgroup_partitioned
2018-03-29 22:50:58 -06:00
Jeff Bolz
2abe9a4d34 Implement GL_NV_shader_subgroup_partitioned 2018-03-29 22:52:17 -05:00
John Kessenich
6b1ede4124
Merge pull request #1320 from greg-lunarg/addopt21
Only print legalization warning if optimizer not enabled
2018-03-29 20:21:04 -06:00
GregF
fb03a55e0f Only print legalization warning if optimizer disabled 2018-03-29 13:17:54 -06:00
John Kessenich
7be36647fc
Merge pull request #1319 from KhronosGroup/array-rationalization
Array rationalization
2018-03-28 23:26:27 -06:00
John Kessenich
f9a05f96cc
Merge pull request #1316 from greg-lunarg/addopt18
Disable DCE by Remapper through glslangValidator...
2018-03-28 23:26:10 -06:00
John Kessenich
c408b430fc
Merge pull request #1318 from amdrexu/feature
Add int16 support to AMD_trinary_minmax and AMD_shader_ballot
2018-03-28 23:24:56 -06: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
2316924b09 Non-Functional: Remove merge-replicated code and fix white space. 2018-03-28 13:02:12 -06:00
Rex Xu
ae06d1fe94 Add int16 support to AMD_trinary_minmax and AMD_shader_ballot 2018-03-28 16:33:01 +08:00
GregF
4bede9eb00 Disable DCE by Remapper through glslangValidator...
...now that spirv-opt is capable enough.
2018-03-27 10:15:51 -06:00
John Kessenich
643e57cddf
Merge pull request #1313 from greg-lunarg/kg15
Update SPIRV-Tools known good.
2018-03-27 00:46:18 -06:00
John Kessenich
26ad99b570
Merge pull request #1312 from KhronosGroup/fix-mixed-array-styles
Fix mixed array styles
2018-03-26 12:35:25 -06:00
greg-lunarg
0b46c1edbf
Merge branch 'master' into kg15 2018-03-26 12:20:43 -06:00
GregF
eecb874c35 Update SPIRV-Tools known good.
Also update spirv-opt recipes.
2018-03-26 12:11:55 -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
7cec64fc42 Non functional: add EshTargetClientVersion alias for EShTargetClientVersion.
Fixes #1304.
2018-03-22 23:54:04 -06:00
John Kessenich
97e35420a6 Non-functional: always return value from makeFpConstant().
Should fix #1308.
2018-03-22 23:44:11 -06:00
John Kessenich
569dd84a72
Merge pull request #1306 from Igalia/uniform-aml-v2
Improve --auto-map-locations for uniforms (v2)
2018-03-21 11:19:12 -06:00
John Kessenich
1b1ad97d0e
Merge pull request #1305 from amdrexu/bugfix
Add additional error check for fragment shader outputs
2018-03-21 10:35:59 -06:00
Neil Roberts
2d53904999 Take into account the number of locations taken up by a uniform
When assigning uniform locations it now takes into account the number
of locations occupied by the type. For uniforms, all types except
arrays and structs take up one location. For arrays the base location
count is multiplied by the array dimensions and for structs it is the
sum of the locations of each member.
2018-03-21 12:03:39 +01:00
Neil Roberts
1fe4a44759 Add locations to opaque types for OpenGL 2018-03-21 12:03:39 +01:00
Rex Xu
b126550b1a Add additional error check for fragment shader outputs
Int64 and uint64 are disallowed as fragment shader outputs, similar to
double.
2018-03-21 15:27:38 +08:00
John Kessenich
95b1334aa2 Bump patch version. 2018-03-19 01:11:04 -06:00
John Kessenich
ca4366cf51
Merge pull request #1302 from KhronosGroup/cpp-relax-skiptokens-errors
PP: don't give errors on some tokens under #if 0 (or similar).
2018-03-19 01:09:51 -06:00
John Kessenich
e7e081bda9 PP: don't give errors on some tokens under #if 0 (or similar).
Fixes #1295.

Tokens that are accepted by any version of HLSL or GLSL should be
allowed when #ifdef'd off, such that errors are not reported.
2018-03-19 00:43:18 -06:00