- Jun 04, 2018
-
-
John Kessenich authored
-
- May 25, 2018
-
-
Jeff Bolz authored
-
John Kessenich authored
- Adds a pragma to see binary output of double values (not portable) - Print decimals that show more values, but in a portable way (lots of portability issues) - Expand the tests to test more double values Note: it is quite difficult to have 100% portable tests for floating point. The current situation works by not printing full precision, and working around several portability issues.
-
- May 24, 2018
-
-
GregF authored
Includes: Fold divide and multiply by same value. Allow ADCE to remove more instructions. Remove dead Workgroup variables in ADCE. Fold fclamp feeding compare. Add pass to fold a load feeding an extract. Remove redundant stores. SROA: Only create symbols that are loaded. Get ADCE to handle OpCopyMemory Remove the limit on struct size in SROA.
-
- May 17, 2018
-
-
LoopDawg authored
Previously, casting an object of a struct type to an identical type would produce an error. This PR allows this case. As a side-effect of the change, several self-type casts in existing tests go away. For example: 0:10 Construct float ( temp float) 0:10 'f' ( in float) becomes this (without the unneeded constructor op): 0:10 'f' ( in float) For vector or array types this can result in somewhat less overall code. Fixes: #1218
-
John Kessenich authored
-
- May 16, 2018
-
-
LoopDawg authored
SPIR-V requires the coverage mask to be an array of integers, but HLSL allows scalar integers. This adds the requisite type conversion and wrapped entry point handling. Fixes: #1202
-
LoopDawg authored
This PR forces the external definition of SV_GroupID variables to 3-vectors. The conversion process between the shader-declared type and the external type happens in wrapped main IO variable conversion. The same applies to SV_DispatchThreadID and SV_GroupThreadID. Fixes: #1371
-
- May 15, 2018
-
-
LoopDawg authored
Append() method is special: unlike most outputs, it does not copy some temporary data to a symbol in the entry point epilogue, but rather uses an emit builtin after each write to the output stream. This had been handled by remembering the special output symbol for the stream as it was declared in the shader entry point before symbol sanitization. However the prior code was too simple and only handled cases where the Append() method happened after the entry point, so that the output symbol had been seen. This PR adds a patching step so that the Append()s may appear in any order WRT the entry point. They are patched in an epilogue, whereupon it is guaranteed in a well formed shader that we have seen the appropriate declaration. Fixes #1217.
-
John Kessenich authored
-
- May 10, 2018
-
-
John Kessenich authored
We want these tests to be independent of whether SPIRV-opt is used.
-
- May 04, 2018
-
-
John Kessenich authored
-
- Apr 24, 2018
-
-
John Kessenich authored
Initial way of addressing #1362.
-
- Apr 23, 2018
-
-
John Kessenich authored
-
John Kessenich authored
-
- Apr 20, 2018
-
-
John Kessenich authored
-
- Apr 18, 2018
-
-
John Kessenich authored
-
- Apr 17, 2018
-
-
John Kessenich authored
-
- Apr 14, 2018
-
-
John Kessenich authored
-
- Apr 13, 2018
-
-
danginsburg authored
-
- Apr 12, 2018
-
-
John Kessenich authored
-
- Apr 11, 2018
-
-
John Kessenich authored
-
- Apr 10, 2018
-
-
John Kessenich authored
-
- Apr 09, 2018
-
-
John Kessenich authored
-
- Apr 08, 2018
-
-
John Kessenich authored
-
- Apr 06, 2018
-
-
John Kessenich authored
It was missing when there were no semantics.
-
- Apr 05, 2018
-
-
John Kessenich authored
-
- Apr 02, 2018
-
-
John Kessenich authored
-
John Kessenich authored
-
- Mar 30, 2018
-
-
Jeff Bolz authored
-
- Mar 29, 2018
-
-
GregF authored
-
John Kessenich authored
- 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.
-
- Mar 28, 2018
-
-
Rex Xu authored
-
- Mar 26, 2018
-
-
GregF authored
Also update spirv-opt recipes.
-
John Kessenich authored
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
-
- Mar 25, 2018
-
-
John Kessenich authored
This effects 60 tests, in a trivial way, but is critical to factor out this noise from future planned changes.
-
- Mar 21, 2018
-
-
Neil Roberts authored
-
- Mar 19, 2018
-
-
John Kessenich authored
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.
-
- Mar 17, 2018
-
-
John Kessenich authored
Enabled via -fhlsl_functionality1
-
- Mar 16, 2018
-
-
Ben Clayton authored
-