Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Fix typo in DEBUG message. | Devang Patel | 2011-07-14 | 1 | -2/+2 |
| | | | | llvm-svn: 135111 | ||||
* | Add DEBUG messages. | Devang Patel | 2011-07-14 | 1 | -0/+5 |
| | | | | llvm-svn: 135110 | ||||
* | ARM Assembler support for DMB instruction. | Jim Grosbach | 2011-07-13 | 2 | -0/+6 |
| | | | | | | | | Flesh out the options supported for the instruction. Shuffle tests a bit and add entries for the rest of the options. Add an alias to handle the default operand of "sy". llvm-svn: 135109 | ||||
* | Update comments. These are for assembler, too. | Jim Grosbach | 2011-07-13 | 1 | -3/+2 |
| | | | | llvm-svn: 135107 | ||||
* | Add a target-indepedent entry to MCInstrDesc to describe the encoded size of ↵ | Owen Anderson | 2011-07-13 | 8 | -246/+213 |
| | | | | | | an opcode. Switch ARM over to using that rather than its own special MCInstrDesc bits. llvm-svn: 135106 | ||||
* | Add code to handle a "frameless" unwind stack. | Bill Wendling | 2011-07-13 | 1 | -13/+55 |
| | | | | | | | The frameless unwind stack has a special encoding, the algorithm for which is in "permuteEncode". llvm-svn: 135103 | ||||
* | ARM Assembler support for DBG instruction. | Jim Grosbach | 2011-07-13 | 2 | -5/+3 |
| | | | | | | Add range checking and testing for parsing and encoding of DBG instruction. llvm-svn: 135102 | ||||
* | Revert r135074 and r135080. They broke clamscan. | Jakob Stoklund Olesen | 2011-07-13 | 2 | -34/+28 |
| | | | | llvm-svn: 135096 | ||||
* | Revert 135093. Think-o. | Jim Grosbach | 2011-07-13 | 1 | -2/+2 |
| | | | | llvm-svn: 135094 | ||||
* | Correct range for thumb co-processor immediate | Jim Grosbach | 2011-07-13 | 1 | -2/+2 |
| | | | | llvm-svn: 135093 | ||||
* | Range checking for CDP[2] immediates. | Jim Grosbach | 2011-07-13 | 4 | -12/+50 |
| | | | | llvm-svn: 135092 | ||||
* | Make X86ISD::ANDNP more general and Codegen 256-bit VANDNP. A more | Bruno Cardoso Lopes | 2011-07-13 | 3 | -64/+37 |
| | | | | | | | general version of X86ISD::ANDNP also opened the room for a little bit of refactoring. llvm-svn: 135088 | ||||
* | The target specific node PANDN name is misleading. That happens because | Bruno Cardoso Lopes | 2011-07-13 | 4 | -12/+12 |
| | | | | | | | it's later selected to a ANDNPD/ANDNPS instruction instead of the PANDN instruction. Rename it. llvm-svn: 135087 | ||||
* | Cleanup Thumb co-processor instructions a bit. | Jim Grosbach | 2011-07-13 | 1 | -79/+35 |
| | | | | | | Combine redundant base classes and such. No indended functional change. llvm-svn: 135085 | ||||
* | Make sure we don't combine a large displacement and a frame index in the ↵ | Eli Friedman | 2011-07-13 | 1 | -8/+25 |
| | | | | | | | | same addressing mode on x86-64. It can overflow, leading to a crash/miscompile. <rdar://problem/9763308> llvm-svn: 135084 | ||||
* | Parameterize away the ARM T1Cop class. | Jim Grosbach | 2011-07-13 | 2 | -13/+12 |
| | | | | llvm-svn: 135082 | ||||
* | Fix predicates for Thumb co-processor instructions. | Jim Grosbach | 2011-07-13 | 3 | -104/+95 |
| | | | | | | | They're all Thumb2 only, not just some of them. More refactoring cleanup coming. llvm-svn: 135081 | ||||
* | Only keep the global split candidates that work out. | Jakob Stoklund Olesen | 2011-07-13 | 1 | -12/+15 |
| | | | | | | | | | Some pysical registers create split solutions that would spill anywhere. They should not even be considered in future multi-way global splits. This does not affect code generation (yet). llvm-svn: 135080 | ||||
* | Refactor out checking for displacements on x86-64 addressing modes. No ↵ | Eli Friedman | 2011-07-13 | 1 | -46/+34 |
| | | | | | | | | functionality change. Refactoring in preparation for an additional safety check in FoldOffsetIntoAddress. Part of <rdar://problem/9763308>. llvm-svn: 135079 | ||||
* | Fix encoding for ARM BXJ instruction. | Jim Grosbach | 2011-07-13 | 1 | -3/+5 |
| | | | | llvm-svn: 135077 | ||||
* | Fix encoding of predicate bits on ARM BX_pred. | Jim Grosbach | 2011-07-13 | 1 | -3/+2 |
| | | | | llvm-svn: 135076 | ||||
* | Move the InterferenceCache cursor into the GlobalSplitCand struct. | Jakob Stoklund Olesen | 2011-07-13 | 2 | -20/+23 |
| | | | | | | | This is in preparation of supporting multiple global split candidates in a single live range split operation. llvm-svn: 135074 | ||||
* | Range checking for 16-bit immediates in ARM assembly. | Jim Grosbach | 2011-07-13 | 2 | -1/+17 |
| | | | | llvm-svn: 135071 | ||||
* | Revert r135042. As Chris pointed out, it had no effect, and was based on | Jay Foad | 2011-07-13 | 1 | -5/+0 |
| | | | | | | a complete misunderstanding of the code. llvm-svn: 135070 | ||||
* | Fix up TargetLoweringObjectFile ctors to properly initialize fields. | Evan Cheng | 2011-07-13 | 2 | -26/+67 |
| | | | | llvm-svn: 135068 | ||||
* | Give the ARM BKPT instruction the right operand type. | Jim Grosbach | 2011-07-13 | 1 | -5/+4 |
| | | | | | | The immediate is of limited range and the operand type should reflect that. llvm-svn: 135066 | ||||
* | Add tests for ARM parsing of 'BKPT' instruction. | Jim Grosbach | 2011-07-13 | 1 | -2/+1 |
| | | | | llvm-svn: 135063 | ||||
* | It's not safe to fold (fptrunc (sqrt (fpext x))) to (sqrtf x) if there is ↵ | Evan Cheng | 2011-07-13 | 1 | -1/+2 |
| | | | | | | another use of sqrt. rdar://9763193 llvm-svn: 135058 | ||||
* | Improve ARM assembly parsing diagnostics a bit. | Jim Grosbach | 2011-07-13 | 1 | -21/+33 |
| | | | | | | | | | Catch potential cascading errors on a malformed so_reg operand and bail after the first error. Add some tests for the diagnostics we do want. llvm-svn: 135055 | ||||
* | Destination register operand is optional for ADC and SBC ARM. | Jim Grosbach | 2011-07-13 | 1 | -5/+24 |
| | | | | llvm-svn: 135052 | ||||
* | Flesh out ARM Parser support for shifted-register operands. | Jim Grosbach | 2011-07-13 | 3 | -8/+105 |
| | | | | | | | Now works for parsing register shifted register and register shifted immediate arithmetic instructions, including the 'rrx' rotate with extend. llvm-svn: 135049 | ||||
* | 80 columns. | Jim Grosbach | 2011-07-13 | 1 | -4/+5 |
| | | | | llvm-svn: 135047 | ||||
* | Update MCParsedAsmOperand debug methods. | Jim Grosbach | 2011-07-13 | 5 | -7/+11 |
| | | | | | | | | | | | Update the debug output interface for MCParsedAsmOperand to have a print() method which takes an output stream argument, an << operator which invokes the print method using the given stream, and a dump() method which prints the operand to the dbgs() stream. This makes the interface more consistent with the rest of LLVM, and more convenient to use at the debugger command line. llvm-svn: 135043 | ||||
* | Really cache function types and anonymous struct types. | Jay Foad | 2011-07-13 | 1 | -0/+5 |
| | | | | llvm-svn: 135042 | ||||
* | Convert InsertValueInst and ExtractValueInst APIs to use ArrayRef. | Jay Foad | 2011-07-13 | 17 | -195/+117 |
| | | | | llvm-svn: 135040 | ||||
* | Add to RuntimeDyld support different object formats | Danil Malyshev | 2011-07-13 | 4 | -599/+693 |
| | | | | llvm-svn: 135037 | ||||
* | stop leaking all named struct types with an empty name. Thanks | Chris Lattner | 2011-07-13 | 3 | -8/+18 |
| | | | | | | to Benjamin Kramer for steering me in the right direction here. llvm-svn: 135031 | ||||
* | Add an entry. | Evan Cheng | 2011-07-13 | 1 | -0/+18 |
| | | | | llvm-svn: 135024 | ||||
* | AVX Codegen support for 256-bit versions of vandps, vandpd, vorps, vorpd, ↵ | Bruno Cardoso Lopes | 2011-07-13 | 2 | -8/+27 |
| | | | | | | vxorps, vxorpd llvm-svn: 135023 | ||||
* | Don't emit the FDE end label if the last thing emitted was a compact unwind and | Bill Wendling | 2011-07-13 | 2 | -8/+18 |
| | | | | | | not the FDE llvm-svn: 135020 | ||||
* | Add an assert (which should never trigger) that triggers on a testcase I'm ↵ | Eli Friedman | 2011-07-13 | 1 | -1/+3 |
| | | | | | | looking at. llvm-svn: 135018 | ||||
* | Improve codegen for select's: | Evan Cheng | 2011-07-13 | 2 | -1/+67 |
| | | | | | | | | | | | | | | | | | | | | if (x != 0) x = 1 if (x == 1) x = 1 Previous codegen looks like this: mov r1, r0 cmp r1, #1 mov r0, #0 moveq r0, #1 The naive lowering select between two different values. It should recognize the test is equality test so it's more a conditional move rather than a select: cmp r0, #1 movne r0, #0 rdar://9758317 llvm-svn: 135017 | ||||
* | Assign variable before we test it. | Bill Wendling | 2011-07-13 | 1 | -2/+1 |
| | | | | llvm-svn: 135015 | ||||
* | Fix obvious think-o. | Bill Wendling | 2011-07-13 | 1 | -1/+1 |
| | | | | llvm-svn: 135014 | ||||
* | Clean up the handling of an EBP/RBP unwind frame pointer. In particular, don't | Bill Wendling | 2011-07-13 | 1 | -23/+26 |
| | | | | | | | | assert when the frame pointer is -1 (i.e., the function is "frameless"). Still to do: "frameless" unwind information. llvm-svn: 135013 | ||||
* | There is a cyclic dependency between MC and Target if this method is ↵ | Bill Wendling | 2011-07-12 | 1 | -6/+0 |
| | | | | | | out-of-line. llvm-svn: 135006 | ||||
* | Second attempt at de-constifying LLVM Types in FunctionType::get(), | Jay Foad | 2011-07-12 | 27 | -96/+78 |
| | | | | | | StructType::get() and TargetData::getIntPtrType(). llvm-svn: 134982 | ||||
* | Remove IntegerType constness from TargetData | Tobias Grosser | 2011-07-12 | 1 | -1/+1 |
| | | | | llvm-svn: 134978 | ||||
* | simplify assertions to not be completely redundant. | Chris Lattner | 2011-07-12 | 1 | -15/+2 |
| | | | | llvm-svn: 134968 | ||||
* | make the IRBuilder type methods return non-const types. | Chris Lattner | 2011-07-12 | 1 | -1/+1 |
| | | | | llvm-svn: 134959 |