Lei Zhang
d39c94c56f
[spirv] Emit warning for packoffset ( #951 )
...
We do not support packoffset right now. Emit warning and ignore it.
2018-01-03 10:13:04 -05:00
Lei Zhang
4bee20cac9
[spirv] Legalization: use CCP and enable on HS/DS/GS ( #948 )
2017-12-21 16:20:52 -05:00
Ehsan
6887b565f4
[spirv] Fix the return type of OpSelect. ( #947 )
2017-12-21 13:40:42 -05:00
Lei Zhang
dfa66b6b9a
[spirv] Refresh SPIRV-Tools and update legalization pass recipe ( #946 )
2017-12-21 10:44:56 -05:00
Ehsan
5362b3597b
[spirv] Handle GetDimension methods w/ float args. ( #944 )
2017-12-21 10:20:46 -05:00
Lei Zhang
f9b53ba663
[spirv] Emit fatal error for failing to find counter variable ( #939 )
2017-12-20 20:35:58 -05:00
Lei Zhang
420e638d87
[spirv] Fix ConstantBuffer/TextureBuffer assignment ( #929 )
...
Assigning a ConstantBuffer<T> to a T is indeed a copy.
2017-12-20 20:31:55 -05:00
Lei Zhang
a269cf44fe
[spirv] Emit counter variables for alias structured/byte buffers ( #923 )
...
Also handled updating counter variable aliases in assignment and
function calls.
2017-12-20 20:27:57 -05:00
Lei Zhang
eaa3e8e26f
[spirv] Emit alias structured/byte buffer as pointer to pointer ( #918 )
...
This is to aid legalization passes to do their work.
For non-external variables of the following types
* (RW)StructuredBuffer
* (RW)ByteAddressBuffer
* AppendStructuredBuffer
* ConsumeStructuredBuffer
An extra level of pointer is applied. We use this extra level of
pointer to indicate that they are aliases. Loads and stores of
these alias variables will get the pointers of the aliased-to-
variables.
Associated counters is not handled in this commit.
2017-12-20 20:23:10 -05:00
Lei Zhang
cf39455abf
[spirv] Update doc about variable storage classes ( #945 )
2017-12-20 18:34:25 -05:00
Lei Zhang
9316ec211f
[spirv] Test atomic intrinsics on primitive types in CS ( #943 )
...
Interlocked*() can only be performed on int or uint typed resources
and shared memory variables.
2017-12-20 16:18:06 -05:00
Lei Zhang
c1991aadc8
[spirv] Fix static function variable initialization ( #942 )
...
Static function variable should be initialized once. We were
emitting if checks to make sure that but got the branch wrongly
flipped.
2017-12-20 14:03:46 -05:00
Xiang Li
b816c124f1
Support resource select for lib profile. ( #940 )
2017-12-20 10:47:29 -08:00
Justin Holewinski
9ebf135f7d
Update NV section of README to reflect r387 ( #941 )
...
The r387 driver series is the first to support DXIL
in release mode on Win10 FCU and later.
2017-12-20 05:33:03 -08:00
Xiang Li
ba844c25fe
Support local resource array which don't have dynamic indexing. ( #938 )
2017-12-19 15:29:11 -08:00
Ehsan
fc52dbced0
[spirv] Document missing pow2 partitioning feature. ( #937 )
...
* [spirv] Document missing pow2 partitioning feature.
* Provide more accurate location for attributes.
2017-12-19 13:37:48 -05:00
Ehsan
cb4e570b82
[spirv] warn {row|col}_major on standalone matrix. ( #935 )
2017-12-18 16:48:16 -05:00
Lei Zhang
1c498f3743
[spirv] Allow indexing into temporary struct ( #934 )
...
Also added a method for creating temporary variables.
2017-12-18 14:23:49 -05:00
Ehsan
8c5a38ba22
[spirv] Fix Memory Barrier mappings to SPIR-V. ( #917 )
2017-12-18 14:07:45 -05:00
Ehsan
9a502c0e10
[spirv] Fix image sample instruction return types. ( #932 )
2017-12-18 10:26:59 -05:00
Sebastian Tafuri
1a45ed822a
[spirv] Add support for vk::offset attribute ( #922 )
...
Added support for the vk::offset attribute to manually
specify offsets for struct members.
This commit only handles non-nested structs and it
does not validate the offset provided either.
2017-12-15 14:06:42 -08:00
Lei Zhang
ec8dc62320
[spirv] Fix vector casting that can be const-evaluated ( #931 )
...
For vector casting that can be const-evaluated, we need to call
tryToEvaluateAsConst(). Previously we only handled the scalar
case.
2017-12-15 13:04:21 -08:00
Xiang Li
db99efe397
Support resource select inside loop. ( #930 )
...
Also fix scalarizer fail when scattered element is null.
2017-12-15 11:33:03 -08:00
Lei Zhang
dfff2c0e15
[spirv] Fix wrong type when casting bool to literal int ( #928 )
2017-12-15 09:27:37 -08:00
Young Kim
ecdde943f7
Fix microcom and build issues, add missing .rc files
...
- fix microcom.h macros to allow for custom constructor and other issues
- fix 32/64-bit build issues in ShaderOpTest
- add missing .rc files for dxl, dxlib_sample, and dxc_batch
2017-12-14 18:38:53 -08:00
Tex Riddell
bf258eb98e
Fix ValidationTest failure when DXIL.dll present (SV_IsFrontFace type change) ( #927 )
2017-12-14 17:56:54 -08:00
Tex Riddell
b8628000aa
type_traits.h: Support isPodLike for _MSC_VER >= 1900 ( #925 )
2017-12-14 14:41:00 -08:00
Xiang Li
be1e6b130e
More fix for integer cbuffer variable has init val. ( #924 )
2017-12-14 14:02:13 -08:00
Young Kim
6c998fda25
- Add int16, uint16 execution tests ( #920 )
...
- Add enable-16-bit-types argument to half test shaders
2017-12-14 11:33:59 -08:00
Xiang Li
6539689175
Make sure default val for cbuffer element is ignored. ( #921 )
2017-12-14 09:24:33 -08:00
Xiang Li
4f7016af53
Support isfrontface as uint. ( #919 )
2017-12-13 20:41:51 -08:00
Young Kim
bf911b1d22
Add 16bit integers to Any IntrinsicCompTypes and for existing UInt3264 comp types. ( #913 )
2017-12-13 13:44:10 -08:00
Lei Zhang
08355c1764
[spirv] Early return for non-function call ( #916 )
2017-12-13 10:59:59 -08:00
Ehsan
4561cb9ea1
[spirv] Temporary struct/class object method call. ( #912 )
2017-12-13 08:50:50 -05:00
Xiang Li
0790e03364
Remove stacksave and stackstore. ( #914 )
2017-12-12 18:50:01 -08:00
Young Kim
ecf0307963
Half tests ( #911 )
...
- Adding half tests for unary,binary,tertiary math operations
- Add 'exec-future' option for hcttest
2017-12-12 15:12:19 -08:00
Ehsan
1d4509f35d
[spirv] Support Load methods that take Status arg. ( #905 )
2017-12-12 17:38:30 -05:00
Lei Zhang
674aa26115
[spirv] Refresh external dependency SPIRV-Tools ( #910 )
2017-12-12 13:34:32 -05:00
Tex Riddell
055cf27ac7
Fix re-emit metadata, and skip ViewID state for libs. ( #908 )
2017-12-11 21:57:00 -08:00
Xiang Li
64eb31cc51
Ignore default val for cbuffer. ( #907 )
2017-12-11 18:21:09 -08:00
Lei Zhang
37e8153e70
[spirv] Remove structured/byte buffer assignment tests ( #906 )
...
We will have a different way of handling structured/byte buffer
aliasing.
2017-12-11 15:41:41 -05:00
Ehsan
679b7c80c7
[spirv] Support CheckAccessFullyMapped intrinsic. ( #897 )
2017-12-11 14:02:21 -05:00
Marcelo Lopez Ruiz
546b159729
Make dndxc dll search path more user friendly ( #904 )
2017-12-11 09:18:06 -08:00
Marcelo Lopez Ruiz
08990d21e3
Restore variable width font, !dbg scrolls into view and highlights col. ( #852 )
...
Some perf improvements to colorization.
2017-12-10 13:35:41 -08:00
Marcelo Lopez Ruiz
f1cfd374f9
Run fewer reflection tests even in full case ( #865 )
2017-12-10 13:35:18 -08:00
Xiang Li
c011ec3d55
Support vector constant in TryEvalIntrinsic. ( #902 )
2017-12-09 16:27:44 -08:00
Xiang Li
639e12c118
When MemcpySplitter::PatchMemCpyWithZeroIdxGEP, not go inside matrix. ( #901 )
2017-12-08 22:32:52 -08:00
Young Kim
fdadc6d718
Denorm float tests ( #899 )
...
-Execution tests for Shader Model 6.2 denorm mode
-'FAdd', 'FSub', 'FMul', 'FDiv', 'FMad' instructions are used for testings
-Code cleanup
2017-12-08 18:18:32 -08:00
Xiang Li
455885b3fc
Support matrix transpose. ( #900 )
2017-12-08 16:40:23 -08:00
Lei Zhang
d7a96e9e80
[spirv] Always emit a counter variable for RWStructuredBuffer ( #896 )
...
This will make handling RWStructuredBuffer aliasing legalization
easier later.
2017-12-07 17:02:16 -05:00