summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Expand arith on machines without carry flagsAndrew Lenharth2008-10-071-9/+33
| | | | llvm-svn: 57243
* Note that ADDC and company don't actually expand yet (missing in legalizeAndrew Lenharth2008-10-072-2/+45
| | | | llvm-svn: 57226
* Mark negative-zero-to-int conversion as Inexact,Dale Johannesen2008-10-071-1/+2
| | | | | | | | | since -0.0 can't be represented as an int. This prevents llvm from reducing -0.0 to a load-and-convert of int 0. Fixes ieee.exp/mzero[2356].c in gcc testsuite. llvm-svn: 57224
* Correctly handle calls with no return values. This fixesDan Gohman2008-10-071-1/+1
| | | | | | 2006-01-23-UnionInit on x86-64 when inlining is not enabled. llvm-svn: 57223
* Fix typo, fix PR 2865.Devang Patel2008-10-061-2/+2
| | | | llvm-svn: 57221
* Be more precise about which conversions of NaNsDale Johannesen2008-10-061-3/+18
| | | | | | | | are Inexact. (These are not Inexact as defined by IEEE754, but that seems like a reasonable way to abstract what happens: information is lost.) llvm-svn: 57218
* Fix PR2850 and PR2863. Only generate movddup for 128-bit SSE vector shuffles.Evan Cheng2008-10-061-0/+1
| | | | llvm-svn: 57210
* Temporarily revert functionality change from my previous patch;Dale Johannesen2008-10-061-2/+1
| | | | | | it is too aggressive. llvm-svn: 57203
* Remove interfaces implemented by dead pass from the list of available passes.Devang Patel2008-10-061-7/+17
| | | | | | Patch By Matthijs Kooijman. llvm-svn: 57202
* Mark shortening NaN conversions as Inexact. PR 2856.Dale Johannesen2008-10-061-6/+9
| | | | | | Improve description of unsupported formats. llvm-svn: 57185
* It is possible that all functions in one module are not being Devang Patel2008-10-061-5/+2
| | | | | | optimized for size. Set OptForSize for each function separately. llvm-svn: 57182
* Don't dereference the end() iterator. Thanks toDan Gohman2008-10-061-1/+1
| | | | | | ENABLE_EXPENSIVE_CHECKS for finding this. llvm-svn: 57181
* Remove unncessary isDeclaration() checks.Devang Patel2008-10-063-3/+3
| | | | llvm-svn: 57179
* Allow scalarrepl to treat an all-zero GEP just as bitcast.Matthijs Kooijman2008-10-061-14/+28
| | | | | | | This includes not marking a GEP involving a vector as unsafe, but only when it has all zero indices. This allows scalarrepl to work in a few more cases. llvm-svn: 57177
* reorder #include order, patch by Kenneth Boyd!Chris Lattner2008-10-061-4/+2
| | | | llvm-svn: 57148
* Add #include to get alloca, patch by Kenneth Boyd!Chris Lattner2008-10-061-0/+1
| | | | llvm-svn: 57147
* fix an incorrect and extremely confusing error messageChris Lattner2008-10-051-1/+1
| | | | llvm-svn: 57123
* make the autoupgrade code for ret attributes dramatically simpler Chris Lattner2008-10-051-30/+22
| | | | | | and actually work. We can now read the llvm 2.3 bc file from PR2849 llvm-svn: 57122
* regenerateNuno Lopes2008-10-052-209/+233
| | | | llvm-svn: 57114
* clean ArgTypeListI production: free the PATypeHolderNuno Lopes2008-10-051-2/+14
| | | | llvm-svn: 57113
* Emit type-correct constant null. Also fix a typo.Anton Korobeynikov2008-10-051-7/+3
| | | | | | Patch by Robert G. Jakabosky! llvm-svn: 57110
* Fix weird think-o and unbreak build on all gcc-3.4.x-based platforms (e.g. ↵Anton Korobeynikov2008-10-053-98/+91
| | | | | | mingw) llvm-svn: 57106
* this case is matched now.Chris Lattner2008-10-051-9/+1
| | | | llvm-svn: 57096
* rewrite bswap matching to be more general, allowing arbitraryChris Lattner2008-10-051-77/+121
| | | | | | | | shifting and masking inside a bswap expr. This allows it to handle the cases from PR2842, which involve the intermediate 'or' expressions being shifted, not just the input value. llvm-svn: 57095
* fix a bug where the bswap matcher could match a case involvingChris Lattner2008-10-051-1/+4
| | | | | | ashr. It should only apply to lshr. llvm-svn: 57089
* wrap some long lines and expand i32 mul's to libcalls, inspired by aChris Lattner2008-10-041-4/+12
| | | | | | patch by Mikael Lepisto! llvm-svn: 57077
* CMake: Reflected changes on source file structure. New plugin supportOscar Fuentes2008-10-041-0/+2
| | | | | | for llvmc2 incomplete. llvm-svn: 57076
* Ignore loads from and stores to local memory (i.e. allocas)Duncan Sands2008-10-041-9/+26
| | | | | | | | when deciding whether to mark a function readnone/readonly. Since the pass is currently run before SROA, this may be quite helpful. Requested by Chris on IRC. llvm-svn: 57050
* Allow the construction of SCEVs with SCEVCouldNotCompute operands, byNick Lewycky2008-10-041-0/+67
| | | | | | implementing folding. Fixes PR2857. llvm-svn: 57049
* Revert r56675 - it breaks unwinding runtime everywhere.Anton Korobeynikov2008-10-041-18/+8
| | | | llvm-svn: 57048
* Add implementations for sys::Memory::setWritable and ↵Argyrios Kyrtzidis2008-10-041-0/+8
| | | | | | sys::Memory::setExecutable on Win32 platform. llvm-svn: 57047
* Fix compilation error on MSVC.Argyrios Kyrtzidis2008-10-041-1/+1
| | | | llvm-svn: 57046
* Fix fast-isel's handling of atomic instructions. They mayDan Gohman2008-10-041-1/+4
| | | | | | | | expand to multiple basic blocks, in which case fast-isel needs to informed of which block to use as it resumes inserting instructions. llvm-svn: 57040
* Fix a bug in the local allocator's liveness computation where itDan Gohman2008-10-041-3/+5
| | | | | | | | was setting kill flags on tied uses in two-address instructions. The kill flags were causing the allocator to think it could allocate the use and its tied def in different registers. llvm-svn: 57039
* Make atomic Swap work, 64-bit on x86-32.Dale Johannesen2008-10-034-11/+33
| | | | | | Make it all work in non-pic mode. llvm-svn: 57034
* Clean up some multiple-return-value code that is no longerDan Gohman2008-10-031-5/+1
| | | | | | applicable. llvm-svn: 57033
* Fix function attribute verification check.Devang Patel2008-10-031-6/+5
| | | | | | Thanks Duncan! llvm-svn: 57029
* Pass MemOperand through for 64-bit atomics on 32-bit,Dale Johannesen2008-10-034-9/+27
| | | | | | | incidentally making the case where the memop is a pointer deref work. Fix cmp-and-swap regression. llvm-svn: 57027
* Nick Lewycky's patch.Devang Patel2008-10-031-1/+1
| | | | | | While hosting instruction check PHI node. llvm-svn: 57025
* Use -1ULL instead of uint64_t(-1), at Anton's suggestion.Dan Gohman2008-10-031-2/+2
| | | | llvm-svn: 57021
* Verify function attributes.Devang Patel2008-10-031-1/+5
| | | | llvm-svn: 57020
* Fix typos pointed out by Duncan. Also untabify these files.Evan Cheng2008-10-033-15/+15
| | | | llvm-svn: 57018
* Unbreak build.Daniel Dunbar2008-10-031-18/+18
| | | | llvm-svn: 57017
* Avoid creating two TargetLowering objects for each target.Dan Gohman2008-10-0311-33/+22
| | | | | | | | | | | | Instead, just create one, and make sure everything that needs it can access it. Previously most of the SelectionDAGISel subclasses all had their own TargetLowering object, which was redundant with the TargetLowering object in the TargetMachine subclasses, except on Sparc, where SparcTargetMachine didn't have a TargetLowering object. Change Sparc to work more like the other targets here. llvm-svn: 57016
* Remove an unused field.Dan Gohman2008-10-031-6/+1
| | | | llvm-svn: 57014
* On Darwin ARM, memory needs special handling to do JIT. This patch expandsJim Grosbach2008-10-034-13/+51
| | | | | | | this handling to work properly for modifying stub functions, relocations back to entry points after JIT compilation, etc.. llvm-svn: 57013
* Indexing off by one resulted in errant encoding of source register forJim Grosbach2008-10-031-1/+1
| | | | | | reg->reg moves. llvm-svn: 57011
* NeedStub/DoesntNeedStub logic was reversed, leading to not using a stubJim Grosbach2008-10-031-4/+4
| | | | | | for global relocations that do need them (libc calls, for example). llvm-svn: 57010
* regenerateNuno Lopes2008-10-033-338/+346
| | | | llvm-svn: 57009
* fix more memleaks in ResolveTypeTo() and ParseGlobalVariable()Nuno Lopes2008-10-031-0/+4
| | | | llvm-svn: 57008
OpenPOWER on IntegriCloud