Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Revert previous patch. Missed a case. | Rafael Espindola | 2010-11-09 | 4 | -29/+40 |
| | | | | llvm-svn: 118645 | ||||
* | Delete the allocated vector. | Bill Wendling | 2010-11-09 | 1 | -0/+4 |
| | | | | llvm-svn: 118644 | ||||
* | Define the subtarget feature for the architecture version, | Bob Wilson | 2010-11-09 | 1 | -15/+40 |
| | | | | | | | as derived from the target triple. This is important for enabling features that are implied based on the architecture version. llvm-svn: 118643 | ||||
* | Do not use MEMBARRIER_MCR for any Thumb code. | Bob Wilson | 2010-11-09 | 1 | -2/+2 |
| | | | | | | | | | It is only supported for ARM code. Normally Thumb2 code would use DMB instead, but depending on how the compiler is invoked (e.g., -mattr=-db) that might be disabled. This prevents a "cannot select MEMBARRIER_MCR" error in that situation. Radar 8644195 llvm-svn: 118642 | ||||
* | Two types of instructions have register lists: | Bill Wendling | 2010-11-09 | 1 | -56/+32 |
| | | | | | | | | | | | * LDM, et al, uses a bit mask to indicate the register list. * VLDM, et al, uses a base register plus number. The LDM instructions may be non-contiguous, but the VLDM ones must be contiguous. Those are semantic checks that should be done later in the compiler. Also postpone the creation of the bit mask until it's needed. llvm-svn: 118640 | ||||
* | Remove IsExplicit. It was always false. | Rafael Espindola | 2010-11-09 | 4 | -40/+29 |
| | | | | llvm-svn: 118639 | ||||
* | Change the ARMConstantPoolValue modifier string to an enumeration. This will | Jim Grosbach | 2010-11-09 | 4 | -17/+42 |
| | | | | | | help in MC'izing the references that use them. llvm-svn: 118633 | ||||
* | Adds RABasic verification and tracing. | Andrew Trick | 2010-11-09 | 4 | -16/+158 |
| | | | | | | (retry now that the windows build is green) llvm-svn: 118630 | ||||
* | Teach FunctionAttrs about the VAArg instruction. | Dan Gohman | 2010-11-09 | 1 | -0/+7 |
| | | | | llvm-svn: 118627 | ||||
* | Use the AliasAnalysis interface to determine how a Function accesses | Dan Gohman | 2010-11-09 | 1 | -2/+3 |
| | | | | | | | memory. This isn't a real improvement with present day AliasAnalysis implementations; it's mainly for consistency. llvm-svn: 118624 | ||||
* | VAArg doesn't capture its operand. | Dan Gohman | 2010-11-09 | 1 | -0/+3 |
| | | | | llvm-svn: 118623 | ||||
* | Teach AliasAnalysis about AccessesArgumentsReadonly. | Dan Gohman | 2010-11-09 | 1 | -6/+8 |
| | | | | llvm-svn: 118621 | ||||
* | Teach LICM and AliasSetTracker about AccessesArgumentsReadonly. | Dan Gohman | 2010-11-09 | 2 | -2/+2 |
| | | | | llvm-svn: 118618 | ||||
* | Teach FunctionAttrs about AccessesArgumentsReadonly. | Dan Gohman | 2010-11-09 | 1 | -0/+19 |
| | | | | llvm-svn: 118617 | ||||
* | Add a trivial virtual dtor to AbstractRegisterDescription to appease | Matt Beaumont-Gay | 2010-11-09 | 1 | -0/+11 |
| | | | | | | -Wnon-virtual-dtor. llvm-svn: 118616 | ||||
* | Reverting r118604. Windows build broke. | Andrew Trick | 2010-11-09 | 4 | -165/+14 |
| | | | | llvm-svn: 118613 | ||||
* | Handle ARM constant pool values that need an explicit reference to the '.' | Jim Grosbach | 2010-11-09 | 1 | -1/+9 |
| | | | | | | pseudo-label. (TLS stuff). llvm-svn: 118609 | ||||
* | add a case we fail to devirt. | Chris Lattner | 2010-11-09 | 1 | -0/+20 |
| | | | | llvm-svn: 118608 | ||||
* | Trailing whitespace. | Jim Grosbach | 2010-11-09 | 1 | -6/+6 |
| | | | | llvm-svn: 118606 | ||||
* | Adds RABasic verification and tracing. | Andrew Trick | 2010-11-09 | 4 | -14/+165 |
| | | | | llvm-svn: 118604 | ||||
* | Further MCize ARM constant pool values. This allows basic PIC references for | Jim Grosbach | 2010-11-09 | 1 | -67/+83 |
| | | | | | | object file emission. llvm-svn: 118601 | ||||
* | Add encoding of Rt to ARM LDR/STR w/ reg+reg offset encoding. | Jim Grosbach | 2010-11-09 | 1 | -0/+2 |
| | | | | llvm-svn: 118600 | ||||
* | Last try to get this reference counting right, I swear. | Owen Anderson | 2010-11-09 | 1 | -1/+1 |
| | | | | llvm-svn: 118589 | ||||
* | Really fix the leak in the attributes list. Thanks to Benjamin Kramer for ↵ | Owen Anderson | 2010-11-09 | 1 | -2/+2 |
| | | | | | | pointing out how I was being stupid. llvm-svn: 118588 | ||||
* | For ARM load/store instructions, encode [reg+reg] with no shifter immediate as | Jim Grosbach | 2010-11-09 | 1 | -0/+3 |
| | | | | | | a left shift by zero. llvm-svn: 118587 | ||||
* | ARM .word data fixups don't need an adjustment. | Jim Grosbach | 2010-11-09 | 1 | -0/+1 |
| | | | | llvm-svn: 118586 | ||||
* | Factorize code, no functionality change. | Duncan Sands | 2010-11-09 | 1 | -34/+31 |
| | | | | llvm-svn: 118516 | ||||
* | Fix trailing whitespace and style, no functionality change | Bruno Cardoso Lopes | 2010-11-09 | 1 | -170/+95 |
| | | | | llvm-svn: 118515 | ||||
* | Add encoder method for ARM load/store shifted register offset operands. | Jim Grosbach | 2010-11-09 | 3 | -1/+48 |
| | | | | llvm-svn: 118513 | ||||
* | System/Path/Windows: Implement GetLLVMDefaultConfigDir. | Michael J. Spencer | 2010-11-09 | 1 | -2/+4 |
| | | | | llvm-svn: 118507 | ||||
* | System/Path/Windows: Generalize GetUserHomeDirectory. | Michael J. Spencer | 2010-11-09 | 1 | -8/+9 |
| | | | | llvm-svn: 118506 | ||||
* | System/Path/Windows: Make GetSystemLibraryPaths more generic. | Michael J. Spencer | 2010-11-09 | 2 | -2/+28 |
| | | | | llvm-svn: 118505 | ||||
* | System/Windows: Reduce dependencies. | Michael J. Spencer | 2010-11-09 | 1 | -0/+1 |
| | | | | llvm-svn: 118504 | ||||
* | System/Windows: Use normalized case and include method. | Michael J. Spencer | 2010-11-09 | 1 | -1/+1 |
| | | | | llvm-svn: 118503 | ||||
* | System/Path/Windows: Change GetRootDirectory to return file:/// instead of C:/. | Michael J. Spencer | 2010-11-09 | 1 | -3/+3 |
| | | | | llvm-svn: 118502 | ||||
* | Update comment. | Michael J. Spencer | 2010-11-09 | 1 | -1/+1 |
| | | | | llvm-svn: 118501 | ||||
* | Fix leak in my recent fix for PR8442. | Owen Anderson | 2010-11-09 | 1 | -1/+1 |
| | | | | llvm-svn: 118490 | ||||
* | Fix DAGCombiner to avoid folding a sext-in-reg or similar through a shl | Dan Gohman | 2010-11-09 | 1 | -0/+1 |
| | | | | | | in order to fold it into a load. llvm-svn: 118471 | ||||
* | Add support for a few simple fixups to the ARM Darwin asm backend. This allows | Jim Grosbach | 2010-11-09 | 2 | -10/+36 |
| | | | | | | | | | | | | | | constant pool references and global variable refernces to resolve properly for object file generation. For example, int x; void foo(unsigned a, unsigned *p) { p[a] = x; } can now be successfully compiled directly to an (ARM mode) object file. llvm-svn: 118469 | ||||
* | Fix an inline asm pasto from 117667; was preventing | Dale Johannesen | 2010-11-09 | 1 | -1/+2 |
| | | | | | | {i64, i64} from matching i128. llvm-svn: 118465 | ||||
* | Fix PR8441, a thread unsafe static variable in our dynamic library loading ↵ | Owen Anderson | 2010-11-09 | 1 | -0/+4 |
| | | | | | | facilities. llvm-svn: 118463 | ||||
* | Revert r118457 and r118458. These won't hold for GPRs. | Bill Wendling | 2010-11-09 | 2 | -6/+8 |
| | | | | llvm-svn: 118462 | ||||
* | Fix PR8441, a race condition in the static attributes list. While the ↵ | Owen Anderson | 2010-11-09 | 1 | -5/+12 |
| | | | | | | | | reference counting was itself threadsafe, the implicit removal of each object from the global list was not. Make this operation atomic. llvm-svn: 118461 | ||||
* | Get the register and count from the register list operands. | Bill Wendling | 2010-11-08 | 1 | -8/+5 |
| | | | | llvm-svn: 118458 | ||||
* | reglist has two operands. | Bill Wendling | 2010-11-08 | 1 | -0/+1 |
| | | | | llvm-svn: 118457 | ||||
* | The "addRegListOperands()" function returns the start register and the total | Bill Wendling | 2010-11-08 | 1 | -15/+21 |
| | | | | | | number of registers in the list. llvm-svn: 118456 | ||||
* | Add support for ARM's specialized vector-compare-against-zero instructions. | Owen Anderson | 2010-11-08 | 3 | -24/+68 |
| | | | | llvm-svn: 118453 | ||||
* | Initial support for Mips32 and Mips32r2. Patch contributed by Akira Hatanaka ↵ | Bruno Cardoso Lopes | 2010-11-08 | 3 | -12/+22 |
| | | | | | | (ahatanaka@mips.com) llvm-svn: 118447 | ||||
* | Add "write back" bit encoding. | Bill Wendling | 2010-11-08 | 1 | -8/+16 |
| | | | | llvm-svn: 118446 | ||||
* | Fix PR8211 | Bruno Cardoso Lopes | 2010-11-08 | 1 | -0/+6 |
| | | | | llvm-svn: 118445 |