summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Correctly clone FlaggedNodes.Dan Gohman2008-03-101-2/+1
| | | | llvm-svn: 48196
* Initialize ArgTypes directly instead of manually copying in the elements.Dan Gohman2008-03-101-4/+1
| | | | llvm-svn: 48195
* APInt-ify this.Dan Gohman2008-03-101-3/+4
| | | | llvm-svn: 48194
* Remove an unnecessary #includeDan Gohman2008-03-101-1/+0
| | | | llvm-svn: 48193
* Don't emit FP_REG_KILL into a block that just returns. NothingChris Lattner2008-03-101-6/+19
| | | | | | can be live out of the block anyway, so it isn't needed. llvm-svn: 48192
* Implement more support for fp-to-i128 and i128-to-fp conversions. Dan Gohman2008-03-102-80/+133
| | | | llvm-svn: 48189
* Disable prolog code that aligns the stack when aDale Johannesen2008-03-101-7/+17
| | | | | | | | | | | | | | local object of >16 byte alignment exists. It does not work and getting it to work is not trivial, as explained in the comment. This fixes all the remaining ppc32 failures in the struct-layout-1 part of the gcc testsuite. (gcc does not support this either, and the only way to get such an object is with __attribute__((aligned)) or generic vectors; it can't be done in a standard-conforming program, or with Altivec. So I think disabling it is OK.) llvm-svn: 48188
* Change the "enable/disable" mechanism so that we can enable PPC registerBill Wendling2008-03-103-58/+77
| | | | | | scavenging for 32-bit and 64-bit separately. llvm-svn: 48186
* Add sanity checksAnton Korobeynikov2008-03-101-0/+10
| | | | llvm-svn: 48184
* Typo: 'function' => 'alias'Anton Korobeynikov2008-03-101-3/+2
| | | | llvm-svn: 48183
* Syntactic sugar'ify stuff :)Anton Korobeynikov2008-03-101-15/+15
| | | | llvm-svn: 48182
* Always run 'make check' :) Fix fallout from prev. commit: query for possibleAnton Korobeynikov2008-03-101-1/+1
| | | | | | alias destination only if we don't have anything to link to llvm-svn: 48181
* Make error messages to have common styleAnton Korobeynikov2008-03-101-18/+12
| | | | llvm-svn: 48180
* Properly link globals with aliasesAnton Korobeynikov2008-03-101-20/+41
| | | | llvm-svn: 48179
* Remove the LinkGlobal weirderness in common linking phase.Anton Korobeynikov2008-03-101-33/+44
| | | | llvm-svn: 48177
* TypoAnton Korobeynikov2008-03-101-1/+1
| | | | llvm-svn: 48176
* If the register allocator ran out of registers, just abort for now.Evan Cheng2008-03-101-1/+7
| | | | llvm-svn: 48175
* Eliminate the FP_GET_ST0/FP_SET_ST0 target-specific dag nodes, just lower to Chris Lattner2008-03-104-84/+42
| | | | | | copyfromreg/copytoreg instead. llvm-svn: 48174
* Fix mul expansion to check the correct number of bits forDan Gohman2008-03-101-4/+3
| | | | | | | zero extension when checking if an unsigned multiply is safe. llvm-svn: 48171
* Somewhat better solution.Evan Cheng2008-03-101-3/+4
| | | | llvm-svn: 48170
* Default ISD::PREFETCH to expand.Evan Cheng2008-03-109-9/+5
| | | | llvm-svn: 48169
* Revert 48125, 48126, and 48130 for now to unbreak some x86-64 tests.Evan Cheng2008-03-1010-82/+56
| | | | llvm-svn: 48167
* fix 80 col violations.Chris Lattner2008-03-101-8/+8
| | | | llvm-svn: 48166
* Restore optimization that merges blocks when inline function Devang Patel2008-03-101-6/+24
| | | | | | has single return value. llvm-svn: 48162
* SimplifyDevang Patel2008-03-101-18/+15
| | | | llvm-svn: 48161
* simplifyDevang Patel2008-03-101-2/+4
| | | | llvm-svn: 48160
* Stylistic modifications. No functionality changes.Nicolas Geoffray2008-03-101-44/+39
| | | | llvm-svn: 48158
* Integer comparison tests for CellSPU.Scott Michel2008-03-104-75/+182
| | | | llvm-svn: 48152
* Fix formatting.Duncan Sands2008-03-101-2/+2
| | | | llvm-svn: 48151
* Give TargetLowering::getSetCCResultType() a parameter so that ISD::SETCC'sScott Michel2008-03-1017-55/+111
| | | | | | | | return ValueType can depend its operands' ValueType. This is a cosmetic change, no functionality impacted. llvm-svn: 48145
* Add description of individual bits in CR. This fix PR1765.Nicolas Geoffray2008-03-105-38/+152
| | | | llvm-svn: 48143
* Minor cleanup. No functionality change.Bill Wendling2008-03-101-6/+8
| | | | llvm-svn: 48142
* - Fix a subtle bug in RemoveCopyByCommutingDef. ALR is the live range where ↵Evan Cheng2008-03-102-7/+56
| | | | | | | | | | | | | | | | | | the source is defined; BLR is the live range which is defined by the copy. If ALR and BLR overlaps and end of BLR extends beyond end of ALR, e.g. A = or A, B ... B = A ... C = A<kill> ... = B then do not add kills of A to the newly created B interval. - Also fix some kill info update bug. llvm-svn: 48141
* DohEvan Cheng2008-03-101-1/+2
| | | | llvm-svn: 48140
* Move StrongPHIElimination after live interval analysis. This will make ↵Owen Anderson2008-03-101-36/+27
| | | | | | things happier down the road. llvm-svn: 48138
* Avoid creating BUILD_VECTOR of all zero elements of "non-normalized" type ↵Evan Cheng2008-03-101-0/+4
| | | | | | (e.g. v8i16 on x86) after legalizer. Instruction selection does not expect to see them. In all likelihood this can only be an issue in a bugpoint reduced test case. llvm-svn: 48136
* Allow insert_subreg into implicit, target-specific values. Christopher Lamb2008-03-1010-56/+82
| | | | | | | Change insert/extract subreg instructions to be able to be used in TableGen patterns. Use the above features to reimplement an x86-64 pseudo instruction as a pattern. llvm-svn: 48130
* Update the .cvs files to match today's asm syntax change.Nick Lewycky2008-03-103-872/+868
| | | | llvm-svn: 48128
* Turn unwind_to into "unwinds to".Nick Lewycky2008-03-107-11/+11
| | | | llvm-svn: 48123
* Increase ISD::ParamFlags to 64 bits. Increase the ByValSizeDale Johannesen2008-03-105-33/+52
| | | | | | | | | | field to 32 bits, thus enabling correct handling of ByVal structs bigger than 0x1ffff. Abstract interface a bit. Fixes gcc.c-torture/execute/pr23135.c and gcc.c-torture/execute/pr28982b.c in gcc testsuite (were ICE'ing on ppc32, quietly producing wrong code on x86-32.) llvm-svn: 48122
* Darwin PPC64 indirect call target goes in X12, not R12. This fixes theseChris Lattner2008-03-091-2/+3
| | | | | | | | two regression tests: test/CodeGen/PowerPC/2007-10-21-LocalRegAllocAssert.ll test/CodeGen/PowerPC/2007-10-21-LocalRegAllocAssert2.ll llvm-svn: 48120
* cell really does support cross-regclass moves, because R3 is in lots of ↵Chris Lattner2008-03-091-4/+9
| | | | | | different regclasses, and the code is not consistent when it comes to value tracking. llvm-svn: 48119
* make sure ar.pfs is in a register class, this fixes test/CodeGen/IA64/ret-0.llChris Lattner2008-03-091-3/+5
| | | | llvm-svn: 48118
* remove an extraneous (and ugly) default argument, thanks Duncan.Chris Lattner2008-03-091-2/+1
| | | | llvm-svn: 48117
* Fix some compilation errors on msvc:Ted Kremenek2008-03-092-3/+4
| | | | | | | | | - "Redefinition of I" (iterator masks previous definition) - include missing header file Patch by Argiris Kirtzidis! llvm-svn: 48115
* And again.Nick Lewycky2008-03-091-1/+2
| | | | llvm-svn: 48112
* Braces belong here. No functionality change.Nick Lewycky2008-03-091-1/+2
| | | | llvm-svn: 48111
* SCCP also needs to be taught to follow unwind_toNick Lewycky2008-03-091-0/+4
| | | | llvm-svn: 48109
* fp_round's produced by getCopyFromParts should always be exact, becauseChris Lattner2008-03-091-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | they are produced by calls (which are known exact) and by cross block copies which are known to be produced by extends. This improves: define double @test2() { %tmp85 = call double asm sideeffect "fld0", "={st(0)}"() ret double %tmp85 } from: _test2: subl $20, %esp # InlineAsm Start fld0 # InlineAsm End fstpl 8(%esp) movsd 8(%esp), %xmm0 movsd %xmm0, (%esp) fldl (%esp) addl $20, %esp #FP_REG_KILL ret to: _test2: # InlineAsm Start fld0 # InlineAsm End #FP_REG_KILL ret by avoiding a f64 <-> f80 trip llvm-svn: 48108
* teach X86InstrInfo::copyRegToReg how to copy into ST(0) from Chris Lattner2008-03-092-16/+41
| | | | | | | | | | | | an RFP register class. Teach ScheduleDAG how to handle CopyToReg with different src/dst reg classes. This allows us to compile trivial inline asms that expect stuff on the top of x87-fp stack. llvm-svn: 48107
OpenPOWER on IntegriCloud