summaryrefslogtreecommitdiffstats
path: root/source/slang/slang-stdlib.cpp
diff options
context:
space:
mode:
authorTim Foley <tfoleyNV@users.noreply.github.com>2017-07-11 15:10:24 -0700
committerGitHub <noreply@github.com>2017-07-11 15:10:24 -0700
commitd8d8fefb9693e83bea215629f3a77f8a48d2f50f (patch)
tree509f77ecb1c2ee3849e42e74f88ad44a46687d29 /source/slang/slang-stdlib.cpp
parentfa48d2d59abb7e2e5f92ab1477e0700cb8a76680 (diff)
parent5d06d42bbcbf4983bd75f4dd19b89e792698cd14 (diff)
Merge pull request #74 from tfoleyNV/resources-in-structs
Resources in structs
Diffstat (limited to 'source/slang/slang-stdlib.cpp')
-rw-r--r--source/slang/slang-stdlib.cpp90
1 files changed, 72 insertions, 18 deletions
diff --git a/source/slang/slang-stdlib.cpp b/source/slang/slang-stdlib.cpp
index 09958ddab..bcc87b201 100644
--- a/source/slang/slang-stdlib.cpp
+++ b/source/slang/slang-stdlib.cpp
@@ -399,29 +399,83 @@ __generic<T : __BuiltinArithmeticType> __intrinsic vector<T,3> cross(vector<T,3>
__intrinsic int4 D3DCOLORtoUBYTE4(float4 x);
// Partial-difference derivatives
-__generic<T : __BuiltinFloatingPointType> __intrinsic T ddx(T x);
-__generic<T : __BuiltinFloatingPointType, let N : int> __intrinsic vector<T,N> ddx(vector<T,N> x);
-__generic<T : __BuiltinFloatingPointType, let N : int, let M : int> __intrinsic matrix<T,N,M> ddx(matrix<T,N,M> x);
+__generic<T : __BuiltinFloatingPointType>
+__intrinsic(glsl, dFdx)
+__intrinsic
+T ddx(T x);
+__generic<T : __BuiltinFloatingPointType, let N : int>
+__intrinsic(glsl, dFdx)
+__intrinsic
+vector<T,N> ddx(vector<T,N> x);
+__generic<T : __BuiltinFloatingPointType, let N : int, let M : int>
+__intrinsic(glsl, dFdx)
+__intrinsic
+matrix<T,N,M> ddx(matrix<T,N,M> x);
-__generic<T : __BuiltinFloatingPointType> __intrinsic T ddx_coarse(T x);
-__generic<T : __BuiltinFloatingPointType, let N : int> __intrinsic vector<T,N> ddx_coarse(vector<T,N> x);
-__generic<T : __BuiltinFloatingPointType, let N : int, let M : int> __intrinsic matrix<T,N,M> ddx_coarse(matrix<T,N,M> x);
+__generic<T : __BuiltinFloatingPointType>
+__intrinsic(glsl, dFdxCoarse)
+__intrinsic
+T ddx_coarse(T x);
+__generic<T : __BuiltinFloatingPointType, let N : int>
+__intrinsic(glsl, dFdxCoarse)
+__intrinsic
+vector<T,N> ddx_coarse(vector<T,N> x);
+__generic<T : __BuiltinFloatingPointType, let N : int, let M : int>
+__intrinsic(glsl, dFdxCoarse)
+__intrinsic
+matrix<T,N,M> ddx_coarse(matrix<T,N,M> x);
-__generic<T : __BuiltinFloatingPointType> __intrinsic T ddx_fine(T x);
-__generic<T : __BuiltinFloatingPointType, let N : int> __intrinsic vector<T,N> ddx_fine(vector<T,N> x);
-__generic<T : __BuiltinFloatingPointType, let N : int, let M : int> __intrinsic matrix<T,N,M> ddx_fine(matrix<T,N,M> x);
+__generic<T : __BuiltinFloatingPointType>
+__intrinsic(glsl, dFdxFine)
+__intrinsic
+T ddx_fine(T x);
+__generic<T : __BuiltinFloatingPointType, let N : int>
+__intrinsic(glsl, dFdxFine)
+__intrinsic
+vector<T,N> ddx_fine(vector<T,N> x);
+__generic<T : __BuiltinFloatingPointType, let N : int, let M : int>
+__intrinsic(glsl, dFdxFine)
+__intrinsic
+matrix<T,N,M> ddx_fine(matrix<T,N,M> x);
-__generic<T : __BuiltinFloatingPointType> __intrinsic T ddy(T x);
-__generic<T : __BuiltinFloatingPointType, let N : int> __intrinsic vector<T,N> ddy(vector<T,N> x);
-__generic<T : __BuiltinFloatingPointType, let N : int, let M : int> __intrinsic matrix<T,N,M> ddy(matrix<T,N,M> x);
+__generic<T : __BuiltinFloatingPointType>
+__intrinsic(glsl, dFdy)
+__intrinsic
+T ddy(T x);
+__generic<T : __BuiltinFloatingPointType, let N : int>
+__intrinsic(glsl, dFdy)
+__intrinsic
+vector<T,N> ddy(vector<T,N> x);
+__generic<T : __BuiltinFloatingPointType, let N : int, let M : int>
+__intrinsic(glsl, dFdy)
+__intrinsic
+ matrix<T,N,M> ddy(matrix<T,N,M> x);
-__generic<T : __BuiltinFloatingPointType> __intrinsic T ddy_coarse(T x);
-__generic<T : __BuiltinFloatingPointType, let N : int> __intrinsic vector<T,N> ddy_coarse(vector<T,N> x);
-__generic<T : __BuiltinFloatingPointType, let N : int, let M : int> __intrinsic matrix<T,N,M> ddy_coarse(matrix<T,N,M> x);
+__generic<T : __BuiltinFloatingPointType>
+__intrinsic(glsl, dFdyCoarse)
+__intrinsic
+T ddy_coarse(T x);
+__generic<T : __BuiltinFloatingPointType, let N : int>
+__intrinsic(glsl, dFdyCoarse)
+__intrinsic
+vector<T,N> ddy_coarse(vector<T,N> x);
+__generic<T : __BuiltinFloatingPointType, let N : int, let M : int>
+__intrinsic(glsl, dFdyCoarse)
+__intrinsic
+matrix<T,N,M> ddy_coarse(matrix<T,N,M> x);
-__generic<T : __BuiltinFloatingPointType> __intrinsic T ddy_fine(T x);
-__generic<T : __BuiltinFloatingPointType, let N : int> __intrinsic vector<T,N> ddy_fine(vector<T,N> x);
-__generic<T : __BuiltinFloatingPointType, let N : int, let M : int> __intrinsic matrix<T,N,M> ddy_fine(matrix<T,N,M> x);
+__generic<T : __BuiltinFloatingPointType>
+__intrinsic(glsl, dFdyFine)
+__intrinsic
+T ddy_fine(T x);
+__generic<T : __BuiltinFloatingPointType, let N : int>
+__intrinsic(glsl, dFdyFine)
+__intrinsic
+vector<T,N> ddy_fine(vector<T,N> x);
+__generic<T : __BuiltinFloatingPointType, let N : int, let M : int>
+__intrinsic(glsl, dFdyFine)
+__intrinsic
+matrix<T,N,M> ddy_fine(matrix<T,N,M> x);
// Radians to degrees