| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | add an x86 implementation of MCTargetExpr for | Chris Lattner | 2010-02-08 | 4 | -3/+89 | |
| | | | | | | | | representing @GOT and friends. Use it for personality references as a first use. llvm-svn: 95588 | |||||
| * | Add VCVTR (between floating-point and integer, VFP) for disassembly purpose. | Johnny Chen | 2010-02-08 | 1 | -0/+31 | |
| | | | | | | | | | | The 'R' suffix means the to-integer operations use the rounding mode specified by the FPSCR, encoded as Inst{7} = 0. A8.6.295 llvm-svn: 95584 | |||||
| * | Rename the PerformTailCallOpt variable to GuaranteedTailCallOpt to reflect | Dan Gohman | 2010-02-08 | 5 | -23/+23 | |
| | | | | | | | its current purpose. llvm-svn: 95564 | |||||
| * | Add VCMP (VFP floating-point compare without 'E' bit set) for disassembly ↵ | Johnny Chen | 2010-02-08 | 1 | -0/+16 | |
| | | | | | | | purpose. llvm-svn: 95560 | |||||
| * | Added VMOVRRS/VMOVSRR to ARMInstrVFP.td for disassembly purpose. | Johnny Chen | 2010-02-08 | 1 | -0/+14 | |
| | | | | | | | A8.6.331 VMOV (between two ARM core registers and two single-precision registers) llvm-svn: 95548 | |||||
| * | Fix x86 JIT stub on MSVC. | Torok Edwin | 2010-02-08 | 1 | -0/+1 | |
| | | | | | | | Thanks to Kristaps Straupe for noticing the bug. llvm-svn: 95537 | |||||
| * | Add suport for VASTART on Mips. | Bruno Cardoso Lopes | 2010-02-06 | 2 | -0/+22 | |
| | | | | | llvm-svn: 95506 | |||||
| * | First step towards varargs support in Mips: | Bruno Cardoso Lopes | 2010-02-06 | 1 | -38/+117 | |
| | | | | | | | | | - o32 cc must pass all arguments in A0...A3 and stack regardless if its type (but respect the alignment). - Store all variable arguments back to the caller stack. llvm-svn: 95500 | |||||
| * | Run codegen dce pass for all targets at all optimization levels. Previously it's | Evan Cheng | 2010-02-06 | 1 | -4/+0 | |
| | | | | | | | | | | | only run for x86 with fastisel. I've found it being very effective in eliminating some obvious dead code as result of formal parameter lowering especially when tail call optimization eliminated the need for some of the loads from fixed frame objects. It also shrinks a number of the tests. A couple of tests no longer make sense and are now eliminated. llvm-svn: 95493 | |||||
| * | Fix alignment on ppc linux. This fixes the build of crtend.o | Rafael Espindola | 2010-02-06 | 1 | -0/+3 | |
| | | | | | llvm-svn: 95477 | |||||
| * | Do not emit callseq instructions around sibcalls. This eliminated some ↵ | Evan Cheng | 2010-02-06 | 2 | -23/+27 | |
| | | | | | | | unnecessary stack adjustments. llvm-svn: 95475 | |||||
| * | Reintroduce the InlineHint function attribute. | Jakob Stoklund Olesen | 2010-02-06 | 1 | -0/+1 | |
| | | | | | | | | | | | | | This time it's for real! I am going to hook this up in the frontends as well. The inliner has some experimental heuristics for dealing with the inline hint. When given a -respect-inlinehint option, functions marked with the inline keyword are given a threshold just above the default for -O3. We need some experiments to determine if that is the right thing to do. llvm-svn: 95466 | |||||
| * | Handle AddrMode6 (for NEON load/stores) in Thumb2's rewriteT2FrameIndex. | Bob Wilson | 2010-02-06 | 1 | -11/+10 | |
| | | | | | | | Radar 7614112. llvm-svn: 95456 | |||||
| * | fix incorrect encoding of SBB8mi that Kevin noticed. | Chris Lattner | 2010-02-05 | 1 | -2/+2 | |
| | | | | | llvm-svn: 95448 | |||||
| * | fix a case where we'd mis-encode fisttp because of an incorrect (and | Chris Lattner | 2010-02-05 | 1 | -1/+0 | |
| | | | | | | | redundant with a correct one) pattern that was added for the disassembler. llvm-svn: 95446 | |||||
| * | 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 | 3 | -10/+109 | |
| | | | | | llvm-svn: 95440 | |||||
| * | wire up 64-bit MCCodeEmitter. | Chris Lattner | 2010-02-05 | 3 | -9/+17 | |
| | | | | | llvm-svn: 95438 | |||||
| * | really kill off the last MRMInitReg inst, remove logic from encoder. | Chris Lattner | 2010-02-05 | 4 | -17/+9 | |
| | | | | | llvm-svn: 95437 | |||||
| * | lower the last of the MRMInitReg instructions in MCInstLower. | Chris Lattner | 2010-02-05 | 3 | -9/+16 | |
| | | | | | llvm-svn: 95435 | |||||
| * | teach X86MCInstLower to lower the MOV32r0 and MOV8r0 | Chris Lattner | 2010-02-05 | 2 | -6/+14 | |
| | | | | | | | pseudo instructions. llvm-svn: 95433 | |||||
| * | genericize helpers, use them for MOV16r0/MOV64r0 | Chris Lattner | 2010-02-05 | 1 | -27/+21 | |
| | | | | | llvm-svn: 95432 | |||||
| * | factor code better in X86MCInstLower::Lower, teach it to | Chris Lattner | 2010-02-05 | 3 | -53/+40 | |
| | | | | | | | lower the SETB* instructions. llvm-svn: 95431 | |||||
| * | 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 | 4 | -45/+48 | |
| | | | | | llvm-svn: 95410 | |||||
| * | constant propagate a method away. | Chris Lattner | 2010-02-05 | 2 | -11/+5 | |
| | | | | | llvm-svn: 95408 | |||||
| * | change getSizeOfImm and getBaseOpcodeFor to just take | Chris Lattner | 2010-02-05 | 5 | -48/+46 | |
| | | | | | | | TSFlags directly instead of a TargetInstrDesc. llvm-svn: 95405 | |||||
| * | add some more encodings. | Chris Lattner | 2010-02-05 | 1 | -1/+36 | |
| | | | | | llvm-svn: 95403 | |||||
| * | VMOVRRD and VMOVDRR both have Inst{7-6} = 0b00. | Johnny Chen | 2010-02-05 | 1 | -2/+6 | |
| | | | | | llvm-svn: 95397 | |||||
| * | implement the non-relocation forms of memory operands | Chris Lattner | 2010-02-05 | 1 | -65/+111 | |
| | | | | | llvm-svn: 95368 | |||||
| * | Handle tail call with byval arguments. | Evan Cheng | 2010-02-05 | 1 | -24/+61 | |
| | | | | | llvm-svn: 95351 | |||||
| * | 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 | 2 | -33/+58 | |
| | | | | | | | | | | | pushl %ebp movl %esp, %ebp movl $42, %eax popl %ebp ret llvm-svn: 95344 | |||||
| * | Disable external stubs for X86-32 and X86-64 | Evan Phoenix | 2010-02-04 | 1 | -1/+8 | |
| | | | | | | | | | | Instruction selection for X86 now can choose an instruction sequence that will fit any address of any symbol, no matter the pointer width. X86-64 uses a mov+call-via-reg sequence for this. llvm-svn: 95323 | |||||
| * | move the PR6214 microoptzn to this file. | Chris Lattner | 2010-02-04 | 1 | -0/+18 | |
| | | | | | llvm-svn: 95299 | |||||
| * | Re-enable x86 tail call optimization. | Evan Cheng | 2010-02-04 | 1 | -3/+0 | |
| | | | | | llvm-svn: 95295 | |||||
| * | add support for the sparcv9-*-* target triple to turn on | Chris Lattner | 2010-02-04 | 7 | -29/+68 | |
| | | | | | | | 64-bit sparc codegen. Patch by Nathan Keynes! llvm-svn: 95293 | |||||
| * | Indirect tail call has to go through a call preserved register since it's ↵ | Evan Cheng | 2010-02-04 | 1 | -15/+14 | |
| | | | | | | | | | after callee register pops. X86 isel lowering is using EAX / R11 and it was somehow adding that to function live out. That prevented the real function return register from being added to the function live out list and bad things happen. This fixes 483.xalancbmk (with tail call opt). llvm-svn: 95280 | |||||
| * | Rewrite FP constant handling in DEBUG_VALUE yet | Dale Johannesen | 2010-02-04 | 1 | -5/+17 | |
| | | | | | | | | again, so it more or less handles long double. Restore \n removed in latest MC frenzy. llvm-svn: 95271 | |||||
| * | enhance new encoder to support prefixes + RawFrm | Chris Lattner | 2010-02-03 | 3 | -7/+133 | |
| | | | | | | | | | 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 | |||||
| * | Speculatively disable x86 automatic tail call optimization while we track ↵ | Evan Cheng | 2010-02-03 | 1 | -0/+3 | |
| | | | | | | | down a self-hosting issue. llvm-svn: 95259 | |||||
| * | stub out a new X86 encoder, which can be tried with | Chris Lattner | 2010-02-03 | 5 | -1/+56 | |
| | | | | | | | -enable-new-x86-encoder until its stable. llvm-svn: 95256 | |||||
| * | rename createX86MCCodeEmitter to more accurately reflect what it creates. | Chris Lattner | 2010-02-03 | 3 | -5/+7 | |
| | | | | | llvm-svn: 95254 | |||||
| * | Added support for X86 instruction prefixes so llvm-mc can assemble them. The | Kevin Enderby | 2010-02-03 | 2 | -6/+52 | |
| | | | | | | | | | | | Lock prefix, Repeat string operation prefixes and the Segment override prefixes. Also added versions of the move string and store string instructions without the repeat prefixes to X86InstrInfo.td. And finally marked the rep versions of move/store string records in X86InstrInfo.td as isCodeGenOnly = 1 so tblgen is happy building the disassembler files. llvm-svn: 95252 | |||||
| * | reapply r95206, this time actually delete the code I'm replacing in the ↵ | Chris Lattner | 2010-02-03 | 1 | -9/+23 | |
| | | | | | | | third stub case. llvm-svn: 95209 | |||||
| * | revert r95206, it is apparently causing bootstrap failure on i386-darwin9 | Chris Lattner | 2010-02-03 | 1 | -24/+7 | |
| | | | | | llvm-svn: 95208 | |||||
| * | make the x86 backend emit darwin stubs through mcstreamer | Chris Lattner | 2010-02-03 | 1 | -7/+24 | |
| | | | | | | | instead of textually. llvm-svn: 95206 | |||||
| * | make MachineModuleInfoMachO hold non-const MCSymbol*'s instead | Chris Lattner | 2010-02-03 | 5 | -21/+20 | |
| | | | | | | | | of const ones. non-const ones aren't very useful, because you can't even, say, emit them. llvm-svn: 95205 | |||||
| * | Allow all types of callee's to be tail called. But avoid automatic tailcall ↵ | Evan Cheng | 2010-02-03 | 1 | -17/+1 | |
| | | | | | | | if the callee is a result of bitcast to avoid losing necessary zext / sext etc. llvm-svn: 95195 | |||||

