David Neto 
							
						 
					 
					
						
						
						
						
							
						
						
							c22f37cfb4 
							
						 
					 
					
						
						
							
							Generate correctly structured do-while loops.  
						
						... 
						
						
						
						The loop test is always emitted before the loop body.
For do-while loops, use a phi node to track whether we're
on the first loop iteration, and only check the loop test
on the second and subsequent iterations.
For do-while loops, the loop test branch no longer occurs
at the top of the loop, so it must get its own selection
merge instruction.
A block can't be the target of more than one merge instruction.
So when the loop test executes after the body (as in do-while in GLSL)
we need to introduce a dummy block to be the target of the selection
merge just before the loop test conditional branch.
The other arm of the branch exits the loop and hence is the
"break block" exception in the structured control flow rules. 
						
						
					 
					
						2015-07-17 17:51:51 -04:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							140f3df134 
							
						 
					 
					
						
						
							
							Final round for line endings.  
						
						
						
						
					 
					
						2015-06-26 16:58:36 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							79eaa91e6f 
							
						 
					 
					
						
						
							
							glslang portability: Resolve OSX errors, some other OS warnings.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31468  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-06-10 22:05:48 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							06e1d0b434 
							
						 
					 
					
						
						
							
							glslang -> SPV: Improvements in swizzles on access chains: Bug 14007 (wrong type), simplications, tests, support mixed swizzle with dynamic component selection.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31277  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-05-22 21:57:58 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							593a3f7f6b 
							
						 
					 
					
						
						
							
							glslang -> SPV: improved support for do-while/continue.  Contributed by David Neto (dneto@google.com).  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31205  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-05-15 18:44:16 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							93dfbe1309 
							
						 
					 
					
						
						
							
							glslang: Fix over 100 warnings from MSVC warning level 4.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31202  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-05-15 17:30:55 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							edd181944e 
							
						 
					 
					
						
						
							
							glslang and SPIR-V: Some basic turn on for doubles (previously untested but existed code).  Partly from a submission, partly addressing bug 13772.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@30794  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-04-17 21:47:07 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							b40d6ac9e7 
							
						 
					 
					
						
						
							
							glslang AST -> SPIR-V: Move to new auto-generated official headers, and for the disassembler, mirror the split done between the auto-generation header database and the specification.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@30434  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-03-30 17:41:16 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							1f77cacd69 
							
						 
					 
					
						
						
							
							glslang -> SPIR-V: Correct code generated for EmitStreamVertex and EndStreamPrimitive.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@30270  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-03-24 00:32:50 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							0df0cdeeeb 
							
						 
					 
					
						
						
							
							glslangValidator: Add straightforward SPIR-V support (non-optimizing, ~3.x functionality).  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@30032  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-03-03 17:09:43 +00:00