| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | revert r105521, which is breaking the buildbots with stuff like this: | Chris Lattner | 2010-06-05 | 1 | -197/+19 | |
| | | | | | | | | | | | | | | | In file included from X86InstrInfo.cpp:16: X86GenInstrInfo.inc:2789: error: integer constant is too large for 'long' type X86GenInstrInfo.inc:2790: error: integer constant is too large for 'long' type X86GenInstrInfo.inc:2792: error: integer constant is too large for 'long' type X86GenInstrInfo.inc:2793: error: integer constant is too large for 'long' type X86GenInstrInfo.inc:2808: error: integer constant is too large for 'long' type X86GenInstrInfo.inc:2809: error: integer constant is too large for 'long' type X86GenInstrInfo.inc:2816: error: integer constant is too large for 'long' type X86GenInstrInfo.inc:2817: error: integer constant is too large for 'long' type llvm-svn: 105524 | |||||
| * | Initial AVX support for some instructions. No patterns matched | Bruno Cardoso Lopes | 2010-06-05 | 1 | -19/+197 | |
| | | | | | | | yet, only assembly encoding support. llvm-svn: 105521 | |||||
| * | MCCodeEmitter: Add target independent fixup flag for is-pc-relative. | Daniel Dunbar | 2010-03-19 | 1 | -4/+4 | |
| | | | | | llvm-svn: 98954 | |||||
| * | X86MCCodeEmitter: Fix two minor issues with reloc_riprel_4byte_movq_load, we | Daniel Dunbar | 2010-03-18 | 1 | -2/+4 | |
| | | | | | | | | were missing it on some movq instructions and were not including the appropriate PCrel bias. llvm-svn: 98880 | |||||
| * | fix an x86-64 encoding bug Daniel found. | Chris Lattner | 2010-03-18 | 1 | -1/+4 | |
| | | | | | llvm-svn: 98855 | |||||
| * | add a special relocation type for movq loads for object | Chris Lattner | 2010-03-18 | 1 | -3/+12 | |
| | | | | | | | | files that produce special relocation types where the linker changes movq's into lea's. llvm-svn: 98839 | |||||
| * | make pcrel immediate values relative to the start of the field, | Chris Lattner | 2010-02-16 | 1 | -3/+13 | |
| | | | | | | | not the end of the field, fixing rdar://7651978 llvm-svn: 96330 | |||||
| * | teach the encoder to handle pseudo instructions like FP_REG_KILL, | Chris Lattner | 2010-02-13 | 1 | -3/+4 | |
| | | | | | | | encoding them into nothing. llvm-svn: 96110 | |||||
| * | X86: Move extended MCFixupKinds into X86FixupKinds.h | Daniel Dunbar | 2010-02-13 | 1 | -11/+1 | |
| | | | | | llvm-svn: 96088 | |||||
| * | add encoder support and tests for rdtscp | Chris Lattner | 2010-02-13 | 1 | -0/+4 | |
| | | | | | llvm-svn: 96076 | |||||
| * | remove special cases for vmlaunch, vmresume, vmxoff, and swapgs | Chris Lattner | 2010-02-13 | 1 | -0/+16 | |
| | | | | | | | fix swapgs to be spelled right. llvm-svn: 96058 | |||||
| * | Remove special cases for [LM]FENCE, MONITOR and MWAIT from | Chris Lattner | 2010-02-12 | 1 | -13/+3 | |
| | | | | | | | encoder and decoder by using new MRM_ forms. llvm-svn: 96048 | |||||
| * | implement the rest of correct x86-64 encoder support for | Chris Lattner | 2010-02-12 | 1 | -5/+9 | |
| | | | | | | | rip-relative addresses, and add a testcase. llvm-svn: 96040 | |||||
| * | give MCCodeEmitters access to the current MCContext. | Chris Lattner | 2010-02-12 | 1 | -2/+4 | |
| | | | | | llvm-svn: 96038 | |||||
| * | implement infrastructure to support fixups for rip-rel | Chris Lattner | 2010-02-12 | 1 | -13/+28 | |
| | | | | | | | | addressing. This isn't complete because I need an MCContext to generate new MCExprs. llvm-svn: 96036 | |||||
| * | pull the rip-relative addressing mode case up early. | Chris Lattner | 2010-02-12 | 1 | -5/+12 | |
| | | | | | llvm-svn: 96031 | |||||
| * | fixme resolved! | Chris Lattner | 2010-02-12 | 1 | -1/+0 | |
| | | | | | llvm-svn: 96029 | |||||
| * | start producing reloc_pcrel_4byte/reloc_pcrel_1byte for calls. | Chris Lattner | 2010-02-12 | 1 | -23/+28 | |
| | | | | | llvm-svn: 96028 | |||||
| * | add a bunch of mod/rm encoding types for fixed mod/rm bytes. | Chris Lattner | 2010-02-12 | 1 | -0/+20 | |
| | | | | | | | | This will work better for the disassembler for modeling things like lfence/monitor/vmcall etc. llvm-svn: 95960 | |||||
| * | fix the encodings of monitor and mwait, which were completely | Chris Lattner | 2010-02-12 | 1 | -7/+2 | |
| | | | | | | | | busted in both encoders. I'm not bothering to fix it in the old one at this point. llvm-svn: 95947 | |||||
| * | add a new MCInstPrinter::getOpcodeName interface, when it is | Chris Lattner | 2010-02-11 | 1 | -4/+4 | |
| | | | | | | | | implemented, llvm-mc --show-inst now uses it to print the instruction opcode as well as the number. llvm-svn: 95929 | |||||
| * | make getFixupKindInfo return a const reference, allowing | Chris Lattner | 2010-02-11 | 1 | -4/+7 | |
| | | | | | | | | the tables to be const. Teach MCCodeEmitter to handle the target-indep kinds so that we don't crash on them. llvm-svn: 95924 | |||||
| * | switch to target-indep fixups for 1/2/4/8 byte data. | Chris Lattner | 2010-02-11 | 1 | -14/+9 | |
| | | | | | llvm-svn: 95920 | |||||
| * | refactor the conditional jump instructions in the .td file to | Chris Lattner | 2010-02-11 | 1 | -0/+2 | |
| | | | | | | | | use a multipattern that generates both the 1-byte and 4-byte versions from the same defm llvm-svn: 95901 | |||||
| * | dont' call getX86RegNum on X86::RIP, it doesn't like that. This | Chris Lattner | 2010-02-11 | 1 | -2/+4 | |
| | | | | | | | fixes the remaining x86-64 jit failures afaik. llvm-svn: 95867 | |||||
| * | fix a really nasty bug I introduced in r95693: r12 (and r12d, | Chris Lattner | 2010-02-11 | 1 | -4/+6 | |
| | | | | | | | | | | r12b, etc) also encodes to a R/M value of 4, which is just as illegal as ESP/RSP for the non-sib version an address. This fixes x86-64 jit miscompilations of a bunch of programs. llvm-svn: 95866 | |||||
| * | Add and commonize encoder support for all immediates. | Chris Lattner | 2010-02-11 | 1 | -110/+35 | |
| | | | | | | | | | | | | | | | | Stub out some dummy fixups to make things work. We can now emit fixups like this: subl $20, %esp ## encoding: [0x83,0xec,A] ## fixup A - offset: 2, value: 20, kind: fixup_1byte_imm Emitting $20 as a single-byte fixup to be later resolved by the assembler is ridiculous of course (vs just emitting the byte) but this is a failure of the matcher, which should be producing an imm of 20, not an MCExpr of 20. llvm-svn: 95860 | |||||
| * | generalize EmitDisplacementField to work with any size | Chris Lattner | 2010-02-11 | 1 | -14/+13 | |
| | | | | | | | and rename it to EmitImmediate. llvm-svn: 95859 | |||||
| * | eliminate the dead IsPCRel argument. | Chris Lattner | 2010-02-11 | 1 | -9/+6 | |
| | | | | | llvm-svn: 95858 | |||||
| * | eliminate the dead "PCAdj" logic. | Chris Lattner | 2010-02-11 | 1 | -22/+9 | |
| | | | | | llvm-svn: 95857 | |||||
| * | emit some simple (and probably incorrect) fixups for symbolic | Chris Lattner | 2010-02-10 | 1 | -34/+32 | |
| | | | | | | | displacement values. llvm-svn: 95773 | |||||
| * | keep track of what the current byte being emitted is | Chris Lattner | 2010-02-10 | 1 | -74/+87 | |
| | | | | | | | throughout the X86 encoder. llvm-svn: 95771 | |||||
| * | simplify displacement handling, emit displacements by-operand | Chris Lattner | 2010-02-10 | 1 | -50/+19 | |
| | | | | | | | even for the immediate case. No functionality change. llvm-svn: 95770 | |||||
| * | MC: First cut at MCFixup, for getting fixup/relocation information out of an ↵ | Daniel Dunbar | 2010-02-09 | 1 | -2/+22 | |
| | | | | | | | MCCodeEmitter. llvm-svn: 95708 | |||||
| * | port encoder enhancements over to the new encoder. | Chris Lattner | 2010-02-09 | 1 | -20/+34 | |
| | | | | | llvm-svn: 95699 | |||||
| * | add note. | Chris Lattner | 2010-02-05 | 1 | -0/+2 | |
| | | | | | llvm-svn: 95445 | |||||
| * | port X86InstrInfo::determineREX over to the new encoder. | Chris Lattner | 2010-02-05 | 1 | -3/+97 | |
| | | | | | llvm-svn: 95440 | |||||
| * | wire up 64-bit MCCodeEmitter. | Chris Lattner | 2010-02-05 | 1 | -6/+10 | |
| | | | | | llvm-svn: 95438 | |||||
| * | really kill off the last MRMInitReg inst, remove logic from encoder. | Chris Lattner | 2010-02-05 | 1 | -10/+2 | |
| | | | | | llvm-svn: 95437 | |||||
| * | implement the rest of the encoding types. | Chris Lattner | 2010-02-05 | 1 | -3/+108 | |
| | | | | | llvm-svn: 95414 | |||||
| * | move functions for decoding X86II values into the X86II namespace. | Chris Lattner | 2010-02-05 | 1 | -7/+7 | |
| | | | | | llvm-svn: 95410 | |||||
| * | change getSizeOfImm and getBaseOpcodeFor to just take | Chris Lattner | 2010-02-05 | 1 | -7/+7 | |
| | | | | | | | TSFlags directly instead of a TargetInstrDesc. llvm-svn: 95405 | |||||
| * | add some more encodings. | Chris Lattner | 2010-02-05 | 1 | -1/+36 | |
| | | | | | llvm-svn: 95403 | |||||
| * | implement the non-relocation forms of memory operands | Chris Lattner | 2010-02-05 | 1 | -65/+111 | |
| | | | | | llvm-svn: 95368 | |||||
| * | start adding MRMDestMem, which requires memory form mod/rm encoding | Chris Lattner | 2010-02-05 | 1 | -1/+158 | |
| | | | | | | | to start limping. llvm-svn: 95350 | |||||
| * | Add a few more encodings, we can now encode all of: | Chris Lattner | 2010-02-05 | 1 | -32/+57 | |
| | | | | | | | | | | | pushl %ebp movl %esp, %ebp movl $42, %eax popl %ebp ret llvm-svn: 95344 | |||||
| * | enhance new encoder to support prefixes + RawFrm | Chris Lattner | 2010-02-03 | 1 | -3/+129 | |
| | | | | | | | | | instructions with no operands. It can now handle define void @test2() nounwind { ret void } llvm-svn: 95261 | |||||
| * | set up some infrastructure, some minor cleanups. | Chris Lattner | 2010-02-03 | 1 | -5/+39 | |
| | | | | | llvm-svn: 95260 | |||||
| * | stub out a new X86 encoder, which can be tried with | Chris Lattner | 2010-02-03 | 1 | -0/+41 | |
| -enable-new-x86-encoder until its stable. llvm-svn: 95256 | ||||||

