aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* explain why not vector<bool>Chris Lattner2007-09-251-2/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42324 91177308-0d34-0410-b5e6-96231b3b80d8
* Missing load / store folding entries.Evan Cheng2007-09-251-0/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42323 91177308-0d34-0410-b5e6-96231b3b80d8
* Partly revert invalid r41774Anton Korobeynikov2007-09-251-0/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42322 91177308-0d34-0410-b5e6-96231b3b80d8
* Grammar fix.Bill Wendling2007-09-251-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42318 91177308-0d34-0410-b5e6-96231b3b80d8
* More explicit keywords.Dan Gohman2007-09-257-9/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42316 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a newline to the end of this file.Duncan Sands2007-09-251-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42314 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a typo in a comment.Dan Gohman2007-09-251-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42313 91177308-0d34-0410-b5e6-96231b3b80d8
* New style x87 cmp instructions.Evan Cheng2007-09-252-0/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42312 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle multiple induction variables.Devang Patel2007-09-252-7/+73
| | | | | | | This fixes PR714. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42309 91177308-0d34-0410-b5e6-96231b3b80d8
* When both x/y and x%y are needed (x and y both scalar integer), computeDan Gohman2007-09-254-25/+146
| | | | | | | | | | both results with a single div or idiv instruction. This uses new X86ISD nodes for DIV and IDIV which are introduced during the legalize phase so that the SelectionDAG's CSE can automatically eliminate redundant computations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42308 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not reserve DOM check for GetElementPtrInst.Devang Patel2007-09-251-21/+22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42306 91177308-0d34-0410-b5e6-96231b3b80d8
* Some tests for APFloat conversions.Dale Johannesen2007-09-252-0/+223
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42303 91177308-0d34-0410-b5e6-96231b3b80d8
* Forgot to check in the changes. Fix test case so it doesn't break with any ↵Evan Cheng2007-09-251-2/+2
| | | | | | scheduling changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42302 91177308-0d34-0410-b5e6-96231b3b80d8
* doh.. Devang Patel2007-09-251-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42300 91177308-0d34-0410-b5e6-96231b3b80d8
* Add transformation to update loop interation space. Now,Devang Patel2007-09-252-7/+205
| | | | | | | | | | | | | | | | | for (i=A; i<N; i++) { if (i < X && i > Y) do_something(); } is transformed into U=min(N,X); L=max(A,Y); for (i=L;i<U;i++) do_somethihg(); git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42299 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix long double<->shorter FP type conversionsDale Johannesen2007-09-251-12/+29
| | | | | | | | of zero, infinity, and NaNs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42298 91177308-0d34-0410-b5e6-96231b3b80d8
* Move the setOperationAction(ISD::DEBUG_LOC, MVT::Other, Expand) andDan Gohman2007-09-252-7/+6
| | | | | | | | the check to see if the assembler supports .loc from X86TargetLowering into the superclass TargetLowering. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42297 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix spelling.Duncan Sands2007-09-251-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42296 91177308-0d34-0410-b5e6-96231b3b80d8
* Add missing end-of-file newlines.Duncan Sands2007-09-252-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42294 91177308-0d34-0410-b5e6-96231b3b80d8
* Fill in the sections about my contributions.Owen Anderson2007-09-251-3/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42286 91177308-0d34-0410-b5e6-96231b3b80d8
* Added support for new condition code modeling scheme (i.e. physical register ↵Evan Cheng2007-09-259-45/+1409
| | | | | | | | | dependency). These are a bunch of instructions that are duplicated so the x86 backend can support both the old and new schemes at the same time. They will be deleted after all the kinks are worked out. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42285 91177308-0d34-0410-b5e6-96231b3b80d8
* Added major new capabilities to scheduler (only BURR for now) to support ↵Evan Cheng2007-09-256-178/+658
| | | | | | physical register dependency. The BURR scheduler can now backtrace and duplicate instructions in order to avoid "expensive / impossible to copy" values (e.g. status flag EFLAGS for x86) from being clobbered. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42284 91177308-0d34-0410-b5e6-96231b3b80d8
* New temporary option -new-cc-modeling-scheme to test the new cc modeling scheme.Evan Cheng2007-09-252-0/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42283 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename keyword "modify" -> "implicit".Evan Cheng2007-09-252-7/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42282 91177308-0d34-0410-b5e6-96231b3b80d8
* When mixing SSE and x87 codegen, it's possible toDale Johannesen2007-09-241-29/+31
| | | | | | | | | | | | | | have situations where an SSE instruction turns into multiple blocks, with the live range of an x87 register crossing them. To do this correctly make sure we examine all blocks when inserting FP_REG_KILL. PR 1697. (This was exposed by my fix for PR 1681, but the same thing could happen mixing x87 long double with SSE.) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42281 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't execute dump unless NDEBUG isn't defined.Bill Wendling2007-09-241-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42280 91177308-0d34-0410-b5e6-96231b3b80d8
* Comment fixupsDaniel Berlin2007-09-242-12/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42279 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support on x86 for having Legalize lower ISD::LOCATION to ISD::DEBUG_LOCDan Gohman2007-09-241-2/+7
| | | | | | | | instead of ISD::LABEL with a manual .debug_line entry when the assembler supports .file and .loc directives. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42278 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't emit .debug_line header data if there aren't any lines to put in it,Dan Gohman2007-09-241-0/+5
| | | | | | | such as will happen when .loc directives are used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42277 91177308-0d34-0410-b5e6-96231b3b80d8
* Move the Asm->EOL() call for EmitDebugARanges outside the #ifdef forDan Gohman2007-09-241-1/+1
| | | | | | | consistency with the other currently empty sections. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42276 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for emitting .file directives to set up file numbers forDan Gohman2007-09-241-0/+14
| | | | | | | use with .loc directives. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42275 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge hasDotLoc and hasDotFile into hasDotLocAndDotFile since .loc and .fileDan Gohman2007-09-242-13/+6
| | | | | | | aren't really usable without each other. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42274 91177308-0d34-0410-b5e6-96231b3b80d8
* float->int conversion rounds toward 0. Duh.Dale Johannesen2007-09-241-1/+1
| | | | | | | | Fixes PR1698. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42273 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a routine for emitting .file directives, for setting upDan Gohman2007-09-242-0/+14
| | | | | | | file numbers to use with .loc directives. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42272 91177308-0d34-0410-b5e6-96231b3b80d8
* Added "LoadEffective" pattern to handle stack locations.Bruno Cardoso Lopes2007-09-243-6/+25
| | | | | | | Fixed some comments git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42271 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not promote null values because it may be unsafe to do so.Devang Patel2007-09-242-0/+50
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42270 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement offline variable substitution in order to reduce memoryDaniel Berlin2007-09-243-105/+961
| | | | | | | | | | and time usage. Fixup operator == to make this work, and add a resize method to DenseMap so we can resize our hashtable once we know how big it should be. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42269 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the syntax for the .loc directive in preparation for using it.Dan Gohman2007-09-241-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42268 91177308-0d34-0410-b5e6-96231b3b80d8
* Add section on bit containers.Daniel Berlin2007-09-241-0/+49
| | | | | | | (Not the most well written stuff in the universe :P) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42267 91177308-0d34-0410-b5e6-96231b3b80d8
* XFAIL for llvm-gcc4.0Tanya Lattner2007-09-241-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42266 91177308-0d34-0410-b5e6-96231b3b80d8
* The code that used the StartLabelId label was removed, so remove theDan Gohman2007-09-241-7/+1
| | | | | | | code that creates the label too. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42265 91177308-0d34-0410-b5e6-96231b3b80d8
* Use the correct result value type instead of using getValueType(0)Dan Gohman2007-09-242-4/+10
| | | | | | | | in ExpandEXTRACT_VECTOR_ELT and SplitVectorOp. This fixes an abort in the included testcase. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42264 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a typo in a comment.Dan Gohman2007-09-241-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42263 91177308-0d34-0410-b5e6-96231b3b80d8
* explicit keywords.Dan Gohman2007-09-242-9/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42262 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove an unnecessary static_cast.Dan Gohman2007-09-241-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42261 91177308-0d34-0410-b5e6-96231b3b80d8
* claim that "st" is from the 80-bit register file. This causes x87-using inlineChris Lattner2007-09-241-1/+1
| | | | | | | | | | | | | | | asm to die with: ScheduleDAG.cpp:269: failed assertion `false && "Couldn't find the register class"' instead of: failed assertion `RegMap->getRegClass(VReg) == RC && "Register class of operand and regclass of use don't agree!"' yay. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42259 91177308-0d34-0410-b5e6-96231b3b80d8
* When emitting .set directives, make sure the EH and Debug labels can't conflict.Chris Lattner2007-09-241-10/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42257 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix typo.Owen Anderson2007-09-241-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42256 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge significant portions of the DomTree and PostDomTree implementations.Owen Anderson2007-09-245-152/+156
| | | | | | | The two remaining unmerged parts are DFSPass, and the Calculate(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42255 91177308-0d34-0410-b5e6-96231b3b80d8
* Just use APFloat for const / const. FixesDale Johannesen2007-09-241-17/+0
| | | | | | | -1. / -0. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42254 91177308-0d34-0410-b5e6-96231b3b80d8