summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
Commit message (Collapse)AuthorAgeFilesLines
* Added getTargetLowering() to TargetMachine. Refactored targets to support this.Evan Cheng2006-03-1327-66/+97
| | | | llvm-svn: 26742
* UpdateEvan Cheng2006-03-131-0/+3
| | | | llvm-svn: 26741
* Add LSR hooks.Evan Cheng2006-03-132-4/+48
| | | | llvm-svn: 26740
* Handle builtins that directly correspond to GCC builtins.Chris Lattner2006-03-131-2/+25
| | | | llvm-svn: 26737
* For functions that use vector registers, save VRSAVE, mark usedChris Lattner2006-03-134-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 Laskey2006-03-131-2/+2
| | | | llvm-svn: 26729
* remove two implemented itemsChris Lattner2006-03-131-22/+0
| | | | llvm-svn: 26728
* I can't convince myself that this is safe, remove the recursive call.Chris Lattner2006-03-131-18/+2
| | | | llvm-svn: 26725
* Fix a couple of bugs that broke the alpha tester buildChris Lattner2006-03-131-2/+2
| | | | llvm-svn: 26722
* Handle cracked instructions in dispatch group formation.Chris Lattner2006-03-132-15/+28
| | | | llvm-svn: 26721
* Mark instructions that are cracked by the PPC970 decoder as such.Chris Lattner2006-03-134-26/+37
| | | | llvm-svn: 26720
* Several big changes:Chris Lattner2006-03-127-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 tooChris Lattner2006-03-111-0/+1
| | | | llvm-svn: 26710
* add an exampleChris Lattner2006-03-111-0/+11
| | | | llvm-svn: 26709
* add a noteChris Lattner2006-03-111-0/+4
| | | | llvm-svn: 26708
* teach the JIT to encode vector registersChris Lattner2006-03-101-32/+32
| | | | llvm-svn: 26697
* Add option -enable-x86-lsr to enable x86 loop strength reduction pass.Evan Cheng2006-03-091-0/+7
| | | | llvm-svn: 26665
* add a noteChris Lattner2006-03-091-0/+10
| | | | llvm-svn: 26661
* these are copies tooAndrew Lenharth2006-03-091-1/+5
| | | | llvm-svn: 26653
* remove some now-dead codeChris Lattner2006-03-091-16/+0
| | | | llvm-svn: 26652
* fcopysign for mixed modeAndrew Lenharth2006-03-091-1/+20
| | | | llvm-svn: 26651
* relax fcopysignAndrew Lenharth2006-03-091-1/+4
| | | | llvm-svn: 26649
* alpha and llvm have different oppinions on which arg is the sign bitAndrew Lenharth2006-03-091-10/+8
| | | | llvm-svn: 26647
* Alpha Scheduling classesAndrew Lenharth2006-03-096-232/+333
| | | | llvm-svn: 26643
* fcopysign and get rid of dsnode cruft. custom PA runtimes make this better ↵Andrew Lenharth2006-03-092-220/+15
| | | | | | in some senses llvm-svn: 26641
* fcopysign supportAndrew Lenharth2006-03-091-0/+1
| | | | llvm-svn: 26640
* Add support for 'special' llvm globals like debug info and static ctors/dtors.Chris Lattner2006-03-093-1/+14
| | | | llvm-svn: 26628
* a couple of miscellaneous things.Chris Lattner2006-03-091-0/+18
| | | | llvm-svn: 26625
* Add #line support for CBE.Jim Laskey2006-03-081-0/+17
| | | | llvm-svn: 26621
* doo de dooDuraid Madina2006-03-081-148/+158
| | | | llvm-svn: 26614
* Change the interface for getting a target HazardRecognizer to be more clean.Chris Lattner2006-03-083-11/+8
| | | | llvm-svn: 26608
* add a noteChris Lattner2006-03-081-0/+41
| | | | llvm-svn: 26605
* X86ISD::REP_STOS and X86ISD::REP_MOVS now produces a flag.Evan Cheng2006-03-071-2/+2
| | | | llvm-svn: 26604
* Use rep/stosl; and Count 0x3; rep/stosb for memset with 4 byte aligned dest.Evan Cheng2006-03-071-12/+72
| | | | | | | and variable value. Similarly for memcpy. llvm-svn: 26603
* Two things:Chris Lattner2006-03-071-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 theJim Laskey2006-03-072-2/+2
| | | | | | asm printer. llvm-svn: 26599
* add another missing store.Chris Lattner2006-03-071-0/+2
| | | | llvm-svn: 26595
* add a couple more load/store instrs, add a newline to the end of file.Chris Lattner2006-03-072-2/+17
| | | | llvm-svn: 26594
* This kinda sorta implements "things that have to lead a dispatch group".Nate Begeman2006-03-072-17/+42
| | | | llvm-svn: 26591
* add some new instructions to the classifier. With this, we correctly insertChris Lattner2006-03-071-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 modelChris Lattner2006-03-071-3/+18
| | | | llvm-svn: 26588
* Implement a very very simple hazard recognizer for LSU rejects and ctr set/readChris Lattner2006-03-073-2/+292
| | | | | | flushes llvm-svn: 26587
* add a noteChris Lattner2006-03-071-0/+14
| | | | llvm-svn: 26585
* add a noteChris Lattner2006-03-071-0/+11
| | | | llvm-svn: 26583
* - Emit subsections_via_symbols for Darwin.Evan Cheng2006-03-074-20/+41
| | | | | | - Conditionalize Dwarf debugging output (Darwin only for now). llvm-svn: 26582
* Enable Dwarf debugging info.Evan Cheng2006-03-078-6/+83
| | | | llvm-svn: 26581
* implement TII::insertNoopChris Lattner2006-03-053-1/+8
| | | | llvm-svn: 26562
* add a noteChris Lattner2006-03-051-0/+4
| | | | llvm-svn: 26549
* Do not fold (add (shl x, c1), (shl c2, c1)) -> (shl (add x, c2), c1),Chris Lattner2006-03-051-18/+0
| | | | | | we want to canonicalize the other way. llvm-svn: 26547
* Copysign needs to be expanded everywhere. Note that Alpha and IA64 shouldChris Lattner2006-03-055-0/+16
| | | | | | implement copysign as a native op if they have it. llvm-svn: 26541
OpenPOWER on IntegriCloud