summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Refactor and improve the encodings/decodings for addrmode3 loads, and make ↵Owen Anderson2011-07-273-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 Cheng2011-07-278-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 Grosbach2011-07-271-0/+13
| | | | llvm-svn: 136289
* ARM assembly parsing and encoding for USAX.Jim Grosbach2011-07-271-0/+11
| | | | llvm-svn: 136288
* Fix llvm-mc handing of x86 instructions that take 8-bit unsigned immediates.Kevin Enderby2011-07-277-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 Grosbach2011-07-271-16/+16
| | | | llvm-svn: 136286
* ARM assembly parsing and encoding support for USAT and USAT16.Jim Grosbach2011-07-272-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 Grosbach2011-07-271-0/+14
| | | | llvm-svn: 136284
* Code generation for 'fence' instruction.Eli Friedman2011-07-2716-3/+119
| | | | llvm-svn: 136283
* ARM assembly parsing and encoding tests for UQSUB16 and UQSUB8.Jim Grosbach2011-07-271-0/+13
| | | | llvm-svn: 136282
* Fix comment copy/paste-o.Jim Grosbach2011-07-271-1/+1
| | | | llvm-svn: 136281
* ARM assembly parsing and encoding tests for UQASX and UQSAX.Jim Grosbach2011-07-271-0/+21
| | | | llvm-svn: 136280
* ARM assembly parsing and encoding tests for UQADD16 and UQADD8.Jim Grosbach2011-07-271-0/+15
| | | | llvm-svn: 136279
* Use BlockFrequency instead of uint32_t in BlockFrequencyInfo.Jakub Staszak2011-07-275-30/+19
| | | | llvm-svn: 136278
* ARM assembly parsing and encoding for UMULL.Jim Grosbach2011-07-272-1/+15
| | | | | | Fix parsing of the 's' suffix for the mnemonic. Add tests. llvm-svn: 136277
* Remove outdated FIXME comment.Devang Patel2011-07-271-1/+0
| | | | llvm-svn: 136275
* ARM assembly parsing and encoding for UMLAL.Jim Grosbach2011-07-272-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 Grosbach2011-07-271-0/+11
| | | | llvm-svn: 136272
* Refuse to inline two functions which use different personality functions.Bill Wendling2011-07-271-0/+34
| | | | llvm-svn: 136269
* ARM assembly parsing and encoding tests for UHSUB16 and UHSUB8.Jim Grosbach2011-07-271-0/+12
| | | | llvm-svn: 136267
* ARM assembly parsing and encoding tests for UHADD16, UHADD8 and UHASX.Jim Grosbach2011-07-271-0/+26
| | | | llvm-svn: 136266
* ARM parsing and encoding of SBFX and UBFX.Jim Grosbach2011-07-2710-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 Wendling2011-07-271-49/+52
| | | | llvm-svn: 136263
* ARM assembly parsing and encoding tests for UADD16, UADD8 and UASX.Jim Grosbach2011-07-271-0/+25
| | | | llvm-svn: 136261
* ARM assembly parsing and encoding tests for TST instruction.Jim Grosbach2011-07-271-0/+28
| | | | llvm-svn: 136260
* ARM assembly parsing and encoding tests for TEQ instruction.Jim Grosbach2011-07-271-0/+34
| | | | llvm-svn: 136259
* Refactor the STRT and STRBT instructions to distinguish between the ↵Owen Anderson2011-07-272-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 Wendling2011-07-2727-106/+742
| | | | | | This adds the new instructions 'landingpad' and 'resume'. llvm-svn: 136253
* ARM assembly parsing and encoding for extend instructions.Jim Grosbach2011-07-274-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 Lewycky2011-07-272-10/+56
| | | | llvm-svn: 136250
* X86ISD::MEMBARRIER does not require SSE2; it doesn't actually generate any ↵Eli Friedman2011-07-271-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 Friedman2011-07-271-24/+26
| | | | | | change, and append Fence onto the end. llvm-svn: 136245
* Add test cases for BlockFrequency.Jakub Staszak2011-07-271-0/+56
| | | | llvm-svn: 136244
* Add a generic 'capacity_in_bytes' function to allow inspection of memory ↵Ted Kremenek2011-07-273-6/+47
| | | | | | usage of various data structures. llvm-svn: 136233
* ARM assembly parsing aliases for extend instructions w/o rotate.Jim Grosbach2011-07-271-0/+22
| | | | llvm-svn: 136229
* Update document listing DIVariable elements to reflect recent changes.Devang Patel2011-07-271-1/+3
| | | | llvm-svn: 136228
* ARM cleanup of remaining extend instructions.Jim Grosbach2011-07-272-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 Grosbach2011-07-275-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 Staszak2011-07-271-2/+3
| | | | llvm-svn: 136222
* Move static methods to the anonymous namespace.Jakub Staszak2011-07-272-5/+7
| | | | llvm-svn: 136221
* Edge to itself is backedge as well.Jakub Staszak2011-07-271-1/+1
| | | | llvm-svn: 136219
* Trim includes.Frits van Bommel2011-07-271-12/+11
| | | | llvm-svn: 136218
* Update CMake build for new gtest file.Frits van Bommel2011-07-271-0/+1
| | | | llvm-svn: 136215
* Remove some code that is no longer needed now that googletest knows howJay Foad2011-07-271-17/+0
| | | | | | to print STL containers. llvm-svn: 136213
* Merge gtest-1.6.0.Jay Foad2011-07-2728-1356/+3498
| | | | llvm-svn: 136212
* Explicitly cast narrowing conversions inside {}s that will become errors inJeffrey Yasskin2011-07-276-6/+8
| | | | | | C++0x. llvm-svn: 136211
* Revert r136156, which broke several buildbots.Dan Gohman2011-07-271-1/+14
| | | | llvm-svn: 136206
* Misc mid-level changes for new 'fence' instruction.Eli Friedman2011-07-275-5/+41
| | | | llvm-svn: 136205
* Minor simplification.Eli Friedman2011-07-271-2/+2
| | | | llvm-svn: 136202
* Move some code around to open opportunity for more shuffle matchingBruno Cardoso Lopes2011-07-271-18/+18
| | | | llvm-svn: 136201
OpenPOWER on IntegriCloud