aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* DAGCombine (shl (anyext x, c)) to (anyext (shl x, c)) if the high bitsDan Gohman2010-07-232-1/+39
| | | | | | | are not demanded. This often allows the anyext to be folded away. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109242 91177308-0d34-0410-b5e6-96231b3b80d8
* Make SDNode::dump() print a newline at the end.Dan Gohman2010-07-231-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109234 91177308-0d34-0410-b5e6-96231b3b80d8
* fix constness warningsGabor Greif2010-07-232-2/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109224 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert r109102 for now as it's causing JIT miscompilations.Eric Christopher2010-07-231-1/+1
| | | | | | | I'll try to track down why a bit later. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109223 91177308-0d34-0410-b5e6-96231b3b80d8
* do not (implicitly) dereference iterator many times, cache it insteadGabor Greif2010-07-231-2/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109222 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert 109220.Eric Christopher2010-07-231-0/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109221 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplifying use_iterators by dereferencingGabor Greif2010-07-231-24/+0
| | | | | | | | | | | | | | | is not a good idea. The codebase does not depend in this any more, and it may introduce hidden runtime cost. If you get compile errors, please dereference your iterator before passing to cast<> (and friends). Also: please consider caching the result of operator* and reusing that instead of dereferencing many times. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109220 91177308-0d34-0410-b5e6-96231b3b80d8
* StringRef'icate.Mikhail Glushenkov2010-07-231-6/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109217 91177308-0d34-0410-b5e6-96231b3b80d8
* Formatting.Mikhail Glushenkov2010-07-231-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109216 91177308-0d34-0410-b5e6-96231b3b80d8
* Get rid of exceptions in llvmc.Mikhail Glushenkov2010-07-2313-255/+358
| | | | | | llvmc can be now compiled with llvm-gcc on Windows. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109215 91177308-0d34-0410-b5e6-96231b3b80d8
* give StringMap a new ctor which allows you to initialize itChris Lattner2010-07-231-0/+4
| | | | | | | | | | | with an existing allocator. The interesting use case of this is that it allows "StringMap<whatever, BumpPtrAllocator&>" for when you want to allocate out of a preexisting bump pointer allocator owned by someone else. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109213 91177308-0d34-0410-b5e6-96231b3b80d8
* modernize stringset interfaceChris Lattner2010-07-231-4/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109212 91177308-0d34-0410-b5e6-96231b3b80d8
* Declare CLMUL as a subtarget featureBruno Cardoso Lopes2010-07-231-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109207 91177308-0d34-0410-b5e6-96231b3b80d8
* Add x86 CLMUL (Carry-less multiplication) cpu featureBruno Cardoso Lopes2010-07-233-3/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109206 91177308-0d34-0410-b5e6-96231b3b80d8
* 80-col.Eric Christopher2010-07-231-8/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109205 91177308-0d34-0410-b5e6-96231b3b80d8
* Add complete assembler support for FMA3 instructions, with descriptions and ↵Bruno Cardoso Lopes2010-07-235-0/+1420
| | | | | | encodings taken from the AVX manual git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109204 91177308-0d34-0410-b5e6-96231b3b80d8
* The only supported calling convention for X86-64 usesDale Johannesen2010-07-231-1/+14
| | | | | | | | | | | | | | | | | SSE, so we can't return floating point values if this is disabled. Detect this error for clang. With SSE1 only, f64 is a problem; it can be done, but neither llvm-gcc nor clang has ever generated correct code for it. Since nobody noticed this I think it's OK to treat it as an error for now. This also handles SSE-sized vectors of floating point. 8207686, 8204109. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109201 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix some AVX instructions which didnt had HasAVX prefix. And also a problem ↵Bruno Cardoso Lopes2010-07-231-6/+8
| | | | | | with PINSRW, which was totally wrong because of a typo I introduced previously git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109198 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an explicit -sdk option to xcrun command.Bob Wilson2010-07-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109196 91177308-0d34-0410-b5e6-96231b3b80d8
* Warnings patrol.Eric Christopher2010-07-222-6/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109174 91177308-0d34-0410-b5e6-96231b3b80d8
* missed a use of SizeRequired.Chris Lattner2010-07-221-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109172 91177308-0d34-0410-b5e6-96231b3b80d8
* eliminate the TargetInstrInfo::GetInstSizeInBytes hook. Chris Lattner2010-07-225-12/+5
| | | | | | | | | ARM/PPC/MSP430-specific code (which are the only targets that implement the hook) can directly reference their target-specific instrinfo classes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109171 91177308-0d34-0410-b5e6-96231b3b80d8
* remove the dwarf sizing stuff which is now dead, it wasChris Lattner2010-07-222-456/+0
| | | | | | | | "yet another" copy of the dwarf EH emission code that was copied, pasted and slightly hacked up. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109169 91177308-0d34-0410-b5e6-96231b3b80d8
* Add remaining AVX instructions (most of them dealing with GR64 destinations. ↵Bruno Cardoso Lopes2010-07-222-5/+62
| | | | | | This complete the assembler support for the general AVX ISA. But we still miss instructions from FMA3 and CLMUL specific feature flags, which are now the next step git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109168 91177308-0d34-0410-b5e6-96231b3b80d8
* remove the JIT "NeedsExactSize" feature and supporting logic.Chris Lattner2010-07-226-94/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109167 91177308-0d34-0410-b5e6-96231b3b80d8
* switch a private implementation of GetFunctionSizeInBytes.Chris Lattner2010-07-221-1/+14
| | | | | | | | | | This is probably not the best way to implement "Force LR to be spilled if the Thumb function size is > 2048." do this, it should use the branch shortening infrastructure, but I'm just preserving functionality here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109165 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Eric Christopher2010-07-221-1/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109164 91177308-0d34-0410-b5e6-96231b3b80d8
* Try to work around the relative install-sh path problem.Eric Christopher2010-07-221-0/+7
| | | | | | | Patch from Eli. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109163 91177308-0d34-0410-b5e6-96231b3b80d8
* X86MCInstLower now depends on AsmPrinter being around.Chris Lattner2010-07-222-32/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109154 91177308-0d34-0410-b5e6-96231b3b80d8
* instead of migrating it to the MC instruction encoder, justChris Lattner2010-07-224-578/+100
| | | | | | | | | | | | | | | | rip out the implementation of X86InstrInfo::GetInstSizeInBytes. The code being ripped out just implemented a copy and hacked up version of the (old) instruction encoder, and is buggy and terrible in other ways. Since "GetInstSizeInBytes" is really only there to support the JIT's "NeedsExactSize" hook (which noone is using), just rip out the code. I will rip out the NeedsExactSize hook next. This resolves rdar://7617809 - switch X86InstrInfo::GetInstSizeInBytes to use X86MCCodeEmitter git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109149 91177308-0d34-0410-b5e6-96231b3b80d8
* Speculatively revert 109117Devang Patel2010-07-221-27/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109132 91177308-0d34-0410-b5e6-96231b3b80d8
* ARMv4 JIT forgets to set the lr register when making a indirect function ↵Xerxes Ranby2010-07-222-1/+14
| | | | | | call. Fixes PR7608 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109125 91177308-0d34-0410-b5e6-96231b3b80d8
* keep in 80 colsGabor Greif2010-07-222-5/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109122 91177308-0d34-0410-b5e6-96231b3b80d8
* Map MDNode correctly. Devang Patel2010-07-221-6/+27
| | | | | | | A non function local MDNode can have an operand which is cloned by MapValue(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109117 91177308-0d34-0410-b5e6-96231b3b80d8
* add dyn_cast_or_null tests, exclude invalid dyn_cast testGabor Greif2010-07-221-8/+25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109111 91177308-0d34-0410-b5e6-96231b3b80d8
* tidy upGabor Greif2010-07-221-13/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109110 91177308-0d34-0410-b5e6-96231b3b80d8
* add dyn_cast tests and beef up others a bitGabor Greif2010-07-221-5/+34
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109109 91177308-0d34-0410-b5e6-96231b3b80d8
* fit in 80 columnsGabor Greif2010-07-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109108 91177308-0d34-0410-b5e6-96231b3b80d8
* use cascading operator-> featureGabor Greif2010-07-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109104 91177308-0d34-0410-b5e6-96231b3b80d8
* mass elimination of reliance on automatic iterator dereferencingGabor Greif2010-07-2212-18/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109103 91177308-0d34-0410-b5e6-96231b3b80d8
* Increase the max physreg size. Patch by Pekka Jääskeläinen.Duncan Sands2010-07-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109102 91177308-0d34-0410-b5e6-96231b3b80d8
* simplifyGabor Greif2010-07-221-3/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109101 91177308-0d34-0410-b5e6-96231b3b80d8
* do not access arguments via low-level interface, do not multiply dereference ↵Gabor Greif2010-07-221-17/+19
| | | | | | use_iterators git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109100 91177308-0d34-0410-b5e6-96231b3b80d8
* pass dereferenced iterator to dyn_castGabor Greif2010-07-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109099 91177308-0d34-0410-b5e6-96231b3b80d8
* pass dereferenced iterator to dyn_castGabor Greif2010-07-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109098 91177308-0d34-0410-b5e6-96231b3b80d8
* use -> instead of (*).Gabor Greif2010-07-221-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109094 91177308-0d34-0410-b5e6-96231b3b80d8
* cache dereferenced iteratorGabor Greif2010-07-221-3/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109093 91177308-0d34-0410-b5e6-96231b3b80d8
* undo 80 column trespassing I causedGabor Greif2010-07-229-27/+39
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109092 91177308-0d34-0410-b5e6-96231b3b80d8
* Mark an assert-only variable as used.Chandler Carruth2010-07-221-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109091 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the generated file name for CMake.Chandler Carruth2010-07-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109090 91177308-0d34-0410-b5e6-96231b3b80d8