John Kessenich
65ee230f1c
HLSL: Add tests and refine what decorations are passed through per stage/in/out.
2017-02-06 23:13:16 -07:00
Endre Oma
ad58d45437
SPV: Emit names of specialization constants
2017-01-31 21:16:17 +01:00
Benjamin Saunders
5a074532af
Install headers
...
This enables the vulkan loader to be built against an installed glslang.
2017-01-29 17:46:44 -08:00
John Kessenich
c0904c15c2
Merge pull request #690 from ligfx/proper_dependencies
...
CMake: add target_link_libraries internally
2017-01-26 15:13:27 -07:00
Vlad Ivanov
689490fd4d
SpvBuilder: add const specifier to vector reference arguments
2017-01-26 20:46:42 +03:00
Rex Xu
c708f98081
Fix a CMakeLists issue
2017-01-24 14:24:21 +08:00
John Kessenich
64b010f390
Merge pull request #678 from chaoc/stereo_view_rendering
...
support SPV_NV_viewport_array2 and SPV_NV_stereo_view_rendering
2017-01-21 12:05:47 -07:00
Michael Maltese
6077a19ba3
CMake: add target_link_libraries internally
...
Makes it easier to include glslang in a larger CMake project---instead
of having to call `target_link_libraries(glslang OSDependent OGLCompiler
HLSL)`, for example, you only need to call
`target_link_libraries(glslang)` and it will pull in the helpers it
needs.
This is also better in terms of cleaning up the "public interface",
of sorts, for building glslang: end-users probably shouldn't need to
know or be explicitly dependent on internal targets.
2017-01-21 10:59:15 -08:00
chaoc
771d89fc36
support SPV_NV_viewport_array2 and SPV_NV_stereo_view_rendering
2017-01-20 16:48:26 -08:00
Mike Weiblen
4e9e400ec6
Fix for not-handled-in-switch warnings
...
Added default to the switch() for AMD_EXTENSIONS to avoid a spew
of warning messages.
2017-01-20 13:39:30 -07:00
John Kessenich
d3aea5edaf
Merge pull request #679 from ashwinkolhe/akolhe_spv_khr_subgroup_vote
...
Implement SPV_KHR_subgroup_vote
2017-01-19 16:16:49 -07:00
Rex Xu
430ef40ab4
Implement new revision of extension GL_AMD_shader_ballot
...
- Add support for invocation functions with "InclusiveScan" and
"ExclusiveScan" modes.
- Add support for invocation functions taking int64/uint64/doube/float16
as inout data types.
2017-01-19 12:09:51 +08:00
Ashwin Kolhe
c720f3e639
Implement SPV_KHR_subgroup_vote
...
doc.cpp: Add capabilities, scope to the opcodes. Add opcode and
capability strings.
GLSL.ext.KHR.h: Add extension
string.
GlslangToSpv.cpp: Fix handling of opcodes to generate
appropriate SPIR-V.
spirv.hpp: Add capability and opcode
enums.
spv.shaderGroupVote.comp.out: Update SPIR-V output for test
shader.
2017-01-18 14:16:49 -08:00
John Kessenich
fdf6347f0a
HLSL: Add EOpMatrixSwizzle, selectively decomposed to other ops, for issue #670 .
...
Since EOpMatrixSwizzle is a new op, existing back-ends only work when the
front end first decomposes it to other operations. So far, this is only
being done for simple assignment into matrix swizzles.
2017-01-13 12:35:01 -07:00
Alex Szpakowski
844dd45db6
Add a virtual destructor to a class which has virtual methods.
2017-01-08 17:57:21 -04:00
John Kessenich
927608b393
Non-functional: White space after "//", mostly for copyrights.
2017-01-06 12:34:14 -07:00
John Kessenich
ecba76fe73
Non-Functional: Whitespace, comments, replace accidentally deleted comment.
...
- fixed ParseHelper.cpp newlines (crlf -> lf)
- removed trailing white space in most source files
- fix some spelling issues
- extra blank lines
- tabs to spaces
- replace #include comment about no location
2017-01-06 11:24:14 -07:00
John Kessenich
807a0d9e2f
Merge pull request #640 from chaoc/modify-shader-ballot
...
Modify shader ballot extension by adding OpSubgroupReadInvocationKHR
2016-12-21 17:40:29 -07:00
chaoc
f200da8631
Modify shader ballot extension by adding OpSubgroupReadInvocationKHR
2016-12-21 12:08:09 -08:00
chaoc
6e5acae144
Add support for SPV_NV_geometry_shader_passthrough
2016-12-20 13:28:52 -08:00
chaoc
0ad6a4e60d
Add support for SPV_NV_sample_mask_override_coverage
2016-12-19 16:29:34 -08:00
John Kessenich
e6cbc5b19d
Merge pull request #624 from steve-lunarg/remapper-strip-removed
...
WIP: Remapper: remove debug info for IDs stripped in other passes
2016-12-19 14:07:58 -07:00
John Kessenich
1e275c8486
HLSL: More robust handling of bad shader input, catching a few more things.
2016-12-14 17:02:32 -07:00
steve-lunarg
297754cfe8
Remapper: remove debug info for IDs stripped in other passes
...
If some DCE is performed such as removing dead functions, then even
if we are NOT stripping debug info, we still must remove the debug
opcodes that refer to the now-dead IDs.
Also, this adds a small change to perform no ID remapping if none
is requested, making spirv-remap properly be a no-op if no options
are given.
2016-12-12 09:01:11 -07:00
John Kessenich
6a60c2f9ea
Linker: Walk the call graph to report an error on missing bodies.
2016-12-08 23:22:21 -07:00
John Kessenich
517fe7a6ad
Non-functional: Rename some entry-point variables to entryPoint, not main.
2016-11-26 13:31:47 -07:00
John Kessenich
fca826212c
Always correctly terminate main. Issue #588 , PR #600 .
2016-11-26 13:23:20 -07:00
chrgau01@arm.com
c3f1cdfa57
GLSL: The execution scope for barriers should be Workgroup.
2016-11-14 10:10:05 +01:00
Jamie Madill
57cb69a3f1
Fix unrefenced variable warning with AMD_EXTENSIONS disabled.
2016-11-09 13:49:24 -05:00
Johannes van Waveren
2f4c832d47
Merge remote-tracking branch 'upstream/master'
2016-10-21 17:21:46 +09:00
Johannes van Waveren
8e1e717cae
fixed MSVC 2015 compile warnings
2016-10-21 17:21:12 +09:00
David Neto
bb5c02fd23
Add missing guard to code that uses AMD extensions
...
Otherwise compilation fails when ENABLED_AMD_EXTENSIONS is off.
2016-10-19 10:17:25 -04:00
John Kessenich
1fabc0f697
Merge pull request #548 from baldurk/vs2010-compile-fixes
...
VS2010 compile fixes
2016-10-15 23:09:31 -06:00
Rex Xu
17ff343bf4
SPV: Add missing extension declarations for certain AMD extensions.
2016-10-14 17:41:45 +08:00
baldurk
021dbb4cd4
Change negatable_left_shift and negatable_right_shift to inline funcs
...
* This avoids an internal compile error on VS2010 possibly related to
std::enable_if use.
2016-10-13 19:39:24 +02:00
baldurk
cabba60abf
Change {} constructor brackets to ()
2016-10-13 19:32:37 +02:00
baldurk
7cac9e7245
Change "using x = y;" to "typedef y x;" statements
2016-10-13 19:31:15 +02:00
baldurk
a227d27227
Explicitly implement default constructors
2016-10-13 19:30:27 +02:00
baldurk
1a65fc269c
Add std::isnan and std::isinf wrappers for VS2010 that doesn't have them
2016-10-13 19:28:54 +02:00
baldurk
033d3ef22c
Change enum class to plain enum
2016-10-13 19:28:20 +02:00
baldurk
ff160f15ef
Add #include <cstdint> for std::uint32_t usage
2016-10-13 19:24:42 +02:00
Maciej Jesionowski
7208a974aa
SPV: Use SampledImage with OpImageQueryLod
...
Khronos SPIR-V issue #74
2016-10-12 16:16:24 +02:00
Rex Xu
f3b27471f8
SPV: Implement extension SPV_KHR_shader_draw_parameters.
2016-10-11 14:40:35 +08:00
John Kessenich
ed33e05762
HLSL: Do structure conversion for return type struct-punning on non-entry-point functions.
2016-10-06 13:06:13 -06:00
John Kessenich
074ced3e00
Merge pull request #521 from yavn/frag-shader-primitive-id-capability
...
SPV: PrimitiveId in frag shader will emit OpCapability
2016-10-01 11:38:18 -06:00
Rex Xu
c9e3c3c941
Parser: Implement extension GL_AMD_gpu_shader_half_float.
...
- Add built-in types: float16_t, f16vec, f16mat.
- Add support of half float constant: hf, HF.
- Extend built-in floating-point operators: +, -, *, /, ++, --, +=, -=,
*=, /=, ==, !=, >=, <=, >, <.
- Add support of type conversions: float16_t -> XXX, XXX -> float16_t.
- Add new built-in functions.
2016-09-30 16:13:06 +08:00
Maciej Jesionowski
04b3e8746f
SPV: PrimitiveId in frag shader will emit Geometry capability
...
Using PrimitiveId in a fragment shader requires declaring
an OpCapability with either Geometry or Tessellation.
2016-09-27 10:35:09 +02:00
Rex Xu
b707205b0d
SPV: OpGroupBroadcast is unable to handle vector operand.
2016-09-26 15:53:40 +08:00
Rex Xu
36876e6408
SPV: Still have to specify SPIR-V extension for gl_SubGroupSizeARB and gl_SubGroupInvocationARB.
2016-09-23 22:13:43 +08:00
Rex Xu
5159664475
SPV: Implement the extension SPV_KHR_shader_ballot
2016-09-22 16:05:07 +08:00