platform/upstream/glslang.git
8 years agoDon't remove SPIR-V blocks before codegen.
Dejan Mircevski [Wed, 20 Jan 2016 02:13:38 +0000 (21:13 -0500)]
Don't remove SPIR-V blocks before codegen.

A removed block releases its instructions, so Module::idToInstruction
suddenly contains dangling references.  The original motivation for
block removal was to skip some unreachable blocks, but that's already
achieved by InReadableOrder.cpp.

Also updated stale comments.

8 years agoMerge pull request #127 from dekimir/loopgen
John Kessenich [Tue, 19 Jan 2016 22:32:07 +0000 (15:32 -0700)]
Merge pull request #127 from dekimir/loopgen

SPV: Rework loop code generation to match SPIR-V 1.0.

8 years agoMove continue-block to after all branches.
Dejan Mircevski [Tue, 19 Jan 2016 21:56:45 +0000 (16:56 -0500)]
Move continue-block to after all branches.

8 years agoMerge branch 'topo' into loopgen-after-readable-order
Dejan Mircevski [Tue, 19 Jan 2016 21:47:41 +0000 (16:47 -0500)]
Merge branch 'topo' into loopgen-after-readable-order

8 years agoMerge pull request #135 from dekimir/topo
John Kessenich [Tue, 19 Jan 2016 21:22:53 +0000 (14:22 -0700)]
Merge pull request #135 from dekimir/topo

SPV: Code-generate SPIR-V blocks in a more readable order

8 years agoReformat to better match existing style.
Dejan Mircevski [Tue, 19 Jan 2016 19:52:31 +0000 (14:52 -0500)]
Reformat to better match existing style.

8 years ago(C) Google
Dejan Mircevski [Tue, 19 Jan 2016 19:50:12 +0000 (14:50 -0500)]
(C) Google

8 years agoExplicitly initialize Instruction::block.
Dejan Mircevski [Tue, 19 Jan 2016 19:08:32 +0000 (14:08 -0500)]
Explicitly initialize Instruction::block.

8 years agoRemove a redundant check before visit(succ).
Dejan Mircevski [Tue, 19 Jan 2016 16:49:37 +0000 (11:49 -0500)]
Remove a redundant check before visit(succ).

8 years agoAdd copyright, remove unused #includes.
Dejan Mircevski [Tue, 19 Jan 2016 16:44:53 +0000 (11:44 -0500)]
Add copyright, remove unused #includes.

8 years agoMake Instruction::getBlock() const.
Dejan Mircevski [Tue, 19 Jan 2016 16:31:55 +0000 (11:31 -0500)]
Make Instruction::getBlock() const.

8 years agoFix merge issues.
Dejan Mircevski [Tue, 19 Jan 2016 15:17:33 +0000 (10:17 -0500)]
Fix merge issues.

8 years agoRework inReadableOrder() as a recursive descent.
Dejan Mircevski [Tue, 19 Jan 2016 15:01:27 +0000 (10:01 -0500)]
Rework inReadableOrder() as a recursive descent.

Add a test for unreachable merge block.

Update test results with the new order: mainly delaying merge blocks and
removing unreachable ones.

8 years agoFix spv.branch-return.vert.
Dejan Mircevski [Mon, 18 Jan 2016 22:33:25 +0000 (17:33 -0500)]
Fix spv.branch-return.vert.

8 years agoAdd spv.branch-return.vert and fix inReadableOrder().
Dejan Mircevski [Mon, 18 Jan 2016 22:12:59 +0000 (17:12 -0500)]
Add spv.branch-return.vert and fix inReadableOrder().

8 years agoImplement inReadableOrder().
Dejan Mircevski [Mon, 18 Jan 2016 21:18:37 +0000 (16:18 -0500)]
Implement inReadableOrder().

8 years agoCall addPredecessor() on OpSwitch blocks.
Dejan Mircevski [Mon, 18 Jan 2016 21:18:01 +0000 (16:18 -0500)]
Call addPredecessor() on OpSwitch blocks.

8 years agoAdd Block::successors.
Dejan Mircevski [Mon, 18 Jan 2016 04:27:45 +0000 (23:27 -0500)]
Add Block::successors.

8 years agoMerge branch 'master' of github.com:KhronosGroup/glslang
John Kessenich [Mon, 18 Jan 2016 18:11:46 +0000 (11:11 -0700)]
Merge branch 'master' of github.com:KhronosGroup/glslang

8 years agoMemory: remove a part of the last merge request that causes crashes in multi-threaded...
John Kessenich [Mon, 18 Jan 2016 18:10:40 +0000 (11:10 -0700)]
Memory: remove a part of the last merge request that causes crashes in multi-threaded mode.

8 years agoMerge pull request #134 from AWoloszyn/glslangvalidator-memory
John Kessenich [Mon, 18 Jan 2016 18:10:18 +0000 (11:10 -0700)]
Merge pull request #134 from AWoloszyn/glslangvalidator-memory

Freed up some command line memory (not used programmatically).

8 years agoMerge pull request #133 from AWoloszyn/spirv-memory
John Kessenich [Mon, 18 Jan 2016 17:48:07 +0000 (10:48 -0700)]
Merge pull request #133 from AWoloszyn/spirv-memory

Free memory associated with SPIR-V generation and the pragmaTable.

8 years agoFree memory associated with SPIR-V generation.
Andrew Woloszyn [Mon, 18 Jan 2016 14:23:56 +0000 (09:23 -0500)]
Free memory associated with SPIR-V generation.

8 years agoFreed up some memory when no longer needed in glslangValidator.
Andrew Woloszyn [Mon, 18 Jan 2016 14:26:25 +0000 (09:26 -0500)]
Freed up some memory when no longer needed in glslangValidator.

8 years agoDoubles: Add all the missing built-in double-based prototypes.
John Kessenich [Sun, 17 Jan 2016 03:37:43 +0000 (20:37 -0700)]
Doubles: Add all the missing built-in double-based prototypes.

8 years agoMemory/Perf: For link-mode, isolate file I/O so API can be looped over.
John Kessenich [Sat, 16 Jan 2016 22:30:03 +0000 (15:30 -0700)]
Memory/Perf: For link-mode, isolate file I/O so API can be looped over.

Separating file I/O from compile/link lets the compile/link be done
repeatedly in a loop for testing and measuring of performance and
memory footprint, including seeing memory growth over time for
functional-level memory-leak testing.

While the older compile-only mode already had this functionality,
and typically showed no memory leaks, SPIR-V uses the link path,
has pending "TODO" for memory freeing, and this shows several
kilobytes of leaking per compile-link. Most likely, pending
merge request 131 will address much of this.

8 years agoMerge pull request #121 from amdrexu/feature
John Kessenich [Fri, 15 Jan 2016 07:52:18 +0000 (00:52 -0700)]
Merge pull request #121 from amdrexu/feature

Parser & SPV: Implement two extensions regarding GLSL sparse texture.

8 years agoMerge pull request #129 from AWoloszyn/fix-noop-strcpy
John Kessenich [Thu, 14 Jan 2016 02:12:50 +0000 (19:12 -0700)]
Merge pull request #129 from AWoloszyn/fix-noop-strcpy

Preprocessor: Removed strcpy that copied a value to itself.

8 years agoMerge pull request #126 from mgadams/win32_warnings
John Kessenich [Thu, 14 Jan 2016 02:11:05 +0000 (19:11 -0700)]
Merge pull request #126 from mgadams/win32_warnings

Fix several build warnings/error encountered with VS2013

8 years agoTests: Update to match previous pull request.
John Kessenich [Thu, 14 Jan 2016 02:04:19 +0000 (19:04 -0700)]
Tests:  Update to match previous pull request.

8 years agoMerge pull request #130 from jekstrand/fix-std140-struct
John Kessenich [Thu, 14 Jan 2016 01:59:31 +0000 (18:59 -0700)]
Merge pull request #130 from jekstrand/fix-std140-struct

linkValidate: Round up structure sizes to vec4 in std140

8 years agogetBaseAlignment: Use the rowMajor argument for determining matrix strides
Jason Ekstrand [Thu, 14 Jan 2016 01:14:43 +0000 (17:14 -0800)]
getBaseAlignment: Use the rowMajor argument for determining matrix strides

The argument version is passed in from above and struct handling ensures
that row-majorness gets propagated correctly from one level to the next.
If we just look at the type itself and it's embedded in a struct that's
declared row-major, we may get the wrong stride.

8 years agogetBaseAlignment: Round up structure sizes to max alignment
Jason Ekstrand [Tue, 12 Jan 2016 21:04:52 +0000 (13:04 -0800)]
getBaseAlignment: Round up structure sizes to max alignment

8 years agoRemoved strcpy that copied to itself.
Andrew Woloszyn [Tue, 12 Jan 2016 20:45:55 +0000 (15:45 -0500)]
Removed strcpy that copied to itself.

Found by running glslang with -fsanitize=address in clang.
Also fixes a potential buffer-overrun with return from lReadByte.

8 years agoMerge branch 'master' of github.com:google/glslang into loopgen
Dejan Mircevski [Mon, 11 Jan 2016 21:26:18 +0000 (16:26 -0500)]
Merge branch 'master' of github.com:google/glslang into loopgen

Change-Id: Ie8236430bb9e30a9be2e0c1573c42183c2f4d0d4

8 years agoFix back-branch target for do-while loops.
Dejan Mircevski [Mon, 11 Jan 2016 20:57:11 +0000 (15:57 -0500)]
Fix back-branch target for do-while loops.

To ensure back branches always go to a header block, create a header
block even for !testFirst loops.  Then unify common code between the
testFirst/!testFirst cases.

Generate the header-block code first, so update golden files.

Realize that certain infinite loops generate invalid SPIR-V, so put a
TODO to instead abort code generation in such cases.

Change-Id: I1e173c8f73daad186cfc666b7d72bd563ed7665d

8 years agoUpdate .out files with new loop SPIR-V.
Dejan Mircevski [Mon, 11 Jan 2016 19:48:36 +0000 (14:48 -0500)]
Update .out files with new loop SPIR-V.

Also update breakForLoop and call builder.closeLoop() in code
generation.

Remove dead code.

Change-Id: Ic8ce5b208530f8787989ef45a2efa405f1b45310

8 years agoSwitch loops stack to use LoopBlocks.
Dejan Mircevski [Mon, 11 Jan 2016 14:35:22 +0000 (09:35 -0500)]
Switch loops stack to use LoopBlocks.

Also remove dead code.

Change-Id: I2c0177d8cab48b7d6f9442715aecb7951597f3c8

8 years agoTest a for loop with no body.
Dejan Mircevski [Mon, 11 Jan 2016 04:15:08 +0000 (23:15 -0500)]
Test a for loop with no body.

Change-Id: I5b53cc008349afad94b14500506fcab4d6e64d2e

8 years agoFix unreachable-block removal.
Dejan Mircevski [Mon, 11 Jan 2016 00:37:00 +0000 (19:37 -0500)]
Fix unreachable-block removal.

Add a test for loop without a condition.

Change-Id: Idd7fc462218a84b1e745207e2975a3f2897d30a0

8 years agoFirst cut at new loop codegen.
Dejan Mircevski [Sun, 10 Jan 2016 17:15:13 +0000 (12:15 -0500)]
First cut at new loop codegen.

Change-Id: Id3bdf8b7a5606e7ce5d856ef225d5ddbe59a584b

8 years agoFix several build warnings/error encountered with VS2013
Mark Adams [Wed, 6 Jan 2016 18:41:02 +0000 (13:41 -0500)]
Fix several build warnings/error encountered with VS2013

This also fixes the newlines for spirv.hpp to be consistent with the rest of the files.

8 years agoParser & SPV: Implement two extensions regarding GLSL sparse texture.
Rex Xu [Thu, 31 Dec 2015 08:11:41 +0000 (16:11 +0800)]
Parser & SPV: Implement two extensions regarding GLSL sparse texture.

Implement extension "GL_ARB_sparse_texture2".
Implement extension "GL_ARB_sparse_texture_clamp".

8 years agoSPV: Handle type punning in createCompositeCompare().
John Kessenich [Tue, 5 Jan 2016 06:49:03 +0000 (23:49 -0700)]
SPV: Handle type punning in createCompositeCompare().

8 years agoSPV: Don't do stride decorations for arrays of arrays of blocks.
John Kessenich [Tue, 5 Jan 2016 02:22:56 +0000 (19:22 -0700)]
SPV: Don't do stride decorations for arrays of arrays of blocks.

8 years agoSPV: Handle stride decorations for arrays of arrays, and using multiple type instance...
John Kessenich [Wed, 30 Dec 2015 04:27:24 +0000 (21:27 -0700)]
SPV: Handle stride decorations for arrays of arrays, and using multiple type instances when strides are used.

8 years agoSPV: Fix array strides by explicitly computing them in the getBaseAlignment() algorithm.
John Kessenich [Wed, 30 Dec 2015 00:11:44 +0000 (17:11 -0700)]
SPV: Fix array strides by explicitly computing them in the getBaseAlignment() algorithm.

8 years agoSPV: Generalize multiple struct-type instances for interpolation/invariant qualifiers.
John Kessenich [Thu, 24 Dec 2015 17:30:13 +0000 (10:30 -0700)]
SPV: Generalize multiple struct-type instances for interpolation/invariant qualifiers.

8 years agoSemantics: Catch nested types containing 'int' with non-'flat' interpolation.
John Kessenich [Tue, 22 Dec 2015 23:39:07 +0000 (16:39 -0700)]
Semantics: Catch nested types containing 'int' with non-'flat' interpolation.

8 years agoSPV: Don't make MissingFunctionality() exit anymore.
John Kessenich [Tue, 22 Dec 2015 04:21:11 +0000 (21:21 -0700)]
SPV: Don't make MissingFunctionality() exit anymore.

8 years agoSPV: Implement composite comparisons (reductions across hierchical compare).
John Kessenich [Tue, 22 Dec 2015 03:54:09 +0000 (20:54 -0700)]
SPV: Implement composite comparisons (reductions across hierchical compare).

8 years agoSPV: Move to deterministic results for OpEntryPoint, for test stability across platforms.
John Kessenich [Mon, 21 Dec 2015 18:45:34 +0000 (11:45 -0700)]
SPV: Move to deterministic results for OpEntryPoint, for test stability across platforms.

8 years agoSPV: Make OpEntryPoint I/O list include all static uses.
John Kessenich [Mon, 21 Dec 2015 00:37:07 +0000 (17:37 -0700)]
SPV: Make OpEntryPoint I/O list include all static uses.

Before, it was only including explicit interface, sufficient for IO-Block-declared
oriented interface, but not sufficient for all modes GLSL might be used with
SPIR-V.

Two things are accomplished now:
1) each id will appear exactly once
2) the OpEntryPoint list will union static use with declarations

8 years agoSPV: recursively propagate row/col majorness through nested structures.
John Kessenich [Sun, 20 Dec 2015 18:29:16 +0000 (11:29 -0700)]
SPV: recursively propagate row/col majorness through nested structures.

This includes doing structure uniqueness modulo majorness, for shared nested structures.

8 years agoSPV: Nested layouts: Recursively send around the top-level std140 or std430 packing.
John Kessenich [Sat, 19 Dec 2015 20:57:10 +0000 (13:57 -0700)]
SPV: Nested layouts: Recursively send around the top-level std140 or std430 packing.

This also distinguishes between the same struct included in multiple parent packings.

8 years agoMerge pull request #118 from amdrexu/bugfix
John Kessenich [Sat, 19 Dec 2015 18:20:25 +0000 (11:20 -0700)]
Merge pull request #118 from amdrexu/bugfix

SPV: Fix an issue related with imageStore() for 2DMS.

8 years agoMerge pull request #120 from amdrexu/bugfix2
John Kessenich [Sat, 19 Dec 2015 18:14:32 +0000 (11:14 -0700)]
Merge pull request #120 from amdrexu/bugfix2

Parser: Correct the storage qualifier of gl_HelperInvocation.

8 years agoMerge branch 'master' of github.com:KhronosGroup/glslang
John Kessenich [Sat, 19 Dec 2015 18:10:56 +0000 (11:10 -0700)]
Merge branch 'master' of github.com:KhronosGroup/glslang

8 years agoMerge pull request #117 from amdrexu/feature
John Kessenich [Sat, 19 Dec 2015 18:08:02 +0000 (11:08 -0700)]
Merge pull request #117 from amdrexu/feature

SPV: Implement GLSL built-in bitcast functions.

8 years agoTests for PR: Fix results for 4f68b83ea1b34923a71e699125a9e867003864f6.
John Kessenich [Sat, 19 Dec 2015 18:05:44 +0000 (11:05 -0700)]
Tests for PR: Fix results for 4f68b83ea1b34923a71e699125a9e867003864f6.

8 years agoMerge pull request #119 from thothonegan/master
John Kessenich [Sat, 19 Dec 2015 18:00:49 +0000 (11:00 -0700)]
Merge pull request #119 from thothonegan/master

Display the filename if we have output, even if validating  a single file

8 years agoConstant folding: Correct result type of non-square matrix folding.
John Kessenich [Tue, 15 Dec 2015 01:21:19 +0000 (18:21 -0700)]
Constant folding: Correct result type of non-square matrix folding.

This also made the function easier to read by identifying
left and right operands more clearly.

8 years agoParser: Correct the storage qualifier of gl_HelperInvocation.
Rex Xu [Wed, 16 Dec 2015 06:41:39 +0000 (14:41 +0800)]
Parser: Correct the storage qualifier of gl_HelperInvocation.

8 years agoDisplay the filename if we have output, even if validating a single file.
Kenneth Perry [Tue, 15 Dec 2015 16:52:34 +0000 (10:52 -0600)]
Display the filename if we have output, even if validating  a single file.

8 years agoSPV: Fix an issue related with imageStore() for 2DMS.
Rex Xu [Tue, 15 Dec 2015 09:52:45 +0000 (17:52 +0800)]
SPV: Fix an issue related with imageStore() for 2DMS.

8 years agoSPV: Implement GLSL built-in bitcast functions.
Rex Xu [Tue, 15 Dec 2015 08:03:10 +0000 (16:03 +0800)]
SPV: Implement GLSL built-in bitcast functions.

8 years agoMerge pull request #116 from mgadams/scan_compile_fix
John Kessenich [Tue, 15 Dec 2015 00:47:51 +0000 (17:47 -0700)]
Merge pull request #116 from mgadams/scan_compile_fix

Fix compile warning/error due to assignment in while() loop

8 years agoFix compile warning/error due to assignment in while() loop
Mark Adams [Mon, 14 Dec 2015 15:48:04 +0000 (10:48 -0500)]
Fix compile warning/error due to assignment in while() loop

This causes build failures with -Werror=parentheses

8 years agoSPV GLSL.std.450: Add needed smear operations for min, max, clamp, mix, step, and...
John Kessenich [Sun, 13 Dec 2015 20:34:37 +0000 (13:34 -0700)]
SPV GLSL.std.450: Add needed smear operations for min, max, clamp, mix, step, and smoothstep.

8 years agoSPV texturing: Use comp. 2 as the 3rd comp. for Dref in ImageSampleProjDrefImplicitLod.
John Kessenich [Sun, 13 Dec 2015 19:23:33 +0000 (12:23 -0700)]
SPV texturing: Use comp. 2 as the 3rd comp. for Dref in ImageSampleProjDrefImplicitLod.

8 years agoFix crash: when no #version for compute shader in es mode.
John Kessenich [Sun, 13 Dec 2015 18:20:12 +0000 (11:20 -0700)]
Fix crash: when no #version for compute shader in es mode.

An extra line of error recovery code set a non-sense combination of
es version and core profile.

8 years agoSemantics: 'invocations' defaults to 1, not 0.
John Kessenich [Sun, 13 Dec 2015 17:59:17 +0000 (10:59 -0700)]
Semantics: 'invocations' defaults to 1, not 0.

'invocations' was using 0 as the "shader never set" flag and as the
default. Formalize this and explicit set to 1 and link time.

8 years agoSPV: Implement all matrix operators {+,-,*,/} for {matrix,scalar,vector}.
John Kessenich [Sat, 12 Dec 2015 19:28:14 +0000 (12:28 -0700)]
SPV: Implement all matrix operators {+,-,*,/} for {matrix,scalar,vector}.

8 years agoSemantics: Geometry stage can support max_vertices = 0.
John Kessenich [Fri, 11 Dec 2015 22:44:12 +0000 (15:44 -0700)]
Semantics: Geometry stage can support max_vertices = 0.

To do this, more generally use a named -1 as a not set value.

8 years agoSPV tests: Turn on some more tests related to currently pending issues.
John Kessenich [Fri, 11 Dec 2015 22:08:26 +0000 (15:08 -0700)]
SPV tests: Turn on some more tests related to currently pending issues.

8 years agoTests: Move to just linefeed to simply cross-platform test changes.
John Kessenich [Fri, 11 Dec 2015 01:01:54 +0000 (18:01 -0700)]
Tests: Move to just linefeed to simply cross-platform test changes.

8 years agoLinux: Fix case of test file.
John Kessenich [Thu, 10 Dec 2015 19:01:41 +0000 (12:01 -0700)]
Linux: Fix case of test file.

8 years agoSPV: Modify last merge: Have promoteScalar() generate the correct vectorType.
John Kessenich [Thu, 10 Dec 2015 02:08:42 +0000 (19:08 -0700)]
SPV: Modify last merge: Have promoteScalar() generate the correct vectorType.

8 years agoMerge pull request #115 from amdrexu/bugfix
John Kessenich [Thu, 10 Dec 2015 01:47:48 +0000 (18:47 -0700)]
Merge pull request #115 from amdrexu/bugfix

SPV: Smear should use type of the scalar to make the expected vector type when the provided vector type is incompatible with the scalar.

8 years agoMerge pull request #114 from amdrexu/bugfix2
John Kessenich [Thu, 10 Dec 2015 01:26:38 +0000 (18:26 -0700)]
Merge pull request #114 from amdrexu/bugfix2

Parser: Extension requirement of gl_PrimitiveID and gl_Layer should be checked only for ESSL instead of GLSL.

8 years agoSPV: Scalar smear operation should use type of the scalar to make the
Rex Xu [Mon, 7 Dec 2015 11:07:17 +0000 (19:07 +0800)]
SPV: Scalar smear operation should use type of the scalar to make the
expected vector type when the provided vector type is incompatible with
the scalar.

8 years agoParser: Extension requirement of gl_PrimitiveID and gl_Layer should be checked only...
Rex Xu [Mon, 7 Dec 2015 11:07:17 +0000 (19:07 +0800)]
Parser: Extension requirement of gl_PrimitiveID and gl_Layer should be checked only for ESSL instead of GLSL.

8 years agoSPV: Protect getStorageClass() with a test that the thing is pointer.
John Kessenich [Wed, 9 Dec 2015 03:48:49 +0000 (20:48 -0700)]
SPV: Protect getStorageClass() with a test that the thing is pointer.

8 years agoSPV: Implement OpImage functionality (emit before query).
John Kessenich [Wed, 9 Dec 2015 02:32:47 +0000 (19:32 -0700)]
SPV: Implement OpImage functionality (emit before query).

8 years agoMerge pull request #113 from amdrexu/feature
John Kessenich [Tue, 8 Dec 2015 21:45:01 +0000 (14:45 -0700)]
Merge pull request #113 from amdrexu/feature

SPV: Implement GLSL interpolation built-in functions.

8 years agoPlatforms: Remove support for Windows XP executables.
John Kessenich [Tue, 8 Dec 2015 21:26:26 +0000 (14:26 -0700)]
Platforms: Remove support for Windows XP executables.
Dealing with the 110 toolset seems not worth it.

8 years agoSPV: Implement GLSL interpolation built-in functions.
Rex Xu [Tue, 8 Dec 2015 09:12:09 +0000 (17:12 +0800)]
SPV: Implement GLSL interpolation built-in functions.

8 years agoMerge pull request #111 from dneto0/issue-110-frexp-fix
John Kessenich [Mon, 7 Dec 2015 22:03:16 +0000 (15:03 -0700)]
Merge pull request #111 from dneto0/issue-110-frexp-fix

Avoid read past end of operands vector for EOpFrexp

8 years agoAvoid read past end of operands vector for EOpFrexp
David Neto [Mon, 7 Dec 2015 21:17:06 +0000 (16:17 -0500)]
Avoid read past end of operands vector for EOpFrexp

When emitting SPIR-V code for frexp, avoid access
beyond the end of the operands vector.  When constructing
the OpExtInst, construct a new arguments vector instead of
modifying the existing operands vector.  In the case of OpFrexp,
well need that last operand later on to generate the store.

Fixes https://github.com/KhronosGroup/glslang/issues/110

Change-Id: Ibc380fadf5e600ac491932e9ecef7afe2d72fd7f

8 years agoBuilt-ins: fix mapping of packDouble2x32 and unpackDouble2x32.
John Kessenich [Mon, 7 Dec 2015 02:33:07 +0000 (19:33 -0700)]
Built-ins: fix mapping of packDouble2x32 and unpackDouble2x32.

8 years agoSPV: Fix extra operands when using the "struct" form of a built-in taking an 'out...
John Kessenich [Mon, 7 Dec 2015 02:29:11 +0000 (19:29 -0700)]
SPV: Fix extra operands when using the "struct" form of a built-in taking an 'out' param.

8 years agoSPV: Distinguish between std140 and std430 layouts, and correctly use alignments...
John Kessenich [Mon, 7 Dec 2015 02:17:49 +0000 (19:17 -0700)]
SPV: Distinguish between std140 and std430 layouts, and correctly use alignments as the base for strides.

8 years agoSemantics: Correct that std430 is universally disallowed with 'uniform'.
John Kessenich [Mon, 7 Dec 2015 01:10:27 +0000 (18:10 -0700)]
Semantics: Correct that std430 is universally disallowed with 'uniform'.

8 years agoMerge pull request #100 from mawww/scanner-optim
John Kessenich [Mon, 7 Dec 2015 00:12:53 +0000 (17:12 -0700)]
Merge pull request #100 from mawww/scanner-optim

Scanner optimisations

8 years agoMerge pull request #109 from xorgy/add-unary-math-check-for-null-before-dereferencing
John Kessenich [Sun, 6 Dec 2015 17:29:06 +0000 (10:29 -0700)]
Merge pull request #109 from xorgy/add-unary-math-check-for-null-before-dereferencing

In addUnaryMath, check for 'child' being null before dereferencing it.

8 years agoIn addUnaryMath, check for 'child' being null before dereferencing it.
Aaron Hamilton [Sun, 6 Dec 2015 01:10:54 +0000 (01:10 +0000)]
In addUnaryMath, check for 'child' being null before dereferencing it.

8 years agoMerge pull request #107 from xorgy/fail-init-process-on-init-thread-fail
John Kessenich [Fri, 4 Dec 2015 00:57:35 +0000 (17:57 -0700)]
Merge pull request #107 from xorgy/fail-init-process-on-init-thread-fail

Fail InitProcess() when InitThread() fails.

8 years agoMerge pull request #108 from mgadams/extensions_compile_fix
John Kessenich [Fri, 4 Dec 2015 00:56:53 +0000 (17:56 -0700)]
Merge pull request #108 from mgadams/extensions_compile_fix

Fix ordered pointer comparison build warning/error

8 years agoBuild: Fix CMake files to find osinclude.h
John Kessenich [Fri, 4 Dec 2015 00:46:03 +0000 (17:46 -0700)]
Build: Fix CMake files to find osinclude.h

8 years agoMerge pull request #105 from phaulos/generic-osinclude
John Kessenich [Fri, 4 Dec 2015 00:20:24 +0000 (17:20 -0700)]
Merge pull request #105 from phaulos/generic-osinclude

Use generic osinclude.h.