[Mesa-dev] [PATCH 21/21] glsl: Delete old built-in function generation code.
Kenneth Graunke
kenneth at whitecape.org
Wed Sep 4 15:22:44 PDT 2013
None of this is used anymore.
Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
---
src/glsl/builtins/glsl/determinant.glsl | 71 --
src/glsl/builtins/glsl/inverse.glsl | 106 --
src/glsl/builtins/ir/EmitVertex.ir | 5 -
src/glsl/builtins/ir/EndPrimitive.ir | 5 -
src/glsl/builtins/ir/abs.ir | 41 -
src/glsl/builtins/ir/acos.ir | 29 -
src/glsl/builtins/ir/acosh.ir | 21 -
src/glsl/builtins/ir/all.ir | 16 -
src/glsl/builtins/ir/any.ir | 16 -
src/glsl/builtins/ir/asin.ir | 109 ---
src/glsl/builtins/ir/asinh.ir | 53 -
src/glsl/builtins/ir/atan.ir | 134 ---
src/glsl/builtins/ir/atanh.ir | 37 -
src/glsl/builtins/ir/bitCount.ir | 41 -
src/glsl/builtins/ir/bitfieldExtract.ir | 57 --
src/glsl/builtins/ir/bitfieldInsert.ir | 65 --
src/glsl/builtins/ir/bitfieldReverse.ir | 41 -
src/glsl/builtins/ir/ceil.ir | 21 -
src/glsl/builtins/ir/clamp.ir | 148 ---
src/glsl/builtins/ir/cos.ir | 21 -
src/glsl/builtins/ir/cosh.ir | 30 -
src/glsl/builtins/ir/cross.ir | 9 -
src/glsl/builtins/ir/dFdx.ir | 21 -
src/glsl/builtins/ir/dFdy.ir | 21 -
src/glsl/builtins/ir/degrees.ir | 21 -
src/glsl/builtins/ir/distance.ir | 31 -
src/glsl/builtins/ir/dot.ir | 25 -
src/glsl/builtins/ir/equal.ir | 73 --
src/glsl/builtins/ir/exp.ir | 21 -
src/glsl/builtins/ir/exp2.ir | 21 -
src/glsl/builtins/ir/faceforward.ir | 37 -
src/glsl/builtins/ir/findLSB.ir | 41 -
src/glsl/builtins/ir/findMSB.ir | 41 -
src/glsl/builtins/ir/floatBitsToInt.ir | 21 -
src/glsl/builtins/ir/floatBitsToUint.ir | 21 -
src/glsl/builtins/ir/floor.ir | 21 -
src/glsl/builtins/ir/fma.ir | 29 -
src/glsl/builtins/ir/fract.ir | 22 -
src/glsl/builtins/ir/ftransform.ir | 9 -
src/glsl/builtins/ir/fwidth.ir | 29 -
src/glsl/builtins/ir/greaterThan.ir | 55 --
src/glsl/builtins/ir/greaterThanEqual.ir | 55 --
src/glsl/builtins/ir/intBitsToFloat.ir | 21 -
src/glsl/builtins/ir/inversesqrt.ir | 21 -
src/glsl/builtins/ir/isinf.ir | 17 -
src/glsl/builtins/ir/isnan.ir | 17 -
src/glsl/builtins/ir/length.ir | 21 -
src/glsl/builtins/ir/lessThan.ir | 55 --
src/glsl/builtins/ir/lessThanEqual.ir | 55 --
src/glsl/builtins/ir/log.ir | 21 -
src/glsl/builtins/ir/log2.ir | 21 -
src/glsl/builtins/ir/matrixCompMult.ir | 91 --
src/glsl/builtins/ir/max.ir | 127 ---
src/glsl/builtins/ir/min.ir | 127 ---
src/glsl/builtins/ir/mix.ir | 88 --
src/glsl/builtins/ir/mod.ir | 43 -
src/glsl/builtins/ir/modf.ir | 37 -
src/glsl/builtins/ir/noise1.ir | 18 -
src/glsl/builtins/ir/noise2.ir | 61 --
src/glsl/builtins/ir/noise3.ir | 73 --
src/glsl/builtins/ir/noise4.ir | 97 --
src/glsl/builtins/ir/normalize.ir | 21 -
src/glsl/builtins/ir/not.ir | 16 -
src/glsl/builtins/ir/notEqual.ir | 73 --
src/glsl/builtins/ir/outerProduct.ir | 92 --
src/glsl/builtins/ir/packHalf2x16.ir | 6 -
src/glsl/builtins/ir/packSnorm2x16.ir | 6 -
src/glsl/builtins/ir/packSnorm4x8.ir | 6 -
src/glsl/builtins/ir/packUnorm2x16.ir | 6 -
src/glsl/builtins/ir/packUnorm4x8.ir | 6 -
src/glsl/builtins/ir/pow.ir | 25 -
src/glsl/builtins/ir/radians.ir | 21 -
src/glsl/builtins/ir/reflect.ir | 58 --
src/glsl/builtins/ir/refract.ir | 102 --
src/glsl/builtins/ir/round.ir | 21 -
src/glsl/builtins/ir/roundEven.ir | 21 -
src/glsl/builtins/ir/sign.ir | 42 -
src/glsl/builtins/ir/sin.ir | 21 -
src/glsl/builtins/ir/sinh.ir | 30 -
src/glsl/builtins/ir/smoothstep.ir | 100 --
src/glsl/builtins/ir/sqrt.ir | 21 -
src/glsl/builtins/ir/step.ir | 68 --
src/glsl/builtins/ir/tan.ir | 21 -
src/glsl/builtins/ir/tanh.ir | 42 -
src/glsl/builtins/ir/transpose.ir | 139 ---
src/glsl/builtins/ir/trunc.ir | 21 -
src/glsl/builtins/ir/uintBitsToFloat.ir | 21 -
src/glsl/builtins/ir/unpackHalf2x16.ir | 6 -
src/glsl/builtins/ir/unpackSnorm2x16.ir | 6 -
src/glsl/builtins/ir/unpackSnorm4x8.ir | 6 -
src/glsl/builtins/ir/unpackUnorm2x16.ir | 6 -
src/glsl/builtins/ir/unpackUnorm4x8.ir | 6 -
src/glsl/builtins/profiles/100es.frag | 8 -
src/glsl/builtins/profiles/100es.glsl | 296 ------
src/glsl/builtins/profiles/100es.vert | 6 -
src/glsl/builtins/profiles/110.frag | 40 -
src/glsl/builtins/profiles/110.glsl | 332 -------
src/glsl/builtins/profiles/110.vert | 25 -
src/glsl/builtins/profiles/120.frag | 39 -
src/glsl/builtins/profiles/120.glsl | 364 -------
src/glsl/builtins/profiles/120.vert | 21 -
src/glsl/builtins/profiles/130.frag | 141 ---
src/glsl/builtins/profiles/130.glsl | 904 -----------------
src/glsl/builtins/profiles/130.vert | 2 -
src/glsl/builtins/profiles/140.frag | 140 ---
src/glsl/builtins/profiles/140.glsl | 989 -------------------
src/glsl/builtins/profiles/150.frag | 140 ---
src/glsl/builtins/profiles/150.geom | 3 -
src/glsl/builtins/profiles/150.glsl | 1009 -------------------
src/glsl/builtins/profiles/300es.frag | 85 --
src/glsl/builtins/profiles/300es.glsl | 749 --------------
src/glsl/builtins/profiles/330.frag | 140 ---
src/glsl/builtins/profiles/330.glsl | 1029 --------------------
src/glsl/builtins/profiles/ARB_gpu_shader5.glsl | 81 --
.../builtins/profiles/ARB_shader_bit_encoding.glsl | 22 -
.../builtins/profiles/ARB_shader_texture_lod.frag | 17 -
.../builtins/profiles/ARB_shader_texture_lod.glsl | 46 -
.../profiles/ARB_shading_language_packing.glsl | 14 -
.../profiles/ARB_texture_cube_map_array.frag | 6 -
.../profiles/ARB_texture_cube_map_array.glsl | 20 -
.../builtins/profiles/ARB_texture_multisample.glsl | 18 -
.../builtins/profiles/ARB_texture_query_lod.frag | 38 -
.../builtins/profiles/ARB_texture_rectangle.glsl | 7 -
src/glsl/builtins/profiles/EXT_texture_array.frag | 11 -
src/glsl/builtins/profiles/EXT_texture_array.geom | 12 -
src/glsl/builtins/profiles/EXT_texture_array.vert | 11 -
.../builtins/profiles/OES_EGL_image_external.glsl | 7 -
.../profiles/OES_standard_derivatives.frag | 21 -
src/glsl/builtins/profiles/OES_texture_3D.frag | 8 -
src/glsl/builtins/profiles/OES_texture_3D.vert | 7 -
src/glsl/builtins/tools/generate_builtins.py | 306 ------
.../builtins/tools/generate_matrixCompMultGLSL.py | 28 -
.../builtins/tools/generate_outerProductGLSL.py | 23 -
src/glsl/builtins/tools/generate_transposeGLSL.py | 28 -
src/glsl/builtins/tools/texture_builtins.py | 664 -------------
135 files changed, 11595 deletions(-)
delete mode 100644 src/glsl/builtins/glsl/determinant.glsl
delete mode 100644 src/glsl/builtins/glsl/inverse.glsl
delete mode 100644 src/glsl/builtins/ir/EmitVertex.ir
delete mode 100644 src/glsl/builtins/ir/EndPrimitive.ir
delete mode 100644 src/glsl/builtins/ir/abs.ir
delete mode 100644 src/glsl/builtins/ir/acos.ir
delete mode 100644 src/glsl/builtins/ir/acosh.ir
delete mode 100644 src/glsl/builtins/ir/all.ir
delete mode 100644 src/glsl/builtins/ir/any.ir
delete mode 100644 src/glsl/builtins/ir/asin.ir
delete mode 100644 src/glsl/builtins/ir/asinh.ir
delete mode 100644 src/glsl/builtins/ir/atan.ir
delete mode 100644 src/glsl/builtins/ir/atanh.ir
delete mode 100644 src/glsl/builtins/ir/bitCount.ir
delete mode 100644 src/glsl/builtins/ir/bitfieldExtract.ir
delete mode 100644 src/glsl/builtins/ir/bitfieldInsert.ir
delete mode 100644 src/glsl/builtins/ir/bitfieldReverse.ir
delete mode 100644 src/glsl/builtins/ir/ceil.ir
delete mode 100644 src/glsl/builtins/ir/clamp.ir
delete mode 100644 src/glsl/builtins/ir/cos.ir
delete mode 100644 src/glsl/builtins/ir/cosh.ir
delete mode 100644 src/glsl/builtins/ir/cross.ir
delete mode 100644 src/glsl/builtins/ir/dFdx.ir
delete mode 100644 src/glsl/builtins/ir/dFdy.ir
delete mode 100644 src/glsl/builtins/ir/degrees.ir
delete mode 100644 src/glsl/builtins/ir/distance.ir
delete mode 100644 src/glsl/builtins/ir/dot.ir
delete mode 100644 src/glsl/builtins/ir/equal.ir
delete mode 100644 src/glsl/builtins/ir/exp.ir
delete mode 100644 src/glsl/builtins/ir/exp2.ir
delete mode 100644 src/glsl/builtins/ir/faceforward.ir
delete mode 100644 src/glsl/builtins/ir/findLSB.ir
delete mode 100644 src/glsl/builtins/ir/findMSB.ir
delete mode 100644 src/glsl/builtins/ir/floatBitsToInt.ir
delete mode 100644 src/glsl/builtins/ir/floatBitsToUint.ir
delete mode 100644 src/glsl/builtins/ir/floor.ir
delete mode 100644 src/glsl/builtins/ir/fma.ir
delete mode 100644 src/glsl/builtins/ir/fract.ir
delete mode 100644 src/glsl/builtins/ir/ftransform.ir
delete mode 100644 src/glsl/builtins/ir/fwidth.ir
delete mode 100644 src/glsl/builtins/ir/greaterThan.ir
delete mode 100644 src/glsl/builtins/ir/greaterThanEqual.ir
delete mode 100644 src/glsl/builtins/ir/intBitsToFloat.ir
delete mode 100644 src/glsl/builtins/ir/inversesqrt.ir
delete mode 100644 src/glsl/builtins/ir/isinf.ir
delete mode 100644 src/glsl/builtins/ir/isnan.ir
delete mode 100644 src/glsl/builtins/ir/length.ir
delete mode 100644 src/glsl/builtins/ir/lessThan.ir
delete mode 100644 src/glsl/builtins/ir/lessThanEqual.ir
delete mode 100644 src/glsl/builtins/ir/log.ir
delete mode 100644 src/glsl/builtins/ir/log2.ir
delete mode 100644 src/glsl/builtins/ir/matrixCompMult.ir
delete mode 100644 src/glsl/builtins/ir/max.ir
delete mode 100644 src/glsl/builtins/ir/min.ir
delete mode 100644 src/glsl/builtins/ir/mix.ir
delete mode 100644 src/glsl/builtins/ir/mod.ir
delete mode 100644 src/glsl/builtins/ir/modf.ir
delete mode 100644 src/glsl/builtins/ir/noise1.ir
delete mode 100644 src/glsl/builtins/ir/noise2.ir
delete mode 100644 src/glsl/builtins/ir/noise3.ir
delete mode 100644 src/glsl/builtins/ir/noise4.ir
delete mode 100644 src/glsl/builtins/ir/normalize.ir
delete mode 100644 src/glsl/builtins/ir/not.ir
delete mode 100644 src/glsl/builtins/ir/notEqual.ir
delete mode 100644 src/glsl/builtins/ir/outerProduct.ir
delete mode 100644 src/glsl/builtins/ir/packHalf2x16.ir
delete mode 100644 src/glsl/builtins/ir/packSnorm2x16.ir
delete mode 100644 src/glsl/builtins/ir/packSnorm4x8.ir
delete mode 100644 src/glsl/builtins/ir/packUnorm2x16.ir
delete mode 100644 src/glsl/builtins/ir/packUnorm4x8.ir
delete mode 100644 src/glsl/builtins/ir/pow.ir
delete mode 100644 src/glsl/builtins/ir/radians.ir
delete mode 100644 src/glsl/builtins/ir/reflect.ir
delete mode 100644 src/glsl/builtins/ir/refract.ir
delete mode 100644 src/glsl/builtins/ir/round.ir
delete mode 100644 src/glsl/builtins/ir/roundEven.ir
delete mode 100644 src/glsl/builtins/ir/sign.ir
delete mode 100644 src/glsl/builtins/ir/sin.ir
delete mode 100644 src/glsl/builtins/ir/sinh.ir
delete mode 100644 src/glsl/builtins/ir/smoothstep.ir
delete mode 100644 src/glsl/builtins/ir/sqrt.ir
delete mode 100644 src/glsl/builtins/ir/step.ir
delete mode 100644 src/glsl/builtins/ir/tan.ir
delete mode 100644 src/glsl/builtins/ir/tanh.ir
delete mode 100644 src/glsl/builtins/ir/transpose.ir
delete mode 100644 src/glsl/builtins/ir/trunc.ir
delete mode 100644 src/glsl/builtins/ir/uintBitsToFloat.ir
delete mode 100644 src/glsl/builtins/ir/unpackHalf2x16.ir
delete mode 100644 src/glsl/builtins/ir/unpackSnorm2x16.ir
delete mode 100644 src/glsl/builtins/ir/unpackSnorm4x8.ir
delete mode 100644 src/glsl/builtins/ir/unpackUnorm2x16.ir
delete mode 100644 src/glsl/builtins/ir/unpackUnorm4x8.ir
delete mode 100644 src/glsl/builtins/profiles/100es.frag
delete mode 100644 src/glsl/builtins/profiles/100es.glsl
delete mode 100644 src/glsl/builtins/profiles/100es.vert
delete mode 100644 src/glsl/builtins/profiles/110.frag
delete mode 100644 src/glsl/builtins/profiles/110.glsl
delete mode 100644 src/glsl/builtins/profiles/110.vert
delete mode 100644 src/glsl/builtins/profiles/120.frag
delete mode 100644 src/glsl/builtins/profiles/120.glsl
delete mode 100644 src/glsl/builtins/profiles/120.vert
delete mode 100644 src/glsl/builtins/profiles/130.frag
delete mode 100644 src/glsl/builtins/profiles/130.glsl
delete mode 100644 src/glsl/builtins/profiles/130.vert
delete mode 100644 src/glsl/builtins/profiles/140.frag
delete mode 100644 src/glsl/builtins/profiles/140.glsl
delete mode 100644 src/glsl/builtins/profiles/150.frag
delete mode 100644 src/glsl/builtins/profiles/150.geom
delete mode 100644 src/glsl/builtins/profiles/150.glsl
delete mode 100644 src/glsl/builtins/profiles/300es.frag
delete mode 100644 src/glsl/builtins/profiles/300es.glsl
delete mode 100644 src/glsl/builtins/profiles/330.frag
delete mode 100644 src/glsl/builtins/profiles/330.glsl
delete mode 100644 src/glsl/builtins/profiles/ARB_gpu_shader5.glsl
delete mode 100644 src/glsl/builtins/profiles/ARB_shader_bit_encoding.glsl
delete mode 100644 src/glsl/builtins/profiles/ARB_shader_texture_lod.frag
delete mode 100644 src/glsl/builtins/profiles/ARB_shader_texture_lod.glsl
delete mode 100644 src/glsl/builtins/profiles/ARB_shading_language_packing.glsl
delete mode 100644 src/glsl/builtins/profiles/ARB_texture_cube_map_array.frag
delete mode 100644 src/glsl/builtins/profiles/ARB_texture_cube_map_array.glsl
delete mode 100644 src/glsl/builtins/profiles/ARB_texture_multisample.glsl
delete mode 100644 src/glsl/builtins/profiles/ARB_texture_query_lod.frag
delete mode 100644 src/glsl/builtins/profiles/ARB_texture_rectangle.glsl
delete mode 100644 src/glsl/builtins/profiles/EXT_texture_array.frag
delete mode 100644 src/glsl/builtins/profiles/EXT_texture_array.geom
delete mode 100644 src/glsl/builtins/profiles/EXT_texture_array.vert
delete mode 100644 src/glsl/builtins/profiles/OES_EGL_image_external.glsl
delete mode 100644 src/glsl/builtins/profiles/OES_standard_derivatives.frag
delete mode 100644 src/glsl/builtins/profiles/OES_texture_3D.frag
delete mode 100644 src/glsl/builtins/profiles/OES_texture_3D.vert
delete mode 100755 src/glsl/builtins/tools/generate_builtins.py
delete mode 100755 src/glsl/builtins/tools/generate_matrixCompMultGLSL.py
delete mode 100755 src/glsl/builtins/tools/generate_outerProductGLSL.py
delete mode 100755 src/glsl/builtins/tools/generate_transposeGLSL.py
delete mode 100755 src/glsl/builtins/tools/texture_builtins.py
diff --git a/src/glsl/builtins/glsl/determinant.glsl b/src/glsl/builtins/glsl/determinant.glsl
deleted file mode 100644
index 84f3872..0000000
--- a/src/glsl/builtins/glsl/determinant.glsl
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Copyright © 2012 Intel Corporation
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice (including the next
- * paragraph) shall be included in all copies or substantial portions of the
- * Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- */
-
-#version 120
-
-// Forward declaration because builtins don't know about other builtins.
-float dot(vec4, vec4);
-
-float determinant(mat2 m)
-{
- return m[0][0] * m[1][1] - m[1][0] * m[0][1];
-}
-
-float determinant(mat3 m)
-{
- return (+ m[0][0] * (m[1][1] * m[2][2] - m[1][2] * m[2][1])
- - m[0][1] * (m[1][0] * m[2][2] - m[1][2] * m[2][0])
- + m[0][2] * (m[1][0] * m[2][1] - m[1][1] * m[2][0]));
-}
-
-float determinant(mat4 m)
-{
- float SubFactor00 = m[2][2] * m[3][3] - m[3][2] * m[2][3];
- float SubFactor01 = m[2][1] * m[3][3] - m[3][1] * m[2][3];
- float SubFactor02 = m[2][1] * m[3][2] - m[3][1] * m[2][2];
- float SubFactor03 = m[2][0] * m[3][3] - m[3][0] * m[2][3];
- float SubFactor04 = m[2][0] * m[3][2] - m[3][0] * m[2][2];
- float SubFactor05 = m[2][0] * m[3][1] - m[3][0] * m[2][1];
- float SubFactor06 = m[1][2] * m[3][3] - m[3][2] * m[1][3];
- float SubFactor07 = m[1][1] * m[3][3] - m[3][1] * m[1][3];
- float SubFactor08 = m[1][1] * m[3][2] - m[3][1] * m[1][2];
- float SubFactor09 = m[1][0] * m[3][3] - m[3][0] * m[1][3];
- float SubFactor10 = m[1][0] * m[3][2] - m[3][0] * m[1][2];
- float SubFactor11 = m[1][1] * m[3][3] - m[3][1] * m[1][3];
- float SubFactor12 = m[1][0] * m[3][1] - m[3][0] * m[1][1];
- float SubFactor13 = m[1][2] * m[2][3] - m[2][2] * m[1][3];
- float SubFactor14 = m[1][1] * m[2][3] - m[2][1] * m[1][3];
- float SubFactor15 = m[1][1] * m[2][2] - m[2][1] * m[1][2];
- float SubFactor16 = m[1][0] * m[2][3] - m[2][0] * m[1][3];
- float SubFactor17 = m[1][0] * m[2][2] - m[2][0] * m[1][2];
- float SubFactor18 = m[1][0] * m[2][1] - m[2][0] * m[1][1];
-
- vec4 adj_0;
-
- adj_0[0] = + (m[1][1] * SubFactor00 - m[1][2] * SubFactor01 + m[1][3] * SubFactor02);
- adj_0[1] = - (m[1][0] * SubFactor00 - m[1][2] * SubFactor03 + m[1][3] * SubFactor04);
- adj_0[2] = + (m[1][0] * SubFactor01 - m[1][1] * SubFactor03 + m[1][3] * SubFactor05);
- adj_0[3] = - (m[1][0] * SubFactor02 - m[1][1] * SubFactor04 + m[1][2] * SubFactor05);
-
- return dot(m[0], adj_0);
-}
diff --git a/src/glsl/builtins/glsl/inverse.glsl b/src/glsl/builtins/glsl/inverse.glsl
deleted file mode 100644
index ffb84f9..0000000
--- a/src/glsl/builtins/glsl/inverse.glsl
+++ /dev/null
@@ -1,106 +0,0 @@
-/* Copyright (c) 2005 - 2012 G-Truc Creation (www.g-truc.net)
- * Copyright © 2012 Intel Corporation
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#version 120
-mat2 inverse(mat2 m)
-{
- mat2 adj;
- adj[0][0] = m[1][1];
- adj[0][1] = -m[0][1];
- adj[1][0] = -m[1][0];
- adj[1][1] = m[0][0];
- float det = m[0][0] * m[1][1] - m[1][0] * m[0][1];
- return adj / det;
-}
-
-mat3 inverse(mat3 m)
-{
- mat3 adj;
- adj[0][0] = + (m[1][1] * m[2][2] - m[2][1] * m[1][2]);
- adj[1][0] = - (m[1][0] * m[2][2] - m[2][0] * m[1][2]);
- adj[2][0] = + (m[1][0] * m[2][1] - m[2][0] * m[1][1]);
- adj[0][1] = - (m[0][1] * m[2][2] - m[2][1] * m[0][2]);
- adj[1][1] = + (m[0][0] * m[2][2] - m[2][0] * m[0][2]);
- adj[2][1] = - (m[0][0] * m[2][1] - m[2][0] * m[0][1]);
- adj[0][2] = + (m[0][1] * m[1][2] - m[1][1] * m[0][2]);
- adj[1][2] = - (m[0][0] * m[1][2] - m[1][0] * m[0][2]);
- adj[2][2] = + (m[0][0] * m[1][1] - m[1][0] * m[0][1]);
-
- float det = (+ m[0][0] * (m[1][1] * m[2][2] - m[1][2] * m[2][1])
- - m[0][1] * (m[1][0] * m[2][2] - m[1][2] * m[2][0])
- + m[0][2] * (m[1][0] * m[2][1] - m[1][1] * m[2][0]));
-
- return adj / det;
-}
-
-mat4 inverse(mat4 m)
-{
- float SubFactor00 = m[2][2] * m[3][3] - m[3][2] * m[2][3];
- float SubFactor01 = m[2][1] * m[3][3] - m[3][1] * m[2][3];
- float SubFactor02 = m[2][1] * m[3][2] - m[3][1] * m[2][2];
- float SubFactor03 = m[2][0] * m[3][3] - m[3][0] * m[2][3];
- float SubFactor04 = m[2][0] * m[3][2] - m[3][0] * m[2][2];
- float SubFactor05 = m[2][0] * m[3][1] - m[3][0] * m[2][1];
- float SubFactor06 = m[1][2] * m[3][3] - m[3][2] * m[1][3];
- float SubFactor07 = m[1][1] * m[3][3] - m[3][1] * m[1][3];
- float SubFactor08 = m[1][1] * m[3][2] - m[3][1] * m[1][2];
- float SubFactor09 = m[1][0] * m[3][3] - m[3][0] * m[1][3];
- float SubFactor10 = m[1][0] * m[3][2] - m[3][0] * m[1][2];
- float SubFactor11 = m[1][1] * m[3][3] - m[3][1] * m[1][3];
- float SubFactor12 = m[1][0] * m[3][1] - m[3][0] * m[1][1];
- float SubFactor13 = m[1][2] * m[2][3] - m[2][2] * m[1][3];
- float SubFactor14 = m[1][1] * m[2][3] - m[2][1] * m[1][3];
- float SubFactor15 = m[1][1] * m[2][2] - m[2][1] * m[1][2];
- float SubFactor16 = m[1][0] * m[2][3] - m[2][0] * m[1][3];
- float SubFactor17 = m[1][0] * m[2][2] - m[2][0] * m[1][2];
- float SubFactor18 = m[1][0] * m[2][1] - m[2][0] * m[1][1];
-
- mat4 adj;
-
- adj[0][0] = + (m[1][1] * SubFactor00 - m[1][2] * SubFactor01 + m[1][3] * SubFactor02);
- adj[1][0] = - (m[1][0] * SubFactor00 - m[1][2] * SubFactor03 + m[1][3] * SubFactor04);
- adj[2][0] = + (m[1][0] * SubFactor01 - m[1][1] * SubFactor03 + m[1][3] * SubFactor05);
- adj[3][0] = - (m[1][0] * SubFactor02 - m[1][1] * SubFactor04 + m[1][2] * SubFactor05);
-
- adj[0][1] = - (m[0][1] * SubFactor00 - m[0][2] * SubFactor01 + m[0][3] * SubFactor02);
- adj[1][1] = + (m[0][0] * SubFactor00 - m[0][2] * SubFactor03 + m[0][3] * SubFactor04);
- adj[2][1] = - (m[0][0] * SubFactor01 - m[0][1] * SubFactor03 + m[0][3] * SubFactor05);
- adj[3][1] = + (m[0][0] * SubFactor02 - m[0][1] * SubFactor04 + m[0][2] * SubFactor05);
-
- adj[0][2] = + (m[0][1] * SubFactor06 - m[0][2] * SubFactor07 + m[0][3] * SubFactor08);
- adj[1][2] = - (m[0][0] * SubFactor06 - m[0][2] * SubFactor09 + m[0][3] * SubFactor10);
- adj[2][2] = + (m[0][0] * SubFactor11 - m[0][1] * SubFactor09 + m[0][3] * SubFactor12);
- adj[3][2] = - (m[0][0] * SubFactor08 - m[0][1] * SubFactor10 + m[0][2] * SubFactor12);
-
- adj[0][3] = - (m[0][1] * SubFactor13 - m[0][2] * SubFactor14 + m[0][3] * SubFactor15);
- adj[1][3] = + (m[0][0] * SubFactor13 - m[0][2] * SubFactor16 + m[0][3] * SubFactor17);
- adj[2][3] = - (m[0][0] * SubFactor14 - m[0][1] * SubFactor16 + m[0][3] * SubFactor18);
- adj[3][3] = + (m[0][0] * SubFactor15 - m[0][1] * SubFactor17 + m[0][2] * SubFactor18);
-
- float det = (+ m[0][0] * adj[0][0]
- + m[0][1] * adj[1][0]
- + m[0][2] * adj[2][0]
- + m[0][3] * adj[3][0]);
-
- return adj / det;
-}
-
diff --git a/src/glsl/builtins/ir/EmitVertex.ir b/src/glsl/builtins/ir/EmitVertex.ir
deleted file mode 100644
index 8ffb6c4..0000000
--- a/src/glsl/builtins/ir/EmitVertex.ir
+++ /dev/null
@@ -1,5 +0,0 @@
-((function EmitVertex
- (signature void
- (parameters)
- ((emit-vertex)))
-))
diff --git a/src/glsl/builtins/ir/EndPrimitive.ir b/src/glsl/builtins/ir/EndPrimitive.ir
deleted file mode 100644
index ed7e12a..0000000
--- a/src/glsl/builtins/ir/EndPrimitive.ir
+++ /dev/null
@@ -1,5 +0,0 @@
-((function EndPrimitive
- (signature void
- (parameters)
- ((end-primitive)))
-))
diff --git a/src/glsl/builtins/ir/abs.ir b/src/glsl/builtins/ir/abs.ir
deleted file mode 100644
index d07d1d9..0000000
--- a/src/glsl/builtins/ir/abs.ir
+++ /dev/null
@@ -1,41 +0,0 @@
-((function abs
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float abs (var_ref arg0)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 abs (var_ref arg0)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 abs (var_ref arg0)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 abs (var_ref arg0)))))
-
- (signature int
- (parameters
- (declare (in) int arg0))
- ((return (expression int abs (var_ref arg0)))))
-
- (signature ivec2
- (parameters
- (declare (in) ivec2 arg0))
- ((return (expression ivec2 abs (var_ref arg0)))))
-
- (signature ivec3
- (parameters
- (declare (in) ivec3 arg0))
- ((return (expression ivec3 abs (var_ref arg0)))))
-
- (signature ivec4
- (parameters
- (declare (in) ivec4 arg0))
- ((return (expression ivec4 abs (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/acos.ir b/src/glsl/builtins/ir/acos.ir
deleted file mode 100644
index 8c3797e..0000000
--- a/src/glsl/builtins/ir/acos.ir
+++ /dev/null
@@ -1,29 +0,0 @@
-((function acos
- (signature float
- (parameters
- (declare (in) float x))
- ((declare () float s)
- (call asin (var_ref s) ((var_ref x)))
- (return (expression float - (constant float (1.5707964)) (var_ref s)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 x))
- ((declare () vec2 s)
- (call asin (var_ref s) ((var_ref x)))
- (return (expression vec2 - (constant float (1.5707964)) (var_ref s)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 x))
- ((declare () vec3 s)
- (call asin (var_ref s) ((var_ref x)))
- (return (expression vec3 - (constant float (1.5707964)) (var_ref s)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 x))
- ((declare () vec4 s)
- (call asin (var_ref s) ((var_ref x)))
- (return (expression vec4 - (constant float (1.5707964)) (var_ref s)))))
-))
diff --git a/src/glsl/builtins/ir/acosh.ir b/src/glsl/builtins/ir/acosh.ir
deleted file mode 100644
index 9a4c291..0000000
--- a/src/glsl/builtins/ir/acosh.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function acosh
- (signature float
- (parameters
- (declare (in) float x))
- ((return (expression float log (expression float + (var_ref x) (expression float sqrt (expression float - (expression float * (var_ref x) (var_ref x)) (constant float (1)))))))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 x))
- ((return (expression vec2 log (expression vec2 + (var_ref x) (expression vec2 sqrt (expression vec2 - (expression vec2 * (var_ref x) (var_ref x)) (constant float (1)))))))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 x))
- ((return (expression vec3 log (expression vec3 + (var_ref x) (expression vec3 sqrt (expression vec3 - (expression vec3 * (var_ref x) (var_ref x)) (constant float (1)))))))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 x))
- ((return (expression vec4 log (expression vec4 + (var_ref x) (expression vec4 sqrt (expression vec4 - (expression vec4 * (var_ref x) (var_ref x)) (constant float (1)))))))))
-))
diff --git a/src/glsl/builtins/ir/all.ir b/src/glsl/builtins/ir/all.ir
deleted file mode 100644
index 2cac0df..0000000
--- a/src/glsl/builtins/ir/all.ir
+++ /dev/null
@@ -1,16 +0,0 @@
-((function all
- (signature bool
- (parameters
- (declare (in) bvec2 arg0))
- ((return (expression bool && (swiz x (var_ref arg0))(swiz y (var_ref arg0))))))
-
- (signature bool
- (parameters
- (declare (in) bvec3 arg0))
- ((return (expression bool && (expression bool && (swiz x (var_ref arg0))(swiz y (var_ref arg0))) (swiz z (var_ref arg0))))))
-
- (signature bool
- (parameters
- (declare (in) bvec4 arg0))
- ((return (expression bool && (expression bool && (expression bool && (swiz x (var_ref arg0))(swiz y (var_ref arg0))) (swiz z (var_ref arg0))) (swiz w (var_ref arg0))))))
-))
diff --git a/src/glsl/builtins/ir/any.ir b/src/glsl/builtins/ir/any.ir
deleted file mode 100644
index cc6038a..0000000
--- a/src/glsl/builtins/ir/any.ir
+++ /dev/null
@@ -1,16 +0,0 @@
-((function any
- (signature bool
- (parameters
- (declare (in) bvec2 arg0))
- ((return (expression bool any (var_ref arg0)))))
-
- (signature bool
- (parameters
- (declare (in) bvec3 arg0))
- ((return (expression bool any (var_ref arg0)))))
-
- (signature bool
- (parameters
- (declare (in) bvec4 arg0))
- ((return (expression bool any (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/asin.ir b/src/glsl/builtins/ir/asin.ir
deleted file mode 100644
index 45d9e67..0000000
--- a/src/glsl/builtins/ir/asin.ir
+++ /dev/null
@@ -1,109 +0,0 @@
-((function asin
- (signature float
- (parameters
- (declare (in) float x))
- ((return (expression float *
- (expression float sign (var_ref x))
- (expression float -
- (constant float (1.5707964))
- (expression float *
- (expression float sqrt
- (expression float -
- (constant float (1.0))
- (expression float abs (var_ref x))))
- (expression float +
- (constant float (1.5707964))
- (expression float *
- (expression float abs (var_ref x))
- (expression float +
- (constant float (-0.21460183))
- (expression float *
- (expression float abs (var_ref x))
- (expression float +
- (constant float (0.086566724))
- (expression float *
- (expression float abs (var_ref x))
- (constant float (-0.03102955))
- ))))))))))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 x))
- ((return (expression vec2 *
- (expression vec2 sign (var_ref x))
- (expression vec2 -
- (constant float (1.5707964))
- (expression vec2 *
- (expression vec2 sqrt
- (expression vec2 -
- (constant float (1.0))
- (expression vec2 abs (var_ref x))))
- (expression vec2 +
- (constant float (1.5707964))
- (expression vec2 *
- (expression vec2 abs (var_ref x))
- (expression vec2 +
- (constant float (-0.21460183))
- (expression vec2 *
- (expression vec2 abs (var_ref x))
- (expression vec2 +
- (constant float (0.086566724))
- (expression vec2 *
- (expression vec2 abs (var_ref x))
- (constant float (-0.03102955))
- ))))))))))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 x))
- ((return (expression vec3 *
- (expression vec3 sign (var_ref x))
- (expression vec3 -
- (constant float (1.5707964))
- (expression vec3 *
- (expression vec3 sqrt
- (expression vec3 -
- (constant float (1.0))
- (expression vec3 abs (var_ref x))))
- (expression vec3 +
- (constant float (1.5707964))
- (expression vec3 *
- (expression vec3 abs (var_ref x))
- (expression vec3 +
- (constant float (-0.21460183))
- (expression vec3 *
- (expression vec3 abs (var_ref x))
- (expression vec3 +
- (constant float (0.086566724))
- (expression vec3 *
- (expression vec3 abs (var_ref x))
- (constant float (-0.03102955))
- ))))))))))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 x))
- ((return (expression vec4 *
- (expression vec4 sign (var_ref x))
- (expression vec4 -
- (constant float (1.5707964))
- (expression vec4 *
- (expression vec4 sqrt
- (expression vec4 -
- (constant float (1.0))
- (expression vec4 abs (var_ref x))))
- (expression vec4 +
- (constant float (1.5707964))
- (expression vec4 *
- (expression vec4 abs (var_ref x))
- (expression vec4 +
- (constant float (-0.21460183))
- (expression vec4 *
- (expression vec4 abs (var_ref x))
- (expression vec4 +
- (constant float (0.086566724))
- (expression vec4 *
- (expression vec4 abs (var_ref x))
- (constant float (-0.03102955))
- ))))))))))))
-))
diff --git a/src/glsl/builtins/ir/asinh.ir b/src/glsl/builtins/ir/asinh.ir
deleted file mode 100644
index d2dc710..0000000
--- a/src/glsl/builtins/ir/asinh.ir
+++ /dev/null
@@ -1,53 +0,0 @@
-((function asinh
- (signature float
- (parameters
- (declare (in) float x))
- ((return (expression float *
- (expression float sign (var_ref x))
- (expression float log
- (expression float +
- (expression float abs (var_ref x))
- (expression float sqrt
- (expression float +
- (expression float * (var_ref x) (var_ref x))
- (constant float (1))))))))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 x))
- ((return (expression vec2 *
- (expression vec2 sign (var_ref x))
- (expression vec2 log
- (expression vec2 +
- (expression vec2 abs (var_ref x))
- (expression vec2 sqrt
- (expression vec2 +
- (expression vec2 * (var_ref x) (var_ref x))
- (constant float (1))))))))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 x))
- ((return (expression vec3 *
- (expression vec3 sign (var_ref x))
- (expression vec3 log
- (expression vec3 +
- (expression vec3 abs (var_ref x))
- (expression vec3 sqrt
- (expression vec3 +
- (expression vec3 * (var_ref x) (var_ref x))
- (constant float (1))))))))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 x))
- ((return (expression vec4 *
- (expression vec4 sign (var_ref x))
- (expression vec4 log
- (expression vec4 +
- (expression vec4 abs (var_ref x))
- (expression vec4 sqrt
- (expression vec4 +
- (expression vec4 * (var_ref x) (var_ref x))
- (constant float (1))))))))))
-))
diff --git a/src/glsl/builtins/ir/atan.ir b/src/glsl/builtins/ir/atan.ir
deleted file mode 100644
index a9dc08e..0000000
--- a/src/glsl/builtins/ir/atan.ir
+++ /dev/null
@@ -1,134 +0,0 @@
-((function atan
- (signature float
- (parameters
- (declare (in) float y_over_x))
- ((declare () float s)
- (call asin (var_ref s)
- ((expression float *
- (var_ref y_over_x)
- (expression float rsq
- (expression float +
- (expression float *
- (var_ref y_over_x)
- (var_ref y_over_x))
- (constant float (1.0)))))))
- (return (var_ref s))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 y_over_x))
- ((declare () vec2 s)
- (call asin (var_ref s)
- ((expression vec2 *
- (var_ref y_over_x)
- (expression vec2 rsq
- (expression vec2 +
- (expression vec2 *
- (var_ref y_over_x)
- (var_ref y_over_x))
- (constant float (1.0)))))))
- (return (var_ref s))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 y_over_x))
- ((declare () vec3 s)
- (call asin (var_ref s)
- ((expression vec3 *
- (var_ref y_over_x)
- (expression vec3 rsq
- (expression vec3 +
- (expression vec3 *
- (var_ref y_over_x)
- (var_ref y_over_x))
- (constant float (1.0)))))))
- (return (var_ref s))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 y_over_x))
- ((declare () vec4 s)
- (call asin (var_ref s)
- ((expression vec4 *
- (var_ref y_over_x)
- (expression vec4 rsq
- (expression vec4 +
- (expression vec4 *
- (var_ref y_over_x)
- (var_ref y_over_x))
- (constant float (1.0)))))))
- (return (var_ref s))))
-
- (signature float
- (parameters
- (declare (in ) float y)
- (declare (in ) float x)
- )
- (
- (declare () float r)
- (if (expression bool >
- (expression float abs (var_ref x))
- (expression float * (constant float (1.0e-8)) (expression float abs (var_ref y)))) (
- (call atan (var_ref r) ((expression float / (var_ref y) (var_ref x))))
- (if (expression bool < (var_ref x) (constant float (0.000000)) ) (
- (if (expression bool >= (var_ref y) (constant float (0.000000)) )
- ((assign (x) (var_ref r) (expression float + (var_ref r) (constant float (3.141593)))))
- ((assign (x) (var_ref r) (expression float - (var_ref r) (constant float (3.141593))))))
- )
- (
- ))
- )
- (
- (declare () float sgn)
- (assign (x) (var_ref sgn) (expression float sign (var_ref y)))
- (assign (x) (var_ref r) (expression float * (var_ref sgn) (constant float (1.5707965))))
- ))
-
- (return (var_ref r) )
- ))
-
-
-
- (signature vec2
- (parameters
- (declare (in) vec2 y)
- (declare (in) vec2 x))
- ((declare () vec2 r)
- (declare () float temp)
- (call atan (var_ref temp) ((swiz x (var_ref y)) (swiz x (var_ref x))))
- (assign (x) (var_ref r) (var_ref temp))
- (call atan (var_ref temp) ((swiz y (var_ref y)) (swiz y (var_ref x))))
- (assign (y) (var_ref r) (var_ref temp))
- (return (var_ref r))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 y)
- (declare (in) vec3 x))
- ((declare () vec3 r)
- (declare () float temp)
- (call atan (var_ref temp) ((swiz x (var_ref y)) (swiz x (var_ref x))))
- (assign (x) (var_ref r) (var_ref temp))
- (call atan (var_ref temp) ((swiz y (var_ref y)) (swiz y (var_ref x))))
- (assign (y) (var_ref r) (var_ref temp))
- (call atan (var_ref temp) ((swiz z (var_ref y)) (swiz z (var_ref x))))
- (assign (z) (var_ref r) (var_ref temp))
- (return (var_ref r))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 y)
- (declare (in) vec4 x))
- ((declare () vec4 r)
- (declare () float temp)
- (call atan (var_ref temp) ((swiz x (var_ref y)) (swiz x (var_ref x))))
- (assign (x) (var_ref r) (var_ref temp))
- (call atan (var_ref temp) ((swiz y (var_ref y)) (swiz y (var_ref x))))
- (assign (y) (var_ref r) (var_ref temp))
- (call atan (var_ref temp) ((swiz z (var_ref y)) (swiz z (var_ref x))))
- (assign (z) (var_ref r) (var_ref temp))
- (call atan (var_ref temp) ((swiz w (var_ref y)) (swiz w (var_ref x))))
- (assign (w) (var_ref r) (var_ref temp))
- (return (var_ref r))))
-
-))
diff --git a/src/glsl/builtins/ir/atanh.ir b/src/glsl/builtins/ir/atanh.ir
deleted file mode 100644
index 5ef3596..0000000
--- a/src/glsl/builtins/ir/atanh.ir
+++ /dev/null
@@ -1,37 +0,0 @@
-((function atanh
- (signature float
- (parameters
- (declare (in) float x))
- ((return (expression float * (constant float (0.5))
- (expression float log
- (expression float /
- (expression float + (constant float (1)) (var_ref x))
- (expression float - (constant float (1)) (var_ref x))))))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 x))
- ((return (expression vec2 * (constant float (0.5))
- (expression vec2 log
- (expression vec2 /
- (expression vec2 + (constant float (1)) (var_ref x))
- (expression vec2 - (constant float (1)) (var_ref x))))))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 x))
- ((return (expression vec3 * (constant float (0.5))
- (expression vec3 log
- (expression vec3 /
- (expression vec3 + (constant float (1)) (var_ref x))
- (expression vec3 - (constant float (1)) (var_ref x))))))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 x))
- ((return (expression vec4 * (constant float (0.5))
- (expression vec4 log
- (expression vec4 /
- (expression vec4 + (constant float (1)) (var_ref x))
- (expression vec4 - (constant float (1)) (var_ref x))))))))
-))
diff --git a/src/glsl/builtins/ir/bitCount.ir b/src/glsl/builtins/ir/bitCount.ir
deleted file mode 100644
index 71fcae2..0000000
--- a/src/glsl/builtins/ir/bitCount.ir
+++ /dev/null
@@ -1,41 +0,0 @@
-((function bitCount
- (signature int
- (parameters
- (declare (in) int value))
- ((return (expression int bit_count (var_ref value)))))
-
- (signature ivec2
- (parameters
- (declare (in) ivec2 value))
- ((return (expression ivec2 bit_count (var_ref value)))))
-
- (signature ivec3
- (parameters
- (declare (in) ivec3 value))
- ((return (expression ivec3 bit_count (var_ref value)))))
-
- (signature ivec4
- (parameters
- (declare (in) ivec4 value))
- ((return (expression ivec4 bit_count (var_ref value)))))
-
- (signature int
- (parameters
- (declare (in) uint value))
- ((return (expression int bit_count (var_ref value)))))
-
- (signature ivec2
- (parameters
- (declare (in) uvec2 value))
- ((return (expression ivec2 bit_count (var_ref value)))))
-
- (signature ivec3
- (parameters
- (declare (in) uvec3 value))
- ((return (expression ivec3 bit_count (var_ref value)))))
-
- (signature ivec4
- (parameters
- (declare (in) uvec4 value))
- ((return (expression ivec4 bit_count (var_ref value)))))
-))
diff --git a/src/glsl/builtins/ir/bitfieldExtract.ir b/src/glsl/builtins/ir/bitfieldExtract.ir
deleted file mode 100644
index 0491c82..0000000
--- a/src/glsl/builtins/ir/bitfieldExtract.ir
+++ /dev/null
@@ -1,57 +0,0 @@
-((function bitfieldExtract
- (signature int
- (parameters
- (declare (in) int value)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression int bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))
-
- (signature ivec2
- (parameters
- (declare (in) ivec2 value)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression ivec2 bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))
-
- (signature ivec3
- (parameters
- (declare (in) ivec3 value)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression ivec3 bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))
-
- (signature ivec4
- (parameters
- (declare (in) ivec4 value)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression ivec4 bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))
-
- (signature uint
- (parameters
- (declare (in) uint value)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression uint bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))
-
- (signature uvec2
- (parameters
- (declare (in) uvec2 value)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression uvec2 bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))
-
- (signature uvec3
- (parameters
- (declare (in) uvec3 value)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression uvec3 bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))
-
- (signature uvec4
- (parameters
- (declare (in) uvec4 value)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression uvec4 bitfield_extract (var_ref value) (var_ref offset) (var_ref bits)))))
-))
diff --git a/src/glsl/builtins/ir/bitfieldInsert.ir b/src/glsl/builtins/ir/bitfieldInsert.ir
deleted file mode 100644
index 2bb4442..0000000
--- a/src/glsl/builtins/ir/bitfieldInsert.ir
+++ /dev/null
@@ -1,65 +0,0 @@
-((function bitfieldInsert
- (signature int
- (parameters
- (declare (in) int base)
- (declare (in) int insert)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression int bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))
-
- (signature ivec2
- (parameters
- (declare (in) ivec2 base)
- (declare (in) ivec2 insert)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression ivec2 bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))
-
- (signature ivec3
- (parameters
- (declare (in) ivec3 base)
- (declare (in) ivec3 insert)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression ivec3 bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))
-
- (signature ivec4
- (parameters
- (declare (in) ivec4 base)
- (declare (in) ivec4 insert)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression ivec4 bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))
-
- (signature uint
- (parameters
- (declare (in) uint base)
- (declare (in) uint insert)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression uint bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))
-
- (signature uvec2
- (parameters
- (declare (in) uvec2 base)
- (declare (in) uvec2 insert)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression uvec2 bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))
-
- (signature uvec3
- (parameters
- (declare (in) uvec3 base)
- (declare (in) uvec3 insert)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression uvec3 bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))
-
- (signature uvec4
- (parameters
- (declare (in) uvec4 base)
- (declare (in) uvec4 insert)
- (declare (in) int offset)
- (declare (in) int bits))
- ((return (expression uvec4 bitfield_insert (var_ref base) (var_ref insert) (var_ref offset) (var_ref bits)))))
-))
diff --git a/src/glsl/builtins/ir/bitfieldReverse.ir b/src/glsl/builtins/ir/bitfieldReverse.ir
deleted file mode 100644
index f05c119..0000000
--- a/src/glsl/builtins/ir/bitfieldReverse.ir
+++ /dev/null
@@ -1,41 +0,0 @@
-((function bitfieldReverse
- (signature int
- (parameters
- (declare (in) int value))
- ((return (expression int bitfield_reverse (var_ref value)))))
-
- (signature ivec2
- (parameters
- (declare (in) ivec2 value))
- ((return (expression ivec2 bitfield_reverse (var_ref value)))))
-
- (signature ivec3
- (parameters
- (declare (in) ivec3 value))
- ((return (expression ivec3 bitfield_reverse (var_ref value)))))
-
- (signature ivec4
- (parameters
- (declare (in) ivec4 value))
- ((return (expression ivec4 bitfield_reverse (var_ref value)))))
-
- (signature uint
- (parameters
- (declare (in) uint value))
- ((return (expression uint bitfield_reverse (var_ref value)))))
-
- (signature uvec2
- (parameters
- (declare (in) uvec2 value))
- ((return (expression uvec2 bitfield_reverse (var_ref value)))))
-
- (signature uvec3
- (parameters
- (declare (in) uvec3 value))
- ((return (expression uvec3 bitfield_reverse (var_ref value)))))
-
- (signature uvec4
- (parameters
- (declare (in) uvec4 value))
- ((return (expression uvec4 bitfield_reverse (var_ref value)))))
-))
diff --git a/src/glsl/builtins/ir/ceil.ir b/src/glsl/builtins/ir/ceil.ir
deleted file mode 100644
index a26a775..0000000
--- a/src/glsl/builtins/ir/ceil.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function ceil
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float ceil (var_ref arg0)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 ceil (var_ref arg0)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 ceil (var_ref arg0)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 ceil (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/clamp.ir b/src/glsl/builtins/ir/clamp.ir
deleted file mode 100644
index 2bdc466..0000000
--- a/src/glsl/builtins/ir/clamp.ir
+++ /dev/null
@@ -1,148 +0,0 @@
-((function clamp
- (signature float
- (parameters
- (declare (in) float arg0)
- (declare (in) float arg1)
- (declare (in) float arg2))
- ((return (expression float max (expression float min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) vec2 arg1)
- (declare (in) vec2 arg2))
- ((return (expression vec2 max (expression vec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) vec3 arg1)
- (declare (in) vec3 arg2))
- ((return (expression vec3 max (expression vec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) vec4 arg1)
- (declare (in) vec4 arg2))
- ((return (expression vec4 max (expression vec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) float arg1)
- (declare (in) float arg2))
- ((return (expression vec2 max (expression vec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) float arg1)
- (declare (in) float arg2))
- ((return (expression vec3 max (expression vec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) float arg1)
- (declare (in) float arg2))
- ((return (expression vec4 max (expression vec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature int
- (parameters
- (declare (in) int arg0)
- (declare (in) int arg1)
- (declare (in) int arg2))
- ((return (expression int max (expression int min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature ivec2
- (parameters
- (declare (in) ivec2 arg0)
- (declare (in) ivec2 arg1)
- (declare (in) ivec2 arg2))
- ((return (expression ivec2 max (expression ivec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature ivec3
- (parameters
- (declare (in) ivec3 arg0)
- (declare (in) ivec3 arg1)
- (declare (in) ivec3 arg2))
- ((return (expression ivec3 max (expression ivec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature ivec4
- (parameters
- (declare (in) ivec4 arg0)
- (declare (in) ivec4 arg1)
- (declare (in) ivec4 arg2))
- ((return (expression ivec4 max (expression ivec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature ivec2
- (parameters
- (declare (in) ivec2 arg0)
- (declare (in) int arg1)
- (declare (in) int arg2))
- ((return (expression ivec2 max (expression ivec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature ivec3
- (parameters
- (declare (in) ivec3 arg0)
- (declare (in) int arg1)
- (declare (in) int arg2))
- ((return (expression ivec3 max (expression ivec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature ivec4
- (parameters
- (declare (in) ivec4 arg0)
- (declare (in) int arg1)
- (declare (in) int arg2))
- ((return (expression ivec4 max (expression ivec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature uint
- (parameters
- (declare (in) uint arg0)
- (declare (in) uint arg1)
- (declare (in) uint arg2))
- ((return (expression uint max (expression uint min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature uvec2
- (parameters
- (declare (in) uvec2 arg0)
- (declare (in) uvec2 arg1)
- (declare (in) uvec2 arg2))
- ((return (expression uvec2 max (expression uvec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature uvec3
- (parameters
- (declare (in) uvec3 arg0)
- (declare (in) uvec3 arg1)
- (declare (in) uvec3 arg2))
- ((return (expression uvec3 max (expression uvec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature uvec4
- (parameters
- (declare (in) uvec4 arg0)
- (declare (in) uvec4 arg1)
- (declare (in) uvec4 arg2))
- ((return (expression uvec4 max (expression uvec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature uvec2
- (parameters
- (declare (in) uvec2 arg0)
- (declare (in) uint arg1)
- (declare (in) uint arg2))
- ((return (expression uvec2 max (expression uvec2 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature uvec3
- (parameters
- (declare (in) uvec3 arg0)
- (declare (in) uint arg1)
- (declare (in) uint arg2))
- ((return (expression uvec3 max (expression uvec3 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-
- (signature uvec4
- (parameters
- (declare (in) uvec4 arg0)
- (declare (in) uint arg1)
- (declare (in) uint arg2))
- ((return (expression uvec4 max (expression uvec4 min (var_ref arg0) (var_ref arg2)) (var_ref arg1)))))
-))
diff --git a/src/glsl/builtins/ir/cos.ir b/src/glsl/builtins/ir/cos.ir
deleted file mode 100644
index 88f266e..0000000
--- a/src/glsl/builtins/ir/cos.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function cos
- (signature float
- (parameters
- (declare (in) float angle))
- ((return (expression float cos (var_ref angle)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 angle))
- ((return (expression vec2 cos (var_ref angle)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 angle))
- ((return (expression vec3 cos (var_ref angle)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 angle))
- ((return (expression vec4 cos (var_ref angle)))))
-))
diff --git a/src/glsl/builtins/ir/cosh.ir b/src/glsl/builtins/ir/cosh.ir
deleted file mode 100644
index 9457431..0000000
--- a/src/glsl/builtins/ir/cosh.ir
+++ /dev/null
@@ -1,30 +0,0 @@
-((function cosh
- (signature float
- (parameters
- (declare (in) float x))
- ((return (expression float * (constant float (0.5))
- (expression float +
- (expression float exp (var_ref x))
- (expression float exp (expression float neg (var_ref x))))))))
- (signature vec2
- (parameters
- (declare (in) vec2 x))
- ((return (expression vec2 * (constant float (0.5))
- (expression vec2 +
- (expression vec2 exp (var_ref x))
- (expression vec2 exp (expression vec2 neg (var_ref x))))))))
- (signature vec3
- (parameters
- (declare (in) vec3 x))
- ((return (expression vec3 * (constant float (0.5))
- (expression vec3 +
- (expression vec3 exp (var_ref x))
- (expression vec3 exp (expression vec3 neg (var_ref x))))))))
- (signature vec4
- (parameters
- (declare (in) vec4 x))
- ((return (expression vec4 * (constant float (0.5))
- (expression vec4 +
- (expression vec4 exp (var_ref x))
- (expression vec4 exp (expression vec4 neg (var_ref x))))))))
-))
diff --git a/src/glsl/builtins/ir/cross.ir b/src/glsl/builtins/ir/cross.ir
deleted file mode 100644
index 02991fe..0000000
--- a/src/glsl/builtins/ir/cross.ir
+++ /dev/null
@@ -1,9 +0,0 @@
-((function cross
- (signature vec3
- (parameters
- (declare (in) vec3 a)
- (declare (in) vec3 b))
- ((return (expression vec3 -
- (expression vec3 * (swiz yzx (var_ref a)) (swiz zxy (var_ref b)))
- (expression vec3 * (swiz zxy (var_ref a)) (swiz yzx (var_ref b)))))))
-))
diff --git a/src/glsl/builtins/ir/dFdx.ir b/src/glsl/builtins/ir/dFdx.ir
deleted file mode 100644
index 30594d3..0000000
--- a/src/glsl/builtins/ir/dFdx.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function dFdx
- (signature float
- (parameters
- (declare (in) float p))
- ((return (expression float dFdx (var_ref p)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 p))
- ((return (expression vec2 dFdx (var_ref p)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 p))
- ((return (expression vec3 dFdx (var_ref p)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 p))
- ((return (expression vec4 dFdx (var_ref p)))))
-))
diff --git a/src/glsl/builtins/ir/dFdy.ir b/src/glsl/builtins/ir/dFdy.ir
deleted file mode 100644
index fb5798d..0000000
--- a/src/glsl/builtins/ir/dFdy.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function dFdy
- (signature float
- (parameters
- (declare (in) float p))
- ((return (expression float dFdy (var_ref p)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 p))
- ((return (expression vec2 dFdy (var_ref p)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 p))
- ((return (expression vec3 dFdy (var_ref p)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 p))
- ((return (expression vec4 dFdy (var_ref p)))))
-))
diff --git a/src/glsl/builtins/ir/degrees.ir b/src/glsl/builtins/ir/degrees.ir
deleted file mode 100644
index dc0d7b9..0000000
--- a/src/glsl/builtins/ir/degrees.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function degrees
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float * (var_ref arg0) (constant float (57.295780))))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 * (var_ref arg0) (constant float (57.295780))))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 * (var_ref arg0) (constant float (57.295780))))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 * (var_ref arg0) (constant float (57.295780))))))
-))
diff --git a/src/glsl/builtins/ir/distance.ir b/src/glsl/builtins/ir/distance.ir
deleted file mode 100644
index c249f8c..0000000
--- a/src/glsl/builtins/ir/distance.ir
+++ /dev/null
@@ -1,31 +0,0 @@
-((function distance
- (signature float
- (parameters
- (declare (in) float p0)
- (declare (in) float p1))
- ((return (expression float abs (expression float - (var_ref p0) (var_ref p1))))))
-
- (signature float
- (parameters
- (declare (in) vec2 p0)
- (declare (in) vec2 p1))
- ((declare () vec2 p)
- (assign (xy) (var_ref p) (expression vec2 - (var_ref p0) (var_ref p1)))
- (return (expression float sqrt (expression float dot (var_ref p) (var_ref p))))))
-
- (signature float
- (parameters
- (declare (in) vec3 p0)
- (declare (in) vec3 p1))
- ((declare () vec3 p)
- (assign (xyz) (var_ref p) (expression vec3 - (var_ref p0) (var_ref p1)))
- (return (expression float sqrt (expression float dot (var_ref p) (var_ref p))))))
-
- (signature float
- (parameters
- (declare (in) vec4 p0)
- (declare (in) vec4 p1))
- ((declare () vec4 p)
- (assign (xyzw) (var_ref p) (expression vec4 - (var_ref p0) (var_ref p1)))
- (return (expression float sqrt (expression float dot (var_ref p) (var_ref p))))))
-))
diff --git a/src/glsl/builtins/ir/dot.ir b/src/glsl/builtins/ir/dot.ir
deleted file mode 100644
index 1f27f32..0000000
--- a/src/glsl/builtins/ir/dot.ir
+++ /dev/null
@@ -1,25 +0,0 @@
-((function dot
- (signature float
- (parameters
- (declare (in) float arg0)
- (declare (in) float arg1))
- ((return (expression float * (var_ref arg0) (var_ref arg1)))))
-
- (signature float
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) vec2 arg1))
- ((return (expression float dot (var_ref arg0) (var_ref arg1)))))
-
- (signature float
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) vec3 arg1))
- ((return (expression float dot (var_ref arg0) (var_ref arg1)))))
-
- (signature float
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) vec4 arg1))
- ((return (expression float dot (var_ref arg0) (var_ref arg1)))))
-))
diff --git a/src/glsl/builtins/ir/equal.ir b/src/glsl/builtins/ir/equal.ir
deleted file mode 100644
index a414b3e..0000000
--- a/src/glsl/builtins/ir/equal.ir
+++ /dev/null
@@ -1,73 +0,0 @@
-((function equal
- (signature bvec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) vec2 arg1))
- ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) vec3 arg1))
- ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) vec4 arg1))
- ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec2
- (parameters
- (declare (in) bvec2 arg0)
- (declare (in) bvec2 arg1))
- ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) bvec3 arg0)
- (declare (in) bvec3 arg1))
- ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) bvec4 arg0)
- (declare (in) bvec4 arg1))
- ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec2
- (parameters
- (declare (in) ivec2 arg0)
- (declare (in) ivec2 arg1))
- ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) ivec3 arg0)
- (declare (in) ivec3 arg1))
- ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) ivec4 arg0)
- (declare (in) ivec4 arg1))
- ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec2
- (parameters
- (declare (in) uvec2 arg0)
- (declare (in) uvec2 arg1))
- ((return (expression bvec2 == (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) uvec3 arg0)
- (declare (in) uvec3 arg1))
- ((return (expression bvec3 == (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) uvec4 arg0)
- (declare (in) uvec4 arg1))
- ((return (expression bvec4 == (var_ref arg0) (var_ref arg1)))))
-))
diff --git a/src/glsl/builtins/ir/exp.ir b/src/glsl/builtins/ir/exp.ir
deleted file mode 100644
index a73bd6a..0000000
--- a/src/glsl/builtins/ir/exp.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function exp
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float exp (var_ref arg0)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 exp (var_ref arg0)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 exp (var_ref arg0)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 exp (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/exp2.ir b/src/glsl/builtins/ir/exp2.ir
deleted file mode 100644
index a842d3f..0000000
--- a/src/glsl/builtins/ir/exp2.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function exp2
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float exp2 (var_ref arg0)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 exp2 (var_ref arg0)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 exp2 (var_ref arg0)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 exp2 (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/faceforward.ir b/src/glsl/builtins/ir/faceforward.ir
deleted file mode 100644
index 35b7957..0000000
--- a/src/glsl/builtins/ir/faceforward.ir
+++ /dev/null
@@ -1,37 +0,0 @@
-((function faceforward
- (signature float
- (parameters
- (declare (in) float N)
- (declare (in) float I)
- (declare (in) float Nref))
- ((if (expression bool < (expression float * (var_ref Nref) (var_ref I)) (constant float (0)))
- ((return (var_ref N)))
- ((return (expression float neg (var_ref N)))))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 N)
- (declare (in) vec2 I)
- (declare (in) vec2 Nref))
- ((if (expression bool < (expression float dot (var_ref Nref) (var_ref I)) (constant float (0)))
- ((return (var_ref N)))
- ((return (expression vec2 neg (var_ref N)))))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 N)
- (declare (in) vec3 I)
- (declare (in) vec3 Nref))
- ((if (expression bool < (expression float dot (var_ref Nref) (var_ref I)) (constant float (0)))
- ((return (var_ref N)))
- ((return (expression vec3 neg (var_ref N)))))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 N)
- (declare (in) vec4 I)
- (declare (in) vec4 Nref))
- ((if (expression bool < (expression float dot (var_ref Nref) (var_ref I)) (constant float (0)))
- ((return (var_ref N)))
- ((return (expression vec4 neg (var_ref N)))))))
-))
diff --git a/src/glsl/builtins/ir/findLSB.ir b/src/glsl/builtins/ir/findLSB.ir
deleted file mode 100644
index 2ddbb7f..0000000
--- a/src/glsl/builtins/ir/findLSB.ir
+++ /dev/null
@@ -1,41 +0,0 @@
-((function findLSB
- (signature int
- (parameters
- (declare (in) int value))
- ((return (expression int find_lsb (var_ref value)))))
-
- (signature ivec2
- (parameters
- (declare (in) ivec2 value))
- ((return (expression ivec2 find_lsb (var_ref value)))))
-
- (signature ivec3
- (parameters
- (declare (in) ivec3 value))
- ((return (expression ivec3 find_lsb (var_ref value)))))
-
- (signature ivec4
- (parameters
- (declare (in) ivec4 value))
- ((return (expression ivec4 find_lsb (var_ref value)))))
-
- (signature int
- (parameters
- (declare (in) uint value))
- ((return (expression int find_lsb (var_ref value)))))
-
- (signature ivec2
- (parameters
- (declare (in) uvec2 value))
- ((return (expression ivec2 find_lsb (var_ref value)))))
-
- (signature ivec3
- (parameters
- (declare (in) uvec3 value))
- ((return (expression ivec3 find_lsb (var_ref value)))))
-
- (signature ivec4
- (parameters
- (declare (in) uvec4 value))
- ((return (expression ivec4 find_lsb (var_ref value)))))
-))
diff --git a/src/glsl/builtins/ir/findMSB.ir b/src/glsl/builtins/ir/findMSB.ir
deleted file mode 100644
index 24e270f..0000000
--- a/src/glsl/builtins/ir/findMSB.ir
+++ /dev/null
@@ -1,41 +0,0 @@
-((function findMSB
- (signature int
- (parameters
- (declare (in) int value))
- ((return (expression int find_msb (var_ref value)))))
-
- (signature ivec2
- (parameters
- (declare (in) ivec2 value))
- ((return (expression ivec2 find_msb (var_ref value)))))
-
- (signature ivec3
- (parameters
- (declare (in) ivec3 value))
- ((return (expression ivec3 find_msb (var_ref value)))))
-
- (signature ivec4
- (parameters
- (declare (in) ivec4 value))
- ((return (expression ivec4 find_msb (var_ref value)))))
-
- (signature int
- (parameters
- (declare (in) uint value))
- ((return (expression int find_msb (var_ref value)))))
-
- (signature ivec2
- (parameters
- (declare (in) uvec2 value))
- ((return (expression ivec2 find_msb (var_ref value)))))
-
- (signature ivec3
- (parameters
- (declare (in) uvec3 value))
- ((return (expression ivec3 find_msb (var_ref value)))))
-
- (signature ivec4
- (parameters
- (declare (in) uvec4 value))
- ((return (expression ivec4 find_msb (var_ref value)))))
-))
diff --git a/src/glsl/builtins/ir/floatBitsToInt.ir b/src/glsl/builtins/ir/floatBitsToInt.ir
deleted file mode 100644
index a5db4b3..0000000
--- a/src/glsl/builtins/ir/floatBitsToInt.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function floatBitsToInt
- (signature int
- (parameters
- (declare (in) float arg))
- ((return (expression int bitcast_f2i (var_ref arg)))))
-
- (signature ivec2
- (parameters
- (declare (in) vec2 arg))
- ((return (expression ivec2 bitcast_f2i (var_ref arg)))))
-
- (signature ivec3
- (parameters
- (declare (in) vec3 arg))
- ((return (expression ivec3 bitcast_f2i (var_ref arg)))))
-
- (signature ivec4
- (parameters
- (declare (in) vec4 arg))
- ((return (expression ivec4 bitcast_f2i (var_ref arg)))))
-))
diff --git a/src/glsl/builtins/ir/floatBitsToUint.ir b/src/glsl/builtins/ir/floatBitsToUint.ir
deleted file mode 100644
index 09463bd..0000000
--- a/src/glsl/builtins/ir/floatBitsToUint.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function floatBitsToUint
- (signature uint
- (parameters
- (declare (in) float arg))
- ((return (expression uint bitcast_f2u (var_ref arg)))))
-
- (signature uvec2
- (parameters
- (declare (in) vec2 arg))
- ((return (expression uvec2 bitcast_f2u (var_ref arg)))))
-
- (signature uvec3
- (parameters
- (declare (in) vec3 arg))
- ((return (expression uvec3 bitcast_f2u (var_ref arg)))))
-
- (signature uvec4
- (parameters
- (declare (in) vec4 arg))
- ((return (expression uvec4 bitcast_f2u (var_ref arg)))))
-))
diff --git a/src/glsl/builtins/ir/floor.ir b/src/glsl/builtins/ir/floor.ir
deleted file mode 100644
index 8dd8052..0000000
--- a/src/glsl/builtins/ir/floor.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function floor
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float floor (var_ref arg0)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 floor (var_ref arg0)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 floor (var_ref arg0)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 floor (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/fma.ir b/src/glsl/builtins/ir/fma.ir
deleted file mode 100644
index c369563..0000000
--- a/src/glsl/builtins/ir/fma.ir
+++ /dev/null
@@ -1,29 +0,0 @@
-((function fma
- (signature float
- (parameters
- (declare (in) float a)
- (declare (in) float b)
- (declare (in) float c))
- ((return (expression float fma (var_ref a) (var_ref b) (var_ref c)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 a)
- (declare (in) vec2 b)
- (declare (in) vec2 c))
- ((return (expression vec2 fma (var_ref a) (var_ref b) (var_ref c)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 a)
- (declare (in) vec3 b)
- (declare (in) vec3 c))
- ((return (expression vec3 fma (var_ref a) (var_ref b) (var_ref c)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 a)
- (declare (in) vec4 b)
- (declare (in) vec4 c))
- ((return (expression vec4 fma (var_ref a) (var_ref b) (var_ref c)))))
-))
diff --git a/src/glsl/builtins/ir/fract.ir b/src/glsl/builtins/ir/fract.ir
deleted file mode 100644
index 3f0763d..0000000
--- a/src/glsl/builtins/ir/fract.ir
+++ /dev/null
@@ -1,22 +0,0 @@
-((function fract
- (signature float
- (parameters
- (declare (in) float x))
- ((return (expression float fract (var_ref x)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 x))
- ((return (expression vec2 fract (var_ref x)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 x))
- ((return (expression vec3 fract (var_ref x)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 x))
- ((return (expression vec4 fract (var_ref x)))))
-))
-
diff --git a/src/glsl/builtins/ir/ftransform.ir b/src/glsl/builtins/ir/ftransform.ir
deleted file mode 100644
index 9ca63dc..0000000
--- a/src/glsl/builtins/ir/ftransform.ir
+++ /dev/null
@@ -1,9 +0,0 @@
-((declare (uniform) mat4 gl_ModelViewProjectionMatrix)
- (declare (in) vec4 gl_Vertex)
- (function ftransform
- (signature vec4
- (parameters)
- ((return (expression vec4 *
- (var_ref gl_ModelViewProjectionMatrix)
- (var_ref gl_Vertex)))))
-))
diff --git a/src/glsl/builtins/ir/fwidth.ir b/src/glsl/builtins/ir/fwidth.ir
deleted file mode 100644
index 385e05d..0000000
--- a/src/glsl/builtins/ir/fwidth.ir
+++ /dev/null
@@ -1,29 +0,0 @@
-((function fwidth
- (signature float
- (parameters
- (declare (in) float p))
- ((return (expression float +
- (expression float abs (expression float dFdx (var_ref p)))
- (expression float abs (expression float dFdy (var_ref p)))))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 p))
- ((return (expression vec2 +
- (expression vec2 abs (expression vec2 dFdx (var_ref p)))
- (expression vec2 abs (expression vec2 dFdy (var_ref p)))))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 p))
- ((return (expression vec3 +
- (expression vec3 abs (expression vec3 dFdx (var_ref p)))
- (expression vec3 abs (expression vec3 dFdy (var_ref p)))))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 p))
- ((return (expression vec4 +
- (expression vec4 abs (expression vec4 dFdx (var_ref p)))
- (expression vec4 abs (expression vec4 dFdy (var_ref p)))))))
-))
diff --git a/src/glsl/builtins/ir/greaterThan.ir b/src/glsl/builtins/ir/greaterThan.ir
deleted file mode 100644
index 18af865..0000000
--- a/src/glsl/builtins/ir/greaterThan.ir
+++ /dev/null
@@ -1,55 +0,0 @@
-((function greaterThan
- (signature bvec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) vec2 arg1))
- ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) vec3 arg1))
- ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) vec4 arg1))
- ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec2
- (parameters
- (declare (in) ivec2 arg0)
- (declare (in) ivec2 arg1))
- ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) ivec3 arg0)
- (declare (in) ivec3 arg1))
- ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) ivec4 arg0)
- (declare (in) ivec4 arg1))
- ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec2
- (parameters
- (declare (in) uvec2 arg0)
- (declare (in) uvec2 arg1))
- ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) uvec3 arg0)
- (declare (in) uvec3 arg1))
- ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) uvec4 arg0)
- (declare (in) uvec4 arg1))
- ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))
-))
diff --git a/src/glsl/builtins/ir/greaterThanEqual.ir b/src/glsl/builtins/ir/greaterThanEqual.ir
deleted file mode 100644
index 6d3bc89..0000000
--- a/src/glsl/builtins/ir/greaterThanEqual.ir
+++ /dev/null
@@ -1,55 +0,0 @@
-((function greaterThanEqual
- (signature bvec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) vec2 arg1))
- ((return (expression bvec2 >= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) vec3 arg1))
- ((return (expression bvec3 >= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) vec4 arg1))
- ((return (expression bvec4 >= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec2
- (parameters
- (declare (in) ivec2 arg0)
- (declare (in) ivec2 arg1))
- ((return (expression bvec2 >= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) ivec3 arg0)
- (declare (in) ivec3 arg1))
- ((return (expression bvec3 >= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) ivec4 arg0)
- (declare (in) ivec4 arg1))
- ((return (expression bvec4 >= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec2
- (parameters
- (declare (in) uvec2 arg0)
- (declare (in) uvec2 arg1))
- ((return (expression bvec2 >= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) uvec3 arg0)
- (declare (in) uvec3 arg1))
- ((return (expression bvec3 >= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) uvec4 arg0)
- (declare (in) uvec4 arg1))
- ((return (expression bvec4 >= (var_ref arg0) (var_ref arg1)))))
-))
diff --git a/src/glsl/builtins/ir/intBitsToFloat.ir b/src/glsl/builtins/ir/intBitsToFloat.ir
deleted file mode 100644
index cc6aafe..0000000
--- a/src/glsl/builtins/ir/intBitsToFloat.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function intBitsToFloat
- (signature float
- (parameters
- (declare (in) int arg))
- ((return (expression float bitcast_i2f (var_ref arg)))))
-
- (signature vec2
- (parameters
- (declare (in) ivec2 arg))
- ((return (expression vec2 bitcast_i2f (var_ref arg)))))
-
- (signature vec3
- (parameters
- (declare (in) ivec3 arg))
- ((return (expression vec3 bitcast_i2f (var_ref arg)))))
-
- (signature vec4
- (parameters
- (declare (in) ivec4 arg))
- ((return (expression vec4 bitcast_i2f (var_ref arg)))))
-))
diff --git a/src/glsl/builtins/ir/inversesqrt.ir b/src/glsl/builtins/ir/inversesqrt.ir
deleted file mode 100644
index 5b66d2b..0000000
--- a/src/glsl/builtins/ir/inversesqrt.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function inversesqrt
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float rsq (var_ref arg0)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 rsq (var_ref arg0)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 rsq (var_ref arg0)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 rsq (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/isinf.ir b/src/glsl/builtins/ir/isinf.ir
deleted file mode 100644
index 92922f6..0000000
--- a/src/glsl/builtins/ir/isinf.ir
+++ /dev/null
@@ -1,17 +0,0 @@
-((function isinf
- (signature bool
- (parameters
- (declare (in) float x))
- ((return (expression bool == (expression float abs (var_ref x)) (constant float (+INF))))))
- (signature bvec2
- (parameters
- (declare (in) vec2 x))
- ((return (expression bvec2 == (expression vec2 abs (var_ref x)) (constant vec2 (+INF +INF))))))
- (signature bvec3
- (parameters
- (declare (in) vec3 x))
- ((return (expression bvec3 == (expression vec3 abs (var_ref x)) (constant vec3 (+INF +INF +INF))))))
- (signature bvec4
- (parameters
- (declare (in) vec4 x))
- ((return (expression bvec4 == (expression vec4 abs (var_ref x)) (constant vec4 (+INF +INF +INF +INF))))))))
diff --git a/src/glsl/builtins/ir/isnan.ir b/src/glsl/builtins/ir/isnan.ir
deleted file mode 100644
index b67349f..0000000
--- a/src/glsl/builtins/ir/isnan.ir
+++ /dev/null
@@ -1,17 +0,0 @@
-((function isnan
- (signature bool
- (parameters
- (declare (in) float x))
- ((return (expression bool != (var_ref x) (var_ref x)))))
- (signature bvec2
- (parameters
- (declare (in) vec2 x))
- ((return (expression bvec2 != (var_ref x) (var_ref x)))))
- (signature bvec3
- (parameters
- (declare (in) vec3 x))
- ((return (expression bvec3 != (var_ref x) (var_ref x)))))
- (signature bvec4
- (parameters
- (declare (in) vec4 x))
- ((return (expression bvec4 != (var_ref x) (var_ref x)))))))
diff --git a/src/glsl/builtins/ir/length.ir b/src/glsl/builtins/ir/length.ir
deleted file mode 100644
index b72334e..0000000
--- a/src/glsl/builtins/ir/length.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function length
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float abs (var_ref arg0)))))
-
- (signature float
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression float sqrt (expression float dot (var_ref arg0) (var_ref arg0))))))
-
- (signature float
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression float sqrt (expression float dot (var_ref arg0) (var_ref arg0))))))
-
- (signature float
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression float sqrt (expression float dot (var_ref arg0) (var_ref arg0))))))
-))
diff --git a/src/glsl/builtins/ir/lessThan.ir b/src/glsl/builtins/ir/lessThan.ir
deleted file mode 100644
index 8401fe9..0000000
--- a/src/glsl/builtins/ir/lessThan.ir
+++ /dev/null
@@ -1,55 +0,0 @@
-((function lessThan
- (signature bvec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) vec2 arg1))
- ((return (expression bvec2 < (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) vec3 arg1))
- ((return (expression bvec3 < (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) vec4 arg1))
- ((return (expression bvec4 < (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec2
- (parameters
- (declare (in) ivec2 arg0)
- (declare (in) ivec2 arg1))
- ((return (expression bvec2 < (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) ivec3 arg0)
- (declare (in) ivec3 arg1))
- ((return (expression bvec3 < (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) ivec4 arg0)
- (declare (in) ivec4 arg1))
- ((return (expression bvec4 < (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec2
- (parameters
- (declare (in) uvec2 arg0)
- (declare (in) uvec2 arg1))
- ((return (expression bvec2 < (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) uvec3 arg0)
- (declare (in) uvec3 arg1))
- ((return (expression bvec3 < (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) uvec4 arg0)
- (declare (in) uvec4 arg1))
- ((return (expression bvec4 < (var_ref arg0) (var_ref arg1)))))
-))
diff --git a/src/glsl/builtins/ir/lessThanEqual.ir b/src/glsl/builtins/ir/lessThanEqual.ir
deleted file mode 100644
index c1cdd3f..0000000
--- a/src/glsl/builtins/ir/lessThanEqual.ir
+++ /dev/null
@@ -1,55 +0,0 @@
-((function lessThanEqual
- (signature bvec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) vec2 arg1))
- ((return (expression bvec2 <= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) vec3 arg1))
- ((return (expression bvec3 <= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) vec4 arg1))
- ((return (expression bvec4 <= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec2
- (parameters
- (declare (in) ivec2 arg0)
- (declare (in) ivec2 arg1))
- ((return (expression bvec2 <= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) ivec3 arg0)
- (declare (in) ivec3 arg1))
- ((return (expression bvec3 <= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) ivec4 arg0)
- (declare (in) ivec4 arg1))
- ((return (expression bvec4 <= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec2
- (parameters
- (declare (in) uvec2 arg0)
- (declare (in) uvec2 arg1))
- ((return (expression bvec2 <= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) uvec3 arg0)
- (declare (in) uvec3 arg1))
- ((return (expression bvec3 <= (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) uvec4 arg0)
- (declare (in) uvec4 arg1))
- ((return (expression bvec4 <= (var_ref arg0) (var_ref arg1)))))
-))
diff --git a/src/glsl/builtins/ir/log.ir b/src/glsl/builtins/ir/log.ir
deleted file mode 100644
index d168abb..0000000
--- a/src/glsl/builtins/ir/log.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function log
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float log (var_ref arg0)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 log (var_ref arg0)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 log (var_ref arg0)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 log (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/log2.ir b/src/glsl/builtins/ir/log2.ir
deleted file mode 100644
index b96c627..0000000
--- a/src/glsl/builtins/ir/log2.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function log2
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float log2 (var_ref arg0)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 log2 (var_ref arg0)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 log2 (var_ref arg0)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 log2 (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/matrixCompMult.ir b/src/glsl/builtins/ir/matrixCompMult.ir
deleted file mode 100644
index 2400f11..0000000
--- a/src/glsl/builtins/ir/matrixCompMult.ir
+++ /dev/null
@@ -1,91 +0,0 @@
-((function matrixCompMult
- (signature mat2
- (parameters
- (declare (in) mat2 x)
- (declare (in) mat2 y))
- ((declare () mat2 z)
- (assign (xy) (array_ref (var_ref z) (constant int (0))) (expression vec2 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))
- (assign (xy) (array_ref (var_ref z) (constant int (1))) (expression vec2 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))
-(return (var_ref z))))
-
- (signature mat3
- (parameters
- (declare (in) mat3 x)
- (declare (in) mat3 y))
- ((declare () mat3 z)
- (assign (xyz) (array_ref (var_ref z) (constant int (0))) (expression vec3 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))
- (assign (xyz) (array_ref (var_ref z) (constant int (1))) (expression vec3 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))
- (assign (xyz) (array_ref (var_ref z) (constant int (2))) (expression vec3 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))
-(return (var_ref z))))
-
- (signature mat4
- (parameters
- (declare (in) mat4 x)
- (declare (in) mat4 y))
- ((declare () mat4 z)
- (assign (xyzw) (array_ref (var_ref z) (constant int (0))) (expression vec4 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))
- (assign (xyzw) (array_ref (var_ref z) (constant int (1))) (expression vec4 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))
- (assign (xyzw) (array_ref (var_ref z) (constant int (2))) (expression vec4 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))
- (assign (xyzw) (array_ref (var_ref z) (constant int (3))) (expression vec4 * (array_ref (var_ref x) (constant int (3))) (array_ref (var_ref y) (constant int (3)))))
-(return (var_ref z))))
-
- (signature mat2x3
- (parameters
- (declare (in) mat2x3 x)
- (declare (in) mat2x3 y))
- ((declare () mat2x3 z)
- (assign (xyz) (array_ref (var_ref z) (constant int (0))) (expression vec3 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))
- (assign (xyz) (array_ref (var_ref z) (constant int (1))) (expression vec3 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))
-(return (var_ref z))))
-
- (signature mat3x2
- (parameters
- (declare (in) mat3x2 x)
- (declare (in) mat3x2 y))
- ((declare () mat3x2 z)
- (assign (xy) (array_ref (var_ref z) (constant int (0))) (expression vec2 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))
- (assign (xy) (array_ref (var_ref z) (constant int (1))) (expression vec2 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))
- (assign (xy) (array_ref (var_ref z) (constant int (2))) (expression vec2 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))
-(return (var_ref z))))
-
- (signature mat2x4
- (parameters
- (declare (in) mat2x4 x)
- (declare (in) mat2x4 y))
- ((declare () mat2x4 z)
- (assign (xyzw) (array_ref (var_ref z) (constant int (0))) (expression vec4 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))
- (assign (xyzw) (array_ref (var_ref z) (constant int (1))) (expression vec4 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))
-(return (var_ref z))))
-
- (signature mat4x2
- (parameters
- (declare (in) mat4x2 x)
- (declare (in) mat4x2 y))
- ((declare () mat4x2 z)
- (assign (xy) (array_ref (var_ref z) (constant int (0))) (expression vec2 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))
- (assign (xy) (array_ref (var_ref z) (constant int (1))) (expression vec2 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))
- (assign (xy) (array_ref (var_ref z) (constant int (2))) (expression vec2 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))
- (assign (xy) (array_ref (var_ref z) (constant int (3))) (expression vec2 * (array_ref (var_ref x) (constant int (3))) (array_ref (var_ref y) (constant int (3)))))
-(return (var_ref z))))
-
- (signature mat3x4
- (parameters
- (declare (in) mat3x4 x)
- (declare (in) mat3x4 y))
- ((declare () mat3x4 z)
- (assign (xyzw) (array_ref (var_ref z) (constant int (0))) (expression vec4 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))
- (assign (xyzw) (array_ref (var_ref z) (constant int (1))) (expression vec4 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))
- (assign (xyzw) (array_ref (var_ref z) (constant int (2))) (expression vec4 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))
-(return (var_ref z))))
-
- (signature mat4x3
- (parameters
- (declare (in) mat4x3 x)
- (declare (in) mat4x3 y))
- ((declare () mat4x3 z)
- (assign (xyz) (array_ref (var_ref z) (constant int (0))) (expression vec3 * (array_ref (var_ref x) (constant int (0))) (array_ref (var_ref y) (constant int (0)))))
- (assign (xyz) (array_ref (var_ref z) (constant int (1))) (expression vec3 * (array_ref (var_ref x) (constant int (1))) (array_ref (var_ref y) (constant int (1)))))
- (assign (xyz) (array_ref (var_ref z) (constant int (2))) (expression vec3 * (array_ref (var_ref x) (constant int (2))) (array_ref (var_ref y) (constant int (2)))))
- (assign (xyz) (array_ref (var_ref z) (constant int (3))) (expression vec3 * (array_ref (var_ref x) (constant int (3))) (array_ref (var_ref y) (constant int (3)))))
-(return (var_ref z))))
-))
diff --git a/src/glsl/builtins/ir/max.ir b/src/glsl/builtins/ir/max.ir
deleted file mode 100644
index 2b5a028..0000000
--- a/src/glsl/builtins/ir/max.ir
+++ /dev/null
@@ -1,127 +0,0 @@
-((function max
- (signature float
- (parameters
- (declare (in) float arg0)
- (declare (in) float arg1))
- ((return (expression float max (var_ref arg0) (var_ref arg1)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) vec2 arg1))
- ((return (expression vec2 max (var_ref arg0) (var_ref arg1)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) vec3 arg1))
- ((return (expression vec3 max (var_ref arg0) (var_ref arg1)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) vec4 arg1))
- ((return (expression vec4 max (var_ref arg0) (var_ref arg1)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) float arg1))
- ((return (expression vec2 max (var_ref arg0) (var_ref arg1)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) float arg1))
- ((return (expression vec3 max (var_ref arg0) (var_ref arg1)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) float arg1))
- ((return (expression vec4 max (var_ref arg0) (var_ref arg1)))))
-
- (signature int
- (parameters
- (declare (in) int arg0)
- (declare (in) int arg1))
- ((return (expression int max (var_ref arg0) (var_ref arg1)))))
-
- (signature ivec2
- (parameters
- (declare (in) ivec2 arg0)
- (declare (in) ivec2 arg1))
- ((return (expression ivec2 max (var_ref arg0) (var_ref arg1)))))
-
- (signature ivec3
- (parameters
- (declare (in) ivec3 arg0)
- (declare (in) ivec3 arg1))
- ((return (expression ivec3 max (var_ref arg0) (var_ref arg1)))))
-
- (signature ivec4
- (parameters
- (declare (in) ivec4 arg0)
- (declare (in) ivec4 arg1))
- ((return (expression ivec4 max (var_ref arg0) (var_ref arg1)))))
-
- (signature ivec2
- (parameters
- (declare (in) ivec2 arg0)
- (declare (in) int arg1))
- ((return (expression ivec2 max (var_ref arg0) (var_ref arg1)))))
-
- (signature ivec3
- (parameters
- (declare (in) ivec3 arg0)
- (declare (in) int arg1))
- ((return (expression ivec3 max (var_ref arg0) (var_ref arg1)))))
-
- (signature ivec4
- (parameters
- (declare (in) ivec4 arg0)
- (declare (in) int arg1))
- ((return (expression ivec4 max (var_ref arg0) (var_ref arg1)))))
-
- (signature uint
- (parameters
- (declare (in) uint arg0)
- (declare (in) uint arg1))
- ((return (expression uint max (var_ref arg0) (var_ref arg1)))))
-
- (signature uvec2
- (parameters
- (declare (in) uvec2 arg0)
- (declare (in) uvec2 arg1))
- ((return (expression uvec2 max (var_ref arg0) (var_ref arg1)))))
-
- (signature uvec3
- (parameters
- (declare (in) uvec3 arg0)
- (declare (in) uvec3 arg1))
- ((return (expression uvec3 max (var_ref arg0) (var_ref arg1)))))
-
- (signature uvec4
- (parameters
- (declare (in) uvec4 arg0)
- (declare (in) uvec4 arg1))
- ((return (expression uvec4 max (var_ref arg0) (var_ref arg1)))))
-
- (signature uvec2
- (parameters
- (declare (in) uvec2 arg0)
- (declare (in) uint arg1))
- ((return (expression uvec2 max (var_ref arg0) (var_ref arg1)))))
-
- (signature uvec3
- (parameters
- (declare (in) uvec3 arg0)
- (declare (in) uint arg1))
- ((return (expression uvec3 max (var_ref arg0) (var_ref arg1)))))
-
- (signature uvec4
- (parameters
- (declare (in) uvec4 arg0)
- (declare (in) uint arg1))
- ((return (expression uvec4 max (var_ref arg0) (var_ref arg1)))))
-))
diff --git a/src/glsl/builtins/ir/min.ir b/src/glsl/builtins/ir/min.ir
deleted file mode 100644
index 2deef11..0000000
--- a/src/glsl/builtins/ir/min.ir
+++ /dev/null
@@ -1,127 +0,0 @@
-((function min
- (signature float
- (parameters
- (declare (in) float arg0)
- (declare (in) float arg1))
- ((return (expression float min (var_ref arg0) (var_ref arg1)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) vec2 arg1))
- ((return (expression vec2 min (var_ref arg0) (var_ref arg1)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) vec3 arg1))
- ((return (expression vec3 min (var_ref arg0) (var_ref arg1)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) vec4 arg1))
- ((return (expression vec4 min (var_ref arg0) (var_ref arg1)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) float arg1))
- ((return (expression vec2 min (var_ref arg0) (var_ref arg1)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) float arg1))
- ((return (expression vec3 min (var_ref arg0) (var_ref arg1)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) float arg1))
- ((return (expression vec4 min (var_ref arg0) (var_ref arg1)))))
-
- (signature int
- (parameters
- (declare (in) int arg0)
- (declare (in) int arg1))
- ((return (expression int min (var_ref arg0) (var_ref arg1)))))
-
- (signature ivec2
- (parameters
- (declare (in) ivec2 arg0)
- (declare (in) ivec2 arg1))
- ((return (expression ivec2 min (var_ref arg0) (var_ref arg1)))))
-
- (signature ivec3
- (parameters
- (declare (in) ivec3 arg0)
- (declare (in) ivec3 arg1))
- ((return (expression ivec3 min (var_ref arg0) (var_ref arg1)))))
-
- (signature ivec4
- (parameters
- (declare (in) ivec4 arg0)
- (declare (in) ivec4 arg1))
- ((return (expression ivec4 min (var_ref arg0) (var_ref arg1)))))
-
- (signature ivec2
- (parameters
- (declare (in) ivec2 arg0)
- (declare (in) int arg1))
- ((return (expression ivec2 min (var_ref arg0) (var_ref arg1)))))
-
- (signature ivec3
- (parameters
- (declare (in) ivec3 arg0)
- (declare (in) int arg1))
- ((return (expression ivec3 min (var_ref arg0) (var_ref arg1)))))
-
- (signature ivec4
- (parameters
- (declare (in) ivec4 arg0)
- (declare (in) int arg1))
- ((return (expression ivec4 min (var_ref arg0) (var_ref arg1)))))
-
- (signature uint
- (parameters
- (declare (in) uint arg0)
- (declare (in) uint arg1))
- ((return (expression uint min (var_ref arg0) (var_ref arg1)))))
-
- (signature uvec2
- (parameters
- (declare (in) uvec2 arg0)
- (declare (in) uvec2 arg1))
- ((return (expression uvec2 min (var_ref arg0) (var_ref arg1)))))
-
- (signature uvec3
- (parameters
- (declare (in) uvec3 arg0)
- (declare (in) uvec3 arg1))
- ((return (expression uvec3 min (var_ref arg0) (var_ref arg1)))))
-
- (signature uvec4
- (parameters
- (declare (in) uvec4 arg0)
- (declare (in) uvec4 arg1))
- ((return (expression uvec4 min (var_ref arg0) (var_ref arg1)))))
-
- (signature uvec2
- (parameters
- (declare (in) uvec2 arg0)
- (declare (in) uint arg1))
- ((return (expression uvec2 min (var_ref arg0) (var_ref arg1)))))
-
- (signature uvec3
- (parameters
- (declare (in) uvec3 arg0)
- (declare (in) uint arg1))
- ((return (expression uvec3 min (var_ref arg0) (var_ref arg1)))))
-
- (signature uvec4
- (parameters
- (declare (in) uvec4 arg0)
- (declare (in) uint arg1))
- ((return (expression uvec4 min (var_ref arg0) (var_ref arg1)))))
-))
diff --git a/src/glsl/builtins/ir/mix.ir b/src/glsl/builtins/ir/mix.ir
deleted file mode 100644
index e666532..0000000
--- a/src/glsl/builtins/ir/mix.ir
+++ /dev/null
@@ -1,88 +0,0 @@
-((function mix
- (signature float
- (parameters
- (declare (in) float arg0)
- (declare (in) float arg1)
- (declare (in) float arg2))
- ((return (expression float lrp (var_ref arg0) (var_ref arg1) (var_ref arg2)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) vec2 arg1)
- (declare (in) vec2 arg2))
- ((return (expression vec2 lrp (var_ref arg0) (var_ref arg1) (var_ref arg2)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) vec3 arg1)
- (declare (in) vec3 arg2))
- ((return (expression vec3 lrp (var_ref arg0) (var_ref arg1) (var_ref arg2)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) vec4 arg1)
- (declare (in) vec4 arg2))
- ((return (expression vec4 lrp (var_ref arg0) (var_ref arg1) (var_ref arg2)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) vec2 arg1)
- (declare (in) float arg2))
- ((return (expression vec2 lrp (var_ref arg0) (var_ref arg1) (var_ref arg2)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) vec3 arg1)
- (declare (in) float arg2))
- ((return (expression vec3 lrp (var_ref arg0) (var_ref arg1) (var_ref arg2)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) vec4 arg1)
- (declare (in) float arg2))
- ((return (expression vec4 lrp (var_ref arg0) (var_ref arg1) (var_ref arg2)))))
-
- (signature float
- (parameters
- (declare (in) float v1)
- (declare (in) float v2)
- (declare (in) bool a))
- ((assign (var_ref a) (x) (var_ref v1) (var_ref v2))
- (return (var_ref v1))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 v1)
- (declare (in) vec2 v2)
- (declare (in) bvec2 a))
- ((assign (swiz x (var_ref a)) (x) (var_ref v1) (swiz x (var_ref v2)))
- (assign (swiz y (var_ref a)) (y) (var_ref v1) (swiz y (var_ref v2)))
- (return (var_ref v1))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 v1)
- (declare (in) vec3 v2)
- (declare (in) bvec3 a))
- ((assign (swiz x (var_ref a)) (x) (var_ref v1) (swiz x (var_ref v2)))
- (assign (swiz y (var_ref a)) (y) (var_ref v1) (swiz y (var_ref v2)))
- (assign (swiz z (var_ref a)) (z) (var_ref v1) (swiz z (var_ref v2)))
- (return (var_ref v1))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 v1)
- (declare (in) vec4 v2)
- (declare (in) bvec4 a))
- ((assign (swiz x (var_ref a)) (x) (var_ref v1) (swiz x (var_ref v2)))
- (assign (swiz y (var_ref a)) (y) (var_ref v1) (swiz y (var_ref v2)))
- (assign (swiz z (var_ref a)) (z) (var_ref v1) (swiz z (var_ref v2)))
- (assign (swiz w (var_ref a)) (w) (var_ref v1) (swiz w (var_ref v2)))
- (return (var_ref v1))))
-))
diff --git a/src/glsl/builtins/ir/mod.ir b/src/glsl/builtins/ir/mod.ir
deleted file mode 100644
index aeaea24..0000000
--- a/src/glsl/builtins/ir/mod.ir
+++ /dev/null
@@ -1,43 +0,0 @@
-((function mod
- (signature float
- (parameters
- (declare (in) float arg0)
- (declare (in) float arg1))
- ((return (expression float % (var_ref arg0) (var_ref arg1)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) vec2 arg1))
- ((return (expression vec2 % (var_ref arg0) (var_ref arg1)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) vec3 arg1))
- ((return (expression vec3 % (var_ref arg0) (var_ref arg1)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) vec4 arg1))
- ((return (expression vec4 % (var_ref arg0) (var_ref arg1)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) float arg1))
- ((return (expression vec2 % (var_ref arg0) (var_ref arg1)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) float arg1))
- ((return (expression vec3 % (var_ref arg0) (var_ref arg1)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) float arg1))
- ((return (expression vec4 % (var_ref arg0) (var_ref arg1)))))
-))
diff --git a/src/glsl/builtins/ir/modf.ir b/src/glsl/builtins/ir/modf.ir
deleted file mode 100644
index f4f6315..0000000
--- a/src/glsl/builtins/ir/modf.ir
+++ /dev/null
@@ -1,37 +0,0 @@
-((function modf
- (signature float
- (parameters
- (declare (in) float x)
- (declare (out) float i))
- ((declare () float t)
- (assign (x) (var_ref t) (expression float trunc (var_ref x)))
- (assign (x) (var_ref i) (var_ref t))
- (return (expression float - (var_ref x) (var_ref t)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 x)
- (declare (out) vec2 i))
- ((declare () vec2 t)
- (assign (xy) (var_ref t) (expression vec2 trunc (var_ref x)))
- (assign (xy) (var_ref i) (var_ref t))
- (return (expression vec2 - (var_ref x) (var_ref t)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 x)
- (declare (out) vec3 i))
- ((declare () vec3 t)
- (assign (xyz) (var_ref t) (expression vec3 trunc (var_ref x)))
- (assign (xyz) (var_ref i) (var_ref t))
- (return (expression vec3 - (var_ref x) (var_ref t)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 x)
- (declare (out) vec4 i))
- ((declare () vec4 t)
- (assign (xyzw) (var_ref t) (expression vec4 trunc (var_ref x)))
- (assign (xyzw) (var_ref i) (var_ref t))
- (return (expression vec4 - (var_ref x) (var_ref t)))))
-))
diff --git a/src/glsl/builtins/ir/noise1.ir b/src/glsl/builtins/ir/noise1.ir
deleted file mode 100644
index 1155056..0000000
--- a/src/glsl/builtins/ir/noise1.ir
+++ /dev/null
@@ -1,18 +0,0 @@
-((function noise1
- (signature float
- (parameters
- (declare (in) float x))
- ((return (expression float noise (var_ref x)))))
- (signature float
- (parameters
- (declare (in) vec2 x))
- ((return (expression float noise (var_ref x)))))
- (signature float
- (parameters
- (declare (in) vec3 x))
- ((return (expression float noise (var_ref x)))))
- (signature float
- (parameters
- (declare (in) vec4 x))
- ((return (expression float noise (var_ref x)))))
-))
diff --git a/src/glsl/builtins/ir/noise2.ir b/src/glsl/builtins/ir/noise2.ir
deleted file mode 100644
index d336614..0000000
--- a/src/glsl/builtins/ir/noise2.ir
+++ /dev/null
@@ -1,61 +0,0 @@
-((function noise2
- (signature vec2
- (parameters (declare (in) vec4 p))
- (
- (declare () float a)
- (declare () float b)
- (declare () vec2 t)
-
- (assign (x) (var_ref a) (expression float noise (var_ref p)))
- (assign (x) (var_ref b) (expression float noise (expression vec4 + (var_ref p) (constant vec4 (601.0 313.0 29.0 277.0)))))
- (assign (x) (var_ref t) (var_ref a))
- (assign (y) (var_ref t) (var_ref b))
- (return (var_ref t))
- ))
-
- (signature vec2
- (parameters (declare (in) vec3 p))
- (
- (declare () float a)
- (declare () float b)
- (declare () vec2 t)
-
- (assign (x) (var_ref a) (expression float noise (var_ref p)))
- (assign (x) (var_ref b) (expression float noise (expression vec3 + (var_ref p) (constant vec3 (601.0 313.0 29.0)))))
- (assign (x) (var_ref t) (var_ref a))
- (assign (y) (var_ref t) (var_ref b))
- (return (var_ref t))
- ))
-
- (signature vec2
- (parameters
- (declare (in ) vec2 p)
- )
- (
- (declare () float a)
- (declare () float b)
- (declare () vec2 t)
-
- (assign (x) (var_ref a) (expression float noise (var_ref p)))
- (assign (x) (var_ref b) (expression float noise (expression vec2 + (var_ref p) (constant vec2 (601.0 313.0)))))
- (assign (x) (var_ref t) (var_ref a))
- (assign (y) (var_ref t) (var_ref b))
- (return (var_ref t))
- ))
-
- (signature vec2
- (parameters
- (declare (in ) float p)
- )
- (
- (declare () float a)
- (declare () float b)
- (declare () vec2 t)
-
- (assign (x) (var_ref a) (expression float noise (var_ref p)))
- (assign (x) (var_ref b) (expression float noise (expression float + (var_ref p) (constant float (601.0)))))
- (assign (x) (var_ref t) (var_ref a))
- (assign (y) (var_ref t) (var_ref b))
- (return (var_ref t))
- ))
-))
diff --git a/src/glsl/builtins/ir/noise3.ir b/src/glsl/builtins/ir/noise3.ir
deleted file mode 100644
index 1d8aa3f..0000000
--- a/src/glsl/builtins/ir/noise3.ir
+++ /dev/null
@@ -1,73 +0,0 @@
-((function noise3
- (signature vec3
- (parameters (declare (in) vec4 p))
- (
- (declare () float a)
- (declare () float b)
- (declare () float c)
- (declare () vec3 t)
-
- (assign (x) (var_ref a) (expression float noise (var_ref p)))
- (assign (x) (var_ref b) (expression float noise (expression vec4 + (var_ref p) (constant vec4 (601.0 313.0 29.0 277.0)))))
- (assign (x) (var_ref c) (expression float noise (expression vec4 + (var_ref p) (constant vec4 (1559.0 113.0 1861.0 797.0)))))
-
- (assign (x) (var_ref t) (var_ref a))
- (assign (y) (var_ref t) (var_ref b))
- (assign (z) (var_ref t) (var_ref c))
- (return (var_ref t))
- ))
-
- (signature vec3
- (parameters (declare (in) vec3 p))
- (
- (declare () float a)
- (declare () float b)
- (declare () float c)
- (declare () vec3 t)
-
- (assign (x) (var_ref a) (expression float noise (var_ref p)))
- (assign (x) (var_ref b) (expression float noise (expression vec3 + (var_ref p) (constant vec3 (601.0 313.0 29.0)))))
- (assign (x) (var_ref c) (expression float noise (expression vec3 + (var_ref p) (constant vec3 (1559.0 113.0 1861.0)))))
-
- (assign (x) (var_ref t) (var_ref a))
- (assign (y) (var_ref t) (var_ref b))
- (assign (z) (var_ref t) (var_ref c))
- (return (var_ref t))
- ))
-
- (signature vec3
- (parameters (declare (in) vec2 p))
- (
- (declare () float a)
- (declare () float b)
- (declare () float c)
- (declare () vec3 t)
-
- (assign (x) (var_ref a) (expression float noise (var_ref p)))
- (assign (x) (var_ref b) (expression float noise (expression vec2 + (var_ref p) (constant vec2 (601.0 313.0)))))
- (assign (x) (var_ref c) (expression float noise (expression vec2 + (var_ref p) (constant vec2 (1559.0 113.0)))))
-
- (assign (x) (var_ref t) (var_ref a))
- (assign (y) (var_ref t) (var_ref b))
- (assign (z) (var_ref t) (var_ref c))
- (return (var_ref t))
- ))
-
- (signature vec3
- (parameters (declare (in) float p))
- (
- (declare () float a)
- (declare () float b)
- (declare () float c)
- (declare () vec3 t)
-
- (assign (x) (var_ref a) (expression float noise (var_ref p)))
- (assign (x) (var_ref b) (expression float noise (expression float + (var_ref p) (constant float (601.0)))))
- (assign (x) (var_ref c) (expression float noise (expression float + (var_ref p) (constant float (1559.0)))))
-
- (assign (x) (var_ref t) (var_ref a))
- (assign (y) (var_ref t) (var_ref b))
- (assign (z) (var_ref t) (var_ref c))
- (return (var_ref t))
- ))
-))
diff --git a/src/glsl/builtins/ir/noise4.ir b/src/glsl/builtins/ir/noise4.ir
deleted file mode 100644
index 4949696..0000000
--- a/src/glsl/builtins/ir/noise4.ir
+++ /dev/null
@@ -1,97 +0,0 @@
-((function noise4
- (signature vec4
- (parameters (declare (in) vec4 p))
- (
- (declare () float _x)
- (declare () float _y)
- (declare () float _z)
- (declare () float _w)
- (declare () vec4 _r)
-
- (declare () vec4 _p)
- (assign (xyzw) (var_ref _p) (expression vec4 + (var_ref p) (constant vec4 (1559.0 113.0 1861.0 797.0))) )
-
- (assign (x) (var_ref _x) (expression float noise(var_ref p)))
- (assign (x) (var_ref _y) (expression float noise(expression vec4 + (var_ref p) (constant vec4 (601.0 313.0 29.0 277.0)))))
- (assign (x) (var_ref _z) (expression float noise(var_ref _p)))
- (assign (x) (var_ref _w) (expression float noise(expression vec4 + (var_ref _p) (constant vec4 (601.0 313.0 29.0 277.0)))))
-
- (assign (x) (var_ref _r) (var_ref _x))
- (assign (y) (var_ref _r) (var_ref _y))
- (assign (z) (var_ref _r) (var_ref _z))
- (assign (w) (var_ref _r) (var_ref _w))
- (return (var_ref _r))
- ))
-
- (signature vec4
- (parameters (declare (in) vec3 p))
- (
- (declare () float _x)
- (declare () float _y)
- (declare () float _z)
- (declare () float _w)
- (declare () vec4 _r)
-
- (declare () vec3 _p)
- (assign (xyz) (var_ref _p) (expression vec3 + (var_ref p) (constant vec3 (1559.0 113.0 1861.0))) )
-
- (assign (x) (var_ref _x) (expression float noise(var_ref p)))
- (assign (x) (var_ref _y) (expression float noise(expression vec3 + (var_ref p) (constant vec3 (601.0 313.0 29.0)))))
- (assign (x) (var_ref _z) (expression float noise(var_ref _p)))
- (assign (x) (var_ref _w) (expression float noise(expression vec3 + (var_ref _p) (constant vec3 (601.0 313.0 29.0)))))
-
- (assign (x) (var_ref _r) (var_ref _x))
- (assign (y) (var_ref _r) (var_ref _y))
- (assign (z) (var_ref _r) (var_ref _z))
- (assign (w) (var_ref _r) (var_ref _w))
- (return (var_ref _r))
- ))
-
- (signature vec4
- (parameters (declare (in) vec2 p))
- (
- (declare () float _x)
- (declare () float _y)
- (declare () float _z)
- (declare () float _w)
- (declare () vec4 _r)
-
- (declare () vec2 _p)
- (assign (xy) (var_ref _p) (expression vec2 + (var_ref p) (constant vec2 (1559.0 113.0))) )
-
- (assign (x) (var_ref _x) (expression float noise(var_ref p)))
- (assign (x) (var_ref _y) (expression float noise(expression vec2 + (var_ref p) (constant vec2 (601.0 313.0)))))
- (assign (x) (var_ref _z) (expression float noise(var_ref _p)))
- (assign (x) (var_ref _w) (expression float noise(expression vec2 + (var_ref _p) (constant vec2 (601.0 313.0)))))
-
- (assign (x) (var_ref _r) (var_ref _x))
- (assign (y) (var_ref _r) (var_ref _y))
- (assign (z) (var_ref _r) (var_ref _z))
- (assign (w) (var_ref _r) (var_ref _w))
- (return (var_ref _r))
- ))
-
- (signature vec4
- (parameters (declare (in) float p))
- (
- (declare () float _x)
- (declare () float _y)
- (declare () float _z)
- (declare () float _w)
- (declare () vec4 _r)
-
- (declare () float _p)
- (assign (x) (var_ref _p) (expression float + (var_ref p) (constant float (1559.0))) )
-
- (assign (x) (var_ref _x) (expression float noise(var_ref p)))
- (assign (x) (var_ref _y) (expression float noise(expression float + (var_ref p) (constant float (601.0)))))
- (assign (x) (var_ref _z) (expression float noise(var_ref _p)))
- (assign (x) (var_ref _w) (expression float noise(expression float + (var_ref _p) (constant float (601.0)))))
-
- (assign (x) (var_ref _r) (var_ref _x))
- (assign (y) (var_ref _r) (var_ref _y))
- (assign (z) (var_ref _r) (var_ref _z))
- (assign (w) (var_ref _r) (var_ref _w))
- (return (var_ref _r))
- ))
-))
diff --git a/src/glsl/builtins/ir/normalize.ir b/src/glsl/builtins/ir/normalize.ir
deleted file mode 100644
index 0de0db0..0000000
--- a/src/glsl/builtins/ir/normalize.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function normalize
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float sign (var_ref arg0)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 * (var_ref arg0) (expression float rsq (expression float dot (var_ref arg0) (var_ref arg0)))))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 * (var_ref arg0) (expression float rsq (expression float dot (var_ref arg0) (var_ref arg0)))))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 * (var_ref arg0) (expression float rsq (expression float dot (var_ref arg0) (var_ref arg0)))))))
-))
diff --git a/src/glsl/builtins/ir/not.ir b/src/glsl/builtins/ir/not.ir
deleted file mode 100644
index b696b06..0000000
--- a/src/glsl/builtins/ir/not.ir
+++ /dev/null
@@ -1,16 +0,0 @@
-((function not
- (signature bvec2
- (parameters
- (declare (in) bvec2 arg0))
- ((return (expression bvec2 ! (var_ref arg0)))))
-
- (signature bvec3
- (parameters
- (declare (in) bvec3 arg0))
- ((return (expression bvec3 ! (var_ref arg0)))))
-
- (signature bvec4
- (parameters
- (declare (in) bvec4 arg0))
- ((return (expression bvec4 ! (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/notEqual.ir b/src/glsl/builtins/ir/notEqual.ir
deleted file mode 100644
index abaf191..0000000
--- a/src/glsl/builtins/ir/notEqual.ir
+++ /dev/null
@@ -1,73 +0,0 @@
-((function notEqual
- (signature bvec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) vec2 arg1))
- ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) vec3 arg1))
- ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) vec4 arg1))
- ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec2
- (parameters
- (declare (in) bvec2 arg0)
- (declare (in) bvec2 arg1))
- ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) bvec3 arg0)
- (declare (in) bvec3 arg1))
- ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) bvec4 arg0)
- (declare (in) bvec4 arg1))
- ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec2
- (parameters
- (declare (in) ivec2 arg0)
- (declare (in) ivec2 arg1))
- ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) ivec3 arg0)
- (declare (in) ivec3 arg1))
- ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) ivec4 arg0)
- (declare (in) ivec4 arg1))
- ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec2
- (parameters
- (declare (in) uvec2 arg0)
- (declare (in) uvec2 arg1))
- ((return (expression bvec2 != (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec3
- (parameters
- (declare (in) uvec3 arg0)
- (declare (in) uvec3 arg1))
- ((return (expression bvec3 != (var_ref arg0) (var_ref arg1)))))
-
- (signature bvec4
- (parameters
- (declare (in) uvec4 arg0)
- (declare (in) uvec4 arg1))
- ((return (expression bvec4 != (var_ref arg0) (var_ref arg1)))))
-))
diff --git a/src/glsl/builtins/ir/outerProduct.ir b/src/glsl/builtins/ir/outerProduct.ir
deleted file mode 100644
index 0e3f375..0000000
--- a/src/glsl/builtins/ir/outerProduct.ir
+++ /dev/null
@@ -1,92 +0,0 @@
-((function outerProduct
- (signature mat2
- (parameters
- (declare (in) vec2 u)
- (declare (in) vec2 v))
- ((declare () mat2 m)
- (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))
- (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))
- (return (var_ref m))))
-
- (signature mat2x3
- (parameters
- (declare (in) vec3 u)
- (declare (in) vec2 v))
- ((declare () mat2x3 m)
- (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))
- (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))
- (return (var_ref m))))
-
- (signature mat2x4
- (parameters
- (declare (in) vec4 u)
- (declare (in) vec2 v))
- ((declare () mat2x4 m)
- (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))
- (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))
- (return (var_ref m))))
-
- (signature mat3x2
- (parameters
- (declare (in) vec2 u)
- (declare (in) vec3 v))
- ((declare () mat3x2 m)
- (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))
- (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))
- (assign (xy) (array_ref (var_ref m) (constant int (2))) (expression vec2 * (var_ref u) (swiz z (var_ref v))))
- (return (var_ref m))
- ))
-
- (signature mat3
- (parameters
- (declare (in) vec3 u)
- (declare (in) vec3 v))
- ((declare () mat3 m)
- (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))
- (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))
- (assign (xyz) (array_ref (var_ref m) (constant int (2))) (expression vec3 * (var_ref u) (swiz z (var_ref v))))
- (return (var_ref m))))
-
- (signature mat3x4
- (parameters
- (declare (in) vec4 u)
- (declare (in) vec3 v))
- ((declare () mat3x4 m)
- (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))
- (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))
- (assign (xyzw) (array_ref (var_ref m) (constant int (2))) (expression vec4 * (var_ref u) (swiz z (var_ref v))))
- (return (var_ref m))))
-
- (signature mat4x2
- (parameters
- (declare (in) vec2 u)
- (declare (in) vec4 v))
- ((declare () mat4x2 m)
- (assign (xy) (array_ref (var_ref m) (constant int (0))) (expression vec2 * (var_ref u) (swiz x (var_ref v))))
- (assign (xy) (array_ref (var_ref m) (constant int (1))) (expression vec2 * (var_ref u) (swiz y (var_ref v))))
- (assign (xy) (array_ref (var_ref m) (constant int (2))) (expression vec2 * (var_ref u) (swiz z (var_ref v))))
- (assign (xy) (array_ref (var_ref m) (constant int (3))) (expression vec2 * (var_ref u) (swiz w (var_ref v))))
- (return (var_ref m))))
-
- (signature mat4x3
- (parameters
- (declare (in) vec3 u)
- (declare (in) vec4 v))
- ((declare () mat4x3 m)
- (assign (xyz) (array_ref (var_ref m) (constant int (0))) (expression vec3 * (var_ref u) (swiz x (var_ref v))))
- (assign (xyz) (array_ref (var_ref m) (constant int (1))) (expression vec3 * (var_ref u) (swiz y (var_ref v))))
- (assign (xyz) (array_ref (var_ref m) (constant int (2))) (expression vec3 * (var_ref u) (swiz z (var_ref v))))
- (assign (xyz) (array_ref (var_ref m) (constant int (3))) (expression vec3 * (var_ref u) (swiz w (var_ref v))))
- (return (var_ref m))))
-
- (signature mat4
- (parameters
- (declare (in) vec4 u)
- (declare (in) vec4 v))
- ((declare () mat4 m)
- (assign (xyzw) (array_ref (var_ref m) (constant int (0))) (expression vec4 * (var_ref u) (swiz x (var_ref v))))
- (assign (xyzw) (array_ref (var_ref m) (constant int (1))) (expression vec4 * (var_ref u) (swiz y (var_ref v))))
- (assign (xyzw) (array_ref (var_ref m) (constant int (2))) (expression vec4 * (var_ref u) (swiz z (var_ref v))))
- (assign (xyzw) (array_ref (var_ref m) (constant int (3))) (expression vec4 * (var_ref u) (swiz w (var_ref v))))
- (return (var_ref m))))
-))
diff --git a/src/glsl/builtins/ir/packHalf2x16.ir b/src/glsl/builtins/ir/packHalf2x16.ir
deleted file mode 100644
index 2f85407..0000000
--- a/src/glsl/builtins/ir/packHalf2x16.ir
+++ /dev/null
@@ -1,6 +0,0 @@
-((function packHalf2x16
- (signature uint
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression uint packHalf2x16 (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/packSnorm2x16.ir b/src/glsl/builtins/ir/packSnorm2x16.ir
deleted file mode 100644
index b4575d2..0000000
--- a/src/glsl/builtins/ir/packSnorm2x16.ir
+++ /dev/null
@@ -1,6 +0,0 @@
-((function packSnorm2x16
- (signature uint
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression uint packSnorm2x16 (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/packSnorm4x8.ir b/src/glsl/builtins/ir/packSnorm4x8.ir
deleted file mode 100644
index a153aa9..0000000
--- a/src/glsl/builtins/ir/packSnorm4x8.ir
+++ /dev/null
@@ -1,6 +0,0 @@
-((function packSnorm4x8
- (signature uint
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression uint packSnorm4x8 (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/packUnorm2x16.ir b/src/glsl/builtins/ir/packUnorm2x16.ir
deleted file mode 100644
index c809f2d..0000000
--- a/src/glsl/builtins/ir/packUnorm2x16.ir
+++ /dev/null
@@ -1,6 +0,0 @@
-((function packUnorm2x16
- (signature uint
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression uint packUnorm2x16 (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/packUnorm4x8.ir b/src/glsl/builtins/ir/packUnorm4x8.ir
deleted file mode 100644
index 3a8e46c..0000000
--- a/src/glsl/builtins/ir/packUnorm4x8.ir
+++ /dev/null
@@ -1,6 +0,0 @@
-((function packUnorm4x8
- (signature uint
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression uint packUnorm4x8 (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/pow.ir b/src/glsl/builtins/ir/pow.ir
deleted file mode 100644
index a61bc44..0000000
--- a/src/glsl/builtins/ir/pow.ir
+++ /dev/null
@@ -1,25 +0,0 @@
-((function pow
- (signature float
- (parameters
- (declare (in) float arg0)
- (declare (in) float arg1))
- ((return (expression float pow (var_ref arg0) (var_ref arg1)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0)
- (declare (in) vec2 arg1))
- ((return (expression vec2 pow (var_ref arg0) (var_ref arg1)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0)
- (declare (in) vec3 arg1))
- ((return (expression vec3 pow (var_ref arg0) (var_ref arg1)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0)
- (declare (in) vec4 arg1))
- ((return (expression vec4 pow (var_ref arg0) (var_ref arg1)))))
-))
diff --git a/src/glsl/builtins/ir/radians.ir b/src/glsl/builtins/ir/radians.ir
deleted file mode 100644
index a419101..0000000
--- a/src/glsl/builtins/ir/radians.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function radians
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float * (var_ref arg0) (constant float (0.0174532925))))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 * (var_ref arg0) (constant float (0.0174532925))))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 * (var_ref arg0) (constant float (0.0174532925))))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 * (var_ref arg0) (constant float (0.0174532925))))))
-))
diff --git a/src/glsl/builtins/ir/reflect.ir b/src/glsl/builtins/ir/reflect.ir
deleted file mode 100644
index 1fa394e..0000000
--- a/src/glsl/builtins/ir/reflect.ir
+++ /dev/null
@@ -1,58 +0,0 @@
-((function reflect
- (signature float
- (parameters
- (declare (in) float i)
- (declare (in) float n))
- ((return (expression float -
- (var_ref i)
- (expression float *
- (constant float (2.0))
- (expression float *
- (expression float *
- (var_ref n)
- (var_ref i))
- (var_ref n)))))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 i)
- (declare (in) vec2 n))
- ((return (expression vec2 -
- (var_ref i)
- (expression vec2 *
- (constant float (2.0))
- (expression vec2 *
- (expression float dot
- (var_ref n)
- (var_ref i))
- (var_ref n)))))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 i)
- (declare (in) vec3 n))
- ((return (expression vec3 -
- (var_ref i)
- (expression vec3 *
- (constant float (2.0))
- (expression vec3 *
- (expression float dot
- (var_ref n)
- (var_ref i))
- (var_ref n)))))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 i)
- (declare (in) vec4 n))
- ((return (expression vec4 -
- (var_ref i)
- (expression vec4 *
- (constant float (2.0))
- (expression vec4 *
- (expression float dot
- (var_ref n)
- (var_ref i))
- (var_ref n)))))))
-
-))
diff --git a/src/glsl/builtins/ir/refract.ir b/src/glsl/builtins/ir/refract.ir
deleted file mode 100644
index 60899f0..0000000
--- a/src/glsl/builtins/ir/refract.ir
+++ /dev/null
@@ -1,102 +0,0 @@
-((function refract
- (signature float
- (parameters
- (declare (in) float i)
- (declare (in) float n)
- (declare (in) float eta))
- ((declare () float k)
- (assign (x) (var_ref k)
- (expression float - (constant float (1.0))
- (expression float * (var_ref eta)
- (expression float * (var_ref eta)
- (expression float - (constant float (1.0))
- (expression float *
- (expression float * (var_ref n) (var_ref i))
- (expression float * (var_ref n) (var_ref i))))))))
- (if (expression bool < (var_ref k) (constant float (0.0)))
- ((return (constant float (0.0))))
- ((return (expression float -
- (expression float * (var_ref eta) (var_ref i))
- (expression float *
- (expression float +
- (expression float * (var_ref eta)
- (expression float * (var_ref n) (var_ref i)))
- (expression float sqrt (var_ref k)))
- (var_ref n))))))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 i)
- (declare (in) vec2 n)
- (declare (in) float eta))
- ((declare () float k)
- (assign (x) (var_ref k)
- (expression float - (constant float (1.0))
- (expression float * (var_ref eta)
- (expression float * (var_ref eta)
- (expression float - (constant float (1.0))
- (expression float *
- (expression float dot (var_ref n) (var_ref i))
- (expression float dot (var_ref n) (var_ref i))))))))
- (if (expression bool < (var_ref k) (constant float (0.0)))
- ((return (constant vec2 (0.0 0.0))))
- ((return (expression vec2 -
- (expression vec2 * (var_ref eta) (var_ref i))
- (expression vec2 *
- (expression float +
- (expression float * (var_ref eta)
- (expression float dot (var_ref n) (var_ref i)))
- (expression float sqrt (var_ref k)))
- (var_ref n))))))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 i)
- (declare (in) vec3 n)
- (declare (in) float eta))
- ((declare () float k)
- (assign (x) (var_ref k)
- (expression float - (constant float (1.0))
- (expression float * (var_ref eta)
- (expression float * (var_ref eta)
- (expression float - (constant float (1.0))
- (expression float *
- (expression float dot (var_ref n) (var_ref i))
- (expression float dot (var_ref n) (var_ref i))))))))
- (if (expression bool < (var_ref k) (constant float (0.0)))
- ((return (constant vec3 (0.0 0.0 0.0))))
- ((return (expression vec3 -
- (expression vec3 * (var_ref eta) (var_ref i))
- (expression vec3 *
- (expression float +
- (expression float * (var_ref eta)
- (expression float dot (var_ref n) (var_ref i)))
- (expression float sqrt (var_ref k)))
- (var_ref n))))))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 i)
- (declare (in) vec4 n)
- (declare (in) float eta))
- ((declare () float k)
- (assign (x) (var_ref k)
- (expression float - (constant float (1.0))
- (expression float * (var_ref eta)
- (expression float * (var_ref eta)
- (expression float - (constant float (1.0))
- (expression float *
- (expression float dot (var_ref n) (var_ref i))
- (expression float dot (var_ref n) (var_ref i))))))))
- (if (expression bool < (var_ref k) (constant float (0.0)))
- ((return (constant vec4 (0.0 0.0 0.0 0.0))))
- ((return (expression vec4 -
- (expression vec4 * (var_ref eta) (var_ref i))
- (expression vec4 *
- (expression float +
- (expression float * (var_ref eta)
- (expression float dot (var_ref n) (var_ref i)))
- (expression float sqrt (var_ref k)))
- (var_ref n))))))))
-
-))
diff --git a/src/glsl/builtins/ir/round.ir b/src/glsl/builtins/ir/round.ir
deleted file mode 100644
index d0d425b..0000000
--- a/src/glsl/builtins/ir/round.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function round
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float round_even (var_ref arg0)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 round_even (var_ref arg0)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 round_even (var_ref arg0)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 round_even (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/roundEven.ir b/src/glsl/builtins/ir/roundEven.ir
deleted file mode 100644
index a9c99b6..0000000
--- a/src/glsl/builtins/ir/roundEven.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function roundEven
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float round_even (var_ref arg0)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 round_even (var_ref arg0)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 round_even (var_ref arg0)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 round_even (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/sign.ir b/src/glsl/builtins/ir/sign.ir
deleted file mode 100644
index 1f51718..0000000
--- a/src/glsl/builtins/ir/sign.ir
+++ /dev/null
@@ -1,42 +0,0 @@
-((function sign
- (signature float
- (parameters
- (declare (in) float x))
- ((return (expression float sign (var_ref x)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 x))
- ((return (expression vec2 sign (var_ref x)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 x))
- ((return (expression vec3 sign (var_ref x)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 x))
- ((return (expression vec4 sign (var_ref x)))))
-
- (signature int
- (parameters
- (declare (in) int x))
- ((return (expression int sign (var_ref x)))))
-
- (signature ivec2
- (parameters
- (declare (in) ivec2 x))
- ((return (expression ivec2 sign (var_ref x)))))
-
- (signature ivec3
- (parameters
- (declare (in) ivec3 x))
- ((return (expression ivec3 sign (var_ref x)))))
-
- (signature ivec4
- (parameters
- (declare (in) ivec4 x))
- ((return (expression ivec4 sign (var_ref x)))))
-))
-
diff --git a/src/glsl/builtins/ir/sin.ir b/src/glsl/builtins/ir/sin.ir
deleted file mode 100644
index e6009d8..0000000
--- a/src/glsl/builtins/ir/sin.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function sin
- (signature float
- (parameters
- (declare (in) float angle))
- ((return (expression float sin (var_ref angle)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 angle))
- ((return (expression vec2 sin (var_ref angle)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 angle))
- ((return (expression vec3 sin (var_ref angle)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 angle))
- ((return (expression vec4 sin (var_ref angle)))))
-))
diff --git a/src/glsl/builtins/ir/sinh.ir b/src/glsl/builtins/ir/sinh.ir
deleted file mode 100644
index 31edd30..0000000
--- a/src/glsl/builtins/ir/sinh.ir
+++ /dev/null
@@ -1,30 +0,0 @@
-((function sinh
- (signature float
- (parameters
- (declare (in) float x))
- ((return (expression float * (constant float (0.5))
- (expression float -
- (expression float exp (var_ref x))
- (expression float exp (expression float neg (var_ref x))))))))
- (signature vec2
- (parameters
- (declare (in) vec2 x))
- ((return (expression vec2 * (constant float (0.5))
- (expression vec2 -
- (expression vec2 exp (var_ref x))
- (expression vec2 exp (expression vec2 neg (var_ref x))))))))
- (signature vec3
- (parameters
- (declare (in) vec3 x))
- ((return (expression vec3 * (constant float (0.5))
- (expression vec3 -
- (expression vec3 exp (var_ref x))
- (expression vec3 exp (expression vec3 neg (var_ref x))))))))
- (signature vec4
- (parameters
- (declare (in) vec4 x))
- ((return (expression vec4 * (constant float (0.5))
- (expression vec4 -
- (expression vec4 exp (var_ref x))
- (expression vec4 exp (expression vec4 neg (var_ref x))))))))
-))
diff --git a/src/glsl/builtins/ir/smoothstep.ir b/src/glsl/builtins/ir/smoothstep.ir
deleted file mode 100644
index 94c98b2..0000000
--- a/src/glsl/builtins/ir/smoothstep.ir
+++ /dev/null
@@ -1,100 +0,0 @@
-((function smoothstep
- (signature float
- (parameters
- (declare (in) float edge0)
- (declare (in) float edge1)
- (declare (in) float x))
- ((declare () float t)
- (assign (x) (var_ref t)
- (expression float max
- (expression float min
- (expression float / (expression float - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))
- (constant float (1.0)))
- (constant float (0.0))))
- (return (expression float * (var_ref t) (expression float * (var_ref t) (expression float - (constant float (3.0)) (expression float * (constant float (2.0)) (var_ref t))))))))
- (signature vec2
- (parameters
- (declare (in) float edge0)
- (declare (in) float edge1)
- (declare (in) vec2 x))
- ((declare () vec2 t)
- (assign (xy) (var_ref t)
- (expression vec2 max
- (expression vec2 min
- (expression vec2 / (expression vec2 - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))
- (constant float (1.0)))
- (constant float (0.0))))
- (return (expression vec2 * (var_ref t) (expression vec2 * (var_ref t) (expression vec2 - (constant float (3.0)) (expression vec2 * (constant float (2.0)) (var_ref t))))))))
-
- (signature vec3
- (parameters
- (declare (in) float edge0)
- (declare (in) float edge1)
- (declare (in) vec3 x))
- ((declare () vec3 t)
- (assign (xyz) (var_ref t)
- (expression vec3 max
- (expression vec3 min
- (expression vec3 / (expression vec3 - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))
- (constant float (1.0)))
- (constant float (0.0))))
- (return (expression vec3 * (var_ref t) (expression vec3 * (var_ref t) (expression vec3 - (constant float (3.0)) (expression vec3 * (constant float (2.0)) (var_ref t))))))))
-
-
- (signature vec4
- (parameters
- (declare (in) float edge0)
- (declare (in) float edge1)
- (declare (in) vec4 x))
- ((declare () vec4 t)
- (assign (xyzw) (var_ref t)
- (expression vec4 max
- (expression vec4 min
- (expression vec4 / (expression vec4 - (var_ref x) (var_ref edge0)) (expression float - (var_ref edge1) (var_ref edge0)))
- (constant float (1.0)))
- (constant float (0.0))))
- (return (expression vec4 * (var_ref t) (expression vec4 * (var_ref t) (expression vec4 - (constant float (3.0)) (expression vec4 * (constant float (2.0)) (var_ref t))))))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 edge0)
- (declare (in) vec2 edge1)
- (declare (in) vec2 x))
- ((declare () vec2 t)
- (assign (xy) (var_ref t)
- (expression vec2 max
- (expression vec2 min
- (expression vec2 / (expression vec2 - (var_ref x) (var_ref edge0)) (expression vec2 - (var_ref edge1) (var_ref edge0)))
- (constant float (1.0)))
- (constant float (0.0))))
- (return (expression vec2 * (var_ref t) (expression vec2 * (var_ref t) (expression vec2 - (constant float (3.0)) (expression vec2 * (constant float (2.0)) (var_ref t))))))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 edge0)
- (declare (in) vec3 edge1)
- (declare (in) vec3 x))
- ((declare () vec3 t)
- (assign (xyz) (var_ref t)
- (expression vec3 max
- (expression vec3 min
- (expression vec3 / (expression vec3 - (var_ref x) (var_ref edge0)) (expression vec3 - (var_ref edge1) (var_ref edge0)))
- (constant float (1.0)))
- (constant float (0.0))))
- (return (expression vec3 * (var_ref t) (expression vec3 * (var_ref t) (expression vec3 - (constant float (3.0)) (expression vec3 * (constant float (2.0)) (var_ref t))))))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 edge0)
- (declare (in) vec4 edge1)
- (declare (in) vec4 x))
- ((declare () vec4 t)
- (assign (xyzw) (var_ref t)
- (expression vec4 max
- (expression vec4 min
- (expression vec4 / (expression vec4 - (var_ref x) (var_ref edge0)) (expression vec4 - (var_ref edge1) (var_ref edge0)))
- (constant float (1.0)))
- (constant float (0.0))))
- (return (expression vec4 * (var_ref t) (expression vec4 * (var_ref t) (expression vec4 - (constant float (3.0)) (expression vec4 * (constant float (2.0)) (var_ref t))))))))
-))
-
diff --git a/src/glsl/builtins/ir/sqrt.ir b/src/glsl/builtins/ir/sqrt.ir
deleted file mode 100644
index 0302d16..0000000
--- a/src/glsl/builtins/ir/sqrt.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function sqrt
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float sqrt (var_ref arg0)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 sqrt (var_ref arg0)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 sqrt (var_ref arg0)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 sqrt (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/step.ir b/src/glsl/builtins/ir/step.ir
deleted file mode 100644
index efcd7bc..0000000
--- a/src/glsl/builtins/ir/step.ir
+++ /dev/null
@@ -1,68 +0,0 @@
-((function step
- (signature float
- (parameters
- (declare (in) float edge)
- (declare (in) float x))
- ((return (expression float b2f (expression bool >= (var_ref x) (var_ref edge))))))
-
- (signature vec2
- (parameters
- (declare (in) float edge)
- (declare (in) vec2 x))
- ((declare () vec2 t)
- (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(var_ref edge))))
- (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(var_ref edge))))
- (return (var_ref t))))
-
- (signature vec3
- (parameters
- (declare (in) float edge)
- (declare (in) vec3 x))
- ((declare () vec3 t)
- (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(var_ref edge))))
- (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(var_ref edge))))
- (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(var_ref edge))))
- (return (var_ref t))))
-
- (signature vec4
- (parameters
- (declare (in) float edge)
- (declare (in) vec4 x))
- ((declare () vec4 t)
- (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(var_ref edge))))
- (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(var_ref edge))))
- (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(var_ref edge))))
- (assign (w) (var_ref t) (expression float b2f (expression bool >= (swiz w (var_ref x))(var_ref edge))))
- (return (var_ref t))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 edge)
- (declare (in) vec2 x))
- ((declare () vec2 t)
- (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(swiz x (var_ref edge)))))
- (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(swiz y (var_ref edge)))))
- (return (var_ref t))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 edge)
- (declare (in) vec3 x))
- ((declare () vec3 t)
- (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(swiz x (var_ref edge)))))
- (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(swiz y (var_ref edge)))))
- (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(swiz z (var_ref edge)))))
- (return (var_ref t))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 edge)
- (declare (in) vec4 x))
- ((declare () vec4 t)
- (assign (x) (var_ref t) (expression float b2f (expression bool >= (swiz x (var_ref x))(swiz x (var_ref edge)))))
- (assign (y) (var_ref t) (expression float b2f (expression bool >= (swiz y (var_ref x))(swiz y (var_ref edge)))))
- (assign (z) (var_ref t) (expression float b2f (expression bool >= (swiz z (var_ref x))(swiz z (var_ref edge)))))
- (assign (w) (var_ref t) (expression float b2f (expression bool >= (swiz w (var_ref x))(swiz w (var_ref edge)))))
- (return (var_ref t))))
-))
-
diff --git a/src/glsl/builtins/ir/tan.ir b/src/glsl/builtins/ir/tan.ir
deleted file mode 100644
index 9979863..0000000
--- a/src/glsl/builtins/ir/tan.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function tan
- (signature float
- (parameters
- (declare (in) float angle))
- ((return (expression float / (expression float sin (var_ref angle)) (expression float cos (var_ref angle))))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 angle))
- ((return (expression vec2 / (expression vec2 sin (var_ref angle)) (expression vec2 cos (var_ref angle))))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 angle))
- ((return (expression vec3 / (expression vec3 sin (var_ref angle)) (expression vec3 cos (var_ref angle))))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 angle))
- ((return (expression vec4 / (expression vec4 sin (var_ref angle)) (expression vec4 cos (var_ref angle))))))
-))
diff --git a/src/glsl/builtins/ir/tanh.ir b/src/glsl/builtins/ir/tanh.ir
deleted file mode 100644
index 3b7271b..0000000
--- a/src/glsl/builtins/ir/tanh.ir
+++ /dev/null
@@ -1,42 +0,0 @@
-((function tanh
- (signature float
- (parameters
- (declare (in) float x))
- ((return (expression float /
- (expression float -
- (expression float exp (var_ref x))
- (expression float exp (expression float neg (var_ref x))))
- (expression float +
- (expression float exp (var_ref x))
- (expression float exp (expression float neg (var_ref x))))))))
- (signature vec2
- (parameters
- (declare (in) vec2 x))
- ((return (expression vec2 /
- (expression vec2 -
- (expression vec2 exp (var_ref x))
- (expression vec2 exp (expression vec2 neg (var_ref x))))
- (expression vec2 +
- (expression vec2 exp (var_ref x))
- (expression vec2 exp (expression vec2 neg (var_ref x))))))))
- (signature vec3
- (parameters
- (declare (in) vec3 x))
- ((return (expression vec3 /
- (expression vec3 -
- (expression vec3 exp (var_ref x))
- (expression vec3 exp (expression vec3 neg (var_ref x))))
- (expression vec3 +
- (expression vec3 exp (var_ref x))
- (expression vec3 exp (expression vec3 neg (var_ref x))))))))
- (signature vec4
- (parameters
- (declare (in) vec4 x))
- ((return (expression vec4 /
- (expression vec4 -
- (expression vec4 exp (var_ref x))
- (expression vec4 exp (expression vec4 neg (var_ref x))))
- (expression vec4 +
- (expression vec4 exp (var_ref x))
- (expression vec4 exp (expression vec4 neg (var_ref x))))))))
-))
diff --git a/src/glsl/builtins/ir/transpose.ir b/src/glsl/builtins/ir/transpose.ir
deleted file mode 100644
index 043327d..0000000
--- a/src/glsl/builtins/ir/transpose.ir
+++ /dev/null
@@ -1,139 +0,0 @@
-((function transpose
- (signature mat2
- (parameters
- (declare (in) mat2 m))
- ((declare () mat2 t)
- (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))
- (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))
-(return (var_ref t))))
-
- (signature mat3x2
- (parameters
- (declare (in) mat2x3 m))
- ((declare () mat3x2 t)
- (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))
- (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))
-(return (var_ref t))))
-
- (signature mat4x2
- (parameters
- (declare (in) mat2x4 m))
- ((declare () mat4x2 t)
- (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (0)))))
- (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (1)))))
-(return (var_ref t))))
-
- (signature mat2x3
- (parameters
- (declare (in) mat3x2 m))
- ((declare () mat2x3 t)
- (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))
- (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))
- (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))
- (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))
-(return (var_ref t))))
-
- (signature mat3
- (parameters
- (declare (in) mat3 m))
- ((declare () mat3 t)
- (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))
- (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))
- (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))
- (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))
- (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))
-(return (var_ref t))))
-
- (signature mat4x3
- (parameters
- (declare (in) mat3x4 m))
- ((declare () mat4x3 t)
- (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (0)))))
- (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (1)))))
- (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))
- (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))
- (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))
- (assign (z) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (2)))))
-(return (var_ref t))))
-
- (signature mat2x4
- (parameters
- (declare (in) mat4x2 m))
- ((declare () mat2x4 t)
- (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))
- (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))
- (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))
- (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))
- (assign (w) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (3)))))
- (assign (w) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (3)))))
-(return (var_ref t))))
-
- (signature mat3x4
- (parameters
- (declare (in) mat4x3 m))
- ((declare () mat3x4 t)
- (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))
- (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))
- (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))
- (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))
- (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))
- (assign (w) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (3)))))
- (assign (w) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (3)))))
- (assign (w) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (3)))))
-(return (var_ref t))))
-
- (signature mat4
- (parameters
- (declare (in) mat4 m))
- ((declare () mat4 t)
- (assign (x) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (0)))))
- (assign (x) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (0)))))
- (assign (y) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (1)))))
- (assign (y) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (1)))))
- (assign (z) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (2)))))
- (assign (z) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (2)))))
- (assign (z) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (2)))))
- (assign (z) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (2)))))
- (assign (w) (array_ref (var_ref t) (constant int (0))) (swiz x (array_ref (var_ref m) (constant int (3)))))
- (assign (w) (array_ref (var_ref t) (constant int (1))) (swiz y (array_ref (var_ref m) (constant int (3)))))
- (assign (w) (array_ref (var_ref t) (constant int (2))) (swiz z (array_ref (var_ref m) (constant int (3)))))
- (assign (w) (array_ref (var_ref t) (constant int (3))) (swiz w (array_ref (var_ref m) (constant int (3)))))
-(return (var_ref t))))
-)
-
-)
-
diff --git a/src/glsl/builtins/ir/trunc.ir b/src/glsl/builtins/ir/trunc.ir
deleted file mode 100644
index d320a2a..0000000
--- a/src/glsl/builtins/ir/trunc.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function trunc
- (signature float
- (parameters
- (declare (in) float arg0))
- ((return (expression float trunc (var_ref arg0)))))
-
- (signature vec2
- (parameters
- (declare (in) vec2 arg0))
- ((return (expression vec2 trunc (var_ref arg0)))))
-
- (signature vec3
- (parameters
- (declare (in) vec3 arg0))
- ((return (expression vec3 trunc (var_ref arg0)))))
-
- (signature vec4
- (parameters
- (declare (in) vec4 arg0))
- ((return (expression vec4 trunc (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/uintBitsToFloat.ir b/src/glsl/builtins/ir/uintBitsToFloat.ir
deleted file mode 100644
index 1073d76..0000000
--- a/src/glsl/builtins/ir/uintBitsToFloat.ir
+++ /dev/null
@@ -1,21 +0,0 @@
-((function uintBitsToFloat
- (signature float
- (parameters
- (declare (in) uint arg))
- ((return (expression float bitcast_u2f (var_ref arg)))))
-
- (signature vec2
- (parameters
- (declare (in) uvec2 arg))
- ((return (expression vec2 bitcast_u2f (var_ref arg)))))
-
- (signature vec3
- (parameters
- (declare (in) uvec3 arg))
- ((return (expression vec3 bitcast_u2f (var_ref arg)))))
-
- (signature vec4
- (parameters
- (declare (in) uvec4 arg))
- ((return (expression vec4 bitcast_u2f (var_ref arg)))))
-))
diff --git a/src/glsl/builtins/ir/unpackHalf2x16.ir b/src/glsl/builtins/ir/unpackHalf2x16.ir
deleted file mode 100644
index f5b6fc2..0000000
--- a/src/glsl/builtins/ir/unpackHalf2x16.ir
+++ /dev/null
@@ -1,6 +0,0 @@
-((function unpackHalf2x16
- (signature vec2
- (parameters
- (declare (in) uint arg0))
- ((return (expression vec2 unpackHalf2x16 (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/unpackSnorm2x16.ir b/src/glsl/builtins/ir/unpackSnorm2x16.ir
deleted file mode 100644
index 9092a06..0000000
--- a/src/glsl/builtins/ir/unpackSnorm2x16.ir
+++ /dev/null
@@ -1,6 +0,0 @@
-((function unpackSnorm2x16
- (signature vec2
- (parameters
- (declare (in) uint arg0))
- ((return (expression vec2 unpackSnorm2x16 (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/unpackSnorm4x8.ir b/src/glsl/builtins/ir/unpackSnorm4x8.ir
deleted file mode 100644
index 3c6ed4a..0000000
--- a/src/glsl/builtins/ir/unpackSnorm4x8.ir
+++ /dev/null
@@ -1,6 +0,0 @@
-((function unpackSnorm4x8
- (signature vec4
- (parameters
- (declare (in) uint arg0))
- ((return (expression vec4 unpackSnorm4x8 (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/unpackUnorm2x16.ir b/src/glsl/builtins/ir/unpackUnorm2x16.ir
deleted file mode 100644
index 935dc85..0000000
--- a/src/glsl/builtins/ir/unpackUnorm2x16.ir
+++ /dev/null
@@ -1,6 +0,0 @@
-((function unpackUnorm2x16
- (signature vec2
- (parameters
- (declare (in) uint arg0))
- ((return (expression vec2 unpackUnorm2x16 (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/ir/unpackUnorm4x8.ir b/src/glsl/builtins/ir/unpackUnorm4x8.ir
deleted file mode 100644
index e1dfd74..0000000
--- a/src/glsl/builtins/ir/unpackUnorm4x8.ir
+++ /dev/null
@@ -1,6 +0,0 @@
-((function unpackUnorm4x8
- (signature vec4
- (parameters
- (declare (in) uint arg0))
- ((return (expression vec4 unpackUnorm4x8 (var_ref arg0)))))
-))
diff --git a/src/glsl/builtins/profiles/100es.frag b/src/glsl/builtins/profiles/100es.frag
deleted file mode 100644
index 28c4527..0000000
--- a/src/glsl/builtins/profiles/100es.frag
+++ /dev/null
@@ -1,8 +0,0 @@
-#version 100
-precision highp float;
-
-vec4 texture2D (sampler2D sampler, vec2 coord, float bias);
-vec4 texture2DProj (sampler2D sampler, vec3 coord, float bias);
-vec4 texture2DProj (sampler2D sampler, vec4 coord, float bias);
-
-vec4 textureCube (samplerCube sampler, vec3 coord, float bias);
diff --git a/src/glsl/builtins/profiles/100es.glsl b/src/glsl/builtins/profiles/100es.glsl
deleted file mode 100644
index 0d60a7f..0000000
--- a/src/glsl/builtins/profiles/100es.glsl
+++ /dev/null
@@ -1,296 +0,0 @@
-#version 100
-/*
- * 8.1 - Angle and Trigonometry Functions
- */
-float radians(float degrees);
-vec2 radians(vec2 degrees);
-vec3 radians(vec3 degrees);
-vec4 radians(vec4 degrees);
-
-float degrees(float radians);
-vec2 degrees(vec2 radians);
-vec3 degrees(vec3 radians);
-vec4 degrees(vec4 radians);
-
-float sin(float angle);
-vec2 sin(vec2 angle);
-vec3 sin(vec3 angle);
-vec4 sin(vec4 angle);
-
-float cos(float angle);
-vec2 cos(vec2 angle);
-vec3 cos(vec3 angle);
-vec4 cos(vec4 angle);
-
-float tan(float angle);
-vec2 tan(vec2 angle);
-vec3 tan(vec3 angle);
-vec4 tan(vec4 angle);
-
-float asin(float angle);
-vec2 asin(vec2 angle);
-vec3 asin(vec3 angle);
-vec4 asin(vec4 angle);
-
-float acos(float angle);
-vec2 acos(vec2 angle);
-vec3 acos(vec3 angle);
-vec4 acos(vec4 angle);
-
-float atan(float y, float x);
-vec2 atan(vec2 y, vec2 x);
-vec3 atan(vec3 y, vec3 x);
-vec4 atan(vec4 y, vec4 x);
-
-float atan(float y_over_x);
-vec2 atan(vec2 y_over_x);
-vec3 atan(vec3 y_over_x);
-vec4 atan(vec4 y_over_x);
-
-/*
- * 8.2 - Exponential Functions
- */
-float pow(float x, float y);
-vec2 pow(vec2 x, vec2 y);
-vec3 pow(vec3 x, vec3 y);
-vec4 pow(vec4 x, vec4 y);
-
-float exp(float x);
-vec2 exp(vec2 x);
-vec3 exp(vec3 x);
-vec4 exp(vec4 x);
-
-float log(float x);
-vec2 log(vec2 x);
-vec3 log(vec3 x);
-vec4 log(vec4 x);
-
-float exp2(float x);
-vec2 exp2(vec2 x);
-vec3 exp2(vec3 x);
-vec4 exp2(vec4 x);
-
-float log2(float x);
-vec2 log2(vec2 x);
-vec3 log2(vec3 x);
-vec4 log2(vec4 x);
-
-float sqrt(float x);
-vec2 sqrt(vec2 x);
-vec3 sqrt(vec3 x);
-vec4 sqrt(vec4 x);
-
-float inversesqrt(float x);
-vec2 inversesqrt(vec2 x);
-vec3 inversesqrt(vec3 x);
-vec4 inversesqrt(vec4 x);
-
-/*
- * 8.3 - Common Functions
- */
-float abs(float x);
-vec2 abs(vec2 x);
-vec3 abs(vec3 x);
-vec4 abs(vec4 x);
-
-float sign(float x);
-vec2 sign(vec2 x);
-vec3 sign(vec3 x);
-vec4 sign(vec4 x);
-
-float floor(float x);
-vec2 floor(vec2 x);
-vec3 floor(vec3 x);
-vec4 floor(vec4 x);
-
-float ceil(float x);
-vec2 ceil(vec2 x);
-vec3 ceil(vec3 x);
-vec4 ceil(vec4 x);
-
-float fract(float x);
-vec2 fract(vec2 x);
-vec3 fract(vec3 x);
-vec4 fract(vec4 x);
-
-float mod(float x, float y);
-vec2 mod(vec2 x, float y);
-vec3 mod(vec3 x, float y);
-vec4 mod(vec4 x, float y);
-
-vec2 mod(vec2 x, vec2 y);
-vec3 mod(vec3 x, vec3 y);
-vec4 mod(vec4 x, vec4 y);
-
-float min(float x, float y);
-vec2 min(vec2 x, vec2 y);
-vec3 min(vec3 x, vec3 y);
-vec4 min(vec4 x, vec4 y);
-
-vec2 min(vec2 x, float y);
-vec3 min(vec3 x, float y);
-vec4 min(vec4 x, float y);
-
-float max(float x, float y);
-vec2 max(vec2 x, vec2 y);
-vec3 max(vec3 x, vec3 y);
-vec4 max(vec4 x, vec4 y);
-
-vec2 max(vec2 x, float y);
-vec3 max(vec3 x, float y);
-vec4 max(vec4 x, float y);
-
-float clamp(float x, float minVal, float maxVal);
-vec2 clamp(vec2 x, vec2 minVal, vec2 maxVal);
-vec3 clamp(vec3 x, vec3 minVal, vec3 maxVal);
-vec4 clamp(vec4 x, vec4 minVal, vec4 maxVal);
-
-vec2 clamp(vec2 x, float minVal, float maxVal);
-vec3 clamp(vec3 x, float minVal, float maxVal);
-vec4 clamp(vec4 x, float minVal, float maxVal);
-
-float mix(float x, float y, float a);
-vec2 mix(vec2 x, vec2 y, vec2 a);
-vec3 mix(vec3 x, vec3 y, vec3 a);
-vec4 mix(vec4 x, vec4 y, vec4 a);
-
-vec2 mix(vec2 x, vec2 y, float a);
-vec3 mix(vec3 x, vec3 y, float a);
-vec4 mix(vec4 x, vec4 y, float a);
-
-float step(float edge, float x);
-vec2 step(vec2 edge, vec2 x);
-vec3 step(vec3 edge, vec3 x);
-vec4 step(vec4 edge, vec4 x);
-
-vec2 step(float edge, vec2 x);
-vec3 step(float edge, vec3 x);
-vec4 step(float edge, vec4 x);
-
-float smoothstep(float edge0, float edge1, float x);
-vec2 smoothstep(vec2 edge0, vec2 edge1, vec2 x);
-vec3 smoothstep(vec3 edge0, vec3 edge1, vec3 x);
-vec4 smoothstep(vec4 edge0, vec4 edge1, vec4 x);
-
-vec2 smoothstep(float edge0, float edge1, vec2 x);
-vec3 smoothstep(float edge0, float edge1, vec3 x);
-vec4 smoothstep(float edge0, float edge1, vec4 x);
-
-/*
- * 8.4 - Geometric Functions
- */
-float length(float x);
-float length(vec2 x);
-float length(vec3 x);
-float length(vec4 x);
-
-float distance(float p0, float p1);
-float distance(vec2 p0, vec2 p1);
-float distance(vec3 p0, vec3 p1);
-float distance(vec4 p0, vec4 p1);
-
-float dot(float x, float y);
-float dot(vec2 x, vec2 y);
-float dot(vec3 x, vec3 y);
-float dot(vec4 x, vec4 y);
-
-vec3 cross(vec3 x, vec3 y);
-
-float normalize(float x);
-vec2 normalize(vec2 x);
-vec3 normalize(vec3 x);
-vec4 normalize(vec4 x);
-
-float faceforward(float N, float I, float Nref);
-vec2 faceforward(vec2 N, vec2 I, vec2 Nref);
-vec3 faceforward(vec3 N, vec3 I, vec3 Nref);
-vec4 faceforward(vec4 N, vec4 I, vec4 Nref);
-
-float reflect(float I, float N);
-vec2 reflect(vec2 I, vec2 N);
-vec3 reflect(vec3 I, vec3 N);
-vec4 reflect(vec4 I, vec4 N);
-
-float refract(float I, float N, float eta);
-vec2 refract(vec2 I, vec2 N, float eta);
-vec3 refract(vec3 I, vec3 N, float eta);
-vec4 refract(vec4 I, vec4 N, float eta);
-
-/*
- * 8.5 - Matrix Functions
- */
-mat2 matrixCompMult(mat2 x, mat2 y);
-mat3 matrixCompMult(mat3 x, mat3 y);
-mat4 matrixCompMult(mat4 x, mat4 y);
-
-/*
- * 8.6 - Vector Relational Functions
- */
-bvec2 lessThan( vec2 x, vec2 y);
-bvec3 lessThan( vec3 x, vec3 y);
-bvec4 lessThan( vec4 x, vec4 y);
-bvec2 lessThan(ivec2 x, ivec2 y);
-bvec3 lessThan(ivec3 x, ivec3 y);
-bvec4 lessThan(ivec4 x, ivec4 y);
-
-bvec2 lessThanEqual( vec2 x, vec2 y);
-bvec3 lessThanEqual( vec3 x, vec3 y);
-bvec4 lessThanEqual( vec4 x, vec4 y);
-bvec2 lessThanEqual(ivec2 x, ivec2 y);
-bvec3 lessThanEqual(ivec3 x, ivec3 y);
-bvec4 lessThanEqual(ivec4 x, ivec4 y);
-
-bvec2 greaterThan( vec2 x, vec2 y);
-bvec3 greaterThan( vec3 x, vec3 y);
-bvec4 greaterThan( vec4 x, vec4 y);
-bvec2 greaterThan(ivec2 x, ivec2 y);
-bvec3 greaterThan(ivec3 x, ivec3 y);
-bvec4 greaterThan(ivec4 x, ivec4 y);
-
-bvec2 greaterThanEqual( vec2 x, vec2 y);
-bvec3 greaterThanEqual( vec3 x, vec3 y);
-bvec4 greaterThanEqual( vec4 x, vec4 y);
-bvec2 greaterThanEqual(ivec2 x, ivec2 y);
-bvec3 greaterThanEqual(ivec3 x, ivec3 y);
-bvec4 greaterThanEqual(ivec4 x, ivec4 y);
-
-bvec2 equal( vec2 x, vec2 y);
-bvec3 equal( vec3 x, vec3 y);
-bvec4 equal( vec4 x, vec4 y);
-bvec2 equal(ivec2 x, ivec2 y);
-bvec3 equal(ivec3 x, ivec3 y);
-bvec4 equal(ivec4 x, ivec4 y);
-bvec2 equal(bvec2 x, bvec2 y);
-bvec3 equal(bvec3 x, bvec3 y);
-bvec4 equal(bvec4 x, bvec4 y);
-
-bvec2 notEqual( vec2 x, vec2 y);
-bvec3 notEqual( vec3 x, vec3 y);
-bvec4 notEqual( vec4 x, vec4 y);
-bvec2 notEqual(ivec2 x, ivec2 y);
-bvec3 notEqual(ivec3 x, ivec3 y);
-bvec4 notEqual(ivec4 x, ivec4 y);
-bvec2 notEqual(bvec2 x, bvec2 y);
-bvec3 notEqual(bvec3 x, bvec3 y);
-bvec4 notEqual(bvec4 x, bvec4 y);
-
-bool any(bvec2 x);
-bool any(bvec3 x);
-bool any(bvec4 x);
-
-bool all(bvec2 x);
-bool all(bvec3 x);
-bool all(bvec4 x);
-
-bvec2 not(bvec2 x);
-bvec3 not(bvec3 x);
-bvec4 not(bvec4 x);
-
-/*
- * 8.7 - Texture Lookup Functions
- */
-vec4 texture2D (sampler2D sampler, vec2 coord);
-vec4 texture2DProj (sampler2D sampler, vec3 coord);
-vec4 texture2DProj (sampler2D sampler, vec4 coord);
-
-vec4 textureCube (samplerCube sampler, vec3 coord);
diff --git a/src/glsl/builtins/profiles/100es.vert b/src/glsl/builtins/profiles/100es.vert
deleted file mode 100644
index 8f7ea61..0000000
--- a/src/glsl/builtins/profiles/100es.vert
+++ /dev/null
@@ -1,6 +0,0 @@
-#version 100
-vec4 texture2DLod (sampler2D sampler, vec2 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec3 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec4 coord, float lod);
-
-vec4 textureCubeLod (samplerCube sampler, vec3 coord, float lod);
diff --git a/src/glsl/builtins/profiles/110.frag b/src/glsl/builtins/profiles/110.frag
deleted file mode 100644
index cc1e342..0000000
--- a/src/glsl/builtins/profiles/110.frag
+++ /dev/null
@@ -1,40 +0,0 @@
-#version 110
-/*
- * 8.7 - Texture Lookup Functions
- * "The bias parameter is not accepted in a vertex shader."
- */
-vec4 texture1D (sampler1D sampler, float coord, float bias);
-vec4 texture1DProj (sampler1D sampler, vec2 coord, float bias);
-vec4 texture1DProj (sampler1D sampler, vec4 coord, float bias);
-
-vec4 texture2D (sampler2D sampler, vec2 coord, float bias);
-vec4 texture2DProj (sampler2D sampler, vec3 coord, float bias);
-vec4 texture2DProj (sampler2D sampler, vec4 coord, float bias);
-
-vec4 texture3D (sampler3D sampler, vec3 coord, float bias);
-vec4 texture3DProj (sampler3D sampler, vec4 coord, float bias);
-
-vec4 textureCube (samplerCube sampler, vec3 coord, float bias);
-
-vec4 shadow1D (sampler1DShadow sampler, vec3 coord, float bias);
-vec4 shadow2D (sampler2DShadow sampler, vec3 coord, float bias);
-vec4 shadow1DProj (sampler1DShadow sampler, vec4 coord, float bias);
-vec4 shadow2DProj (sampler2DShadow sampler, vec4 coord, float bias);
-
-/*
- * 8.8 - Fragment Processing Functions
- */
-float dFdx(float p);
-vec2 dFdx(vec2 p);
-vec3 dFdx(vec3 p);
-vec4 dFdx(vec4 p);
-
-float dFdy(float p);
-vec2 dFdy(vec2 p);
-vec3 dFdy(vec3 p);
-vec4 dFdy(vec4 p);
-
-float fwidth(float p);
-vec2 fwidth(vec2 p);
-vec3 fwidth(vec3 p);
-vec4 fwidth(vec4 p);
diff --git a/src/glsl/builtins/profiles/110.glsl b/src/glsl/builtins/profiles/110.glsl
deleted file mode 100644
index 821978b..0000000
--- a/src/glsl/builtins/profiles/110.glsl
+++ /dev/null
@@ -1,332 +0,0 @@
-#version 110
-/*
- * 8.1 - Angle and Trigonometry Functions
- */
-float radians(float degrees);
-vec2 radians(vec2 degrees);
-vec3 radians(vec3 degrees);
-vec4 radians(vec4 degrees);
-
-float degrees(float radians);
-vec2 degrees(vec2 radians);
-vec3 degrees(vec3 radians);
-vec4 degrees(vec4 radians);
-
-float sin(float angle);
-vec2 sin(vec2 angle);
-vec3 sin(vec3 angle);
-vec4 sin(vec4 angle);
-
-float cos(float angle);
-vec2 cos(vec2 angle);
-vec3 cos(vec3 angle);
-vec4 cos(vec4 angle);
-
-float tan(float angle);
-vec2 tan(vec2 angle);
-vec3 tan(vec3 angle);
-vec4 tan(vec4 angle);
-
-float asin(float angle);
-vec2 asin(vec2 angle);
-vec3 asin(vec3 angle);
-vec4 asin(vec4 angle);
-
-float acos(float angle);
-vec2 acos(vec2 angle);
-vec3 acos(vec3 angle);
-vec4 acos(vec4 angle);
-
-float atan(float y, float x);
-vec2 atan(vec2 y, vec2 x);
-vec3 atan(vec3 y, vec3 x);
-vec4 atan(vec4 y, vec4 x);
-
-float atan(float y_over_x);
-vec2 atan(vec2 y_over_x);
-vec3 atan(vec3 y_over_x);
-vec4 atan(vec4 y_over_x);
-
-/*
- * 8.2 - Exponential Functions
- */
-float pow(float x, float y);
-vec2 pow(vec2 x, vec2 y);
-vec3 pow(vec3 x, vec3 y);
-vec4 pow(vec4 x, vec4 y);
-
-float exp(float x);
-vec2 exp(vec2 x);
-vec3 exp(vec3 x);
-vec4 exp(vec4 x);
-
-float log(float x);
-vec2 log(vec2 x);
-vec3 log(vec3 x);
-vec4 log(vec4 x);
-
-float exp2(float x);
-vec2 exp2(vec2 x);
-vec3 exp2(vec3 x);
-vec4 exp2(vec4 x);
-
-float log2(float x);
-vec2 log2(vec2 x);
-vec3 log2(vec3 x);
-vec4 log2(vec4 x);
-
-float sqrt(float x);
-vec2 sqrt(vec2 x);
-vec3 sqrt(vec3 x);
-vec4 sqrt(vec4 x);
-
-float inversesqrt(float x);
-vec2 inversesqrt(vec2 x);
-vec3 inversesqrt(vec3 x);
-vec4 inversesqrt(vec4 x);
-
-/*
- * 8.3 - Common Functions
- */
-float abs(float x);
-vec2 abs(vec2 x);
-vec3 abs(vec3 x);
-vec4 abs(vec4 x);
-
-float sign(float x);
-vec2 sign(vec2 x);
-vec3 sign(vec3 x);
-vec4 sign(vec4 x);
-
-float floor(float x);
-vec2 floor(vec2 x);
-vec3 floor(vec3 x);
-vec4 floor(vec4 x);
-
-float ceil(float x);
-vec2 ceil(vec2 x);
-vec3 ceil(vec3 x);
-vec4 ceil(vec4 x);
-
-float fract(float x);
-vec2 fract(vec2 x);
-vec3 fract(vec3 x);
-vec4 fract(vec4 x);
-
-float mod(float x, float y);
-vec2 mod(vec2 x, float y);
-vec3 mod(vec3 x, float y);
-vec4 mod(vec4 x, float y);
-
-vec2 mod(vec2 x, vec2 y);
-vec3 mod(vec3 x, vec3 y);
-vec4 mod(vec4 x, vec4 y);
-
-float min(float x, float y);
-vec2 min(vec2 x, vec2 y);
-vec3 min(vec3 x, vec3 y);
-vec4 min(vec4 x, vec4 y);
-
-vec2 min(vec2 x, float y);
-vec3 min(vec3 x, float y);
-vec4 min(vec4 x, float y);
-
-float max(float x, float y);
-vec2 max(vec2 x, vec2 y);
-vec3 max(vec3 x, vec3 y);
-vec4 max(vec4 x, vec4 y);
-
-vec2 max(vec2 x, float y);
-vec3 max(vec3 x, float y);
-vec4 max(vec4 x, float y);
-
-float clamp(float x, float minVal, float maxVal);
-vec2 clamp(vec2 x, vec2 minVal, vec2 maxVal);
-vec3 clamp(vec3 x, vec3 minVal, vec3 maxVal);
-vec4 clamp(vec4 x, vec4 minVal, vec4 maxVal);
-
-vec2 clamp(vec2 x, float minVal, float maxVal);
-vec3 clamp(vec3 x, float minVal, float maxVal);
-vec4 clamp(vec4 x, float minVal, float maxVal);
-
-float mix(float x, float y, float a);
-vec2 mix(vec2 x, vec2 y, vec2 a);
-vec3 mix(vec3 x, vec3 y, vec3 a);
-vec4 mix(vec4 x, vec4 y, vec4 a);
-
-vec2 mix(vec2 x, vec2 y, float a);
-vec3 mix(vec3 x, vec3 y, float a);
-vec4 mix(vec4 x, vec4 y, float a);
-
-float step(float edge, float x);
-vec2 step(vec2 edge, vec2 x);
-vec3 step(vec3 edge, vec3 x);
-vec4 step(vec4 edge, vec4 x);
-
-vec2 step(float edge, vec2 x);
-vec3 step(float edge, vec3 x);
-vec4 step(float edge, vec4 x);
-
-float smoothstep(float edge0, float edge1, float x);
-vec2 smoothstep(vec2 edge0, vec2 edge1, vec2 x);
-vec3 smoothstep(vec3 edge0, vec3 edge1, vec3 x);
-vec4 smoothstep(vec4 edge0, vec4 edge1, vec4 x);
-
-vec2 smoothstep(float edge0, float edge1, vec2 x);
-vec3 smoothstep(float edge0, float edge1, vec3 x);
-vec4 smoothstep(float edge0, float edge1, vec4 x);
-
-/*
- * 8.4 - Geometric Functions
- */
-float length(float x);
-float length(vec2 x);
-float length(vec3 x);
-float length(vec4 x);
-
-float distance(float p0, float p1);
-float distance(vec2 p0, vec2 p1);
-float distance(vec3 p0, vec3 p1);
-float distance(vec4 p0, vec4 p1);
-
-float dot(float x, float y);
-float dot(vec2 x, vec2 y);
-float dot(vec3 x, vec3 y);
-float dot(vec4 x, vec4 y);
-
-vec3 cross(vec3 x, vec3 y);
-
-float normalize(float x);
-vec2 normalize(vec2 x);
-vec3 normalize(vec3 x);
-vec4 normalize(vec4 x);
-
-float faceforward(float N, float I, float Nref);
-vec2 faceforward(vec2 N, vec2 I, vec2 Nref);
-vec3 faceforward(vec3 N, vec3 I, vec3 Nref);
-vec4 faceforward(vec4 N, vec4 I, vec4 Nref);
-
-float reflect(float I, float N);
-vec2 reflect(vec2 I, vec2 N);
-vec3 reflect(vec3 I, vec3 N);
-vec4 reflect(vec4 I, vec4 N);
-
-float refract(float I, float N, float eta);
-vec2 refract(vec2 I, vec2 N, float eta);
-vec3 refract(vec3 I, vec3 N, float eta);
-vec4 refract(vec4 I, vec4 N, float eta);
-
-
-/*
- * 8.5 - Matrix Functions
- */
-mat2 matrixCompMult(mat2 x, mat2 y);
-mat3 matrixCompMult(mat3 x, mat3 y);
-mat4 matrixCompMult(mat4 x, mat4 y);
-
-/*
- * 8.6 - Vector Relational Functions
- */
-bvec2 lessThan( vec2 x, vec2 y);
-bvec3 lessThan( vec3 x, vec3 y);
-bvec4 lessThan( vec4 x, vec4 y);
-bvec2 lessThan(ivec2 x, ivec2 y);
-bvec3 lessThan(ivec3 x, ivec3 y);
-bvec4 lessThan(ivec4 x, ivec4 y);
-
-bvec2 lessThanEqual( vec2 x, vec2 y);
-bvec3 lessThanEqual( vec3 x, vec3 y);
-bvec4 lessThanEqual( vec4 x, vec4 y);
-bvec2 lessThanEqual(ivec2 x, ivec2 y);
-bvec3 lessThanEqual(ivec3 x, ivec3 y);
-bvec4 lessThanEqual(ivec4 x, ivec4 y);
-
-bvec2 greaterThan( vec2 x, vec2 y);
-bvec3 greaterThan( vec3 x, vec3 y);
-bvec4 greaterThan( vec4 x, vec4 y);
-bvec2 greaterThan(ivec2 x, ivec2 y);
-bvec3 greaterThan(ivec3 x, ivec3 y);
-bvec4 greaterThan(ivec4 x, ivec4 y);
-
-bvec2 greaterThanEqual( vec2 x, vec2 y);
-bvec3 greaterThanEqual( vec3 x, vec3 y);
-bvec4 greaterThanEqual( vec4 x, vec4 y);
-bvec2 greaterThanEqual(ivec2 x, ivec2 y);
-bvec3 greaterThanEqual(ivec3 x, ivec3 y);
-bvec4 greaterThanEqual(ivec4 x, ivec4 y);
-
-bvec2 equal( vec2 x, vec2 y);
-bvec3 equal( vec3 x, vec3 y);
-bvec4 equal( vec4 x, vec4 y);
-bvec2 equal(ivec2 x, ivec2 y);
-bvec3 equal(ivec3 x, ivec3 y);
-bvec4 equal(ivec4 x, ivec4 y);
-bvec2 equal(bvec2 x, bvec2 y);
-bvec3 equal(bvec3 x, bvec3 y);
-bvec4 equal(bvec4 x, bvec4 y);
-
-bvec2 notEqual( vec2 x, vec2 y);
-bvec3 notEqual( vec3 x, vec3 y);
-bvec4 notEqual( vec4 x, vec4 y);
-bvec2 notEqual(ivec2 x, ivec2 y);
-bvec3 notEqual(ivec3 x, ivec3 y);
-bvec4 notEqual(ivec4 x, ivec4 y);
-bvec2 notEqual(bvec2 x, bvec2 y);
-bvec3 notEqual(bvec3 x, bvec3 y);
-bvec4 notEqual(bvec4 x, bvec4 y);
-
-bool any(bvec2 x);
-bool any(bvec3 x);
-bool any(bvec4 x);
-
-bool all(bvec2 x);
-bool all(bvec3 x);
-bool all(bvec4 x);
-
-bvec2 not(bvec2 x);
-bvec3 not(bvec3 x);
-bvec4 not(bvec4 x);
-
-/*
- * 8.7 - Texture Lookup Functions
- */
-vec4 texture1D (sampler1D sampler, float coord);
-vec4 texture1DProj (sampler1D sampler, vec2 coord);
-vec4 texture1DProj (sampler1D sampler, vec4 coord);
-
-vec4 texture2D (sampler2D sampler, vec2 coord);
-vec4 texture2DProj (sampler2D sampler, vec3 coord);
-vec4 texture2DProj (sampler2D sampler, vec4 coord);
-
-vec4 texture3D (sampler3D sampler, vec3 coord);
-vec4 texture3DProj (sampler3D sampler, vec4 coord);
-
-vec4 textureCube (samplerCube sampler, vec3 coord);
-
-vec4 shadow1D (sampler1DShadow sampler, vec3 coord);
-vec4 shadow2D (sampler2DShadow sampler, vec3 coord);
-vec4 shadow1DProj (sampler1DShadow sampler, vec4 coord);
-vec4 shadow2DProj (sampler2DShadow sampler, vec4 coord);
-
-/*
- * 8.9 - Noise Functions
- */
-float noise1(float x);
-float noise1(vec2 x);
-float noise1(vec3 x);
-float noise1(vec4 x);
-
-vec2 noise2(float x);
-vec2 noise2(vec2 x);
-vec2 noise2(vec3 x);
-vec2 noise2(vec4 x);
-
-vec3 noise3(float x);
-vec3 noise3(vec2 x);
-vec3 noise3(vec3 x);
-vec3 noise3(vec4 x);
-
-vec4 noise4(float x);
-vec4 noise4(vec2 x);
-vec4 noise4(vec3 x);
-vec4 noise4(vec4 x);
diff --git a/src/glsl/builtins/profiles/110.vert b/src/glsl/builtins/profiles/110.vert
deleted file mode 100644
index 2d32341..0000000
--- a/src/glsl/builtins/profiles/110.vert
+++ /dev/null
@@ -1,25 +0,0 @@
-#version 110
-
-vec4 ftransform();
-
-/*
- * 8.7 - Texture Lookup Functions
- * "The built-ins suffixed with "Lod" are only allowed in a vertex shader."
- */
-vec4 texture1DLod (sampler1D sampler, float coord, float lod);
-vec4 texture1DProjLod(sampler1D sampler, vec2 coord, float lod);
-vec4 texture1DProjLod(sampler1D sampler, vec4 coord, float lod);
-
-vec4 texture2DLod (sampler2D sampler, vec2 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec3 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec4 coord, float lod);
-
-vec4 texture3DLod (sampler3D sampler, vec3 coord, float lod);
-vec4 texture3DProjLod(sampler3D sampler, vec4 coord, float lod);
-
-vec4 textureCubeLod (samplerCube sampler, vec3 coord, float lod);
-
-vec4 shadow1DLod (sampler1DShadow sampler, vec3 coord, float lod);
-vec4 shadow2DLod (sampler2DShadow sampler, vec3 coord, float lod);
-vec4 shadow1DProjLod(sampler1DShadow sampler, vec4 coord, float lod);
-vec4 shadow2DProjLod(sampler2DShadow sampler, vec4 coord, float lod);
diff --git a/src/glsl/builtins/profiles/120.frag b/src/glsl/builtins/profiles/120.frag
deleted file mode 100644
index 2080792..0000000
--- a/src/glsl/builtins/profiles/120.frag
+++ /dev/null
@@ -1,39 +0,0 @@
-#version 120
-/*
- * 8.7 - Texture Lookup Functions
- */
-vec4 texture1D (sampler1D sampler, float coord, float bias);
-vec4 texture1DProj (sampler1D sampler, vec2 coord, float bias);
-vec4 texture1DProj (sampler1D sampler, vec4 coord, float bias);
-
-vec4 texture2D (sampler2D sampler, vec2 coord, float bias);
-vec4 texture2DProj (sampler2D sampler, vec3 coord, float bias);
-vec4 texture2DProj (sampler2D sampler, vec4 coord, float bias);
-
-vec4 texture3D (sampler3D sampler, vec3 coord, float bias);
-vec4 texture3DProj (sampler3D sampler, vec4 coord, float bias);
-
-vec4 textureCube (samplerCube sampler, vec3 coord, float bias);
-
-vec4 shadow1D (sampler1DShadow sampler, vec3 coord, float bias);
-vec4 shadow2D (sampler2DShadow sampler, vec3 coord, float bias);
-vec4 shadow1DProj (sampler1DShadow sampler, vec4 coord, float bias);
-vec4 shadow2DProj (sampler2DShadow sampler, vec4 coord, float bias);
-
-/*
- * 8.8 - Fragment Processing Functions
- */
-float dFdx(float p);
-vec2 dFdx(vec2 p);
-vec3 dFdx(vec3 p);
-vec4 dFdx(vec4 p);
-
-float dFdy(float p);
-vec2 dFdy(vec2 p);
-vec3 dFdy(vec3 p);
-vec4 dFdy(vec4 p);
-
-float fwidth(float p);
-vec2 fwidth(vec2 p);
-vec3 fwidth(vec3 p);
-vec4 fwidth(vec4 p);
diff --git a/src/glsl/builtins/profiles/120.glsl b/src/glsl/builtins/profiles/120.glsl
deleted file mode 100644
index c01d1dc..0000000
--- a/src/glsl/builtins/profiles/120.glsl
+++ /dev/null
@@ -1,364 +0,0 @@
-#version 120
-/*
- * 8.1 - Angle and Trigonometry Functions
- */
-float radians(float degrees);
-vec2 radians(vec2 degrees);
-vec3 radians(vec3 degrees);
-vec4 radians(vec4 degrees);
-
-float degrees(float radians);
-vec2 degrees(vec2 radians);
-vec3 degrees(vec3 radians);
-vec4 degrees(vec4 radians);
-
-float sin(float angle);
-vec2 sin(vec2 angle);
-vec3 sin(vec3 angle);
-vec4 sin(vec4 angle);
-
-float cos(float angle);
-vec2 cos(vec2 angle);
-vec3 cos(vec3 angle);
-vec4 cos(vec4 angle);
-
-float tan(float angle);
-vec2 tan(vec2 angle);
-vec3 tan(vec3 angle);
-vec4 tan(vec4 angle);
-
-float asin(float angle);
-vec2 asin(vec2 angle);
-vec3 asin(vec3 angle);
-vec4 asin(vec4 angle);
-
-float acos(float angle);
-vec2 acos(vec2 angle);
-vec3 acos(vec3 angle);
-vec4 acos(vec4 angle);
-
-float atan(float y, float x);
-vec2 atan(vec2 y, vec2 x);
-vec3 atan(vec3 y, vec3 x);
-vec4 atan(vec4 y, vec4 x);
-
-float atan(float y_over_x);
-vec2 atan(vec2 y_over_x);
-vec3 atan(vec3 y_over_x);
-vec4 atan(vec4 y_over_x);
-
-/*
- * 8.2 - Exponential Functions
- */
-float pow(float x, float y);
-vec2 pow(vec2 x, vec2 y);
-vec3 pow(vec3 x, vec3 y);
-vec4 pow(vec4 x, vec4 y);
-
-float exp(float x);
-vec2 exp(vec2 x);
-vec3 exp(vec3 x);
-vec4 exp(vec4 x);
-
-float log(float x);
-vec2 log(vec2 x);
-vec3 log(vec3 x);
-vec4 log(vec4 x);
-
-float exp2(float x);
-vec2 exp2(vec2 x);
-vec3 exp2(vec3 x);
-vec4 exp2(vec4 x);
-
-float log2(float x);
-vec2 log2(vec2 x);
-vec3 log2(vec3 x);
-vec4 log2(vec4 x);
-
-float sqrt(float x);
-vec2 sqrt(vec2 x);
-vec3 sqrt(vec3 x);
-vec4 sqrt(vec4 x);
-
-float inversesqrt(float x);
-vec2 inversesqrt(vec2 x);
-vec3 inversesqrt(vec3 x);
-vec4 inversesqrt(vec4 x);
-
-/*
- * 8.3 - Common Functions
- */
-float abs(float x);
-vec2 abs(vec2 x);
-vec3 abs(vec3 x);
-vec4 abs(vec4 x);
-
-float sign(float x);
-vec2 sign(vec2 x);
-vec3 sign(vec3 x);
-vec4 sign(vec4 x);
-
-float floor(float x);
-vec2 floor(vec2 x);
-vec3 floor(vec3 x);
-vec4 floor(vec4 x);
-
-float ceil(float x);
-vec2 ceil(vec2 x);
-vec3 ceil(vec3 x);
-vec4 ceil(vec4 x);
-
-float fract(float x);
-vec2 fract(vec2 x);
-vec3 fract(vec3 x);
-vec4 fract(vec4 x);
-
-float mod(float x, float y);
-vec2 mod(vec2 x, float y);
-vec3 mod(vec3 x, float y);
-vec4 mod(vec4 x, float y);
-
-vec2 mod(vec2 x, vec2 y);
-vec3 mod(vec3 x, vec3 y);
-vec4 mod(vec4 x, vec4 y);
-
-float min(float x, float y);
-vec2 min(vec2 x, vec2 y);
-vec3 min(vec3 x, vec3 y);
-vec4 min(vec4 x, vec4 y);
-
-vec2 min(vec2 x, float y);
-vec3 min(vec3 x, float y);
-vec4 min(vec4 x, float y);
-
-float max(float x, float y);
-vec2 max(vec2 x, vec2 y);
-vec3 max(vec3 x, vec3 y);
-vec4 max(vec4 x, vec4 y);
-
-vec2 max(vec2 x, float y);
-vec3 max(vec3 x, float y);
-vec4 max(vec4 x, float y);
-
-float clamp(float x, float minVal, float maxVal);
-vec2 clamp(vec2 x, vec2 minVal, vec2 maxVal);
-vec3 clamp(vec3 x, vec3 minVal, vec3 maxVal);
-vec4 clamp(vec4 x, vec4 minVal, vec4 maxVal);
-
-vec2 clamp(vec2 x, float minVal, float maxVal);
-vec3 clamp(vec3 x, float minVal, float maxVal);
-vec4 clamp(vec4 x, float minVal, float maxVal);
-
-float mix(float x, float y, float a);
-vec2 mix(vec2 x, vec2 y, vec2 a);
-vec3 mix(vec3 x, vec3 y, vec3 a);
-vec4 mix(vec4 x, vec4 y, vec4 a);
-
-vec2 mix(vec2 x, vec2 y, float a);
-vec3 mix(vec3 x, vec3 y, float a);
-vec4 mix(vec4 x, vec4 y, float a);
-
-float step(float edge, float x);
-vec2 step(vec2 edge, vec2 x);
-vec3 step(vec3 edge, vec3 x);
-vec4 step(vec4 edge, vec4 x);
-
-vec2 step(float edge, vec2 x);
-vec3 step(float edge, vec3 x);
-vec4 step(float edge, vec4 x);
-
-float smoothstep(float edge0, float edge1, float x);
-vec2 smoothstep(vec2 edge0, vec2 edge1, vec2 x);
-vec3 smoothstep(vec3 edge0, vec3 edge1, vec3 x);
-vec4 smoothstep(vec4 edge0, vec4 edge1, vec4 x);
-
-vec2 smoothstep(float edge0, float edge1, vec2 x);
-vec3 smoothstep(float edge0, float edge1, vec3 x);
-vec4 smoothstep(float edge0, float edge1, vec4 x);
-
-/*
- * 8.4 - Geometric Functions
- */
-float length(float x);
-float length(vec2 x);
-float length(vec3 x);
-float length(vec4 x);
-
-float distance(float p0, float p1);
-float distance(vec2 p0, vec2 p1);
-float distance(vec3 p0, vec3 p1);
-float distance(vec4 p0, vec4 p1);
-
-float dot(float x, float y);
-float dot(vec2 x, vec2 y);
-float dot(vec3 x, vec3 y);
-float dot(vec4 x, vec4 y);
-
-vec3 cross(vec3 x, vec3 y);
-
-float normalize(float x);
-vec2 normalize(vec2 x);
-vec3 normalize(vec3 x);
-vec4 normalize(vec4 x);
-
-float faceforward(float N, float I, float Nref);
-vec2 faceforward(vec2 N, vec2 I, vec2 Nref);
-vec3 faceforward(vec3 N, vec3 I, vec3 Nref);
-vec4 faceforward(vec4 N, vec4 I, vec4 Nref);
-
-float reflect(float I, float N);
-vec2 reflect(vec2 I, vec2 N);
-vec3 reflect(vec3 I, vec3 N);
-vec4 reflect(vec4 I, vec4 N);
-
-float refract(float I, float N, float eta);
-vec2 refract(vec2 I, vec2 N, float eta);
-vec3 refract(vec3 I, vec3 N, float eta);
-vec4 refract(vec4 I, vec4 N, float eta);
-
-
-/*
- * 8.5 - Matrix Functions
- */
-mat2 matrixCompMult(mat2 x, mat2 y);
-mat3 matrixCompMult(mat3 x, mat3 y);
-mat4 matrixCompMult(mat4 x, mat4 y);
-mat2x3 matrixCompMult(mat2x3 x, mat2x3 y);
-mat2x4 matrixCompMult(mat2x4 x, mat2x4 y);
-mat3x2 matrixCompMult(mat3x2 x, mat3x2 y);
-mat3x4 matrixCompMult(mat3x4 x, mat3x4 y);
-mat4x2 matrixCompMult(mat4x2 x, mat4x2 y);
-mat4x3 matrixCompMult(mat4x3 x, mat4x3 y);
-
-mat2 outerProduct(vec2 c, vec2 r);
-mat3 outerProduct(vec3 c, vec3 r);
-mat4 outerProduct(vec4 c, vec4 r);
-
-mat2x3 outerProduct(vec3 c, vec2 r);
-mat3x2 outerProduct(vec2 c, vec3 r);
-
-mat2x4 outerProduct(vec4 c, vec2 r);
-mat4x2 outerProduct(vec2 c, vec4 r);
-
-mat3x4 outerProduct(vec4 c, vec3 r);
-mat4x3 outerProduct(vec3 c, vec4 r);
-
-mat2 transpose(mat2 m);
-mat3 transpose(mat3 m);
-mat4 transpose(mat4 m);
-
-mat2x3 transpose(mat3x2 m);
-mat3x2 transpose(mat2x3 m);
-
-mat2x4 transpose(mat4x2 m);
-mat4x2 transpose(mat2x4 m);
-
-mat3x4 transpose(mat4x3 m);
-mat4x3 transpose(mat3x4 m);
-
-/*
- * 8.6 - Vector Relational Functions
- */
-bvec2 lessThan( vec2 x, vec2 y);
-bvec3 lessThan( vec3 x, vec3 y);
-bvec4 lessThan( vec4 x, vec4 y);
-bvec2 lessThan(ivec2 x, ivec2 y);
-bvec3 lessThan(ivec3 x, ivec3 y);
-bvec4 lessThan(ivec4 x, ivec4 y);
-
-bvec2 lessThanEqual( vec2 x, vec2 y);
-bvec3 lessThanEqual( vec3 x, vec3 y);
-bvec4 lessThanEqual( vec4 x, vec4 y);
-bvec2 lessThanEqual(ivec2 x, ivec2 y);
-bvec3 lessThanEqual(ivec3 x, ivec3 y);
-bvec4 lessThanEqual(ivec4 x, ivec4 y);
-
-bvec2 greaterThan( vec2 x, vec2 y);
-bvec3 greaterThan( vec3 x, vec3 y);
-bvec4 greaterThan( vec4 x, vec4 y);
-bvec2 greaterThan(ivec2 x, ivec2 y);
-bvec3 greaterThan(ivec3 x, ivec3 y);
-bvec4 greaterThan(ivec4 x, ivec4 y);
-
-bvec2 greaterThanEqual( vec2 x, vec2 y);
-bvec3 greaterThanEqual( vec3 x, vec3 y);
-bvec4 greaterThanEqual( vec4 x, vec4 y);
-bvec2 greaterThanEqual(ivec2 x, ivec2 y);
-bvec3 greaterThanEqual(ivec3 x, ivec3 y);
-bvec4 greaterThanEqual(ivec4 x, ivec4 y);
-
-bvec2 equal( vec2 x, vec2 y);
-bvec3 equal( vec3 x, vec3 y);
-bvec4 equal( vec4 x, vec4 y);
-bvec2 equal(ivec2 x, ivec2 y);
-bvec3 equal(ivec3 x, ivec3 y);
-bvec4 equal(ivec4 x, ivec4 y);
-bvec2 equal(bvec2 x, bvec2 y);
-bvec3 equal(bvec3 x, bvec3 y);
-bvec4 equal(bvec4 x, bvec4 y);
-
-bvec2 notEqual( vec2 x, vec2 y);
-bvec3 notEqual( vec3 x, vec3 y);
-bvec4 notEqual( vec4 x, vec4 y);
-bvec2 notEqual(ivec2 x, ivec2 y);
-bvec3 notEqual(ivec3 x, ivec3 y);
-bvec4 notEqual(ivec4 x, ivec4 y);
-bvec2 notEqual(bvec2 x, bvec2 y);
-bvec3 notEqual(bvec3 x, bvec3 y);
-bvec4 notEqual(bvec4 x, bvec4 y);
-
-bool any(bvec2 x);
-bool any(bvec3 x);
-bool any(bvec4 x);
-
-bool all(bvec2 x);
-bool all(bvec3 x);
-bool all(bvec4 x);
-
-bvec2 not(bvec2 x);
-bvec3 not(bvec3 x);
-bvec4 not(bvec4 x);
-
-/*
- * 8.7 - Texture Lookup Functions
- */
-vec4 texture1D (sampler1D sampler, float coord);
-vec4 texture1DProj (sampler1D sampler, vec2 coord);
-vec4 texture1DProj (sampler1D sampler, vec4 coord);
-
-vec4 texture2D (sampler2D sampler, vec2 coord);
-vec4 texture2DProj (sampler2D sampler, vec3 coord);
-vec4 texture2DProj (sampler2D sampler, vec4 coord);
-
-vec4 texture3D (sampler3D sampler, vec3 coord);
-vec4 texture3DProj (sampler3D sampler, vec4 coord);
-
-vec4 textureCube (samplerCube sampler, vec3 coord);
-
-vec4 shadow1D (sampler1DShadow sampler, vec3 coord);
-vec4 shadow2D (sampler2DShadow sampler, vec3 coord);
-vec4 shadow1DProj (sampler1DShadow sampler, vec4 coord);
-vec4 shadow2DProj (sampler2DShadow sampler, vec4 coord);
-
-/*
- * 8.9 - Noise Functions
- */
-float noise1(float x);
-float noise1(vec2 x);
-float noise1(vec3 x);
-float noise1(vec4 x);
-
-vec2 noise2(float x);
-vec2 noise2(vec2 x);
-vec2 noise2(vec3 x);
-vec2 noise2(vec4 x);
-
-vec3 noise3(float x);
-vec3 noise3(vec2 x);
-vec3 noise3(vec3 x);
-vec3 noise3(vec4 x);
-
-vec4 noise4(float x);
-vec4 noise4(vec2 x);
-vec4 noise4(vec3 x);
-vec4 noise4(vec4 x);
diff --git a/src/glsl/builtins/profiles/120.vert b/src/glsl/builtins/profiles/120.vert
deleted file mode 100644
index 41a1d96..0000000
--- a/src/glsl/builtins/profiles/120.vert
+++ /dev/null
@@ -1,21 +0,0 @@
-#version 120
-
-vec4 ftransform();
-
-vec4 texture1DLod (sampler1D sampler, float coord, float lod);
-vec4 texture1DProjLod(sampler1D sampler, vec2 coord, float lod);
-vec4 texture1DProjLod(sampler1D sampler, vec4 coord, float lod);
-
-vec4 texture2DLod (sampler2D sampler, vec2 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec3 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec4 coord, float lod);
-
-vec4 texture3DLod (sampler3D sampler, vec3 coord, float lod);
-vec4 texture3DProjLod(sampler3D sampler, vec4 coord, float lod);
-
-vec4 textureCubeLod (samplerCube sampler, vec3 coord, float lod);
-
-vec4 shadow1DLod (sampler1DShadow sampler, vec3 coord, float lod);
-vec4 shadow2DLod (sampler2DShadow sampler, vec3 coord, float lod);
-vec4 shadow1DProjLod(sampler1DShadow sampler, vec4 coord, float lod);
-vec4 shadow2DProjLod(sampler2DShadow sampler, vec4 coord, float lod);
diff --git a/src/glsl/builtins/profiles/130.frag b/src/glsl/builtins/profiles/130.frag
deleted file mode 100644
index d0233b8..0000000
--- a/src/glsl/builtins/profiles/130.frag
+++ /dev/null
@@ -1,141 +0,0 @@
-#version 130
-
-/* texture - bias variants */
- vec4 texture( sampler1D sampler, float P, float bias);
-ivec4 texture(isampler1D sampler, float P, float bias);
-uvec4 texture(usampler1D sampler, float P, float bias);
-
- vec4 texture( sampler2D sampler, vec2 P, float bias);
-ivec4 texture(isampler2D sampler, vec2 P, float bias);
-uvec4 texture(usampler2D sampler, vec2 P, float bias);
-
- vec4 texture( sampler3D sampler, vec3 P, float bias);
-ivec4 texture(isampler3D sampler, vec3 P, float bias);
-uvec4 texture(usampler3D sampler, vec3 P, float bias);
-
- vec4 texture( samplerCube sampler, vec3 P, float bias);
-ivec4 texture(isamplerCube sampler, vec3 P, float bias);
-uvec4 texture(usamplerCube sampler, vec3 P, float bias);
-
-float texture(sampler1DShadow sampler, vec3 P, float bias);
-float texture(sampler2DShadow sampler, vec3 P, float bias);
-float texture(samplerCubeShadow sampler, vec4 P, float bias);
-
- vec4 texture( sampler1DArray sampler, vec2 P, float bias);
-ivec4 texture(isampler1DArray sampler, vec2 P, float bias);
-uvec4 texture(usampler1DArray sampler, vec2 P, float bias);
-
- vec4 texture( sampler2DArray sampler, vec3 P, float bias);
-ivec4 texture(isampler2DArray sampler, vec3 P, float bias);
-uvec4 texture(usampler2DArray sampler, vec3 P, float bias);
-
-float texture(sampler1DArrayShadow sampler, vec3 P, float bias);
-
-/* textureProj - bias variants */
- vec4 textureProj( sampler1D sampler, vec2 P, float bias);
-ivec4 textureProj(isampler1D sampler, vec2 P, float bias);
-uvec4 textureProj(usampler1D sampler, vec2 P, float bias);
- vec4 textureProj( sampler1D sampler, vec4 P, float bias);
-ivec4 textureProj(isampler1D sampler, vec4 P, float bias);
-uvec4 textureProj(usampler1D sampler, vec4 P, float bias);
-
- vec4 textureProj( sampler2D sampler, vec3 P, float bias);
-ivec4 textureProj(isampler2D sampler, vec3 P, float bias);
-uvec4 textureProj(usampler2D sampler, vec3 P, float bias);
- vec4 textureProj( sampler2D sampler, vec4 P, float bias);
-ivec4 textureProj(isampler2D sampler, vec4 P, float bias);
-uvec4 textureProj(usampler2D sampler, vec4 P, float bias);
-
- vec4 textureProj( sampler3D sampler, vec4 P, float bias);
-ivec4 textureProj(isampler3D sampler, vec4 P, float bias);
-uvec4 textureProj(usampler3D sampler, vec4 P, float bias);
-
-float textureProj(sampler1DShadow sampler, vec4 P, float bias);
-float textureProj(sampler2DShadow sampler, vec4 P, float bias);
-
-/* textureOffset - bias variants */
- vec4 textureOffset( sampler1D sampler, float P, int offset, float bias);
-ivec4 textureOffset(isampler1D sampler, float P, int offset, float bias);
-uvec4 textureOffset(usampler1D sampler, float P, int offset, float bias);
-
- vec4 textureOffset( sampler2D sampler, vec2 P, ivec2 offset, float bias);
-ivec4 textureOffset(isampler2D sampler, vec2 P, ivec2 offset, float bias);
-uvec4 textureOffset(usampler2D sampler, vec2 P, ivec2 offset, float bias);
-
- vec4 textureOffset( sampler3D sampler, vec3 P, ivec3 offset, float bias);
-ivec4 textureOffset(isampler3D sampler, vec3 P, ivec3 offset, float bias);
-uvec4 textureOffset(usampler3D sampler, vec3 P, ivec3 offset, float bias);
-
-float textureOffset(sampler1DShadow sampler, vec3 P, int offset, float bias);
-float textureOffset(sampler2DShadow sampler, vec3 P, ivec2 offset, float bias);
-
- vec4 textureOffset( sampler1DArray sampler, vec2 P, int offset, float bias);
-ivec4 textureOffset(isampler1DArray sampler, vec2 P, int offset, float bias);
-uvec4 textureOffset(usampler1DArray sampler, vec2 P, int offset, float bias);
-
- vec4 textureOffset( sampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-ivec4 textureOffset(isampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-uvec4 textureOffset(usampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-
-float textureOffset(sampler1DArrayShadow samp, vec3 P, int offset, float bias);
-
-/* textureProjOffsetOffset - bias variants */
- vec4 textureProjOffset( sampler1D sampler, vec2 P, int offset, float bias);
-ivec4 textureProjOffset(isampler1D sampler, vec2 P, int offset, float bias);
-uvec4 textureProjOffset(usampler1D sampler, vec2 P, int offset, float bias);
- vec4 textureProjOffset( sampler1D sampler, vec4 P, int offset, float bias);
-ivec4 textureProjOffset(isampler1D sampler, vec4 P, int offset, float bias);
-uvec4 textureProjOffset(usampler1D sampler, vec4 P, int offset, float bias);
-
- vec4 textureProjOffset( sampler2D sampler, vec3 P, ivec2 offset, float bias);
-ivec4 textureProjOffset(isampler2D sampler, vec3 P, ivec2 offset, float bias);
-uvec4 textureProjOffset(usampler2D sampler, vec3 P, ivec2 offset, float bias);
- vec4 textureProjOffset( sampler2D sampler, vec4 P, ivec2 offset, float bias);
-ivec4 textureProjOffset(isampler2D sampler, vec4 P, ivec2 offset, float bias);
-uvec4 textureProjOffset(usampler2D sampler, vec4 P, ivec2 offset, float bias);
-
- vec4 textureProjOffset( sampler3D sampler, vec4 P, ivec3 offset, float bias);
-ivec4 textureProjOffset(isampler3D sampler, vec4 P, ivec3 offset, float bias);
-uvec4 textureProjOffset(usampler3D sampler, vec4 P, ivec3 offset, float bias);
-
-float textureProjOffset(sampler1DShadow s, vec4 P, int offset, float bias);
-float textureProjOffset(sampler2DShadow s, vec4 P, ivec2 offset, float bias);
-
-/*
- * The following texture functions are deprecated:
- */
-vec4 texture1D (sampler1D sampler, float coord, float bias);
-vec4 texture1DProj (sampler1D sampler, vec2 coord, float bias);
-vec4 texture1DProj (sampler1D sampler, vec4 coord, float bias);
-
-vec4 texture2D (sampler2D sampler, vec2 coord, float bias);
-vec4 texture2DProj (sampler2D sampler, vec3 coord, float bias);
-vec4 texture2DProj (sampler2D sampler, vec4 coord, float bias);
-
-vec4 texture3D (sampler3D sampler, vec3 coord, float bias);
-vec4 texture3DProj (sampler3D sampler, vec4 coord, float bias);
-
-vec4 textureCube (samplerCube sampler, vec3 coord, float bias);
-
-vec4 shadow1D (sampler1DShadow sampler, vec3 coord, float bias);
-vec4 shadow2D (sampler2DShadow sampler, vec3 coord, float bias);
-vec4 shadow1DProj (sampler1DShadow sampler, vec4 coord, float bias);
-vec4 shadow2DProj (sampler2DShadow sampler, vec4 coord, float bias);
-
-/*
- * 8.8 - Fragment Processing Functions
- */
-float dFdx(float p);
-vec2 dFdx(vec2 p);
-vec3 dFdx(vec3 p);
-vec4 dFdx(vec4 p);
-
-float dFdy(float p);
-vec2 dFdy(vec2 p);
-vec3 dFdy(vec3 p);
-vec4 dFdy(vec4 p);
-
-float fwidth(float p);
-vec2 fwidth(vec2 p);
-vec3 fwidth(vec3 p);
-vec4 fwidth(vec4 p);
diff --git a/src/glsl/builtins/profiles/130.glsl b/src/glsl/builtins/profiles/130.glsl
deleted file mode 100644
index 15f973b..0000000
--- a/src/glsl/builtins/profiles/130.glsl
+++ /dev/null
@@ -1,904 +0,0 @@
-#version 130
-/*
- * 8.1 - Angle and Trigonometry Functions
- */
-float radians(float degrees);
-vec2 radians(vec2 degrees);
-vec3 radians(vec3 degrees);
-vec4 radians(vec4 degrees);
-
-float degrees(float radians);
-vec2 degrees(vec2 radians);
-vec3 degrees(vec3 radians);
-vec4 degrees(vec4 radians);
-
-float sin(float angle);
-vec2 sin(vec2 angle);
-vec3 sin(vec3 angle);
-vec4 sin(vec4 angle);
-
-float cos(float angle);
-vec2 cos(vec2 angle);
-vec3 cos(vec3 angle);
-vec4 cos(vec4 angle);
-
-float tan(float angle);
-vec2 tan(vec2 angle);
-vec3 tan(vec3 angle);
-vec4 tan(vec4 angle);
-
-float asin(float angle);
-vec2 asin(vec2 angle);
-vec3 asin(vec3 angle);
-vec4 asin(vec4 angle);
-
-float acos(float angle);
-vec2 acos(vec2 angle);
-vec3 acos(vec3 angle);
-vec4 acos(vec4 angle);
-
-float atan(float y, float x);
-vec2 atan(vec2 y, vec2 x);
-vec3 atan(vec3 y, vec3 x);
-vec4 atan(vec4 y, vec4 x);
-
-float atan(float y_over_x);
-vec2 atan(vec2 y_over_x);
-vec3 atan(vec3 y_over_x);
-vec4 atan(vec4 y_over_x);
-
-float sinh(float x);
-vec2 sinh(vec2 x);
-vec3 sinh(vec3 x);
-vec4 sinh(vec4 x);
-
-float cosh(float x);
-vec2 cosh(vec2 x);
-vec3 cosh(vec3 x);
-vec4 cosh(vec4 x);
-
-float tanh(float x);
-vec2 tanh(vec2 x);
-vec3 tanh(vec3 x);
-vec4 tanh(vec4 x);
-
-float asinh(float x);
-vec2 asinh(vec2 x);
-vec3 asinh(vec3 x);
-vec4 asinh(vec4 x);
-
-float acosh(float x);
-vec2 acosh(vec2 x);
-vec3 acosh(vec3 x);
-vec4 acosh(vec4 x);
-
-float atanh(float x);
-vec2 atanh(vec2 x);
-vec3 atanh(vec3 x);
-vec4 atanh(vec4 x);
-
-/*
- * 8.2 - Exponential Functions
- */
-float pow(float x, float y);
-vec2 pow(vec2 x, vec2 y);
-vec3 pow(vec3 x, vec3 y);
-vec4 pow(vec4 x, vec4 y);
-
-float exp(float x);
-vec2 exp(vec2 x);
-vec3 exp(vec3 x);
-vec4 exp(vec4 x);
-
-float log(float x);
-vec2 log(vec2 x);
-vec3 log(vec3 x);
-vec4 log(vec4 x);
-
-float exp2(float x);
-vec2 exp2(vec2 x);
-vec3 exp2(vec3 x);
-vec4 exp2(vec4 x);
-
-float log2(float x);
-vec2 log2(vec2 x);
-vec3 log2(vec3 x);
-vec4 log2(vec4 x);
-
-float sqrt(float x);
-vec2 sqrt(vec2 x);
-vec3 sqrt(vec3 x);
-vec4 sqrt(vec4 x);
-
-float inversesqrt(float x);
-vec2 inversesqrt(vec2 x);
-vec3 inversesqrt(vec3 x);
-vec4 inversesqrt(vec4 x);
-
-/*
- * 8.3 - Common Functions
- */
-float abs(float x);
-vec2 abs(vec2 x);
-vec3 abs(vec3 x);
-vec4 abs(vec4 x);
-int abs(int x);
-ivec2 abs(ivec2 x);
-ivec3 abs(ivec3 x);
-ivec4 abs(ivec4 x);
-
-float sign(float x);
-vec2 sign(vec2 x);
-vec3 sign(vec3 x);
-vec4 sign(vec4 x);
-int sign(int x);
-ivec2 sign(ivec2 x);
-ivec3 sign(ivec3 x);
-ivec4 sign(ivec4 x);
-
-float floor(float x);
-vec2 floor(vec2 x);
-vec3 floor(vec3 x);
-vec4 floor(vec4 x);
-
-float trunc(float x);
-vec2 trunc(vec2 x);
-vec3 trunc(vec3 x);
-vec4 trunc(vec4 x);
-
-float round(float x);
-vec2 round(vec2 x);
-vec3 round(vec3 x);
-vec4 round(vec4 x);
-
-float roundEven(float x);
-vec2 roundEven(vec2 x);
-vec3 roundEven(vec3 x);
-vec4 roundEven(vec4 x);
-
-float ceil(float x);
-vec2 ceil(vec2 x);
-vec3 ceil(vec3 x);
-vec4 ceil(vec4 x);
-
-float fract(float x);
-vec2 fract(vec2 x);
-vec3 fract(vec3 x);
-vec4 fract(vec4 x);
-
-float mod(float x, float y);
-vec2 mod(vec2 x, float y);
-vec3 mod(vec3 x, float y);
-vec4 mod(vec4 x, float y);
-
-vec2 mod(vec2 x, vec2 y);
-vec3 mod(vec3 x, vec3 y);
-vec4 mod(vec4 x, vec4 y);
-
-float modf(float x, out float i);
-vec2 modf(vec2 x, out vec2 i);
-vec3 modf(vec3 x, out vec3 i);
-vec4 modf(vec4 x, out vec4 i);
-
-float min(float x, float y);
-vec2 min(vec2 x, vec2 y);
-vec3 min(vec3 x, vec3 y);
-vec4 min(vec4 x, vec4 y);
-
-vec2 min(vec2 x, float y);
-vec3 min(vec3 x, float y);
-vec4 min(vec4 x, float y);
-
-int min(int x, int y);
-ivec2 min(ivec2 x, ivec2 y);
-ivec3 min(ivec3 x, ivec3 y);
-ivec4 min(ivec4 x, ivec4 y);
-
-ivec2 min(ivec2 x, int y);
-ivec3 min(ivec3 x, int y);
-ivec4 min(ivec4 x, int y);
-
-uint min(uint x, uint y);
-uvec2 min(uvec2 x, uvec2 y);
-uvec3 min(uvec3 x, uvec3 y);
-uvec4 min(uvec4 x, uvec4 y);
-
-uvec2 min(uvec2 x, uint y);
-uvec3 min(uvec3 x, uint y);
-uvec4 min(uvec4 x, uint y);
-
-float max(float x, float y);
-vec2 max(vec2 x, vec2 y);
-vec3 max(vec3 x, vec3 y);
-vec4 max(vec4 x, vec4 y);
-
-vec2 max(vec2 x, float y);
-vec3 max(vec3 x, float y);
-vec4 max(vec4 x, float y);
-
-int max(int x, int y);
-ivec2 max(ivec2 x, ivec2 y);
-ivec3 max(ivec3 x, ivec3 y);
-ivec4 max(ivec4 x, ivec4 y);
-
-ivec2 max(ivec2 x, int y);
-ivec3 max(ivec3 x, int y);
-ivec4 max(ivec4 x, int y);
-
-uint max(uint x, uint y);
-uvec2 max(uvec2 x, uvec2 y);
-uvec3 max(uvec3 x, uvec3 y);
-uvec4 max(uvec4 x, uvec4 y);
-
-uvec2 max(uvec2 x, uint y);
-uvec3 max(uvec3 x, uint y);
-uvec4 max(uvec4 x, uint y);
-
-float clamp(float x, float minVal, float maxVal);
-vec2 clamp(vec2 x, vec2 minVal, vec2 maxVal);
-vec3 clamp(vec3 x, vec3 minVal, vec3 maxVal);
-vec4 clamp(vec4 x, vec4 minVal, vec4 maxVal);
-
-vec2 clamp(vec2 x, float minVal, float maxVal);
-vec3 clamp(vec3 x, float minVal, float maxVal);
-vec4 clamp(vec4 x, float minVal, float maxVal);
-
-int clamp(int x, int minVal, int maxVal);
-ivec2 clamp(ivec2 x, ivec2 minVal, ivec2 maxVal);
-ivec3 clamp(ivec3 x, ivec3 minVal, ivec3 maxVal);
-ivec4 clamp(ivec4 x, ivec4 minVal, ivec4 maxVal);
-
-ivec2 clamp(ivec2 x, int minVal, int maxVal);
-ivec3 clamp(ivec3 x, int minVal, int maxVal);
-ivec4 clamp(ivec4 x, int minVal, int maxVal);
-
-uint clamp(uint x, uint minVal, uint maxVal);
-uvec2 clamp(uvec2 x, uvec2 minVal, uvec2 maxVal);
-uvec3 clamp(uvec3 x, uvec3 minVal, uvec3 maxVal);
-uvec4 clamp(uvec4 x, uvec4 minVal, uvec4 maxVal);
-
-uvec2 clamp(uvec2 x, uint minVal, uint maxVal);
-uvec3 clamp(uvec3 x, uint minVal, uint maxVal);
-uvec4 clamp(uvec4 x, uint minVal, uint maxVal);
-
-float mix(float x, float y, float a);
-vec2 mix(vec2 x, vec2 y, vec2 a);
-vec3 mix(vec3 x, vec3 y, vec3 a);
-vec4 mix(vec4 x, vec4 y, vec4 a);
-
-vec2 mix(vec2 x, vec2 y, float a);
-vec3 mix(vec3 x, vec3 y, float a);
-vec4 mix(vec4 x, vec4 y, float a);
-
-float mix(float x, float y, bool a);
-vec2 mix(vec2 x, vec2 y, bvec2 a);
-vec3 mix(vec3 x, vec3 y, bvec3 a);
-vec4 mix(vec4 x, vec4 y, bvec4 a);
-
-float step(float edge, float x);
-vec2 step(vec2 edge, vec2 x);
-vec3 step(vec3 edge, vec3 x);
-vec4 step(vec4 edge, vec4 x);
-
-vec2 step(float edge, vec2 x);
-vec3 step(float edge, vec3 x);
-vec4 step(float edge, vec4 x);
-
-float smoothstep(float edge0, float edge1, float x);
-vec2 smoothstep(vec2 edge0, vec2 edge1, vec2 x);
-vec3 smoothstep(vec3 edge0, vec3 edge1, vec3 x);
-vec4 smoothstep(vec4 edge0, vec4 edge1, vec4 x);
-
-vec2 smoothstep(float edge0, float edge1, vec2 x);
-vec3 smoothstep(float edge0, float edge1, vec3 x);
-vec4 smoothstep(float edge0, float edge1, vec4 x);
-
-bool isnan(float x);
-bvec2 isnan(vec2 x);
-bvec3 isnan(vec3 x);
-bvec4 isnan(vec4 x);
-
-bool isinf(float x);
-bvec2 isinf(vec2 x);
-bvec3 isinf(vec3 x);
-bvec4 isinf(vec4 x);
-
-/*
- * 8.4 - Geometric Functions
- */
-float length(float x);
-float length(vec2 x);
-float length(vec3 x);
-float length(vec4 x);
-
-float distance(float p0, float p1);
-float distance(vec2 p0, vec2 p1);
-float distance(vec3 p0, vec3 p1);
-float distance(vec4 p0, vec4 p1);
-
-float dot(float x, float y);
-float dot(vec2 x, vec2 y);
-float dot(vec3 x, vec3 y);
-float dot(vec4 x, vec4 y);
-
-vec3 cross(vec3 x, vec3 y);
-
-float normalize(float x);
-vec2 normalize(vec2 x);
-vec3 normalize(vec3 x);
-vec4 normalize(vec4 x);
-
-float faceforward(float N, float I, float Nref);
-vec2 faceforward(vec2 N, vec2 I, vec2 Nref);
-vec3 faceforward(vec3 N, vec3 I, vec3 Nref);
-vec4 faceforward(vec4 N, vec4 I, vec4 Nref);
-
-float reflect(float I, float N);
-vec2 reflect(vec2 I, vec2 N);
-vec3 reflect(vec3 I, vec3 N);
-vec4 reflect(vec4 I, vec4 N);
-
-float refract(float I, float N, float eta);
-vec2 refract(vec2 I, vec2 N, float eta);
-vec3 refract(vec3 I, vec3 N, float eta);
-vec4 refract(vec4 I, vec4 N, float eta);
-
-
-/*
- * 8.5 - Matrix Functions
- */
-mat2 matrixCompMult(mat2 x, mat2 y);
-mat3 matrixCompMult(mat3 x, mat3 y);
-mat4 matrixCompMult(mat4 x, mat4 y);
-mat2x3 matrixCompMult(mat2x3 x, mat2x3 y);
-mat2x4 matrixCompMult(mat2x4 x, mat2x4 y);
-mat3x2 matrixCompMult(mat3x2 x, mat3x2 y);
-mat3x4 matrixCompMult(mat3x4 x, mat3x4 y);
-mat4x2 matrixCompMult(mat4x2 x, mat4x2 y);
-mat4x3 matrixCompMult(mat4x3 x, mat4x3 y);
-
-mat2 outerProduct(vec2 c, vec2 r);
-mat3 outerProduct(vec3 c, vec3 r);
-mat4 outerProduct(vec4 c, vec4 r);
-
-mat2x3 outerProduct(vec3 c, vec2 r);
-mat3x2 outerProduct(vec2 c, vec3 r);
-
-mat2x4 outerProduct(vec4 c, vec2 r);
-mat4x2 outerProduct(vec2 c, vec4 r);
-
-mat3x4 outerProduct(vec4 c, vec3 r);
-mat4x3 outerProduct(vec3 c, vec4 r);
-
-mat2 transpose(mat2 m);
-mat3 transpose(mat3 m);
-mat4 transpose(mat4 m);
-
-mat2x3 transpose(mat3x2 m);
-mat3x2 transpose(mat2x3 m);
-
-mat2x4 transpose(mat4x2 m);
-mat4x2 transpose(mat2x4 m);
-
-mat3x4 transpose(mat4x3 m);
-mat4x3 transpose(mat3x4 m);
-
-/*
- * 8.6 - Vector Relational Functions
- */
-bvec2 lessThan( vec2 x, vec2 y);
-bvec3 lessThan( vec3 x, vec3 y);
-bvec4 lessThan( vec4 x, vec4 y);
-bvec2 lessThan(ivec2 x, ivec2 y);
-bvec3 lessThan(ivec3 x, ivec3 y);
-bvec4 lessThan(ivec4 x, ivec4 y);
-bvec2 lessThan(uvec2 x, uvec2 y);
-bvec3 lessThan(uvec3 x, uvec3 y);
-bvec4 lessThan(uvec4 x, uvec4 y);
-
-bvec2 lessThanEqual( vec2 x, vec2 y);
-bvec3 lessThanEqual( vec3 x, vec3 y);
-bvec4 lessThanEqual( vec4 x, vec4 y);
-bvec2 lessThanEqual(ivec2 x, ivec2 y);
-bvec3 lessThanEqual(ivec3 x, ivec3 y);
-bvec4 lessThanEqual(ivec4 x, ivec4 y);
-bvec2 lessThanEqual(uvec2 x, uvec2 y);
-bvec3 lessThanEqual(uvec3 x, uvec3 y);
-bvec4 lessThanEqual(uvec4 x, uvec4 y);
-
-bvec2 greaterThan( vec2 x, vec2 y);
-bvec3 greaterThan( vec3 x, vec3 y);
-bvec4 greaterThan( vec4 x, vec4 y);
-bvec2 greaterThan(ivec2 x, ivec2 y);
-bvec3 greaterThan(ivec3 x, ivec3 y);
-bvec4 greaterThan(ivec4 x, ivec4 y);
-bvec2 greaterThan(uvec2 x, uvec2 y);
-bvec3 greaterThan(uvec3 x, uvec3 y);
-bvec4 greaterThan(uvec4 x, uvec4 y);
-
-bvec2 greaterThanEqual( vec2 x, vec2 y);
-bvec3 greaterThanEqual( vec3 x, vec3 y);
-bvec4 greaterThanEqual( vec4 x, vec4 y);
-bvec2 greaterThanEqual(ivec2 x, ivec2 y);
-bvec3 greaterThanEqual(ivec3 x, ivec3 y);
-bvec4 greaterThanEqual(ivec4 x, ivec4 y);
-bvec2 greaterThanEqual(uvec2 x, uvec2 y);
-bvec3 greaterThanEqual(uvec3 x, uvec3 y);
-bvec4 greaterThanEqual(uvec4 x, uvec4 y);
-
-bvec2 equal( vec2 x, vec2 y);
-bvec3 equal( vec3 x, vec3 y);
-bvec4 equal( vec4 x, vec4 y);
-bvec2 equal(ivec2 x, ivec2 y);
-bvec3 equal(ivec3 x, ivec3 y);
-bvec4 equal(ivec4 x, ivec4 y);
-bvec2 equal(uvec2 x, uvec2 y);
-bvec3 equal(uvec3 x, uvec3 y);
-bvec4 equal(uvec4 x, uvec4 y);
-bvec2 equal(bvec2 x, bvec2 y);
-bvec3 equal(bvec3 x, bvec3 y);
-bvec4 equal(bvec4 x, bvec4 y);
-
-bvec2 notEqual( vec2 x, vec2 y);
-bvec3 notEqual( vec3 x, vec3 y);
-bvec4 notEqual( vec4 x, vec4 y);
-bvec2 notEqual(ivec2 x, ivec2 y);
-bvec3 notEqual(ivec3 x, ivec3 y);
-bvec4 notEqual(ivec4 x, ivec4 y);
-bvec2 notEqual(uvec2 x, uvec2 y);
-bvec3 notEqual(uvec3 x, uvec3 y);
-bvec4 notEqual(uvec4 x, uvec4 y);
-bvec2 notEqual(bvec2 x, bvec2 y);
-bvec3 notEqual(bvec3 x, bvec3 y);
-bvec4 notEqual(bvec4 x, bvec4 y);
-
-bool any(bvec2 x);
-bool any(bvec3 x);
-bool any(bvec4 x);
-
-bool all(bvec2 x);
-bool all(bvec3 x);
-bool all(bvec4 x);
-
-bvec2 not(bvec2 x);
-bvec3 not(bvec3 x);
-bvec4 not(bvec4 x);
-
-/*
- * 8.7 - Texture Lookup Functions
- */
-
-/* textureSize */
-int textureSize( sampler1D sampler, int lod);
-int textureSize(isampler1D sampler, int lod);
-int textureSize(usampler1D sampler, int lod);
-
-ivec2 textureSize( sampler2D sampler, int lod);
-ivec2 textureSize(isampler2D sampler, int lod);
-ivec2 textureSize(usampler2D sampler, int lod);
-
-ivec3 textureSize( sampler3D sampler, int lod);
-ivec3 textureSize(isampler3D sampler, int lod);
-ivec3 textureSize(usampler3D sampler, int lod);
-
-ivec2 textureSize( samplerCube sampler, int lod);
-ivec2 textureSize(isamplerCube sampler, int lod);
-ivec2 textureSize(usamplerCube sampler, int lod);
-
-int textureSize(sampler1DShadow sampler, int lod);
-ivec2 textureSize(sampler2DShadow sampler, int lod);
-ivec2 textureSize(samplerCubeShadow sampler, int lod);
-
-ivec2 textureSize( sampler1DArray sampler, int lod);
-ivec2 textureSize(isampler1DArray sampler, int lod);
-ivec2 textureSize(usampler1DArray sampler, int lod);
-ivec3 textureSize( sampler2DArray sampler, int lod);
-ivec3 textureSize(isampler2DArray sampler, int lod);
-ivec3 textureSize(usampler2DArray sampler, int lod);
-
-ivec2 textureSize(sampler1DArrayShadow sampler, int lod);
-ivec3 textureSize(sampler2DArrayShadow sampler, int lod);
-
-/* texture - no bias */
- vec4 texture( sampler1D sampler, float P);
-ivec4 texture(isampler1D sampler, float P);
-uvec4 texture(usampler1D sampler, float P);
-
- vec4 texture( sampler2D sampler, vec2 P);
-ivec4 texture(isampler2D sampler, vec2 P);
-uvec4 texture(usampler2D sampler, vec2 P);
-
- vec4 texture( sampler3D sampler, vec3 P);
-ivec4 texture(isampler3D sampler, vec3 P);
-uvec4 texture(usampler3D sampler, vec3 P);
-
- vec4 texture( samplerCube sampler, vec3 P);
-ivec4 texture(isamplerCube sampler, vec3 P);
-uvec4 texture(usamplerCube sampler, vec3 P);
-
-float texture(sampler1DShadow sampler, vec3 P);
-float texture(sampler2DShadow sampler, vec3 P);
-float texture(samplerCubeShadow sampler, vec4 P);
-
- vec4 texture( sampler1DArray sampler, vec2 P);
-ivec4 texture(isampler1DArray sampler, vec2 P);
-uvec4 texture(usampler1DArray sampler, vec2 P);
-
- vec4 texture( sampler2DArray sampler, vec3 P);
-ivec4 texture(isampler2DArray sampler, vec3 P);
-uvec4 texture(usampler2DArray sampler, vec3 P);
-
-float texture(sampler1DArrayShadow sampler, vec3 P);
-float texture(sampler2DArrayShadow sampler, vec4 P);
-
-/* textureProj - no bias */
- vec4 textureProj( sampler1D sampler, vec2 P);
-ivec4 textureProj(isampler1D sampler, vec2 P);
-uvec4 textureProj(usampler1D sampler, vec2 P);
- vec4 textureProj( sampler1D sampler, vec4 P);
-ivec4 textureProj(isampler1D sampler, vec4 P);
-uvec4 textureProj(usampler1D sampler, vec4 P);
-
- vec4 textureProj( sampler2D sampler, vec3 P);
-ivec4 textureProj(isampler2D sampler, vec3 P);
-uvec4 textureProj(usampler2D sampler, vec3 P);
- vec4 textureProj( sampler2D sampler, vec4 P);
-ivec4 textureProj(isampler2D sampler, vec4 P);
-uvec4 textureProj(usampler2D sampler, vec4 P);
-
- vec4 textureProj( sampler3D sampler, vec4 P);
-ivec4 textureProj(isampler3D sampler, vec4 P);
-uvec4 textureProj(usampler3D sampler, vec4 P);
-
-float textureProj(sampler1DShadow sampler, vec4 P);
-float textureProj(sampler2DShadow sampler, vec4 P);
-
-/* textureLod */
- vec4 textureLod( sampler1D sampler, float P, float lod);
-ivec4 textureLod(isampler1D sampler, float P, float lod);
-uvec4 textureLod(usampler1D sampler, float P, float lod);
-
- vec4 textureLod( sampler2D sampler, vec2 P, float lod);
-ivec4 textureLod(isampler2D sampler, vec2 P, float lod);
-uvec4 textureLod(usampler2D sampler, vec2 P, float lod);
-
- vec4 textureLod( sampler3D sampler, vec3 P, float lod);
-ivec4 textureLod(isampler3D sampler, vec3 P, float lod);
-uvec4 textureLod(usampler3D sampler, vec3 P, float lod);
-
- vec4 textureLod( samplerCube sampler, vec3 P, float lod);
-ivec4 textureLod(isamplerCube sampler, vec3 P, float lod);
-uvec4 textureLod(usamplerCube sampler, vec3 P, float lod);
-
-float textureLod(sampler1DShadow sampler, vec3 P, float lod);
-float textureLod(sampler2DShadow sampler, vec3 P, float lod);
-
- vec4 textureLod( sampler1DArray sampler, vec2 P, float lod);
-ivec4 textureLod(isampler1DArray sampler, vec2 P, float lod);
-uvec4 textureLod(usampler1DArray sampler, vec2 P, float lod);
-
- vec4 textureLod( sampler2DArray sampler, vec3 P, float lod);
-ivec4 textureLod(isampler2DArray sampler, vec3 P, float lod);
-uvec4 textureLod(usampler2DArray sampler, vec3 P, float lod);
-
-float textureLod(sampler1DArrayShadow sampler, vec3 P, float lod);
-
-/* textureOffset - no bias */
- vec4 textureOffset( sampler1D sampler, float P, int offset);
-ivec4 textureOffset(isampler1D sampler, float P, int offset);
-uvec4 textureOffset(usampler1D sampler, float P, int offset);
-
- vec4 textureOffset( sampler2D sampler, vec2 P, ivec2 offset);
-ivec4 textureOffset(isampler2D sampler, vec2 P, ivec2 offset);
-uvec4 textureOffset(usampler2D sampler, vec2 P, ivec2 offset);
-
- vec4 textureOffset( sampler3D sampler, vec3 P, ivec3 offset);
-ivec4 textureOffset(isampler3D sampler, vec3 P, ivec3 offset);
-uvec4 textureOffset(usampler3D sampler, vec3 P, ivec3 offset);
-
-float textureOffset(sampler1DShadow sampler, vec3 P, int offset);
-float textureOffset(sampler2DShadow sampler, vec3 P, ivec2 offset);
-
- vec4 textureOffset( sampler1DArray sampler, vec2 P, int offset);
-ivec4 textureOffset(isampler1DArray sampler, vec2 P, int offset);
-uvec4 textureOffset(usampler1DArray sampler, vec2 P, int offset);
-
- vec4 textureOffset( sampler2DArray sampler, vec3 P, ivec2 offset);
-ivec4 textureOffset(isampler2DArray sampler, vec3 P, ivec2 offset);
-uvec4 textureOffset(usampler2DArray sampler, vec3 P, ivec2 offset);
-
-float textureOffset(sampler1DArrayShadow sampler, vec3 P, int offset);
-
-/* texelFetch */
- vec4 texelFetch( sampler1D sampler, int P, int lod);
-ivec4 texelFetch(isampler1D sampler, int P, int lod);
-uvec4 texelFetch(usampler1D sampler, int P, int lod);
-
- vec4 texelFetch( sampler2D sampler, ivec2 P, int lod);
-ivec4 texelFetch(isampler2D sampler, ivec2 P, int lod);
-uvec4 texelFetch(usampler2D sampler, ivec2 P, int lod);
-
- vec4 texelFetch( sampler3D sampler, ivec3 P, int lod);
-ivec4 texelFetch(isampler3D sampler, ivec3 P, int lod);
-uvec4 texelFetch(usampler3D sampler, ivec3 P, int lod);
-
- vec4 texelFetch( sampler1DArray sampler, ivec2 P, int lod);
-ivec4 texelFetch(isampler1DArray sampler, ivec2 P, int lod);
-uvec4 texelFetch(usampler1DArray sampler, ivec2 P, int lod);
-
- vec4 texelFetch( sampler2DArray sampler, ivec3 P, int lod);
-ivec4 texelFetch(isampler2DArray sampler, ivec3 P, int lod);
-uvec4 texelFetch(usampler2DArray sampler, ivec3 P, int lod);
-
-/* texelFetchOffset */
- vec4 texelFetchOffset( sampler1D sampler, int P, int lod, int offset);
-ivec4 texelFetchOffset(isampler1D sampler, int P, int lod, int offset);
-uvec4 texelFetchOffset(usampler1D sampler, int P, int lod, int offset);
-
- vec4 texelFetchOffset( sampler2D sampler, ivec2 P, int lod, ivec2 offset);
-ivec4 texelFetchOffset(isampler2D sampler, ivec2 P, int lod, ivec2 offset);
-uvec4 texelFetchOffset(usampler2D sampler, ivec2 P, int lod, ivec2 offset);
-
- vec4 texelFetchOffset( sampler3D sampler, ivec3 P, int lod, ivec3 offset);
-ivec4 texelFetchOffset(isampler3D sampler, ivec3 P, int lod, ivec3 offset);
-uvec4 texelFetchOffset(usampler3D sampler, ivec3 P, int lod, ivec3 offset);
-
- vec4 texelFetchOffset( sampler1DArray sampler, ivec2 P, int lod, int offset);
-ivec4 texelFetchOffset(isampler1DArray sampler, ivec2 P, int lod, int offset);
-uvec4 texelFetchOffset(usampler1DArray sampler, ivec2 P, int lod, int offset);
-
- vec4 texelFetchOffset( sampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-ivec4 texelFetchOffset(isampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-uvec4 texelFetchOffset(usampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-
-/* textureProjOffset - no bias */
- vec4 textureProjOffset( sampler1D sampler, vec2 P, int offset);
-ivec4 textureProjOffset(isampler1D sampler, vec2 P, int offset);
-uvec4 textureProjOffset(usampler1D sampler, vec2 P, int offset);
- vec4 textureProjOffset( sampler1D sampler, vec4 P, int offset);
-ivec4 textureProjOffset(isampler1D sampler, vec4 P, int offset);
-uvec4 textureProjOffset(usampler1D sampler, vec4 P, int offset);
-
- vec4 textureProjOffset( sampler2D sampler, vec3 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2D sampler, vec3 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2D sampler, vec3 P, ivec2 offset);
- vec4 textureProjOffset( sampler2D sampler, vec4 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2D sampler, vec4 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2D sampler, vec4 P, ivec2 offset);
-
- vec4 textureProjOffset( sampler3D sampler, vec4 P, ivec3 offset);
-ivec4 textureProjOffset(isampler3D sampler, vec4 P, ivec3 offset);
-uvec4 textureProjOffset(usampler3D sampler, vec4 P, ivec3 offset);
-
-float textureProjOffset(sampler1DShadow sampler, vec4 P, int offset);
-float textureProjOffset(sampler2DShadow sampler, vec4 P, ivec2 offset);
-
-/* textureLodOffset */
- vec4 textureLodOffset( sampler1D sampler, float P, float lod, int offset);
-ivec4 textureLodOffset(isampler1D sampler, float P, float lod, int offset);
-uvec4 textureLodOffset(usampler1D sampler, float P, float lod, int offset);
-
- vec4 textureLodOffset( sampler2D sampler, vec2 P, float lod, ivec2 offset);
-ivec4 textureLodOffset(isampler2D sampler, vec2 P, float lod, ivec2 offset);
-uvec4 textureLodOffset(usampler2D sampler, vec2 P, float lod, ivec2 offset);
-
- vec4 textureLodOffset( sampler3D sampler, vec3 P, float lod, ivec3 offset);
-ivec4 textureLodOffset(isampler3D sampler, vec3 P, float lod, ivec3 offset);
-uvec4 textureLodOffset(usampler3D sampler, vec3 P, float lod, ivec3 offset);
-
-float textureLodOffset(sampler1DShadow samp, vec3 P, float lod, int offset);
-float textureLodOffset(sampler2DShadow samp, vec3 P, float lod, ivec2 offset);
-
- vec4 textureLodOffset( sampler1DArray sampler, vec2 P, float lod, int offset);
-ivec4 textureLodOffset(isampler1DArray sampler, vec2 P, float lod, int offset);
-uvec4 textureLodOffset(usampler1DArray sampler, vec2 P, float lod, int offset);
-
- vec4 textureLodOffset( sampler2DArray samp, vec3 P, float lod, ivec2 offset);
-ivec4 textureLodOffset(isampler2DArray samp, vec3 P, float lod, ivec2 offset);
-uvec4 textureLodOffset(usampler2DArray samp, vec3 P, float lod, ivec2 offset);
-
-float textureLodOffset(sampler1DArrayShadow s, vec3 P, float lod, int offset);
-
-/* textureProjLod */
- vec4 textureProjLod( sampler1D sampler, vec2 P, float lod);
-ivec4 textureProjLod(isampler1D sampler, vec2 P, float lod);
-uvec4 textureProjLod(usampler1D sampler, vec2 P, float lod);
- vec4 textureProjLod( sampler1D sampler, vec4 P, float lod);
-ivec4 textureProjLod(isampler1D sampler, vec4 P, float lod);
-uvec4 textureProjLod(usampler1D sampler, vec4 P, float lod);
-
- vec4 textureProjLod( sampler2D sampler, vec3 P, float lod);
-ivec4 textureProjLod(isampler2D sampler, vec3 P, float lod);
-uvec4 textureProjLod(usampler2D sampler, vec3 P, float lod);
- vec4 textureProjLod( sampler2D sampler, vec4 P, float lod);
-ivec4 textureProjLod(isampler2D sampler, vec4 P, float lod);
-uvec4 textureProjLod(usampler2D sampler, vec4 P, float lod);
-
- vec4 textureProjLod( sampler3D sampler, vec4 P, float lod);
-ivec4 textureProjLod(isampler3D sampler, vec4 P, float lod);
-uvec4 textureProjLod(usampler3D sampler, vec4 P, float lod);
-
-float textureProjLod(sampler1DShadow sampler, vec4 P, float lod);
-float textureProjLod(sampler2DShadow sampler, vec4 P, float lod);
-
-/* textureProjLodOffset */
- vec4 textureProjLodOffset( sampler1D sampler, vec2 P, float lod, int offset);
-ivec4 textureProjLodOffset(isampler1D sampler, vec2 P, float lod, int offset);
-uvec4 textureProjLodOffset(usampler1D sampler, vec2 P, float lod, int offset);
- vec4 textureProjLodOffset( sampler1D sampler, vec4 P, float lod, int offset);
-ivec4 textureProjLodOffset(isampler1D sampler, vec4 P, float lod, int offset);
-uvec4 textureProjLodOffset(usampler1D sampler, vec4 P, float lod, int offset);
-
- vec4 textureProjLodOffset( sampler2D sampler, vec3 P, float lod, ivec2 offset);
-ivec4 textureProjLodOffset(isampler2D sampler, vec3 P, float lod, ivec2 offset);
-uvec4 textureProjLodOffset(usampler2D sampler, vec3 P, float lod, ivec2 offset);
- vec4 textureProjLodOffset( sampler2D sampler, vec4 P, float lod, ivec2 offset);
-ivec4 textureProjLodOffset(isampler2D sampler, vec4 P, float lod, ivec2 offset);
-uvec4 textureProjLodOffset(usampler2D sampler, vec4 P, float lod, ivec2 offset);
-
- vec4 textureProjLodOffset( sampler3D sampler, vec4 P, float lod, ivec3 offset);
-ivec4 textureProjLodOffset(isampler3D sampler, vec4 P, float lod, ivec3 offset);
-uvec4 textureProjLodOffset(usampler3D sampler, vec4 P, float lod, ivec3 offset);
-
-float textureProjLodOffset(sampler1DShadow s, vec4 P, float lod, int offset);
-float textureProjLodOffset(sampler2DShadow s, vec4 P, float lod, ivec2 offset);
-
-/* textureGrad */
- vec4 textureGrad( sampler1D sampler, float P, float dPdx, float dPdy);
-ivec4 textureGrad(isampler1D sampler, float P, float dPdx, float dPdy);
-uvec4 textureGrad(usampler1D sampler, float P, float dPdx, float dPdy);
-
- vec4 textureGrad( sampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureGrad(isampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureGrad(usampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-
- vec4 textureGrad( sampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureGrad(isampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureGrad(usampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureGrad( samplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureGrad(isamplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureGrad(usamplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-
-float textureGrad(sampler1DShadow sampler, vec3 P, float dPdx, float dPdy);
-float textureGrad(sampler2DShadow sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-float textureGrad(samplerCubeShadow sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureGrad( sampler1DArray sampler, vec2 P, float dPdx, float dPdy);
-ivec4 textureGrad(isampler1DArray sampler, vec2 P, float dPdx, float dPdy);
-uvec4 textureGrad(usampler1DArray sampler, vec2 P, float dPdx, float dPdy);
-
- vec4 textureGrad( sampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureGrad(isampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureGrad(usampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-
-float textureGrad(sampler1DArrayShadow sampler, vec3 P, float dPdx, float dPdy);
-float textureGrad(sampler2DArrayShadow sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-/* textureGradOffset */
- vec4 textureGradOffset( sampler1D s, float P, float dx, float dy, int off);
-ivec4 textureGradOffset(isampler1D s, float P, float dx, float dy, int offset);
-uvec4 textureGradOffset(usampler1D s, float P, float dx, float dy, int offset);
-
- vec4 textureGradOffset( sampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-ivec4 textureGradOffset(isampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-uvec4 textureGradOffset(usampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-
- vec4 textureGradOffset( sampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-ivec4 textureGradOffset(isampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-uvec4 textureGradOffset(usampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-
-float textureGradOffset(sampler1DShadow s, vec3 P, float dx, float dy, int off);
-float textureGradOffset(sampler2DShadow s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-
- vec4 textureGradOffset( sampler1DArray s, vec2 P, float dx, float dy, int off);
-ivec4 textureGradOffset(isampler1DArray s, vec2 P, float dx, float dy, int off);
-uvec4 textureGradOffset(usampler1DArray s, vec2 P, float dx, float dy, int off);
-
- vec4 textureGradOffset( sampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureGradOffset(isampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureGradOffset(usampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-
-float textureGradOffset(sampler1DArrayShadow s, vec3 P, float dx, float dy, int o);
-float textureGradOffset(sampler2DArrayShadow s, vec4 P, vec2 dx, vec2 dy, ivec2 o);
-
-/* textureProjGrad */
- vec4 textureProjGrad( sampler1D sampler, vec2 P, float dPdx, float dPdy);
-ivec4 textureProjGrad(isampler1D sampler, vec2 P, float dPdx, float dPdy);
-uvec4 textureProjGrad(usampler1D sampler, vec2 P, float dPdx, float dPdy);
- vec4 textureProjGrad( sampler1D sampler, vec4 P, float dPdx, float dPdy);
-ivec4 textureProjGrad(isampler1D sampler, vec4 P, float dPdx, float dPdy);
-uvec4 textureProjGrad(usampler1D sampler, vec4 P, float dPdx, float dPdy);
-
- vec4 textureProjGrad( sampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
- vec4 textureProjGrad( sampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
- vec4 textureProjGrad( sampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureProjGrad(isampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureProjGrad(usampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-
-float textureProjGrad(sampler1DShadow sampler, vec4 P, float dPdx, float dPdy);
-float textureProjGrad(sampler2DShadow sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-/* textureProjGradOffset */
- vec4 textureProjGradOffset( sampler1D s, vec2 P, float dx, float dy, int off);
-ivec4 textureProjGradOffset(isampler1D s, vec2 P, float dx, float dy, int off);
-uvec4 textureProjGradOffset(usampler1D s, vec2 P, float dx, float dy, int off);
- vec4 textureProjGradOffset( sampler1D s, vec4 P, float dx, float dy, int off);
-ivec4 textureProjGradOffset(isampler1D s, vec4 P, float dx, float dy, int off);
-uvec4 textureProjGradOffset(usampler1D s, vec4 P, float dx, float dy, int off);
-
- vec4 textureProjGradOffset( sampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
- vec4 textureProjGradOffset( sampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-
- vec4 textureProjGradOffset( sampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-ivec4 textureProjGradOffset(isampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-uvec4 textureProjGradOffset(usampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-
-float textureProjGradOffset(sampler1DShadow s, vec4 P, float dx, float dy, int o);
-float textureProjGradOffset(sampler2DShadow s, vec4 P, vec2 dx, vec2 dy, ivec2 o);
-
-/*
- * The following texture functions are deprecated:
- */
-vec4 texture1D (sampler1D sampler, float coord);
-vec4 texture1DProj (sampler1D sampler, vec2 coord);
-vec4 texture1DProj (sampler1D sampler, vec4 coord);
-vec4 texture1DLod (sampler1D sampler, float coord, float lod);
-vec4 texture1DProjLod(sampler1D sampler, vec2 coord, float lod);
-vec4 texture1DProjLod(sampler1D sampler, vec4 coord, float lod);
-
-vec4 texture2D (sampler2D sampler, vec2 coord);
-vec4 texture2DProj (sampler2D sampler, vec3 coord);
-vec4 texture2DProj (sampler2D sampler, vec4 coord);
-vec4 texture2DLod (sampler2D sampler, vec2 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec3 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec4 coord, float lod);
-
-vec4 texture3D (sampler3D sampler, vec3 coord);
-vec4 texture3DProj (sampler3D sampler, vec4 coord);
-vec4 texture3DLod (sampler3D sampler, vec3 coord, float lod);
-vec4 texture3DProjLod(sampler3D sampler, vec4 coord, float lod);
-
-vec4 textureCube (samplerCube sampler, vec3 coord);
-vec4 textureCubeLod (samplerCube sampler, vec3 coord, float lod);
-
-vec4 shadow1D (sampler1DShadow sampler, vec3 coord);
-vec4 shadow2D (sampler2DShadow sampler, vec3 coord);
-vec4 shadow1DProj (sampler1DShadow sampler, vec4 coord);
-vec4 shadow2DProj (sampler2DShadow sampler, vec4 coord);
-vec4 shadow1DLod (sampler1DShadow sampler, vec3 coord, float lod);
-vec4 shadow2DLod (sampler2DShadow sampler, vec3 coord, float lod);
-vec4 shadow1DProjLod(sampler1DShadow sampler, vec4 coord, float lod);
-vec4 shadow2DProjLod(sampler2DShadow sampler, vec4 coord, float lod);
-
-/*
- * 8.9 - Noise Functions
- */
-float noise1(float x);
-float noise1(vec2 x);
-float noise1(vec3 x);
-float noise1(vec4 x);
-
-vec2 noise2(float x);
-vec2 noise2(vec2 x);
-vec2 noise2(vec3 x);
-vec2 noise2(vec4 x);
-
-vec3 noise3(float x);
-vec3 noise3(vec2 x);
-vec3 noise3(vec3 x);
-vec3 noise3(vec4 x);
-
-vec4 noise4(float x);
-vec4 noise4(vec2 x);
-vec4 noise4(vec3 x);
-vec4 noise4(vec4 x);
diff --git a/src/glsl/builtins/profiles/130.vert b/src/glsl/builtins/profiles/130.vert
deleted file mode 100644
index 99d127e..0000000
--- a/src/glsl/builtins/profiles/130.vert
+++ /dev/null
@@ -1,2 +0,0 @@
-#version 130
-vec4 ftransform();
diff --git a/src/glsl/builtins/profiles/140.frag b/src/glsl/builtins/profiles/140.frag
deleted file mode 100644
index 2e50a15..0000000
--- a/src/glsl/builtins/profiles/140.frag
+++ /dev/null
@@ -1,140 +0,0 @@
-#version 140
-/* texture - bias variants */
- vec4 texture( sampler1D sampler, float P, float bias);
-ivec4 texture(isampler1D sampler, float P, float bias);
-uvec4 texture(usampler1D sampler, float P, float bias);
-
- vec4 texture( sampler2D sampler, vec2 P, float bias);
-ivec4 texture(isampler2D sampler, vec2 P, float bias);
-uvec4 texture(usampler2D sampler, vec2 P, float bias);
-
- vec4 texture( sampler3D sampler, vec3 P, float bias);
-ivec4 texture(isampler3D sampler, vec3 P, float bias);
-uvec4 texture(usampler3D sampler, vec3 P, float bias);
-
- vec4 texture( samplerCube sampler, vec3 P, float bias);
-ivec4 texture(isamplerCube sampler, vec3 P, float bias);
-uvec4 texture(usamplerCube sampler, vec3 P, float bias);
-
-float texture(sampler1DShadow sampler, vec3 P, float bias);
-float texture(sampler2DShadow sampler, vec3 P, float bias);
-float texture(samplerCubeShadow sampler, vec4 P, float bias);
-
- vec4 texture( sampler1DArray sampler, vec2 P, float bias);
-ivec4 texture(isampler1DArray sampler, vec2 P, float bias);
-uvec4 texture(usampler1DArray sampler, vec2 P, float bias);
-
- vec4 texture( sampler2DArray sampler, vec3 P, float bias);
-ivec4 texture(isampler2DArray sampler, vec3 P, float bias);
-uvec4 texture(usampler2DArray sampler, vec3 P, float bias);
-
-float texture(sampler1DArrayShadow sampler, vec3 P, float bias);
-
-/* textureProj - bias variants */
- vec4 textureProj( sampler1D sampler, vec2 P, float bias);
-ivec4 textureProj(isampler1D sampler, vec2 P, float bias);
-uvec4 textureProj(usampler1D sampler, vec2 P, float bias);
- vec4 textureProj( sampler1D sampler, vec4 P, float bias);
-ivec4 textureProj(isampler1D sampler, vec4 P, float bias);
-uvec4 textureProj(usampler1D sampler, vec4 P, float bias);
-
- vec4 textureProj( sampler2D sampler, vec3 P, float bias);
-ivec4 textureProj(isampler2D sampler, vec3 P, float bias);
-uvec4 textureProj(usampler2D sampler, vec3 P, float bias);
- vec4 textureProj( sampler2D sampler, vec4 P, float bias);
-ivec4 textureProj(isampler2D sampler, vec4 P, float bias);
-uvec4 textureProj(usampler2D sampler, vec4 P, float bias);
-
- vec4 textureProj( sampler3D sampler, vec4 P, float bias);
-ivec4 textureProj(isampler3D sampler, vec4 P, float bias);
-uvec4 textureProj(usampler3D sampler, vec4 P, float bias);
-
-float textureProj(sampler1DShadow sampler, vec4 P, float bias);
-float textureProj(sampler2DShadow sampler, vec4 P, float bias);
-
-/* textureOffset - bias variants */
- vec4 textureOffset( sampler1D sampler, float P, int offset, float bias);
-ivec4 textureOffset(isampler1D sampler, float P, int offset, float bias);
-uvec4 textureOffset(usampler1D sampler, float P, int offset, float bias);
-
- vec4 textureOffset( sampler2D sampler, vec2 P, ivec2 offset, float bias);
-ivec4 textureOffset(isampler2D sampler, vec2 P, ivec2 offset, float bias);
-uvec4 textureOffset(usampler2D sampler, vec2 P, ivec2 offset, float bias);
-
- vec4 textureOffset( sampler3D sampler, vec3 P, ivec3 offset, float bias);
-ivec4 textureOffset(isampler3D sampler, vec3 P, ivec3 offset, float bias);
-uvec4 textureOffset(usampler3D sampler, vec3 P, ivec3 offset, float bias);
-
-float textureOffset(sampler1DShadow sampler, vec3 P, int offset, float bias);
-float textureOffset(sampler2DShadow sampler, vec3 P, ivec2 offset, float bias);
-
- vec4 textureOffset( sampler1DArray sampler, vec2 P, int offset, float bias);
-ivec4 textureOffset(isampler1DArray sampler, vec2 P, int offset, float bias);
-uvec4 textureOffset(usampler1DArray sampler, vec2 P, int offset, float bias);
-
- vec4 textureOffset( sampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-ivec4 textureOffset(isampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-uvec4 textureOffset(usampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-
-float textureOffset(sampler1DArrayShadow samp, vec3 P, int offset, float bias);
-
-/* textureProjOffsetOffset - bias variants */
- vec4 textureProjOffset( sampler1D sampler, vec2 P, int offset, float bias);
-ivec4 textureProjOffset(isampler1D sampler, vec2 P, int offset, float bias);
-uvec4 textureProjOffset(usampler1D sampler, vec2 P, int offset, float bias);
- vec4 textureProjOffset( sampler1D sampler, vec4 P, int offset, float bias);
-ivec4 textureProjOffset(isampler1D sampler, vec4 P, int offset, float bias);
-uvec4 textureProjOffset(usampler1D sampler, vec4 P, int offset, float bias);
-
- vec4 textureProjOffset( sampler2D sampler, vec3 P, ivec2 offset, float bias);
-ivec4 textureProjOffset(isampler2D sampler, vec3 P, ivec2 offset, float bias);
-uvec4 textureProjOffset(usampler2D sampler, vec3 P, ivec2 offset, float bias);
- vec4 textureProjOffset( sampler2D sampler, vec4 P, ivec2 offset, float bias);
-ivec4 textureProjOffset(isampler2D sampler, vec4 P, ivec2 offset, float bias);
-uvec4 textureProjOffset(usampler2D sampler, vec4 P, ivec2 offset, float bias);
-
- vec4 textureProjOffset( sampler3D sampler, vec4 P, ivec3 offset, float bias);
-ivec4 textureProjOffset(isampler3D sampler, vec4 P, ivec3 offset, float bias);
-uvec4 textureProjOffset(usampler3D sampler, vec4 P, ivec3 offset, float bias);
-
-float textureProjOffset(sampler1DShadow s, vec4 P, int offset, float bias);
-float textureProjOffset(sampler2DShadow s, vec4 P, ivec2 offset, float bias);
-
-/*
- * The following texture functions are deprecated:
- */
-vec4 texture1D (sampler1D sampler, float coord, float bias);
-vec4 texture1DProj (sampler1D sampler, vec2 coord, float bias);
-vec4 texture1DProj (sampler1D sampler, vec4 coord, float bias);
-
-vec4 texture2D (sampler2D sampler, vec2 coord, float bias);
-vec4 texture2DProj (sampler2D sampler, vec3 coord, float bias);
-vec4 texture2DProj (sampler2D sampler, vec4 coord, float bias);
-
-vec4 texture3D (sampler3D sampler, vec3 coord, float bias);
-vec4 texture3DProj (sampler3D sampler, vec4 coord, float bias);
-
-vec4 textureCube (samplerCube sampler, vec3 coord, float bias);
-
-vec4 shadow1D (sampler1DShadow sampler, vec3 coord, float bias);
-vec4 shadow2D (sampler2DShadow sampler, vec3 coord, float bias);
-vec4 shadow1DProj (sampler1DShadow sampler, vec4 coord, float bias);
-vec4 shadow2DProj (sampler2DShadow sampler, vec4 coord, float bias);
-
-/*
- * 8.8 - Fragment Processing Functions
- */
-float dFdx(float p);
-vec2 dFdx(vec2 p);
-vec3 dFdx(vec3 p);
-vec4 dFdx(vec4 p);
-
-float dFdy(float p);
-vec2 dFdy(vec2 p);
-vec3 dFdy(vec3 p);
-vec4 dFdy(vec4 p);
-
-float fwidth(float p);
-vec2 fwidth(vec2 p);
-vec3 fwidth(vec3 p);
-vec4 fwidth(vec4 p);
diff --git a/src/glsl/builtins/profiles/140.glsl b/src/glsl/builtins/profiles/140.glsl
deleted file mode 100644
index 90e0481..0000000
--- a/src/glsl/builtins/profiles/140.glsl
+++ /dev/null
@@ -1,989 +0,0 @@
-#version 140
-/*
- * 8.1 - Angle and Trigonometry Functions
- */
-float radians(float degrees);
-vec2 radians(vec2 degrees);
-vec3 radians(vec3 degrees);
-vec4 radians(vec4 degrees);
-
-float degrees(float radians);
-vec2 degrees(vec2 radians);
-vec3 degrees(vec3 radians);
-vec4 degrees(vec4 radians);
-
-float sin(float angle);
-vec2 sin(vec2 angle);
-vec3 sin(vec3 angle);
-vec4 sin(vec4 angle);
-
-float cos(float angle);
-vec2 cos(vec2 angle);
-vec3 cos(vec3 angle);
-vec4 cos(vec4 angle);
-
-float tan(float angle);
-vec2 tan(vec2 angle);
-vec3 tan(vec3 angle);
-vec4 tan(vec4 angle);
-
-float asin(float angle);
-vec2 asin(vec2 angle);
-vec3 asin(vec3 angle);
-vec4 asin(vec4 angle);
-
-float acos(float angle);
-vec2 acos(vec2 angle);
-vec3 acos(vec3 angle);
-vec4 acos(vec4 angle);
-
-float atan(float y, float x);
-vec2 atan(vec2 y, vec2 x);
-vec3 atan(vec3 y, vec3 x);
-vec4 atan(vec4 y, vec4 x);
-
-float atan(float y_over_x);
-vec2 atan(vec2 y_over_x);
-vec3 atan(vec3 y_over_x);
-vec4 atan(vec4 y_over_x);
-
-float sinh(float x);
-vec2 sinh(vec2 x);
-vec3 sinh(vec3 x);
-vec4 sinh(vec4 x);
-
-float cosh(float x);
-vec2 cosh(vec2 x);
-vec3 cosh(vec3 x);
-vec4 cosh(vec4 x);
-
-float tanh(float x);
-vec2 tanh(vec2 x);
-vec3 tanh(vec3 x);
-vec4 tanh(vec4 x);
-
-float asinh(float x);
-vec2 asinh(vec2 x);
-vec3 asinh(vec3 x);
-vec4 asinh(vec4 x);
-
-float acosh(float x);
-vec2 acosh(vec2 x);
-vec3 acosh(vec3 x);
-vec4 acosh(vec4 x);
-
-float atanh(float x);
-vec2 atanh(vec2 x);
-vec3 atanh(vec3 x);
-vec4 atanh(vec4 x);
-
-/*
- * 8.2 - Exponential Functions
- */
-float pow(float x, float y);
-vec2 pow(vec2 x, vec2 y);
-vec3 pow(vec3 x, vec3 y);
-vec4 pow(vec4 x, vec4 y);
-
-float exp(float x);
-vec2 exp(vec2 x);
-vec3 exp(vec3 x);
-vec4 exp(vec4 x);
-
-float log(float x);
-vec2 log(vec2 x);
-vec3 log(vec3 x);
-vec4 log(vec4 x);
-
-float exp2(float x);
-vec2 exp2(vec2 x);
-vec3 exp2(vec3 x);
-vec4 exp2(vec4 x);
-
-float log2(float x);
-vec2 log2(vec2 x);
-vec3 log2(vec3 x);
-vec4 log2(vec4 x);
-
-float sqrt(float x);
-vec2 sqrt(vec2 x);
-vec3 sqrt(vec3 x);
-vec4 sqrt(vec4 x);
-
-float inversesqrt(float x);
-vec2 inversesqrt(vec2 x);
-vec3 inversesqrt(vec3 x);
-vec4 inversesqrt(vec4 x);
-
-/*
- * 8.3 - Common Functions
- */
-float abs(float x);
-vec2 abs(vec2 x);
-vec3 abs(vec3 x);
-vec4 abs(vec4 x);
-int abs(int x);
-ivec2 abs(ivec2 x);
-ivec3 abs(ivec3 x);
-ivec4 abs(ivec4 x);
-
-float sign(float x);
-vec2 sign(vec2 x);
-vec3 sign(vec3 x);
-vec4 sign(vec4 x);
-int sign(int x);
-ivec2 sign(ivec2 x);
-ivec3 sign(ivec3 x);
-ivec4 sign(ivec4 x);
-
-float floor(float x);
-vec2 floor(vec2 x);
-vec3 floor(vec3 x);
-vec4 floor(vec4 x);
-
-float trunc(float x);
-vec2 trunc(vec2 x);
-vec3 trunc(vec3 x);
-vec4 trunc(vec4 x);
-
-float round(float x);
-vec2 round(vec2 x);
-vec3 round(vec3 x);
-vec4 round(vec4 x);
-
-float roundEven(float x);
-vec2 roundEven(vec2 x);
-vec3 roundEven(vec3 x);
-vec4 roundEven(vec4 x);
-
-float ceil(float x);
-vec2 ceil(vec2 x);
-vec3 ceil(vec3 x);
-vec4 ceil(vec4 x);
-
-float fract(float x);
-vec2 fract(vec2 x);
-vec3 fract(vec3 x);
-vec4 fract(vec4 x);
-
-float mod(float x, float y);
-vec2 mod(vec2 x, float y);
-vec3 mod(vec3 x, float y);
-vec4 mod(vec4 x, float y);
-
-vec2 mod(vec2 x, vec2 y);
-vec3 mod(vec3 x, vec3 y);
-vec4 mod(vec4 x, vec4 y);
-
-float modf(float x, out float i);
-vec2 modf(vec2 x, out vec2 i);
-vec3 modf(vec3 x, out vec3 i);
-vec4 modf(vec4 x, out vec4 i);
-
-float min(float x, float y);
-vec2 min(vec2 x, vec2 y);
-vec3 min(vec3 x, vec3 y);
-vec4 min(vec4 x, vec4 y);
-
-vec2 min(vec2 x, float y);
-vec3 min(vec3 x, float y);
-vec4 min(vec4 x, float y);
-
-int min(int x, int y);
-ivec2 min(ivec2 x, ivec2 y);
-ivec3 min(ivec3 x, ivec3 y);
-ivec4 min(ivec4 x, ivec4 y);
-
-ivec2 min(ivec2 x, int y);
-ivec3 min(ivec3 x, int y);
-ivec4 min(ivec4 x, int y);
-
-uint min(uint x, uint y);
-uvec2 min(uvec2 x, uvec2 y);
-uvec3 min(uvec3 x, uvec3 y);
-uvec4 min(uvec4 x, uvec4 y);
-
-uvec2 min(uvec2 x, uint y);
-uvec3 min(uvec3 x, uint y);
-uvec4 min(uvec4 x, uint y);
-
-float max(float x, float y);
-vec2 max(vec2 x, vec2 y);
-vec3 max(vec3 x, vec3 y);
-vec4 max(vec4 x, vec4 y);
-
-vec2 max(vec2 x, float y);
-vec3 max(vec3 x, float y);
-vec4 max(vec4 x, float y);
-
-int max(int x, int y);
-ivec2 max(ivec2 x, ivec2 y);
-ivec3 max(ivec3 x, ivec3 y);
-ivec4 max(ivec4 x, ivec4 y);
-
-ivec2 max(ivec2 x, int y);
-ivec3 max(ivec3 x, int y);
-ivec4 max(ivec4 x, int y);
-
-uint max(uint x, uint y);
-uvec2 max(uvec2 x, uvec2 y);
-uvec3 max(uvec3 x, uvec3 y);
-uvec4 max(uvec4 x, uvec4 y);
-
-uvec2 max(uvec2 x, uint y);
-uvec3 max(uvec3 x, uint y);
-uvec4 max(uvec4 x, uint y);
-
-float clamp(float x, float minVal, float maxVal);
-vec2 clamp(vec2 x, vec2 minVal, vec2 maxVal);
-vec3 clamp(vec3 x, vec3 minVal, vec3 maxVal);
-vec4 clamp(vec4 x, vec4 minVal, vec4 maxVal);
-
-vec2 clamp(vec2 x, float minVal, float maxVal);
-vec3 clamp(vec3 x, float minVal, float maxVal);
-vec4 clamp(vec4 x, float minVal, float maxVal);
-
-int clamp(int x, int minVal, int maxVal);
-ivec2 clamp(ivec2 x, ivec2 minVal, ivec2 maxVal);
-ivec3 clamp(ivec3 x, ivec3 minVal, ivec3 maxVal);
-ivec4 clamp(ivec4 x, ivec4 minVal, ivec4 maxVal);
-
-ivec2 clamp(ivec2 x, int minVal, int maxVal);
-ivec3 clamp(ivec3 x, int minVal, int maxVal);
-ivec4 clamp(ivec4 x, int minVal, int maxVal);
-
-uint clamp(uint x, uint minVal, uint maxVal);
-uvec2 clamp(uvec2 x, uvec2 minVal, uvec2 maxVal);
-uvec3 clamp(uvec3 x, uvec3 minVal, uvec3 maxVal);
-uvec4 clamp(uvec4 x, uvec4 minVal, uvec4 maxVal);
-
-uvec2 clamp(uvec2 x, uint minVal, uint maxVal);
-uvec3 clamp(uvec3 x, uint minVal, uint maxVal);
-uvec4 clamp(uvec4 x, uint minVal, uint maxVal);
-
-float mix(float x, float y, float a);
-vec2 mix(vec2 x, vec2 y, vec2 a);
-vec3 mix(vec3 x, vec3 y, vec3 a);
-vec4 mix(vec4 x, vec4 y, vec4 a);
-
-vec2 mix(vec2 x, vec2 y, float a);
-vec3 mix(vec3 x, vec3 y, float a);
-vec4 mix(vec4 x, vec4 y, float a);
-
-float mix(float x, float y, bool a);
-vec2 mix(vec2 x, vec2 y, bvec2 a);
-vec3 mix(vec3 x, vec3 y, bvec3 a);
-vec4 mix(vec4 x, vec4 y, bvec4 a);
-
-float step(float edge, float x);
-vec2 step(vec2 edge, vec2 x);
-vec3 step(vec3 edge, vec3 x);
-vec4 step(vec4 edge, vec4 x);
-
-vec2 step(float edge, vec2 x);
-vec3 step(float edge, vec3 x);
-vec4 step(float edge, vec4 x);
-
-float smoothstep(float edge0, float edge1, float x);
-vec2 smoothstep(vec2 edge0, vec2 edge1, vec2 x);
-vec3 smoothstep(vec3 edge0, vec3 edge1, vec3 x);
-vec4 smoothstep(vec4 edge0, vec4 edge1, vec4 x);
-
-vec2 smoothstep(float edge0, float edge1, vec2 x);
-vec3 smoothstep(float edge0, float edge1, vec3 x);
-vec4 smoothstep(float edge0, float edge1, vec4 x);
-
-bool isnan(float x);
-bvec2 isnan(vec2 x);
-bvec3 isnan(vec3 x);
-bvec4 isnan(vec4 x);
-
-bool isinf(float x);
-bvec2 isinf(vec2 x);
-bvec3 isinf(vec3 x);
-bvec4 isinf(vec4 x);
-
-/*
- * 8.4 - Geometric Functions
- */
-float length(float x);
-float length(vec2 x);
-float length(vec3 x);
-float length(vec4 x);
-
-float distance(float p0, float p1);
-float distance(vec2 p0, vec2 p1);
-float distance(vec3 p0, vec3 p1);
-float distance(vec4 p0, vec4 p1);
-
-float dot(float x, float y);
-float dot(vec2 x, vec2 y);
-float dot(vec3 x, vec3 y);
-float dot(vec4 x, vec4 y);
-
-vec3 cross(vec3 x, vec3 y);
-
-float normalize(float x);
-vec2 normalize(vec2 x);
-vec3 normalize(vec3 x);
-vec4 normalize(vec4 x);
-
-float faceforward(float N, float I, float Nref);
-vec2 faceforward(vec2 N, vec2 I, vec2 Nref);
-vec3 faceforward(vec3 N, vec3 I, vec3 Nref);
-vec4 faceforward(vec4 N, vec4 I, vec4 Nref);
-
-float reflect(float I, float N);
-vec2 reflect(vec2 I, vec2 N);
-vec3 reflect(vec3 I, vec3 N);
-vec4 reflect(vec4 I, vec4 N);
-
-float refract(float I, float N, float eta);
-vec2 refract(vec2 I, vec2 N, float eta);
-vec3 refract(vec3 I, vec3 N, float eta);
-vec4 refract(vec4 I, vec4 N, float eta);
-
-
-/*
- * 8.5 - Matrix Functions
- */
-mat2 matrixCompMult(mat2 x, mat2 y);
-mat3 matrixCompMult(mat3 x, mat3 y);
-mat4 matrixCompMult(mat4 x, mat4 y);
-mat2x3 matrixCompMult(mat2x3 x, mat2x3 y);
-mat2x4 matrixCompMult(mat2x4 x, mat2x4 y);
-mat3x2 matrixCompMult(mat3x2 x, mat3x2 y);
-mat3x4 matrixCompMult(mat3x4 x, mat3x4 y);
-mat4x2 matrixCompMult(mat4x2 x, mat4x2 y);
-mat4x3 matrixCompMult(mat4x3 x, mat4x3 y);
-
-mat2 outerProduct(vec2 c, vec2 r);
-mat3 outerProduct(vec3 c, vec3 r);
-mat4 outerProduct(vec4 c, vec4 r);
-
-mat2x3 outerProduct(vec3 c, vec2 r);
-mat3x2 outerProduct(vec2 c, vec3 r);
-
-mat2x4 outerProduct(vec4 c, vec2 r);
-mat4x2 outerProduct(vec2 c, vec4 r);
-
-mat3x4 outerProduct(vec4 c, vec3 r);
-mat4x3 outerProduct(vec3 c, vec4 r);
-
-mat2 transpose(mat2 m);
-mat3 transpose(mat3 m);
-mat4 transpose(mat4 m);
-
-mat2x3 transpose(mat3x2 m);
-mat3x2 transpose(mat2x3 m);
-
-mat2x4 transpose(mat4x2 m);
-mat4x2 transpose(mat2x4 m);
-
-mat3x4 transpose(mat4x3 m);
-mat4x3 transpose(mat3x4 m);
-
-mat2 inverse(mat2 m);
-mat3 inverse(mat3 m);
-mat4 inverse(mat4 m);
-
-/*
- * 8.6 - Vector Relational Functions
- */
-bvec2 lessThan( vec2 x, vec2 y);
-bvec3 lessThan( vec3 x, vec3 y);
-bvec4 lessThan( vec4 x, vec4 y);
-bvec2 lessThan(ivec2 x, ivec2 y);
-bvec3 lessThan(ivec3 x, ivec3 y);
-bvec4 lessThan(ivec4 x, ivec4 y);
-bvec2 lessThan(uvec2 x, uvec2 y);
-bvec3 lessThan(uvec3 x, uvec3 y);
-bvec4 lessThan(uvec4 x, uvec4 y);
-
-bvec2 lessThanEqual( vec2 x, vec2 y);
-bvec3 lessThanEqual( vec3 x, vec3 y);
-bvec4 lessThanEqual( vec4 x, vec4 y);
-bvec2 lessThanEqual(ivec2 x, ivec2 y);
-bvec3 lessThanEqual(ivec3 x, ivec3 y);
-bvec4 lessThanEqual(ivec4 x, ivec4 y);
-bvec2 lessThanEqual(uvec2 x, uvec2 y);
-bvec3 lessThanEqual(uvec3 x, uvec3 y);
-bvec4 lessThanEqual(uvec4 x, uvec4 y);
-
-bvec2 greaterThan( vec2 x, vec2 y);
-bvec3 greaterThan( vec3 x, vec3 y);
-bvec4 greaterThan( vec4 x, vec4 y);
-bvec2 greaterThan(ivec2 x, ivec2 y);
-bvec3 greaterThan(ivec3 x, ivec3 y);
-bvec4 greaterThan(ivec4 x, ivec4 y);
-bvec2 greaterThan(uvec2 x, uvec2 y);
-bvec3 greaterThan(uvec3 x, uvec3 y);
-bvec4 greaterThan(uvec4 x, uvec4 y);
-
-bvec2 greaterThanEqual( vec2 x, vec2 y);
-bvec3 greaterThanEqual( vec3 x, vec3 y);
-bvec4 greaterThanEqual( vec4 x, vec4 y);
-bvec2 greaterThanEqual(ivec2 x, ivec2 y);
-bvec3 greaterThanEqual(ivec3 x, ivec3 y);
-bvec4 greaterThanEqual(ivec4 x, ivec4 y);
-bvec2 greaterThanEqual(uvec2 x, uvec2 y);
-bvec3 greaterThanEqual(uvec3 x, uvec3 y);
-bvec4 greaterThanEqual(uvec4 x, uvec4 y);
-
-bvec2 equal( vec2 x, vec2 y);
-bvec3 equal( vec3 x, vec3 y);
-bvec4 equal( vec4 x, vec4 y);
-bvec2 equal(ivec2 x, ivec2 y);
-bvec3 equal(ivec3 x, ivec3 y);
-bvec4 equal(ivec4 x, ivec4 y);
-bvec2 equal(uvec2 x, uvec2 y);
-bvec3 equal(uvec3 x, uvec3 y);
-bvec4 equal(uvec4 x, uvec4 y);
-bvec2 equal(bvec2 x, bvec2 y);
-bvec3 equal(bvec3 x, bvec3 y);
-bvec4 equal(bvec4 x, bvec4 y);
-
-bvec2 notEqual( vec2 x, vec2 y);
-bvec3 notEqual( vec3 x, vec3 y);
-bvec4 notEqual( vec4 x, vec4 y);
-bvec2 notEqual(ivec2 x, ivec2 y);
-bvec3 notEqual(ivec3 x, ivec3 y);
-bvec4 notEqual(ivec4 x, ivec4 y);
-bvec2 notEqual(uvec2 x, uvec2 y);
-bvec3 notEqual(uvec3 x, uvec3 y);
-bvec4 notEqual(uvec4 x, uvec4 y);
-bvec2 notEqual(bvec2 x, bvec2 y);
-bvec3 notEqual(bvec3 x, bvec3 y);
-bvec4 notEqual(bvec4 x, bvec4 y);
-
-bool any(bvec2 x);
-bool any(bvec3 x);
-bool any(bvec4 x);
-
-bool all(bvec2 x);
-bool all(bvec3 x);
-bool all(bvec4 x);
-
-bvec2 not(bvec2 x);
-bvec3 not(bvec3 x);
-bvec4 not(bvec4 x);
-
-/*
- * 8.7 - Texture Lookup Functions
- */
-
-/* textureSize */
-int textureSize( sampler1D sampler, int lod);
-int textureSize(isampler1D sampler, int lod);
-int textureSize(usampler1D sampler, int lod);
-
-ivec2 textureSize( sampler2D sampler, int lod);
-ivec2 textureSize(isampler2D sampler, int lod);
-ivec2 textureSize(usampler2D sampler, int lod);
-
-ivec3 textureSize( sampler3D sampler, int lod);
-ivec3 textureSize(isampler3D sampler, int lod);
-ivec3 textureSize(usampler3D sampler, int lod);
-
-ivec2 textureSize( samplerCube sampler, int lod);
-ivec2 textureSize(isamplerCube sampler, int lod);
-ivec2 textureSize(usamplerCube sampler, int lod);
-
-int textureSize(sampler1DShadow sampler, int lod);
-ivec2 textureSize(sampler2DShadow sampler, int lod);
-ivec2 textureSize(samplerCubeShadow sampler, int lod);
-
-ivec2 textureSize( sampler1DArray sampler, int lod);
-ivec2 textureSize(isampler1DArray sampler, int lod);
-ivec2 textureSize(usampler1DArray sampler, int lod);
-ivec3 textureSize( sampler2DArray sampler, int lod);
-ivec3 textureSize(isampler2DArray sampler, int lod);
-ivec3 textureSize(usampler2DArray sampler, int lod);
-
-ivec2 textureSize(sampler1DArrayShadow sampler, int lod);
-ivec3 textureSize(sampler2DArrayShadow sampler, int lod);
-
-ivec2 textureSize(sampler2DRect sampler);
-ivec2 textureSize(isampler2DRect sampler);
-ivec2 textureSize(usampler2DRect sampler);
-ivec2 textureSize(sampler2DRectShadow sampler);
-
-int textureSize( samplerBuffer sampler);
-int textureSize(isamplerBuffer sampler);
-int textureSize(usamplerBuffer sampler);
-
-/* texture - no bias */
- vec4 texture( sampler1D sampler, float P);
-ivec4 texture(isampler1D sampler, float P);
-uvec4 texture(usampler1D sampler, float P);
-
- vec4 texture( sampler2D sampler, vec2 P);
-ivec4 texture(isampler2D sampler, vec2 P);
-uvec4 texture(usampler2D sampler, vec2 P);
-
- vec4 texture( sampler3D sampler, vec3 P);
-ivec4 texture(isampler3D sampler, vec3 P);
-uvec4 texture(usampler3D sampler, vec3 P);
-
- vec4 texture( samplerCube sampler, vec3 P);
-ivec4 texture(isamplerCube sampler, vec3 P);
-uvec4 texture(usamplerCube sampler, vec3 P);
-
-float texture(sampler1DShadow sampler, vec3 P);
-float texture(sampler2DShadow sampler, vec3 P);
-float texture(samplerCubeShadow sampler, vec4 P);
-
- vec4 texture( sampler1DArray sampler, vec2 P);
-ivec4 texture(isampler1DArray sampler, vec2 P);
-uvec4 texture(usampler1DArray sampler, vec2 P);
-
- vec4 texture( sampler2DArray sampler, vec3 P);
-ivec4 texture(isampler2DArray sampler, vec3 P);
-uvec4 texture(usampler2DArray sampler, vec3 P);
-
-float texture(sampler1DArrayShadow sampler, vec3 P);
-float texture(sampler2DArrayShadow sampler, vec4 P);
-
- vec4 texture( sampler2DRect sampler, vec2 P);
-ivec4 texture(isampler2DRect sampler, vec2 P);
-uvec4 texture(usampler2DRect sampler, vec2 P);
-
-float texture(sampler2DRectShadow sampler, vec3 P);
-
-/* textureProj - no bias */
- vec4 textureProj( sampler1D sampler, vec2 P);
-ivec4 textureProj(isampler1D sampler, vec2 P);
-uvec4 textureProj(usampler1D sampler, vec2 P);
- vec4 textureProj( sampler1D sampler, vec4 P);
-ivec4 textureProj(isampler1D sampler, vec4 P);
-uvec4 textureProj(usampler1D sampler, vec4 P);
-
- vec4 textureProj( sampler2D sampler, vec3 P);
-ivec4 textureProj(isampler2D sampler, vec3 P);
-uvec4 textureProj(usampler2D sampler, vec3 P);
- vec4 textureProj( sampler2D sampler, vec4 P);
-ivec4 textureProj(isampler2D sampler, vec4 P);
-uvec4 textureProj(usampler2D sampler, vec4 P);
-
- vec4 textureProj( sampler3D sampler, vec4 P);
-ivec4 textureProj(isampler3D sampler, vec4 P);
-uvec4 textureProj(usampler3D sampler, vec4 P);
-
-float textureProj(sampler1DShadow sampler, vec4 P);
-float textureProj(sampler2DShadow sampler, vec4 P);
-
- vec4 textureProj( sampler2DRect sampler, vec3 P);
-ivec4 textureProj(isampler2DRect sampler, vec3 P);
-uvec4 textureProj(usampler2DRect sampler, vec3 P);
- vec4 textureProj( sampler2DRect sampler, vec4 P);
-ivec4 textureProj(isampler2DRect sampler, vec4 P);
-uvec4 textureProj(usampler2DRect sampler, vec4 P);
-
-float textureProj(sampler2DRectShadow sampler, vec4 P);
-
-/* textureLod */
- vec4 textureLod( sampler1D sampler, float P, float lod);
-ivec4 textureLod(isampler1D sampler, float P, float lod);
-uvec4 textureLod(usampler1D sampler, float P, float lod);
-
- vec4 textureLod( sampler2D sampler, vec2 P, float lod);
-ivec4 textureLod(isampler2D sampler, vec2 P, float lod);
-uvec4 textureLod(usampler2D sampler, vec2 P, float lod);
-
- vec4 textureLod( sampler3D sampler, vec3 P, float lod);
-ivec4 textureLod(isampler3D sampler, vec3 P, float lod);
-uvec4 textureLod(usampler3D sampler, vec3 P, float lod);
-
- vec4 textureLod( samplerCube sampler, vec3 P, float lod);
-ivec4 textureLod(isamplerCube sampler, vec3 P, float lod);
-uvec4 textureLod(usamplerCube sampler, vec3 P, float lod);
-
-float textureLod(sampler1DShadow sampler, vec3 P, float lod);
-float textureLod(sampler2DShadow sampler, vec3 P, float lod);
-
- vec4 textureLod( sampler1DArray sampler, vec2 P, float lod);
-ivec4 textureLod(isampler1DArray sampler, vec2 P, float lod);
-uvec4 textureLod(usampler1DArray sampler, vec2 P, float lod);
-
- vec4 textureLod( sampler2DArray sampler, vec3 P, float lod);
-ivec4 textureLod(isampler2DArray sampler, vec3 P, float lod);
-uvec4 textureLod(usampler2DArray sampler, vec3 P, float lod);
-
-float textureLod(sampler1DArrayShadow sampler, vec3 P, float lod);
-
-/* textureOffset - no bias */
- vec4 textureOffset( sampler1D sampler, float P, int offset);
-ivec4 textureOffset(isampler1D sampler, float P, int offset);
-uvec4 textureOffset(usampler1D sampler, float P, int offset);
-
- vec4 textureOffset( sampler2D sampler, vec2 P, ivec2 offset);
-ivec4 textureOffset(isampler2D sampler, vec2 P, ivec2 offset);
-uvec4 textureOffset(usampler2D sampler, vec2 P, ivec2 offset);
-
- vec4 textureOffset( sampler3D sampler, vec3 P, ivec3 offset);
-ivec4 textureOffset(isampler3D sampler, vec3 P, ivec3 offset);
-uvec4 textureOffset(usampler3D sampler, vec3 P, ivec3 offset);
-
- vec4 textureOffset( sampler2DRect sampler, vec2 P, ivec2 offset);
-ivec4 textureOffset(isampler2DRect sampler, vec2 P, ivec2 offset);
-uvec4 textureOffset(usampler2DRect sampler, vec2 P, ivec2 offset);
-
-float textureOffset(sampler2DRectShadow sampler, vec3 P, ivec2 offset);
-
-float textureOffset(sampler1DShadow sampler, vec3 P, int offset);
-float textureOffset(sampler2DShadow sampler, vec3 P, ivec2 offset);
-
- vec4 textureOffset( sampler1DArray sampler, vec2 P, int offset);
-ivec4 textureOffset(isampler1DArray sampler, vec2 P, int offset);
-uvec4 textureOffset(usampler1DArray sampler, vec2 P, int offset);
-
- vec4 textureOffset( sampler2DArray sampler, vec3 P, ivec2 offset);
-ivec4 textureOffset(isampler2DArray sampler, vec3 P, ivec2 offset);
-uvec4 textureOffset(usampler2DArray sampler, vec3 P, ivec2 offset);
-
-float textureOffset(sampler1DArrayShadow sampler, vec3 P, int offset);
-
-/* texelFetch */
- vec4 texelFetch( sampler1D sampler, int P, int lod);
-ivec4 texelFetch(isampler1D sampler, int P, int lod);
-uvec4 texelFetch(usampler1D sampler, int P, int lod);
-
- vec4 texelFetch( sampler2D sampler, ivec2 P, int lod);
-ivec4 texelFetch(isampler2D sampler, ivec2 P, int lod);
-uvec4 texelFetch(usampler2D sampler, ivec2 P, int lod);
-
- vec4 texelFetch( sampler3D sampler, ivec3 P, int lod);
-ivec4 texelFetch(isampler3D sampler, ivec3 P, int lod);
-uvec4 texelFetch(usampler3D sampler, ivec3 P, int lod);
-
- vec4 texelFetch( sampler2DRect sampler, ivec2 P);
-ivec4 texelFetch(isampler2DRect sampler, ivec2 P);
-uvec4 texelFetch(usampler2DRect sampler, ivec2 P);
-
- vec4 texelFetch( sampler1DArray sampler, ivec2 P, int lod);
-ivec4 texelFetch(isampler1DArray sampler, ivec2 P, int lod);
-uvec4 texelFetch(usampler1DArray sampler, ivec2 P, int lod);
-
- vec4 texelFetch( sampler2DArray sampler, ivec3 P, int lod);
-ivec4 texelFetch(isampler2DArray sampler, ivec3 P, int lod);
-uvec4 texelFetch(usampler2DArray sampler, ivec3 P, int lod);
-
- vec4 texelFetch( samplerBuffer sampler, int P);
-ivec4 texelFetch(isamplerBuffer sampler, int P);
-uvec4 texelFetch(usamplerBuffer sampler, int P);
-
-/* texelFetchOffset */
- vec4 texelFetchOffset( sampler1D sampler, int P, int lod, int offset);
-ivec4 texelFetchOffset(isampler1D sampler, int P, int lod, int offset);
-uvec4 texelFetchOffset(usampler1D sampler, int P, int lod, int offset);
-
- vec4 texelFetchOffset( sampler2D sampler, ivec2 P, int lod, ivec2 offset);
-ivec4 texelFetchOffset(isampler2D sampler, ivec2 P, int lod, ivec2 offset);
-uvec4 texelFetchOffset(usampler2D sampler, ivec2 P, int lod, ivec2 offset);
-
- vec4 texelFetchOffset( sampler3D sampler, ivec3 P, int lod, ivec3 offset);
-ivec4 texelFetchOffset(isampler3D sampler, ivec3 P, int lod, ivec3 offset);
-uvec4 texelFetchOffset(usampler3D sampler, ivec3 P, int lod, ivec3 offset);
-
- vec4 texelFetchOffset( sampler2DRect sampler, ivec2 P, ivec2 offset);
-ivec4 texelFetchOffset(isampler2DRect sampler, ivec2 P, ivec2 offset);
-uvec4 texelFetchOffset(usampler2DRect sampler, ivec2 P, ivec2 offset);
-
- vec4 texelFetchOffset( sampler1DArray sampler, ivec2 P, int lod, int offset);
-ivec4 texelFetchOffset(isampler1DArray sampler, ivec2 P, int lod, int offset);
-uvec4 texelFetchOffset(usampler1DArray sampler, ivec2 P, int lod, int offset);
-
- vec4 texelFetchOffset( sampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-ivec4 texelFetchOffset(isampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-uvec4 texelFetchOffset(usampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-
-/* textureProjOffset - no bias */
- vec4 textureProjOffset( sampler1D sampler, vec2 P, int offset);
-ivec4 textureProjOffset(isampler1D sampler, vec2 P, int offset);
-uvec4 textureProjOffset(usampler1D sampler, vec2 P, int offset);
- vec4 textureProjOffset( sampler1D sampler, vec4 P, int offset);
-ivec4 textureProjOffset(isampler1D sampler, vec4 P, int offset);
-uvec4 textureProjOffset(usampler1D sampler, vec4 P, int offset);
-
- vec4 textureProjOffset( sampler2D sampler, vec3 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2D sampler, vec3 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2D sampler, vec3 P, ivec2 offset);
- vec4 textureProjOffset( sampler2D sampler, vec4 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2D sampler, vec4 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2D sampler, vec4 P, ivec2 offset);
-
- vec4 textureProjOffset( sampler3D sampler, vec4 P, ivec3 offset);
-ivec4 textureProjOffset(isampler3D sampler, vec4 P, ivec3 offset);
-uvec4 textureProjOffset(usampler3D sampler, vec4 P, ivec3 offset);
-
- vec4 textureProjOffset( sampler2DRect sampler, vec3 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2DRect sampler, vec3 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2DRect sampler, vec3 P, ivec2 offset);
- vec4 textureProjOffset( sampler2DRect sampler, vec4 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2DRect sampler, vec4 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2DRect sampler, vec4 P, ivec2 offset);
-
-float textureProjOffset(sampler2DRectShadow sampler, vec4 P, ivec2 offset);
-
-float textureProjOffset(sampler1DShadow sampler, vec4 P, int offset);
-float textureProjOffset(sampler2DShadow sampler, vec4 P, ivec2 offset);
-
-/* textureLodOffset */
- vec4 textureLodOffset( sampler1D sampler, float P, float lod, int offset);
-ivec4 textureLodOffset(isampler1D sampler, float P, float lod, int offset);
-uvec4 textureLodOffset(usampler1D sampler, float P, float lod, int offset);
-
- vec4 textureLodOffset( sampler2D sampler, vec2 P, float lod, ivec2 offset);
-ivec4 textureLodOffset(isampler2D sampler, vec2 P, float lod, ivec2 offset);
-uvec4 textureLodOffset(usampler2D sampler, vec2 P, float lod, ivec2 offset);
-
- vec4 textureLodOffset( sampler3D sampler, vec3 P, float lod, ivec3 offset);
-ivec4 textureLodOffset(isampler3D sampler, vec3 P, float lod, ivec3 offset);
-uvec4 textureLodOffset(usampler3D sampler, vec3 P, float lod, ivec3 offset);
-
-float textureLodOffset(sampler1DShadow samp, vec3 P, float lod, int offset);
-float textureLodOffset(sampler2DShadow samp, vec3 P, float lod, ivec2 offset);
-
- vec4 textureLodOffset( sampler1DArray sampler, vec2 P, float lod, int offset);
-ivec4 textureLodOffset(isampler1DArray sampler, vec2 P, float lod, int offset);
-uvec4 textureLodOffset(usampler1DArray sampler, vec2 P, float lod, int offset);
-
- vec4 textureLodOffset( sampler2DArray samp, vec3 P, float lod, ivec2 offset);
-ivec4 textureLodOffset(isampler2DArray samp, vec3 P, float lod, ivec2 offset);
-uvec4 textureLodOffset(usampler2DArray samp, vec3 P, float lod, ivec2 offset);
-
-float textureLodOffset(sampler1DArrayShadow s, vec3 P, float lod, int offset);
-
-/* textureProjLod */
- vec4 textureProjLod( sampler1D sampler, vec2 P, float lod);
-ivec4 textureProjLod(isampler1D sampler, vec2 P, float lod);
-uvec4 textureProjLod(usampler1D sampler, vec2 P, float lod);
- vec4 textureProjLod( sampler1D sampler, vec4 P, float lod);
-ivec4 textureProjLod(isampler1D sampler, vec4 P, float lod);
-uvec4 textureProjLod(usampler1D sampler, vec4 P, float lod);
-
- vec4 textureProjLod( sampler2D sampler, vec3 P, float lod);
-ivec4 textureProjLod(isampler2D sampler, vec3 P, float lod);
-uvec4 textureProjLod(usampler2D sampler, vec3 P, float lod);
- vec4 textureProjLod( sampler2D sampler, vec4 P, float lod);
-ivec4 textureProjLod(isampler2D sampler, vec4 P, float lod);
-uvec4 textureProjLod(usampler2D sampler, vec4 P, float lod);
-
- vec4 textureProjLod( sampler3D sampler, vec4 P, float lod);
-ivec4 textureProjLod(isampler3D sampler, vec4 P, float lod);
-uvec4 textureProjLod(usampler3D sampler, vec4 P, float lod);
-
-float textureProjLod(sampler1DShadow sampler, vec4 P, float lod);
-float textureProjLod(sampler2DShadow sampler, vec4 P, float lod);
-
-/* textureProjLodOffset */
- vec4 textureProjLodOffset( sampler1D sampler, vec2 P, float lod, int offset);
-ivec4 textureProjLodOffset(isampler1D sampler, vec2 P, float lod, int offset);
-uvec4 textureProjLodOffset(usampler1D sampler, vec2 P, float lod, int offset);
- vec4 textureProjLodOffset( sampler1D sampler, vec4 P, float lod, int offset);
-ivec4 textureProjLodOffset(isampler1D sampler, vec4 P, float lod, int offset);
-uvec4 textureProjLodOffset(usampler1D sampler, vec4 P, float lod, int offset);
-
- vec4 textureProjLodOffset( sampler2D sampler, vec3 P, float lod, ivec2 offset);
-ivec4 textureProjLodOffset(isampler2D sampler, vec3 P, float lod, ivec2 offset);
-uvec4 textureProjLodOffset(usampler2D sampler, vec3 P, float lod, ivec2 offset);
- vec4 textureProjLodOffset( sampler2D sampler, vec4 P, float lod, ivec2 offset);
-ivec4 textureProjLodOffset(isampler2D sampler, vec4 P, float lod, ivec2 offset);
-uvec4 textureProjLodOffset(usampler2D sampler, vec4 P, float lod, ivec2 offset);
-
- vec4 textureProjLodOffset( sampler3D sampler, vec4 P, float lod, ivec3 offset);
-ivec4 textureProjLodOffset(isampler3D sampler, vec4 P, float lod, ivec3 offset);
-uvec4 textureProjLodOffset(usampler3D sampler, vec4 P, float lod, ivec3 offset);
-
-float textureProjLodOffset(sampler1DShadow s, vec4 P, float lod, int offset);
-float textureProjLodOffset(sampler2DShadow s, vec4 P, float lod, ivec2 offset);
-
-/* textureGrad */
- vec4 textureGrad( sampler1D sampler, float P, float dPdx, float dPdy);
-ivec4 textureGrad(isampler1D sampler, float P, float dPdx, float dPdy);
-uvec4 textureGrad(usampler1D sampler, float P, float dPdx, float dPdy);
-
- vec4 textureGrad( sampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureGrad(isampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureGrad(usampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-
- vec4 textureGrad( sampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureGrad(isampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureGrad(usampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureGrad( samplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureGrad(isamplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureGrad(usamplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureGrad( sampler2DRect sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureGrad(isampler2DRect sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureGrad(usampler2DRect sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-
-float textureGrad(sampler2DRectShadow sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-
-float textureGrad(sampler1DShadow sampler, vec3 P, float dPdx, float dPdy);
-float textureGrad(sampler2DShadow sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-float textureGrad(samplerCubeShadow sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureGrad( sampler1DArray sampler, vec2 P, float dPdx, float dPdy);
-ivec4 textureGrad(isampler1DArray sampler, vec2 P, float dPdx, float dPdy);
-uvec4 textureGrad(usampler1DArray sampler, vec2 P, float dPdx, float dPdy);
-
- vec4 textureGrad( sampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureGrad(isampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureGrad(usampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-
-float textureGrad(sampler1DArrayShadow sampler, vec3 P, float dPdx, float dPdy);
-float textureGrad(sampler2DArrayShadow sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-/* textureGradOffset */
- vec4 textureGradOffset( sampler1D s, float P, float dx, float dy, int off);
-ivec4 textureGradOffset(isampler1D s, float P, float dx, float dy, int offset);
-uvec4 textureGradOffset(usampler1D s, float P, float dx, float dy, int offset);
-
- vec4 textureGradOffset( sampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-ivec4 textureGradOffset(isampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-uvec4 textureGradOffset(usampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-
- vec4 textureGradOffset( sampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-ivec4 textureGradOffset(isampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-uvec4 textureGradOffset(usampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-
- vec4 textureGradOffset( sampler2DRect s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-ivec4 textureGradOffset(isampler2DRect s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-uvec4 textureGradOffset(usampler2DRect s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-
-float textureGradOffset(sampler2DRectShadow s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-
-float textureGradOffset(sampler1DShadow s, vec3 P, float dx, float dy, int off);
-float textureGradOffset(sampler2DShadow s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-
- vec4 textureGradOffset( sampler1DArray s, vec2 P, float dx, float dy, int off);
-ivec4 textureGradOffset(isampler1DArray s, vec2 P, float dx, float dy, int off);
-uvec4 textureGradOffset(usampler1DArray s, vec2 P, float dx, float dy, int off);
-
- vec4 textureGradOffset( sampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureGradOffset(isampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureGradOffset(usampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-
-float textureGradOffset(sampler1DArrayShadow s, vec3 P, float dx, float dy, int o);
-float textureGradOffset(sampler2DArrayShadow s, vec4 P, vec2 dx, vec2 dy, ivec2 o);
-
-/* textureProjGrad */
- vec4 textureProjGrad( sampler1D sampler, vec2 P, float dPdx, float dPdy);
-ivec4 textureProjGrad(isampler1D sampler, vec2 P, float dPdx, float dPdy);
-uvec4 textureProjGrad(usampler1D sampler, vec2 P, float dPdx, float dPdy);
- vec4 textureProjGrad( sampler1D sampler, vec4 P, float dPdx, float dPdy);
-ivec4 textureProjGrad(isampler1D sampler, vec4 P, float dPdx, float dPdy);
-uvec4 textureProjGrad(usampler1D sampler, vec4 P, float dPdx, float dPdy);
-
- vec4 textureProjGrad( sampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
- vec4 textureProjGrad( sampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
- vec4 textureProjGrad( sampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureProjGrad(isampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureProjGrad(usampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureProjGrad( sampler2DRect sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2DRect sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2DRect sampler, vec3 P, vec2 dPdx, vec2 dPdy);
- vec4 textureProjGrad( sampler2DRect sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2DRect sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2DRect sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-float textureProjGrad(sampler2DRectShadow sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-float textureProjGrad(sampler1DShadow sampler, vec4 P, float dPdx, float dPdy);
-float textureProjGrad(sampler2DShadow sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-/* textureProjGradOffset */
- vec4 textureProjGradOffset( sampler1D s, vec2 P, float dx, float dy, int off);
-ivec4 textureProjGradOffset(isampler1D s, vec2 P, float dx, float dy, int off);
-uvec4 textureProjGradOffset(usampler1D s, vec2 P, float dx, float dy, int off);
- vec4 textureProjGradOffset( sampler1D s, vec4 P, float dx, float dy, int off);
-ivec4 textureProjGradOffset(isampler1D s, vec4 P, float dx, float dy, int off);
-uvec4 textureProjGradOffset(usampler1D s, vec4 P, float dx, float dy, int off);
-
- vec4 textureProjGradOffset( sampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
- vec4 textureProjGradOffset( sampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-
- vec4 textureProjGradOffset( sampler2DRect s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2DRect s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2DRect s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
- vec4 textureProjGradOffset( sampler2DRect s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2DRect s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2DRect s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-
-float textureProjGradOffset(sampler2DRectShadow s, vec4 P, vec2 dx, vec2 dy, ivec2 o);
-
- vec4 textureProjGradOffset( sampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-ivec4 textureProjGradOffset(isampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-uvec4 textureProjGradOffset(usampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-
-float textureProjGradOffset(sampler1DShadow s, vec4 P, float dx, float dy, int o);
-float textureProjGradOffset(sampler2DShadow s, vec4 P, vec2 dx, vec2 dy, ivec2 o);
-
-/*
- * The following texture functions are deprecated:
- */
-vec4 texture1D (sampler1D sampler, float coord);
-vec4 texture1DProj (sampler1D sampler, vec2 coord);
-vec4 texture1DProj (sampler1D sampler, vec4 coord);
-vec4 texture1DLod (sampler1D sampler, float coord, float lod);
-vec4 texture1DProjLod(sampler1D sampler, vec2 coord, float lod);
-vec4 texture1DProjLod(sampler1D sampler, vec4 coord, float lod);
-
-vec4 texture2D (sampler2D sampler, vec2 coord);
-vec4 texture2DProj (sampler2D sampler, vec3 coord);
-vec4 texture2DProj (sampler2D sampler, vec4 coord);
-vec4 texture2DLod (sampler2D sampler, vec2 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec3 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec4 coord, float lod);
-
-vec4 texture3D (sampler3D sampler, vec3 coord);
-vec4 texture3DProj (sampler3D sampler, vec4 coord);
-vec4 texture3DLod (sampler3D sampler, vec3 coord, float lod);
-vec4 texture3DProjLod(sampler3D sampler, vec4 coord, float lod);
-
-vec4 textureCube (samplerCube sampler, vec3 coord);
-vec4 textureCubeLod (samplerCube sampler, vec3 coord, float lod);
-
-vec4 shadow1D (sampler1DShadow sampler, vec3 coord);
-vec4 shadow2D (sampler2DShadow sampler, vec3 coord);
-vec4 shadow1DProj (sampler1DShadow sampler, vec4 coord);
-vec4 shadow2DProj (sampler2DShadow sampler, vec4 coord);
-vec4 shadow1DLod (sampler1DShadow sampler, vec3 coord, float lod);
-vec4 shadow2DLod (sampler2DShadow sampler, vec3 coord, float lod);
-vec4 shadow1DProjLod(sampler1DShadow sampler, vec4 coord, float lod);
-vec4 shadow2DProjLod(sampler2DShadow sampler, vec4 coord, float lod);
-
-/*
- * 8.9 - Noise Functions
- */
-float noise1(float x);
-float noise1(vec2 x);
-float noise1(vec3 x);
-float noise1(vec4 x);
-
-vec2 noise2(float x);
-vec2 noise2(vec2 x);
-vec2 noise2(vec3 x);
-vec2 noise2(vec4 x);
-
-vec3 noise3(float x);
-vec3 noise3(vec2 x);
-vec3 noise3(vec3 x);
-vec3 noise3(vec4 x);
-
-vec4 noise4(float x);
-vec4 noise4(vec2 x);
-vec4 noise4(vec3 x);
-vec4 noise4(vec4 x);
diff --git a/src/glsl/builtins/profiles/150.frag b/src/glsl/builtins/profiles/150.frag
deleted file mode 100644
index 7798e25..0000000
--- a/src/glsl/builtins/profiles/150.frag
+++ /dev/null
@@ -1,140 +0,0 @@
-#version 150
-/* texture - bias variants */
- vec4 texture( sampler1D sampler, float P, float bias);
-ivec4 texture(isampler1D sampler, float P, float bias);
-uvec4 texture(usampler1D sampler, float P, float bias);
-
- vec4 texture( sampler2D sampler, vec2 P, float bias);
-ivec4 texture(isampler2D sampler, vec2 P, float bias);
-uvec4 texture(usampler2D sampler, vec2 P, float bias);
-
- vec4 texture( sampler3D sampler, vec3 P, float bias);
-ivec4 texture(isampler3D sampler, vec3 P, float bias);
-uvec4 texture(usampler3D sampler, vec3 P, float bias);
-
- vec4 texture( samplerCube sampler, vec3 P, float bias);
-ivec4 texture(isamplerCube sampler, vec3 P, float bias);
-uvec4 texture(usamplerCube sampler, vec3 P, float bias);
-
-float texture(sampler1DShadow sampler, vec3 P, float bias);
-float texture(sampler2DShadow sampler, vec3 P, float bias);
-float texture(samplerCubeShadow sampler, vec4 P, float bias);
-
- vec4 texture( sampler1DArray sampler, vec2 P, float bias);
-ivec4 texture(isampler1DArray sampler, vec2 P, float bias);
-uvec4 texture(usampler1DArray sampler, vec2 P, float bias);
-
- vec4 texture( sampler2DArray sampler, vec3 P, float bias);
-ivec4 texture(isampler2DArray sampler, vec3 P, float bias);
-uvec4 texture(usampler2DArray sampler, vec3 P, float bias);
-
-float texture(sampler1DArrayShadow sampler, vec3 P, float bias);
-
-/* textureProj - bias variants */
- vec4 textureProj( sampler1D sampler, vec2 P, float bias);
-ivec4 textureProj(isampler1D sampler, vec2 P, float bias);
-uvec4 textureProj(usampler1D sampler, vec2 P, float bias);
- vec4 textureProj( sampler1D sampler, vec4 P, float bias);
-ivec4 textureProj(isampler1D sampler, vec4 P, float bias);
-uvec4 textureProj(usampler1D sampler, vec4 P, float bias);
-
- vec4 textureProj( sampler2D sampler, vec3 P, float bias);
-ivec4 textureProj(isampler2D sampler, vec3 P, float bias);
-uvec4 textureProj(usampler2D sampler, vec3 P, float bias);
- vec4 textureProj( sampler2D sampler, vec4 P, float bias);
-ivec4 textureProj(isampler2D sampler, vec4 P, float bias);
-uvec4 textureProj(usampler2D sampler, vec4 P, float bias);
-
- vec4 textureProj( sampler3D sampler, vec4 P, float bias);
-ivec4 textureProj(isampler3D sampler, vec4 P, float bias);
-uvec4 textureProj(usampler3D sampler, vec4 P, float bias);
-
-float textureProj(sampler1DShadow sampler, vec4 P, float bias);
-float textureProj(sampler2DShadow sampler, vec4 P, float bias);
-
-/* textureOffset - bias variants */
- vec4 textureOffset( sampler1D sampler, float P, int offset, float bias);
-ivec4 textureOffset(isampler1D sampler, float P, int offset, float bias);
-uvec4 textureOffset(usampler1D sampler, float P, int offset, float bias);
-
- vec4 textureOffset( sampler2D sampler, vec2 P, ivec2 offset, float bias);
-ivec4 textureOffset(isampler2D sampler, vec2 P, ivec2 offset, float bias);
-uvec4 textureOffset(usampler2D sampler, vec2 P, ivec2 offset, float bias);
-
- vec4 textureOffset( sampler3D sampler, vec3 P, ivec3 offset, float bias);
-ivec4 textureOffset(isampler3D sampler, vec3 P, ivec3 offset, float bias);
-uvec4 textureOffset(usampler3D sampler, vec3 P, ivec3 offset, float bias);
-
-float textureOffset(sampler1DShadow sampler, vec3 P, int offset, float bias);
-float textureOffset(sampler2DShadow sampler, vec3 P, ivec2 offset, float bias);
-
- vec4 textureOffset( sampler1DArray sampler, vec2 P, int offset, float bias);
-ivec4 textureOffset(isampler1DArray sampler, vec2 P, int offset, float bias);
-uvec4 textureOffset(usampler1DArray sampler, vec2 P, int offset, float bias);
-
- vec4 textureOffset( sampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-ivec4 textureOffset(isampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-uvec4 textureOffset(usampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-
-float textureOffset(sampler1DArrayShadow samp, vec3 P, int offset, float bias);
-
-/* textureProjOffsetOffset - bias variants */
- vec4 textureProjOffset( sampler1D sampler, vec2 P, int offset, float bias);
-ivec4 textureProjOffset(isampler1D sampler, vec2 P, int offset, float bias);
-uvec4 textureProjOffset(usampler1D sampler, vec2 P, int offset, float bias);
- vec4 textureProjOffset( sampler1D sampler, vec4 P, int offset, float bias);
-ivec4 textureProjOffset(isampler1D sampler, vec4 P, int offset, float bias);
-uvec4 textureProjOffset(usampler1D sampler, vec4 P, int offset, float bias);
-
- vec4 textureProjOffset( sampler2D sampler, vec3 P, ivec2 offset, float bias);
-ivec4 textureProjOffset(isampler2D sampler, vec3 P, ivec2 offset, float bias);
-uvec4 textureProjOffset(usampler2D sampler, vec3 P, ivec2 offset, float bias);
- vec4 textureProjOffset( sampler2D sampler, vec4 P, ivec2 offset, float bias);
-ivec4 textureProjOffset(isampler2D sampler, vec4 P, ivec2 offset, float bias);
-uvec4 textureProjOffset(usampler2D sampler, vec4 P, ivec2 offset, float bias);
-
- vec4 textureProjOffset( sampler3D sampler, vec4 P, ivec3 offset, float bias);
-ivec4 textureProjOffset(isampler3D sampler, vec4 P, ivec3 offset, float bias);
-uvec4 textureProjOffset(usampler3D sampler, vec4 P, ivec3 offset, float bias);
-
-float textureProjOffset(sampler1DShadow s, vec4 P, int offset, float bias);
-float textureProjOffset(sampler2DShadow s, vec4 P, ivec2 offset, float bias);
-
-/*
- * The following texture functions are deprecated:
- */
-vec4 texture1D (sampler1D sampler, float coord, float bias);
-vec4 texture1DProj (sampler1D sampler, vec2 coord, float bias);
-vec4 texture1DProj (sampler1D sampler, vec4 coord, float bias);
-
-vec4 texture2D (sampler2D sampler, vec2 coord, float bias);
-vec4 texture2DProj (sampler2D sampler, vec3 coord, float bias);
-vec4 texture2DProj (sampler2D sampler, vec4 coord, float bias);
-
-vec4 texture3D (sampler3D sampler, vec3 coord, float bias);
-vec4 texture3DProj (sampler3D sampler, vec4 coord, float bias);
-
-vec4 textureCube (samplerCube sampler, vec3 coord, float bias);
-
-vec4 shadow1D (sampler1DShadow sampler, vec3 coord, float bias);
-vec4 shadow2D (sampler2DShadow sampler, vec3 coord, float bias);
-vec4 shadow1DProj (sampler1DShadow sampler, vec4 coord, float bias);
-vec4 shadow2DProj (sampler2DShadow sampler, vec4 coord, float bias);
-
-/*
- * 8.8 - Fragment Processing Functions
- */
-float dFdx(float p);
-vec2 dFdx(vec2 p);
-vec3 dFdx(vec3 p);
-vec4 dFdx(vec4 p);
-
-float dFdy(float p);
-vec2 dFdy(vec2 p);
-vec3 dFdy(vec3 p);
-vec4 dFdy(vec4 p);
-
-float fwidth(float p);
-vec2 fwidth(vec2 p);
-vec3 fwidth(vec3 p);
-vec4 fwidth(vec4 p);
diff --git a/src/glsl/builtins/profiles/150.geom b/src/glsl/builtins/profiles/150.geom
deleted file mode 100644
index d2ab891..0000000
--- a/src/glsl/builtins/profiles/150.geom
+++ /dev/null
@@ -1,3 +0,0 @@
-#version 150
-void EmitVertex();
-void EndPrimitive();
diff --git a/src/glsl/builtins/profiles/150.glsl b/src/glsl/builtins/profiles/150.glsl
deleted file mode 100644
index 70c65f2..0000000
--- a/src/glsl/builtins/profiles/150.glsl
+++ /dev/null
@@ -1,1009 +0,0 @@
-#version 150
-/*
- * 8.1 - Angle and Trigonometry Functions
- */
-float radians(float degrees);
-vec2 radians(vec2 degrees);
-vec3 radians(vec3 degrees);
-vec4 radians(vec4 degrees);
-
-float degrees(float radians);
-vec2 degrees(vec2 radians);
-vec3 degrees(vec3 radians);
-vec4 degrees(vec4 radians);
-
-float sin(float angle);
-vec2 sin(vec2 angle);
-vec3 sin(vec3 angle);
-vec4 sin(vec4 angle);
-
-float cos(float angle);
-vec2 cos(vec2 angle);
-vec3 cos(vec3 angle);
-vec4 cos(vec4 angle);
-
-float tan(float angle);
-vec2 tan(vec2 angle);
-vec3 tan(vec3 angle);
-vec4 tan(vec4 angle);
-
-float asin(float angle);
-vec2 asin(vec2 angle);
-vec3 asin(vec3 angle);
-vec4 asin(vec4 angle);
-
-float acos(float angle);
-vec2 acos(vec2 angle);
-vec3 acos(vec3 angle);
-vec4 acos(vec4 angle);
-
-float atan(float y, float x);
-vec2 atan(vec2 y, vec2 x);
-vec3 atan(vec3 y, vec3 x);
-vec4 atan(vec4 y, vec4 x);
-
-float atan(float y_over_x);
-vec2 atan(vec2 y_over_x);
-vec3 atan(vec3 y_over_x);
-vec4 atan(vec4 y_over_x);
-
-float sinh(float x);
-vec2 sinh(vec2 x);
-vec3 sinh(vec3 x);
-vec4 sinh(vec4 x);
-
-float cosh(float x);
-vec2 cosh(vec2 x);
-vec3 cosh(vec3 x);
-vec4 cosh(vec4 x);
-
-float tanh(float x);
-vec2 tanh(vec2 x);
-vec3 tanh(vec3 x);
-vec4 tanh(vec4 x);
-
-float asinh(float x);
-vec2 asinh(vec2 x);
-vec3 asinh(vec3 x);
-vec4 asinh(vec4 x);
-
-float acosh(float x);
-vec2 acosh(vec2 x);
-vec3 acosh(vec3 x);
-vec4 acosh(vec4 x);
-
-float atanh(float x);
-vec2 atanh(vec2 x);
-vec3 atanh(vec3 x);
-vec4 atanh(vec4 x);
-
-/*
- * 8.2 - Exponential Functions
- */
-float pow(float x, float y);
-vec2 pow(vec2 x, vec2 y);
-vec3 pow(vec3 x, vec3 y);
-vec4 pow(vec4 x, vec4 y);
-
-float exp(float x);
-vec2 exp(vec2 x);
-vec3 exp(vec3 x);
-vec4 exp(vec4 x);
-
-float log(float x);
-vec2 log(vec2 x);
-vec3 log(vec3 x);
-vec4 log(vec4 x);
-
-float exp2(float x);
-vec2 exp2(vec2 x);
-vec3 exp2(vec3 x);
-vec4 exp2(vec4 x);
-
-float log2(float x);
-vec2 log2(vec2 x);
-vec3 log2(vec3 x);
-vec4 log2(vec4 x);
-
-float sqrt(float x);
-vec2 sqrt(vec2 x);
-vec3 sqrt(vec3 x);
-vec4 sqrt(vec4 x);
-
-float inversesqrt(float x);
-vec2 inversesqrt(vec2 x);
-vec3 inversesqrt(vec3 x);
-vec4 inversesqrt(vec4 x);
-
-/*
- * 8.3 - Common Functions
- */
-float abs(float x);
-vec2 abs(vec2 x);
-vec3 abs(vec3 x);
-vec4 abs(vec4 x);
-int abs(int x);
-ivec2 abs(ivec2 x);
-ivec3 abs(ivec3 x);
-ivec4 abs(ivec4 x);
-
-float sign(float x);
-vec2 sign(vec2 x);
-vec3 sign(vec3 x);
-vec4 sign(vec4 x);
-int sign(int x);
-ivec2 sign(ivec2 x);
-ivec3 sign(ivec3 x);
-ivec4 sign(ivec4 x);
-
-float floor(float x);
-vec2 floor(vec2 x);
-vec3 floor(vec3 x);
-vec4 floor(vec4 x);
-
-float trunc(float x);
-vec2 trunc(vec2 x);
-vec3 trunc(vec3 x);
-vec4 trunc(vec4 x);
-
-float round(float x);
-vec2 round(vec2 x);
-vec3 round(vec3 x);
-vec4 round(vec4 x);
-
-float roundEven(float x);
-vec2 roundEven(vec2 x);
-vec3 roundEven(vec3 x);
-vec4 roundEven(vec4 x);
-
-float ceil(float x);
-vec2 ceil(vec2 x);
-vec3 ceil(vec3 x);
-vec4 ceil(vec4 x);
-
-float fract(float x);
-vec2 fract(vec2 x);
-vec3 fract(vec3 x);
-vec4 fract(vec4 x);
-
-float mod(float x, float y);
-vec2 mod(vec2 x, float y);
-vec3 mod(vec3 x, float y);
-vec4 mod(vec4 x, float y);
-
-vec2 mod(vec2 x, vec2 y);
-vec3 mod(vec3 x, vec3 y);
-vec4 mod(vec4 x, vec4 y);
-
-float modf(float x, out float i);
-vec2 modf(vec2 x, out vec2 i);
-vec3 modf(vec3 x, out vec3 i);
-vec4 modf(vec4 x, out vec4 i);
-
-float min(float x, float y);
-vec2 min(vec2 x, vec2 y);
-vec3 min(vec3 x, vec3 y);
-vec4 min(vec4 x, vec4 y);
-
-vec2 min(vec2 x, float y);
-vec3 min(vec3 x, float y);
-vec4 min(vec4 x, float y);
-
-int min(int x, int y);
-ivec2 min(ivec2 x, ivec2 y);
-ivec3 min(ivec3 x, ivec3 y);
-ivec4 min(ivec4 x, ivec4 y);
-
-ivec2 min(ivec2 x, int y);
-ivec3 min(ivec3 x, int y);
-ivec4 min(ivec4 x, int y);
-
-uint min(uint x, uint y);
-uvec2 min(uvec2 x, uvec2 y);
-uvec3 min(uvec3 x, uvec3 y);
-uvec4 min(uvec4 x, uvec4 y);
-
-uvec2 min(uvec2 x, uint y);
-uvec3 min(uvec3 x, uint y);
-uvec4 min(uvec4 x, uint y);
-
-float max(float x, float y);
-vec2 max(vec2 x, vec2 y);
-vec3 max(vec3 x, vec3 y);
-vec4 max(vec4 x, vec4 y);
-
-vec2 max(vec2 x, float y);
-vec3 max(vec3 x, float y);
-vec4 max(vec4 x, float y);
-
-int max(int x, int y);
-ivec2 max(ivec2 x, ivec2 y);
-ivec3 max(ivec3 x, ivec3 y);
-ivec4 max(ivec4 x, ivec4 y);
-
-ivec2 max(ivec2 x, int y);
-ivec3 max(ivec3 x, int y);
-ivec4 max(ivec4 x, int y);
-
-uint max(uint x, uint y);
-uvec2 max(uvec2 x, uvec2 y);
-uvec3 max(uvec3 x, uvec3 y);
-uvec4 max(uvec4 x, uvec4 y);
-
-uvec2 max(uvec2 x, uint y);
-uvec3 max(uvec3 x, uint y);
-uvec4 max(uvec4 x, uint y);
-
-float clamp(float x, float minVal, float maxVal);
-vec2 clamp(vec2 x, vec2 minVal, vec2 maxVal);
-vec3 clamp(vec3 x, vec3 minVal, vec3 maxVal);
-vec4 clamp(vec4 x, vec4 minVal, vec4 maxVal);
-
-vec2 clamp(vec2 x, float minVal, float maxVal);
-vec3 clamp(vec3 x, float minVal, float maxVal);
-vec4 clamp(vec4 x, float minVal, float maxVal);
-
-int clamp(int x, int minVal, int maxVal);
-ivec2 clamp(ivec2 x, ivec2 minVal, ivec2 maxVal);
-ivec3 clamp(ivec3 x, ivec3 minVal, ivec3 maxVal);
-ivec4 clamp(ivec4 x, ivec4 minVal, ivec4 maxVal);
-
-ivec2 clamp(ivec2 x, int minVal, int maxVal);
-ivec3 clamp(ivec3 x, int minVal, int maxVal);
-ivec4 clamp(ivec4 x, int minVal, int maxVal);
-
-uint clamp(uint x, uint minVal, uint maxVal);
-uvec2 clamp(uvec2 x, uvec2 minVal, uvec2 maxVal);
-uvec3 clamp(uvec3 x, uvec3 minVal, uvec3 maxVal);
-uvec4 clamp(uvec4 x, uvec4 minVal, uvec4 maxVal);
-
-uvec2 clamp(uvec2 x, uint minVal, uint maxVal);
-uvec3 clamp(uvec3 x, uint minVal, uint maxVal);
-uvec4 clamp(uvec4 x, uint minVal, uint maxVal);
-
-float mix(float x, float y, float a);
-vec2 mix(vec2 x, vec2 y, vec2 a);
-vec3 mix(vec3 x, vec3 y, vec3 a);
-vec4 mix(vec4 x, vec4 y, vec4 a);
-
-vec2 mix(vec2 x, vec2 y, float a);
-vec3 mix(vec3 x, vec3 y, float a);
-vec4 mix(vec4 x, vec4 y, float a);
-
-float mix(float x, float y, bool a);
-vec2 mix(vec2 x, vec2 y, bvec2 a);
-vec3 mix(vec3 x, vec3 y, bvec3 a);
-vec4 mix(vec4 x, vec4 y, bvec4 a);
-
-float step(float edge, float x);
-vec2 step(vec2 edge, vec2 x);
-vec3 step(vec3 edge, vec3 x);
-vec4 step(vec4 edge, vec4 x);
-
-vec2 step(float edge, vec2 x);
-vec3 step(float edge, vec3 x);
-vec4 step(float edge, vec4 x);
-
-float smoothstep(float edge0, float edge1, float x);
-vec2 smoothstep(vec2 edge0, vec2 edge1, vec2 x);
-vec3 smoothstep(vec3 edge0, vec3 edge1, vec3 x);
-vec4 smoothstep(vec4 edge0, vec4 edge1, vec4 x);
-
-vec2 smoothstep(float edge0, float edge1, vec2 x);
-vec3 smoothstep(float edge0, float edge1, vec3 x);
-vec4 smoothstep(float edge0, float edge1, vec4 x);
-
-bool isnan(float x);
-bvec2 isnan(vec2 x);
-bvec3 isnan(vec3 x);
-bvec4 isnan(vec4 x);
-
-bool isinf(float x);
-bvec2 isinf(vec2 x);
-bvec3 isinf(vec3 x);
-bvec4 isinf(vec4 x);
-
-/*
- * 8.4 - Geometric Functions
- */
-float length(float x);
-float length(vec2 x);
-float length(vec3 x);
-float length(vec4 x);
-
-float distance(float p0, float p1);
-float distance(vec2 p0, vec2 p1);
-float distance(vec3 p0, vec3 p1);
-float distance(vec4 p0, vec4 p1);
-
-float dot(float x, float y);
-float dot(vec2 x, vec2 y);
-float dot(vec3 x, vec3 y);
-float dot(vec4 x, vec4 y);
-
-vec3 cross(vec3 x, vec3 y);
-
-float normalize(float x);
-vec2 normalize(vec2 x);
-vec3 normalize(vec3 x);
-vec4 normalize(vec4 x);
-
-float faceforward(float N, float I, float Nref);
-vec2 faceforward(vec2 N, vec2 I, vec2 Nref);
-vec3 faceforward(vec3 N, vec3 I, vec3 Nref);
-vec4 faceforward(vec4 N, vec4 I, vec4 Nref);
-
-float reflect(float I, float N);
-vec2 reflect(vec2 I, vec2 N);
-vec3 reflect(vec3 I, vec3 N);
-vec4 reflect(vec4 I, vec4 N);
-
-float refract(float I, float N, float eta);
-vec2 refract(vec2 I, vec2 N, float eta);
-vec3 refract(vec3 I, vec3 N, float eta);
-vec4 refract(vec4 I, vec4 N, float eta);
-
-
-/*
- * 8.5 - Matrix Functions
- */
-mat2 matrixCompMult(mat2 x, mat2 y);
-mat3 matrixCompMult(mat3 x, mat3 y);
-mat4 matrixCompMult(mat4 x, mat4 y);
-mat2x3 matrixCompMult(mat2x3 x, mat2x3 y);
-mat2x4 matrixCompMult(mat2x4 x, mat2x4 y);
-mat3x2 matrixCompMult(mat3x2 x, mat3x2 y);
-mat3x4 matrixCompMult(mat3x4 x, mat3x4 y);
-mat4x2 matrixCompMult(mat4x2 x, mat4x2 y);
-mat4x3 matrixCompMult(mat4x3 x, mat4x3 y);
-
-mat2 outerProduct(vec2 c, vec2 r);
-mat3 outerProduct(vec3 c, vec3 r);
-mat4 outerProduct(vec4 c, vec4 r);
-
-mat2x3 outerProduct(vec3 c, vec2 r);
-mat3x2 outerProduct(vec2 c, vec3 r);
-
-mat2x4 outerProduct(vec4 c, vec2 r);
-mat4x2 outerProduct(vec2 c, vec4 r);
-
-mat3x4 outerProduct(vec4 c, vec3 r);
-mat4x3 outerProduct(vec3 c, vec4 r);
-
-mat2 transpose(mat2 m);
-mat3 transpose(mat3 m);
-mat4 transpose(mat4 m);
-
-mat2x3 transpose(mat3x2 m);
-mat3x2 transpose(mat2x3 m);
-
-mat2x4 transpose(mat4x2 m);
-mat4x2 transpose(mat2x4 m);
-
-mat3x4 transpose(mat4x3 m);
-mat4x3 transpose(mat3x4 m);
-
-float determinant(mat2 m);
-float determinant(mat3 m);
-float determinant(mat4 m);
-
-mat2 inverse(mat2 m);
-mat3 inverse(mat3 m);
-mat4 inverse(mat4 m);
-
-/*
- * 8.6 - Vector Relational Functions
- */
-bvec2 lessThan( vec2 x, vec2 y);
-bvec3 lessThan( vec3 x, vec3 y);
-bvec4 lessThan( vec4 x, vec4 y);
-bvec2 lessThan(ivec2 x, ivec2 y);
-bvec3 lessThan(ivec3 x, ivec3 y);
-bvec4 lessThan(ivec4 x, ivec4 y);
-bvec2 lessThan(uvec2 x, uvec2 y);
-bvec3 lessThan(uvec3 x, uvec3 y);
-bvec4 lessThan(uvec4 x, uvec4 y);
-
-bvec2 lessThanEqual( vec2 x, vec2 y);
-bvec3 lessThanEqual( vec3 x, vec3 y);
-bvec4 lessThanEqual( vec4 x, vec4 y);
-bvec2 lessThanEqual(ivec2 x, ivec2 y);
-bvec3 lessThanEqual(ivec3 x, ivec3 y);
-bvec4 lessThanEqual(ivec4 x, ivec4 y);
-bvec2 lessThanEqual(uvec2 x, uvec2 y);
-bvec3 lessThanEqual(uvec3 x, uvec3 y);
-bvec4 lessThanEqual(uvec4 x, uvec4 y);
-
-bvec2 greaterThan( vec2 x, vec2 y);
-bvec3 greaterThan( vec3 x, vec3 y);
-bvec4 greaterThan( vec4 x, vec4 y);
-bvec2 greaterThan(ivec2 x, ivec2 y);
-bvec3 greaterThan(ivec3 x, ivec3 y);
-bvec4 greaterThan(ivec4 x, ivec4 y);
-bvec2 greaterThan(uvec2 x, uvec2 y);
-bvec3 greaterThan(uvec3 x, uvec3 y);
-bvec4 greaterThan(uvec4 x, uvec4 y);
-
-bvec2 greaterThanEqual( vec2 x, vec2 y);
-bvec3 greaterThanEqual( vec3 x, vec3 y);
-bvec4 greaterThanEqual( vec4 x, vec4 y);
-bvec2 greaterThanEqual(ivec2 x, ivec2 y);
-bvec3 greaterThanEqual(ivec3 x, ivec3 y);
-bvec4 greaterThanEqual(ivec4 x, ivec4 y);
-bvec2 greaterThanEqual(uvec2 x, uvec2 y);
-bvec3 greaterThanEqual(uvec3 x, uvec3 y);
-bvec4 greaterThanEqual(uvec4 x, uvec4 y);
-
-bvec2 equal( vec2 x, vec2 y);
-bvec3 equal( vec3 x, vec3 y);
-bvec4 equal( vec4 x, vec4 y);
-bvec2 equal(ivec2 x, ivec2 y);
-bvec3 equal(ivec3 x, ivec3 y);
-bvec4 equal(ivec4 x, ivec4 y);
-bvec2 equal(uvec2 x, uvec2 y);
-bvec3 equal(uvec3 x, uvec3 y);
-bvec4 equal(uvec4 x, uvec4 y);
-bvec2 equal(bvec2 x, bvec2 y);
-bvec3 equal(bvec3 x, bvec3 y);
-bvec4 equal(bvec4 x, bvec4 y);
-
-bvec2 notEqual( vec2 x, vec2 y);
-bvec3 notEqual( vec3 x, vec3 y);
-bvec4 notEqual( vec4 x, vec4 y);
-bvec2 notEqual(ivec2 x, ivec2 y);
-bvec3 notEqual(ivec3 x, ivec3 y);
-bvec4 notEqual(ivec4 x, ivec4 y);
-bvec2 notEqual(uvec2 x, uvec2 y);
-bvec3 notEqual(uvec3 x, uvec3 y);
-bvec4 notEqual(uvec4 x, uvec4 y);
-bvec2 notEqual(bvec2 x, bvec2 y);
-bvec3 notEqual(bvec3 x, bvec3 y);
-bvec4 notEqual(bvec4 x, bvec4 y);
-
-bool any(bvec2 x);
-bool any(bvec3 x);
-bool any(bvec4 x);
-
-bool all(bvec2 x);
-bool all(bvec3 x);
-bool all(bvec4 x);
-
-bvec2 not(bvec2 x);
-bvec3 not(bvec3 x);
-bvec4 not(bvec4 x);
-
-/*
- * 8.7 - Texture Lookup Functions
- */
-
-/* textureSize */
-int textureSize( sampler1D sampler, int lod);
-int textureSize(isampler1D sampler, int lod);
-int textureSize(usampler1D sampler, int lod);
-
-ivec2 textureSize( sampler2D sampler, int lod);
-ivec2 textureSize(isampler2D sampler, int lod);
-ivec2 textureSize(usampler2D sampler, int lod);
-
-ivec3 textureSize( sampler3D sampler, int lod);
-ivec3 textureSize(isampler3D sampler, int lod);
-ivec3 textureSize(usampler3D sampler, int lod);
-
-ivec2 textureSize( samplerCube sampler, int lod);
-ivec2 textureSize(isamplerCube sampler, int lod);
-ivec2 textureSize(usamplerCube sampler, int lod);
-
-int textureSize(sampler1DShadow sampler, int lod);
-ivec2 textureSize(sampler2DShadow sampler, int lod);
-ivec2 textureSize(samplerCubeShadow sampler, int lod);
-
-ivec2 textureSize( sampler1DArray sampler, int lod);
-ivec2 textureSize(isampler1DArray sampler, int lod);
-ivec2 textureSize(usampler1DArray sampler, int lod);
-ivec3 textureSize( sampler2DArray sampler, int lod);
-ivec3 textureSize(isampler2DArray sampler, int lod);
-ivec3 textureSize(usampler2DArray sampler, int lod);
-
-ivec2 textureSize(sampler1DArrayShadow sampler, int lod);
-ivec3 textureSize(sampler2DArrayShadow sampler, int lod);
-
-ivec2 textureSize(sampler2DRect sampler);
-ivec2 textureSize(isampler2DRect sampler);
-ivec2 textureSize(usampler2DRect sampler);
-ivec2 textureSize(sampler2DRectShadow sampler);
-
-int textureSize( samplerBuffer sampler);
-int textureSize(isamplerBuffer sampler);
-int textureSize(usamplerBuffer sampler);
-
-ivec2 textureSize( sampler2DMS sampler);
-ivec2 textureSize(isampler2DMS sampler);
-ivec2 textureSize(usampler2DMS sampler);
-
-ivec3 textureSize( sampler2DMSArray sampler);
-ivec3 textureSize(isampler2DMSArray sampler);
-ivec3 textureSize(usampler2DMSArray sampler);
-
-/* texture - no bias */
- vec4 texture( sampler1D sampler, float P);
-ivec4 texture(isampler1D sampler, float P);
-uvec4 texture(usampler1D sampler, float P);
-
- vec4 texture( sampler2D sampler, vec2 P);
-ivec4 texture(isampler2D sampler, vec2 P);
-uvec4 texture(usampler2D sampler, vec2 P);
-
- vec4 texture( sampler3D sampler, vec3 P);
-ivec4 texture(isampler3D sampler, vec3 P);
-uvec4 texture(usampler3D sampler, vec3 P);
-
- vec4 texture( samplerCube sampler, vec3 P);
-ivec4 texture(isamplerCube sampler, vec3 P);
-uvec4 texture(usamplerCube sampler, vec3 P);
-
-float texture(sampler1DShadow sampler, vec3 P);
-float texture(sampler2DShadow sampler, vec3 P);
-float texture(samplerCubeShadow sampler, vec4 P);
-
- vec4 texture( sampler1DArray sampler, vec2 P);
-ivec4 texture(isampler1DArray sampler, vec2 P);
-uvec4 texture(usampler1DArray sampler, vec2 P);
-
- vec4 texture( sampler2DArray sampler, vec3 P);
-ivec4 texture(isampler2DArray sampler, vec3 P);
-uvec4 texture(usampler2DArray sampler, vec3 P);
-
-float texture(sampler1DArrayShadow sampler, vec3 P);
-float texture(sampler2DArrayShadow sampler, vec4 P);
-
- vec4 texture( sampler2DRect sampler, vec2 P);
-ivec4 texture(isampler2DRect sampler, vec2 P);
-uvec4 texture(usampler2DRect sampler, vec2 P);
-
-float texture(sampler2DRectShadow sampler, vec3 P);
-
-/* textureProj - no bias */
- vec4 textureProj( sampler1D sampler, vec2 P);
-ivec4 textureProj(isampler1D sampler, vec2 P);
-uvec4 textureProj(usampler1D sampler, vec2 P);
- vec4 textureProj( sampler1D sampler, vec4 P);
-ivec4 textureProj(isampler1D sampler, vec4 P);
-uvec4 textureProj(usampler1D sampler, vec4 P);
-
- vec4 textureProj( sampler2D sampler, vec3 P);
-ivec4 textureProj(isampler2D sampler, vec3 P);
-uvec4 textureProj(usampler2D sampler, vec3 P);
- vec4 textureProj( sampler2D sampler, vec4 P);
-ivec4 textureProj(isampler2D sampler, vec4 P);
-uvec4 textureProj(usampler2D sampler, vec4 P);
-
- vec4 textureProj( sampler3D sampler, vec4 P);
-ivec4 textureProj(isampler3D sampler, vec4 P);
-uvec4 textureProj(usampler3D sampler, vec4 P);
-
-float textureProj(sampler1DShadow sampler, vec4 P);
-float textureProj(sampler2DShadow sampler, vec4 P);
-
- vec4 textureProj( sampler2DRect sampler, vec3 P);
-ivec4 textureProj(isampler2DRect sampler, vec3 P);
-uvec4 textureProj(usampler2DRect sampler, vec3 P);
- vec4 textureProj( sampler2DRect sampler, vec4 P);
-ivec4 textureProj(isampler2DRect sampler, vec4 P);
-uvec4 textureProj(usampler2DRect sampler, vec4 P);
-
-float textureProj(sampler2DRectShadow sampler, vec4 P);
-
-/* textureLod */
- vec4 textureLod( sampler1D sampler, float P, float lod);
-ivec4 textureLod(isampler1D sampler, float P, float lod);
-uvec4 textureLod(usampler1D sampler, float P, float lod);
-
- vec4 textureLod( sampler2D sampler, vec2 P, float lod);
-ivec4 textureLod(isampler2D sampler, vec2 P, float lod);
-uvec4 textureLod(usampler2D sampler, vec2 P, float lod);
-
- vec4 textureLod( sampler3D sampler, vec3 P, float lod);
-ivec4 textureLod(isampler3D sampler, vec3 P, float lod);
-uvec4 textureLod(usampler3D sampler, vec3 P, float lod);
-
- vec4 textureLod( samplerCube sampler, vec3 P, float lod);
-ivec4 textureLod(isamplerCube sampler, vec3 P, float lod);
-uvec4 textureLod(usamplerCube sampler, vec3 P, float lod);
-
-float textureLod(sampler1DShadow sampler, vec3 P, float lod);
-float textureLod(sampler2DShadow sampler, vec3 P, float lod);
-
- vec4 textureLod( sampler1DArray sampler, vec2 P, float lod);
-ivec4 textureLod(isampler1DArray sampler, vec2 P, float lod);
-uvec4 textureLod(usampler1DArray sampler, vec2 P, float lod);
-
- vec4 textureLod( sampler2DArray sampler, vec3 P, float lod);
-ivec4 textureLod(isampler2DArray sampler, vec3 P, float lod);
-uvec4 textureLod(usampler2DArray sampler, vec3 P, float lod);
-
-float textureLod(sampler1DArrayShadow sampler, vec3 P, float lod);
-
-/* textureOffset - no bias */
- vec4 textureOffset( sampler1D sampler, float P, int offset);
-ivec4 textureOffset(isampler1D sampler, float P, int offset);
-uvec4 textureOffset(usampler1D sampler, float P, int offset);
-
- vec4 textureOffset( sampler2D sampler, vec2 P, ivec2 offset);
-ivec4 textureOffset(isampler2D sampler, vec2 P, ivec2 offset);
-uvec4 textureOffset(usampler2D sampler, vec2 P, ivec2 offset);
-
- vec4 textureOffset( sampler3D sampler, vec3 P, ivec3 offset);
-ivec4 textureOffset(isampler3D sampler, vec3 P, ivec3 offset);
-uvec4 textureOffset(usampler3D sampler, vec3 P, ivec3 offset);
-
- vec4 textureOffset( sampler2DRect sampler, vec2 P, ivec2 offset);
-ivec4 textureOffset(isampler2DRect sampler, vec2 P, ivec2 offset);
-uvec4 textureOffset(usampler2DRect sampler, vec2 P, ivec2 offset);
-
-float textureOffset(sampler2DRectShadow sampler, vec3 P, ivec2 offset);
-
-float textureOffset(sampler1DShadow sampler, vec3 P, int offset);
-float textureOffset(sampler2DShadow sampler, vec3 P, ivec2 offset);
-
- vec4 textureOffset( sampler1DArray sampler, vec2 P, int offset);
-ivec4 textureOffset(isampler1DArray sampler, vec2 P, int offset);
-uvec4 textureOffset(usampler1DArray sampler, vec2 P, int offset);
-
- vec4 textureOffset( sampler2DArray sampler, vec3 P, ivec2 offset);
-ivec4 textureOffset(isampler2DArray sampler, vec3 P, ivec2 offset);
-uvec4 textureOffset(usampler2DArray sampler, vec3 P, ivec2 offset);
-
-float textureOffset(sampler1DArrayShadow sampler, vec3 P, int offset);
-
-/* texelFetch */
- vec4 texelFetch( sampler1D sampler, int P, int lod);
-ivec4 texelFetch(isampler1D sampler, int P, int lod);
-uvec4 texelFetch(usampler1D sampler, int P, int lod);
-
- vec4 texelFetch( sampler2D sampler, ivec2 P, int lod);
-ivec4 texelFetch(isampler2D sampler, ivec2 P, int lod);
-uvec4 texelFetch(usampler2D sampler, ivec2 P, int lod);
-
- vec4 texelFetch( sampler3D sampler, ivec3 P, int lod);
-ivec4 texelFetch(isampler3D sampler, ivec3 P, int lod);
-uvec4 texelFetch(usampler3D sampler, ivec3 P, int lod);
-
- vec4 texelFetch( sampler2DRect sampler, ivec2 P);
-ivec4 texelFetch(isampler2DRect sampler, ivec2 P);
-uvec4 texelFetch(usampler2DRect sampler, ivec2 P);
-
- vec4 texelFetch( sampler1DArray sampler, ivec2 P, int lod);
-ivec4 texelFetch(isampler1DArray sampler, ivec2 P, int lod);
-uvec4 texelFetch(usampler1DArray sampler, ivec2 P, int lod);
-
- vec4 texelFetch( sampler2DArray sampler, ivec3 P, int lod);
-ivec4 texelFetch(isampler2DArray sampler, ivec3 P, int lod);
-uvec4 texelFetch(usampler2DArray sampler, ivec3 P, int lod);
-
- vec4 texelFetch( samplerBuffer sampler, int P);
-ivec4 texelFetch(isamplerBuffer sampler, int P);
-uvec4 texelFetch(usamplerBuffer sampler, int P);
-
- vec4 texelFetch( sampler2DMS sampler, ivec2 P, int sample);
-ivec4 texelFetch(isampler2DMS sampler, ivec2 P, int sample);
-uvec4 texelFetch(usampler2DMS sampler, ivec2 P, int sample);
-
- vec4 texelFetch( sampler2DMSArray sampler, ivec3 P, int sample);
-ivec4 texelFetch(isampler2DMSArray sampler, ivec3 P, int sample);
-uvec4 texelFetch(usampler2DMSArray sampler, ivec3 P, int sample);
-
-/* texelFetchOffset */
- vec4 texelFetchOffset( sampler1D sampler, int P, int lod, int offset);
-ivec4 texelFetchOffset(isampler1D sampler, int P, int lod, int offset);
-uvec4 texelFetchOffset(usampler1D sampler, int P, int lod, int offset);
-
- vec4 texelFetchOffset( sampler2D sampler, ivec2 P, int lod, ivec2 offset);
-ivec4 texelFetchOffset(isampler2D sampler, ivec2 P, int lod, ivec2 offset);
-uvec4 texelFetchOffset(usampler2D sampler, ivec2 P, int lod, ivec2 offset);
-
- vec4 texelFetchOffset( sampler3D sampler, ivec3 P, int lod, ivec3 offset);
-ivec4 texelFetchOffset(isampler3D sampler, ivec3 P, int lod, ivec3 offset);
-uvec4 texelFetchOffset(usampler3D sampler, ivec3 P, int lod, ivec3 offset);
-
- vec4 texelFetchOffset( sampler2DRect sampler, ivec2 P, ivec2 offset);
-ivec4 texelFetchOffset(isampler2DRect sampler, ivec2 P, ivec2 offset);
-uvec4 texelFetchOffset(usampler2DRect sampler, ivec2 P, ivec2 offset);
-
- vec4 texelFetchOffset( sampler1DArray sampler, ivec2 P, int lod, int offset);
-ivec4 texelFetchOffset(isampler1DArray sampler, ivec2 P, int lod, int offset);
-uvec4 texelFetchOffset(usampler1DArray sampler, ivec2 P, int lod, int offset);
-
- vec4 texelFetchOffset( sampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-ivec4 texelFetchOffset(isampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-uvec4 texelFetchOffset(usampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-
-/* textureProjOffset - no bias */
- vec4 textureProjOffset( sampler1D sampler, vec2 P, int offset);
-ivec4 textureProjOffset(isampler1D sampler, vec2 P, int offset);
-uvec4 textureProjOffset(usampler1D sampler, vec2 P, int offset);
- vec4 textureProjOffset( sampler1D sampler, vec4 P, int offset);
-ivec4 textureProjOffset(isampler1D sampler, vec4 P, int offset);
-uvec4 textureProjOffset(usampler1D sampler, vec4 P, int offset);
-
- vec4 textureProjOffset( sampler2D sampler, vec3 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2D sampler, vec3 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2D sampler, vec3 P, ivec2 offset);
- vec4 textureProjOffset( sampler2D sampler, vec4 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2D sampler, vec4 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2D sampler, vec4 P, ivec2 offset);
-
- vec4 textureProjOffset( sampler3D sampler, vec4 P, ivec3 offset);
-ivec4 textureProjOffset(isampler3D sampler, vec4 P, ivec3 offset);
-uvec4 textureProjOffset(usampler3D sampler, vec4 P, ivec3 offset);
-
- vec4 textureProjOffset( sampler2DRect sampler, vec3 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2DRect sampler, vec3 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2DRect sampler, vec3 P, ivec2 offset);
- vec4 textureProjOffset( sampler2DRect sampler, vec4 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2DRect sampler, vec4 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2DRect sampler, vec4 P, ivec2 offset);
-
-float textureProjOffset(sampler2DRectShadow sampler, vec4 P, ivec2 offset);
-
-float textureProjOffset(sampler1DShadow sampler, vec4 P, int offset);
-float textureProjOffset(sampler2DShadow sampler, vec4 P, ivec2 offset);
-
-/* textureLodOffset */
- vec4 textureLodOffset( sampler1D sampler, float P, float lod, int offset);
-ivec4 textureLodOffset(isampler1D sampler, float P, float lod, int offset);
-uvec4 textureLodOffset(usampler1D sampler, float P, float lod, int offset);
-
- vec4 textureLodOffset( sampler2D sampler, vec2 P, float lod, ivec2 offset);
-ivec4 textureLodOffset(isampler2D sampler, vec2 P, float lod, ivec2 offset);
-uvec4 textureLodOffset(usampler2D sampler, vec2 P, float lod, ivec2 offset);
-
- vec4 textureLodOffset( sampler3D sampler, vec3 P, float lod, ivec3 offset);
-ivec4 textureLodOffset(isampler3D sampler, vec3 P, float lod, ivec3 offset);
-uvec4 textureLodOffset(usampler3D sampler, vec3 P, float lod, ivec3 offset);
-
-float textureLodOffset(sampler1DShadow samp, vec3 P, float lod, int offset);
-float textureLodOffset(sampler2DShadow samp, vec3 P, float lod, ivec2 offset);
-
- vec4 textureLodOffset( sampler1DArray sampler, vec2 P, float lod, int offset);
-ivec4 textureLodOffset(isampler1DArray sampler, vec2 P, float lod, int offset);
-uvec4 textureLodOffset(usampler1DArray sampler, vec2 P, float lod, int offset);
-
- vec4 textureLodOffset( sampler2DArray samp, vec3 P, float lod, ivec2 offset);
-ivec4 textureLodOffset(isampler2DArray samp, vec3 P, float lod, ivec2 offset);
-uvec4 textureLodOffset(usampler2DArray samp, vec3 P, float lod, ivec2 offset);
-
-float textureLodOffset(sampler1DArrayShadow s, vec3 P, float lod, int offset);
-
-/* textureProjLod */
- vec4 textureProjLod( sampler1D sampler, vec2 P, float lod);
-ivec4 textureProjLod(isampler1D sampler, vec2 P, float lod);
-uvec4 textureProjLod(usampler1D sampler, vec2 P, float lod);
- vec4 textureProjLod( sampler1D sampler, vec4 P, float lod);
-ivec4 textureProjLod(isampler1D sampler, vec4 P, float lod);
-uvec4 textureProjLod(usampler1D sampler, vec4 P, float lod);
-
- vec4 textureProjLod( sampler2D sampler, vec3 P, float lod);
-ivec4 textureProjLod(isampler2D sampler, vec3 P, float lod);
-uvec4 textureProjLod(usampler2D sampler, vec3 P, float lod);
- vec4 textureProjLod( sampler2D sampler, vec4 P, float lod);
-ivec4 textureProjLod(isampler2D sampler, vec4 P, float lod);
-uvec4 textureProjLod(usampler2D sampler, vec4 P, float lod);
-
- vec4 textureProjLod( sampler3D sampler, vec4 P, float lod);
-ivec4 textureProjLod(isampler3D sampler, vec4 P, float lod);
-uvec4 textureProjLod(usampler3D sampler, vec4 P, float lod);
-
-float textureProjLod(sampler1DShadow sampler, vec4 P, float lod);
-float textureProjLod(sampler2DShadow sampler, vec4 P, float lod);
-
-/* textureProjLodOffset */
- vec4 textureProjLodOffset( sampler1D sampler, vec2 P, float lod, int offset);
-ivec4 textureProjLodOffset(isampler1D sampler, vec2 P, float lod, int offset);
-uvec4 textureProjLodOffset(usampler1D sampler, vec2 P, float lod, int offset);
- vec4 textureProjLodOffset( sampler1D sampler, vec4 P, float lod, int offset);
-ivec4 textureProjLodOffset(isampler1D sampler, vec4 P, float lod, int offset);
-uvec4 textureProjLodOffset(usampler1D sampler, vec4 P, float lod, int offset);
-
- vec4 textureProjLodOffset( sampler2D sampler, vec3 P, float lod, ivec2 offset);
-ivec4 textureProjLodOffset(isampler2D sampler, vec3 P, float lod, ivec2 offset);
-uvec4 textureProjLodOffset(usampler2D sampler, vec3 P, float lod, ivec2 offset);
- vec4 textureProjLodOffset( sampler2D sampler, vec4 P, float lod, ivec2 offset);
-ivec4 textureProjLodOffset(isampler2D sampler, vec4 P, float lod, ivec2 offset);
-uvec4 textureProjLodOffset(usampler2D sampler, vec4 P, float lod, ivec2 offset);
-
- vec4 textureProjLodOffset( sampler3D sampler, vec4 P, float lod, ivec3 offset);
-ivec4 textureProjLodOffset(isampler3D sampler, vec4 P, float lod, ivec3 offset);
-uvec4 textureProjLodOffset(usampler3D sampler, vec4 P, float lod, ivec3 offset);
-
-float textureProjLodOffset(sampler1DShadow s, vec4 P, float lod, int offset);
-float textureProjLodOffset(sampler2DShadow s, vec4 P, float lod, ivec2 offset);
-
-/* textureGrad */
- vec4 textureGrad( sampler1D sampler, float P, float dPdx, float dPdy);
-ivec4 textureGrad(isampler1D sampler, float P, float dPdx, float dPdy);
-uvec4 textureGrad(usampler1D sampler, float P, float dPdx, float dPdy);
-
- vec4 textureGrad( sampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureGrad(isampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureGrad(usampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-
- vec4 textureGrad( sampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureGrad(isampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureGrad(usampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureGrad( samplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureGrad(isamplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureGrad(usamplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureGrad( sampler2DRect sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureGrad(isampler2DRect sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureGrad(usampler2DRect sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-
-float textureGrad(sampler2DRectShadow sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-
-float textureGrad(sampler1DShadow sampler, vec3 P, float dPdx, float dPdy);
-float textureGrad(sampler2DShadow sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-float textureGrad(samplerCubeShadow sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureGrad( sampler1DArray sampler, vec2 P, float dPdx, float dPdy);
-ivec4 textureGrad(isampler1DArray sampler, vec2 P, float dPdx, float dPdy);
-uvec4 textureGrad(usampler1DArray sampler, vec2 P, float dPdx, float dPdy);
-
- vec4 textureGrad( sampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureGrad(isampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureGrad(usampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-
-float textureGrad(sampler1DArrayShadow sampler, vec3 P, float dPdx, float dPdy);
-float textureGrad(sampler2DArrayShadow sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-/* textureGradOffset */
- vec4 textureGradOffset( sampler1D s, float P, float dx, float dy, int off);
-ivec4 textureGradOffset(isampler1D s, float P, float dx, float dy, int offset);
-uvec4 textureGradOffset(usampler1D s, float P, float dx, float dy, int offset);
-
- vec4 textureGradOffset( sampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-ivec4 textureGradOffset(isampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-uvec4 textureGradOffset(usampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-
- vec4 textureGradOffset( sampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-ivec4 textureGradOffset(isampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-uvec4 textureGradOffset(usampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-
- vec4 textureGradOffset( sampler2DRect s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-ivec4 textureGradOffset(isampler2DRect s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-uvec4 textureGradOffset(usampler2DRect s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-
-float textureGradOffset(sampler2DRectShadow s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-
-float textureGradOffset(sampler1DShadow s, vec3 P, float dx, float dy, int off);
-float textureGradOffset(sampler2DShadow s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-
- vec4 textureGradOffset( sampler1DArray s, vec2 P, float dx, float dy, int off);
-ivec4 textureGradOffset(isampler1DArray s, vec2 P, float dx, float dy, int off);
-uvec4 textureGradOffset(usampler1DArray s, vec2 P, float dx, float dy, int off);
-
- vec4 textureGradOffset( sampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureGradOffset(isampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureGradOffset(usampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-
-float textureGradOffset(sampler1DArrayShadow s, vec3 P, float dx, float dy, int o);
-float textureGradOffset(sampler2DArrayShadow s, vec4 P, vec2 dx, vec2 dy, ivec2 o);
-
-/* textureProjGrad */
- vec4 textureProjGrad( sampler1D sampler, vec2 P, float dPdx, float dPdy);
-ivec4 textureProjGrad(isampler1D sampler, vec2 P, float dPdx, float dPdy);
-uvec4 textureProjGrad(usampler1D sampler, vec2 P, float dPdx, float dPdy);
- vec4 textureProjGrad( sampler1D sampler, vec4 P, float dPdx, float dPdy);
-ivec4 textureProjGrad(isampler1D sampler, vec4 P, float dPdx, float dPdy);
-uvec4 textureProjGrad(usampler1D sampler, vec4 P, float dPdx, float dPdy);
-
- vec4 textureProjGrad( sampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
- vec4 textureProjGrad( sampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
- vec4 textureProjGrad( sampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureProjGrad(isampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureProjGrad(usampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureProjGrad( sampler2DRect sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2DRect sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2DRect sampler, vec3 P, vec2 dPdx, vec2 dPdy);
- vec4 textureProjGrad( sampler2DRect sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2DRect sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2DRect sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-float textureProjGrad(sampler2DRectShadow sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-float textureProjGrad(sampler1DShadow sampler, vec4 P, float dPdx, float dPdy);
-float textureProjGrad(sampler2DShadow sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-/* textureProjGradOffset */
- vec4 textureProjGradOffset( sampler1D s, vec2 P, float dx, float dy, int off);
-ivec4 textureProjGradOffset(isampler1D s, vec2 P, float dx, float dy, int off);
-uvec4 textureProjGradOffset(usampler1D s, vec2 P, float dx, float dy, int off);
- vec4 textureProjGradOffset( sampler1D s, vec4 P, float dx, float dy, int off);
-ivec4 textureProjGradOffset(isampler1D s, vec4 P, float dx, float dy, int off);
-uvec4 textureProjGradOffset(usampler1D s, vec4 P, float dx, float dy, int off);
-
- vec4 textureProjGradOffset( sampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
- vec4 textureProjGradOffset( sampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-
- vec4 textureProjGradOffset( sampler2DRect s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2DRect s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2DRect s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
- vec4 textureProjGradOffset( sampler2DRect s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2DRect s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2DRect s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-
-float textureProjGradOffset(sampler2DRectShadow s, vec4 P, vec2 dx, vec2 dy, ivec2 o);
-
- vec4 textureProjGradOffset( sampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-ivec4 textureProjGradOffset(isampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-uvec4 textureProjGradOffset(usampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-
-float textureProjGradOffset(sampler1DShadow s, vec4 P, float dx, float dy, int o);
-float textureProjGradOffset(sampler2DShadow s, vec4 P, vec2 dx, vec2 dy, ivec2 o);
-
-/*
- * The following texture functions are deprecated:
- */
-vec4 texture1D (sampler1D sampler, float coord);
-vec4 texture1DProj (sampler1D sampler, vec2 coord);
-vec4 texture1DProj (sampler1D sampler, vec4 coord);
-vec4 texture1DLod (sampler1D sampler, float coord, float lod);
-vec4 texture1DProjLod(sampler1D sampler, vec2 coord, float lod);
-vec4 texture1DProjLod(sampler1D sampler, vec4 coord, float lod);
-
-vec4 texture2D (sampler2D sampler, vec2 coord);
-vec4 texture2DProj (sampler2D sampler, vec3 coord);
-vec4 texture2DProj (sampler2D sampler, vec4 coord);
-vec4 texture2DLod (sampler2D sampler, vec2 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec3 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec4 coord, float lod);
-
-vec4 texture3D (sampler3D sampler, vec3 coord);
-vec4 texture3DProj (sampler3D sampler, vec4 coord);
-vec4 texture3DLod (sampler3D sampler, vec3 coord, float lod);
-vec4 texture3DProjLod(sampler3D sampler, vec4 coord, float lod);
-
-vec4 textureCube (samplerCube sampler, vec3 coord);
-vec4 textureCubeLod (samplerCube sampler, vec3 coord, float lod);
-
-vec4 shadow1D (sampler1DShadow sampler, vec3 coord);
-vec4 shadow2D (sampler2DShadow sampler, vec3 coord);
-vec4 shadow1DProj (sampler1DShadow sampler, vec4 coord);
-vec4 shadow2DProj (sampler2DShadow sampler, vec4 coord);
-vec4 shadow1DLod (sampler1DShadow sampler, vec3 coord, float lod);
-vec4 shadow2DLod (sampler2DShadow sampler, vec3 coord, float lod);
-vec4 shadow1DProjLod(sampler1DShadow sampler, vec4 coord, float lod);
-vec4 shadow2DProjLod(sampler2DShadow sampler, vec4 coord, float lod);
-
-/*
- * 8.9 - Noise Functions
- */
-float noise1(float x);
-float noise1(vec2 x);
-float noise1(vec3 x);
-float noise1(vec4 x);
-
-vec2 noise2(float x);
-vec2 noise2(vec2 x);
-vec2 noise2(vec3 x);
-vec2 noise2(vec4 x);
-
-vec3 noise3(float x);
-vec3 noise3(vec2 x);
-vec3 noise3(vec3 x);
-vec3 noise3(vec4 x);
-
-vec4 noise4(float x);
-vec4 noise4(vec2 x);
-vec4 noise4(vec3 x);
-vec4 noise4(vec4 x);
diff --git a/src/glsl/builtins/profiles/300es.frag b/src/glsl/builtins/profiles/300es.frag
deleted file mode 100644
index ef412d8..0000000
--- a/src/glsl/builtins/profiles/300es.frag
+++ /dev/null
@@ -1,85 +0,0 @@
-#version 300 es
-precision highp float;
-
-/* texture - bias variants */
- vec4 texture( sampler2D sampler, vec2 P, float bias);
-ivec4 texture(isampler2D sampler, vec2 P, float bias);
-uvec4 texture(usampler2D sampler, vec2 P, float bias);
-
- vec4 texture( sampler3D sampler, vec3 P, float bias);
-ivec4 texture(isampler3D sampler, vec3 P, float bias);
-uvec4 texture(usampler3D sampler, vec3 P, float bias);
-
- vec4 texture( samplerCube sampler, vec3 P, float bias);
-ivec4 texture(isamplerCube sampler, vec3 P, float bias);
-uvec4 texture(usamplerCube sampler, vec3 P, float bias);
-
-float texture(sampler2DShadow sampler, vec3 P, float bias);
-float texture(samplerCubeShadow sampler, vec4 P, float bias);
-
- vec4 texture( sampler2DArray sampler, vec3 P, float bias);
-ivec4 texture(isampler2DArray sampler, vec3 P, float bias);
-uvec4 texture(usampler2DArray sampler, vec3 P, float bias);
-
-float texture(sampler2DArrayShadow sampler, vec4 P, float bias);
-
-/* textureProj - bias variants */
- vec4 textureProj( sampler2D sampler, vec3 P, float bias);
-ivec4 textureProj(isampler2D sampler, vec3 P, float bias);
-uvec4 textureProj(usampler2D sampler, vec3 P, float bias);
- vec4 textureProj( sampler2D sampler, vec4 P, float bias);
-ivec4 textureProj(isampler2D sampler, vec4 P, float bias);
-uvec4 textureProj(usampler2D sampler, vec4 P, float bias);
-
- vec4 textureProj( sampler3D sampler, vec4 P, float bias);
-ivec4 textureProj(isampler3D sampler, vec4 P, float bias);
-uvec4 textureProj(usampler3D sampler, vec4 P, float bias);
-
-float textureProj(sampler2DShadow sampler, vec4 P, float bias);
-
-/* textureOffset - bias variants */
- vec4 textureOffset( sampler2D sampler, vec2 P, ivec2 offset, float bias);
-ivec4 textureOffset(isampler2D sampler, vec2 P, ivec2 offset, float bias);
-uvec4 textureOffset(usampler2D sampler, vec2 P, ivec2 offset, float bias);
-
- vec4 textureOffset( sampler3D sampler, vec3 P, ivec3 offset, float bias);
-ivec4 textureOffset(isampler3D sampler, vec3 P, ivec3 offset, float bias);
-uvec4 textureOffset(usampler3D sampler, vec3 P, ivec3 offset, float bias);
-
-float textureOffset(sampler2DShadow sampler, vec3 P, ivec2 offset, float bias);
-
- vec4 textureOffset( sampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-ivec4 textureOffset(isampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-uvec4 textureOffset(usampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-
-/* textureProjOffsetOffset - bias variants */
- vec4 textureProjOffset( sampler2D sampler, vec3 P, ivec2 offset, float bias);
-ivec4 textureProjOffset(isampler2D sampler, vec3 P, ivec2 offset, float bias);
-uvec4 textureProjOffset(usampler2D sampler, vec3 P, ivec2 offset, float bias);
- vec4 textureProjOffset( sampler2D sampler, vec4 P, ivec2 offset, float bias);
-ivec4 textureProjOffset(isampler2D sampler, vec4 P, ivec2 offset, float bias);
-uvec4 textureProjOffset(usampler2D sampler, vec4 P, ivec2 offset, float bias);
-
- vec4 textureProjOffset( sampler3D sampler, vec4 P, ivec3 offset, float bias);
-ivec4 textureProjOffset(isampler3D sampler, vec4 P, ivec3 offset, float bias);
-uvec4 textureProjOffset(usampler3D sampler, vec4 P, ivec3 offset, float bias);
-
-float textureProjOffset(sampler2DShadow s, vec4 P, ivec2 offset, float bias);
-
-/*
- * 8.9 - Fragment Processing Functions
- */
-float dFdx(float p);
-vec2 dFdx(vec2 p);
-vec3 dFdx(vec3 p);
-vec4 dFdx(vec4 p);
-
-float dFdy(float p);
-vec2 dFdy(vec2 p);
-vec3 dFdy(vec3 p);
-vec4 dFdy(vec4 p);
-
-float fwidth(float p);
-vec2 fwidth(vec2 p);
-vec3 fwidth(vec3 p);
-vec4 fwidth(vec4 p);
diff --git a/src/glsl/builtins/profiles/300es.glsl b/src/glsl/builtins/profiles/300es.glsl
deleted file mode 100644
index 4b7160d..0000000
--- a/src/glsl/builtins/profiles/300es.glsl
+++ /dev/null
@@ -1,749 +0,0 @@
-#version 300 es
-/*
- * 8.1 - Angle and Trigonometry Functions
- */
-float radians(float degrees);
-vec2 radians(vec2 degrees);
-vec3 radians(vec3 degrees);
-vec4 radians(vec4 degrees);
-
-float degrees(float radians);
-vec2 degrees(vec2 radians);
-vec3 degrees(vec3 radians);
-vec4 degrees(vec4 radians);
-
-float sin(float angle);
-vec2 sin(vec2 angle);
-vec3 sin(vec3 angle);
-vec4 sin(vec4 angle);
-
-float cos(float angle);
-vec2 cos(vec2 angle);
-vec3 cos(vec3 angle);
-vec4 cos(vec4 angle);
-
-float tan(float angle);
-vec2 tan(vec2 angle);
-vec3 tan(vec3 angle);
-vec4 tan(vec4 angle);
-
-float asin(float angle);
-vec2 asin(vec2 angle);
-vec3 asin(vec3 angle);
-vec4 asin(vec4 angle);
-
-float acos(float angle);
-vec2 acos(vec2 angle);
-vec3 acos(vec3 angle);
-vec4 acos(vec4 angle);
-
-float atan(float y, float x);
-vec2 atan(vec2 y, vec2 x);
-vec3 atan(vec3 y, vec3 x);
-vec4 atan(vec4 y, vec4 x);
-
-float atan(float y_over_x);
-vec2 atan(vec2 y_over_x);
-vec3 atan(vec3 y_over_x);
-vec4 atan(vec4 y_over_x);
-
-float sinh(float x);
-vec2 sinh(vec2 x);
-vec3 sinh(vec3 x);
-vec4 sinh(vec4 x);
-
-float cosh(float x);
-vec2 cosh(vec2 x);
-vec3 cosh(vec3 x);
-vec4 cosh(vec4 x);
-
-float tanh(float x);
-vec2 tanh(vec2 x);
-vec3 tanh(vec3 x);
-vec4 tanh(vec4 x);
-
-float asinh(float x);
-vec2 asinh(vec2 x);
-vec3 asinh(vec3 x);
-vec4 asinh(vec4 x);
-
-float acosh(float x);
-vec2 acosh(vec2 x);
-vec3 acosh(vec3 x);
-vec4 acosh(vec4 x);
-
-float atanh(float x);
-vec2 atanh(vec2 x);
-vec3 atanh(vec3 x);
-vec4 atanh(vec4 x);
-
-/*
- * 8.2 - Exponential Functions
- */
-float pow(float x, float y);
-vec2 pow(vec2 x, vec2 y);
-vec3 pow(vec3 x, vec3 y);
-vec4 pow(vec4 x, vec4 y);
-
-float exp(float x);
-vec2 exp(vec2 x);
-vec3 exp(vec3 x);
-vec4 exp(vec4 x);
-
-float log(float x);
-vec2 log(vec2 x);
-vec3 log(vec3 x);
-vec4 log(vec4 x);
-
-float exp2(float x);
-vec2 exp2(vec2 x);
-vec3 exp2(vec3 x);
-vec4 exp2(vec4 x);
-
-float log2(float x);
-vec2 log2(vec2 x);
-vec3 log2(vec3 x);
-vec4 log2(vec4 x);
-
-float sqrt(float x);
-vec2 sqrt(vec2 x);
-vec3 sqrt(vec3 x);
-vec4 sqrt(vec4 x);
-
-float inversesqrt(float x);
-vec2 inversesqrt(vec2 x);
-vec3 inversesqrt(vec3 x);
-vec4 inversesqrt(vec4 x);
-
-/*
- * 8.3 - Common Functions
- */
-float abs(float x);
-vec2 abs(vec2 x);
-vec3 abs(vec3 x);
-vec4 abs(vec4 x);
-int abs(int x);
-ivec2 abs(ivec2 x);
-ivec3 abs(ivec3 x);
-ivec4 abs(ivec4 x);
-
-float sign(float x);
-vec2 sign(vec2 x);
-vec3 sign(vec3 x);
-vec4 sign(vec4 x);
-int sign(int x);
-ivec2 sign(ivec2 x);
-ivec3 sign(ivec3 x);
-ivec4 sign(ivec4 x);
-
-float floor(float x);
-vec2 floor(vec2 x);
-vec3 floor(vec3 x);
-vec4 floor(vec4 x);
-
-float trunc(float x);
-vec2 trunc(vec2 x);
-vec3 trunc(vec3 x);
-vec4 trunc(vec4 x);
-
-float round(float x);
-vec2 round(vec2 x);
-vec3 round(vec3 x);
-vec4 round(vec4 x);
-
-float roundEven(float x);
-vec2 roundEven(vec2 x);
-vec3 roundEven(vec3 x);
-vec4 roundEven(vec4 x);
-
-float ceil(float x);
-vec2 ceil(vec2 x);
-vec3 ceil(vec3 x);
-vec4 ceil(vec4 x);
-
-float fract(float x);
-vec2 fract(vec2 x);
-vec3 fract(vec3 x);
-vec4 fract(vec4 x);
-
-float mod(float x, float y);
-vec2 mod(vec2 x, float y);
-vec3 mod(vec3 x, float y);
-vec4 mod(vec4 x, float y);
-
-vec2 mod(vec2 x, vec2 y);
-vec3 mod(vec3 x, vec3 y);
-vec4 mod(vec4 x, vec4 y);
-
-float modf(float x, out float i);
-vec2 modf(vec2 x, out vec2 i);
-vec3 modf(vec3 x, out vec3 i);
-vec4 modf(vec4 x, out vec4 i);
-
-float min(float x, float y);
-vec2 min(vec2 x, vec2 y);
-vec3 min(vec3 x, vec3 y);
-vec4 min(vec4 x, vec4 y);
-
-vec2 min(vec2 x, float y);
-vec3 min(vec3 x, float y);
-vec4 min(vec4 x, float y);
-
-int min(int x, int y);
-ivec2 min(ivec2 x, ivec2 y);
-ivec3 min(ivec3 x, ivec3 y);
-ivec4 min(ivec4 x, ivec4 y);
-
-ivec2 min(ivec2 x, int y);
-ivec3 min(ivec3 x, int y);
-ivec4 min(ivec4 x, int y);
-
-uint min(uint x, uint y);
-uvec2 min(uvec2 x, uvec2 y);
-uvec3 min(uvec3 x, uvec3 y);
-uvec4 min(uvec4 x, uvec4 y);
-
-uvec2 min(uvec2 x, uint y);
-uvec3 min(uvec3 x, uint y);
-uvec4 min(uvec4 x, uint y);
-
-float max(float x, float y);
-vec2 max(vec2 x, vec2 y);
-vec3 max(vec3 x, vec3 y);
-vec4 max(vec4 x, vec4 y);
-
-vec2 max(vec2 x, float y);
-vec3 max(vec3 x, float y);
-vec4 max(vec4 x, float y);
-
-int max(int x, int y);
-ivec2 max(ivec2 x, ivec2 y);
-ivec3 max(ivec3 x, ivec3 y);
-ivec4 max(ivec4 x, ivec4 y);
-
-ivec2 max(ivec2 x, int y);
-ivec3 max(ivec3 x, int y);
-ivec4 max(ivec4 x, int y);
-
-uint max(uint x, uint y);
-uvec2 max(uvec2 x, uvec2 y);
-uvec3 max(uvec3 x, uvec3 y);
-uvec4 max(uvec4 x, uvec4 y);
-
-uvec2 max(uvec2 x, uint y);
-uvec3 max(uvec3 x, uint y);
-uvec4 max(uvec4 x, uint y);
-
-float clamp(float x, float minVal, float maxVal);
-vec2 clamp(vec2 x, vec2 minVal, vec2 maxVal);
-vec3 clamp(vec3 x, vec3 minVal, vec3 maxVal);
-vec4 clamp(vec4 x, vec4 minVal, vec4 maxVal);
-
-vec2 clamp(vec2 x, float minVal, float maxVal);
-vec3 clamp(vec3 x, float minVal, float maxVal);
-vec4 clamp(vec4 x, float minVal, float maxVal);
-
-int clamp(int x, int minVal, int maxVal);
-ivec2 clamp(ivec2 x, ivec2 minVal, ivec2 maxVal);
-ivec3 clamp(ivec3 x, ivec3 minVal, ivec3 maxVal);
-ivec4 clamp(ivec4 x, ivec4 minVal, ivec4 maxVal);
-
-ivec2 clamp(ivec2 x, int minVal, int maxVal);
-ivec3 clamp(ivec3 x, int minVal, int maxVal);
-ivec4 clamp(ivec4 x, int minVal, int maxVal);
-
-uint clamp(uint x, uint minVal, uint maxVal);
-uvec2 clamp(uvec2 x, uvec2 minVal, uvec2 maxVal);
-uvec3 clamp(uvec3 x, uvec3 minVal, uvec3 maxVal);
-uvec4 clamp(uvec4 x, uvec4 minVal, uvec4 maxVal);
-
-uvec2 clamp(uvec2 x, uint minVal, uint maxVal);
-uvec3 clamp(uvec3 x, uint minVal, uint maxVal);
-uvec4 clamp(uvec4 x, uint minVal, uint maxVal);
-
-float mix(float x, float y, float a);
-vec2 mix(vec2 x, vec2 y, vec2 a);
-vec3 mix(vec3 x, vec3 y, vec3 a);
-vec4 mix(vec4 x, vec4 y, vec4 a);
-
-vec2 mix(vec2 x, vec2 y, float a);
-vec3 mix(vec3 x, vec3 y, float a);
-vec4 mix(vec4 x, vec4 y, float a);
-
-float mix(float x, float y, bool a);
-vec2 mix(vec2 x, vec2 y, bvec2 a);
-vec3 mix(vec3 x, vec3 y, bvec3 a);
-vec4 mix(vec4 x, vec4 y, bvec4 a);
-
-float step(float edge, float x);
-vec2 step(vec2 edge, vec2 x);
-vec3 step(vec3 edge, vec3 x);
-vec4 step(vec4 edge, vec4 x);
-
-vec2 step(float edge, vec2 x);
-vec3 step(float edge, vec3 x);
-vec4 step(float edge, vec4 x);
-
-float smoothstep(float edge0, float edge1, float x);
-vec2 smoothstep(vec2 edge0, vec2 edge1, vec2 x);
-vec3 smoothstep(vec3 edge0, vec3 edge1, vec3 x);
-vec4 smoothstep(vec4 edge0, vec4 edge1, vec4 x);
-
-vec2 smoothstep(float edge0, float edge1, vec2 x);
-vec3 smoothstep(float edge0, float edge1, vec3 x);
-vec4 smoothstep(float edge0, float edge1, vec4 x);
-
-bool isnan(float x);
-bvec2 isnan(vec2 x);
-bvec3 isnan(vec3 x);
-bvec4 isnan(vec4 x);
-
-bool isinf(float x);
-bvec2 isinf(vec2 x);
-bvec3 isinf(vec3 x);
-bvec4 isinf(vec4 x);
-
-int floatBitsToInt(float value);
-ivec2 floatBitsToInt(vec2 value);
-ivec3 floatBitsToInt(vec3 value);
-ivec4 floatBitsToInt(vec4 value);
-
-uint floatBitsToUint(float value);
-uvec2 floatBitsToUint(vec2 value);
-uvec3 floatBitsToUint(vec3 value);
-uvec4 floatBitsToUint(vec4 value);
-
-float intBitsToFloat(int value);
-vec2 intBitsToFloat(ivec2 value);
-vec3 intBitsToFloat(ivec3 value);
-vec4 intBitsToFloat(ivec4 value);
-
-float uintBitsToFloat(uint value);
-vec2 uintBitsToFloat(uvec2 value);
-vec3 uintBitsToFloat(uvec3 value);
-vec4 uintBitsToFloat(uvec4 value);
-
-/*
- * 8.4 - Floating-Point Pack and Unpack Functions
- */
-highp uint packSnorm2x16( vec2 v);
-highp uint packUnorm2x16( vec2 v);
-highp uint packHalf2x16 (mediump vec2 v);
-
-highp vec2 unpackSnorm2x16(highp uint p);
-highp vec2 unpackUnorm2x16(highp uint p);
-mediump vec2 unpackHalf2x16 (highp uint p);
-
-/*
- * 8.5 - Geometric Functions
- */
-float length(float x);
-float length(vec2 x);
-float length(vec3 x);
-float length(vec4 x);
-
-float distance(float p0, float p1);
-float distance(vec2 p0, vec2 p1);
-float distance(vec3 p0, vec3 p1);
-float distance(vec4 p0, vec4 p1);
-
-float dot(float x, float y);
-float dot(vec2 x, vec2 y);
-float dot(vec3 x, vec3 y);
-float dot(vec4 x, vec4 y);
-
-vec3 cross(vec3 x, vec3 y);
-
-float normalize(float x);
-vec2 normalize(vec2 x);
-vec3 normalize(vec3 x);
-vec4 normalize(vec4 x);
-
-float faceforward(float N, float I, float Nref);
-vec2 faceforward(vec2 N, vec2 I, vec2 Nref);
-vec3 faceforward(vec3 N, vec3 I, vec3 Nref);
-vec4 faceforward(vec4 N, vec4 I, vec4 Nref);
-
-float reflect(float I, float N);
-vec2 reflect(vec2 I, vec2 N);
-vec3 reflect(vec3 I, vec3 N);
-vec4 reflect(vec4 I, vec4 N);
-
-float refract(float I, float N, float eta);
-vec2 refract(vec2 I, vec2 N, float eta);
-vec3 refract(vec3 I, vec3 N, float eta);
-vec4 refract(vec4 I, vec4 N, float eta);
-
-/*
- * 8.6 - Matrix Functions
- */
-mat2 matrixCompMult(mat2 x, mat2 y);
-mat3 matrixCompMult(mat3 x, mat3 y);
-mat4 matrixCompMult(mat4 x, mat4 y);
-mat2x3 matrixCompMult(mat2x3 x, mat2x3 y);
-mat2x4 matrixCompMult(mat2x4 x, mat2x4 y);
-mat3x2 matrixCompMult(mat3x2 x, mat3x2 y);
-mat3x4 matrixCompMult(mat3x4 x, mat3x4 y);
-mat4x2 matrixCompMult(mat4x2 x, mat4x2 y);
-mat4x3 matrixCompMult(mat4x3 x, mat4x3 y);
-
-mat2 outerProduct(vec2 c, vec2 r);
-mat3 outerProduct(vec3 c, vec3 r);
-mat4 outerProduct(vec4 c, vec4 r);
-
-mat2x3 outerProduct(vec3 c, vec2 r);
-mat3x2 outerProduct(vec2 c, vec3 r);
-
-mat2x4 outerProduct(vec4 c, vec2 r);
-mat4x2 outerProduct(vec2 c, vec4 r);
-
-mat3x4 outerProduct(vec4 c, vec3 r);
-mat4x3 outerProduct(vec3 c, vec4 r);
-
-mat2 transpose(mat2 m);
-mat3 transpose(mat3 m);
-mat4 transpose(mat4 m);
-
-mat2x3 transpose(mat3x2 m);
-mat3x2 transpose(mat2x3 m);
-
-mat2x4 transpose(mat4x2 m);
-mat4x2 transpose(mat2x4 m);
-
-mat3x4 transpose(mat4x3 m);
-mat4x3 transpose(mat3x4 m);
-
-float determinant(mat2 m);
-float determinant(mat3 m);
-float determinant(mat4 m);
-
-mat2 inverse(mat2 m);
-mat3 inverse(mat3 m);
-mat4 inverse(mat4 m);
-
-/*
- * 8.7 - Vector Relational Functions
- */
-bvec2 lessThan( vec2 x, vec2 y);
-bvec3 lessThan( vec3 x, vec3 y);
-bvec4 lessThan( vec4 x, vec4 y);
-bvec2 lessThan(ivec2 x, ivec2 y);
-bvec3 lessThan(ivec3 x, ivec3 y);
-bvec4 lessThan(ivec4 x, ivec4 y);
-bvec2 lessThan(uvec2 x, uvec2 y);
-bvec3 lessThan(uvec3 x, uvec3 y);
-bvec4 lessThan(uvec4 x, uvec4 y);
-
-bvec2 lessThanEqual( vec2 x, vec2 y);
-bvec3 lessThanEqual( vec3 x, vec3 y);
-bvec4 lessThanEqual( vec4 x, vec4 y);
-bvec2 lessThanEqual(ivec2 x, ivec2 y);
-bvec3 lessThanEqual(ivec3 x, ivec3 y);
-bvec4 lessThanEqual(ivec4 x, ivec4 y);
-bvec2 lessThanEqual(uvec2 x, uvec2 y);
-bvec3 lessThanEqual(uvec3 x, uvec3 y);
-bvec4 lessThanEqual(uvec4 x, uvec4 y);
-
-bvec2 greaterThan( vec2 x, vec2 y);
-bvec3 greaterThan( vec3 x, vec3 y);
-bvec4 greaterThan( vec4 x, vec4 y);
-bvec2 greaterThan(ivec2 x, ivec2 y);
-bvec3 greaterThan(ivec3 x, ivec3 y);
-bvec4 greaterThan(ivec4 x, ivec4 y);
-bvec2 greaterThan(uvec2 x, uvec2 y);
-bvec3 greaterThan(uvec3 x, uvec3 y);
-bvec4 greaterThan(uvec4 x, uvec4 y);
-
-bvec2 greaterThanEqual( vec2 x, vec2 y);
-bvec3 greaterThanEqual( vec3 x, vec3 y);
-bvec4 greaterThanEqual( vec4 x, vec4 y);
-bvec2 greaterThanEqual(ivec2 x, ivec2 y);
-bvec3 greaterThanEqual(ivec3 x, ivec3 y);
-bvec4 greaterThanEqual(ivec4 x, ivec4 y);
-bvec2 greaterThanEqual(uvec2 x, uvec2 y);
-bvec3 greaterThanEqual(uvec3 x, uvec3 y);
-bvec4 greaterThanEqual(uvec4 x, uvec4 y);
-
-bvec2 equal( vec2 x, vec2 y);
-bvec3 equal( vec3 x, vec3 y);
-bvec4 equal( vec4 x, vec4 y);
-bvec2 equal(ivec2 x, ivec2 y);
-bvec3 equal(ivec3 x, ivec3 y);
-bvec4 equal(ivec4 x, ivec4 y);
-bvec2 equal(uvec2 x, uvec2 y);
-bvec3 equal(uvec3 x, uvec3 y);
-bvec4 equal(uvec4 x, uvec4 y);
-bvec2 equal(bvec2 x, bvec2 y);
-bvec3 equal(bvec3 x, bvec3 y);
-bvec4 equal(bvec4 x, bvec4 y);
-
-bvec2 notEqual( vec2 x, vec2 y);
-bvec3 notEqual( vec3 x, vec3 y);
-bvec4 notEqual( vec4 x, vec4 y);
-bvec2 notEqual(ivec2 x, ivec2 y);
-bvec3 notEqual(ivec3 x, ivec3 y);
-bvec4 notEqual(ivec4 x, ivec4 y);
-bvec2 notEqual(uvec2 x, uvec2 y);
-bvec3 notEqual(uvec3 x, uvec3 y);
-bvec4 notEqual(uvec4 x, uvec4 y);
-bvec2 notEqual(bvec2 x, bvec2 y);
-bvec3 notEqual(bvec3 x, bvec3 y);
-bvec4 notEqual(bvec4 x, bvec4 y);
-
-bool any(bvec2 x);
-bool any(bvec3 x);
-bool any(bvec4 x);
-
-bool all(bvec2 x);
-bool all(bvec3 x);
-bool all(bvec4 x);
-
-bvec2 not(bvec2 x);
-bvec3 not(bvec3 x);
-bvec4 not(bvec4 x);
-
-/*
- * 8.8 - Texture Lookup Functions
- */
-
-/* textureSize */
-ivec2 textureSize( sampler2D sampler, int lod);
-ivec2 textureSize(isampler2D sampler, int lod);
-ivec2 textureSize(usampler2D sampler, int lod);
-
-ivec3 textureSize( sampler3D sampler, int lod);
-ivec3 textureSize(isampler3D sampler, int lod);
-ivec3 textureSize(usampler3D sampler, int lod);
-
-ivec2 textureSize( samplerCube sampler, int lod);
-ivec2 textureSize(isamplerCube sampler, int lod);
-ivec2 textureSize(usamplerCube sampler, int lod);
-
-ivec2 textureSize(sampler2DShadow sampler, int lod);
-ivec2 textureSize(samplerCubeShadow sampler, int lod);
-
-ivec3 textureSize( sampler2DArray sampler, int lod);
-ivec3 textureSize(isampler2DArray sampler, int lod);
-ivec3 textureSize(usampler2DArray sampler, int lod);
-
-ivec3 textureSize(sampler2DArrayShadow sampler, int lod);
-
-/* texture - no bias */
- vec4 texture( sampler2D sampler, vec2 P);
-ivec4 texture(isampler2D sampler, vec2 P);
-uvec4 texture(usampler2D sampler, vec2 P);
-
- vec4 texture( sampler3D sampler, vec3 P);
-ivec4 texture(isampler3D sampler, vec3 P);
-uvec4 texture(usampler3D sampler, vec3 P);
-
- vec4 texture( samplerCube sampler, vec3 P);
-ivec4 texture(isamplerCube sampler, vec3 P);
-uvec4 texture(usamplerCube sampler, vec3 P);
-
-float texture(sampler2DShadow sampler, vec3 P);
-float texture(samplerCubeShadow sampler, vec4 P);
-
- vec4 texture( sampler2DArray sampler, vec3 P);
-ivec4 texture(isampler2DArray sampler, vec3 P);
-uvec4 texture(usampler2DArray sampler, vec3 P);
-
-float texture(sampler2DArrayShadow sampler, vec4 P);
-
-/* textureProj - no bias */
- vec4 textureProj( sampler2D sampler, vec3 P);
-ivec4 textureProj(isampler2D sampler, vec3 P);
-uvec4 textureProj(usampler2D sampler, vec3 P);
- vec4 textureProj( sampler2D sampler, vec4 P);
-ivec4 textureProj(isampler2D sampler, vec4 P);
-uvec4 textureProj(usampler2D sampler, vec4 P);
-
- vec4 textureProj( sampler3D sampler, vec4 P);
-ivec4 textureProj(isampler3D sampler, vec4 P);
-uvec4 textureProj(usampler3D sampler, vec4 P);
-
-float textureProj(sampler2DShadow sampler, vec4 P);
-
-/* textureLod */
- vec4 textureLod( sampler2D sampler, vec2 P, float lod);
-ivec4 textureLod(isampler2D sampler, vec2 P, float lod);
-uvec4 textureLod(usampler2D sampler, vec2 P, float lod);
-
- vec4 textureLod( sampler3D sampler, vec3 P, float lod);
-ivec4 textureLod(isampler3D sampler, vec3 P, float lod);
-uvec4 textureLod(usampler3D sampler, vec3 P, float lod);
-
- vec4 textureLod( samplerCube sampler, vec3 P, float lod);
-ivec4 textureLod(isamplerCube sampler, vec3 P, float lod);
-uvec4 textureLod(usamplerCube sampler, vec3 P, float lod);
-
-float textureLod(sampler2DShadow sampler, vec3 P, float lod);
-
- vec4 textureLod( sampler2DArray sampler, vec3 P, float lod);
-ivec4 textureLod(isampler2DArray sampler, vec3 P, float lod);
-uvec4 textureLod(usampler2DArray sampler, vec3 P, float lod);
-
-/* textureOffset - no bias */
- vec4 textureOffset( sampler2D sampler, vec2 P, ivec2 offset);
-ivec4 textureOffset(isampler2D sampler, vec2 P, ivec2 offset);
-uvec4 textureOffset(usampler2D sampler, vec2 P, ivec2 offset);
-
- vec4 textureOffset( sampler3D sampler, vec3 P, ivec3 offset);
-ivec4 textureOffset(isampler3D sampler, vec3 P, ivec3 offset);
-uvec4 textureOffset(usampler3D sampler, vec3 P, ivec3 offset);
-
-float textureOffset(sampler2DShadow sampler, vec3 P, ivec2 offset);
-
- vec4 textureOffset( sampler2DArray sampler, vec3 P, ivec2 offset);
-ivec4 textureOffset(isampler2DArray sampler, vec3 P, ivec2 offset);
-uvec4 textureOffset(usampler2DArray sampler, vec3 P, ivec2 offset);
-
-/* texelFetch */
- vec4 texelFetch( sampler2D sampler, ivec2 P, int lod);
-ivec4 texelFetch(isampler2D sampler, ivec2 P, int lod);
-uvec4 texelFetch(usampler2D sampler, ivec2 P, int lod);
-
- vec4 texelFetch( sampler3D sampler, ivec3 P, int lod);
-ivec4 texelFetch(isampler3D sampler, ivec3 P, int lod);
-uvec4 texelFetch(usampler3D sampler, ivec3 P, int lod);
-
- vec4 texelFetch( sampler2DArray sampler, ivec3 P, int lod);
-ivec4 texelFetch(isampler2DArray sampler, ivec3 P, int lod);
-uvec4 texelFetch(usampler2DArray sampler, ivec3 P, int lod);
-
-/* texelFetchOffset */
- vec4 texelFetchOffset( sampler2D sampler, ivec2 P, int lod, ivec2 offset);
-ivec4 texelFetchOffset(isampler2D sampler, ivec2 P, int lod, ivec2 offset);
-uvec4 texelFetchOffset(usampler2D sampler, ivec2 P, int lod, ivec2 offset);
-
- vec4 texelFetchOffset( sampler3D sampler, ivec3 P, int lod, ivec3 offset);
-ivec4 texelFetchOffset(isampler3D sampler, ivec3 P, int lod, ivec3 offset);
-uvec4 texelFetchOffset(usampler3D sampler, ivec3 P, int lod, ivec3 offset);
-
- vec4 texelFetchOffset( sampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-ivec4 texelFetchOffset(isampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-uvec4 texelFetchOffset(usampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-
-/* textureProjOffset - no bias */
- vec4 textureProjOffset( sampler2D sampler, vec3 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2D sampler, vec3 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2D sampler, vec3 P, ivec2 offset);
- vec4 textureProjOffset( sampler2D sampler, vec4 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2D sampler, vec4 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2D sampler, vec4 P, ivec2 offset);
-
- vec4 textureProjOffset( sampler3D sampler, vec4 P, ivec3 offset);
-ivec4 textureProjOffset(isampler3D sampler, vec4 P, ivec3 offset);
-uvec4 textureProjOffset(usampler3D sampler, vec4 P, ivec3 offset);
-
-float textureProjOffset(sampler2DShadow sampler, vec4 P, ivec2 offset);
-
-/* textureLodOffset */
- vec4 textureLodOffset( sampler2D sampler, vec2 P, float lod, ivec2 offset);
-ivec4 textureLodOffset(isampler2D sampler, vec2 P, float lod, ivec2 offset);
-uvec4 textureLodOffset(usampler2D sampler, vec2 P, float lod, ivec2 offset);
-
- vec4 textureLodOffset( sampler3D sampler, vec3 P, float lod, ivec3 offset);
-ivec4 textureLodOffset(isampler3D sampler, vec3 P, float lod, ivec3 offset);
-uvec4 textureLodOffset(usampler3D sampler, vec3 P, float lod, ivec3 offset);
-
-float textureLodOffset(sampler2DShadow samp, vec3 P, float lod, ivec2 offset);
-
- vec4 textureLodOffset( sampler2DArray samp, vec3 P, float lod, ivec2 offset);
-ivec4 textureLodOffset(isampler2DArray samp, vec3 P, float lod, ivec2 offset);
-uvec4 textureLodOffset(usampler2DArray samp, vec3 P, float lod, ivec2 offset);
-
-/* textureProjLod */
- vec4 textureProjLod( sampler2D sampler, vec3 P, float lod);
-ivec4 textureProjLod(isampler2D sampler, vec3 P, float lod);
-uvec4 textureProjLod(usampler2D sampler, vec3 P, float lod);
- vec4 textureProjLod( sampler2D sampler, vec4 P, float lod);
-ivec4 textureProjLod(isampler2D sampler, vec4 P, float lod);
-uvec4 textureProjLod(usampler2D sampler, vec4 P, float lod);
-
- vec4 textureProjLod( sampler3D sampler, vec4 P, float lod);
-ivec4 textureProjLod(isampler3D sampler, vec4 P, float lod);
-uvec4 textureProjLod(usampler3D sampler, vec4 P, float lod);
-
-float textureProjLod(sampler2DShadow sampler, vec4 P, float lod);
-
-/* textureProjLodOffset */
- vec4 textureProjLodOffset( sampler2D sampler, vec3 P, float lod, ivec2 offset);
-ivec4 textureProjLodOffset(isampler2D sampler, vec3 P, float lod, ivec2 offset);
-uvec4 textureProjLodOffset(usampler2D sampler, vec3 P, float lod, ivec2 offset);
- vec4 textureProjLodOffset( sampler2D sampler, vec4 P, float lod, ivec2 offset);
-ivec4 textureProjLodOffset(isampler2D sampler, vec4 P, float lod, ivec2 offset);
-uvec4 textureProjLodOffset(usampler2D sampler, vec4 P, float lod, ivec2 offset);
-
- vec4 textureProjLodOffset( sampler3D sampler, vec4 P, float lod, ivec3 offset);
-ivec4 textureProjLodOffset(isampler3D sampler, vec4 P, float lod, ivec3 offset);
-uvec4 textureProjLodOffset(usampler3D sampler, vec4 P, float lod, ivec3 offset);
-
-float textureProjLodOffset(sampler2DShadow s, vec4 P, float lod, ivec2 offset);
-
-/* textureGrad */
- vec4 textureGrad( sampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureGrad(isampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureGrad(usampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-
- vec4 textureGrad( sampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureGrad(isampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureGrad(usampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureGrad( samplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureGrad(isamplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureGrad(usamplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-
-float textureGrad(sampler2DShadow sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-float textureGrad(samplerCubeShadow sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureGrad( sampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureGrad(isampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureGrad(usampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-
-float textureGrad(sampler2DArrayShadow sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-/* textureGradOffset */
- vec4 textureGradOffset( sampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-ivec4 textureGradOffset(isampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-uvec4 textureGradOffset(usampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-
- vec4 textureGradOffset( sampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-ivec4 textureGradOffset(isampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-uvec4 textureGradOffset(usampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-
-float textureGradOffset(sampler2DShadow s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-
- vec4 textureGradOffset( sampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureGradOffset(isampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureGradOffset(usampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-
-float textureGradOffset(sampler2DArrayShadow s, vec4 P, vec2 dx, vec2 dy, ivec2 o);
-
-/* textureProjGrad */
- vec4 textureProjGrad( sampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
- vec4 textureProjGrad( sampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
- vec4 textureProjGrad( sampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureProjGrad(isampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureProjGrad(usampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-
-float textureProjGrad(sampler2DShadow sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-/* textureProjGradOffset */
- vec4 textureProjGradOffset( sampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
- vec4 textureProjGradOffset( sampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-
- vec4 textureProjGradOffset( sampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-ivec4 textureProjGradOffset(isampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-uvec4 textureProjGradOffset(usampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-
-float textureProjGradOffset(sampler2DShadow s, vec4 P, vec2 dx, vec2 dy, ivec2 o);
diff --git a/src/glsl/builtins/profiles/330.frag b/src/glsl/builtins/profiles/330.frag
deleted file mode 100644
index 224854b..0000000
--- a/src/glsl/builtins/profiles/330.frag
+++ /dev/null
@@ -1,140 +0,0 @@
-#version 330
-/* texture - bias variants */
- vec4 texture( sampler1D sampler, float P, float bias);
-ivec4 texture(isampler1D sampler, float P, float bias);
-uvec4 texture(usampler1D sampler, float P, float bias);
-
- vec4 texture( sampler2D sampler, vec2 P, float bias);
-ivec4 texture(isampler2D sampler, vec2 P, float bias);
-uvec4 texture(usampler2D sampler, vec2 P, float bias);
-
- vec4 texture( sampler3D sampler, vec3 P, float bias);
-ivec4 texture(isampler3D sampler, vec3 P, float bias);
-uvec4 texture(usampler3D sampler, vec3 P, float bias);
-
- vec4 texture( samplerCube sampler, vec3 P, float bias);
-ivec4 texture(isamplerCube sampler, vec3 P, float bias);
-uvec4 texture(usamplerCube sampler, vec3 P, float bias);
-
-float texture(sampler1DShadow sampler, vec3 P, float bias);
-float texture(sampler2DShadow sampler, vec3 P, float bias);
-float texture(samplerCubeShadow sampler, vec4 P, float bias);
-
- vec4 texture( sampler1DArray sampler, vec2 P, float bias);
-ivec4 texture(isampler1DArray sampler, vec2 P, float bias);
-uvec4 texture(usampler1DArray sampler, vec2 P, float bias);
-
- vec4 texture( sampler2DArray sampler, vec3 P, float bias);
-ivec4 texture(isampler2DArray sampler, vec3 P, float bias);
-uvec4 texture(usampler2DArray sampler, vec3 P, float bias);
-
-float texture(sampler1DArrayShadow sampler, vec3 P, float bias);
-
-/* textureProj - bias variants */
- vec4 textureProj( sampler1D sampler, vec2 P, float bias);
-ivec4 textureProj(isampler1D sampler, vec2 P, float bias);
-uvec4 textureProj(usampler1D sampler, vec2 P, float bias);
- vec4 textureProj( sampler1D sampler, vec4 P, float bias);
-ivec4 textureProj(isampler1D sampler, vec4 P, float bias);
-uvec4 textureProj(usampler1D sampler, vec4 P, float bias);
-
- vec4 textureProj( sampler2D sampler, vec3 P, float bias);
-ivec4 textureProj(isampler2D sampler, vec3 P, float bias);
-uvec4 textureProj(usampler2D sampler, vec3 P, float bias);
- vec4 textureProj( sampler2D sampler, vec4 P, float bias);
-ivec4 textureProj(isampler2D sampler, vec4 P, float bias);
-uvec4 textureProj(usampler2D sampler, vec4 P, float bias);
-
- vec4 textureProj( sampler3D sampler, vec4 P, float bias);
-ivec4 textureProj(isampler3D sampler, vec4 P, float bias);
-uvec4 textureProj(usampler3D sampler, vec4 P, float bias);
-
-float textureProj(sampler1DShadow sampler, vec4 P, float bias);
-float textureProj(sampler2DShadow sampler, vec4 P, float bias);
-
-/* textureOffset - bias variants */
- vec4 textureOffset( sampler1D sampler, float P, int offset, float bias);
-ivec4 textureOffset(isampler1D sampler, float P, int offset, float bias);
-uvec4 textureOffset(usampler1D sampler, float P, int offset, float bias);
-
- vec4 textureOffset( sampler2D sampler, vec2 P, ivec2 offset, float bias);
-ivec4 textureOffset(isampler2D sampler, vec2 P, ivec2 offset, float bias);
-uvec4 textureOffset(usampler2D sampler, vec2 P, ivec2 offset, float bias);
-
- vec4 textureOffset( sampler3D sampler, vec3 P, ivec3 offset, float bias);
-ivec4 textureOffset(isampler3D sampler, vec3 P, ivec3 offset, float bias);
-uvec4 textureOffset(usampler3D sampler, vec3 P, ivec3 offset, float bias);
-
-float textureOffset(sampler1DShadow sampler, vec3 P, int offset, float bias);
-float textureOffset(sampler2DShadow sampler, vec3 P, ivec2 offset, float bias);
-
- vec4 textureOffset( sampler1DArray sampler, vec2 P, int offset, float bias);
-ivec4 textureOffset(isampler1DArray sampler, vec2 P, int offset, float bias);
-uvec4 textureOffset(usampler1DArray sampler, vec2 P, int offset, float bias);
-
- vec4 textureOffset( sampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-ivec4 textureOffset(isampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-uvec4 textureOffset(usampler2DArray sampler, vec3 P, ivec2 offset, float bias);
-
-float textureOffset(sampler1DArrayShadow samp, vec3 P, int offset, float bias);
-
-/* textureProjOffsetOffset - bias variants */
- vec4 textureProjOffset( sampler1D sampler, vec2 P, int offset, float bias);
-ivec4 textureProjOffset(isampler1D sampler, vec2 P, int offset, float bias);
-uvec4 textureProjOffset(usampler1D sampler, vec2 P, int offset, float bias);
- vec4 textureProjOffset( sampler1D sampler, vec4 P, int offset, float bias);
-ivec4 textureProjOffset(isampler1D sampler, vec4 P, int offset, float bias);
-uvec4 textureProjOffset(usampler1D sampler, vec4 P, int offset, float bias);
-
- vec4 textureProjOffset( sampler2D sampler, vec3 P, ivec2 offset, float bias);
-ivec4 textureProjOffset(isampler2D sampler, vec3 P, ivec2 offset, float bias);
-uvec4 textureProjOffset(usampler2D sampler, vec3 P, ivec2 offset, float bias);
- vec4 textureProjOffset( sampler2D sampler, vec4 P, ivec2 offset, float bias);
-ivec4 textureProjOffset(isampler2D sampler, vec4 P, ivec2 offset, float bias);
-uvec4 textureProjOffset(usampler2D sampler, vec4 P, ivec2 offset, float bias);
-
- vec4 textureProjOffset( sampler3D sampler, vec4 P, ivec3 offset, float bias);
-ivec4 textureProjOffset(isampler3D sampler, vec4 P, ivec3 offset, float bias);
-uvec4 textureProjOffset(usampler3D sampler, vec4 P, ivec3 offset, float bias);
-
-float textureProjOffset(sampler1DShadow s, vec4 P, int offset, float bias);
-float textureProjOffset(sampler2DShadow s, vec4 P, ivec2 offset, float bias);
-
-/*
- * The following texture functions are deprecated:
- */
-vec4 texture1D (sampler1D sampler, float coord, float bias);
-vec4 texture1DProj (sampler1D sampler, vec2 coord, float bias);
-vec4 texture1DProj (sampler1D sampler, vec4 coord, float bias);
-
-vec4 texture2D (sampler2D sampler, vec2 coord, float bias);
-vec4 texture2DProj (sampler2D sampler, vec3 coord, float bias);
-vec4 texture2DProj (sampler2D sampler, vec4 coord, float bias);
-
-vec4 texture3D (sampler3D sampler, vec3 coord, float bias);
-vec4 texture3DProj (sampler3D sampler, vec4 coord, float bias);
-
-vec4 textureCube (samplerCube sampler, vec3 coord, float bias);
-
-vec4 shadow1D (sampler1DShadow sampler, vec3 coord, float bias);
-vec4 shadow2D (sampler2DShadow sampler, vec3 coord, float bias);
-vec4 shadow1DProj (sampler1DShadow sampler, vec4 coord, float bias);
-vec4 shadow2DProj (sampler2DShadow sampler, vec4 coord, float bias);
-
-/*
- * 8.8 - Fragment Processing Functions
- */
-float dFdx(float p);
-vec2 dFdx(vec2 p);
-vec3 dFdx(vec3 p);
-vec4 dFdx(vec4 p);
-
-float dFdy(float p);
-vec2 dFdy(vec2 p);
-vec3 dFdy(vec3 p);
-vec4 dFdy(vec4 p);
-
-float fwidth(float p);
-vec2 fwidth(vec2 p);
-vec3 fwidth(vec3 p);
-vec4 fwidth(vec4 p);
diff --git a/src/glsl/builtins/profiles/330.glsl b/src/glsl/builtins/profiles/330.glsl
deleted file mode 100644
index 8f63897..0000000
--- a/src/glsl/builtins/profiles/330.glsl
+++ /dev/null
@@ -1,1029 +0,0 @@
-#version 330
-/*
- * 8.1 - Angle and Trigonometry Functions
- */
-float radians(float degrees);
-vec2 radians(vec2 degrees);
-vec3 radians(vec3 degrees);
-vec4 radians(vec4 degrees);
-
-float degrees(float radians);
-vec2 degrees(vec2 radians);
-vec3 degrees(vec3 radians);
-vec4 degrees(vec4 radians);
-
-float sin(float angle);
-vec2 sin(vec2 angle);
-vec3 sin(vec3 angle);
-vec4 sin(vec4 angle);
-
-float cos(float angle);
-vec2 cos(vec2 angle);
-vec3 cos(vec3 angle);
-vec4 cos(vec4 angle);
-
-float tan(float angle);
-vec2 tan(vec2 angle);
-vec3 tan(vec3 angle);
-vec4 tan(vec4 angle);
-
-float asin(float angle);
-vec2 asin(vec2 angle);
-vec3 asin(vec3 angle);
-vec4 asin(vec4 angle);
-
-float acos(float angle);
-vec2 acos(vec2 angle);
-vec3 acos(vec3 angle);
-vec4 acos(vec4 angle);
-
-float atan(float y, float x);
-vec2 atan(vec2 y, vec2 x);
-vec3 atan(vec3 y, vec3 x);
-vec4 atan(vec4 y, vec4 x);
-
-float atan(float y_over_x);
-vec2 atan(vec2 y_over_x);
-vec3 atan(vec3 y_over_x);
-vec4 atan(vec4 y_over_x);
-
-float sinh(float x);
-vec2 sinh(vec2 x);
-vec3 sinh(vec3 x);
-vec4 sinh(vec4 x);
-
-float cosh(float x);
-vec2 cosh(vec2 x);
-vec3 cosh(vec3 x);
-vec4 cosh(vec4 x);
-
-float tanh(float x);
-vec2 tanh(vec2 x);
-vec3 tanh(vec3 x);
-vec4 tanh(vec4 x);
-
-float asinh(float x);
-vec2 asinh(vec2 x);
-vec3 asinh(vec3 x);
-vec4 asinh(vec4 x);
-
-float acosh(float x);
-vec2 acosh(vec2 x);
-vec3 acosh(vec3 x);
-vec4 acosh(vec4 x);
-
-float atanh(float x);
-vec2 atanh(vec2 x);
-vec3 atanh(vec3 x);
-vec4 atanh(vec4 x);
-
-/*
- * 8.2 - Exponential Functions
- */
-float pow(float x, float y);
-vec2 pow(vec2 x, vec2 y);
-vec3 pow(vec3 x, vec3 y);
-vec4 pow(vec4 x, vec4 y);
-
-float exp(float x);
-vec2 exp(vec2 x);
-vec3 exp(vec3 x);
-vec4 exp(vec4 x);
-
-float log(float x);
-vec2 log(vec2 x);
-vec3 log(vec3 x);
-vec4 log(vec4 x);
-
-float exp2(float x);
-vec2 exp2(vec2 x);
-vec3 exp2(vec3 x);
-vec4 exp2(vec4 x);
-
-float log2(float x);
-vec2 log2(vec2 x);
-vec3 log2(vec3 x);
-vec4 log2(vec4 x);
-
-float sqrt(float x);
-vec2 sqrt(vec2 x);
-vec3 sqrt(vec3 x);
-vec4 sqrt(vec4 x);
-
-float inversesqrt(float x);
-vec2 inversesqrt(vec2 x);
-vec3 inversesqrt(vec3 x);
-vec4 inversesqrt(vec4 x);
-
-/*
- * 8.3 - Common Functions
- */
-float abs(float x);
-vec2 abs(vec2 x);
-vec3 abs(vec3 x);
-vec4 abs(vec4 x);
-int abs(int x);
-ivec2 abs(ivec2 x);
-ivec3 abs(ivec3 x);
-ivec4 abs(ivec4 x);
-
-float sign(float x);
-vec2 sign(vec2 x);
-vec3 sign(vec3 x);
-vec4 sign(vec4 x);
-int sign(int x);
-ivec2 sign(ivec2 x);
-ivec3 sign(ivec3 x);
-ivec4 sign(ivec4 x);
-
-float floor(float x);
-vec2 floor(vec2 x);
-vec3 floor(vec3 x);
-vec4 floor(vec4 x);
-
-float trunc(float x);
-vec2 trunc(vec2 x);
-vec3 trunc(vec3 x);
-vec4 trunc(vec4 x);
-
-float round(float x);
-vec2 round(vec2 x);
-vec3 round(vec3 x);
-vec4 round(vec4 x);
-
-float roundEven(float x);
-vec2 roundEven(vec2 x);
-vec3 roundEven(vec3 x);
-vec4 roundEven(vec4 x);
-
-float ceil(float x);
-vec2 ceil(vec2 x);
-vec3 ceil(vec3 x);
-vec4 ceil(vec4 x);
-
-float fract(float x);
-vec2 fract(vec2 x);
-vec3 fract(vec3 x);
-vec4 fract(vec4 x);
-
-float mod(float x, float y);
-vec2 mod(vec2 x, float y);
-vec3 mod(vec3 x, float y);
-vec4 mod(vec4 x, float y);
-
-vec2 mod(vec2 x, vec2 y);
-vec3 mod(vec3 x, vec3 y);
-vec4 mod(vec4 x, vec4 y);
-
-float modf(float x, out float i);
-vec2 modf(vec2 x, out vec2 i);
-vec3 modf(vec3 x, out vec3 i);
-vec4 modf(vec4 x, out vec4 i);
-
-float min(float x, float y);
-vec2 min(vec2 x, vec2 y);
-vec3 min(vec3 x, vec3 y);
-vec4 min(vec4 x, vec4 y);
-
-vec2 min(vec2 x, float y);
-vec3 min(vec3 x, float y);
-vec4 min(vec4 x, float y);
-
-int min(int x, int y);
-ivec2 min(ivec2 x, ivec2 y);
-ivec3 min(ivec3 x, ivec3 y);
-ivec4 min(ivec4 x, ivec4 y);
-
-ivec2 min(ivec2 x, int y);
-ivec3 min(ivec3 x, int y);
-ivec4 min(ivec4 x, int y);
-
-uint min(uint x, uint y);
-uvec2 min(uvec2 x, uvec2 y);
-uvec3 min(uvec3 x, uvec3 y);
-uvec4 min(uvec4 x, uvec4 y);
-
-uvec2 min(uvec2 x, uint y);
-uvec3 min(uvec3 x, uint y);
-uvec4 min(uvec4 x, uint y);
-
-float max(float x, float y);
-vec2 max(vec2 x, vec2 y);
-vec3 max(vec3 x, vec3 y);
-vec4 max(vec4 x, vec4 y);
-
-vec2 max(vec2 x, float y);
-vec3 max(vec3 x, float y);
-vec4 max(vec4 x, float y);
-
-int max(int x, int y);
-ivec2 max(ivec2 x, ivec2 y);
-ivec3 max(ivec3 x, ivec3 y);
-ivec4 max(ivec4 x, ivec4 y);
-
-ivec2 max(ivec2 x, int y);
-ivec3 max(ivec3 x, int y);
-ivec4 max(ivec4 x, int y);
-
-uint max(uint x, uint y);
-uvec2 max(uvec2 x, uvec2 y);
-uvec3 max(uvec3 x, uvec3 y);
-uvec4 max(uvec4 x, uvec4 y);
-
-uvec2 max(uvec2 x, uint y);
-uvec3 max(uvec3 x, uint y);
-uvec4 max(uvec4 x, uint y);
-
-float clamp(float x, float minVal, float maxVal);
-vec2 clamp(vec2 x, vec2 minVal, vec2 maxVal);
-vec3 clamp(vec3 x, vec3 minVal, vec3 maxVal);
-vec4 clamp(vec4 x, vec4 minVal, vec4 maxVal);
-
-vec2 clamp(vec2 x, float minVal, float maxVal);
-vec3 clamp(vec3 x, float minVal, float maxVal);
-vec4 clamp(vec4 x, float minVal, float maxVal);
-
-int clamp(int x, int minVal, int maxVal);
-ivec2 clamp(ivec2 x, ivec2 minVal, ivec2 maxVal);
-ivec3 clamp(ivec3 x, ivec3 minVal, ivec3 maxVal);
-ivec4 clamp(ivec4 x, ivec4 minVal, ivec4 maxVal);
-
-ivec2 clamp(ivec2 x, int minVal, int maxVal);
-ivec3 clamp(ivec3 x, int minVal, int maxVal);
-ivec4 clamp(ivec4 x, int minVal, int maxVal);
-
-uint clamp(uint x, uint minVal, uint maxVal);
-uvec2 clamp(uvec2 x, uvec2 minVal, uvec2 maxVal);
-uvec3 clamp(uvec3 x, uvec3 minVal, uvec3 maxVal);
-uvec4 clamp(uvec4 x, uvec4 minVal, uvec4 maxVal);
-
-uvec2 clamp(uvec2 x, uint minVal, uint maxVal);
-uvec3 clamp(uvec3 x, uint minVal, uint maxVal);
-uvec4 clamp(uvec4 x, uint minVal, uint maxVal);
-
-float mix(float x, float y, float a);
-vec2 mix(vec2 x, vec2 y, vec2 a);
-vec3 mix(vec3 x, vec3 y, vec3 a);
-vec4 mix(vec4 x, vec4 y, vec4 a);
-
-vec2 mix(vec2 x, vec2 y, float a);
-vec3 mix(vec3 x, vec3 y, float a);
-vec4 mix(vec4 x, vec4 y, float a);
-
-float mix(float x, float y, bool a);
-vec2 mix(vec2 x, vec2 y, bvec2 a);
-vec3 mix(vec3 x, vec3 y, bvec3 a);
-vec4 mix(vec4 x, vec4 y, bvec4 a);
-
-float step(float edge, float x);
-vec2 step(vec2 edge, vec2 x);
-vec3 step(vec3 edge, vec3 x);
-vec4 step(vec4 edge, vec4 x);
-
-vec2 step(float edge, vec2 x);
-vec3 step(float edge, vec3 x);
-vec4 step(float edge, vec4 x);
-
-float smoothstep(float edge0, float edge1, float x);
-vec2 smoothstep(vec2 edge0, vec2 edge1, vec2 x);
-vec3 smoothstep(vec3 edge0, vec3 edge1, vec3 x);
-vec4 smoothstep(vec4 edge0, vec4 edge1, vec4 x);
-
-vec2 smoothstep(float edge0, float edge1, vec2 x);
-vec3 smoothstep(float edge0, float edge1, vec3 x);
-vec4 smoothstep(float edge0, float edge1, vec4 x);
-
-bool isnan(float x);
-bvec2 isnan(vec2 x);
-bvec3 isnan(vec3 x);
-bvec4 isnan(vec4 x);
-
-bool isinf(float x);
-bvec2 isinf(vec2 x);
-bvec3 isinf(vec3 x);
-bvec4 isinf(vec4 x);
-
-int floatBitsToInt(float value);
-ivec2 floatBitsToInt(vec2 value);
-ivec3 floatBitsToInt(vec3 value);
-ivec4 floatBitsToInt(vec4 value);
-
-uint floatBitsToUint(float value);
-uvec2 floatBitsToUint(vec2 value);
-uvec3 floatBitsToUint(vec3 value);
-uvec4 floatBitsToUint(vec4 value);
-
-float intBitsToFloat(int value);
-vec2 intBitsToFloat(ivec2 value);
-vec3 intBitsToFloat(ivec3 value);
-vec4 intBitsToFloat(ivec4 value);
-
-float uintBitsToFloat(uint value);
-vec2 uintBitsToFloat(uvec2 value);
-vec3 uintBitsToFloat(uvec3 value);
-vec4 uintBitsToFloat(uvec4 value);
-
-/*
- * 8.4 - Geometric Functions
- */
-float length(float x);
-float length(vec2 x);
-float length(vec3 x);
-float length(vec4 x);
-
-float distance(float p0, float p1);
-float distance(vec2 p0, vec2 p1);
-float distance(vec3 p0, vec3 p1);
-float distance(vec4 p0, vec4 p1);
-
-float dot(float x, float y);
-float dot(vec2 x, vec2 y);
-float dot(vec3 x, vec3 y);
-float dot(vec4 x, vec4 y);
-
-vec3 cross(vec3 x, vec3 y);
-
-float normalize(float x);
-vec2 normalize(vec2 x);
-vec3 normalize(vec3 x);
-vec4 normalize(vec4 x);
-
-float faceforward(float N, float I, float Nref);
-vec2 faceforward(vec2 N, vec2 I, vec2 Nref);
-vec3 faceforward(vec3 N, vec3 I, vec3 Nref);
-vec4 faceforward(vec4 N, vec4 I, vec4 Nref);
-
-float reflect(float I, float N);
-vec2 reflect(vec2 I, vec2 N);
-vec3 reflect(vec3 I, vec3 N);
-vec4 reflect(vec4 I, vec4 N);
-
-float refract(float I, float N, float eta);
-vec2 refract(vec2 I, vec2 N, float eta);
-vec3 refract(vec3 I, vec3 N, float eta);
-vec4 refract(vec4 I, vec4 N, float eta);
-
-
-/*
- * 8.5 - Matrix Functions
- */
-mat2 matrixCompMult(mat2 x, mat2 y);
-mat3 matrixCompMult(mat3 x, mat3 y);
-mat4 matrixCompMult(mat4 x, mat4 y);
-mat2x3 matrixCompMult(mat2x3 x, mat2x3 y);
-mat2x4 matrixCompMult(mat2x4 x, mat2x4 y);
-mat3x2 matrixCompMult(mat3x2 x, mat3x2 y);
-mat3x4 matrixCompMult(mat3x4 x, mat3x4 y);
-mat4x2 matrixCompMult(mat4x2 x, mat4x2 y);
-mat4x3 matrixCompMult(mat4x3 x, mat4x3 y);
-
-mat2 outerProduct(vec2 c, vec2 r);
-mat3 outerProduct(vec3 c, vec3 r);
-mat4 outerProduct(vec4 c, vec4 r);
-
-mat2x3 outerProduct(vec3 c, vec2 r);
-mat3x2 outerProduct(vec2 c, vec3 r);
-
-mat2x4 outerProduct(vec4 c, vec2 r);
-mat4x2 outerProduct(vec2 c, vec4 r);
-
-mat3x4 outerProduct(vec4 c, vec3 r);
-mat4x3 outerProduct(vec3 c, vec4 r);
-
-mat2 transpose(mat2 m);
-mat3 transpose(mat3 m);
-mat4 transpose(mat4 m);
-
-mat2x3 transpose(mat3x2 m);
-mat3x2 transpose(mat2x3 m);
-
-mat2x4 transpose(mat4x2 m);
-mat4x2 transpose(mat2x4 m);
-
-mat3x4 transpose(mat4x3 m);
-mat4x3 transpose(mat3x4 m);
-
-float determinant(mat2 m);
-float determinant(mat3 m);
-float determinant(mat4 m);
-
-mat2 inverse(mat2 m);
-mat3 inverse(mat3 m);
-mat4 inverse(mat4 m);
-
-/*
- * 8.6 - Vector Relational Functions
- */
-bvec2 lessThan( vec2 x, vec2 y);
-bvec3 lessThan( vec3 x, vec3 y);
-bvec4 lessThan( vec4 x, vec4 y);
-bvec2 lessThan(ivec2 x, ivec2 y);
-bvec3 lessThan(ivec3 x, ivec3 y);
-bvec4 lessThan(ivec4 x, ivec4 y);
-bvec2 lessThan(uvec2 x, uvec2 y);
-bvec3 lessThan(uvec3 x, uvec3 y);
-bvec4 lessThan(uvec4 x, uvec4 y);
-
-bvec2 lessThanEqual( vec2 x, vec2 y);
-bvec3 lessThanEqual( vec3 x, vec3 y);
-bvec4 lessThanEqual( vec4 x, vec4 y);
-bvec2 lessThanEqual(ivec2 x, ivec2 y);
-bvec3 lessThanEqual(ivec3 x, ivec3 y);
-bvec4 lessThanEqual(ivec4 x, ivec4 y);
-bvec2 lessThanEqual(uvec2 x, uvec2 y);
-bvec3 lessThanEqual(uvec3 x, uvec3 y);
-bvec4 lessThanEqual(uvec4 x, uvec4 y);
-
-bvec2 greaterThan( vec2 x, vec2 y);
-bvec3 greaterThan( vec3 x, vec3 y);
-bvec4 greaterThan( vec4 x, vec4 y);
-bvec2 greaterThan(ivec2 x, ivec2 y);
-bvec3 greaterThan(ivec3 x, ivec3 y);
-bvec4 greaterThan(ivec4 x, ivec4 y);
-bvec2 greaterThan(uvec2 x, uvec2 y);
-bvec3 greaterThan(uvec3 x, uvec3 y);
-bvec4 greaterThan(uvec4 x, uvec4 y);
-
-bvec2 greaterThanEqual( vec2 x, vec2 y);
-bvec3 greaterThanEqual( vec3 x, vec3 y);
-bvec4 greaterThanEqual( vec4 x, vec4 y);
-bvec2 greaterThanEqual(ivec2 x, ivec2 y);
-bvec3 greaterThanEqual(ivec3 x, ivec3 y);
-bvec4 greaterThanEqual(ivec4 x, ivec4 y);
-bvec2 greaterThanEqual(uvec2 x, uvec2 y);
-bvec3 greaterThanEqual(uvec3 x, uvec3 y);
-bvec4 greaterThanEqual(uvec4 x, uvec4 y);
-
-bvec2 equal( vec2 x, vec2 y);
-bvec3 equal( vec3 x, vec3 y);
-bvec4 equal( vec4 x, vec4 y);
-bvec2 equal(ivec2 x, ivec2 y);
-bvec3 equal(ivec3 x, ivec3 y);
-bvec4 equal(ivec4 x, ivec4 y);
-bvec2 equal(uvec2 x, uvec2 y);
-bvec3 equal(uvec3 x, uvec3 y);
-bvec4 equal(uvec4 x, uvec4 y);
-bvec2 equal(bvec2 x, bvec2 y);
-bvec3 equal(bvec3 x, bvec3 y);
-bvec4 equal(bvec4 x, bvec4 y);
-
-bvec2 notEqual( vec2 x, vec2 y);
-bvec3 notEqual( vec3 x, vec3 y);
-bvec4 notEqual( vec4 x, vec4 y);
-bvec2 notEqual(ivec2 x, ivec2 y);
-bvec3 notEqual(ivec3 x, ivec3 y);
-bvec4 notEqual(ivec4 x, ivec4 y);
-bvec2 notEqual(uvec2 x, uvec2 y);
-bvec3 notEqual(uvec3 x, uvec3 y);
-bvec4 notEqual(uvec4 x, uvec4 y);
-bvec2 notEqual(bvec2 x, bvec2 y);
-bvec3 notEqual(bvec3 x, bvec3 y);
-bvec4 notEqual(bvec4 x, bvec4 y);
-
-bool any(bvec2 x);
-bool any(bvec3 x);
-bool any(bvec4 x);
-
-bool all(bvec2 x);
-bool all(bvec3 x);
-bool all(bvec4 x);
-
-bvec2 not(bvec2 x);
-bvec3 not(bvec3 x);
-bvec4 not(bvec4 x);
-
-/*
- * 8.7 - Texture Lookup Functions
- */
-
-/* textureSize */
-int textureSize( sampler1D sampler, int lod);
-int textureSize(isampler1D sampler, int lod);
-int textureSize(usampler1D sampler, int lod);
-
-ivec2 textureSize( sampler2D sampler, int lod);
-ivec2 textureSize(isampler2D sampler, int lod);
-ivec2 textureSize(usampler2D sampler, int lod);
-
-ivec3 textureSize( sampler3D sampler, int lod);
-ivec3 textureSize(isampler3D sampler, int lod);
-ivec3 textureSize(usampler3D sampler, int lod);
-
-ivec2 textureSize( samplerCube sampler, int lod);
-ivec2 textureSize(isamplerCube sampler, int lod);
-ivec2 textureSize(usamplerCube sampler, int lod);
-
-int textureSize(sampler1DShadow sampler, int lod);
-ivec2 textureSize(sampler2DShadow sampler, int lod);
-ivec2 textureSize(samplerCubeShadow sampler, int lod);
-
-ivec2 textureSize( sampler1DArray sampler, int lod);
-ivec2 textureSize(isampler1DArray sampler, int lod);
-ivec2 textureSize(usampler1DArray sampler, int lod);
-ivec3 textureSize( sampler2DArray sampler, int lod);
-ivec3 textureSize(isampler2DArray sampler, int lod);
-ivec3 textureSize(usampler2DArray sampler, int lod);
-
-ivec2 textureSize(sampler1DArrayShadow sampler, int lod);
-ivec3 textureSize(sampler2DArrayShadow sampler, int lod);
-
-ivec2 textureSize(sampler2DRect sampler);
-ivec2 textureSize(isampler2DRect sampler);
-ivec2 textureSize(usampler2DRect sampler);
-ivec2 textureSize(sampler2DRectShadow sampler);
-
-int textureSize( samplerBuffer sampler);
-int textureSize(isamplerBuffer sampler);
-int textureSize(usamplerBuffer sampler);
-
-ivec2 textureSize( sampler2DMS sampler);
-ivec2 textureSize(isampler2DMS sampler);
-ivec2 textureSize(usampler2DMS sampler);
-
-ivec3 textureSize( sampler2DMSArray sampler);
-ivec3 textureSize(isampler2DMSArray sampler);
-ivec3 textureSize(usampler2DMSArray sampler);
-
-/* texture - no bias */
- vec4 texture( sampler1D sampler, float P);
-ivec4 texture(isampler1D sampler, float P);
-uvec4 texture(usampler1D sampler, float P);
-
- vec4 texture( sampler2D sampler, vec2 P);
-ivec4 texture(isampler2D sampler, vec2 P);
-uvec4 texture(usampler2D sampler, vec2 P);
-
- vec4 texture( sampler3D sampler, vec3 P);
-ivec4 texture(isampler3D sampler, vec3 P);
-uvec4 texture(usampler3D sampler, vec3 P);
-
- vec4 texture( samplerCube sampler, vec3 P);
-ivec4 texture(isamplerCube sampler, vec3 P);
-uvec4 texture(usamplerCube sampler, vec3 P);
-
-float texture(sampler1DShadow sampler, vec3 P);
-float texture(sampler2DShadow sampler, vec3 P);
-float texture(samplerCubeShadow sampler, vec4 P);
-
- vec4 texture( sampler1DArray sampler, vec2 P);
-ivec4 texture(isampler1DArray sampler, vec2 P);
-uvec4 texture(usampler1DArray sampler, vec2 P);
-
- vec4 texture( sampler2DArray sampler, vec3 P);
-ivec4 texture(isampler2DArray sampler, vec3 P);
-uvec4 texture(usampler2DArray sampler, vec3 P);
-
-float texture(sampler1DArrayShadow sampler, vec3 P);
-float texture(sampler2DArrayShadow sampler, vec4 P);
-
- vec4 texture( sampler2DRect sampler, vec2 P);
-ivec4 texture(isampler2DRect sampler, vec2 P);
-uvec4 texture(usampler2DRect sampler, vec2 P);
-
-float texture(sampler2DRectShadow sampler, vec3 P);
-
-/* textureProj - no bias */
- vec4 textureProj( sampler1D sampler, vec2 P);
-ivec4 textureProj(isampler1D sampler, vec2 P);
-uvec4 textureProj(usampler1D sampler, vec2 P);
- vec4 textureProj( sampler1D sampler, vec4 P);
-ivec4 textureProj(isampler1D sampler, vec4 P);
-uvec4 textureProj(usampler1D sampler, vec4 P);
-
- vec4 textureProj( sampler2D sampler, vec3 P);
-ivec4 textureProj(isampler2D sampler, vec3 P);
-uvec4 textureProj(usampler2D sampler, vec3 P);
- vec4 textureProj( sampler2D sampler, vec4 P);
-ivec4 textureProj(isampler2D sampler, vec4 P);
-uvec4 textureProj(usampler2D sampler, vec4 P);
-
- vec4 textureProj( sampler3D sampler, vec4 P);
-ivec4 textureProj(isampler3D sampler, vec4 P);
-uvec4 textureProj(usampler3D sampler, vec4 P);
-
-float textureProj(sampler1DShadow sampler, vec4 P);
-float textureProj(sampler2DShadow sampler, vec4 P);
-
- vec4 textureProj( sampler2DRect sampler, vec3 P);
-ivec4 textureProj(isampler2DRect sampler, vec3 P);
-uvec4 textureProj(usampler2DRect sampler, vec3 P);
- vec4 textureProj( sampler2DRect sampler, vec4 P);
-ivec4 textureProj(isampler2DRect sampler, vec4 P);
-uvec4 textureProj(usampler2DRect sampler, vec4 P);
-
-float textureProj(sampler2DRectShadow sampler, vec4 P);
-
-/* textureLod */
- vec4 textureLod( sampler1D sampler, float P, float lod);
-ivec4 textureLod(isampler1D sampler, float P, float lod);
-uvec4 textureLod(usampler1D sampler, float P, float lod);
-
- vec4 textureLod( sampler2D sampler, vec2 P, float lod);
-ivec4 textureLod(isampler2D sampler, vec2 P, float lod);
-uvec4 textureLod(usampler2D sampler, vec2 P, float lod);
-
- vec4 textureLod( sampler3D sampler, vec3 P, float lod);
-ivec4 textureLod(isampler3D sampler, vec3 P, float lod);
-uvec4 textureLod(usampler3D sampler, vec3 P, float lod);
-
- vec4 textureLod( samplerCube sampler, vec3 P, float lod);
-ivec4 textureLod(isamplerCube sampler, vec3 P, float lod);
-uvec4 textureLod(usamplerCube sampler, vec3 P, float lod);
-
-float textureLod(sampler1DShadow sampler, vec3 P, float lod);
-float textureLod(sampler2DShadow sampler, vec3 P, float lod);
-
- vec4 textureLod( sampler1DArray sampler, vec2 P, float lod);
-ivec4 textureLod(isampler1DArray sampler, vec2 P, float lod);
-uvec4 textureLod(usampler1DArray sampler, vec2 P, float lod);
-
- vec4 textureLod( sampler2DArray sampler, vec3 P, float lod);
-ivec4 textureLod(isampler2DArray sampler, vec3 P, float lod);
-uvec4 textureLod(usampler2DArray sampler, vec3 P, float lod);
-
-float textureLod(sampler1DArrayShadow sampler, vec3 P, float lod);
-
-/* textureOffset - no bias */
- vec4 textureOffset( sampler1D sampler, float P, int offset);
-ivec4 textureOffset(isampler1D sampler, float P, int offset);
-uvec4 textureOffset(usampler1D sampler, float P, int offset);
-
- vec4 textureOffset( sampler2D sampler, vec2 P, ivec2 offset);
-ivec4 textureOffset(isampler2D sampler, vec2 P, ivec2 offset);
-uvec4 textureOffset(usampler2D sampler, vec2 P, ivec2 offset);
-
- vec4 textureOffset( sampler3D sampler, vec3 P, ivec3 offset);
-ivec4 textureOffset(isampler3D sampler, vec3 P, ivec3 offset);
-uvec4 textureOffset(usampler3D sampler, vec3 P, ivec3 offset);
-
- vec4 textureOffset( sampler2DRect sampler, vec2 P, ivec2 offset);
-ivec4 textureOffset(isampler2DRect sampler, vec2 P, ivec2 offset);
-uvec4 textureOffset(usampler2DRect sampler, vec2 P, ivec2 offset);
-
-float textureOffset(sampler2DRectShadow sampler, vec3 P, ivec2 offset);
-
-float textureOffset(sampler1DShadow sampler, vec3 P, int offset);
-float textureOffset(sampler2DShadow sampler, vec3 P, ivec2 offset);
-
- vec4 textureOffset( sampler1DArray sampler, vec2 P, int offset);
-ivec4 textureOffset(isampler1DArray sampler, vec2 P, int offset);
-uvec4 textureOffset(usampler1DArray sampler, vec2 P, int offset);
-
- vec4 textureOffset( sampler2DArray sampler, vec3 P, ivec2 offset);
-ivec4 textureOffset(isampler2DArray sampler, vec3 P, ivec2 offset);
-uvec4 textureOffset(usampler2DArray sampler, vec3 P, ivec2 offset);
-
-float textureOffset(sampler1DArrayShadow sampler, vec3 P, int offset);
-
-/* texelFetch */
- vec4 texelFetch( sampler1D sampler, int P, int lod);
-ivec4 texelFetch(isampler1D sampler, int P, int lod);
-uvec4 texelFetch(usampler1D sampler, int P, int lod);
-
- vec4 texelFetch( sampler2D sampler, ivec2 P, int lod);
-ivec4 texelFetch(isampler2D sampler, ivec2 P, int lod);
-uvec4 texelFetch(usampler2D sampler, ivec2 P, int lod);
-
- vec4 texelFetch( sampler3D sampler, ivec3 P, int lod);
-ivec4 texelFetch(isampler3D sampler, ivec3 P, int lod);
-uvec4 texelFetch(usampler3D sampler, ivec3 P, int lod);
-
- vec4 texelFetch( sampler2DRect sampler, ivec2 P);
-ivec4 texelFetch(isampler2DRect sampler, ivec2 P);
-uvec4 texelFetch(usampler2DRect sampler, ivec2 P);
-
- vec4 texelFetch( sampler1DArray sampler, ivec2 P, int lod);
-ivec4 texelFetch(isampler1DArray sampler, ivec2 P, int lod);
-uvec4 texelFetch(usampler1DArray sampler, ivec2 P, int lod);
-
- vec4 texelFetch( sampler2DArray sampler, ivec3 P, int lod);
-ivec4 texelFetch(isampler2DArray sampler, ivec3 P, int lod);
-uvec4 texelFetch(usampler2DArray sampler, ivec3 P, int lod);
-
- vec4 texelFetch( samplerBuffer sampler, int P);
-ivec4 texelFetch(isamplerBuffer sampler, int P);
-uvec4 texelFetch(usamplerBuffer sampler, int P);
-
- vec4 texelFetch( sampler2DMS sampler, ivec2 P, int sample);
-ivec4 texelFetch(isampler2DMS sampler, ivec2 P, int sample);
-uvec4 texelFetch(usampler2DMS sampler, ivec2 P, int sample);
-
- vec4 texelFetch( sampler2DMSArray sampler, ivec3 P, int sample);
-ivec4 texelFetch(isampler2DMSArray sampler, ivec3 P, int sample);
-uvec4 texelFetch(usampler2DMSArray sampler, ivec3 P, int sample);
-
-/* texelFetchOffset */
- vec4 texelFetchOffset( sampler1D sampler, int P, int lod, int offset);
-ivec4 texelFetchOffset(isampler1D sampler, int P, int lod, int offset);
-uvec4 texelFetchOffset(usampler1D sampler, int P, int lod, int offset);
-
- vec4 texelFetchOffset( sampler2D sampler, ivec2 P, int lod, ivec2 offset);
-ivec4 texelFetchOffset(isampler2D sampler, ivec2 P, int lod, ivec2 offset);
-uvec4 texelFetchOffset(usampler2D sampler, ivec2 P, int lod, ivec2 offset);
-
- vec4 texelFetchOffset( sampler3D sampler, ivec3 P, int lod, ivec3 offset);
-ivec4 texelFetchOffset(isampler3D sampler, ivec3 P, int lod, ivec3 offset);
-uvec4 texelFetchOffset(usampler3D sampler, ivec3 P, int lod, ivec3 offset);
-
- vec4 texelFetchOffset( sampler2DRect sampler, ivec2 P, ivec2 offset);
-ivec4 texelFetchOffset(isampler2DRect sampler, ivec2 P, ivec2 offset);
-uvec4 texelFetchOffset(usampler2DRect sampler, ivec2 P, ivec2 offset);
-
- vec4 texelFetchOffset( sampler1DArray sampler, ivec2 P, int lod, int offset);
-ivec4 texelFetchOffset(isampler1DArray sampler, ivec2 P, int lod, int offset);
-uvec4 texelFetchOffset(usampler1DArray sampler, ivec2 P, int lod, int offset);
-
- vec4 texelFetchOffset( sampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-ivec4 texelFetchOffset(isampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-uvec4 texelFetchOffset(usampler2DArray sampler, ivec3 P, int lod, ivec2 offset);
-
-/* textureProjOffset - no bias */
- vec4 textureProjOffset( sampler1D sampler, vec2 P, int offset);
-ivec4 textureProjOffset(isampler1D sampler, vec2 P, int offset);
-uvec4 textureProjOffset(usampler1D sampler, vec2 P, int offset);
- vec4 textureProjOffset( sampler1D sampler, vec4 P, int offset);
-ivec4 textureProjOffset(isampler1D sampler, vec4 P, int offset);
-uvec4 textureProjOffset(usampler1D sampler, vec4 P, int offset);
-
- vec4 textureProjOffset( sampler2D sampler, vec3 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2D sampler, vec3 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2D sampler, vec3 P, ivec2 offset);
- vec4 textureProjOffset( sampler2D sampler, vec4 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2D sampler, vec4 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2D sampler, vec4 P, ivec2 offset);
-
- vec4 textureProjOffset( sampler3D sampler, vec4 P, ivec3 offset);
-ivec4 textureProjOffset(isampler3D sampler, vec4 P, ivec3 offset);
-uvec4 textureProjOffset(usampler3D sampler, vec4 P, ivec3 offset);
-
- vec4 textureProjOffset( sampler2DRect sampler, vec3 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2DRect sampler, vec3 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2DRect sampler, vec3 P, ivec2 offset);
- vec4 textureProjOffset( sampler2DRect sampler, vec4 P, ivec2 offset);
-ivec4 textureProjOffset(isampler2DRect sampler, vec4 P, ivec2 offset);
-uvec4 textureProjOffset(usampler2DRect sampler, vec4 P, ivec2 offset);
-
-float textureProjOffset(sampler2DRectShadow sampler, vec4 P, ivec2 offset);
-
-float textureProjOffset(sampler1DShadow sampler, vec4 P, int offset);
-float textureProjOffset(sampler2DShadow sampler, vec4 P, ivec2 offset);
-
-/* textureLodOffset */
- vec4 textureLodOffset( sampler1D sampler, float P, float lod, int offset);
-ivec4 textureLodOffset(isampler1D sampler, float P, float lod, int offset);
-uvec4 textureLodOffset(usampler1D sampler, float P, float lod, int offset);
-
- vec4 textureLodOffset( sampler2D sampler, vec2 P, float lod, ivec2 offset);
-ivec4 textureLodOffset(isampler2D sampler, vec2 P, float lod, ivec2 offset);
-uvec4 textureLodOffset(usampler2D sampler, vec2 P, float lod, ivec2 offset);
-
- vec4 textureLodOffset( sampler3D sampler, vec3 P, float lod, ivec3 offset);
-ivec4 textureLodOffset(isampler3D sampler, vec3 P, float lod, ivec3 offset);
-uvec4 textureLodOffset(usampler3D sampler, vec3 P, float lod, ivec3 offset);
-
-float textureLodOffset(sampler1DShadow samp, vec3 P, float lod, int offset);
-float textureLodOffset(sampler2DShadow samp, vec3 P, float lod, ivec2 offset);
-
- vec4 textureLodOffset( sampler1DArray sampler, vec2 P, float lod, int offset);
-ivec4 textureLodOffset(isampler1DArray sampler, vec2 P, float lod, int offset);
-uvec4 textureLodOffset(usampler1DArray sampler, vec2 P, float lod, int offset);
-
- vec4 textureLodOffset( sampler2DArray samp, vec3 P, float lod, ivec2 offset);
-ivec4 textureLodOffset(isampler2DArray samp, vec3 P, float lod, ivec2 offset);
-uvec4 textureLodOffset(usampler2DArray samp, vec3 P, float lod, ivec2 offset);
-
-float textureLodOffset(sampler1DArrayShadow s, vec3 P, float lod, int offset);
-
-/* textureProjLod */
- vec4 textureProjLod( sampler1D sampler, vec2 P, float lod);
-ivec4 textureProjLod(isampler1D sampler, vec2 P, float lod);
-uvec4 textureProjLod(usampler1D sampler, vec2 P, float lod);
- vec4 textureProjLod( sampler1D sampler, vec4 P, float lod);
-ivec4 textureProjLod(isampler1D sampler, vec4 P, float lod);
-uvec4 textureProjLod(usampler1D sampler, vec4 P, float lod);
-
- vec4 textureProjLod( sampler2D sampler, vec3 P, float lod);
-ivec4 textureProjLod(isampler2D sampler, vec3 P, float lod);
-uvec4 textureProjLod(usampler2D sampler, vec3 P, float lod);
- vec4 textureProjLod( sampler2D sampler, vec4 P, float lod);
-ivec4 textureProjLod(isampler2D sampler, vec4 P, float lod);
-uvec4 textureProjLod(usampler2D sampler, vec4 P, float lod);
-
- vec4 textureProjLod( sampler3D sampler, vec4 P, float lod);
-ivec4 textureProjLod(isampler3D sampler, vec4 P, float lod);
-uvec4 textureProjLod(usampler3D sampler, vec4 P, float lod);
-
-float textureProjLod(sampler1DShadow sampler, vec4 P, float lod);
-float textureProjLod(sampler2DShadow sampler, vec4 P, float lod);
-
-/* textureProjLodOffset */
- vec4 textureProjLodOffset( sampler1D sampler, vec2 P, float lod, int offset);
-ivec4 textureProjLodOffset(isampler1D sampler, vec2 P, float lod, int offset);
-uvec4 textureProjLodOffset(usampler1D sampler, vec2 P, float lod, int offset);
- vec4 textureProjLodOffset( sampler1D sampler, vec4 P, float lod, int offset);
-ivec4 textureProjLodOffset(isampler1D sampler, vec4 P, float lod, int offset);
-uvec4 textureProjLodOffset(usampler1D sampler, vec4 P, float lod, int offset);
-
- vec4 textureProjLodOffset( sampler2D sampler, vec3 P, float lod, ivec2 offset);
-ivec4 textureProjLodOffset(isampler2D sampler, vec3 P, float lod, ivec2 offset);
-uvec4 textureProjLodOffset(usampler2D sampler, vec3 P, float lod, ivec2 offset);
- vec4 textureProjLodOffset( sampler2D sampler, vec4 P, float lod, ivec2 offset);
-ivec4 textureProjLodOffset(isampler2D sampler, vec4 P, float lod, ivec2 offset);
-uvec4 textureProjLodOffset(usampler2D sampler, vec4 P, float lod, ivec2 offset);
-
- vec4 textureProjLodOffset( sampler3D sampler, vec4 P, float lod, ivec3 offset);
-ivec4 textureProjLodOffset(isampler3D sampler, vec4 P, float lod, ivec3 offset);
-uvec4 textureProjLodOffset(usampler3D sampler, vec4 P, float lod, ivec3 offset);
-
-float textureProjLodOffset(sampler1DShadow s, vec4 P, float lod, int offset);
-float textureProjLodOffset(sampler2DShadow s, vec4 P, float lod, ivec2 offset);
-
-/* textureGrad */
- vec4 textureGrad( sampler1D sampler, float P, float dPdx, float dPdy);
-ivec4 textureGrad(isampler1D sampler, float P, float dPdx, float dPdy);
-uvec4 textureGrad(usampler1D sampler, float P, float dPdx, float dPdy);
-
- vec4 textureGrad( sampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureGrad(isampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureGrad(usampler2D sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-
- vec4 textureGrad( sampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureGrad(isampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureGrad(usampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureGrad( samplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureGrad(isamplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureGrad(usamplerCube sampler, vec3 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureGrad( sampler2DRect sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureGrad(isampler2DRect sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureGrad(usampler2DRect sampler, vec2 P, vec2 dPdx, vec2 dPdy);
-
-float textureGrad(sampler2DRectShadow sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-
-float textureGrad(sampler1DShadow sampler, vec3 P, float dPdx, float dPdy);
-float textureGrad(sampler2DShadow sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-float textureGrad(samplerCubeShadow sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureGrad( sampler1DArray sampler, vec2 P, float dPdx, float dPdy);
-ivec4 textureGrad(isampler1DArray sampler, vec2 P, float dPdx, float dPdy);
-uvec4 textureGrad(usampler1DArray sampler, vec2 P, float dPdx, float dPdy);
-
- vec4 textureGrad( sampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureGrad(isampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureGrad(usampler2DArray sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-
-float textureGrad(sampler1DArrayShadow sampler, vec3 P, float dPdx, float dPdy);
-float textureGrad(sampler2DArrayShadow sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-/* textureGradOffset */
- vec4 textureGradOffset( sampler1D s, float P, float dx, float dy, int off);
-ivec4 textureGradOffset(isampler1D s, float P, float dx, float dy, int offset);
-uvec4 textureGradOffset(usampler1D s, float P, float dx, float dy, int offset);
-
- vec4 textureGradOffset( sampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-ivec4 textureGradOffset(isampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-uvec4 textureGradOffset(usampler2D s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-
- vec4 textureGradOffset( sampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-ivec4 textureGradOffset(isampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-uvec4 textureGradOffset(usampler3D s, vec3 P, vec3 dx, vec3 dy, ivec3 offset);
-
- vec4 textureGradOffset( sampler2DRect s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-ivec4 textureGradOffset(isampler2DRect s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-uvec4 textureGradOffset(usampler2DRect s, vec2 P, vec2 dx, vec2 dy, ivec2 offset);
-
-float textureGradOffset(sampler2DRectShadow s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-
-float textureGradOffset(sampler1DShadow s, vec3 P, float dx, float dy, int off);
-float textureGradOffset(sampler2DShadow s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-
- vec4 textureGradOffset( sampler1DArray s, vec2 P, float dx, float dy, int off);
-ivec4 textureGradOffset(isampler1DArray s, vec2 P, float dx, float dy, int off);
-uvec4 textureGradOffset(usampler1DArray s, vec2 P, float dx, float dy, int off);
-
- vec4 textureGradOffset( sampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureGradOffset(isampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureGradOffset(usampler2DArray s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-
-float textureGradOffset(sampler1DArrayShadow s, vec3 P, float dx, float dy, int o);
-float textureGradOffset(sampler2DArrayShadow s, vec4 P, vec2 dx, vec2 dy, ivec2 o);
-
-/* textureProjGrad */
- vec4 textureProjGrad( sampler1D sampler, vec2 P, float dPdx, float dPdy);
-ivec4 textureProjGrad(isampler1D sampler, vec2 P, float dPdx, float dPdy);
-uvec4 textureProjGrad(usampler1D sampler, vec2 P, float dPdx, float dPdy);
- vec4 textureProjGrad( sampler1D sampler, vec4 P, float dPdx, float dPdy);
-ivec4 textureProjGrad(isampler1D sampler, vec4 P, float dPdx, float dPdy);
-uvec4 textureProjGrad(usampler1D sampler, vec4 P, float dPdx, float dPdy);
-
- vec4 textureProjGrad( sampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2D sampler, vec3 P, vec2 dPdx, vec2 dPdy);
- vec4 textureProjGrad( sampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2D sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
- vec4 textureProjGrad( sampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureProjGrad(isampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureProjGrad(usampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureProjGrad( sampler2DRect sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2DRect sampler, vec3 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2DRect sampler, vec3 P, vec2 dPdx, vec2 dPdy);
- vec4 textureProjGrad( sampler2DRect sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-ivec4 textureProjGrad(isampler2DRect sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-uvec4 textureProjGrad(usampler2DRect sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-float textureProjGrad(sampler2DRectShadow sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-float textureProjGrad(sampler1DShadow sampler, vec4 P, float dPdx, float dPdy);
-float textureProjGrad(sampler2DShadow sampler, vec4 P, vec2 dPdx, vec2 dPdy);
-
-/* textureProjGradOffset */
- vec4 textureProjGradOffset( sampler1D s, vec2 P, float dx, float dy, int off);
-ivec4 textureProjGradOffset(isampler1D s, vec2 P, float dx, float dy, int off);
-uvec4 textureProjGradOffset(usampler1D s, vec2 P, float dx, float dy, int off);
- vec4 textureProjGradOffset( sampler1D s, vec4 P, float dx, float dy, int off);
-ivec4 textureProjGradOffset(isampler1D s, vec4 P, float dx, float dy, int off);
-uvec4 textureProjGradOffset(usampler1D s, vec4 P, float dx, float dy, int off);
-
- vec4 textureProjGradOffset( sampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2D s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
- vec4 textureProjGradOffset( sampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2D s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-
- vec4 textureProjGradOffset( sampler2DRect s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2DRect s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2DRect s, vec3 P, vec2 dx, vec2 dy, ivec2 off);
- vec4 textureProjGradOffset( sampler2DRect s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-ivec4 textureProjGradOffset(isampler2DRect s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-uvec4 textureProjGradOffset(usampler2DRect s, vec4 P, vec2 dx, vec2 dy, ivec2 off);
-
-float textureProjGradOffset(sampler2DRectShadow s, vec4 P, vec2 dx, vec2 dy, ivec2 o);
-
- vec4 textureProjGradOffset( sampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-ivec4 textureProjGradOffset(isampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-uvec4 textureProjGradOffset(usampler3D s, vec4 P, vec3 dx, vec3 dy, ivec3 off);
-
-float textureProjGradOffset(sampler1DShadow s, vec4 P, float dx, float dy, int o);
-float textureProjGradOffset(sampler2DShadow s, vec4 P, vec2 dx, vec2 dy, ivec2 o);
-
-/*
- * The following texture functions are deprecated:
- */
-vec4 texture1D (sampler1D sampler, float coord);
-vec4 texture1DProj (sampler1D sampler, vec2 coord);
-vec4 texture1DProj (sampler1D sampler, vec4 coord);
-vec4 texture1DLod (sampler1D sampler, float coord, float lod);
-vec4 texture1DProjLod(sampler1D sampler, vec2 coord, float lod);
-vec4 texture1DProjLod(sampler1D sampler, vec4 coord, float lod);
-
-vec4 texture2D (sampler2D sampler, vec2 coord);
-vec4 texture2DProj (sampler2D sampler, vec3 coord);
-vec4 texture2DProj (sampler2D sampler, vec4 coord);
-vec4 texture2DLod (sampler2D sampler, vec2 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec3 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec4 coord, float lod);
-
-vec4 texture3D (sampler3D sampler, vec3 coord);
-vec4 texture3DProj (sampler3D sampler, vec4 coord);
-vec4 texture3DLod (sampler3D sampler, vec3 coord, float lod);
-vec4 texture3DProjLod(sampler3D sampler, vec4 coord, float lod);
-
-vec4 textureCube (samplerCube sampler, vec3 coord);
-vec4 textureCubeLod (samplerCube sampler, vec3 coord, float lod);
-
-vec4 shadow1D (sampler1DShadow sampler, vec3 coord);
-vec4 shadow2D (sampler2DShadow sampler, vec3 coord);
-vec4 shadow1DProj (sampler1DShadow sampler, vec4 coord);
-vec4 shadow2DProj (sampler2DShadow sampler, vec4 coord);
-vec4 shadow1DLod (sampler1DShadow sampler, vec3 coord, float lod);
-vec4 shadow2DLod (sampler2DShadow sampler, vec3 coord, float lod);
-vec4 shadow1DProjLod(sampler1DShadow sampler, vec4 coord, float lod);
-vec4 shadow2DProjLod(sampler2DShadow sampler, vec4 coord, float lod);
-
-/*
- * 8.9 - Noise Functions
- */
-float noise1(float x);
-float noise1(vec2 x);
-float noise1(vec3 x);
-float noise1(vec4 x);
-
-vec2 noise2(float x);
-vec2 noise2(vec2 x);
-vec2 noise2(vec3 x);
-vec2 noise2(vec4 x);
-
-vec3 noise3(float x);
-vec3 noise3(vec2 x);
-vec3 noise3(vec3 x);
-vec3 noise3(vec4 x);
-
-vec4 noise4(float x);
-vec4 noise4(vec2 x);
-vec4 noise4(vec3 x);
-vec4 noise4(vec4 x);
diff --git a/src/glsl/builtins/profiles/ARB_gpu_shader5.glsl b/src/glsl/builtins/profiles/ARB_gpu_shader5.glsl
deleted file mode 100644
index 0baea3c..0000000
--- a/src/glsl/builtins/profiles/ARB_gpu_shader5.glsl
+++ /dev/null
@@ -1,81 +0,0 @@
-#version 150
-#extension GL_ARB_gpu_shader5 : enable
-
-int bitfieldExtract(int value, int offset, int bits);
-ivec2 bitfieldExtract(ivec2 value, int offset, int bits);
-ivec3 bitfieldExtract(ivec3 value, int offset, int bits);
-ivec4 bitfieldExtract(ivec4 value, int offset, int bits);
-uint bitfieldExtract(uint value, int offset, int bits);
-uvec2 bitfieldExtract(uvec2 value, int offset, int bits);
-uvec3 bitfieldExtract(uvec3 value, int offset, int bits);
-uvec4 bitfieldExtract(uvec4 value, int offset, int bits);
-
-int bitfieldInsert(int base, int insert, int offset, int bits);
-ivec2 bitfieldInsert(ivec2 base, ivec2 insert, int offset, int bits);
-ivec3 bitfieldInsert(ivec3 base, ivec3 insert, int offset, int bits);
-ivec4 bitfieldInsert(ivec4 base, ivec4 insert, int offset, int bits);
-uint bitfieldInsert(uint base, uint insert, int offset, int bits);
-uvec2 bitfieldInsert(uvec2 base, uvec2 insert, int offset, int bits);
-uvec3 bitfieldInsert(uvec3 base, uvec3 insert, int offset, int bits);
-uvec4 bitfieldInsert(uvec4 base, uvec4 insert, int offset, int bits);
-
-int bitfieldReverse(int value);
-ivec2 bitfieldReverse(ivec2 value);
-ivec3 bitfieldReverse(ivec3 value);
-ivec4 bitfieldReverse(ivec4 value);
-uint bitfieldReverse(uint value);
-uvec2 bitfieldReverse(uvec2 value);
-uvec3 bitfieldReverse(uvec3 value);
-uvec4 bitfieldReverse(uvec4 value);
-
-int bitCount(int value);
-ivec2 bitCount(ivec2 value);
-ivec3 bitCount(ivec3 value);
-ivec4 bitCount(ivec4 value);
-int bitCount(uint value);
-ivec2 bitCount(uvec2 value);
-ivec3 bitCount(uvec3 value);
-ivec4 bitCount(uvec4 value);
-
-int findLSB(int value);
-ivec2 findLSB(ivec2 value);
-ivec3 findLSB(ivec3 value);
-ivec4 findLSB(ivec4 value);
-int findLSB(uint value);
-ivec2 findLSB(uvec2 value);
-ivec3 findLSB(uvec3 value);
-ivec4 findLSB(uvec4 value);
-
-int findMSB(int value);
-ivec2 findMSB(ivec2 value);
-ivec3 findMSB(ivec3 value);
-ivec4 findMSB(ivec4 value);
-int findMSB(uint value);
-ivec2 findMSB(uvec2 value);
-ivec3 findMSB(uvec3 value);
-ivec4 findMSB(uvec4 value);
-
-float fma(float a, float b, float c);
-vec2 fma(vec2 a, vec2 b, vec2 c);
-vec3 fma(vec3 a, vec3 b, vec3 c);
-vec4 fma(vec4 a, vec4 b, vec4 c);
-
-int floatBitsToInt(float value);
-ivec2 floatBitsToInt(vec2 value);
-ivec3 floatBitsToInt(vec3 value);
-ivec4 floatBitsToInt(vec4 value);
-
-uint floatBitsToUint(float value);
-uvec2 floatBitsToUint(vec2 value);
-uvec3 floatBitsToUint(vec3 value);
-uvec4 floatBitsToUint(vec4 value);
-
-float intBitsToFloat(int value);
-vec2 intBitsToFloat(ivec2 value);
-vec3 intBitsToFloat(ivec3 value);
-vec4 intBitsToFloat(ivec4 value);
-
-float uintBitsToFloat(uint value);
-vec2 uintBitsToFloat(uvec2 value);
-vec3 uintBitsToFloat(uvec3 value);
-vec4 uintBitsToFloat(uvec4 value);
diff --git a/src/glsl/builtins/profiles/ARB_shader_bit_encoding.glsl b/src/glsl/builtins/profiles/ARB_shader_bit_encoding.glsl
deleted file mode 100644
index e034594..0000000
--- a/src/glsl/builtins/profiles/ARB_shader_bit_encoding.glsl
+++ /dev/null
@@ -1,22 +0,0 @@
-#version 130
-#extension GL_ARB_shader_bit_encoding : enable
-
-int floatBitsToInt(float value);
-ivec2 floatBitsToInt(vec2 value);
-ivec3 floatBitsToInt(vec3 value);
-ivec4 floatBitsToInt(vec4 value);
-
-uint floatBitsToUint(float value);
-uvec2 floatBitsToUint(vec2 value);
-uvec3 floatBitsToUint(vec3 value);
-uvec4 floatBitsToUint(vec4 value);
-
-float intBitsToFloat(int value);
-vec2 intBitsToFloat(ivec2 value);
-vec3 intBitsToFloat(ivec3 value);
-vec4 intBitsToFloat(ivec4 value);
-
-float uintBitsToFloat(uint value);
-vec2 uintBitsToFloat(uvec2 value);
-vec3 uintBitsToFloat(uvec3 value);
-vec4 uintBitsToFloat(uvec4 value);
diff --git a/src/glsl/builtins/profiles/ARB_shader_texture_lod.frag b/src/glsl/builtins/profiles/ARB_shader_texture_lod.frag
deleted file mode 100644
index 26e84d0..0000000
--- a/src/glsl/builtins/profiles/ARB_shader_texture_lod.frag
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- * The existing isotropic vertex texture functions are added to the
- * built-in functions for fragment shaders.
- */
-vec4 texture1DLod (sampler1D sampler, float coord, float lod);
-vec4 texture1DProjLod(sampler1D sampler, vec2 coord, float lod);
-vec4 texture1DProjLod(sampler1D sampler, vec4 coord, float lod);
-vec4 texture2DLod (sampler2D sampler, vec2 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec3 coord, float lod);
-vec4 texture2DProjLod(sampler2D sampler, vec4 coord, float lod);
-vec4 texture3DLod (sampler3D sampler, vec3 coord, float lod);
-vec4 texture3DProjLod(sampler3D sampler, vec4 coord, float lod);
-vec4 textureCubeLod (samplerCube sampler, vec3 coord, float lod);
-vec4 shadow1DLod (sampler1DShadow sampler, vec3 coord, float lod);
-vec4 shadow2DLod (sampler2DShadow sampler, vec3 coord, float lod);
-vec4 shadow1DProjLod(sampler1DShadow sampler, vec4 coord, float lod);
-vec4 shadow2DProjLod(sampler2DShadow sampler, vec4 coord, float lod);
diff --git a/src/glsl/builtins/profiles/ARB_shader_texture_lod.glsl b/src/glsl/builtins/profiles/ARB_shader_texture_lod.glsl
deleted file mode 100644
index edfed26..0000000
--- a/src/glsl/builtins/profiles/ARB_shader_texture_lod.glsl
+++ /dev/null
@@ -1,46 +0,0 @@
-/* New anisotropic texture functions, providing explicit derivatives: */
-vec4 texture1DGradARB (sampler1D sampler,
- float P, float dPdx, float dPdy);
-vec4 texture1DProjGradARB (sampler1D sampler,
- vec2 P, float dPdx, float dPdy);
-vec4 texture1DProjGradARB (sampler1D sampler,
- vec4 P, float dPdx, float dPdy);
-
-vec4 texture2DGradARB (sampler2D sampler,
- vec2 P, vec2 dPdx, vec2 dPdy);
-vec4 texture2DProjGradARB (sampler2D sampler,
- vec3 P, vec2 dPdx, vec2 dPdy);
-vec4 texture2DProjGradARB (sampler2D sampler,
- vec4 P, vec2 dPdx, vec2 dPdy);
-
-vec4 texture3DGradARB (sampler3D sampler,
- vec3 P, vec3 dPdx, vec3 dPdy);
-vec4 texture3DProjGradARB (sampler3D sampler,
- vec4 P, vec3 dPdx, vec3 dPdy);
-
-vec4 textureCubeGradARB (samplerCube sampler,
- vec3 P, vec3 dPdx, vec3 dPdy);
-
-vec4 shadow1DGradARB (sampler1DShadow sampler,
- vec3 P, float dPdx, float dPdy);
-vec4 shadow1DProjGradARB (sampler1DShadow sampler,
- vec4 P, float dPdx, float dPdy);
-
-vec4 shadow2DGradARB (sampler2DShadow sampler,
- vec3 P, vec2 dPdx, vec2 dPdy);
-vec4 shadow2DProjGradARB (sampler2DShadow sampler,
- vec4 P, vec2 dPdx, vec2 dPdy);
-
-#ifdef GL_ARB_texture_rectangle
-vec4 texture2DRectGradARB (sampler2DRect sampler,
- vec2 P, vec2 dPdx, vec2 dPdy);
-vec4 texture2DRectProjGradARB(sampler2DRect sampler,
- vec3 P, vec2 dPdx, vec2 dPdy);
-vec4 texture2DRectProjGradARB(sampler2DRect sampler,
- vec4 P, vec2 dPdx, vec2 dPdy);
-
-vec4 shadow2DRectGradARB (sampler2DRectShadow sampler,
- vec3 P, vec2 dPdx, vec2 dPdy);
-vec4 shadow2DRectProjGradARB (sampler2DRectShadow sampler,
- vec4 P, vec2 dPdx, vec2 dPdy);
-#endif
diff --git a/src/glsl/builtins/profiles/ARB_shading_language_packing.glsl b/src/glsl/builtins/profiles/ARB_shading_language_packing.glsl
deleted file mode 100644
index 210af51..0000000
--- a/src/glsl/builtins/profiles/ARB_shading_language_packing.glsl
+++ /dev/null
@@ -1,14 +0,0 @@
-#version 130
-#extension GL_ARB_shading_language_packing : enable
-
-highp uint packSnorm2x16( vec2 v);
-highp uint packUnorm2x16( vec2 v);
-highp uint packSnorm4x8 ( vec4 v);
-highp uint packUnorm4x8 ( vec4 v);
-highp uint packHalf2x16 (mediump vec2 v);
-
-highp vec2 unpackSnorm2x16(highp uint p);
-highp vec2 unpackUnorm2x16(highp uint p);
-highp vec4 unpackSnorm4x8 (highp uint p);
-highp vec4 unpackUnorm4x8 (highp uint p);
-mediump vec2 unpackHalf2x16 (highp uint p);
diff --git a/src/glsl/builtins/profiles/ARB_texture_cube_map_array.frag b/src/glsl/builtins/profiles/ARB_texture_cube_map_array.frag
deleted file mode 100644
index 0d9f4f6..0000000
--- a/src/glsl/builtins/profiles/ARB_texture_cube_map_array.frag
+++ /dev/null
@@ -1,6 +0,0 @@
-#version 130
-#extension GL_ARB_texture_cube_map_array : enable
-
- vec4 texture( samplerCubeArray sampler, vec4 coord, float bias);
-ivec4 texture(isamplerCubeArray sampler, vec4 coord, float bias);
-uvec4 texture(usamplerCubeArray sampler, vec4 coord, float bias);
diff --git a/src/glsl/builtins/profiles/ARB_texture_cube_map_array.glsl b/src/glsl/builtins/profiles/ARB_texture_cube_map_array.glsl
deleted file mode 100644
index 73659b3..0000000
--- a/src/glsl/builtins/profiles/ARB_texture_cube_map_array.glsl
+++ /dev/null
@@ -1,20 +0,0 @@
-#version 130
-#extension GL_ARB_texture_cube_map_array : enable
-
-ivec3 textureSize(samplerCubeArray sampler, int lod);
-ivec3 textureSize(isamplerCubeArray sampler, int lod);
-ivec3 textureSize(usamplerCubeArray sampler, int lod);
-ivec3 textureSize(samplerCubeArrayShadow sampler, int lod);
-
- vec4 texture( samplerCubeArray sampler, vec4 coord);
-ivec4 texture(isamplerCubeArray sampler, vec4 coord);
-uvec4 texture(usamplerCubeArray sampler, vec4 coord);
-float texture( samplerCubeArrayShadow sampler, vec4 P, float compare);
-
- vec4 textureGrad( samplerCubeArray sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-ivec4 textureGrad( isamplerCubeArray sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-uvec4 textureGrad( usamplerCubeArray sampler, vec4 P, vec3 dPdx, vec3 dPdy);
-
- vec4 textureLod( samplerCubeArray sampler, vec4 P, float lod);
-ivec4 textureLod( isamplerCubeArray sampler, vec4 P, float lod);
-uvec4 textureLod( usamplerCubeArray sampler, vec4 P, float lod);
diff --git a/src/glsl/builtins/profiles/ARB_texture_multisample.glsl b/src/glsl/builtins/profiles/ARB_texture_multisample.glsl
deleted file mode 100644
index 4fa67e9..0000000
--- a/src/glsl/builtins/profiles/ARB_texture_multisample.glsl
+++ /dev/null
@@ -1,18 +0,0 @@
-#version 130
-#extension GL_ARB_texture_multisample : enable
-
-ivec2 textureSize( sampler2DMS sampler);
-ivec2 textureSize(isampler2DMS sampler);
-ivec2 textureSize(usampler2DMS sampler);
-
-ivec3 textureSize( sampler2DMSArray sampler);
-ivec3 textureSize(isampler2DMSArray sampler);
-ivec3 textureSize(usampler2DMSArray sampler);
-
- vec4 texelFetch( sampler2DMS sampler, ivec2 P, int sample);
-ivec4 texelFetch(isampler2DMS sampler, ivec2 P, int sample);
-uvec4 texelFetch(usampler2DMS sampler, ivec2 P, int sample);
-
- vec4 texelFetch( sampler2DMSArray sampler, ivec3 P, int sample);
-ivec4 texelFetch(isampler2DMSArray sampler, ivec3 P, int sample);
-uvec4 texelFetch(usampler2DMSArray sampler, ivec3 P, int sample);
diff --git a/src/glsl/builtins/profiles/ARB_texture_query_lod.frag b/src/glsl/builtins/profiles/ARB_texture_query_lod.frag
deleted file mode 100644
index 5d76127..0000000
--- a/src/glsl/builtins/profiles/ARB_texture_query_lod.frag
+++ /dev/null
@@ -1,38 +0,0 @@
-#version 130
-#extension GL_ARB_texture_query_lod : enable
-#extension GL_ARB_texture_cube_map_array : enable
-
-vec2 textureQueryLOD( sampler1D sampler, float coord);
-vec2 textureQueryLOD(isampler1D sampler, float coord);
-vec2 textureQueryLOD(usampler1D sampler, float coord);
-
-vec2 textureQueryLOD( sampler2D sampler, vec2 coord);
-vec2 textureQueryLOD(isampler2D sampler, vec2 coord);
-vec2 textureQueryLOD(usampler2D sampler, vec2 coord);
-
-vec2 textureQueryLOD( sampler3D sampler, vec3 coord);
-vec2 textureQueryLOD(isampler3D sampler, vec3 coord);
-vec2 textureQueryLOD(usampler3D sampler, vec3 coord);
-
-vec2 textureQueryLOD( samplerCube sampler, vec3 coord);
-vec2 textureQueryLOD(isamplerCube sampler, vec3 coord);
-vec2 textureQueryLOD(usamplerCube sampler, vec3 coord);
-
-vec2 textureQueryLOD( sampler1DArray sampler, float coord);
-vec2 textureQueryLOD(isampler1DArray sampler, float coord);
-vec2 textureQueryLOD(usampler1DArray sampler, float coord);
-
-vec2 textureQueryLOD( sampler2DArray sampler, vec2 coord);
-vec2 textureQueryLOD(isampler2DArray sampler, vec2 coord);
-vec2 textureQueryLOD(usampler2DArray sampler, vec2 coord);
-
-vec2 textureQueryLOD( samplerCubeArray sampler, vec3 coord);
-vec2 textureQueryLOD(isamplerCubeArray sampler, vec3 coord);
-vec2 textureQueryLOD(usamplerCubeArray sampler, vec3 coord);
-
-vec2 textureQueryLOD(sampler1DShadow sampler, float coord);
-vec2 textureQueryLOD(sampler2DShadow sampler, vec2 coord);
-vec2 textureQueryLOD(samplerCubeShadow sampler, vec3 coord);
-vec2 textureQueryLOD(sampler1DArrayShadow sampler, float coord);
-vec2 textureQueryLOD(sampler2DArrayShadow sampler, vec2 coord);
-vec2 textureQueryLOD(samplerCubeArrayShadow sampler, vec3 coord);
diff --git a/src/glsl/builtins/profiles/ARB_texture_rectangle.glsl b/src/glsl/builtins/profiles/ARB_texture_rectangle.glsl
deleted file mode 100644
index 8938aa3..0000000
--- a/src/glsl/builtins/profiles/ARB_texture_rectangle.glsl
+++ /dev/null
@@ -1,7 +0,0 @@
-#extension GL_ARB_texture_rectangle : enable
-vec4 texture2DRect(sampler2DRect sampler, vec2 coord);
-vec4 texture2DRectProj(sampler2DRect sampler, vec3 coord);
-vec4 texture2DRectProj(sampler2DRect sampler, vec4 coord);
-
-vec4 shadow2DRect(sampler2DRectShadow sampler, vec3 coord);
-vec4 shadow2DRectProj(sampler2DRectShadow sampler, vec4 coord);
diff --git a/src/glsl/builtins/profiles/EXT_texture_array.frag b/src/glsl/builtins/profiles/EXT_texture_array.frag
deleted file mode 100644
index d0ce981..0000000
--- a/src/glsl/builtins/profiles/EXT_texture_array.frag
+++ /dev/null
@@ -1,11 +0,0 @@
-#extension GL_EXT_texture_array : enable
-vec4 texture1DArray(sampler1DArray sampler, vec2 coord);
-vec4 texture1DArray(sampler1DArray sampler, vec2 coord, float bias);
-
-vec4 texture2DArray(sampler2DArray sampler, vec3 coord);
-vec4 texture2DArray(sampler2DArray sampler, vec3 coord, float bias);
-
-vec4 shadow1DArray(sampler1DArrayShadow sampler, vec3 coord);
-vec4 shadow1DArray(sampler1DArrayShadow sampler, vec3 coord, float bias);
-
-vec4 shadow2DArray(sampler2DArrayShadow sampler, vec4 coord);
diff --git a/src/glsl/builtins/profiles/EXT_texture_array.geom b/src/glsl/builtins/profiles/EXT_texture_array.geom
deleted file mode 100644
index 2308ba7..0000000
--- a/src/glsl/builtins/profiles/EXT_texture_array.geom
+++ /dev/null
@@ -1,12 +0,0 @@
-#extension GL_ARB_geometry_shader4 : enable
-#extension GL_EXT_texture_array : enable
-vec4 texture1DArray(sampler1DArray sampler, vec2 coord);
-vec4 texture1DArrayLod(sampler1DArray sampler, vec2 coord, float lod);
-
-vec4 texture2DArray(sampler2DArray sampler, vec3 coord);
-vec4 texture2DArrayLod(sampler2DArray sampler, vec3 coord, float lod);
-
-vec4 shadow1DArray(sampler1DArrayShadow sampler, vec3 coord);
-vec4 shadow1DArrayLod(sampler1DArrayShadow sampler, vec3 coord, float lod);
-
-vec4 shadow2DArray(sampler2DArrayShadow sampler, vec4 coord);
diff --git a/src/glsl/builtins/profiles/EXT_texture_array.vert b/src/glsl/builtins/profiles/EXT_texture_array.vert
deleted file mode 100644
index 6b1b7f2..0000000
--- a/src/glsl/builtins/profiles/EXT_texture_array.vert
+++ /dev/null
@@ -1,11 +0,0 @@
-#extension GL_EXT_texture_array : enable
-vec4 texture1DArray(sampler1DArray sampler, vec2 coord);
-vec4 texture1DArrayLod(sampler1DArray sampler, vec2 coord, float lod);
-
-vec4 texture2DArray(sampler2DArray sampler, vec3 coord);
-vec4 texture2DArrayLod(sampler2DArray sampler, vec3 coord, float lod);
-
-vec4 shadow1DArray(sampler1DArrayShadow sampler, vec3 coord);
-vec4 shadow1DArrayLod(sampler1DArrayShadow sampler, vec3 coord, float lod);
-
-vec4 shadow2DArray(sampler2DArrayShadow sampler, vec4 coord);
diff --git a/src/glsl/builtins/profiles/OES_EGL_image_external.glsl b/src/glsl/builtins/profiles/OES_EGL_image_external.glsl
deleted file mode 100644
index 90300ec..0000000
--- a/src/glsl/builtins/profiles/OES_EGL_image_external.glsl
+++ /dev/null
@@ -1,7 +0,0 @@
-#version 100
-#extension GL_OES_EGL_image_external : enable
-precision highp float;
-
-vec4 texture2D(samplerExternalOES sampler, vec2 coord);
-vec4 texture2DProj(samplerExternalOES sampler, vec3 coord);
-vec4 texture2DProj(samplerExternalOES sampler, vec4 coord);
diff --git a/src/glsl/builtins/profiles/OES_standard_derivatives.frag b/src/glsl/builtins/profiles/OES_standard_derivatives.frag
deleted file mode 100644
index 44991ef..0000000
--- a/src/glsl/builtins/profiles/OES_standard_derivatives.frag
+++ /dev/null
@@ -1,21 +0,0 @@
-#version 100
-#extension GL_OES_standard_derivatives : enable
-precision highp float;
-
-/*
- * 8.8 - Fragment Processing Functions
- */
-float dFdx(float p);
-vec2 dFdx(vec2 p);
-vec3 dFdx(vec3 p);
-vec4 dFdx(vec4 p);
-
-float dFdy(float p);
-vec2 dFdy(vec2 p);
-vec3 dFdy(vec3 p);
-vec4 dFdy(vec4 p);
-
-float fwidth(float p);
-vec2 fwidth(vec2 p);
-vec3 fwidth(vec3 p);
-vec4 fwidth(vec4 p);
diff --git a/src/glsl/builtins/profiles/OES_texture_3D.frag b/src/glsl/builtins/profiles/OES_texture_3D.frag
deleted file mode 100644
index c2c3339..0000000
--- a/src/glsl/builtins/profiles/OES_texture_3D.frag
+++ /dev/null
@@ -1,8 +0,0 @@
-#version 100
-#extension GL_OES_texture_3D : enable
-precision highp float;
-
-vec4 texture3D (sampler3D sampler, vec3 coord);
-vec4 texture3DProj (sampler3D sampler, vec4 coord);
-vec4 texture3D (sampler3D sampler, vec3 coord, float bias);
-vec4 texture3DProj (sampler3D sampler, vec4 coord, float bias);
diff --git a/src/glsl/builtins/profiles/OES_texture_3D.vert b/src/glsl/builtins/profiles/OES_texture_3D.vert
deleted file mode 100644
index 81d12f5..0000000
--- a/src/glsl/builtins/profiles/OES_texture_3D.vert
+++ /dev/null
@@ -1,7 +0,0 @@
-#version 100
-#extension GL_OES_texture_3D : enable
-
-vec4 texture3D (sampler3D sampler, vec3 coord);
-vec4 texture3DProj (sampler3D sampler, vec4 coord);
-vec4 texture3DLod (sampler3D sampler, vec3 coord, float lod);
-vec4 texture3DProjLod (sampler3D sampler, vec4 coord, float lod);
diff --git a/src/glsl/builtins/tools/generate_builtins.py b/src/glsl/builtins/tools/generate_builtins.py
deleted file mode 100755
index 70e9d75..0000000
--- a/src/glsl/builtins/tools/generate_builtins.py
+++ /dev/null
@@ -1,306 +0,0 @@
-#!/usr/bin/python
-# -*- coding: utf-8 -*-
-
-from __future__ import with_statement
-
-import re
-import sys
-from glob import glob
-from os import path
-from subprocess import Popen, PIPE
-from sys import argv
-
-# Local module: generator for texture lookup builtins
-from texture_builtins import generate_texture_functions
-
-builtins_dir = path.join(path.dirname(path.abspath(__file__)), "..")
-
-# Get the path to the standalone GLSL compiler
-if len(argv) != 2:
- print "Usage:", argv[0], "<path to compiler>"
- sys.exit(1)
-
-compiler = argv[1]
-
-# Read the files in builtins/ir/*...add them to the supplied dictionary.
-def read_ir_files(fs):
- for filename in glob(path.join(path.join(builtins_dir, 'ir'), '*.ir')):
- function_name = path.basename(filename).split('.')[0]
- with open(filename) as f:
- fs[function_name] = f.read()
-
-def read_glsl_files(fs):
- for filename in glob(path.join(path.join(builtins_dir, 'glsl'), '*.glsl')):
- function_name = path.basename(filename).split('.')[0]
- (output, returncode) = run_compiler([filename])
- if (returncode):
- sys.stderr.write("Failed to compile builtin: " + filename + "\n")
- sys.stderr.write("Result:\n")
- sys.stderr.write(output)
- else:
- fs[function_name] = output;
-
-# Return a dictionary containing all builtin definitions (even generated)
-def get_builtin_definitions():
- fs = {}
- generate_texture_functions(fs)
- read_ir_files(fs)
- read_glsl_files(fs)
- return fs
-
-def stringify(s):
- # Work around MSVC's 65535 byte limit by outputting an array of characters
- # rather than actual string literals.
- if len(s) >= 65535:
- #t = "/* Warning: length " + repr(len(s)) + " too large */\n"
- t = ""
- for c in re.sub('\s\s+', ' ', s):
- if c == '\n':
- t += '\n'
- else:
- t += "'" + c + "',"
- return '{' + t[:-1] + '}'
-
- t = s.replace('\\', '\\\\').replace('"', '\\"').replace('\n', '\\n"\n "')
- return ' "' + t + '"\n'
-
-def write_function_definitions():
- fs = get_builtin_definitions()
- for k, v in sorted(fs.iteritems()):
- print 'static const char builtin_' + k + '[] ='
- print stringify(v), ';'
-
-def run_compiler(args):
- command = [compiler, '--dump-hir'] + args
- p = Popen(command, 1, stdout=PIPE, shell=False)
- output = p.communicate()[0]
-
- if (p.returncode):
- sys.stderr.write("Failed to compile builtins with command:\n")
- for arg in command:
- sys.stderr.write(arg + " ")
- sys.stderr.write("\n")
- sys.stderr.write("Result:\n")
- sys.stderr.write(output)
-
- # Clean up output a bit by killing whitespace before a closing paren.
- kill_paren_whitespace = re.compile(r'[ \n]*\)', re.MULTILINE)
- output = kill_paren_whitespace.sub(')', output)
-
- # Also toss any duplicate newlines
- output = output.replace('\n\n', '\n')
-
- # Kill any global variable declarations. We don't want them.
- kill_globals = re.compile(r'^\(declare.*\n', re.MULTILINE)
- output = kill_globals.sub('', output)
-
- return (output, p.returncode)
-
-def write_profile(filename, profile):
- (proto_ir, returncode) = run_compiler([filename])
-
- if returncode != 0:
- print '#error builtins profile', profile, 'failed to compile'
- return
-
- print 'static const char prototypes_for_' + profile + '[] ='
- print stringify(proto_ir), ';'
-
- # Print a table of all the functions (not signatures) referenced.
- # This is done so we can avoid bothering with a hash table in the C++ code.
-
- function_names = set()
- for func in re.finditer(r'\(function (.+)\n', proto_ir):
- function_names.add(func.group(1))
-
- print 'static const char *functions_for_' + profile + ' [] = {'
- for func in sorted(function_names):
- print ' builtin_' + func + ','
- print '};'
-
-def write_profiles():
- profiles = get_profile_list()
- for (filename, profile) in profiles:
- write_profile(filename, profile)
-
-def get_profile_list():
- profile_files = []
- for extension in ['glsl', 'frag', 'vert', 'geom']:
- path_glob = path.join(
- path.join(builtins_dir, 'profiles'), '*.' + extension)
- profile_files.extend(glob(path_glob))
- profiles = []
- for pfile in sorted(profile_files):
- profiles.append((pfile, path.basename(pfile).replace('.', '_')))
- return profiles
-
-if __name__ == "__main__":
- print """/* DO NOT MODIFY - automatically generated by generate_builtins.py */
-/*
- * Copyright © 2010 Intel Corporation
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice (including the next
- * paragraph) shall be included in all copies or substantial portions of the
- * Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- */
-
-#include <stdio.h>
-#include "main/core.h" /* for struct gl_shader */
-#include "glsl_parser_extras.h"
-#include "ir_reader.h"
-#include "program.h"
-#include "ast.h"
-
-extern "C" struct gl_shader *
-_mesa_new_shader(struct gl_context *ctx, GLuint name, GLenum type);
-
-gl_shader *
-read_builtins(GLenum target, const char *protos, const char **functions, unsigned count)
-{
- struct gl_context fakeCtx;
- fakeCtx.API = API_OPENGL_COMPAT;
- fakeCtx.Const.GLSLVersion = 330;
- fakeCtx.Extensions.ARB_ES2_compatibility = true;
- fakeCtx.Extensions.ARB_ES3_compatibility = true;
- fakeCtx.Const.ForceGLSLExtensionsWarn = false;
- gl_shader *sh = _mesa_new_shader(NULL, 0, target);
- struct _mesa_glsl_parse_state *st =
- new(sh) _mesa_glsl_parse_state(&fakeCtx, target, sh);
-
- st->language_version = 330;
- st->symbols->separate_function_namespace = false;
- st->ARB_texture_rectangle_enable = true;
- st->EXT_texture_array_enable = true;
- st->OES_EGL_image_external_enable = true;
- st->ARB_shader_bit_encoding_enable = true;
- st->ARB_texture_cube_map_array_enable = true;
- st->ARB_shading_language_packing_enable = true;
- st->ARB_texture_multisample_enable = true;
- st->ARB_texture_query_lod_enable = true;
- st->ARB_gpu_shader5_enable = true;
- _mesa_glsl_initialize_types(st);
-
- sh->ir = new(sh) exec_list;
- sh->symbols = st->symbols;
-
- /* Read the IR containing the prototypes */
- _mesa_glsl_read_ir(st, sh->ir, protos, true);
-
- /* Read ALL the function bodies, telling the IR reader not to scan for
- * prototypes (we've already created them). The IR reader will skip any
- * signature that does not already exist as a prototype.
- */
- for (unsigned i = 0; i < count; i++) {
- _mesa_glsl_read_ir(st, sh->ir, functions[i], false);
-
- if (st->error) {
- printf("error reading builtin: %.35s ...\\n", functions[i]);
- printf("Info log:\\n%s\\n", st->info_log);
- ralloc_free(sh);
- return NULL;
- }
- }
-
- reparent_ir(sh->ir, sh);
- delete st;
-
- return sh;
-}
-"""
-
- write_function_definitions()
- write_profiles()
-
- profiles = get_profile_list()
-
- print 'static gl_shader *builtin_profiles[%d];' % len(profiles)
-
- print """
-static void *builtin_mem_ctx = NULL;
-
-void
-_mesa_glsl_release_functions(void)
-{
- ralloc_free(builtin_mem_ctx);
- builtin_mem_ctx = NULL;
- memset(builtin_profiles, 0, sizeof(builtin_profiles));
-}
-
-static void
-_mesa_read_profile(struct _mesa_glsl_parse_state *state,
- int profile_index,
- const char *prototypes,
- const char **functions,
- int count)
-{
- gl_shader *sh = builtin_profiles[profile_index];
-
- if (sh == NULL) {
- sh = read_builtins(GL_VERTEX_SHADER, prototypes, functions, count);
- ralloc_steal(builtin_mem_ctx, sh);
- builtin_profiles[profile_index] = sh;
- }
-
- state->builtins_to_link[state->num_builtins_to_link] = sh;
- state->num_builtins_to_link++;
-}
-
-void
-_mesa_glsl_initialize_functions(struct _mesa_glsl_parse_state *state)
-{
- /* If we've already initialized the built-ins, bail early. */
- if (state->num_builtins_to_link > 0)
- return;
-
- if (builtin_mem_ctx == NULL) {
- builtin_mem_ctx = ralloc_context(NULL); // "GLSL built-in functions"
- memset(&builtin_profiles, 0, sizeof(builtin_profiles));
- }
-"""
-
- i = 0
- for (filename, profile) in profiles:
- if profile.endswith('_vert'):
- check = 'state->target == vertex_shader && '
- elif profile.endswith('_frag'):
- check = 'state->target == fragment_shader && '
- elif profile.endswith('_geom'):
- check = 'state->target == geometry_shader && '
- else:
- check = ''
-
- version = re.sub(r'_(glsl|vert|frag|geom)$', '', profile)
- if version[0].isdigit():
- is_es = version.endswith('es')
- if is_es:
- version = version[:-2]
- check += 'state->language_version == ' + version
- check += ' && {0}state->es_shader'.format('' if is_es else '!')
- else: # an extension name
- check += 'state->' + version + '_enable'
-
- print ' if (' + check + ') {'
- print ' _mesa_read_profile(state, %d,' % i
- print ' prototypes_for_' + profile + ','
- print ' functions_for_' + profile + ','
- print ' Elements(functions_for_' + profile + '));'
- print ' }'
- print
- i = i + 1
- print '}'
-
diff --git a/src/glsl/builtins/tools/generate_matrixCompMultGLSL.py b/src/glsl/builtins/tools/generate_matrixCompMultGLSL.py
deleted file mode 100755
index 391ad11..0000000
--- a/src/glsl/builtins/tools/generate_matrixCompMultGLSL.py
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/usr/bin/python
-
-def gen_matrix(x, y = 0):
- if y == 0:
- y = x
- type = "mat" + str(x)
- if x != y:
- type = type + "x" + str(y)
- print type + " matrixCompMult(" + type + " x, " + type + " y)\n{"
- print " " + type + " z;"
-
- for i in range(x):
- print " z[" + str(i) + "] = x[" + str(i) + "] * y[" + str(i) + "];"
- print " return z;\n}"
-
-print "#version 120"
-# 1.10
-gen_matrix(2)
-gen_matrix(3)
-gen_matrix(4)
-
-# 1.20
-gen_matrix(2,3) # mat2x3 means 2 columns, 3 rows
-gen_matrix(3,2)
-gen_matrix(2,4)
-gen_matrix(4,2)
-gen_matrix(3,4)
-gen_matrix(4,3)
diff --git a/src/glsl/builtins/tools/generate_outerProductGLSL.py b/src/glsl/builtins/tools/generate_outerProductGLSL.py
deleted file mode 100755
index c561cc3..0000000
--- a/src/glsl/builtins/tools/generate_outerProductGLSL.py
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/usr/bin/python
-
-def gen(x, y):
- type = "mat" + str(x)
- if x != y:
- type = type + "x" + str(y)
- print type + " outerProduct(vec" + str(y) + " u, vec" + str(x) + " v)\n{"
- print " " + type + " m;"
-
- for i in range(x):
- print " m[" + str(i) + "] = u * v[" + str(i) + "];"
- print " return m;\n}"
-
-print "#version 120"
-gen(2,2)
-gen(2,3) # mat2x3 means 2 columns, 3 rows
-gen(2,4)
-gen(3,2)
-gen(3,3)
-gen(3,4)
-gen(4,2)
-gen(4,3)
-gen(4,4)
diff --git a/src/glsl/builtins/tools/generate_transposeGLSL.py b/src/glsl/builtins/tools/generate_transposeGLSL.py
deleted file mode 100755
index 8f669ce..0000000
--- a/src/glsl/builtins/tools/generate_transposeGLSL.py
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/usr/bin/python
-
-def gen(x, y):
- origtype = "mat" + str(x)
- trantype = "mat" + str(y)
- if x != y:
- origtype = origtype + "x" + str(y)
- trantype = trantype + "x" + str(x)
- print trantype + " transpose(" + origtype + " m)\n{"
- print " " + trantype + " t;"
-
- # The obvious implementation of transpose
- for i in range(x):
- for j in range(y):
- print " t[" + str(j) + "][" + str(i) + "] =",
- print "m[" + str(i) + "][" + str(j) + "];"
- print " return t;\n}"
-
-print "#version 120"
-gen(2,2)
-gen(2,3) # mat2x3 means 2 columns, 3 rows
-gen(2,4)
-gen(3,2)
-gen(3,3)
-gen(3,4)
-gen(4,2)
-gen(4,3)
-gen(4,4)
diff --git a/src/glsl/builtins/tools/texture_builtins.py b/src/glsl/builtins/tools/texture_builtins.py
deleted file mode 100755
index 6ef20d5..0000000
--- a/src/glsl/builtins/tools/texture_builtins.py
+++ /dev/null
@@ -1,664 +0,0 @@
-#!/usr/bin/python
-
-import sys
-import StringIO
-
-# Bitfield constants for the 'variant' argument to generate_sigs
-Proj = 1
-Offset = 2
-Single = 4
-
-def vec_type(g, size):
- if size == 1:
- if g == "i":
- return "int"
- elif g == "u":
- return "uint"
- return "float"
- return g + "vec" + str(size)
-
-# Get the sampler dimension - i.e. sampler3D gives 3
-def get_sampler_dim(sampler_type):
- if sampler_type[0].isdigit():
- sampler_dim = int(sampler_type[0])
- elif sampler_type.startswith("Cube"):
- sampler_dim = 3
- elif sampler_type == "ExternalOES":
- sampler_dim = 2
- elif sampler_type == "Buffer":
- sampler_dim = 1
- else:
- assert False ("coord_dim: invalid sampler_type: " + sampler_type)
- return sampler_dim
-
-# Get the coordinate dimension for a given sampler type.
-# Array samplers also get +1 here since the layer is really an extra coordinate
-def get_coord_dim(sampler_type, tex_inst):
- coord_dim = get_sampler_dim(sampler_type)
- if sampler_type.find("Array") != -1 and tex_inst != "lod":
- coord_dim += 1
- return coord_dim
-
-# Get the number of extra vector components (i.e. shadow comparitor)
-def get_extra_dim(sampler_type, use_proj, unused_fields, tex_inst):
- extra_dim = unused_fields
- if sampler_type == "CubeArrayShadow":
- return 0
- if sampler_type.find("Shadow") != -1 and tex_inst != "lod":
- extra_dim += 1
- if use_proj:
- extra_dim += 1
- return extra_dim
-
-def get_txs_dim(sampler_type, tex_inst):
- if sampler_type.startswith("CubeArray"):
- return 3
- if sampler_type.startswith("Cube"):
- return 2
- return get_coord_dim(sampler_type, tex_inst)
-
-def has_lod(sampler_type):
- if 'Buffer' in sampler_type: return False
- if 'Rect' in sampler_type: return False
- if 'MS' in sampler_type: return False
- return True
-
-def generate_sigs(g, tex_inst, sampler_type, variant = 0, unused_fields = 0):
- coord_dim = get_coord_dim(sampler_type, tex_inst)
- extra_dim = get_extra_dim(sampler_type, variant & Proj, unused_fields, tex_inst)
- sampler_dim = get_sampler_dim(sampler_type)
-
- if variant & Single:
- return_type = "float"
- elif tex_inst == "txs":
- return_type = vec_type("i", get_txs_dim(sampler_type, tex_inst))
- elif tex_inst == "lod":
- return_type = "vec2"
- else:
- return_type = g + "vec4"
-
- # Print parameters
- print " (signature", return_type
- print " (parameters"
- print " (declare (in) " + g + "sampler" + sampler_type + " sampler)",
- if tex_inst != "txs":
- print "\n (declare (in) " + vec_type("i" if tex_inst in ['txf','txf_ms'] else "", coord_dim + extra_dim) + " P)",
- if tex_inst == "txl":
- print "\n (declare (in) float lod)",
- elif tex_inst in ['txf', 'txs'] and has_lod(sampler_type):
- print "\n (declare (in) int lod)",
- elif tex_inst == "txf_ms":
- print "\n (declare (in) int sample)",
- elif tex_inst == "txd":
- grad_type = vec_type("", sampler_dim)
- print "\n (declare (in) " + grad_type + " dPdx)",
- print "\n (declare (in) " + grad_type + " dPdy)",
- if sampler_type == "CubeArrayShadow" and tex_inst == "tex":
- print "\n (declare (in) float compare)",
-
- if variant & Offset:
- print "\n (declare (const_in) " + vec_type("i", sampler_dim) + " offset)",
- if tex_inst == "txb":
- print "\n (declare (in) float bias)",
-
- print ")\n ((return (" + tex_inst, return_type, "(var_ref sampler)",
-
- if tex_inst != "txs":
- # Coordinate
- if extra_dim > 0:
- print "(swiz " + "xyzw"[:coord_dim] + " (var_ref P))",
- else:
- print "(var_ref P)",
-
- if tex_inst not in ['txf_ms', 'txs', 'lod']:
- # Coordinate offset
- if variant & Offset:
- print "(var_ref offset)",
- else:
- print "0",
-
- if tex_inst not in ['txf', 'txf_ms', 'txs', 'lod']:
- # Projective divisor
- if variant & Proj:
- print "(swiz " + "xyzw"[coord_dim + extra_dim-1] + " (var_ref P))",
- else:
- print "1",
-
- # Shadow comparitor
- if sampler_type == "CubeArrayShadow": # a special case
- print "(var_ref compare)",
- elif sampler_type == "2DArrayShadow" or sampler_type == "CubeShadow": # a special case:
- print "(swiz w (var_ref P))", # ...array layer is z; shadow is w
- elif sampler_type.endswith("Shadow"):
- print "(swiz z (var_ref P))",
- else:
- print "()",
-
- # Bias/explicit LOD/gradient:
- if tex_inst == "txb":
- print "(var_ref bias)",
- elif tex_inst in ['txs', 'txf', 'txf_ms']:
- if has_lod(sampler_type):
- print "(var_ref lod)",
- elif tex_inst == 'txf_ms':
- print "(var_ref sample)",
- else:
- print "(constant int (0))",
- elif tex_inst == "txl":
- print "(var_ref lod)",
- elif tex_inst == "txd":
- print "((var_ref dPdx) (var_ref dPdy))",
- print "))))\n"
-
-def generate_fiu_sigs(tex_inst, sampler_type, variant = 0, unused_fields = 0):
- generate_sigs("", tex_inst, sampler_type, variant, unused_fields)
- generate_sigs("i", tex_inst, sampler_type, variant, unused_fields)
- generate_sigs("u", tex_inst, sampler_type, variant, unused_fields)
-
-def start_function(name):
- sys.stdout = StringIO.StringIO()
- print "((function " + name
-
-def end_function(fs, name):
- print "))"
- fs[name] = sys.stdout.getvalue();
- sys.stdout.close()
-
-# Generate all the functions and store them in the supplied dictionary.
-# This is better than writing them to actual files since they should never be
-# edited; it'd also be easy to confuse them with the many hand-generated files.
-#
-# Takes a dictionary as an argument.
-def generate_texture_functions(fs):
- start_function("textureSize")
- generate_fiu_sigs("txs", "1D")
- generate_fiu_sigs("txs", "2D")
- generate_fiu_sigs("txs", "3D")
- generate_fiu_sigs("txs", "Cube")
- generate_fiu_sigs("txs", "1DArray")
- generate_fiu_sigs("txs", "2DArray")
- generate_sigs("", "txs", "1DShadow")
- generate_sigs("", "txs", "2DShadow")
- generate_sigs("", "txs", "CubeShadow")
- generate_sigs("", "txs", "1DArrayShadow")
- generate_sigs("", "txs", "2DArrayShadow")
- generate_fiu_sigs("txs", "2DRect")
- generate_sigs("", "txs", "2DRectShadow")
- generate_fiu_sigs("txs", "Buffer")
- generate_fiu_sigs("txs", "CubeArray")
- generate_sigs("", "txs", "CubeArrayShadow")
- generate_fiu_sigs("txs", "2DMS")
- generate_fiu_sigs("txs", "2DMSArray")
- end_function(fs, "textureSize")
-
- start_function("texture")
- generate_fiu_sigs("tex", "1D")
- generate_fiu_sigs("tex", "2D")
- generate_fiu_sigs("tex", "3D")
- generate_fiu_sigs("tex", "Cube")
- generate_fiu_sigs("tex", "1DArray")
- generate_fiu_sigs("tex", "2DArray")
- generate_sigs("", "tex", "1DShadow", Single, 1);
- generate_sigs("", "tex", "2DShadow", Single);
- generate_sigs("", "tex", "CubeShadow", Single);
- generate_sigs("", "tex", "1DArrayShadow", Single);
- generate_sigs("", "tex", "2DArrayShadow", Single);
- generate_fiu_sigs("tex", "2DRect")
- generate_sigs("", "tex", "2DRectShadow", Single);
- # ARB_texture_cube_map_array extension
- generate_fiu_sigs("tex", "CubeArray")
- generate_sigs("", "tex", "CubeArrayShadow", Single);
-
- generate_fiu_sigs("txb", "1D")
- generate_fiu_sigs("txb", "2D")
- generate_fiu_sigs("txb", "3D")
- generate_fiu_sigs("txb", "Cube")
- generate_fiu_sigs("txb", "1DArray")
- generate_fiu_sigs("txb", "2DArray")
- generate_fiu_sigs("txb", "CubeArray")
- generate_sigs("", "txb", "1DShadow", Single, 1);
- generate_sigs("", "txb", "2DShadow", Single);
- generate_sigs("", "txb", "CubeShadow", Single);
- generate_sigs("", "txb", "1DArrayShadow", Single);
- generate_sigs("", "txb", "2DArrayShadow", Single);
- end_function(fs, "texture")
-
- start_function("textureProj")
- generate_fiu_sigs("tex", "1D", Proj)
- generate_fiu_sigs("tex", "1D", Proj, 2)
- generate_fiu_sigs("tex", "2D", Proj)
- generate_fiu_sigs("tex", "2D", Proj, 1)
- generate_fiu_sigs("tex", "3D", Proj)
- generate_sigs("", "tex", "1DShadow", Proj | Single, 1);
- generate_sigs("", "tex", "2DShadow", Proj | Single);
- generate_fiu_sigs("tex", "2DRect", Proj)
- generate_fiu_sigs("tex", "2DRect", Proj, 1)
- generate_sigs("", "tex", "2DRectShadow", Proj | Single);
-
- generate_fiu_sigs("txb", "1D", Proj)
- generate_fiu_sigs("txb", "1D", Proj, 2)
- generate_fiu_sigs("txb", "2D", Proj)
- generate_fiu_sigs("txb", "2D", Proj, 1)
- generate_fiu_sigs("txb", "3D", Proj)
- generate_sigs("", "txb", "1DShadow", Proj | Single, 1);
- generate_sigs("", "txb", "2DShadow", Proj | Single);
- end_function(fs, "textureProj")
-
- start_function("textureLod")
- generate_fiu_sigs("txl", "1D")
- generate_fiu_sigs("txl", "2D")
- generate_fiu_sigs("txl", "3D")
- generate_fiu_sigs("txl", "Cube")
- generate_fiu_sigs("txl", "1DArray")
- generate_fiu_sigs("txl", "2DArray")
- generate_sigs("", "txl", "1DShadow", Single, 1);
- generate_sigs("", "txl", "2DShadow", Single);
- generate_sigs("", "txl", "1DArrayShadow", Single);
- # ARB_texture_cube_map_array extension
- generate_fiu_sigs("txl", "CubeArray")
- end_function(fs, "textureLod")
-
- start_function("textureLodOffset")
- generate_fiu_sigs("txl", "1D", Offset)
- generate_fiu_sigs("txl", "2D", Offset)
- generate_fiu_sigs("txl", "3D", Offset)
- generate_fiu_sigs("txl", "1DArray", Offset)
- generate_fiu_sigs("txl", "2DArray", Offset)
- generate_sigs("", "txl", "1DShadow", Offset | Single, 1);
- generate_sigs("", "txl", "2DShadow", Offset | Single);
- generate_sigs("", "txl", "1DArrayShadow", Offset | Single);
- end_function(fs, "textureLodOffset")
-
- start_function("textureOffset")
- generate_fiu_sigs("tex", "1D", Offset)
- generate_fiu_sigs("tex", "2D", Offset)
- generate_fiu_sigs("tex", "3D", Offset)
- generate_fiu_sigs("tex", "2DRect", Offset)
- generate_sigs("", "tex", "2DRectShadow", Offset | Single);
- generate_fiu_sigs("tex", "1DArray", Offset)
- generate_fiu_sigs("tex", "2DArray", Offset)
- generate_sigs("", "tex", "1DShadow", Offset | Single, 1);
- generate_sigs("", "tex", "2DShadow", Offset | Single);
- generate_sigs("", "tex", "1DArrayShadow", Offset | Single);
-
- generate_fiu_sigs("txb", "1D", Offset)
- generate_fiu_sigs("txb", "2D", Offset)
- generate_fiu_sigs("txb", "3D", Offset)
- generate_fiu_sigs("txb", "1DArray", Offset)
- generate_fiu_sigs("txb", "2DArray", Offset)
- generate_sigs("", "txb", "1DShadow", Offset | Single, 1);
- generate_sigs("", "txb", "2DShadow", Offset | Single);
- generate_sigs("", "txb", "1DArrayShadow", Offset | Single);
- end_function(fs, "textureOffset")
-
- start_function("texelFetch")
- generate_fiu_sigs("txf", "1D")
- generate_fiu_sigs("txf", "2D")
- generate_fiu_sigs("txf", "3D")
- generate_fiu_sigs("txf", "2DRect")
- generate_fiu_sigs("txf", "1DArray")
- generate_fiu_sigs("txf", "2DArray")
- generate_fiu_sigs("txf", "Buffer")
- generate_fiu_sigs("txf_ms", "2DMS")
- generate_fiu_sigs("txf_ms", "2DMSArray")
- end_function(fs, "texelFetch")
-
- start_function("texelFetchOffset")
- generate_fiu_sigs("txf", "1D", Offset)
- generate_fiu_sigs("txf", "2D", Offset)
- generate_fiu_sigs("txf", "3D", Offset)
- generate_fiu_sigs("txf", "2DRect", Offset)
- generate_fiu_sigs("txf", "1DArray", Offset)
- generate_fiu_sigs("txf", "2DArray", Offset)
- end_function(fs, "texelFetchOffset")
-
- start_function("textureProjOffset")
- generate_fiu_sigs("tex", "1D", Proj | Offset)
- generate_fiu_sigs("tex", "1D", Proj | Offset, 2)
- generate_fiu_sigs("tex", "2D", Proj | Offset)
- generate_fiu_sigs("tex", "2D", Proj | Offset, 1)
- generate_fiu_sigs("tex", "3D", Proj | Offset)
- generate_fiu_sigs("tex", "2DRect", Proj | Offset)
- generate_fiu_sigs("tex", "2DRect", Proj | Offset, 1)
- generate_sigs("", "tex", "2DRectShadow", Proj | Offset | Single);
- generate_sigs("", "tex", "1DShadow", Proj | Offset | Single, 1);
- generate_sigs("", "tex", "2DShadow", Proj | Offset | Single);
-
- generate_fiu_sigs("txb", "1D", Proj | Offset)
- generate_fiu_sigs("txb", "1D", Proj | Offset, 2)
- generate_fiu_sigs("txb", "2D", Proj | Offset)
- generate_fiu_sigs("txb", "2D", Proj | Offset, 1)
- generate_fiu_sigs("txb", "3D", Proj | Offset)
- generate_sigs("", "txb", "1DShadow", Proj | Offset | Single, 1);
- generate_sigs("", "txb", "2DShadow", Proj | Offset | Single);
- end_function(fs, "textureProjOffset")
-
- start_function("textureProjLod")
- generate_fiu_sigs("txl", "1D", Proj)
- generate_fiu_sigs("txl", "1D", Proj, 2)
- generate_fiu_sigs("txl", "2D", Proj)
- generate_fiu_sigs("txl", "2D", Proj, 1)
- generate_fiu_sigs("txl", "3D", Proj)
- generate_sigs("", "txl", "1DShadow", Proj | Single, 1);
- generate_sigs("", "txl", "2DShadow", Proj | Single);
- end_function(fs, "textureProjLod")
-
- start_function("textureProjLodOffset")
- generate_fiu_sigs("txl", "1D", Proj | Offset)
- generate_fiu_sigs("txl", "1D", Proj | Offset, 2)
- generate_fiu_sigs("txl", "2D", Proj | Offset)
- generate_fiu_sigs("txl", "2D", Proj | Offset, 1)
- generate_fiu_sigs("txl", "3D", Proj | Offset)
- generate_sigs("", "txl", "1DShadow", Proj | Offset | Single, 1);
- generate_sigs("", "txl", "2DShadow", Proj | Offset | Single);
- end_function(fs, "textureProjLodOffset")
-
- start_function("textureGrad")
- generate_fiu_sigs("txd", "1D")
- generate_fiu_sigs("txd", "2D")
- generate_fiu_sigs("txd", "3D")
- generate_fiu_sigs("txd", "Cube")
- generate_fiu_sigs("txd", "1DArray")
- generate_fiu_sigs("txd", "2DArray")
- generate_fiu_sigs("txd", "2DRect")
- generate_sigs("", "txd", "2DRectShadow", Single);
- generate_sigs("", "txd", "1DShadow", Single, 1);
- generate_sigs("", "txd", "2DShadow", Single);
- generate_sigs("", "txd", "CubeShadow", Single);
- generate_sigs("", "txd", "1DArrayShadow", Single);
- generate_sigs("", "txd", "2DArrayShadow", Single);
- # ARB_texture_cube_map_array extension
- generate_fiu_sigs("txd", "CubeArray")
- end_function(fs, "textureGrad")
-
- start_function("textureGradOffset")
- generate_fiu_sigs("txd", "1D", Offset)
- generate_fiu_sigs("txd", "2D", Offset)
- generate_fiu_sigs("txd", "3D", Offset)
- generate_fiu_sigs("txd", "2DRect", Offset)
- generate_sigs("", "txd", "2DRectShadow", Offset | Single);
- generate_fiu_sigs("txd", "1DArray", Offset)
- generate_fiu_sigs("txd", "2DArray", Offset)
- generate_sigs("", "txd", "1DShadow", Offset | Single, 1);
- generate_sigs("", "txd", "2DShadow", Offset | Single);
- generate_sigs("", "txd", "1DArrayShadow", Offset | Single);
- generate_sigs("", "txd", "2DArrayShadow", Offset | Single);
- end_function(fs, "textureGradOffset")
-
- start_function("textureProjGrad")
- generate_fiu_sigs("txd", "1D", Proj)
- generate_fiu_sigs("txd", "1D", Proj, 2)
- generate_fiu_sigs("txd", "2D", Proj)
- generate_fiu_sigs("txd", "2D", Proj, 1)
- generate_fiu_sigs("txd", "3D", Proj)
- generate_fiu_sigs("txd", "2DRect", Proj)
- generate_fiu_sigs("txd", "2DRect", Proj, 1)
- generate_sigs("", "txd", "2DRectShadow", Proj | Single);
- generate_sigs("", "txd", "1DShadow", Proj | Single, 1);
- generate_sigs("", "txd", "2DShadow", Proj | Single);
- end_function(fs, "textureProjGrad")
-
- start_function("textureProjGradOffset")
- generate_fiu_sigs("txd", "1D", Proj | Offset)
- generate_fiu_sigs("txd", "1D", Proj | Offset, 2)
- generate_fiu_sigs("txd", "2D", Proj | Offset)
- generate_fiu_sigs("txd", "2D", Proj | Offset, 1)
- generate_fiu_sigs("txd", "3D", Proj | Offset)
- generate_fiu_sigs("txd", "2DRect", Proj | Offset)
- generate_fiu_sigs("txd", "2DRect", Proj | Offset, 1)
- generate_sigs("", "txd", "2DRectShadow", Proj | Offset | Single);
- generate_sigs("", "txd", "1DShadow", Proj | Offset | Single, 1);
- generate_sigs("", "txd", "2DShadow", Proj | Offset | Single);
- end_function(fs, "textureProjGradOffset")
-
-
- # ARB_texture_rectangle extension
- start_function("texture2DRect")
- generate_sigs("", "tex", "2DRect")
- end_function(fs, "texture2DRect")
-
- start_function("texture2DRectProj")
- generate_sigs("", "tex", "2DRect", Proj)
- generate_sigs("", "tex", "2DRect", Proj, 1)
- end_function(fs, "texture2DRectProj")
-
- start_function("shadow2DRect")
- generate_sigs("", "tex", "2DRectShadow")
- end_function(fs, "shadow2DRect")
-
- start_function("shadow2DRectProj")
- generate_sigs("", "tex", "2DRectShadow", Proj)
- end_function(fs, "shadow2DRectProj")
-
- # EXT_texture_array extension
- start_function("texture1DArray")
- generate_sigs("", "tex", "1DArray")
- generate_sigs("", "txb", "1DArray")
- end_function(fs, "texture1DArray")
-
- start_function("texture1DArrayLod")
- generate_sigs("", "txl", "1DArray")
- end_function(fs, "texture1DArrayLod")
-
- start_function("texture2DArray")
- generate_sigs("", "tex", "2DArray")
- generate_sigs("", "txb", "2DArray")
- end_function(fs, "texture2DArray")
-
- start_function("texture2DArrayLod")
- generate_sigs("", "txl", "2DArray")
- end_function(fs, "texture2DArrayLod")
-
- start_function("shadow1DArray")
- generate_sigs("", "tex", "1DArrayShadow")
- generate_sigs("", "txb", "1DArrayShadow")
- end_function(fs, "shadow1DArray")
-
- start_function("shadow1DArrayLod")
- generate_sigs("", "txl", "1DArrayShadow")
- end_function(fs, "shadow1DArrayLod")
-
- start_function("shadow2DArray")
- generate_sigs("", "tex", "2DArrayShadow")
- end_function(fs, "shadow2DArray")
-
- # ARB_shader_texture_lod extension
- start_function("texture1DGradARB")
- generate_fiu_sigs("txd", "1D")
- end_function(fs, "texture1DGradARB")
-
- start_function("texture2DGradARB")
- generate_fiu_sigs("txd", "2D")
- end_function(fs, "texture2DGradARB")
-
- start_function("texture3DGradARB")
- generate_fiu_sigs("txd", "3D")
- end_function(fs, "texture3DGradARB")
-
- start_function("textureCubeGradARB")
- generate_fiu_sigs("txd", "Cube")
- end_function(fs, "textureCubeGradARB")
-
- start_function("texture1DProjGradARB")
- generate_fiu_sigs("txd", "1D", True)
- generate_fiu_sigs("txd", "1D", True, 2)
- end_function(fs, "texture1DProjGradARB")
-
- start_function("texture2DProjGradARB")
- generate_fiu_sigs("txd", "2D", True)
- generate_fiu_sigs("txd", "2D", True, 1)
- end_function(fs, "texture2DProjGradARB")
-
- start_function("texture3DProjGradARB")
- generate_fiu_sigs("txd", "3D", True)
- end_function(fs, "texture3DProjGradARB")
-
- start_function("shadow1DGradARB")
- generate_sigs("", "txd", "1DShadow", False, 1)
- end_function(fs, "shadow1DGradARB")
-
- start_function("shadow1DProjGradARB")
- generate_sigs("", "txd", "1DShadow", True, 1)
- end_function(fs, "shadow1DProjGradARB")
-
- start_function("shadow2DGradARB")
- generate_sigs("", "txd", "2DShadow", False)
- end_function(fs, "shadow2DGradARB")
-
- start_function("shadow2DProjGradARB")
- generate_sigs("", "txd", "2DShadow", True)
- end_function(fs, "shadow2DProjGradARB")
-
- start_function("texture2DRectGradARB")
- generate_sigs("", "txd", "2DRect")
- end_function(fs, "texture2DRectGradARB")
-
- start_function("texture2DRectProjGradARB")
- generate_sigs("", "txd", "2DRect", True)
- generate_sigs("", "txd", "2DRect", True, 1)
- end_function(fs, "texture2DRectProjGradARB")
-
- start_function("shadow2DRectGradARB")
- generate_sigs("", "txd", "2DRectShadow", False)
- end_function(fs, "shadow2DRectGradARB")
-
- start_function("shadow2DRectProjGradARB")
- generate_sigs("", "txd", "2DRectShadow", True)
- end_function(fs, "shadow2DRectProjGradARB")
-
- # Deprecated (110/120 style) functions with silly names:
- start_function("texture1D")
- generate_sigs("", "tex", "1D")
- generate_sigs("", "txb", "1D")
- end_function(fs, "texture1D")
-
- start_function("texture1DLod")
- generate_sigs("", "txl", "1D")
- end_function(fs, "texture1DLod")
-
- start_function("texture1DProj")
- generate_sigs("", "tex", "1D", Proj)
- generate_sigs("", "tex", "1D", Proj, 2)
- generate_sigs("", "txb", "1D", Proj)
- generate_sigs("", "txb", "1D", Proj, 2)
- end_function(fs, "texture1DProj")
-
- start_function("texture1DProjLod")
- generate_sigs("", "txl", "1D", Proj)
- generate_sigs("", "txl", "1D", Proj, 2)
- end_function(fs, "texture1DProjLod")
-
- start_function("texture2D")
- generate_sigs("", "tex", "2D")
- generate_sigs("", "txb", "2D")
- # OES_EGL_image_external
- generate_sigs("", "tex", "ExternalOES")
- end_function(fs, "texture2D")
-
- start_function("texture2DLod")
- generate_sigs("", "txl", "2D")
- end_function(fs, "texture2DLod")
-
- start_function("texture2DProj")
- generate_sigs("", "tex", "2D", Proj)
- generate_sigs("", "tex", "2D", Proj, 1)
- generate_sigs("", "txb", "2D", Proj)
- generate_sigs("", "txb", "2D", Proj, 1)
- # OES_EGL_image_external
- generate_sigs("", "tex", "ExternalOES", Proj)
- generate_sigs("", "tex", "ExternalOES", Proj, 1)
- end_function(fs, "texture2DProj")
-
- start_function("texture2DProjLod")
- generate_sigs("", "txl", "2D", Proj)
- generate_sigs("", "txl", "2D", Proj, 1)
- end_function(fs, "texture2DProjLod")
-
- start_function("texture3D")
- generate_sigs("", "tex", "3D")
- generate_sigs("", "txb", "3D")
- end_function(fs, "texture3D")
-
- start_function("texture3DLod")
- generate_sigs("", "txl", "3D")
- end_function(fs, "texture3DLod")
-
- start_function("texture3DProj")
- generate_sigs("", "tex", "3D", Proj)
- generate_sigs("", "txb", "3D", Proj)
- end_function(fs, "texture3DProj")
-
- start_function("texture3DProjLod")
- generate_sigs("", "txl", "3D", Proj)
- end_function(fs, "texture3DProjLod")
-
- start_function("textureCube")
- generate_sigs("", "tex", "Cube")
- generate_sigs("", "txb", "Cube")
- end_function(fs, "textureCube")
-
- start_function("textureCubeLod")
- generate_sigs("", "txl", "Cube")
- end_function(fs, "textureCubeLod")
-
- start_function("shadow1D")
- generate_sigs("", "tex", "1DShadow", False, 1)
- generate_sigs("", "txb", "1DShadow", False, 1)
- end_function(fs, "shadow1D")
-
- start_function("shadow1DLod")
- generate_sigs("", "txl", "1DShadow", False, 1)
- end_function(fs, "shadow1DLod")
-
- start_function("shadow1DProj")
- generate_sigs("", "tex", "1DShadow", Proj, 1)
- generate_sigs("", "txb", "1DShadow", Proj, 1)
- end_function(fs, "shadow1DProj")
-
- start_function("shadow1DProjLod")
- generate_sigs("", "txl", "1DShadow", Proj, 1)
- end_function(fs, "shadow1DProjLod")
-
- start_function("shadow2D")
- generate_sigs("", "tex", "2DShadow")
- generate_sigs("", "txb", "2DShadow")
- end_function(fs, "shadow2D")
-
- start_function("shadow2DLod")
- generate_sigs("", "txl", "2DShadow")
- end_function(fs, "shadow2DLod")
-
- start_function("shadow2DProj")
- generate_sigs("", "tex", "2DShadow", Proj)
- generate_sigs("", "txb", "2DShadow", Proj)
- end_function(fs, "shadow2DProj")
-
- start_function("shadow2DProjLod")
- generate_sigs("", "txl", "2DShadow", Proj)
- end_function(fs, "shadow2DProjLod")
-
- start_function("textureQueryLOD")
- generate_fiu_sigs("lod", "1D")
- generate_fiu_sigs("lod", "2D")
- generate_fiu_sigs("lod", "3D")
- generate_fiu_sigs("lod", "Cube")
- generate_fiu_sigs("lod", "1DArray")
- generate_fiu_sigs("lod", "2DArray")
- generate_fiu_sigs("lod", "CubeArray")
- generate_sigs("", "lod", "1DShadow")
- generate_sigs("", "lod", "2DShadow")
- generate_sigs("", "lod", "CubeShadow")
- generate_sigs("", "lod", "1DArrayShadow")
- generate_sigs("", "lod", "2DArrayShadow")
- generate_sigs("", "lod", "CubeArrayShadow")
- end_function(fs, "textureQueryLOD")
-
- sys.stdout = sys.__stdout__
- return fs
-
-# If you actually run this script, it'll print out all the functions.
-if __name__ == "__main__":
- fs = {}
- generate_texture_functions(fs);
- for k, v in fs.iteritems():
- print v
--
1.8.3.4
More information about the mesa-dev
mailing list