Craig Topper 
							
						 
					 
					
						
						
							
						
						01c99892ca 
					 
					
						
						
							
							[X86] Disassembler support for move to/from %rax with a 32-bit memory offset is REX.W and AdSize prefix are both present.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@225099  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2015-01-03 00:00:20 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						71fc42dbf6 
					 
					
						
						
							
							[X86] Make the instructions that use AdSize16/32/64 co-exist together without using mode predicates.  
						
						... 
						
						
						
						This is necessary to allow the disassembler to be able to handle AdSize32 instructions in 64-bit mode when address size prefix is used.
Eventually we should probably also support 'addr32' and 'addr16' in the assembler to override the address size on some of these instructions. But for now we'll just use special operand types that will lookup the current mode size to select the right instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@225075  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2015-01-02 07:02:25 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						51f423ff30 
					 
					
						
						
							
							[X86] Fix disassembly of absolute moves to work correctly in 16 and 32-bit modes with all 4 combinations of OpSize and AdSize prefixes being present or not.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@225036  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-12-31 07:07:31 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						3bc4397f1f 
					 
					
						
						
							
							[X86] Remove the single AdSize indicator and replace it with separate AdSize16/32/64 flags.  
						
						... 
						
						
						
						This removes a hardcoded list of instructions in the CodeEmitter. Eventually I intend to remove the predicates on the affected instructions since in any given mode two of them are valid if we supported addr32/addr16 prefixes in the assembler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@224809  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-12-24 06:05:22 +00:00 
						 
				 
			
				
					
						
							
							
								Robert Khasanov 
							
						 
					 
					
						
						
							
						
						9371efbcdb 
					 
					
						
						
							
							[AVX512] Extended avx512_sqrt_packed (sqrt instructions) to VL subset.  
						
						... 
						
						
						
						Refactored through AVX512_maskable
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@220806  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-10-28 18:15:20 +00:00 
						 
				 
			
				
					
						
							
							
								Robert Khasanov 
							
						 
					 
					
						
						
							
						
						340b5b9ad7 
					 
					
						
						
							
							[AVX512] Extended avx512_binop_rm for AVX512VL subsets.  
						
						... 
						
						
						
						Added avx512_binop_rm_vl multiclass for VL subset
Added encoding tests
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@219390  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-10-09 08:38:48 +00:00 
						 
				 
			
				
					
						
							
							
								Robert Khasanov 
							
						 
					 
					
						
						
							
						
						cc4b123a47 
					 
					
						
						
							
							[SKX] avx512_icmp_packed multiclass extension  
						
						... 
						
						
						
						Extended avx512_icmp_packed multiclass by masking versions.
Added avx512_icmp_packed_rmb multiclass for embedded broadcast versions.
Added corresponding _vl multiclasses.
Added encoding tests for CPCMP{EQ|GT}* instructions.
Add more fields for X86VectorVTInfo.
Added AVX512VLVectorVTInfo that include X86VectorVTInfo for 512/256/128-bit versions
Differential Revision: http://reviews.llvm.org/D5024 
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@216383  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-08-25 14:49:34 +00:00 
						 
				 
			
				
					
						
							
							
								Robert Khasanov 
							
						 
					 
					
						
						
							
						
						7017934668 
					 
					
						
						
							
							[SKX] Enabling load/store instructions: encoding  
						
						... 
						
						
						
						Instructions: VMOVAPD, VMOVAPS, VMOVDQA8, VMOVDQA16, VMOVDQA32,VMOVDQA64, VMOVDQU8, VMOVDQU16, VMOVDQU32,VMOVDQU64, VMOVUPD, VMOVUPS,
Reviewed by Elena Demikhovsky <elena.demikhovsky@intel.com >
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@214719  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-08-04 14:35:15 +00:00 
						 
				 
			
				
					
						
							
							
								Elena Demikhovsky 
							
						 
					 
					
						
						
							
						
						b0a3627443 
					 
					
						
						
							
							AVX-512: Added rrk, rrkz, rmk, rmkz, rmbk, rmbkz versions of AVX512 FP packed instructions, added encoding tests for them.  
						
						... 
						
						
						
						By Robert Khazanov.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203098  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-03-06 08:45:30 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						82a644adf2 
					 
					
						
						
							
							Remove A6/A7 opcode maps. They can all be handled with a TB map, opcode of 0xa6/0xa7, and adding MRM_C0/MRM_E0 forms. Removes 376K from the disassembler tables.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201641  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-02-19 05:34:21 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						1ee7e39dd4 
					 
					
						
						
							
							Remove filtering concept from X86 disassembler table generation. It's no longer necessary.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201299  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-02-13 07:07:16 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						a01427c15a 
					 
					
						
						
							
							Remove unnecessary include.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201041  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-02-09 07:55:19 +00:00 
						 
				 
			
				
					
						
							
							
								David Woodhouse 
							
						 
					 
					
						
						
							
						
						9334b07527 
					 
					
						
						
							
							[x86] Fix disassembly of MOV16ao16 et al.  
						
						... 
						
						
						
						The addition of IC_OPSIZE_ADSIZE in r198759 wasn't quite complete. It
also turns out to have been unnecessary. The disassembler handles the
AdSize prefix for itself, and doesn't care about the difference between
(e.g.) MOV8ao8 and MOB8ao8_16 definitions. So just let them coexist and
don't worry about it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199654  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-01-20 12:02:53 +00:00 
						 
				 
			
				
					
						
							
							
								Elena Demikhovsky 
							
						 
					 
					
						
						
							
						
						1f044d443d 
					 
					
						
						
							
							AVX-512: Embedded Rounding Control - encoding and printing  
						
						... 
						
						
						
						Changed intrinsics for vrcp14/vrcp28 vrsqrt14/vrsqrt28 - aligned with GCC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199102  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-01-13 12:55:03 +00:00 
						 
				 
			
				
					
						
							
							
								David Woodhouse 
							
						 
					 
					
						
						
							
						
						aab59870a4 
					 
					
						
						
							
							[x86] Fix MOV8ao8 et al for 16-bit mode, fix up disassembler to understand  
						
						... 
						
						
						
						It seems there is no separate instruction class for having AdSize *and*
OpSize bits set, which is required in order to disambiguate between all
these instructions. So add that to the disassembler.
Hm, perhaps we do need an AdSize16 bit after all?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198759  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-01-08 12:58:24 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						5cfd40ccd4 
					 
					
						
						
							
							Remove modifierType/Base from X86 disassembler tables as they are no longer used. Removes ~11.5K from static tables.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198284  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-01-01 21:52:57 +00:00 
						 
				 
			
				
					
						
							
							
								Elena Demikhovsky 
							
						 
					 
					
						
						
							
						
						3062a311ac 
					 
					
						
						
							
							AVX-512: Added intrinsics for vcvt, vcvtt, vrndscale, vcmp  
						
						... 
						
						
						
						Printing rounding control.
Enncoding for EVEX_RC (rounding control).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198277  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2014-01-01 15:12:34 +00:00 
						 
				 
			
				
					
						
							
							
								Elena Demikhovsky 
							
						 
					 
					
						
						
							
						
						09a63715ce 
					 
					
						
						
							
							AVX-512: decoder for AVX-512, made by Alexey Bader.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198013  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2013-12-25 11:40:51 +00:00 
						 
				 
			
				
					
						
							
							
								Elena Demikhovsky 
							
						 
					 
					
						
						
							
						
						633f98bdfa 
					 
					
						
						
							
							AVX-512: added VPCONFLICT instruction and intrinsics,  
						
						... 
						
						
						
						added EVEX_KZ to tablegen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193959  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2013-11-03 13:46:31 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						279d28265d 
					 
					
						
						
							
							Add XOP disassembler support. Fixes PR13933.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191874  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2013-10-03 05:17:48 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						39004b537b 
					 
					
						
						
							
							Filter out repeated sections from the X86 disassembler modRMTable. Saves about ~43K from a released build. Unfortunately the disassembler tables are still upwards of 800K.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191652  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2013-09-30 06:23:19 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						92b4581953 
					 
					
						
						
							
							Various x86 disassembler fixes.  
						
						... 
						
						
						
						Add VEX_LIG to scalar FMA4 instructions.
Use VEX_LIG in some of the inheriting checks in disassembler table generator.
Make use of VEX_L_W, VEX_L_W_XS, VEX_L_W_XD contexts.
Don't let VEX_L_W, VEX_L_W_XS, VEX_L_W_XD, VEX_L_W_OPSIZE inherit from their non-L forms unless VEX_LIG is set.
Let VEX_L_W, VEX_L_W_XS, VEX_L_W_XD, VEX_L_W_OPSIZE inherit from all of their non-L or non-W cases.
Increase ranking on VEX_L_W, VEX_L_W_XS, VEX_L_W_XD, VEX_L_W_OPSIZE so they get chosen over non-L/non-W forms.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191649  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2013-09-30 02:46:36 +00:00 
						 
				 
			
				
					
						
							
							
								Elena Demikhovsky 
							
						 
					 
					
						
						
							
						
						c18f4efc5d 
					 
					
						
						
							
							Added encoding prefixes for KNL instructions (EVEX).  
						
						... 
						
						
						
						Added 512-bit operands printing.
Added instruction formats for KNL instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187324  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2013-07-28 08:28:38 +00:00 
						 
				 
			
				
					
						
							
							
								Chandler Carruth 
							
						 
					 
					
						
						
							
						
						4ffd89fa4d 
					 
					
						
						
							
							Sort the #include lines for utils/...  
						
						... 
						
						
						
						I've tried to find main moudle headers where possible, but the TableGen
stuff may warrant someone else looking at it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169251  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-12-04 10:37:14 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						76b29b518d 
					 
					
						
						
							
							Add a new compression type to ModRM table that detects when the memory modRM byte represent 8 instructions and the reg modRM byte represents up to 64 instructions. Reduces modRM table from 43k entreis to 25k entries. Based on a patch from Manman Ren.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163774  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-09-13 05:45:42 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						9e6dc8b9e7 
					 
					
						
						
							
							Change unsigned to a uint16_t in static disassembler tables to reduce the table size.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163594  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-09-11 04:19:21 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						5a2c607153 
					 
					
						
						
							
							Add more indirection to the disassembler tables to reduce amount of space used to store the operand types and encodings. Store only the unique combinations in a separate table and store indices in the instruction table. Saves about 32K of static data.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161101  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-08-01 07:39:18 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						19dbe2f5f0 
					 
					
						
						
							
							Use uint8_t to store the InstructionContext table. Saves 768 bytes of static data.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161034  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-07-31 06:15:39 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						de9e333e18 
					 
					
						
						
							
							Tidy up. Move for loop index declarations into for statements. Use unsigned instead of uint16_t for loop indices. Use unsigned instead of uint32_t for arguments to raw_ostream.indent.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161033  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-07-31 06:02:05 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						e08789f5e2 
					 
					
						
						
							
							Tidy up function argument formatting.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161032  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-07-31 05:42:02 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						9840009ff8 
					 
					
						
						
							
							Remove trailing whitespace  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161030  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-07-31 05:27:01 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						991271d9c4 
					 
					
						
						
							
							Use uint8_t instead of enums to store values in X86 disassembler table. Shaves 150k off the size of X86DisassemblerDecoder.o  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151995  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-03-04 02:16:41 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						930a1ebd92 
					 
					
						
						
							
							X86 disassembler support for jcxz, jecxz, and jrcxz. Fixes PR11643. Patch by Kay Tiong Khoo.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151510  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-02-27 01:54:29 +00:00 
						 
				 
			
				
					
						
							
							
								Ahmed Charles 
							
						 
					 
					
						
						
							
						
						b0934ab7d8 
					 
					
						
						
							
							Remove dead code. Improve llvm_unreachable text. Simplify some control flow.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150918  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-02-19 11:37:01 +00:00 
						 
				 
			
				
					
						
							
							
								Benjamin Kramer 
							
						 
					 
					
						
						
							
						
						953362cdfb 
					 
					
						
						
							
							Reuse the enum names from X86Desc in the X86Disassembler.  
						
						... 
						
						
						
						This requires some gymnastics to make it available for C code. Remove the names
from the disassembler tables, making them relocation free.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150303  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-02-11 14:50:54 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						f41ab77847 
					 
					
						
						
							
							More tweaks to get the size of the X86 disassembler tables down.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150167  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-02-09 08:58:07 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						ce8f4c58d8 
					 
					
						
						
							
							Flatten some of the arrays in the X86 disassembler tables to reduce space needed to store pointers on 64-bit hosts and reduce relocations needed at startup. Part of PR11953.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150161  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-02-09 07:45:30 +00:00 
						 
				 
			
				
					
						
							
							
								David Blaikie 
							
						 
					 
					
						
						
							
						
						fdebc38523 
					 
					
						
						
							
							Remove unreachable code. (replace with llvm_unreachable to help GCC where necessary)  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148284  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-01-17 04:43:56 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						c8eb880a7f 
					 
					
						
						
							
							More AVX2 instructions and their intrinsics.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143895  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-11-06 23:04:08 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						29480fd798 
					 
					
						
						
							
							Fix disassembling of popcntw. Also remove some code that says it accounts for 64BIT_REXW_XD not existing, but it does exist.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141642  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-10-11 04:34:23 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						25f6dfd108 
					 
					
						
						
							
							Revert part of r141274. Only need to change encoding for xchg %eax, %eax in 64-bit mode. This is because in 64-bit mode xchg %eax, %eax implies zeroing the upper 32-bits of RAX which makes it not a NOP. In 32-bit mode using NOP encoding is fine.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141353  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-10-07 05:35:38 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						6744a17dcf 
					 
					
						
						
							
							Add support in the disassembler for ignoring the L-bit on certain VEX instructions. Mark instructions that have this behavior. Fixes PR10676.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141065  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-10-04 06:30:42 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						42fbe9aa06 
					 
					
						
						
							
							Fix typo in r140954.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140962  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-10-02 04:54:26 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						e1b4a1a07e 
					 
					
						
						
							
							Fix disassembler handling of CRC32 which is an odd instruction that uses 0xf2 as an opcode extension and allows the opsize prefix. This necessitated adding IC_XD_OPSIZE and IC_64BIT_XD_OPSIZE contexts. Unfortunately, this increases the size of the disassembler tables. Fixes PR10702.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140954  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-10-01 19:54:56 +00:00 
						 
				 
			
				
					
						
							
							
								Peter Collingbourne 
							
						 
					 
					
						
						
							
						
						7c78888887 
					 
					
						
						
							
							Move TableGen's parser and entry point into a library  
						
						... 
						
						
						
						This is the first step towards splitting LLVM and Clang's tblgen executables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140951  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-10-01 16:41:13 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						4da632e6e0 
					 
					
						
						
							
							Don't allow 32-bit only instructions to be disassembled in 64-bit mode. Fixes part of PR10700.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140370  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-09-23 06:57:25 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						842f58f9be 
					 
					
						
						
							
							Fix disassembling of PAUSE instruction. Fixes PR10900. Also fixed NOP disassembling to ignore OpSize and REX.W.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139484  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-09-11 20:23:20 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						5ffedb9352 
					 
					
						
						
							
							Make IC_VEX* not inherit from IC_*. Prevents instructions with no VEX form from disassembling to their non-VEX form. Also prevents weak filter collisons that were keeping valid VEX instructions from decoding properly. Make VEX_L* not inherit from VEX_* because the VEX.L bit always important. This stops packed int VEX encodings from being disassembled when specified with VEX.L=1. Fixes PR10831 and PR10806.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138997  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-09-02 04:17:54 +00:00 
						 
				 
			
				
					
						
							
							
								Craig Topper 
							
						 
					 
					
						
						
							
						
						113061d39b 
					 
					
						
						
							
							Give ATTR_VEX higher priority when generating the disassembler context table. Fixes disassembling of VEX instructions with 'pp'=00. Fixes subset of PR10678.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138552  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-08-25 07:42:00 +00:00 
						 
				 
			
				
					
						
							
							
								Joerg Sonnenberger 
							
						 
					 
					
						
						
							
						
						4a8ac8de1d 
					 
					
						
						
							
							Add support for the VIA PadLock instructions.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128826  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-04-04 16:58:13 +00:00