summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Fix an obvious copy/pasto.Nick Lewycky2008-10-271-4/+4
| | | | llvm-svn: 58231
* For now, don't split live intervals around x87 stack register barriers. ↵Evan Cheng2008-10-276-1/+60
| | | | | | FpGET_ST0_80 must be right after a call instruction (and ADJCALLSTACKUP) so we need to find a way to prevent reload of x87 registers between them. llvm-svn: 58230
* Rewrite all the 'PromoteLocallyUsedAlloca[s]' logic. With the power ofChris Lattner2008-10-271-175/+97
| | | | | | | | | | | | | | | | LargeBlockInfo, we can now dramatically simplify their implementation and speed them up at the same time. Now the code has time proportional to the number of uses of the alloca, not the size of the block. This also eliminates code that tried to batch up different allocas which are used in the same blocks, and eliminates the 'retry list' logic which was baroque and no unneccesary. In addition to being a speedup for crazy cases, this is also a nice cleanup: PromoteMemoryToRegister.cpp | 270 +++++++++++++++----------------------------- 1 file changed, 96 insertions(+), 174 deletions(-) llvm-svn: 58229
* no need to print outputChris Lattner2008-10-271-1/+1
| | | | llvm-svn: 58228
* Add a new LargeBlockInfo helper, which is just a wrapper aroundChris Lattner2008-10-271-57/+123
| | | | | | | | | a trivial dense map. Use this in RewriteSingleStoreAlloca to avoid aggressively rescanning blocks over and over again. This fixes PR2925, speeding up mem2reg on the testcase in that bug from 4.56s to 0.02s in a debug build on my machine. llvm-svn: 58227
* mention getresult -> extractvalue (PR2935)Chris Lattner2008-10-271-0/+4
| | | | llvm-svn: 58226
* Increase default setting of tail-merge-threshold toDale Johannesen2008-10-271-1/+1
| | | | | | 150, based on llvm-test measurements. llvm-svn: 58225
* Remove -check-exit-code from bugpoint. This is subsumed by -append-exit-code.Nick Lewycky2008-10-263-29/+5
| | | | | | Note that -check-exit-code was on by default while -append-exit-code is not. llvm-svn: 58221
* fix PR2953, an off-by-one error handling formatted i/o. Chris Lattner2008-10-261-1/+1
| | | | | | Thanks to Török Edwin for the awesome reduced testcase. llvm-svn: 58199
* remove eh output from this test.Chris Lattner2008-10-261-6/+6
| | | | llvm-svn: 58196
* Add a default constructor to AsmWriterOperand to make VS2008sp1 happy. ↵Cedric Venet2008-10-261-0/+3
| | | | | | (AsmWriterOperand is used in a std::pair, and VS need to generate the default constructor of this pair). llvm-svn: 58185
* Do not shrink wrap live interval in a mbb if it's livein any of its ↵Evan Cheng2008-10-262-6/+57
| | | | | | successor blocks. The mbb can be revisited again after all of the successors are processed. llvm-svn: 58184
* Return something (i.e. NULL) from an unimplemented virtual function.Oscar Fuentes2008-10-261-0/+1
| | | | llvm-svn: 58183
* CMake: If we have `clang' under the `tools/' subdirectory, add it toOscar Fuentes2008-10-261-0/+4
| | | | | | the build. llvm-svn: 58179
* CMake: Support for LLVM_USED_LIBS variable, which is the cmakeOscar Fuentes2008-10-261-0/+5
| | | | | | counterpart of USED_LIBS. llvm-svn: 58178
* CMake: Removed unnecessary macro definitions. They are defined inOscar Fuentes2008-10-261-6/+0
| | | | | | config.h llvm-svn: 58177
* CMake: GetTargetTriple: new module for determining the targetOscar Fuentes2008-10-264-11/+30
| | | | | | triple. Assign to LLVM_HOSTTRIPLE so it figures in config.h. llvm-svn: 58176
* Fix type-o in ExprMapKeyType::operator ==(). The "&&" was missing.Bill Wendling2008-10-261-1/+1
| | | | | | Patch by Frits van Bommel! llvm-svn: 58175
* Handle cases where there aren't uses in the barrier mbb.Evan Cheng2008-10-252-1/+61
| | | | llvm-svn: 58174
* Add storeRegTo{StackSlot|Addr} and loadRegFrom{StackSlot|Addr} descriptions.Evan Cheng2008-10-251-0/+17
| | | | llvm-svn: 58164
* Make comments and code for QuietWarnings and QuietErrorsDan Gohman2008-10-252-3/+3
| | | | | | actually correspond to what their names suggest. llvm-svn: 58146
* SDNodes may have at most one Flag result. Update this commentDan Gohman2008-10-251-2/+2
| | | | | | to reflect that. llvm-svn: 58145
* Move the code that adds the DeadMachineInstructionElimPass fromDan Gohman2008-10-252-4/+5
| | | | | | | | | | | | target-independent code to target-specific code. This prevents it from running on targets that aren't using fast-isel. In addition to saving compile time, this addresses the problem that not all targets are prepared for it. In order to use this pass, all instructions must declare all their fixed uses and defs of physical registers. llvm-svn: 58144
* Related to PR2911, reject as invalid non-pointer GC roots.Gordon Henriksen2008-10-252-2/+14
| | | | llvm-svn: 58143
* Support for allocation of TLS variables in the JIT. Allocation of a globalNicolas Geoffray2008-10-257-14/+72
| | | | | | | | variable is moved to the execution engine. The JIT calls the TargetJITInfo to allocate thread local storage. Currently, only linux/x86 knows how to allocate thread local global variables. llvm-svn: 58142
* Generate code for TLS instructions.Nicolas Geoffray2008-10-253-4/+27
| | | | llvm-svn: 58141
* Added MIPS release notes.Bruno Cardoso Lopes2008-10-251-1/+20
| | | | llvm-svn: 58139
* CMake: Directed bug reports to llvmbugs.Oscar Fuentes2008-10-251-2/+1
| | | | llvm-svn: 58134
* CMake: lib/Target/ARM/AsmPrinter/CMakeLists.txt added.Oscar Fuentes2008-10-251-0/+9
| | | | llvm-svn: 58133
* CMake: MSVC++ no longer uses a special configuration method.Oscar Fuentes2008-10-254-30/+52
| | | | llvm-svn: 58132
* CMake: Sync'ed DataTypes.h.cmake with DataTypes.h.in.Oscar Fuentes2008-10-251-0/+13
| | | | llvm-svn: 58131
* CMake: Cross-platform support for using pre-generated llvmAsmParser.cpp and ↵Oscar Fuentes2008-10-251-25/+18
| | | | | | llvmAsmParser.h. llvm-svn: 58130
* If val# def is ~0U, meaning it's defined by a PHI, and it's previously ↵Evan Cheng2008-10-252-9/+35
| | | | | | split, spill before the barrier because it's impossible to determine if all the defs are spilled in the same spill slot. llvm-svn: 58129
* Mark MFCR as reading all condition code registers.Dale Johannesen2008-10-241-0/+2
| | | | | | | Prevents some more overzealous deletions (mostly in AltiVec code). llvm-svn: 58121
* Rewrite logic to figure out whether LR needs toDale Johannesen2008-10-242-32/+34
| | | | | | | | be saved/restored in the prolog/epilog. We need to do this iff something in the function stores into it. llvm-svn: 58116
* Be kind to non-x86 hosts.Dale Johannesen2008-10-242-2/+2
| | | | llvm-svn: 58113
* move the note to the correct READMETorok Edwin2008-10-242-95/+97
| | | | llvm-svn: 58104
* add note about va_arg code on x86 and x86-64Torok Edwin2008-10-241-0/+94
| | | | llvm-svn: 58103
* Fix a pasto.Evan Cheng2008-10-241-1/+1
| | | | llvm-svn: 58102
* Fix translateX86CC: if SetCCOpcode is SETULE andDuncan Sands2008-10-242-13/+27
| | | | | | | | | | | | | | LHS is a foldable load, then LHS and RHS are swapped and SetCCOpcode is changed to SETUGT. But the later code is expecting operands to be the wrong way round for SETUGT, but they are not in this case, resulting in an inverted compare. The solution is to move the load normalization before the correction for SETUGT. This bug was tickled by LegalizeTypes which happened to legalize the testcase slightly differently to LegalizeDAG. llvm-svn: 58092
* Modify the cmake build system so that if it doesn't find bison, it will use ↵Cedric Venet2008-10-242-6/+30
| | | | | | the pregenerated file in from the svn (.cvs). Work only for windows for the moment. Tested on Vista64 with MSVC2008express. llvm-svn: 58090
* Add a file to VC++ proj.Steve Naroff2008-10-241-13/+17
| | | | llvm-svn: 58089
* Don't try to create a mask when we don't need one. Fixes a crash.Nick Lewycky2008-10-242-4/+14
| | | | llvm-svn: 58075
* Fix a end() dereference; remove an abort() that wasn't meant to be left in.Evan Cheng2008-10-241-5/+4
| | | | llvm-svn: 58072
* Add value range analyzing of Add and Sub.Nick Lewycky2008-10-241-9/+73
| | | | | | Understand that mul %x, 1 = %x. llvm-svn: 58069
* Avoid splitting an interval multiple times; avoid splitting ↵Evan Cheng2008-10-246-51/+195
| | | | | | re-materializable val# (for now). llvm-svn: 58068
* Fix constant-offset emission for x86-64 absolute addresses. ThisDan Gohman2008-10-243-11/+58
| | | | | | | fixes a bunch of test-suite JIT failures on x86-64 in -relocation-model=static mode. llvm-svn: 58066
* Add file to VC++ project.Steve Naroff2008-10-241-13/+17
| | | | llvm-svn: 58060
* Initialize uninitialized variable.Dale Johannesen2008-10-241-1/+1
| | | | llvm-svn: 58057
* Added raw_fd_ostream::close().Ted Kremenek2008-10-232-3/+17
| | | | llvm-svn: 58052
OpenPOWER on IntegriCloud