| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Rearrange code for selecting vld2 intrinsics. No functionality change. | Bob Wilson | 2009-10-07 | 1 | -9/+14 | |
| | | | | | | | This is just to be more consistent with the forthcoming code for vld3/4. llvm-svn: 83470 | |||||
| * | Add register-reuse to frame-index register scavenging. When a target uses | Jim Grosbach | 2009-10-07 | 29 | -97/+252 | |
| | | | | | | | | | | | | | | | | | | | | | a virtual register to eliminate a frame index, it can return that register and the constant stored there to PEI to track. When scavenging to allocate for those registers, PEI then tracks the last-used register and value, and if it is still available and matches the value for the next index, reuses the existing value rather and removes the re-materialization instructions. Fancier tracking and adjustment of scavenger allocations to keep more values live for longer is possible, but not yet implemented and would likely be better done via a different, less special-purpose, approach to the problem. eliminateFrameIndex() is modified so the target implementations can return the registers they wish to be tracked for reuse. ARM Thumb1 implements and utilizes the new mechanism. All other targets are simply modified to adjust for the changed eliminateFrameIndex() prototype. llvm-svn: 83467 | |||||
| * | Do not assume that the module is set. | Devang Patel | 2009-10-07 | 1 | -15/+18 | |
| | | | | | llvm-svn: 83462 | |||||
| * | Add PR to this FIXME, looks like I didn't commit this change after all. | Torok Edwin | 2009-10-07 | 1 | -1/+2 | |
| | | | | | llvm-svn: 83457 | |||||
| * | Make getPointerTo return a const PointerType* rather than | Duncan Sands | 2009-10-07 | 1 | -1/+1 | |
| | | | | | | | an unqualified PointerType* because it seems more correct. llvm-svn: 83454 | |||||
| * | Add FreeInst to the "is a call" check for Insts that are calls, but | Eric Christopher | 2009-10-07 | 1 | -2/+2 | |
| | | | | | | | not intrinsics. llvm-svn: 83441 | |||||
| * | Fix this comment. The loop header is the loop entry point. | Dan Gohman | 2009-10-07 | 1 | -2/+2 | |
| | | | | | llvm-svn: 83437 | |||||
| * | Add PseudoSourceValues for constpool stuff on ELF (Darwin should use ↵ | Anton Korobeynikov | 2009-10-07 | 2 | -12/+34 | |
| | | | | | | | | | something similar) and register spills. llvm-svn: 83435 | |||||
| * | While we still have a MallocInst treat it as a call like any other | Eric Christopher | 2009-10-07 | 1 | -0/+4 | |
| | | | | | | | | | | for inlining. When MallocInst goes away this code will be subsumed as part of calls and work just fine... llvm-svn: 83434 | |||||
| * | Added bits of the ARM target assembler to llvm-mc to parse some load instruction | Kevin Enderby | 2009-10-06 | 1 | -1/+404 | |
| | | | | | | | | operands. Some parsing of arm memory operands for preindexing and postindexing forms including with register controled shifts. This is a work in progress. llvm-svn: 83424 | |||||
| * | Add codegen support for NEON vld2 operations on quad registers. | Bob Wilson | 2009-10-06 | 4 | -1/+62 | |
| | | | | | llvm-svn: 83422 | |||||
| * | Use copyRegToReg hook to copy registers. | Bob Wilson | 2009-10-06 | 1 | -6/+4 | |
| | | | | | llvm-svn: 83421 | |||||
| * | r83391 was completely broken since Twines keep references to their inputs, and | Jeffrey Yasskin | 2009-10-06 | 1 | -4/+9 | |
| | | | | | | | | some of the inputs were temporaries. Here's a real fix for the miscompilation. Thanks to sabre for pointing out the problem. llvm-svn: 83417 | |||||
| * | Fix a comment typo. | Bob Wilson | 2009-10-06 | 1 | -1/+1 | |
| | | | | | | | Patch by Johnny Chen. llvm-svn: 83407 | |||||
| * | Bugfix for the CommaSeparated option. The original code was adding the whole | Nicolas Geoffray | 2009-10-06 | 1 | -0/+1 | |
| | | | | | | | string at the end of the list, instead of the last comma-separated string. llvm-svn: 83405 | |||||
| * | Update CMake file. | Ted Kremenek | 2009-10-06 | 1 | -1/+0 | |
| | | | | | llvm-svn: 83404 | |||||
| * | Add support to handle debug info attached to an instruction. | Devang Patel | 2009-10-06 | 4 | -6/+25 | |
| | | | | | | | This is not yet enabled. llvm-svn: 83400 | |||||
| * | Instead of printing unnecessary basic block labels as labels in | Dan Gohman | 2009-10-06 | 13 | -39/+14 | |
| | | | | | | | | | | | verbose-asm mode, print comments instead. This eliminates a non-comment difference between verbose-asm mode and non-verbose-asm mode. Also, factor out the relevant code out of all the targets and into target-independent code. llvm-svn: 83392 | |||||
| * | Fix PR5112, a miscompilation on gcc-4.0.3. Patch by Collin Winter! | Jeffrey Yasskin | 2009-10-06 | 1 | -1/+4 | |
| | | | | | llvm-svn: 83391 | |||||
| * | remove predicate simplifier, it never got the last bugs beaten | Chris Lattner | 2009-10-06 | 1 | -2704/+0 | |
| | | | | | | | | out of it, and jump threading, condprop and gvn are now getting most of the benefit. This was approved by Nicholas and Nicolas. llvm-svn: 83390 | |||||
| * | Remove xs1b predicate since it is no longer needed to differentiate betweem | Richard Osborne | 2009-10-06 | 4 | -33/+5 | |
| | | | | | | | xs1a and xs1b. llvm-svn: 83383 | |||||
| * | Remove xs1a subtarget. xs1a is a preproduction device used in | Richard Osborne | 2009-10-06 | 7 | -98/+45 | |
| | | | | | | | | early development boards which is no longer supported in the XMOS toolchain. llvm-svn: 83381 | |||||
| * | Default to the xs1b subtarget | Richard Osborne | 2009-10-06 | 1 | -1/+1 | |
| | | | | | llvm-svn: 83380 | |||||
| * | Introduce and use convenience methods for getting pointer types | Duncan Sands | 2009-10-06 | 21 | -58/+98 | |
| | | | | | | | | where the element is of a basic builtin type. For example, to get an i8* use getInt8PtrTy. llvm-svn: 83379 | |||||
| * | grammar | Jim Grosbach | 2009-10-06 | 1 | -1/+1 | |
| | | | | | llvm-svn: 83378 | |||||
| * | Fix cut-n-pasto. | Devang Patel | 2009-10-06 | 1 | -1/+1 | |
| | | | | | llvm-svn: 83367 | |||||
| * | Update processDebugLoc() to handle requests to process debug info, before ↵ | Devang Patel | 2009-10-06 | 1 | -9/+11 | |
| | | | | | | | and after emitting instructions. llvm-svn: 83364 | |||||
| * | Update processDebugLoc() so that it can be used to process debug info before ↵ | Devang Patel | 2009-10-06 | 17 | -28/+47 | |
| | | | | | | | and after printing an instruction. llvm-svn: 83363 | |||||
| * | Remove dead code. | Devang Patel | 2009-10-06 | 2 | -23/+0 | |
| | | | | | llvm-svn: 83362 | |||||
| * | Add utility routine to set begin and end labels for DbgScopes. | Devang Patel | 2009-10-06 | 2 | -0/+31 | |
| | | | | | | | This will be used by processDebugLoc(). llvm-svn: 83361 | |||||
| * | Remove unintentional function decl. | Devang Patel | 2009-10-06 | 1 | -1/+0 | |
| | | | | | llvm-svn: 83356 | |||||
| * | Add utility routine to collect variable debug info. This is not yet used. | Devang Patel | 2009-10-06 | 2 | -0/+17 | |
| | | | | | llvm-svn: 83355 | |||||
| * | Fix http://llvm.org/PR5116 by rolling back r60822. This passes `make unittests | Jeffrey Yasskin | 2009-10-06 | 1 | -1/+1 | |
| | | | | | | | check-lit` on both x86-64 Linux and x86-32 Darwin. llvm-svn: 83353 | |||||
| * | Set default location for the function if it is not already set. | Devang Patel | 2009-10-06 | 1 | -0/+2 | |
| | | | | | | | This code is not yet enabled. llvm-svn: 83349 | |||||
| * | Existence of a compile unit for input source file is a good indicator to ↵ | Devang Patel | 2009-10-06 | 1 | -10/+1 | |
| | | | | | | | check debug info's presence in a module. llvm-svn: 83348 | |||||
| * | If subprogram die is not available then construct new one. | Devang Patel | 2009-10-05 | 1 | -0/+4 | |
| | | | | | | | This can happen if debug info is processed lazily. llvm-svn: 83347 | |||||
| * | Adjust context for the global variables that are not at file scope, e.g. | Devang Patel | 2009-10-05 | 2 | -2/+22 | |
| | | | | | | | | void foo() { static int bar = 42; } Here, foo's DIE is parent of bar's DIE. llvm-svn: 83344 | |||||
| * | Set address while constructing DIE. | Devang Patel | 2009-10-05 | 1 | -7/+8 | |
| | | | | | llvm-svn: 83343 | |||||
| * | Extend ConstantFolding to understand signed overflow variants | Evan Phoenix | 2009-10-05 | 1 | -0/+24 | |
| | | | | | llvm-svn: 83338 | |||||
| * | In Thumb1, the register scavenger is not always able to use an emergency | Jim Grosbach | 2009-10-05 | 4 | -12/+51 | |
| | | | | | | | | | spill slot. When frame references are via the frame pointer, they will be negative, but Thumb1 load/store instructions only allow positive immediate offsets. Instead, Thumb1 will spill to R12. llvm-svn: 83336 | |||||
| * | Don't treat malloc calls with non-matching prototype as malloc. | Torok Edwin | 2009-10-05 | 1 | -2/+13 | |
| | | | | | | | | Fixes second part of PR5130, miscompilation in FreeBSD kernel, where malloc takes 3 params, and *does* initialize memory. llvm-svn: 83324 | |||||
| * | No newline at end of files. | Edward O'Callaghan | 2009-10-05 | 2 | -2/+2 | |
| | | | | | llvm-svn: 83318 | |||||
| * | Gracefully handle various scopes while recording source line info. | Devang Patel | 2009-10-05 | 1 | -4/+21 | |
| | | | | | llvm-svn: 83317 | |||||
| * | Remove an unnnecessary LLVMContext argument in | Dan Gohman | 2009-10-05 | 5 | -13/+8 | |
| | | | | | | | ConstantFoldLoadThroughGEPConstantExpr. llvm-svn: 83311 | |||||
| * | Use Use::operator= instead of Use::set, for consistency. | Dan Gohman | 2009-10-05 | 1 | -2/+2 | |
| | | | | | llvm-svn: 83310 | |||||
| * | Remove explicit enum integer values. They don't appear to be needed, and | Dan Gohman | 2009-10-05 | 2 | -22/+22 | |
| | | | | | | | they make it less convenient to add new entries. llvm-svn: 83308 | |||||
| * | Add RIP to GR64_NOREX. This fixed a MachineVerifier error when RIP | Dan Gohman | 2009-10-05 | 1 | -5/+5 | |
| | | | | | | | is used in an operand which requires GR64_NOREX. llvm-svn: 83307 | |||||
| * | strength reduce a ton of type equality tests to check the typeid (Through | Chris Lattner | 2009-10-05 | 17 | -119/+121 | |
| | | | | | | | | | the new predicates I added) instead of going through a context and doing a pointer comparison. Besides being cheaper, this allows a smart compiler to turn the if sequence into a switch. llvm-svn: 83297 | |||||
| * | teach the optimizer how to constant fold uadd/usub intrinsics. | Chris Lattner | 2009-10-05 | 1 | -1/+29 | |
| | | | | | llvm-svn: 83295 | |||||
| * | simplify this code a bunch. | Chris Lattner | 2009-10-05 | 1 | -14/+14 | |
| | | | | | llvm-svn: 83294 | |||||

