Tillmann Karras 
							
						 
					 
					
						
						
							
						
						5ddd2cef6c 
					 
					
						
						
							
							zfreeze: cache vertex positions  
						
						... 
						
						
						
						Suggested by degasus. 
						
						
					 
					
						2015-06-07 12:13:00 +02:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						8db6588bb9 
					 
					
						
						
							
							XEmitter: add FMA4 instructions  
						
						
						
						
					 
					
						2015-06-02 19:19:52 +02:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						e3a6191f02 
					 
					
						
						
							
							x64Emitter: Pass some OpArg parameters by const reference  
						
						... 
						
						
						
						Considering OpArg is a struct, passing by value creates unnecessary copies. 
						
						
					 
					
						2015-05-29 01:13:29 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						810a04db58 
					 
					
						
						
							
							x64Emitter: Remove 'Gen::' namespace prefix from some parameters  
						
						... 
						
						
						
						The emitter is already within the Gen namespace, so this isn't necessary. 
						
						
					 
					
						2015-05-29 01:05:09 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						84ed196c14 
					 
					
						
						
							
							x64Emitter: Adjust position of reference and pointer indicators  
						
						... 
						
						
						
						Matches the coding style. 
						
						
					 
					
						2015-05-29 01:04:45 -04:00 
						 
				 
			
				
					
						
							
							
								Ryan Houdek 
							
						 
					 
					
						
						
							
						
						7c04c76a26 
					 
					
						
						
							
							Merge pull request  #2421  from Tilka/jit_stuff  
						
						... 
						
						
						
						Jit64: fixes + less code 
						
						
					 
					
						2015-05-25 23:08:24 -04:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						30ebb2459e 
					 
					
						
						
							
							Set copyright year to when a file was created  
						
						
						
						
					 
					
						2015-05-25 13:22:31 +02:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						cefcb0ace9 
					 
					
						
						
							
							Update license headers to GPLv2+  
						
						
						
						
					 
					
						2015-05-25 13:22:31 +02:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						6593ba7ecc 
					 
					
						
						
							
							XEmitter: add BLENDPS/BLENDPD  
						
						
						
						
					 
					
						2015-05-21 12:33:36 +02:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						ad6b522c3b 
					 
					
						
						
							
							XEmitter: fix L bit in VEX prefix  
						
						
						
						
					 
					
						2015-05-20 09:34:27 +02:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						c2c31086ae 
					 
					
						
						
							
							XEmitter: restructure WriteVEXOp wrappers  
						
						
						
						
					 
					
						2015-05-17 18:44:56 +02:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						ae8efaa6a3 
					 
					
						
						
							
							XEmitter: add VBLENDVPD and VCMPPD  
						
						
						
						
					 
					
						2015-05-17 18:42:36 +02:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						18e9241637 
					 
					
						
						
							
							XEmitter: rename WriteVex to WriteVEX  
						
						
						
						
					 
					
						2015-05-17 09:35:53 +02:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						9e3f4df733 
					 
					
						
						
							
							XEmitter: rename WriteRex to WriteREX  
						
						
						
						
					 
					
						2015-05-17 09:35:53 +02:00 
						 
				 
			
				
					
						
							
							
								comex 
							
						 
					 
					
						
						
							
						
						b3aaa46d42 
					 
					
						
						
							
							Merge pull request  #2088  from Sintendo/diecmp  
						
						... 
						
						
						
						Emit 'TEST reg, reg' for 'CMP reg, 0' automatically 
						
						
					 
					
						2015-04-23 16:34:23 -04:00 
						 
				 
			
				
					
						
							
							
								comex 
							
						 
					 
					
						
						
							
						
						ad95454d04 
					 
					
						
						
							
							Merge pull request  #2223  from phire/imm  
						
						... 
						
						
						
						Cleanup OpArg, make immediates more explicit. 
						
						
					 
					
						2015-04-23 01:53:18 -04:00 
						 
				 
			
				
					
						
							
							
								Sintendo 
							
						 
					 
					
						
						
							
						
						c19482c9a3 
					 
					
						
						
							
							Add function to emit CMP, or TEST when possible  
						
						... 
						
						
						
						Also, a spelling mistake. 
						
						
					 
					
						2015-03-22 17:22:27 +01:00 
						 
				 
			
				
					
						
							
							
								magumagu 
							
						 
					 
					
						
						
							
						
						52aeab3d0e 
					 
					
						
						
							
							Merge pull request  #2240  from lioncash/emitter  
						
						... 
						
						
						
						x64Emitter: Remove emitter pointer parameter from WriteNormalOp. 
						
						
					 
					
						2015-03-20 22:09:11 -07:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						fab7add718 
					 
					
						
						
							
							x64Emitter: Remove emitter pointer parameter from WriteNormalOp.  
						
						... 
						
						
						
						It only ever passed the equivalent of the class' this pointer. May as well get rid of it. 
						
						
					 
					
						2015-03-20 23:28:36 -04:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						9793fed742 
					 
					
						
						
							
							XEmitter: add PUNPCKLQDQ  
						
						
						
						
					 
					
						2015-03-18 12:09:06 +01:00 
						 
				 
			
				
					
						
							
							
								Scott Mansell 
							
						 
					 
					
						
						
							
						
						858ff69c01 
					 
					
						
						
							
							Make OpArg.offset and operandReg private.  
						
						... 
						
						
						
						Also cleaned up WriteRest function. 
						
						
					 
					
						2015-03-17 18:49:30 +13:00 
						 
				 
			
				
					
						
							
							
								Ryan Houdek 
							
						 
					 
					
						
						
							
						
						80e6367e46 
					 
					
						
						
							
							Merge pull request  #1869  from Stevoisiak/GeneralConsistency  
						
						... 
						
						
						
						Minor consistency changes 
						
						
					 
					
						2015-01-21 13:46:53 -06:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						e80b657cf4 
					 
					
						
						
							
							Move MOVBE wrappers directly into XEmitter class  
						
						
						
						
					 
					
						2015-01-18 13:29:34 +01:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						eb13aa43fe 
					 
					
						
						
							
							XEmitter: overload MOVBE()  
						
						
						
						
					 
					
						2015-01-18 12:59:33 +01:00 
						 
				 
			
				
					
						
							
							
								Stevoisiak 
							
						 
					 
					
						
						
							
						
						cb86db7b68 
					 
					
						
						
							
							Minor consistency changes  
						
						... 
						
						
						
						Mostly small changes, like capitalization and spelling 
						
						
					 
					
						2015-01-12 15:18:18 -05:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						1efa9b8b72 
					 
					
						
						
							
							x64Emitter: add MOVLPS/MOVHPS  
						
						
						
						
					 
					
						2015-01-07 11:23:52 +01:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						3daa6ab259 
					 
					
						
						
							
							x64Emitter: fix MOVLPD/MOVHPD  
						
						... 
						
						
						
						These instructions were using the wrong prefix which turned
MOVLPD(reg, mem) into MOVDDUP(reg, mem) and made the rest of them
invalid. 
						
						
					 
					
						2015-01-07 11:23:52 +01:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						986d19b9d5 
					 
					
						
						
							
							x64Emitter: fix bitwise AVX opcodes  
						
						... 
						
						
						
						The reason this didn't break is that bitwise instructions like VPAND,
VANDPS, and VANDPD do the exact same thing. The only difference is the
data type they are intended for. 
						
						
					 
					
						2014-12-06 22:28:03 +01:00 
						 
				 
			
				
					
						
							
							
								Stevoisiak 
							
						 
					 
					
						
						
							
						
						b25e1a2eb4 
					 
					
						
						
							
							Various formatting and consistency fixes  
						
						
						
						
					 
					
						2014-11-13 22:42:18 -05:00 
						 
				 
			
				
					
						
							
							
								Fiora 
							
						 
					 
					
						
						
							
						
						6603f98d04 
					 
					
						
						
							
							JIT: add 64-bit write support to FIFO functions  
						
						... 
						
						
						
						Also fix 64-bit values passed to CallAC and otherwise correct immediate
handling in FIFO writes.
Fixes 007 Nightfire. 
						
						
					 
					
						2014-11-09 21:24:30 -08:00 
						 
				 
			
				
					
						
							
							
								skidau 
							
						 
					 
					
						
						
							
						
						9ddbdeb39f 
					 
					
						
						
							
							Merge pull request  #995  from FioraAeterna/fma  
						
						... 
						
						
						
						Add FMA support to emitter and use it in the JIT 
						
						
					 
					
						2014-10-12 13:56:18 +11:00 
						 
				 
			
				
					
						
							
							
								Henrik Rydgård 
							
						 
					 
					
						
						
							
						
						877081c7df 
					 
					
						
						
							
							Be consistent with braces.  
						
						
						
						
					 
					
						2014-10-10 22:34:03 +02:00 
						 
				 
			
				
					
						
							
							
								Henrik Rydgård 
							
						 
					 
					
						
						
							
						
						9bca1a00d7 
					 
					
						
						
							
							x64 emitter: Add some more missing ops (MOVDQA, MOVDQU, PSHUFHW)  
						
						... 
						
						
						
						Also constify some pointers. 
						
						
					 
					
						2014-10-10 18:30:05 +02:00 
						 
				 
			
				
					
						
							
							
								Henrik Rydgård 
							
						 
					 
					
						
						
							
						
						a2c46665c5 
					 
					
						
						
							
							x64 emitter: Add a few missing instructions  
						
						
						
						
					 
					
						2014-10-10 18:30:04 +02:00 
						 
				 
			
				
					
						
							
							
								Fiora 
							
						 
					 
					
						
						
							
						
						019657cd93 
					 
					
						
						
							
							X64Emitter: add FMA3 support  
						
						
						
						
					 
					
						2014-10-07 18:21:07 -07:00 
						 
				 
			
				
					
						
							
							
								Fiora 
							
						 
					 
					
						
						
							
						
						7a2dd3a3c6 
					 
					
						
						
							
							x64Emitter: refactor, add some new AVX instructions  
						
						
						
						
					 
					
						2014-10-03 10:05:10 -07:00 
						 
				 
			
				
					
						
							
							
								Fiora 
							
						 
					 
					
						
						
							
						
						ac1fc9ad03 
					 
					
						
						
							
							JIT+Emitter: support locking flags  
						
						... 
						
						
						
						This helps us avoid accidentally clobbering flags between two instructions
when the flags are expected to be maintained. Dolphin will of course crash
immediately, but at least it will crash loudly and alert us of the mistake,
instead of forcing hours of bisecting to find the subtle way in which the JIT
has managed to sneak a flag-modifying instruction where there shouldn't be one. 
						
						
					 
					
						2014-09-26 20:47:06 -07:00 
						 
				 
			
				
					
						
							
							
								Fiora 
							
						 
					 
					
						
						
							
						
						3c49200b22 
					 
					
						
						
							
							X64Emitter: add MOVHLPS/MOVLHPS  
						
						
						
						
					 
					
						2014-09-18 17:57:27 -07:00 
						 
				 
			
				
					
						
							
							
								comex 
							
						 
					 
					
						
						
							
						
						7ad9027593 
					 
					
						
						
							
							Be pedantic about stack overflow on Linux and OS X.  
						
						... 
						
						
						
						Add some magic to the fault handler to handle stack overflow due to BLR
optimization, and disable the optimization if fastmem is not enabled. 
						
						
					 
					
						2014-09-17 20:08:09 -04:00 
						 
				 
			
				
					
						
							
							
								Fiora 
							
						 
					 
					
						
						
							
						
						02dce5dbbf 
					 
					
						
						
							
							x64Emitter: fix silent failure if WriteNormalOp is passed two memory operands  
						
						... 
						
						
						
						Should now fail loudly and clearly instead. 
						
						
					 
					
						2014-09-15 07:08:08 -07:00 
						 
				 
			
				
					
						
							
							
								Fiora 
							
						 
					 
					
						
						
							
						
						997c5c2d0e 
					 
					
						
						
							
							x64Emitter: add LZCNT/TZCNT support and detection  
						
						... 
						
						
						
						Also add a unit test. 
						
						
					 
					
						2014-09-14 05:31:22 -07:00 
						 
				 
			
				
					
						
							
							
								Fiora 
							
						 
					 
					
						
						
							
						
						18d83a310e 
					 
					
						
						
							
							X64Emitter: support shorter mov reg, imm opcodes  
						
						... 
						
						
						
						Also refactor WriteNormalOp a little bit and add comments. 
						
						
					 
					
						2014-09-11 11:40:30 -07:00 
						 
				 
			
				
					
						
							
							
								Rohit Nirmal 
							
						 
					 
					
						
						
							
						
						fbc64984ca 
					 
					
						
						
							
							Include CommonTypes.h instead of Common.h.  
						
						
						
						
					 
					
						2014-09-08 15:39:58 -04:00 
						 
				 
			
				
					
						
							
							
								Rohit Nirmal 
							
						 
					 
					
						
						
							
						
						629ceaf2b1 
					 
					
						
						
							
							Split some parts of UpdateBoundingBox into multiple lines. Also,  
						
						... 
						
						
						
						fix issues causing failure on Lint. 
						
						
					 
					
						2014-09-06 09:49:27 -05:00 
						 
				 
			
				
					
						
							
							
								Rohit Nirmal 
							
						 
					 
					
						
						
							
						
						1ecb318bcc 
					 
					
						
						
							
							Fix some formatting (new lines on collapsed single-line conditionals,  
						
						... 
						
						
						
						new lines for opening braces). 
						
						
					 
					
						2014-09-06 01:23:05 -05:00 
						 
				 
			
				
					
						
							
							
								Fiora 
							
						 
					 
					
						
						
							
						
						5088a2b4e2 
					 
					
						
						
							
							x64Emitter: add BMI1/BMI2 support  
						
						... 
						
						
						
						TZCNT and LZCNT use a completely different encoding scheme, so they should
probably go in a separate patch.
Also add some tests. 
						
						
					 
					
						2014-09-03 10:04:01 -07:00 
						 
				 
			
				
					
						
							
							
								shuffle2 
							
						 
					 
					
						
						
							
						
						532b7bb7da 
					 
					
						
						
							
							Merge pull request  #893  from rohitnirmal/scan-build-fixes  
						
						... 
						
						
						
						Scan build fixes 
						
						
					 
					
						2014-09-02 23:15:18 -07:00 
						 
				 
			
				
					
						
							
							
								Fiora 
							
						 
					 
					
						
						
							
						
						9e4419e786 
					 
					
						
						
							
							x64Emitter: add support for shorter EAX forms of instructions  
						
						... 
						
						
						
						Should save a few bytes of code size here and there. 
						
						
					 
					
						2014-09-02 21:52:41 -07:00 
						 
				 
			
				
					
						
							
							
								Pierre Bourdon 
							
						 
					 
					
						
						
							
						
						e72146d19c 
					 
					
						
						
							
							x64Emitter: Do not assert-fail on redundant MOVs, instead show an error log  
						
						
						
						
					 
					
						2014-09-02 10:17:32 +02:00 
						 
				 
			
				
					
						
							
							
								Pierre Bourdon 
							
						 
					 
					
						
						
							
						
						cc0b048c0b 
					 
					
						
						
							
							x64Emitter: Support FLD/FSTP with 80 bits operands  
						
						
						
						
					 
					
						2014-09-02 09:52:59 +02:00