Lioncash 
							
						 
					 
					
						
						
							
						
						82b1518342 
					 
					
						
						
							
							x64Emitter: Use an enum class to represent FixupBranch branch types  
						
						... 
						
						
						
						Gets rid of the use of magic values and replaces them with strongly
typed symbolic names. 
						
						
					 
					
						2018-05-06 22:05:03 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						e28d063539 
					 
					
						
						
							
							x64Emitter: Make the Align* functions return a non-const data pointer  
						
						... 
						
						
						
						There's no real requirement to make this const, and this should also
be decided by the calling code, considering we had places that would
simply cast away the const and carry on. 
						
						
					 
					
						2018-04-12 19:46:55 -04:00 
						 
				 
			
				
					
						
							
							
								spycrab 
							
						 
					 
					
						
						
							
						
						40bb9974f2 
					 
					
						
						
							
							Reformat all the things!  
						
						
						
						
					 
					
						2018-04-12 21:28:39 +02:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						975ba4abf0 
					 
					
						
						
							
							x64Emitter: Make FloatOp and NormalOp enum classes  
						
						... 
						
						
						
						Reduces the amount of identifiers placed in the Gen namespace internally. 
						
						
					 
					
						2018-03-18 18:04:54 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						c22a6f4551 
					 
					
						
						
							
							x64Emitter: Move FloatOp and NormalOp enums to the cpp file  
						
						... 
						
						
						
						These are only used internally. This also allows us to eliminate some
symbols that get dumped into the exposed Gen namespace.
By extension this also hides the Write[X] functions from OpArg's public
interface. This is only used internally by XEmitter, so they shouldn't
be usable by anything else. 
						
						
					 
					
						2018-03-18 18:04:48 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						75f5fcdfee 
					 
					
						
						
							
							Assert: Remove unused parameter from DEBUG_ASSERT  
						
						... 
						
						
						
						This brings the macro in line with the regular ASSERT macro, which only has one
macro parameter. 
						
						
					 
					
						2018-03-16 13:01:11 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						50a476c371 
					 
					
						
						
							
							Assert: Uppercase assertion macros  
						
						... 
						
						
						
						Macros should be all upper-cased. This is also kind of a wart that's
been sticking out for quite a while now (we avoid prefixing
underscores). 
						
						
					 
					
						2018-03-14 22:03:12 -04:00 
						 
				 
			
				
					
						
							
							
								MerryMage 
							
						 
					 
					
						
						
							
						
						a95010bc72 
					 
					
						
						
							
							x64Emitter: Allow code alignment to arbitrary power of 2  
						
						
						
						
					 
					
						2017-04-12 08:41:51 +01:00 
						 
				 
			
				
					
						
							
							
								degasus 
							
						 
					 
					
						
						
							
						
						f31b25fe39 
					 
					
						
						
							
							Jit64: Enable branch following.  
						
						
						
						
					 
					
						2017-01-28 02:48:56 +01:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						13506d3c12 
					 
					
						
						
							
							x64Emitter: Generify ABI_CallFunction variants  
						
						... 
						
						
						
						Gets rid of the need to cast to void* just to use the functions. 
						
						
					 
					
						2016-08-31 22:54:47 -04:00 
						 
				 
			
				
					
						
							
							
								hthh 
							
						 
					 
					
						
						
							
						
						e57333ac5e 
					 
					
						
						
							
							Jit: Remove unsafe MOV optimization  
						
						... 
						
						
						
						This optimization broke arithXex in rare cases by
emitting XOR where MOV was expected. 
						
						
					 
					
						2016-07-01 01:43:35 +10:00 
						 
				 
			
				
					
						
							
							
								Matt Mastracci 
							
						 
					 
					
						
						
							
						
						1e08ad0d97 
					 
					
						
						
							
							Add MOV optimization and MOV_sum  
						
						... 
						
						
						
						Replaces incarnations of the A=B+C pattern throughout the
code so we can apply optimizations consistently. 
						
						
					 
					
						2016-06-27 15:43:52 -06:00 
						 
				 
			
				
					
						
							
							
								Matt Mastracci 
							
						 
					 
					
						
						
							
						
						b1296a7825 
					 
					
						
						
							
							Refactor fastmem/trampoline code.  
						
						... 
						
						
						
						Simplication to avoid reading back the generated instructions, allowing
us to handle all possible cases. 
						
						
					 
					
						2016-06-27 14:58:20 -06:00 
						 
				 
			
				
					
						
							
							
								Pierre Bourdon 
							
						 
					 
					
						
						
							
						
						3570c7f03a 
					 
					
						
						
							
							Reformat all the things. Have fun with merge conflicts.  
						
						
						
						
					 
					
						2016-06-24 10:43:46 +02:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						cfa43f64bf 
					 
					
						
						
							
							x64Emitter: Remove pointer cast  
						
						... 
						
						
						
						No more ubsan asserts in the JIT and x64 emitter code paths when running starfield. 
						
						
					 
					
						2015-09-17 09:35:13 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						19459e827f 
					 
					
						
						
							
							Partially revert "General: Toss out PRI macro usage"  
						
						
						
						
					 
					
						2015-09-11 09:49:00 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						8fdb013d54 
					 
					
						
						
							
							General: Toss out PRI macro usage  
						
						... 
						
						
						
						Now that VS supports more printf specifiers, these aren't necessary 
						
						
					 
					
						2015-09-05 16:02:35 -04:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						ee4a12ffe2 
					 
					
						
						
							
							Jit64: some byte-swapping changes  
						
						
						
						
					 
					
						2015-08-26 05:41:18 +02:00 
						 
				 
			
				
					
						
							
							
								aroulin 
							
						 
					 
					
						
						
							
						
						0a0e012fab 
					 
					
						
						
							
							x64Emitter: add RCPPS and RCPSS SSE instructions  
						
						
						
						
					 
					
						2015-08-23 16:59:27 +02:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						a69755d9ee 
					 
					
						
						
							
							x64Emitter: Remove pointer casts from Write{8,16,32,64} functions  
						
						... 
						
						
						
						This also silences quite a few ubsan asserts from firing when the emitter is being used. 
						
						
					 
					
						2015-08-21 18:09:48 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						a59f00a5e4 
					 
					
						
						
							
							x64Emitter: Remove unused code  
						
						
						
						
					 
					
						2015-08-20 23:05:20 -04:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						022286fb90 
					 
					
						
						
							
							x64Emitter: don't check flags for most BMI2 ops  
						
						... 
						
						
						
						With the exception of BZHI, BMI2 instructions don't affect flags, so
don't check if they're locked. 
						
						
					 
					
						2015-08-14 23:39:17 +02:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						5e9fe4cd13 
					 
					
						
						
							
							x64Emitter: check for immediates in BMI ops  
						
						
						
						
					 
					
						2015-08-14 21:25:41 +02:00 
						 
				 
			
				
					
						
							
							
								Tillmann Karras 
							
						 
					 
					
						
						
							
						
						439fb26b9b 
					 
					
						
						
							
							x64Emitter: add MOVSLDUP/MOVSHDUP  
						
						
						
						
					 
					
						2015-08-06 10:39:43 +02:00 
						 
				 
			
				
					
						
							
							
								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