Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Makes the same change in ppc backend: avoid inserting prologue before debug ↵ | Evan Cheng | 2008-01-31 | 1 | -0/+10 | |
| | | | | | | labels. llvm-svn: 46596 | |||||
* | Avoid unnecessarily casting away const, fixing a FIXME. | Dan Gohman | 2008-01-31 | 3 | -3/+3 | |
| | | | | llvm-svn: 46591 | |||||
* | Avoid unnecessarily casting away const. | Dan Gohman | 2008-01-31 | 1 | -1/+1 | |
| | | | | llvm-svn: 46590 | |||||
* | Fix a typo in a comment. | Dan Gohman | 2008-01-31 | 1 | -1/+1 | |
| | | | | llvm-svn: 46588 | |||||
* | Rename ISD::FLT_ROUNDS to ISD::FLT_ROUNDS_ to avoid conflicting | Dan Gohman | 2008-01-31 | 7 | -12/+12 | |
| | | | | | | with the real FLT_ROUNDS (defined in <float.h>). llvm-svn: 46587 | |||||
* | Also avoid adding callee save code before debug labels. | Evan Cheng | 2008-01-31 | 1 | -1/+9 | |
| | | | | llvm-svn: 46586 | |||||
* | Create a new class, MemOperand, for describing memory references | Dan Gohman | 2008-01-31 | 18 | -155/+477 | |
| | | | | | | | | | | | | | | | | in the backend. Introduce a new SDNode type, MemOperandSDNode, for holding a MemOperand in the SelectionDAG IR, and add a MemOperand list to MachineInstr, and code to manage them. Remove the offset field from SrcValueSDNode; uses of SrcValueSDNode that were using it are all all using MemOperandSDNode now. Also, begin updating some getLoad and getStore calls to use the PseudoSourceValue objects. Most of this was written by Florian Brander, some reorganization and updating to TOT by me. llvm-svn: 46585 | |||||
* | Fixed a bug in MergeValueInAsValue() pointed out by David Greene. Replace ↵ | Evan Cheng | 2008-01-30 | 1 | -3/+3 | |
| | | | | | | val# with previous liverange's. llvm-svn: 46579 | |||||
* | Treat the label for the first @llvm.dbg.stoppoint the same way as the ↵ | Evan Cheng | 2008-01-30 | 2 | -8/+12 | |
| | | | | | | | | | | dbg_func_start label. Make sure nothing else is inserted before them. Note this solution might be somewhat fragile since ISD::LABEL may be used for other purposes. If that ends up to be an issue, we may need to introduce a different node for debug labels. llvm-svn: 46571 | |||||
* | Adjust loop per review feedback. | Dale Johannesen | 2008-01-30 | 1 | -4/+2 | |
| | | | | llvm-svn: 46569 | |||||
* | A semi-gross fix for a debug info issue. When inserting the "function start" ↵ | Evan Cheng | 2008-01-30 | 2 | -9/+28 | |
| | | | | | | label (i.e. first label in the entry block) take care to insert it at the beginning of the block. llvm-svn: 46568 | |||||
* | Supply appropriate arch info to darwin assembler. | Devang Patel | 2008-01-30 | 1 | -0/+16 | |
| | | | | llvm-svn: 46567 | |||||
* | Accept getelementptr starting at GV with all 0 indices as a | Dale Johannesen | 2008-01-30 | 2 | -0/+278 | |
| | | | | | | legitimate way of representing global variable GV in debug info. llvm-svn: 46565 | |||||
* | Always put version numbers at the end because they are optional. | Devang Patel | 2008-01-30 | 2 | -12/+14 | |
| | | | | llvm-svn: 46563 | |||||
* | Even though InsertAtEndOfBasicBlock is an ugly hack it still deserves a ↵ | Evan Cheng | 2008-01-30 | 13 | -39/+23 | |
| | | | | | | | | proper name. Rename it to EmitInstrWithCustomInserter since it does not necessarily insert instruction at the end. llvm-svn: 46562 | |||||
* | Enable exception handling if it is supported. | Devang Patel | 2008-01-30 | 1 | -1/+6 | |
| | | | | llvm-svn: 46560 | |||||
* | Add a new PseudoSourceValue class, which will be used to help track | Dan Gohman | 2008-01-30 | 3 | -0/+96 | |
| | | | | | | | memory reference information in the backend. Most of this was written by Florian Brander, cleanup and updating to TOT by me. llvm-svn: 46556 | |||||
* | Remove a couple more cases of "getNumUses() == 0". No need to walk the linked | Nick Lewycky | 2008-01-30 | 1 | -2/+2 | |
| | | | | | | list just to see if whether the list is empty. llvm-svn: 46555 | |||||
* | Use empty() instead of comparing size() with zero. | Nick Lewycky | 2008-01-30 | 1 | -1/+1 | |
| | | | | llvm-svn: 46554 | |||||
* | Don't DCE FreeInst's. We were using those! Patch from Owen Anderson. | Nick Lewycky | 2008-01-30 | 1 | -1/+1 | |
| | | | | llvm-svn: 46553 | |||||
* | Pointers change size depending upon the target. Remove them to make the test ↵ | Tanya Lattner | 2008-01-30 | 1 | -3/+1 | |
| | | | | | | more stable. llvm-svn: 46548 | |||||
* | Skip over the label which marks the beginning of the function before ↵ | Evan Cheng | 2008-01-30 | 1 | -0/+6 | |
| | | | | | | inserting prologue code. llvm-svn: 46546 | |||||
* | Back out mods to llvmAsmParser, incorrectly committed | Scott Michel | 2008-01-30 | 3 | -4562/+3410 | |
| | | | | llvm-svn: 46545 | |||||
* | More cleanups for CellSPU: | Scott Michel | 2008-01-30 | 18 | -3868/+4951 | |
| | | | | | | | | | - Expand tabs... (poss 80-col violations, will get them later...) - Consolidate logic for SelectDFormAddr and SelectDForm2Addr into a single function, simplifying maintenance. Also reduced custom instruction generation for SPUvecinsert/INSERT_MASK. llvm-svn: 46544 | |||||
* | Make DSE much more aggressive by performing DCE earlier. Update a testcase ↵ | Owen Anderson | 2008-01-30 | 2 | -3/+56 | |
| | | | | | | to reflect this increased aggressiveness. llvm-svn: 46542 | |||||
* | Fix an issue where, under very specific circumstances, memdep could end up ↵ | Owen Anderson | 2008-01-30 | 1 | -2/+2 | |
| | | | | | | | | dereferencing the end of one of its internal maps. llvm-svn: 46541 | |||||
* | Fix a bug where scalarrepl would discard offset if type would match. | Chris Lattner | 2008-01-30 | 2 | -2/+23 | |
| | | | | | | | In practice this can only happen on code with already undefined behavior, but this is still a good thing to handle correctly. llvm-svn: 46539 | |||||
* | Factor the addressing mode and the load/store VT out of LoadSDNode | Dan Gohman | 2008-01-30 | 15 | -161/+145 | |
| | | | | | | | | and StoreSDNode into their common base class LSBaseSDNode. Member functions getLoadedVT and getStoredVT are replaced with the common getMemoryVT to simplify code that will handle both loads and stores. llvm-svn: 46538 | |||||
* | Work in progress. This patch *fixes* x86-64 calls which are modelled as ↵ | Evan Cheng | 2008-01-29 | 6 | -96/+283 | |
| | | | | | | | | StructRet but really should be return in registers, e.g. _Complex long double, some 128-bit aggregates. This is a short term solution that is necessary only because llvm, for now, cannot model i128 nor call's with multiple results. Status: This only works for direct calls, and only the caller side is done. Disabled for now. llvm-svn: 46527 | |||||
* | Update this test case. | Evan Cheng | 2008-01-29 | 1 | -2/+10 | |
| | | | | llvm-svn: 46526 | |||||
* | When expanding an operand, it's not the result value | Duncan Sands | 2008-01-29 | 1 | -2/+2 | |
| | | | | | | | | | | | type that matters but the operand type. This fixes 2008-01-08-IllegalCMP.ll which crashed with the new legalize infrastructure because SETCC with result type i8 and operand type i64 was being custom expanded by the X86 backend. With this fix, the gcc build gets as far as the first libcall. llvm-svn: 46525 | |||||
* | Don't let globalopt hack on volatile loads or stores. | Chris Lattner | 2008-01-29 | 2 | -1/+13 | |
| | | | | llvm-svn: 46523 | |||||
* | Altered ctor for APSInt to accept an optional "isUnsigned" flag. Default | Ted Kremenek | 2008-01-29 | 1 | -1/+2 | |
| | | | | | | behavior is unchanged. llvm-svn: 46521 | |||||
* | Use empty() instead of comparing size() with zero. | Dan Gohman | 2008-01-29 | 17 | -22/+22 | |
| | | | | llvm-svn: 46514 | |||||
* | Fix a typo in a comment. | Dan Gohman | 2008-01-29 | 1 | -1/+1 | |
| | | | | llvm-svn: 46513 | |||||
* | Update this file for 2.0 syntax. | Dan Gohman | 2008-01-29 | 1 | -9/+17 | |
| | | | | llvm-svn: 46512 | |||||
* | Add comments describing what the loop depth values mean. Also, make a | Dan Gohman | 2008-01-29 | 1 | -4/+9 | |
| | | | | | | minor simplification to the loop depth calculation code. llvm-svn: 46511 | |||||
* | Fix 80-col violations. | Dan Gohman | 2008-01-29 | 3 | -10/+17 | |
| | | | | llvm-svn: 46510 | |||||
* | Remove top-level const qualifiers from casts, avoiding associated | Dan Gohman | 2008-01-29 | 1 | -10/+10 | |
| | | | | | | compiler warnings. llvm-svn: 46509 | |||||
* | Fix a typo in a comment. | Dan Gohman | 2008-01-29 | 1 | -1/+0 | |
| | | | | llvm-svn: 46508 | |||||
* | Fix a typo in a comment. | Dan Gohman | 2008-01-29 | 1 | -1/+1 | |
| | | | | llvm-svn: 46507 | |||||
* | Add explicit keywords. | Dan Gohman | 2008-01-29 | 4 | -6/+6 | |
| | | | | llvm-svn: 46506 | |||||
* | llvm.sqrt(-0.0) is defined. | Chris Lattner | 2008-01-29 | 1 | -1/+3 | |
| | | | | llvm-svn: 46500 | |||||
* | eliminate additions of 0.0 when they are obviously dead. This has to be ↵ | Chris Lattner | 2008-01-29 | 2 | -0/+62 | |
| | | | | | | | | careful to avoid turning -0.0 + 0.0 -> -0.0 which is incorrect. llvm-svn: 46499 | |||||
* | Add a testcase for eliminating memcpy's at the end of functions. Forgot to ↵ | Owen Anderson | 2008-01-29 | 1 | -0/+52 | |
| | | | | | | commit this with my last commit. llvm-svn: 46497 | |||||
* | Add target triples to these so they don't fail on linux. | Chris Lattner | 2008-01-29 | 2 | -0/+4 | |
| | | | | llvm-svn: 46496 | |||||
* | Use getPreferredAlignmentLog or getPreferredAlignment | Duncan Sands | 2008-01-29 | 7 | -20/+32 | |
| | | | | | | | to get the alignment of global variables, rather than using hand-made versions. llvm-svn: 46495 | |||||
* | Add support for eliminating memcpy's at the end of functions. Also fix some ↵ | Owen Anderson | 2008-01-29 | 1 | -26/+63 | |
| | | | | | | | | errors I noticed in the handling of eliminating stores to byval arguments. llvm-svn: 46494 | |||||
* | This would be better done as an executable test. | Duncan Sands | 2008-01-29 | 1 | -23/+0 | |
| | | | | llvm-svn: 46493 | |||||
* | After recent changes we fail to optimize this test | Duncan Sands | 2008-01-29 | 1 | -19/+0 | |
| | | | | | | | sufficiently to have it pass. I'm removing it from the testsuite and adding it to PR452 instead. llvm-svn: 46492 |