summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
Commit message (Collapse)AuthorAgeFilesLines
...
* tidy upChris Lattner2009-08-151-1/+2
| | | | llvm-svn: 79101
* Update cpp generation with new LLVM API for primitive types.Nicolas Geoffray2009-08-151-6/+7
| | | | llvm-svn: 79098
* Revert a few changes that were done in 78603.Sanjiv Gupta2009-08-152-14/+15
| | | | | | | | PIC16DebugInfo currently rely on NameStr of composite type descriptors to uniquely identify debug info for two aggregate type decls with same name. This implementation will change when we have MDNodes based debug info implemenatation in place llvm-svn: 79097
* Move XCore AsmPrinter to XCore/AsmPrinter directory.Richard Osborne2009-08-156-9/+32
| | | | llvm-svn: 79094
* Add support for the PowerPC 64-bit SVR4 ABI.Tilmann Scheller2009-08-159-72/+361
| | | | | | | | | | | | | | | | | The Link Register is volatile when using the 32-bit SVR4 ABI. Make it possible to use the 64-bit SVR4 ABI. Add non-volatile registers for the 64-bit SVR4 ABI. Make sure r2 is a reserved register when using the 64-bit SVR4 ABI. Update PPCFrameInfo for the 64-bit SVR4 ABI. Add FIXME for 64-bit Darwin PPC. Insert NOP instruction after direct function calls. Emit official procedure descriptors. Create TOC entries for GlobalAddress references. Spill 64-bit non-volatile registers to the correct slots. Only custom lower VAARG when using the 32-bit SVR4 ABI. Use simple VASTART lowering for the 64-bit SVR4 ABI. llvm-svn: 79091
* Turn on if-conversion for thumb2.Evan Cheng2009-08-159-51/+57
| | | | llvm-svn: 79084
* update for rename.Chris Lattner2009-08-151-2/+2
| | | | llvm-svn: 79082
* rename PIC16Section.h -> MCSectionPIC16.h for consistency withChris Lattner2009-08-153-2/+2
| | | | | | the class it defines. llvm-svn: 79081
* cmake likes its explicit list of files to build.Chris Lattner2009-08-151-0/+1
| | | | llvm-svn: 79080
* use XCore-specific section with xcore specific cp/dp flags to restore Chris Lattner2009-08-151-14/+26
| | | | | | | | support for globals going into the appropriate sections with the flags. This hopefully finishes unbreaking the previous behavior that I broke before. llvm-svn: 79079
* If ELF subtargets don't want to support 4/8/16-byte mergable sections, allow Chris Lattner2009-08-151-3/+3
| | | | | | them to null out the default section pointers. llvm-svn: 79078
* add support for target-specific ELF section flags, add a new MCSectionXCoreChris Lattner2009-08-152-0/+89
| | | | | | | class which represents the XCore cp/dp section flags. No functionality change yet. llvm-svn: 79077
* Simplify a few more things, eliminating a few more dependencies onDan Gohman2009-08-152-3/+1
| | | | | | "the current basic block". llvm-svn: 79069
* Do not use frame register to reference fixed stack objects if the function ↵Evan Cheng2009-08-152-13/+14
| | | | | | is frameless. llvm-svn: 79067
* On x86-64, for a varargs function, don't store the xmm registers toDan Gohman2009-08-153-18/+126
| | | | | | | the register save area if %al is 0. This avoids touching xmm regsiters when they aren't actually used. llvm-svn: 79061
* Leaf functions which do not save CSRs can be frameless even with ↵Evan Cheng2009-08-142-1/+10
| | | | | | -disable-fp-elim. llvm-svn: 79039
* Allow targets to specify their choice of calling conventions perAnton Korobeynikov2009-08-142-1/+10
| | | | | | | | | | libcall. Take advantage of this in the ARM backend to rectify broken choice of CC when hard float is in effect. PIC16 may want to see if it could be of use in MakePIC16Libcall, which works unchanged. Patch by Sandeep! llvm-svn: 79033
* Add Thumb2 lsr hooks.Evan Cheng2009-08-142-36/+106
| | | | llvm-svn: 79032
* CMake: Corrected variable check.Oscar Fuentes2009-08-141-1/+1
| | | | llvm-svn: 79030
* 80 col violation.Evan Cheng2009-08-141-1/+2
| | | | llvm-svn: 79026
* Cleanup the mess in msp430 target registration and hopefully unbreak the buildAnton Korobeynikov2009-08-142-5/+10
| | | | llvm-svn: 79024
* Indentation.Evan Cheng2009-08-141-1/+1
| | | | llvm-svn: 79022
* Hopefully unbreak cmake buildsAnton Korobeynikov2009-08-141-3/+2
| | | | llvm-svn: 79015
* Also shrink immediate branches; also more assembler workarounds.Evan Cheng2009-08-142-11/+59
| | | | llvm-svn: 79014
* Give MSP430 a separate asmprinter libAnton Korobeynikov2009-08-144-2/+23
| | | | llvm-svn: 79012
* Properly handle indirect win64 args when they're passed in memoryAnton Korobeynikov2009-08-141-2/+10
| | | | llvm-svn: 79009
* Get the CPP backend into some semblance of working by updating for numerous ↵Owen Anderson2009-08-141-10/+14
| | | | | | | | LLVMContext changes, as well as the StringRef change. llvm-svn: 79006
* Now that all the legal Neon shuffles (or at least the ones that have beenBob Wilson2009-08-141-1/+1
| | | | | | | implemented so far) are recognized during legalization, it is easy to fall back to the default expansion for other shuffles. llvm-svn: 78995
* Create a new ARM-specific DAG node, VDUP, to represent a splat from aBob Wilson2009-08-143-26/+19
| | | | | | | scalar_to_vector. Generate these VDUP nodes during legalization instead of trying to recognize the pattern during selection. llvm-svn: 78994
* During legalization, change Neon vdup_lane operations from shuffles toBob Wilson2009-08-144-61/+33
| | | | | | | | target-specific VDUPLANE nodes. This allows the subreg handling for the quad-register version to be done easily with Pats in the .td file, instead of with custom code in ARMISelDAGToDAG.cpp. llvm-svn: 78993
* Update llvm-mc / MCAsmStreamer to print the instruction using the actual targetDaniel Dunbar2009-08-141-4/+2
| | | | | | | | | | | specific printer (this only works on x86, for now). - This makes it possible to do some correctness checking of the parsing and matching, since we can compare the results of 'as' on the original input, to those of 'as' on the output from llvm-mc. - In theory, we could now have an easy ATT -> Intel syntax converter. :) llvm-svn: 78986
* Add virtual printMCInst method to AsmPrinter, as a quick way to expose the APIDaniel Dunbar2009-08-141-0/+2
| | | | | | to print one instruction. llvm-svn: 78985
* Add X86 instruction printer support for printing MCValue operands.Daniel Dunbar2009-08-141-0/+8
| | | | llvm-svn: 78984
* Shrink ADR and LDR from constantpool late during constantpool island pass.Evan Cheng2009-08-144-16/+79
| | | | llvm-svn: 78970
* New entry.Evan Cheng2009-08-141-0/+3
| | | | llvm-svn: 78968
* Make these matching rules more strict so that they don'tDan Gohman2009-08-141-3/+3
| | | | | | accidentally match unrelated things. llvm-svn: 78966
* TargetRegistry: Change AsmPrinter constructor to be typed as returning anDaniel Dunbar2009-08-132-8/+8
| | | | | | AsmPrinter instance (instead of just a FunctionPass) llvm-svn: 78962
* Remove HasCrazyBSS and add a flag in TAI to indicate that '.section' Bruno Cardoso Lopes2009-08-134-3/+7
| | | | | | must be emitted for PowerPC-Linux '.bss' section llvm-svn: 78958
* Push LLVMContexts through the IntegerType APIs.Owen Anderson2009-08-1322-90/+131
| | | | llvm-svn: 78948
* TargetRegistry: Reorganize AsmPrinter construction so that clients pass in theDaniel Dunbar2009-08-132-7/+8
| | | | | | | | | TargetAsmInfo. This eliminates a dependency on TargetMachine.h from TargetRegistry.h, which technically was a layering violation. - Clients probably can only sensibly pass in the same TargetAsmInfo as the TargetMachine has, but there are only limited clients of this API. llvm-svn: 78928
* Reapply pieces of 78914 reverted in 78916, this has been fixed.Daniel Dunbar2009-08-133-19/+15
| | | | llvm-svn: 78921
* Revert 78892 and 78895, these break generating working executables onDaniel Dunbar2009-08-139-30/+27
| | | | | | | | | | | | | | | | | | | | | x86_64-apple-darwin10. --- Reverse-merging r78895 into '.': U test/CodeGen/PowerPC/2008-12-12-EH.ll U lib/Target/DarwinTargetAsmInfo.cpp --- Reverse-merging r78892 into '.': U include/llvm/Target/DarwinTargetAsmInfo.h U lib/Target/X86/X86TargetAsmInfo.cpp U lib/Target/X86/X86TargetAsmInfo.h U lib/Target/ARM/ARMTargetAsmInfo.h U lib/Target/ARM/ARMTargetMachine.cpp U lib/Target/ARM/ARMTargetAsmInfo.cpp U lib/Target/PowerPC/PPCTargetAsmInfo.cpp U lib/Target/PowerPC/PPCTargetAsmInfo.h U lib/Target/PowerPC/PPCTargetMachine.cpp G lib/Target/DarwinTargetAsmInfo.cpp llvm-svn: 78919
* Add missing defs of R2 and D1.Jim Grosbach2009-08-132-4/+4
| | | | llvm-svn: 78918
* Remove obsoleted files (from AsmPrinter move)Daniel Dunbar2009-08-133-566/+0
| | | | llvm-svn: 78917
* Revert r78914, as it was breaking the build.Owen Anderson2009-08-133-15/+19
| | | | llvm-svn: 78916
* Move PIC16 AsmPrinter to PIC16/AsmPrinter directory.Sanjiv Gupta2009-08-137-19/+599
| | | | | | Remove CooperTargetMachine, as currently only one is supported. llvm-svn: 78914
* Finalize itineraries for cortex-a8 integer multiplyDavid Goodwin2009-08-136-55/+65
| | | | llvm-svn: 78908
* Remove unnecessary newlineJim Grosbach2009-08-132-2/+2
| | | | llvm-svn: 78905
* Correct comment wordingJim Grosbach2009-08-132-2/+2
| | | | llvm-svn: 78904
* reintroduce support for Mips "small" section handling. This is Chris Lattner2009-08-137-51/+140
| | | | | | | implemented somewhat differently than before, but it should have the same functionality and the previous testcase passes again. llvm-svn: 78900
OpenPOWER on IntegriCloud