Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Refactor and improve the encodings/decodings for addrmode3 loads, and make ↵ | Owen Anderson | 2011-07-27 | 3 | -23/+41 |
| | | | | | | the writeback operand always the first. llvm-svn: 136295 | ||||
* | Emit an error is asm parser parsed X86_64 only registers, e.g. %rax, %sil. | Evan Cheng | 2011-07-27 | 8 | -30/+32 |
| | | | | | | | | | This can happen in cases where TableGen generated asm matcher cannot check whether a register operand is in the right register class. e.g. mem operands. rdar://8204588 llvm-svn: 136292 | ||||
* | ARM assembly parsing and encoding for USUB16 and USUB8. | Jim Grosbach | 2011-07-27 | 1 | -0/+13 |
| | | | | llvm-svn: 136289 | ||||
* | ARM assembly parsing and encoding for USAX. | Jim Grosbach | 2011-07-27 | 1 | -0/+11 |
| | | | | llvm-svn: 136288 | ||||
* | Fix llvm-mc handing of x86 instructions that take 8-bit unsigned immediates. | Kevin Enderby | 2011-07-27 | 7 | -4/+77 |
| | | | | | | | | | | | | llvm-mc gives an "invalid operand" error for instructions that take an unsigned immediate which have the high bit set such as: pblendw $0xc5, %xmm2, %xmm1 llvm-mc treats all x86 immediates as signed values and range checks them. A small number of x86 instructions use the imm8 field as a set of bits. This change only changes those instructions and where the high bit is not ignored. The others remain unchanged. llvm-svn: 136287 | ||||
* | Clean up tabs. | Jim Grosbach | 2011-07-27 | 1 | -16/+16 |
| | | | | llvm-svn: 136286 | ||||
* | ARM assembly parsing and encoding support for USAT and USAT16. | Jim Grosbach | 2011-07-27 | 2 | -3/+31 |
| | | | | | | Use range checked immediate operands for instructions. Add tests. llvm-svn: 136285 | ||||
* | ARM assembly parsing and encoding tests for USAD8 and USADA8. | Jim Grosbach | 2011-07-27 | 1 | -0/+14 |
| | | | | llvm-svn: 136284 | ||||
* | Code generation for 'fence' instruction. | Eli Friedman | 2011-07-27 | 16 | -3/+119 |
| | | | | llvm-svn: 136283 | ||||
* | ARM assembly parsing and encoding tests for UQSUB16 and UQSUB8. | Jim Grosbach | 2011-07-27 | 1 | -0/+13 |
| | | | | llvm-svn: 136282 | ||||
* | Fix comment copy/paste-o. | Jim Grosbach | 2011-07-27 | 1 | -1/+1 |
| | | | | llvm-svn: 136281 | ||||
* | ARM assembly parsing and encoding tests for UQASX and UQSAX. | Jim Grosbach | 2011-07-27 | 1 | -0/+21 |
| | | | | llvm-svn: 136280 | ||||
* | ARM assembly parsing and encoding tests for UQADD16 and UQADD8. | Jim Grosbach | 2011-07-27 | 1 | -0/+15 |
| | | | | llvm-svn: 136279 | ||||
* | Use BlockFrequency instead of uint32_t in BlockFrequencyInfo. | Jakub Staszak | 2011-07-27 | 5 | -30/+19 |
| | | | | llvm-svn: 136278 | ||||
* | ARM assembly parsing and encoding for UMULL. | Jim Grosbach | 2011-07-27 | 2 | -1/+15 |
| | | | | | | Fix parsing of the 's' suffix for the mnemonic. Add tests. llvm-svn: 136277 | ||||
* | Remove outdated FIXME comment. | Devang Patel | 2011-07-27 | 1 | -1/+0 |
| | | | | llvm-svn: 136275 | ||||
* | ARM assembly parsing and encoding for UMLAL. | Jim Grosbach | 2011-07-27 | 2 | -1/+15 |
| | | | | | | Fix parsing of the 's' suffix for the mnemonic. Add tests. llvm-svn: 136274 | ||||
* | ARM assembly parsing and encoding tests for UMAAL. | Jim Grosbach | 2011-07-27 | 1 | -0/+11 |
| | | | | llvm-svn: 136272 | ||||
* | Refuse to inline two functions which use different personality functions. | Bill Wendling | 2011-07-27 | 1 | -0/+34 |
| | | | | llvm-svn: 136269 | ||||
* | ARM assembly parsing and encoding tests for UHSUB16 and UHSUB8. | Jim Grosbach | 2011-07-27 | 1 | -0/+12 |
| | | | | llvm-svn: 136267 | ||||
* | ARM assembly parsing and encoding tests for UHADD16, UHADD8 and UHASX. | Jim Grosbach | 2011-07-27 | 1 | -0/+26 |
| | | | | llvm-svn: 136266 | ||||
* | ARM parsing and encoding of SBFX and UBFX. | Jim Grosbach | 2011-07-27 | 10 | -23/+48 |
| | | | | | | | | | Encode the width operand as it encodes in the instruction, which simplifies the disassembler and the encoder, by using the imm1_32 operand def. Add a diagnostic for the context-sensitive constraint that the width must be in the range [1,32-lsb]. llvm-svn: 136264 | ||||
* | Keep enums stable. Append EH stuff to the end. | Bill Wendling | 2011-07-27 | 1 | -49/+52 |
| | | | | llvm-svn: 136263 | ||||
* | ARM assembly parsing and encoding tests for UADD16, UADD8 and UASX. | Jim Grosbach | 2011-07-27 | 1 | -0/+25 |
| | | | | llvm-svn: 136261 | ||||
* | ARM assembly parsing and encoding tests for TST instruction. | Jim Grosbach | 2011-07-27 | 1 | -0/+28 |
| | | | | llvm-svn: 136260 | ||||
* | ARM assembly parsing and encoding tests for TEQ instruction. | Jim Grosbach | 2011-07-27 | 1 | -0/+34 |
| | | | | llvm-svn: 136259 | ||||
* | Refactor the STRT and STRBT instructions to distinguish between the ↵ | Owen Anderson | 2011-07-27 | 2 | -2/+31 |
| | | | | | | register-addend and immediate-addend versions. Temporarily XFAIL the asm parsing tests for these instructions. llvm-svn: 136255 | ||||
* | Merge the contents from exception-handling-rewrite to the mainline. | Bill Wendling | 2011-07-27 | 27 | -106/+742 |
| | | | | | | This adds the new instructions 'landingpad' and 'resume'. llvm-svn: 136253 | ||||
* | ARM assembly parsing and encoding for extend instructions. | Jim Grosbach | 2011-07-27 | 4 | -0/+229 |
| | | | | | | | Assembly parser handling for extend instruction rotate operands. Add tests for the sign extend instructions. llvm-svn: 136252 | ||||
* | Teach the ConstantMerge pass about alignment. Fixes PR10514! | Nick Lewycky | 2011-07-27 | 2 | -10/+56 |
| | | | | llvm-svn: 136250 | ||||
* | X86ISD::MEMBARRIER does not require SSE2; it doesn't actually generate any ↵ | Eli Friedman | 2011-07-27 | 1 | -1/+1 |
| | | | | | | code, and all x86 processors will honor the required semantics. llvm-svn: 136249 | ||||
* | The numbering of LLVMOpcode is supposed to be stable; revert my earlier ↵ | Eli Friedman | 2011-07-27 | 1 | -24/+26 |
| | | | | | | change, and append Fence onto the end. llvm-svn: 136245 | ||||
* | Add test cases for BlockFrequency. | Jakub Staszak | 2011-07-27 | 1 | -0/+56 |
| | | | | llvm-svn: 136244 | ||||
* | Add a generic 'capacity_in_bytes' function to allow inspection of memory ↵ | Ted Kremenek | 2011-07-27 | 3 | -6/+47 |
| | | | | | | usage of various data structures. llvm-svn: 136233 | ||||
* | ARM assembly parsing aliases for extend instructions w/o rotate. | Jim Grosbach | 2011-07-27 | 1 | -0/+22 |
| | | | | llvm-svn: 136229 | ||||
* | Update document listing DIVariable elements to reflect recent changes. | Devang Patel | 2011-07-27 | 1 | -1/+3 |
| | | | | llvm-svn: 136228 | ||||
* | ARM cleanup of remaining extend instructions. | Jim Grosbach | 2011-07-27 | 2 | -171/+122 |
| | | | | | | | | Refactor the rest of the extend instructions to not artificially distinguish between a rotate of zero and a rotate of any other value. Replace the by-zero versions with Pat<>'s for ISel. llvm-svn: 136226 | ||||
* | ARM extend instructions simplification. | Jim Grosbach | 2011-07-27 | 5 | -89/+87 |
| | | | | | | | | Refactor the SXTB, SXTH, SXTB16, UXTB, UXTH, and UXTB16 instructions to not have an 'r' and an 'r_rot' version, but just a single version with a rotate that can be zero. Use plain Pat<>'s for the ISel of the non-rotated version. llvm-svn: 136225 | ||||
* | Optimize 96-bit division a little bit. | Jakub Staszak | 2011-07-27 | 1 | -2/+3 |
| | | | | llvm-svn: 136222 | ||||
* | Move static methods to the anonymous namespace. | Jakub Staszak | 2011-07-27 | 2 | -5/+7 |
| | | | | llvm-svn: 136221 | ||||
* | Edge to itself is backedge as well. | Jakub Staszak | 2011-07-27 | 1 | -1/+1 |
| | | | | llvm-svn: 136219 | ||||
* | Trim includes. | Frits van Bommel | 2011-07-27 | 1 | -12/+11 |
| | | | | llvm-svn: 136218 | ||||
* | Update CMake build for new gtest file. | Frits van Bommel | 2011-07-27 | 1 | -0/+1 |
| | | | | llvm-svn: 136215 | ||||
* | Remove some code that is no longer needed now that googletest knows how | Jay Foad | 2011-07-27 | 1 | -17/+0 |
| | | | | | | to print STL containers. llvm-svn: 136213 | ||||
* | Merge gtest-1.6.0. | Jay Foad | 2011-07-27 | 28 | -1356/+3498 |
| | | | | llvm-svn: 136212 | ||||
* | Explicitly cast narrowing conversions inside {}s that will become errors in | Jeffrey Yasskin | 2011-07-27 | 6 | -6/+8 |
| | | | | | | C++0x. llvm-svn: 136211 | ||||
* | Revert r136156, which broke several buildbots. | Dan Gohman | 2011-07-27 | 1 | -1/+14 |
| | | | | llvm-svn: 136206 | ||||
* | Misc mid-level changes for new 'fence' instruction. | Eli Friedman | 2011-07-27 | 5 | -5/+41 |
| | | | | llvm-svn: 136205 | ||||
* | Minor simplification. | Eli Friedman | 2011-07-27 | 1 | -2/+2 |
| | | | | llvm-svn: 136202 | ||||
* | Move some code around to open opportunity for more shuffle matching | Bruno Cardoso Lopes | 2011-07-27 | 1 | -18/+18 |
| | | | | llvm-svn: 136201 |