- Apr 20, 2017
-
-
steve-lunarg authored
-
steve-lunarg authored
Adds --hlsl-iomap option to perform IO mapping in HLSL register space. --shift-cbuffer-binding is now a synonym for --shift-ubo-binding. The idea way to do this seems to be passing in a dedicated IO resolver, but that would require more intrusive restructuring, so maybe best for its own PR. The TDefaultHlslIoResolver class and the former TDefaultIoResolver class share quite a bit of mechanism in a common base class. TODO: tbuffers are landing in the wrong register class, which needs some investigation. They're either wrong upstream, or the detection in the resolver is wrong.
-
John Kessenich authored
Also, fixed one test file that didn't have its syntax error as the last line.
-
John Kessenich authored
-
John Kessenich authored
Longer term, this storage class should be generated based on the mode of compilation.
-
- Apr 19, 2017
-
-
John Kessenich authored
HLSL: structuredbuffer counter functionality
-
John Kessenich authored
-
- Apr 18, 2017
-
-
John Kessenich authored
-
steve-lunarg authored
This adds TProgram::getUniformBlockCounterIndex(int index), which returns the index the block of the counter buffer associated with the block of the passed in index, if any, or -1 if none.
-
- Apr 14, 2017
-
-
steve-lunarg authored
-
steve-lunarg authored
This is WIP, heavy on the IP part. There's not yet enough to use in real workloads. Currently present: * Creation of separate counter buffers for structured buffer types needing them. * IncrementCounter / DecrementCounter methods * Postprocess to remove unused counter buffers from linkage * Associated counter buffers are given @count suffix (invalid as a user identifier) Not yet present: * reflection queries to obtain bindings for counter buffers * Append/Consume buffers * Ability to use SB references passed as fn parameters
-
- Apr 13, 2017
-
-
John Kessenich authored
-
John Kessenich authored
-
- Apr 12, 2017
-
-
John Kessenich authored
-
John Kessenich authored
-
John Kessenich authored
-
John Kessenich authored
HLSL: Fix #672: Support 1.#INF and -1.#INF syntax.
-
John Kessenich authored
-
John Kessenich authored
Null-conversion needs the right sized vectors to kick out with matching types.
-
John Kessenich authored
-
- Apr 11, 2017
-
-
John Kessenich authored
-
John Kessenich authored
-
- Apr 10, 2017
-
-
John Kessenich authored
HLSL: fix return type for isfinite
-
steve-lunarg authored
The prior decomposition of isfinite was not setting the return type on the sequence node. (Sequence was used because there's an internal temporary to avoid the complex rvalue problem).
-
- Apr 08, 2017
-
-
John Kessenich authored
Implement the extension SPV_KHR_16bit_storage
-
- Apr 07, 2017
-
-
John Kessenich authored
-
John Kessenich authored
-
John Kessenich authored
HLSL: cast bracket dereference index to int type if not.
-
Rex Xu authored
-
steve-lunarg authored
HLSL can index arrays using operator[] with non-integer types, and inserts a conversion to a uint if needed.
-
- Apr 06, 2017
-
-
John Kessenich authored
-
John Kessenich authored
HLSL: allow non-vec3 tessellation coordinate declarations
-
- Apr 05, 2017
-
-
John Kessenich authored
Corresponds to the EShMsgHlslOffsets flag in messages. Works for both GLSL and HLSL.
-
steve-lunarg authored
HLSL requires vec2 tessellation coordinate declarations in some cases (e.g, isoline topology), where SPIR-V requires the TessCoord qualified builtin to be a vec3 in all cases. This alters the IO form of the variable to be a vec3, which will be copied to the shader's declared type if needed. This is not a validation; the shader type must be correct.
-
- Apr 04, 2017
-
-
John Kessenich authored
-
-
Juan Lopez authored
C++11 features remove the dependencies from OS specific code. Changes: - Making WorkList class to have its own mutex instead of the OS specific global one. The new mutex is the one from std library. The OS specific code is also removed. - Using the C++11 std library to handle threads in StandAlone application and enabling concurrent processing on non-windows platforms. - converting the global variable Worklist into local variable workList.
-
John Kessenich authored
-
John Kessenich authored
Somewhat complex due to recognizing a general scalar, but not replicating it for each member to avoid side effects.
-
John Kessenich authored
HLSL: Decompose OpIsFinite to avoid capability restrictions
-