summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Check in code to scalarize arbitrarily wide packed types for some simpleNate Begeman2005-11-223-5/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | vector operations (load, add, sub, mul). This allows us to codegen: void %foo(<4 x float> * %a) { entry: %tmp1 = load <4 x float> * %a; %tmp2 = add <4 x float> %tmp1, %tmp1 store <4 x float> %tmp2, <4 x float> *%a ret void } on ppc as: _foo: lfs f0, 12(r3) lfs f1, 8(r3) lfs f2, 4(r3) lfs f3, 0(r3) fadds f0, f0, f0 fadds f1, f1, f1 fadds f2, f2, f2 fadds f3, f3, f3 stfs f0, 12(r3) stfs f1, 8(r3) stfs f2, 4(r3) stfs f3, 0(r3) blr llvm-svn: 24484
* massive DAGISel patch. lots and lots more stuff compiles nowAndrew Lenharth2005-11-225-52/+207
| | | | llvm-svn: 24483
* Rather than attempting to legalize 1 x float, make sure the SD ISel neverNate Begeman2005-11-223-49/+29
| | | | | | | | | | | generates it. Make MVT::Vector expand-only, and remove the code in Legalize that attempts to legalize it. The plan for supporting N x Type is to continually epxand it in ExpandOp until it gets down to 2 x Type, where it will be scalarized into a pair of scalars. llvm-svn: 24482
* Use HasDotTypeDotSizeDirective instead of forELFChris Lattner2005-11-214-18/+10
| | | | llvm-svn: 24481
* Remove a level of indentation by using a continue.Chris Lattner2005-11-211-55/+55
| | | | llvm-svn: 24479
* Simplify the subtarget info, allow the asmwriter to do some target sensingChris Lattner2005-11-212-22/+2
| | | | | | based on TargetType. llvm-svn: 24478
* Use subtarget information computed by X86Subtarget instead of rolling our own.Chris Lattner2005-11-213-29/+22
| | | | llvm-svn: 24477
* Make the X86 subtarget compute the basic target type: ELF, Cygwin, Darwin,Chris Lattner2005-11-212-15/+24
| | | | | | or native Win32 llvm-svn: 24476
* Add a forELF flag, allowing the removal of forCygwin and simplification ofChris Lattner2005-11-214-7/+12
| | | | | | conditionals. llvm-svn: 24475
* simplify and genericize this codeChris Lattner2005-11-211-55/+69
| | | | llvm-svn: 24473
* add support for div/rem to the dag->dag isel. yay.Duraid Madina2005-11-211-0/+180
| | | | llvm-svn: 24472
* I think I know what you meant here, but just to be safe I'll let youDuraid Madina2005-11-211-1/+1
| | | | | | | | do it. :) <_sabre_> excuses excuses llvm-svn: 24471
* Eliminate unneeded intermediate class. Move doFinalizeMethod to bottom ofChris Lattner2005-11-211-99/+88
| | | | | | file. llvm-svn: 24470
* Start using shared asmprinter Constant Pool emitter, use shorter cpi names.Chris Lattner2005-11-211-26/+5
| | | | llvm-svn: 24469
* prune #includeChris Lattner2005-11-211-1/+0
| | | | llvm-svn: 24468
* Switch to using the shared constant pool printer, along with using shorterChris Lattner2005-11-214-31/+5
| | | | | | CPI ids llvm-svn: 24467
* Switch to using the generic constant pool emitter impl, use shorterChris Lattner2005-11-211-25/+2
| | | | | | CPI names llvm-svn: 24466
* Use generic constant pool emission code in the AsmPrinter class.Chris Lattner2005-11-211-30/+4
| | | | llvm-svn: 24465
* Allow target to customize directive used to switch to arbitrary section in ↵Chris Lattner2005-11-211-1/+28
| | | | | | | | SwitchSection, add generic constant pool emitter llvm-svn: 24464
* Use the FunctionNumber provided by the AsmPrinter classChris Lattner2005-11-211-19/+15
| | | | llvm-svn: 24462
* increment the function number in SetupMachineFunctionChris Lattner2005-11-211-0/+1
| | | | llvm-svn: 24461
* Use CommentString where possible, fix a bug where aix mode wouldn't assembleChris Lattner2005-11-211-4/+4
| | | | | | due to basic blocks being misnamed. llvm-svn: 24459
* unify the darwin and aix constant pool printersChris Lattner2005-11-211-48/+28
| | | | llvm-svn: 24458
* Adjust to capitalized asmprinter method namesChris Lattner2005-11-211-18/+18
| | | | llvm-svn: 24457
* Adjust to capitalized AsmPrinter method namesChris Lattner2005-11-216-32/+32
| | | | llvm-svn: 24456
* Use PrivateGlobalPrefix for basic block labels. This allows the x86 darwinChris Lattner2005-11-212-5/+9
| | | | | | port to properly use L for the bb prefix instead of . llvm-svn: 24454
* use PrivateGlobalPrefix for basic blocksChris Lattner2005-11-211-5/+6
| | | | llvm-svn: 24453
* Use PrivateGlobalPrefix for basic block labelsChris Lattner2005-11-211-2/+4
| | | | llvm-svn: 24452
* Use PrivateGlobalPrefix for basic blocksChris Lattner2005-11-211-6/+6
| | | | llvm-svn: 24451
* Switch to the new shared SwitchSectionChris Lattner2005-11-211-26/+6
| | | | llvm-svn: 24450
* Start using SwitchSection, allowing globals and functions to be emittedChris Lattner2005-11-211-39/+7
| | | | | | to specific sections. Delete some dead functions copied from the X86 backend. llvm-svn: 24449
* convert the rest of this over to use SwitchSectionChris Lattner2005-11-213-7/+4
| | | | llvm-svn: 24448
* Start using the AsmPrinter shared SwitchSection code. This allows the X86Chris Lattner2005-11-212-18/+3
| | | | | | backend to implement global variables in sections. llvm-svn: 24447
* This is now implemented in common codegen codeChris Lattner2005-11-211-20/+0
| | | | llvm-svn: 24446
* Add section switching to common code generator code. Add a couple ofChris Lattner2005-11-213-2/+23
| | | | | | asserts. llvm-svn: 24445
* Rename SwitchSection -> switchSection to avoid conflicting with a futureChris Lattner2005-11-214-22/+22
| | | | | | change. llvm-svn: 24443
* Start using PrivateGlobalPrefix correctlyChris Lattner2005-11-212-6/+8
| | | | llvm-svn: 24442
* set PrivateGlobalPrefix on darwin, use it when printing out CP referencesChris Lattner2005-11-211-7/+9
| | | | llvm-svn: 24441
* Naturally align doubles in the constant pool, set PrivateGlobalPrefix onChris Lattner2005-11-213-8/+17
| | | | | | | | | darwin, use it when printing the constant pool indices so the labels are appropriately private, emit cp entries to .const instead of .data on darwin and only emit a single .section for the constant pool, not one for each entry. llvm-svn: 24440
* Lower READCYCLECOUNTER correctly, preserving the chain resultChris Lattner2005-11-201-4/+8
| | | | llvm-svn: 24438
* Legalize MERGE_VALUES, expand READCYCLECOUNTER correctly, so it doesn'tChris Lattner2005-11-201-8/+13
| | | | | | break control dependence. llvm-svn: 24437
* encode rdtsc correctlyChris Lattner2005-11-201-4/+7
| | | | llvm-svn: 24435
* use chain operands to ensure the copies don't wander from the rdtsc instruction.Chris Lattner2005-11-201-3/+9
| | | | llvm-svn: 24434
* The second patch of X86 support for read cycle counter.Andrew Lenharth2005-11-204-0/+20
| | | | llvm-svn: 24430
* The first patch of X86 support for read cycle counterAndrew Lenharth2005-11-201-0/+12
| | | | llvm-svn: 24429
* more progress towards bug 291 being finished. Patch by Owen Anderson,Chris Lattner2005-11-201-12/+17
| | | | | | HAVE_GV case fixed up by me. llvm-svn: 24428
* Unbreak codegen of bools. This should fix the llc/jit/llc-beta failuresChris Lattner2005-11-191-1/+1
| | | | | | from last night. llvm-svn: 24427
* Improve Selection DAG printer portability. Patch by Owen Anderson!Chris Lattner2005-11-191-4/+6
| | | | llvm-svn: 24425
* Teach the x86 backend about the register constraints of its addressing mode.Chris Lattner2005-11-191-1/+2
| | | | | | Patch by Evan Cheng llvm-svn: 24423
* Capture more operand info, patch by Evan ChengChris Lattner2005-11-191-1/+2
| | | | llvm-svn: 24422
OpenPOWER on IntegriCloud