David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								bbb708717a 
								
							 
						 
						
							
							
								
								Add the OPTIONS clause to the mcgg grammar; add an optional pass which converts  
							
							... 
							
							
							
							sequences of PUSHes to a single STACKADJUST followed by STOREs. This should
dramatically improve code on stack-unfriendly architectures like MIPS. 
							
						 
						
							2018-09-22 11:19:00 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								a023fd8591 
								
							 
						 
						
							
							
								
								Better error reporting for unterminated strings.  
							
							
							
						 
						
							2018-09-02 18:55:44 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								a311e61360 
								
							 
						 
						
							
							
								
								Add support for preserved registers.  
							
							
							
						 
						
							2016-10-29 20:22:44 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								4db402f229 
								
							 
						 
						
							
							
								
								Add (pretty crummy) support for register aliases and static pairs of registers.  
							
							... 
							
							
							
							We should have enough functionality now for rather buggy 8-bit ints and
doubles. Rework the table and the platform.c to match. 
							
						 
						
							2016-10-21 23:31:00 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								d6984d60ac 
								
							 
						 
						
							
							
								
								Add parsing support for register aliases.  
							
							
							
						 
						
							2016-10-20 21:47:28 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								6a06ce798b 
								
							 
						 
						
							
							
								
								Add missing header that was causing builds to fail on Travis.  
							
							
							
						 
						
							2016-10-16 17:58:01 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								bb17aea73a 
								
							 
						 
						
							
							
								
								You can now mark a register as corrupting a certain register class; calls work,  
							
							... 
							
							
							
							or at least look like they work. The bad news is that the register allocator
has a rare talent for putting things in the wrong register. 
							
						 
						
							2016-10-15 01:15:08 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								cfe5312fcc 
								
							 
						 
						
							
							
								
								Predicates can now take numeric arguments. The PowerPC predicates have been  
							
							... 
							
							
							
							turned into generic ones (as they'll be useful everywhere). Node arguments for
predicates require the '%' prefix for consistency. Hex numbers are permitted. 
							
						 
						
							2016-10-09 12:32:36 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								7f901aa4d0 
								
							 
						 
						
							
							
								
								We're not using 'allocates' any more; clean up.  
							
							
							
						 
						
							2016-10-06 21:33:43 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								3aa30e50d1 
								
							 
						 
						
							
							
								
								Come up with a syntax for register constraints.  
							
							
							
						 
						
							2016-10-02 21:51:25 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								91e277e046 
								
							 
						 
						
							
							
								
								Predicates work; we now have prefers and requires clauses. Predicates must be  
							
							... 
							
							
							
							functions. Not convinced that semantic types are actually working --- there are
still problems with earlier statements leaving things in the wrong registers. 
							
						 
						
							2016-10-01 13:56:52 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								39aa672422 
								
							 
						 
						
							
							
								
								Sort of keep track of registers and register classes. Start walking the  
							
							... 
							
							
							
							generated instruction tree --- holy cow, they look like instructions! 
							
						 
						
							2016-09-25 22:17:14 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								9f78e0b36b 
								
							 
						 
						
							
							
								
								Rethink the way patterns are mapped to rules; generate emitters (probably  
							
							... 
							
							
							
							badly). 
							
						 
						
							2016-09-25 11:49:51 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								7c028bdd45 
								
							 
						 
						
							
							
								
								We now record the code fragments to be emitted by each rule.  
							
							
							
						 
						
							2016-09-25 00:21:46 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								629e0ddfc6 
								
							 
						 
						
							
							
								
								Some instruction selection is now happening.  
							
							
							
						 
						
							2016-09-24 22:46:08 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								d96ceea08a 
								
							 
						 
						
							
							
								
								Lots of exploratory new grammar for instruction definitions and string and  
							
							... 
							
							
							
							fragment emission (none of which is hooked up to anything yet). 
							
						 
						
							2016-09-24 13:08:17 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								4546dd5f22 
								
							 
						 
						
							
							
								
								Massive grammar overhaul and refactor. Hacked in support for predicates, where  
							
							... 
							
							
							
							instructions can be turned on and off based on their parameters. New lexer
using a lexer. Now quite a lot of the way towards being a real instruction
selector. 
							
						 
						
							2016-09-21 00:43:10 +02:00