| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | movl is a cheaper way to materialize 0 without clobbering EFLAGS than movabsq. | Dan Gohman | 2010-02-26 | 1 | -1/+1 |
| | | | | | llvm-svn: 97227 | ||||
| * | Fix XCoreTargetLowering::isLegalAddressingMode() to handle VoidTy. | Richard Osborne | 2010-02-26 | 1 | -3/+1 |
| | | | | | | | | Previously LoopStrengthReduce would sometimes be unable to find a legal formula, causing an assertion failure. llvm-svn: 97226 | ||||
| * | Revert r97211 and r97213 to get the build green again. | Chandler Carruth | 2010-02-26 | 4 | -69/+16 |
| | | | | | llvm-svn: 97220 | ||||
| * | Currently in LLVM, names of libcalls are assigned during TargetLowering | Sanjiv Gupta | 2010-02-26 | 3 | -12/+51 |
| | | | | | | | | | object construction. There is no provision to change them when the code for a function generated. So we have to change these names while printing assembly. llvm-svn: 97213 | ||||
| * | Before converting an operand to mem, check if it is legal to do so. | Sanjiv Gupta | 2010-02-26 | 1 | -4/+18 |
| | | | | | llvm-svn: 97211 | ||||
| * | Delete a bunch of redundant predicates. | Dan Gohman | 2010-02-26 | 1 | -44/+41 |
| | | | | | llvm-svn: 97201 | ||||
| * | Added the following 32-bit Thumb instructions for disassembly only: SMC, RFE, | Johnny Chen | 2010-02-25 | 1 | -0/+59 |
| | | | | | | | and SRS. llvm-svn: 97164 | ||||
| * | Added the 32-bit Thumb instructions (BXJ) for disassembly only. | Johnny Chen | 2010-02-25 | 1 | -0/+11 |
| | | | | | llvm-svn: 97163 | ||||
| * | Added the 32-bit Thumb instructions (MRS and MSR) for disassembly only. | Johnny Chen | 2010-02-25 | 1 | -0/+50 |
| | | | | | llvm-svn: 97159 | ||||
| * | Fix TextAlignFillValue in a few places | Daniel Dunbar | 2010-02-25 | 1 | -0/+4 |
| | | | | | llvm-svn: 97151 | ||||
| * | Added the following 16-bit Thumb instructions for disassembly only: YIELD, WFE, | Johnny Chen | 2010-02-25 | 1 | -0/+42 |
| | | | | | | | WFI, SEV, SETEND. llvm-svn: 97149 | ||||
| * | Revert r97064. Duncan pointed out that bitcasts are defined in | Dan Gohman | 2010-02-25 | 1 | -42/+1 |
| | | | | | | | | | terms of store and load, which means bitcasting between scalar integer and vector has endian-specific results, which undermines this whole approach. llvm-svn: 97137 | ||||
| * | Each field of auxiliary debug entry is only 1 byte long. | Sanjiv Gupta | 2010-02-25 | 1 | -1/+1 |
| | | | | | llvm-svn: 97108 | ||||
| * | Added tNOP for disassembly only. | Johnny Chen | 2010-02-25 | 1 | -1/+8 |
| | | | | | llvm-svn: 97105 | ||||
| * | Truncate from i64 to i32 is "free" on x86-32, because it involves | Dan Gohman | 2010-02-25 | 1 | -2/+2 |
| | | | | | | | just discarding one of the registers. llvm-svn: 97100 | ||||
| * | Revert this patch for the time being. Needs more testing. | Scott Michel | 2010-02-25 | 3 | -150/+11 |
| | | | | | llvm-svn: 97099 | ||||
| * | Added tSVC and tTRAP for disassembly only. | Johnny Chen | 2010-02-25 | 1 | -0/+18 |
| | | | | | llvm-svn: 97098 | ||||
| * | Large stack frame patch for the CellSPU: handle stack frames that exceed 8176 | Scott Michel | 2010-02-25 | 3 | -11/+150 |
| | | | | | | | | | | | | | | (511*16) bytes register displacement (D-form). NOTE: This is a potential headache, given the SPU's local core limitations, allowing the software developer to commit stack overrun suicide unknowingly. Also, large SPU stack frames will cause code size explosion. But, one presumes that the software developer knows what they're doing... Contributed by Kalle.Raiskila@nokia.com, edited slightly before commit. llvm-svn: 97091 | ||||
| * | Create a stack frame on ARM when | Jakob Stoklund Olesen | 2010-02-24 | 1 | -41/+41 |
| | | | | | | | | | | | | - Function uses all scratch registers AND - Function does not use any callee saved registers AND - Stack size is too big to address with immediate offsets. In this case a register must be scavenged to calculate the address of a stack object, and the scavenger needs a spare register or emergency spill slot. llvm-svn: 97071 | ||||
| * | Check for comparisons of +/- zero when optimizing less-than-or-equal and | Bob Wilson | 2010-02-24 | 1 | -22/+31 |
| | | | | | | | | | greater-than-or-equal SELECT_CCs to NEON vmin/vmax instructions. This is only allowed when UnsafeFPMath is set or when at least one of the operands is known to be nonzero. llvm-svn: 97065 | ||||
| * | Make getTypeSizeInBits work correctly for array types; it should return | Dan Gohman | 2010-02-24 | 1 | -1/+42 |
| | | | | | | | | | | | | | | | | the number of value bits, not the number of bits of allocation for in-memory storage. Make getTypeStoreSize and getTypeAllocSize work consistently for arrays and vectors. Fix several places in CodeGen which compute offsets into in-memory vectors to use TargetData information. This fixes PR1784. llvm-svn: 97064 | ||||
| * | Adding function "lookupGCCName" to MBlazeIntrinsicInfo | Wesley Peck | 2010-02-24 | 5 | -13/+17 |
| | | | | | | | | | | | | Adding the function "lookupGCCName" to the MBlazeIntrinsicInfo class to support the Clang MicroBlaze target. Additionally, minor fixes which remove some unused PIC code (PIC is not supported yet in the MicroBlaze backend) and removed some unused variables. llvm-svn: 97054 | ||||
| * | Added Vector Swap (VSWPd and VSWPq) instructions for disassembly only. | Johnny Chen | 2010-02-24 | 1 | -0/+8 |
| | | | | | | | A8.6.405 llvm-svn: 97052 | ||||
| * | Stay away from str <undef> in ARMLoadStoreOpt. This pass does not understand | Jakob Stoklund Olesen | 2010-02-24 | 1 | -1/+9 |
| | | | | | | | | <undef> operands, and can cause scavenger failures when it translates <kill,undef> to <kill>. llvm-svn: 97046 | ||||
| * | Fixed typo of opcodestr, should be "vst1", not "vld1". | Johnny Chen | 2010-02-24 | 1 | -9/+9 |
| | | | | | llvm-svn: 97044 | ||||
| * | Speculatively revert r97011, "Re-apply 96540 and 96556 with fixes.", again in | Daniel Dunbar | 2010-02-24 | 1 | -36/+16 |
| | | | | | | | the hopes of fixing PPC bootstrap. llvm-svn: 97040 | ||||
| * | When forming SSE min and max nodes for UGE and ULE comparisons, it's | Dan Gohman | 2010-02-24 | 1 | -10/+74 |
| | | | | | | | | | | | | necessary to swap the operands to handle NaN and negative zero properly. Also, reintroduce logic for checking for NaN conditions when forming SSE min and max instructions, fixed to take into consideration NaNs and negative zeros. This allows forming min and max instructions in more cases. llvm-svn: 97025 | ||||
| * | Remove an unused variable. Was this intentional? | Chandler Carruth | 2010-02-24 | 1 | -1/+0 |
| | | | | | llvm-svn: 97022 | ||||
| * | Added for disassembly VST1 (multiple single elements) which stores elements to | Johnny Chen | 2010-02-24 | 1 | -0/+35 |
| | | | | | | | | | | memory from three or four registers and VST2 (multiple two-element structures) which stores to memory from two double-spaced registers. A8.6.391 & A8.6.393 llvm-svn: 97018 | ||||
| * | handle very large call frames when require SPAdj != 0 for Thumb1 | Jim Grosbach | 2010-02-24 | 2 | -4/+4 |
| | | | | | llvm-svn: 97013 | ||||
| * | LowerCall() should always do getCopyFromReg() to reference the stack pointer. | Jim Grosbach | 2010-02-24 | 1 | -5/+1 |
| | | | | | | | | Machine instruction selection is much happier when operands are in virtual registers. llvm-svn: 97012 | ||||
| * | Re-apply 96540 and 96556 with fixes. | Evan Cheng | 2010-02-24 | 1 | -16/+36 |
| | | | | | llvm-svn: 97011 | ||||
| * | DIV8r must define %AX since X86DAGToDAGISel::Select() sometimes uses it | Jakob Stoklund Olesen | 2010-02-24 | 1 | -1/+1 |
| | | | | | | | instead of %AL/%AH. llvm-svn: 97006 | ||||
| * | Fix rev 96389 by restricting the xform to mask that's either signbit or max ↵ | Evan Cheng | 2010-02-23 | 1 | -4/+9 |
| | | | | | | | signed value. llvm-svn: 96990 | ||||
| * | Don't mark call instruction as a barrier. | Richard Osborne | 2010-02-23 | 1 | -1/+1 |
| | | | | | llvm-svn: 96983 | ||||
| * | Added for disassembly VLD1 (multiple single elements) which loads memory into | Johnny Chen | 2010-02-23 | 1 | -0/+33 |
| | | | | | | | | | | three or four registers and VLD2 (multiple two-element structures) which loads memory into two double-spaced registers. A8.6.307 & A8.6.310 llvm-svn: 96980 | ||||
| * | Use the module's context instead of the global context. | Nicolas Geoffray | 2010-02-23 | 1 | -16/+16 |
| | | | | | llvm-svn: 96977 | ||||
| * | no need to override IsLegalToFold, the base implementation | Chris Lattner | 2010-02-23 | 1 | -10/+0 |
| | | | | | | | disables load folding at -O0. llvm-svn: 96973 | ||||
| * | Adding the MicroBlaze backend. | Wesley Peck | 2010-02-23 | 37 | -0/+5371 |
| | | | | | | | | | | | | | The MicroBlaze is a highly configurable 32-bit soft-microprocessor for use on Xilinx FPGAs. For more information see: http://www.xilinx.com/tools/microblaze.htm http://en.wikipedia.org/wiki/MicroBlaze The current LLVM MicroBlaze backend generates assembly which can be compiled using the an appropriate binutils assembler. llvm-svn: 96969 | ||||
| * | ECALLF, ECALLT shouldn't be marked as barriers. | Richard Osborne | 2010-02-23 | 1 | -2/+2 |
| | | | | | llvm-svn: 96964 | ||||
| * | Mark unconditional branches as barriers. Found using -verify-machineinstrs | Richard Osborne | 2010-02-23 | 1 | -3/+3 |
| | | | | | llvm-svn: 96960 | ||||
| * | Spelling. s/suppor /support / | Jim Grosbach | 2010-02-23 | 1 | -3/+3 |
| | | | | | llvm-svn: 96954 | ||||
| * | Remove unused lowering function LowerJumpTable | Richard Osborne | 2010-02-23 | 2 | -13/+0 |
| | | | | | llvm-svn: 96943 | ||||
| * | Lower BR_JT on the XCore to a jump into a series of jump instructions. | Richard Osborne | 2010-02-23 | 5 | -5/+103 |
| | | | | | llvm-svn: 96942 | ||||
| * | disable two patterns that are using non-sensical result pattern types. | Chris Lattner | 2010-02-23 | 1 | -4/+4 |
| | | | | | llvm-svn: 96903 | ||||
| * | remove a confused pattern that is trying to match an address | Chris Lattner | 2010-02-23 | 1 | -7/+0 |
| | | | | | | | then use it as an MMX register (!?). llvm-svn: 96901 | ||||
| * | remove a bunch of dead named arguments in input patterns, | Chris Lattner | 2010-02-23 | 5 | -46/+46 |
| | | | | | | | though some look dubious afaict, these are all ok. llvm-svn: 96899 | ||||
| * | fix a type mismatch in this pattern, where we were using an i64 imm in a | Chris Lattner | 2010-02-23 | 1 | -1/+7 |
| | | | | | | | | | place where an i32 imm was required, the old isel just got lucky. This fixes CodeGen/X86/x86-64-and-mask.ll llvm-svn: 96894 | ||||
| * | reapply my cellspu changes with a fix to not break the old isel. | Chris Lattner | 2010-02-23 | 1 | -42/+73 |
| | | | | | llvm-svn: 96885 | ||||
| * | Revert 96854, 96852, and 96849, unbreaking test/CodeGen/CellSPU/i64ops.ll. | Dan Gohman | 2010-02-23 | 1 | -71/+42 |
| | | | | | llvm-svn: 96871 | ||||

