Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								8a8f0c925c
								
							
								
							
						 | 
						
							
							
								
								Use BSR instruction to implement fixnum-log2 intrinsic
							
							
							
							
							
						 | 
						
							2008-12-06 15:31:17 -06:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								a56d480aa6
								
							
								
							
						 | 
						
							
							
								
								Various optimizations leading to a 10% speedup on compiling empty EBNF parser:
							
							
							
							
							
							
							
							- open-code getenv primitive
- inline tuple predicates in finalization
- faster partial dispatch
- faster built-in type predicates
- faster tuple predicates
- faster lo-tag dispatch
- compile V{ } clone and H{ } clone more efficiently
- add fixnum fast-path to =; avoid indirect branch if two fixnums not eq
- faster >alist on hashtables
							
						 | 
						
							2008-12-06 09:16:29 -06:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								e256846acd
								
							
								
							
						 | 
						
							
							
								
								Tweak string representation; high bit indicates if character has high bits in aux vector. Avoids memory access in common case. Split set-string-nth into two primitives; set-string-nth-fast is open-coded by optimizing compiler. 13% improvement on reverse-complement
							
							
							
							
							
						 | 
						
							2008-12-05 06:38:51 -06:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								e7f4563374
								
							
								
							
						 | 
						
							
							
								
								fixnum* intrinsic for x86
							
							
							
							
							
						 | 
						
							2008-11-30 07:26:49 -06:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								f44506089d
								
							
								
							
						 | 
						
							
							
								
								More work on overflow instructions: don't need temp register anymore, add -tail variants which don't need stack frame
							
							
							
							
							
						 | 
						
							2008-11-28 06:36:30 -06:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								5634becda1
								
							
								
							
						 | 
						
							
							
								
								##fixnum-add, ##fixnum-sub instructions open-code overflow check
							
							
							
							
							
						 | 
						
							2008-11-28 05:33:58 -06:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								ab689c098b
								
							
								
							
						 | 
						
							
							
								
								Clean up direct literal code and make a first attempt at PowerPC support
							
							
							
							
							
						 | 
						
							2008-11-24 08:16:14 -06:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								20f5541d35
								
							
								
							
						 | 
						
							
							
								
								Refactoring FFI for Win64
							
							
							
							
							
						 | 
						
							2008-11-17 13:34:37 -06:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								eb05dd3a12
								
							
								
							
						 | 
						
							
							
								
								Optimize a ##dispatch that is applied to the result of a ##sub-imm or ##add-imm; this eliminates an instruction from the common 1 fixnum-fast { ... } dispatch and 8 fixnum-fast { ... } dispatch code sequences appearing in generic word expansions
							
							
							
							
							
						 | 
						
							2008-11-13 04:16:08 -06:00 | 
						
					
				
					
						
							
							
								 
								unknown
							
						 | 
						
							
							
							
							
								
							
								f7fe84e563
								
							
								
							
						 | 
						
							
							
								
								Working on Win64 FFI
							
							
							
							
							
						 | 
						
							2008-11-08 21:40:47 -06:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								53cd75b06c
								
							
								
							
						 | 
						
							
							
								
								Add string-nth intrinsic
							
							
							
							
							
						 | 
						
							2008-11-06 01:11:28 -06:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								dae41147fe
								
							
								
							
						 | 
						
							
							
								
								%bignum>integer now takes a temporary register since this is useful on both x86 and ppc
							
							
							
							
							
						 | 
						
							2008-11-05 04:16:08 -06:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								59f4f25b91
								
							
								
							
						 | 
						
							
							
								
								Loop alignment: appears to be a small win for reverse-complement
							
							
							
							
							
						 | 
						
							2008-11-03 06:20:51 -06:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								db4db19cd9
								
							
								
							
						 | 
						
							
							
								
								Start working on coalescing
							
							
							
							
							
						 | 
						
							2008-10-28 02:38:37 -07:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								87e9fbb34c
								
							
								
							
						 | 
						
							
							
								
								Comparison operations
							
							
							
							
							
						 | 
						
							2008-10-21 03:21:29 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								e92f795a76
								
							
								
							
						 | 
						
							
							
								
								More work on intrinsics; memory allocation and slot access now expands correctly
							
							
							
							
							
						 | 
						
							2008-10-20 20:40:15 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								37cf7d9a9c
								
							
								
							
						 | 
						
							
							
								
								Add SSA comparison instructions, fix various problems
							
							
							
							
							
						 | 
						
							2008-10-20 05:55:20 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								f092622fac
								
							
								
							
						 | 
						
							
							
								
								CFG IR is now pure SSA
							
							
							
							
							
						 | 
						
							2008-10-20 01:56:28 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								774ecf61e9
								
							
								
							
						 | 
						
							
							
								
								Implement spilling on x86
							
							
							
							
							
						 | 
						
							2008-10-19 01:10:45 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								d8d3645d72
								
							
								
							
						 | 
						
							
							
								
								Fixing more codegen bugs
							
							
							
							
							
						 | 
						
							2008-10-13 12:49:20 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								ae3c4ae1b6
								
							
								
							
						 | 
						
							
							
								
								Fix some problems with callbacks
							
							
							
							
							
						 | 
						
							2008-10-12 23:32:14 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								3844cb62d8
								
							
								
							
						 | 
						
							
							
								
								Fix %write-barrier
							
							
							
							
							
						 | 
						
							2008-10-10 03:16:26 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								cf46a832e7
								
							
								
							
						 | 
						
							
							
								
								Debugging register allocator and inline allocation
							
							
							
							
							
						 | 
						
							2008-10-08 23:42:53 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								0e4e05d5cd
								
							
								
							
						 | 
						
							
							
								
								Debugging new codegen
							
							
							
							
							
						 | 
						
							2008-10-08 03:51:44 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								7b6d9c4c4f
								
							
								
							
						 | 
						
							
							
								
								Debugging new codegen
							
							
							
							
							
						 | 
						
							2008-10-07 20:00:38 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								e6e313eba9
								
							
								
							
						 | 
						
							
							
								
								Backend updates
							
							
							
							
							
						 | 
						
							2008-10-07 16:42:11 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								e69278b8fc
								
							
								
							
						 | 
						
							
							
								
								Merging in new codegen
							
							
							
							
							
						 | 
						
							2008-10-07 16:17:55 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								33d775890c
								
							
								
							
						 | 
						
							
							
								
								More stack frame refactoring
							
							
							
							
							
						 | 
						
							2008-10-06 00:20:00 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								c19f2257f4
								
							
								
							
						 | 
						
							
							
								
								Fix permission bits
							
							
							
							
							
						 | 
						
							2008-10-02 08:34:49 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								722cacddb4
								
							
								
							
						 | 
						
							
							
								
								Fixing some problems with returning structs by value in x86.64 FFI
							
							
							
							
							
						 | 
						
							2008-09-13 20:28:13 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								44f53de164
								
							
								
							
						 | 
						
							
							
								
								Move make to its own vocabulary, remove fry _ feature
							
							
							
							
							
						 | 
						
							2008-09-10 20:07:00 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								a3d1379b8c
								
							
								
							
						 | 
						
							
							
								
								Fix bug with large structs passed by value on x86.64
							
							
							
							
							
						 | 
						
							2008-09-09 03:10:43 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								86f11713e3
								
							
								
							
						 | 
						
							
							
								
								Fixing some more bugs
							
							
							
							
							
						 | 
						
							2008-08-22 03:12:15 -05:00 | 
						
					
				
					
						
							
							
								 
								Slava Pestov
							
						 | 
						
							
							
							
							
								
							
								d66f887736
								
							
								
							
						 | 
						
							
							
								
								Create basis vocab root
							
							
							
							
							
						 | 
						
							2008-07-28 22:03:13 -05:00 |