GPU: GLSL-C++ compilation stubs #4

Closed
Clément Foucault wants to merge 38 commits from glsl-cpp-stubs-2 into glsl-include

When changing the target branch, be careful to rebase the branch in your fork to match. See documentation.
Showing only changes of commit 3745cc4555 - Show all commits

View File

@ -448,6 +448,14 @@ IMG_TEMPLATE void imageFence(T) {}
# define imageLoadFast imageLoad
# define imageStoreFast imageStore
IMG_TEMPLATE uint imageAtomicAdd(T, IntCoord, uint);
IMG_TEMPLATE uint imageAtomicMin(T, IntCoord, uint);
IMG_TEMPLATE uint imageAtomicMax(T, IntCoord, uint);
IMG_TEMPLATE uint imageAtomicAnd(T, IntCoord, uint);
IMG_TEMPLATE uint imageAtomicXor(T, IntCoord, uint);
IMG_TEMPLATE uint imageAtomicExchange(T, IntCoord, uint);
IMG_TEMPLATE uint imageAtomicCompSwap(T, IntCoord, uint, uint);
# undef IMG_TEMPLATE
using image1D = ImageBase<double, 1>;
@ -583,6 +591,7 @@ uint floatBitsToUint(double) {}
double intBitsToFloat(int) {}
double uintBitsToFloat(uint) {}
/* Derivative functions. */
template<typename T> T dFdx(T) {}
template<typename T> T dFdy(T) {}
template<typename T> T fwidth(T) {}
@ -592,6 +601,24 @@ template<typename T, int D> float faceforward(VecBase<T, D>, VecBase<T, D>, VecB
template<typename T, int D> float reflect(VecBase<T, D>, VecBase<T, D>) {}
template<typename T, int D> float refract(VecBase<T, D>, VecBase<T, D>, double) {}
/* Atomic operations. */
int atomicAdd(int &, int);
int atomicAnd(int &, int);
int atomicOr(int &, int);
int atomicXor(int &, int);
int atomicMin(int &, int);
int atomicMax(int &, int);
int atomicExchange(int &, int);
int atomicCompSwap(int &, int, int);
uint atomicAdd(uint &, uint);
uint atomicAnd(uint &, uint);
uint atomicOr(uint &, uint);
uint atomicXor(uint &, uint);
uint atomicMin(uint &, uint);
uint atomicMax(uint &, uint);
uint atomicExchange(uint &, uint);
uint atomicCompSwap(uint &, uint, uint);
/* Packing functions. */
uint packHalf2x16(float2) {}
uint packUnorm2x16(float2) {}