Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Add AVX version of CLMUL instructions | Bruno Cardoso Lopes | 2010-07-23 | 2 | -0/+84 | |
| | | | | llvm-svn: 109248 | |||||
* | Add complete assembler support for FMA3 instructions, with descriptions and ↵ | Bruno Cardoso Lopes | 2010-07-23 | 2 | -0/+1348 | |
| | | | | | | encodings taken from the AVX manual llvm-svn: 109204 | |||||
* | Add remaining AVX instructions (most of them dealing with GR64 destinations. ↵ | Bruno Cardoso Lopes | 2010-07-22 | 1 | -0/+32 | |
| | | | | | | This complete the assembler support for the general AVX ISA. But we still miss instructions from FMA3 and CLMUL specific feature flags, which are now the next step llvm-svn: 109168 | |||||
* | Add more 256-bit forms for a bunch of regular AVX instructions | Bruno Cardoso Lopes | 2010-07-21 | 2 | -0/+260 | |
| | | | | | | | Add 64-bit (GR64) versions of some instructions (which are not described in their SSE forms, but are described in AVX) llvm-svn: 109063 | |||||
* | Add missing AVX convert instructions. Those instructions are not described ↵ | Bruno Cardoso Lopes | 2010-07-21 | 2 | -0/+72 | |
| | | | | | | in their SSE forms (although they exist), but add the AVX forms anyway, so the assembler can benefit from it llvm-svn: 109039 | |||||
* | Add AVX only vzeroall and vzeroupper instructions | Bruno Cardoso Lopes | 2010-07-21 | 1 | -0/+8 | |
| | | | | llvm-svn: 109002 | |||||
* | Add new AVX vpermilps, vpermilpd and vperm2f128 instructions | Bruno Cardoso Lopes | 2010-07-21 | 2 | -0/+144 | |
| | | | | llvm-svn: 108984 | |||||
* | Add new AVX vmaskmov instructions, and also fix the VEX encoding bits to ↵ | Bruno Cardoso Lopes | 2010-07-21 | 2 | -0/+64 | |
| | | | | | | support it llvm-svn: 108983 | |||||
* | Add new AVX vextractf128 instructions | Bruno Cardoso Lopes | 2010-07-20 | 2 | -0/+16 | |
| | | | | llvm-svn: 108964 | |||||
* | Include some tests for the recently committed ELF section directive | Matt Fleming | 2010-07-20 | 8 | -0/+48 | |
| | | | | | | handlers. llvm-svn: 108938 | |||||
* | Add new AVX instruction vinsertf128 | Bruno Cardoso Lopes | 2010-07-20 | 2 | -0/+16 | |
| | | | | llvm-svn: 108892 | |||||
* | x86_32 tests for vbroadcast | Bruno Cardoso Lopes | 2010-07-20 | 1 | -0/+16 | |
| | | | | llvm-svn: 108789 | |||||
* | Add AVX vbroadcast new instruction | Bruno Cardoso Lopes | 2010-07-20 | 1 | -0/+16 | |
| | | | | llvm-svn: 108788 | |||||
* | Add 256-bit vaddsub, vhadd, vhsub, vblend and vdpp instructions! | Bruno Cardoso Lopes | 2010-07-19 | 2 | -0/+144 | |
| | | | | llvm-svn: 108769 | |||||
* | X86: Mark JMP{32,64}[mr] as requires 32-bit/64-bit mode. They are the same | Daniel Dunbar | 2010-07-19 | 2 | -0/+6 | |
| | | | | | | | | instruction, we only want to allow the one for the current subtarget. - This also fixes suffix matching for jmp instructions, because it eliminates the ambiguity between 'jmpl' and 'jmpq'. llvm-svn: 108746 | |||||
* | X86-64: Mark WINCALL and more tail call instructions as code gen only. | Daniel Dunbar | 2010-07-19 | 1 | -1/+1 | |
| | | | | llvm-svn: 108685 | |||||
* | MC/X86: We now match instructions like "incl %eax" correctly for the arch we are | Daniel Dunbar | 2010-07-19 | 1 | -3/+3 | |
| | | | | | | assembling; remove crufty custom cleanup code. llvm-svn: 108681 | |||||
* | tests: Force another triple. | Daniel Dunbar | 2010-07-19 | 1 | -1/+1 | |
| | | | | llvm-svn: 108666 | |||||
* | tests: Force triples. | Daniel Dunbar | 2010-07-18 | 2 | -2/+2 | |
| | | | | llvm-svn: 108658 | |||||
* | MC/AsmParser: Fix .abort and .secure_log_unique to accept arbitrary token | Daniel Dunbar | 2010-07-18 | 1 | -3/+3 | |
| | | | | | | sequences, not just strings. llvm-svn: 108655 | |||||
* | MC/AsmParser: Add macro argument substitution support. | Daniel Dunbar | 2010-07-18 | 2 | -0/+45 | |
| | | | | llvm-svn: 108654 | |||||
* | MC/AsmParser: Add basic support for macro instantiation. | Daniel Dunbar | 2010-07-18 | 1 | -1/+1 | |
| | | | | llvm-svn: 108653 | |||||
* | MC/AsmParser: Add basic parsing support for .macro definitions. | Daniel Dunbar | 2010-07-18 | 1 | -4/+19 | |
| | | | | llvm-svn: 108652 | |||||
* | MC/AsmParser: Add .macros_{off,on} support, not that makes sense since we don't | Daniel Dunbar | 2010-07-18 | 1 | -0/+8 | |
| | | | | | | support macros. llvm-svn: 108649 | |||||
* | Test for ELF .size directive. | Eli Friedman | 2010-07-17 | 1 | -0/+8 | |
| | | | | llvm-svn: 108607 | |||||
* | Add AVX 256-bit compare instructions and a bunch of testcases | Bruno Cardoso Lopes | 2010-07-13 | 2 | -0/+448 | |
| | | | | llvm-svn: 108286 | |||||
* | AVX 256-bit conversion instructions | Bruno Cardoso Lopes | 2010-07-13 | 2 | -0/+208 | |
| | | | | | | Add the x86 VEX_L form to handle special cases where VEX_L must be set. llvm-svn: 108274 | |||||
* | Add AVX 256-bit packed logical forms | Bruno Cardoso Lopes | 2010-07-13 | 2 | -0/+128 | |
| | | | | llvm-svn: 108224 | |||||
* | Add AVX 256-bit unop arithmetic instructions | Bruno Cardoso Lopes | 2010-07-13 | 2 | -0/+64 | |
| | | | | llvm-svn: 108223 | |||||
* | Add AVX 256 binary arithmetic instructions | Bruno Cardoso Lopes | 2010-07-12 | 2 | -0/+192 | |
| | | | | llvm-svn: 108207 | |||||
* | Add AVX 256-bit MOVMSK forms | Bruno Cardoso Lopes | 2010-07-12 | 2 | -0/+15 | |
| | | | | llvm-svn: 108184 | |||||
* | MC/AsmParser: Move .tbss and .zerofill parsing to Darwin specific parser. | Daniel Dunbar | 2010-07-12 | 2 | -3/+1 | |
| | | | | llvm-svn: 108180 | |||||
* | MC/AsmParser: Move .desc parsing to Darwin specific parser. | Daniel Dunbar | 2010-07-12 | 1 | -1/+1 | |
| | | | | llvm-svn: 108179 | |||||
* | MC/AsmParser: Move some misc. Darwin directive handling to DarwinAsmParser. | Daniel Dunbar | 2010-07-12 | 2 | -4/+4 | |
| | | | | llvm-svn: 108174 | |||||
* | Add AVX 256-bit packed MOVNT variants | Bruno Cardoso Lopes | 2010-07-09 | 2 | -0/+25 | |
| | | | | llvm-svn: 108021 | |||||
* | Add AVX 256-bit unpack and interleave | Bruno Cardoso Lopes | 2010-07-09 | 2 | -0/+64 | |
| | | | | llvm-svn: 108017 | |||||
* | Start the support for AVX instructions with 256-bit %ymm registers. A couple of | Bruno Cardoso Lopes | 2010-07-09 | 2 | -0/+98 | |
| | | | | | | | | | | | | | | | notes: - The instructions are being added with dummy placeholder patterns using some 256 specifiers, this is not meant to work now, but since there are some multiclasses generic enough to accept them, when we go for codegen, the stuff will be already there. - Add VEX encoding bits to support YMM - Add MOVUPS and MOVAPS in the first round - Use "Y" as suffix for those Instructions: MOVUPSYrr, ... - All AVX instructions in X86InstrSSE.td will move soon to a new X86InstrAVX file. llvm-svn: 107996 | |||||
* | Rework segment prefix emission code to handle segments | Chris Lattner | 2010-07-08 | 1 | -0/+5 | |
| | | | | | | | | | | | | in memory operands at the same type as hard coded segments. This fixes problems where we'd emit the segment override after the REX prefix on instructions like: mov %gs:(%rdi), %rax This fixes rdar://8127102. I have several cleanup patches coming next. llvm-svn: 107917 | |||||
* | Implement the major chunk of PR7195: support for 'callw' | Chris Lattner | 2010-07-07 | 1 | -0/+5 | |
| | | | | | | | in the integrated assembler. Still some discussion to be done. llvm-svn: 107825 | |||||
* | Add more assembly opcodes for SSE compare instructions | Bruno Cardoso Lopes | 2010-07-07 | 2 | -0/+190 | |
| | | | | llvm-svn: 107823 | |||||
* | Add AVX AES instructions | Bruno Cardoso Lopes | 2010-07-07 | 2 | -0/+97 | |
| | | | | llvm-svn: 107798 | |||||
* | Add AVX SSE4.2 instructions | Bruno Cardoso Lopes | 2010-07-07 | 2 | -0/+79 | |
| | | | | llvm-svn: 107752 | |||||
* | Add AVX SSE4.1 insertps, ptest and movntdqa instructions | Bruno Cardoso Lopes | 2010-07-07 | 2 | -0/+40 | |
| | | | | llvm-svn: 107747 | |||||
* | Add AVX SSE4.1 extractps and pinsr instructions | Bruno Cardoso Lopes | 2010-07-07 | 2 | -0/+72 | |
| | | | | llvm-svn: 107746 | |||||
* | Add AVX SSE4.1 Extract Integer instructions | Bruno Cardoso Lopes | 2010-07-07 | 2 | -0/+56 | |
| | | | | llvm-svn: 107740 | |||||
* | Add the rest of AVX SSE4.1 packed move with sign/zero extend instructions | Bruno Cardoso Lopes | 2010-07-06 | 2 | -0/+95 | |
| | | | | llvm-svn: 107723 | |||||
* | Add part of AVX SSE4.1 packed move with sign/zero extend instructions | Bruno Cardoso Lopes | 2010-07-06 | 2 | -0/+97 | |
| | | | | llvm-svn: 107720 | |||||
* | Add AVX vblendvpd, vblendvps and vpblendvb instructions | Bruno Cardoso Lopes | 2010-07-06 | 2 | -0/+47 | |
| | | | | | | Update VEX encoding to support those new instructions llvm-svn: 107715 | |||||
* | Add AVX SSE4.1 blend, mpsadbw and vdp | Bruno Cardoso Lopes | 2010-07-03 | 2 | -0/+113 | |
| | | | | llvm-svn: 107560 | |||||
* | Add AVX SSE4.1 binop (some forms of packed max,min,mul,pack,cmp) instructions | Bruno Cardoso Lopes | 2010-07-03 | 2 | -0/+176 | |
| | | | | llvm-svn: 107558 |