- Oct 14, 2011
-
-
Jakob Stoklund Olesen authored
TableGen infers unmodeled side effects on instructions without a pattern. Fix some instruction definitions where that was overlooked. Also raise an error if a rematerializable instruction has unmodeled side effects. That doen't make any sense. llvm-svn: 141929
-
- Oct 13, 2011
-
-
Bill Wendling authored
http://lab.llvm.org:8011/builders/llvm-x86_64-linux/builds/101 --- Reverse-merging r141854 into '.': U test/MC/Disassembler/X86/x86-32.txt U test/MC/Disassembler/X86/simple-tests.txt D test/CodeGen/X86/bmi.ll U lib/Target/X86/X86InstrInfo.td U lib/Target/X86/X86ISelLowering.cpp U lib/Target/X86/X86.td U lib/Target/X86/X86Subtarget.h llvm-svn: 141857
-
Craig Topper authored
Add X86 TZCNT instruction and patterns to select it. Also added core-avx2 processor which is gcc's name for Haswell. llvm-svn: 141854
-
Craig Topper authored
llvm-svn: 141853
-
- Oct 11, 2011
-
-
Craig Topper authored
llvm-svn: 141656
-
Craig Topper authored
llvm-svn: 141651
-
- Oct 10, 2011
-
-
Benjamin Kramer authored
llvm-svn: 141563
-
- Oct 09, 2011
-
-
Craig Topper authored
llvm-svn: 141505
-
- Oct 07, 2011
-
-
Craig Topper authored
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. llvm-svn: 141353
-
- Oct 06, 2011
-
-
Craig Topper authored
Fix assembling of xchg %eax, %eax to not use the NOP encoding of 0x90. This was done by creating a new register group that excludes AX registers. Fixes PR10345. Also added aliases for flipping the order of the operands of xchg <reg>, %eax. llvm-svn: 141274
-
- Oct 03, 2011
-
-
Craig Topper authored
Add support for MOVBE and RDRAND instructions for the assembler and disassembler. Includes feature flag checking, but no instrinsic support. Fixes PR10832, PR11026 and PR11027. llvm-svn: 141007
-
- Oct 02, 2011
-
-
Craig Topper authored
Fix some Intel syntax disassembly issues with instructions that implicitly use AL/AX/EAX/RAX such as ADD/SUB/ADC/SUBB/XOR/OR/AND/CMP/MOV/TEST. llvm-svn: 140974
-
- Sep 09, 2011
-
-
Craig Topper authored
Fix handling of Intel syntax disassembling of movs and stos to stop being blank. Also fixed scas, and cmps to always print size suffix in Intel syntax since its abiguous without arguments. Fixes PR10875. llvm-svn: 139353
-
- Sep 05, 2011
-
-
Nick Lewycky authored
instructions are more aligned than the CPU requires, and adds some additional directives, to follow in future patches. Patch by David Meyer! llvm-svn: 139125
-
- Aug 30, 2011
-
-
Rafael Espindola authored
from DYNAMIC_STACKALLOC. Two new pseudo instructions (SEG_ALLOCA_32 and SEG_ALLOCA_64) which will match X86SegAlloca (based on word size) are also added. They will be custom emitted to inject the actual stack handling code. Patch by Sanjoy Das. llvm-svn: 138814
-
- Aug 26, 2011
-
-
Eli Friedman authored
llvm-svn: 138660
-
- Aug 23, 2011
-
-
Benjamin Kramer authored
llvm-svn: 138285
-
- Jul 28, 2011
-
-
Kevin Enderby authored
llvm-mc gives an "invalid operand" error for instructions that take an unsigned immediate which have the high bit set such as: pblendw $0xc5, %xmm2, %xmm1 llvm-mc treats all x86 immediates as signed values and range checks them. A small number of x86 instructions use the imm8 field as a set of bits. This change only changes those instructions and where the high bit is not ignored. The others remain unchanged. llvm-svn: 136287
-
- Jul 14, 2011
-
-
Benjamin Kramer authored
llvm-svn: 135198
-
- Jul 08, 2011
-
-
Evan Cheng authored
- Each target asm parser now creates its own MCSubtatgetInfo (if needed). - Changed AssemblerPredicate to take subtarget features which tablegen uses to generate asm matcher subtarget feature queries. e.g. "ModeThumb,FeatureThumb2" is translated to "(Bits & ModeThumb) != 0 && (Bits & FeatureThumb2) != 0". llvm-svn: 134678
-
- Jul 06, 2011
-
-
Kevin Enderby authored
push with a small constant produces a 2-byte push. llvm-svn: 134501
-
- Jun 04, 2011
-
-
Stuart Hastings authored
rdar://problem/5993888 llvm-svn: 132606
-
- Jun 02, 2011
-
-
Rafael Espindola authored
llvm-svn: 132479
-
- Jun 01, 2011
-
-
-
-
Stuart Hastings authored
floating-point comparison, generate a mask of 0s or 1s, and generally DTRT with NaNs. Only profitable when the user wants a materialized 0 or 1 at runtime. rdar://problem/5993888 llvm-svn: 132404
-
- May 23, 2011
-
-
Chris Lattner authored
llvm-svn: 131874
-
- May 20, 2011
-
-
Stuart Hastings authored
rdar://problem/8614450 llvm-svn: 131746
-
- Apr 20, 2011
-
-
Nick Lewycky authored
llvm is built with unsigned chars where an immediate such as 0xff would be zero extended to 64-bits, turning "cmp $0xff,%eax" into "cmp $0xffffffffffffffff,%eax". llvm-svn: 129845
-
- Apr 18, 2011
-
-
Chris Lattner authored
the generated FastISel. X86 doesn't need to generate code to match ADD16ri8 since ADD16ri will do just fine. This is a small codesize win in the generated instruction selector. llvm-svn: 129692
-
Chris Lattner authored
simplifying them and exposing more information to tblgen. It would be nice if other target authors adopted this as well, particularly arm since it has fastisel. llvm-svn: 129676
-
Chris Lattner authored
kind of predicate: one that is specific to imm nodes. The predicate function specified here just checks an int64_t directly instead of messing around with SDNode's. The virtue of this is that it means that fastisel and other things can reason about these predicates. llvm-svn: 129675
-
- Apr 17, 2011
-
-
Chris Lattner authored
structure and fix some fixmes. We now have a TreePredicateFn class that handles all of the decoding of these things. This is an internal cleanup that has no impact on the code generated by tblgen. llvm-svn: 129670
-
- Apr 14, 2011
-
-
Bill Wendling authored
(movzx/movsx) because they give more information. Revert that part of the patch. llvm-svn: 129498
-
Bill Wendling authored
cases, it's much nicer and more informative reading the alias. llvm-svn: 129497
-
Bill Wendling authored
the alias". llvm-svn: 129485
-
- Feb 22, 2011
-
-
Joerg Sonnenberger authored
From Dimitry Andric. llvm-svn: 126168
-
- Feb 19, 2011
-
-
Chris Lattner authored
This is reasonable to do since all bt-mem forms do the same thing. llvm-svn: 126047
-
- Feb 18, 2011
-
-
Joerg Sonnenberger authored
Validate encoding of leave in 64bit mode. llvm-svn: 125795
-
- Jan 26, 2011
-
-
NAKAMURA Takumi authored
llvm-svn: 124272
-