Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Added getTargetLowering() to TargetMachine. Refactored targets to support this. | Evan Cheng | 2006-03-13 | 27 | -66/+97 |
| | | | | llvm-svn: 26742 | ||||
* | Update | Evan Cheng | 2006-03-13 | 1 | -0/+3 |
| | | | | llvm-svn: 26741 | ||||
* | Add LSR hooks. | Evan Cheng | 2006-03-13 | 2 | -4/+48 |
| | | | | llvm-svn: 26740 | ||||
* | Handle builtins that directly correspond to GCC builtins. | Chris Lattner | 2006-03-13 | 1 | -2/+25 |
| | | | | llvm-svn: 26737 | ||||
* | For functions that use vector registers, save VRSAVE, mark used | Chris Lattner | 2006-03-13 | 4 | -10/+130 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | registers, and update it on entry to each function, then restore it on exit. This compiles: void func(vfloat *a, vfloat *b, vfloat *c) { *a = *b * *c + *c; } to this: _func: mfspr r2, 256 oris r6, r2, 49152 mtspr 256, r6 lvx v0, 0, r5 lvx v1, 0, r4 vmaddfp v0, v1, v0, v0 stvx v0, 0, r3 mtspr 256, r2 blr GCC produces this (which has additional stack accesses): _func: mfspr r0,256 stw r0,-4(r1) oris r0,r0,0xc000 mtspr 256,r0 lvx v0,0,r5 lvx v1,0,r4 lwz r12,-4(r1) vmaddfp v0,v0,v1,v0 stvx v0,0,r3 mtspr 256,r12 blr llvm-svn: 26733 | ||||
* | Handle the removal of the debug chain. | Jim Laskey | 2006-03-13 | 1 | -2/+2 |
| | | | | llvm-svn: 26729 | ||||
* | remove two implemented items | Chris Lattner | 2006-03-13 | 1 | -22/+0 |
| | | | | llvm-svn: 26728 | ||||
* | I can't convince myself that this is safe, remove the recursive call. | Chris Lattner | 2006-03-13 | 1 | -18/+2 |
| | | | | llvm-svn: 26725 | ||||
* | Fix a couple of bugs that broke the alpha tester build | Chris Lattner | 2006-03-13 | 1 | -2/+2 |
| | | | | llvm-svn: 26722 | ||||
* | Handle cracked instructions in dispatch group formation. | Chris Lattner | 2006-03-13 | 2 | -15/+28 |
| | | | | llvm-svn: 26721 | ||||
* | Mark instructions that are cracked by the PPC970 decoder as such. | Chris Lattner | 2006-03-13 | 4 | -26/+37 |
| | | | | llvm-svn: 26720 | ||||
* | Several big changes: | Chris Lattner | 2006-03-12 | 7 | -213/+317 |
| | | | | | | | | | | | 1. Use flags on the instructions in the .td file to indicate the PPC970 unit type instead of a table in the .cpp file. Much cleaner. 2. Change the hazard recognizer to build d-groups according to the actual algorithm used, not my flawed understanding of it. 3. Model "must be in the first slot" and "must be the only instr in a group" accurately. llvm-svn: 26719 | ||||
* | blr is a branch too | Chris Lattner | 2006-03-11 | 1 | -0/+1 |
| | | | | llvm-svn: 26710 | ||||
* | add an example | Chris Lattner | 2006-03-11 | 1 | -0/+11 |
| | | | | llvm-svn: 26709 | ||||
* | add a note | Chris Lattner | 2006-03-11 | 1 | -0/+4 |
| | | | | llvm-svn: 26708 | ||||
* | teach the JIT to encode vector registers | Chris Lattner | 2006-03-10 | 1 | -32/+32 |
| | | | | llvm-svn: 26697 | ||||
* | Add option -enable-x86-lsr to enable x86 loop strength reduction pass. | Evan Cheng | 2006-03-09 | 1 | -0/+7 |
| | | | | llvm-svn: 26665 | ||||
* | add a note | Chris Lattner | 2006-03-09 | 1 | -0/+10 |
| | | | | llvm-svn: 26661 | ||||
* | these are copies too | Andrew Lenharth | 2006-03-09 | 1 | -1/+5 |
| | | | | llvm-svn: 26653 | ||||
* | remove some now-dead code | Chris Lattner | 2006-03-09 | 1 | -16/+0 |
| | | | | llvm-svn: 26652 | ||||
* | fcopysign for mixed mode | Andrew Lenharth | 2006-03-09 | 1 | -1/+20 |
| | | | | llvm-svn: 26651 | ||||
* | relax fcopysign | Andrew Lenharth | 2006-03-09 | 1 | -1/+4 |
| | | | | llvm-svn: 26649 | ||||
* | alpha and llvm have different oppinions on which arg is the sign bit | Andrew Lenharth | 2006-03-09 | 1 | -10/+8 |
| | | | | llvm-svn: 26647 | ||||
* | Alpha Scheduling classes | Andrew Lenharth | 2006-03-09 | 6 | -232/+333 |
| | | | | llvm-svn: 26643 | ||||
* | fcopysign and get rid of dsnode cruft. custom PA runtimes make this better ↵ | Andrew Lenharth | 2006-03-09 | 2 | -220/+15 |
| | | | | | | in some senses llvm-svn: 26641 | ||||
* | fcopysign support | Andrew Lenharth | 2006-03-09 | 1 | -0/+1 |
| | | | | llvm-svn: 26640 | ||||
* | Add support for 'special' llvm globals like debug info and static ctors/dtors. | Chris Lattner | 2006-03-09 | 3 | -1/+14 |
| | | | | llvm-svn: 26628 | ||||
* | a couple of miscellaneous things. | Chris Lattner | 2006-03-09 | 1 | -0/+18 |
| | | | | llvm-svn: 26625 | ||||
* | Add #line support for CBE. | Jim Laskey | 2006-03-08 | 1 | -0/+17 |
| | | | | llvm-svn: 26621 | ||||
* | doo de doo | Duraid Madina | 2006-03-08 | 1 | -148/+158 |
| | | | | llvm-svn: 26614 | ||||
* | Change the interface for getting a target HazardRecognizer to be more clean. | Chris Lattner | 2006-03-08 | 3 | -11/+8 |
| | | | | llvm-svn: 26608 | ||||
* | add a note | Chris Lattner | 2006-03-08 | 1 | -0/+41 |
| | | | | llvm-svn: 26605 | ||||
* | X86ISD::REP_STOS and X86ISD::REP_MOVS now produces a flag. | Evan Cheng | 2006-03-07 | 1 | -2/+2 |
| | | | | llvm-svn: 26604 | ||||
* | Use rep/stosl; and Count 0x3; rep/stosb for memset with 4 byte aligned dest. | Evan Cheng | 2006-03-07 | 1 | -12/+72 |
| | | | | | | | and variable value. Similarly for memcpy. llvm-svn: 26603 | ||||
* | Two things: | Chris Lattner | 2006-03-07 | 1 | -12/+89 |
| | | | | | | | | 1. Don't emit debug info, or other llvm.metadata to the .cbe.c file. 2. Mark static ctors/dtors as such, so that bugpoint works on C++ code compiled with the new CFE. llvm-svn: 26602 | ||||
* | Use "llvm.metadata" section for debug globals. Filter out these globals in the | Jim Laskey | 2006-03-07 | 2 | -2/+2 |
| | | | | | | asm printer. llvm-svn: 26599 | ||||
* | add another missing store. | Chris Lattner | 2006-03-07 | 1 | -0/+2 |
| | | | | llvm-svn: 26595 | ||||
* | add a couple more load/store instrs, add a newline to the end of file. | Chris Lattner | 2006-03-07 | 2 | -2/+17 |
| | | | | llvm-svn: 26594 | ||||
* | This kinda sorta implements "things that have to lead a dispatch group". | Nate Begeman | 2006-03-07 | 2 | -17/+42 |
| | | | | llvm-svn: 26591 | ||||
* | add some new instructions to the classifier. With this, we correctly insert | Chris Lattner | 2006-03-07 | 1 | -0/+11 |
| | | | | | | a nop into Freebench/neural, which speeds it up from 136->129s (~5.4%). llvm-svn: 26590 | ||||
* | add some comments that describe what we model | Chris Lattner | 2006-03-07 | 1 | -3/+18 |
| | | | | llvm-svn: 26588 | ||||
* | Implement a very very simple hazard recognizer for LSU rejects and ctr set/read | Chris Lattner | 2006-03-07 | 3 | -2/+292 |
| | | | | | | flushes llvm-svn: 26587 | ||||
* | add a note | Chris Lattner | 2006-03-07 | 1 | -0/+14 |
| | | | | llvm-svn: 26585 | ||||
* | add a note | Chris Lattner | 2006-03-07 | 1 | -0/+11 |
| | | | | llvm-svn: 26583 | ||||
* | - Emit subsections_via_symbols for Darwin. | Evan Cheng | 2006-03-07 | 4 | -20/+41 |
| | | | | | | - Conditionalize Dwarf debugging output (Darwin only for now). llvm-svn: 26582 | ||||
* | Enable Dwarf debugging info. | Evan Cheng | 2006-03-07 | 8 | -6/+83 |
| | | | | llvm-svn: 26581 | ||||
* | implement TII::insertNoop | Chris Lattner | 2006-03-05 | 3 | -1/+8 |
| | | | | llvm-svn: 26562 | ||||
* | add a note | Chris Lattner | 2006-03-05 | 1 | -0/+4 |
| | | | | llvm-svn: 26549 | ||||
* | Do not fold (add (shl x, c1), (shl c2, c1)) -> (shl (add x, c2), c1), | Chris Lattner | 2006-03-05 | 1 | -18/+0 |
| | | | | | | we want to canonicalize the other way. llvm-svn: 26547 | ||||
* | Copysign needs to be expanded everywhere. Note that Alpha and IA64 should | Chris Lattner | 2006-03-05 | 5 | -0/+16 |
| | | | | | | implement copysign as a native op if they have it. llvm-svn: 26541 |