46e0426795 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.stack-frame: fix tests.  
							
							
							
						 
						
							2014-12-12 17:14:39 -08:00  
				
					
						
							
							
								 
						
							
							
								1911b183a0 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.build-stack-frame: fix tests.  
							
							
							
						 
						
							2014-12-12 15:22:22 -08:00  
				
					
						
							
							
								 
						
							
							
								8f4c4ea2e1 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.build-stack-frame: some cleanup.  
							
							
							
						 
						
							2014-12-12 11:59:23 -08:00  
				
					
						
							
							
								 
						
							
							
								c3a4bdcf68 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.linear-scan.resolve: use if-empty.  
							
							
							
						 
						
							2014-12-11 14:00:50 -08:00  
				
					
						
							
							
								 
						
							
							
								068ddd6c7b 
								
							
								 
							
						 
						
							
							
								
								compiler: cleanup cfg passes to have stack effect ( cfg -- )  
							
							
							
						 
						
							2014-12-11 12:48:43 -08:00  
				
					
						
							
							
								 
						
							
							
								33500db79f 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: help-lint and test case fixes  
							
							
							
						 
						
							2014-12-11 15:02:40 +01:00  
				
					
						
							
							
								 
						
							
							
								08e9f18c3b 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: fix for test cases that broke due to stack effect changes  
							
							
							
						 
						
							2014-12-11 14:30:47 +01:00  
				
					
						
							
							
								 
						
							
							
								bfc0ef815b 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dominance: fix for  #1227 , the dom children needs to be sorted to ensure that the same instruction sequence is generated every time  
							
							
							
						 
						
							2014-12-11 14:30:47 +01:00  
				
					
						
							
							
								 
						
							
							
								628c87c5b1 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.utilities: adding connect-bbs and make-edges  
							
							
							
						 
						
							2014-12-11 14:30:47 +01:00  
				
					
						
							
							
								 
						
							
							
								00e2d9f116 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dominance: some more docs  
							
							
							
						 
						
							2014-12-11 14:30:47 +01:00  
				
					
						
							
							
								 
						
							
							
								c85175c10c 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: new utility word apply-passes to improve the looks of long cleave's where each quotation only contains one word  
							
							
							
						 
						
							2014-12-11 14:30:47 +01:00  
				
					
						
							
							
								 
						
							
							
								e371327ec4 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.ssa.construction.tests: fix tc broken by previous commit  
							
							
							
						 
						
							2014-12-11 14:30:47 +01:00  
				
					
						
							
							
								 
						
							
							
								befbe0bb59 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dominance: changed stack effect compute-dominance ( cfg -- cfg' ) to ( cfg -- )  
							
							
							
						 
						
							2014-12-11 14:30:47 +01:00  
				
					
						
							
							
								 
						
							
							
								e5866dfa80 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: changed stack effect of needs-predecessors from ( cfg -- cfg') to ( cfg -- )  
							
							
							
						 
						
							2014-12-11 14:30:47 +01:00  
				
					
						
							
							
								 
						
							
							
								76cb665a8d 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dominance: change needs-dominance effect from ( cfg -- cfg') to ( cfg -- )  
							
							
							
						 
						
							2014-12-11 14:30:46 +01:00  
				
					
						
							
							
								 
						
							
							
								054982f24a 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: docs for compiler.cfg.dominance and compiler.cfg.ssa.construction  
							
							
							
						 
						
							2014-12-11 14:30:46 +01:00  
				
					
						
							
							
								 
						
							
							
								53b7f82368 
								
							
								 
							
						 
						
							
							
								
								Docs: more compiler docs  
							
							
							
						 
						
							2014-12-11 14:30:46 +01:00  
				
					
						
							
							
								 
						
							
							
								5fe9ce4235 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: fix stack effect of cfg-changed and predecessors changed to ( cfg -- )  
							
							
							
						 
						
							2014-12-11 14:30:46 +01:00  
				
					
						
							
							
								 
						
							
							
								a0d4e9b417 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.stacks.uninitialized: this compiler pass isn't used anymore -- let's get rid of it  
							
							
							
						 
						
							2014-12-11 14:30:46 +01:00  
				
					
						
							
							
								 
						
							
							
								8744d908b6 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: fix stack effect of compiler passes in optimize-cfg  
							
							... 
							
							
							
							since they all modify the cfg in place, it is better if their stack
effect is ( cfg -- ) instead of ( cfg -- cfg' ) 
							
						 
						
							2014-12-11 14:30:45 +01:00  
				
					
						
							
							
								 
						
							
							
								971a157369 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.instructions: ##alien-assembly should be in the alien-call-insn union but not gc-map-insn  
							
							
							
						 
						
							2014-12-08 18:13:46 -08:00  
				
					
						
							
							
								 
						
							
							
								52d3affeb8 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: the ##alien-assembly instruction does not use a gc-map  
							
							
							
						 
						
							2014-12-08 18:13:46 -08:00  
				
					
						
							
							
								 
						
							
							
								ad9d44aa2b 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.linear-scan.allocation.state: simplify init-unhandled.  
							
							
							
						 
						
							2014-12-01 22:18:15 -08:00  
				
					
						
							
							
								 
						
							
							
								c0d6fdedd1 
								
							
								 
							
						 
						
							
							
								
								classes.tuple: use slots>tuple when possible.  
							
							
							
						 
						
							2014-11-29 16:54:50 -08:00  
				
					
						
							
							
								 
						
							
							
								cd8b686639 
								
							
								 
							
						 
						
							
							
								
								compiler.tests.alien: Test demonstrates padding bytes breaking struct= on linux32. Disable for now.  
							
							
							
						 
						
							2014-11-24 08:20:28 -08:00  
				
					
						
							
							
								 
						
							
							
								20add9544a 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: cfg>insns has to go in linearization because of bootstrap circularity. Fix usings.  
							
							
							
						 
						
							2014-11-23 22:53:27 -08:00  
				
					
						
							
							
								 
						
							
							
								4c07d04417 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.*: getting an instruction sequence from a cfg is used in a few tests so let's make a word for it  
							
							
							
						 
						
							2014-11-24 06:25:34 +01:00  
				
					
						
							
							
								 
						
							
							
								22c512788b 
								
							
								 
							
						 
						
							
							
								
								compiler.codegen.gc-maps.tests: fix tests for win 64  
							
							
							
						 
						
							2014-11-24 04:20:34 +01:00  
				
					
						
							
							
								 
						
							
							
								9b7a873f6d 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.build-stack-frame.tests: improved fix for the test case  
							
							
							
						 
						
							2014-11-24 03:42:27 +01:00  
				
					
						
							
							
								 
						
							
							
								d40faa3bdc 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg: Add vocabulary for words defined just to test compiler.cfg.  
							
							
							
						 
						
							2014-11-23 01:06:46 -08:00  
				
					
						
							
							
								 
						
							
							
								3b3103b545 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.scheduling: Fix V{ } -> { } unit test.  
							
							
							
						 
						
							2014-11-22 17:43:27 -08:00  
				
					
						
							
							
								 
						
							
							
								964ae127a2 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dependence: docs  
							
							
							
						 
						
							2014-11-22 17:31:40 -08:00  
				
					
						
							
							
								 
						
							
							
								aca14563b0 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dependence/scheduling: fix(?) for  #1187 , just avoid shuffling ##peek...  
							
							
							
						 
						
							2014-11-22 17:31:40 -08:00  
				
					
						
							
							
								 
						
							
							
								9d0379b9ba 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dependence: if node subclasses identity-tuple it doesn't need the number slot  
							
							
							
						 
						
							2014-11-22 17:31:40 -08:00  
				
					
						
							
							
								 
						
							
							
								eb9ca1c6fe 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dependence: node class doesn't need parent attribute, that's nice  
							
							
							
						 
						
							2014-11-22 17:31:40 -08:00  
				
					
						
							
							
								 
						
							
							
								0feece123c 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dependence/scheduling.tests: new tests, some that doesnt work yet  
							
							
							
						 
						
							2014-11-22 17:31:40 -08:00  
				
					
						
							
							
								 
						
							
							
								8347f43f84 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dependence/scheduling: refactoring to get rid of node's follows>>  
							
							
							
						 
						
							2014-11-22 17:31:40 -08:00  
				
					
						
							
							
								 
						
							
							
								645a70f1d4 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.scheduling: refactoring to get rid of the roots dynamic variable  
							
							
							
						 
						
							2014-11-22 17:31:39 -08:00  
				
					
						
							
							
								 
						
							
							
								a96fff60af 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dependence: keys-for ?first is not deterministic, use tiebreak-parents to get predictable ordering  
							
							
							
						 
						
							2014-11-22 17:31:39 -08:00  
				
					
						
							
							
								 
						
							
							
								7ebceb50e5 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dependence/scheduling: select-parent and roots moved to scheduling  
							
							... 
							
							
							
							the roots stuff is only used by compiler.cfg.scheduling, so it's more
simple to have it there than in compiler.cfg.dependence 
							
						 
						
							2014-11-22 17:31:39 -08:00  
				
					
						
							
							
								 
						
							
							
								586c47e5ab 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dependence/scheduling: more readable version of the select word  
							
							
							
						 
						
							2014-11-22 17:31:39 -08:00  
				
					
						
							
							
								 
						
							
							
								b5754d32ef 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dependence: moved tree verification code to .tests  
							
							... 
							
							
							
							Since verify-trees just checked that make-trees worked correctly, it's
better to have that code in the test vocab instead of slowing down
every compile by running it 
							
						 
						
							2014-11-22 17:31:39 -08:00  
				
					
						
							
							
								 
						
							
							
								2ea1a999a4 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dependence.tests: unit tests for the dependence vocab  
							
							
							
						 
						
							2014-11-22 17:31:39 -08:00  
				
					
						
							
							
								 
						
							
							
								3f3cc0eb8a 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dependence: now the nodes are on the stack instead of being saved in a dynamic variable (fp++)  
							
							
							
						 
						
							2014-11-22 17:31:39 -08:00  
				
					
						
							
							
								 
						
							
							
								2cfd55b864 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dependence/scheduling: refactoring, trying to get rid of the ugly usage of nodes dynamic variable  
							
							
							
						 
						
							2014-11-22 17:31:39 -08:00  
				
					
						
							
							
								 
						
							
							
								0a7726b66d 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.dependence: more docs for the vocab  
							
							
							
						 
						
							2014-11-22 17:31:38 -08:00  
				
					
						
							
							
								 
						
							
							
								a1b20e451b 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.scheduling: split-insns returns a 3-tuple instead of 3 items on the stack  
							
							
							
						 
						
							2014-11-22 17:31:38 -08:00  
				
					
						
							
							
								 
						
							
							
								c777cb954a 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.scheduling: refactor to use split-insns and compiler.cfg.linear-scan.numbering + tests  
							
							
							
						 
						
							2014-11-22 17:31:38 -08:00  
				
					
						
							
							
								 
						
							
							
								96396cb3ad 
								
							
								 
							
						 
						
							
							
								
								compiler.*: use block>cfg and insns>block in many tests instead of wordier code  
							
							
							
						 
						
							2014-11-22 17:31:38 -08:00  
				
					
						
							
							
								 
						
							
							
								c8a022423e 
								
							
								 
							
						 
						
							
							
								
								compiler.cfg.utilities: move and rename the helper words block>cfg, insns>block and insns>cfg, they are useful to many testing vocabs  
							
							
							
						 
						
							2014-11-22 17:31:38 -08:00