glslang-zig/glslang/MachineIndependent
Chow 44e842cd9c Add constant expression with mod
Purpose:
glsl spec allows to define array with the length of the result of  constant expression, the arithmetic operation of "mod(float (7.1), float (4.0))" should be generate the array length at the shader compile time,

but glslang didn't support mod operation for the constant expression in previous implementation;

An example is as following:

###########
#version 460
flat out highp int vtx_out_out0;
void main (void)
{
     float array[int(mod(float (7.1), float (4.0)))];
     vtx_out_out0 =  array.length();
}
###########
2019-12-23 11:29:52 +08:00
..
preprocessor Web: Turn off includes, independent preprocessing path, fine tune all. 2019-08-20 23:21:56 -06:00
attribute.cpp Web: Turn off bracket-style attributes, reflection, and IO mapping. 2019-08-20 23:21:55 -06:00
attribute.h HLSL: Fix #1912: add attribute syntax for nonreadable/nonwritable 2019-09-29 19:16:25 -06:00
Constant.cpp Add constant expression with mod 2019-12-23 11:29:52 +08:00
gl_types.h Web: Generalize _EXTENSIONS* in SPIR-V back-end. 2019-08-20 23:21:55 -06:00
glslang.m4 Web: Add SSBOs and a few other missing compute features. 2019-10-23 00:25:39 -06:00
glslang.y Web: Reclaim more space and make all work w/wo GLSLANG_WEB. 2019-10-23 03:15:55 -06:00
glslang_tab.cpp Web: Reclaim more space and make all work w/wo GLSLANG_WEB. 2019-10-23 03:15:55 -06:00
glslang_tab.cpp.h Web: Reclaim more space and make all work w/wo GLSLANG_WEB. 2019-10-23 03:15:55 -06:00
InfoSink.cpp Non-functional: White space after "//", mostly for copyrights. 2017-01-06 12:34:14 -07:00
Initialize.cpp Fix #1993: Fully exclude ftransform() from SPIR-V semantics. 2019-12-09 01:35:14 -07:00
Initialize.h Comment out params instead of removing 2019-09-11 08:59:47 -04:00
Intermediate.cpp HLSL: Fix #1960: fmod() was not converting int args to float. 2019-11-12 05:32:51 -07:00
intermOut.cpp INTEL_shader_integer_functions2: Add compiler front-end support 2019-12-03 11:06:34 -08:00
IntermTraverse.cpp Non-functional: White space after "//", mostly for copyrights. 2017-01-06 12:34:14 -07:00
iomapper.cpp code refine 2019-09-02 17:07:39 +08:00
iomapper.h Remove unnecessary semi-colons and add warning about them 2019-10-11 11:25:04 -04:00
limits.cpp Web: Turn off includes, independent preprocessing path, fine tune all. 2019-08-20 23:21:56 -06:00
linkValidate.cpp Fix #1981 2019-11-27 23:37:16 -05:00
LiveTraverser.h [lumped builds] Add include guards (#pragma once) to header files that did not have any. 2017-05-10 16:58:38 +03:00
localintermediate.h HLSL: Fix #1976: Don't let ENABLE_HLSL change struct/class layout. 2019-11-15 05:01:27 -07:00
parseConst.cpp HLSL: Allow empty struct initializers 2017-04-27 18:22:52 -06:00
ParseContextBase.cpp Web: Turn off includes, independent preprocessing path, fine tune all. 2019-08-20 23:21:56 -06:00
ParseHelper.cpp Fix #1983: __ is okay starting with ES 300, rather than 310. 2019-11-23 01:29:02 -07:00
ParseHelper.h Remove unnecessary semi-colons and add warning about them 2019-10-11 11:25:04 -04:00
parseVersions.h HLSL: Fix #1912: add attribute syntax for overriding image formats. 2019-09-28 11:39:15 -06:00
pch.cpp Use precompiled headers for some glslang projects 2018-10-31 15:38:08 -05:00
pch.h Use precompiled headers for some glslang projects 2018-10-31 15:38:08 -05:00
PoolAlloc.cpp Memory: Mak full explicit destructor functionality, techincally correctly. 2017-11-21 14:32:39 -07:00
propagateNoContraction.cpp Web: Generalize _EXTENSIONS* in SPIR-V back-end. 2019-08-20 23:21:55 -06:00
propagateNoContraction.h [lumped builds] Add include guards (#pragma once) to header files that did not have any. 2017-05-10 16:58:38 +03:00
reflection.cpp Fix warning: size_t->int implicit cast 2019-11-03 01:34:54 +03:00
reflection.h Reflection will crash when the VS input symbol defines the same name with FS output symbol 2019-09-18 14:04:29 +08:00
RemoveTree.cpp Non-functional: White space after "//", mostly for copyrights. 2017-01-06 12:34:14 -07:00
RemoveTree.h [lumped builds] Add include guards (#pragma once) to header files that did not have any. 2017-05-10 16:58:38 +03:00
Scan.cpp Fix: #2014: Don't do "extension-on && version >= ..." keyword checks. 2019-12-09 04:34:09 -07:00
Scan.h SPV: Fix #1575, fix #1593: Support HLSL #line 2018-12-07 17:36:33 -07:00
ScanContext.h GL_EXT_buffer_reference 2019-01-07 12:36:13 -06:00
ShaderLang.cpp Web: Reclaim more space and make all work w/wo GLSLANG_WEB. 2019-10-23 03:15:55 -06:00
SymbolTable.cpp Fix #2020: PR #1977 broke HLSL member consistency, this finishes it... 2019-12-09 23:48:50 -07:00
SymbolTable.h HLSL: Fix #1912: add attribute syntax for overriding image formats. 2019-09-28 11:39:15 -06:00
Versions.cpp INTEL_shader_integer_functions2: Add basic extension tracking 2019-12-03 10:54:22 -08:00
Versions.h INTEL_shader_integer_functions2: Add basic extension tracking 2019-12-03 10:54:22 -08:00