aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Teach Makefiles & CMake to link in the <TARGET>Info library when linking theDaniel Dunbar2009-07-152-1/+21
| | | | | | | | | TARGET component. - Also, updated some CMake library dependencies, it is still missing some though. :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75755 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix stupid thinkoDaniel Dunbar2009-07-151-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75754 91177308-0d34-0410-b5e6-96231b3b80d8
* Address some review comments on TargetRegistry.Daniel Dunbar2009-07-152-5/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75753 91177308-0d34-0410-b5e6-96231b3b80d8
* Add TargetInfo directories to CMake's list.Daniel Dunbar2009-07-151-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75752 91177308-0d34-0410-b5e6-96231b3b80d8
* Add TargetInfo libraries for all targets.Daniel Dunbar2009-07-1556-8/+1173
| | | | | | | | | - Intended to match current TargetMachine implementations. - No facilities for linking these in yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75751 91177308-0d34-0410-b5e6-96231b3b80d8
* Move load / store folding alignment require into the table(s).Evan Cheng2009-07-152-448/+425
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75749 91177308-0d34-0410-b5e6-96231b3b80d8
* Update CMake file.Ted Kremenek2009-07-151-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75746 91177308-0d34-0410-b5e6-96231b3b80d8
* rename decorateName -> DecorateCygMingName, make it assert if notChris Lattner2009-07-152-13/+14
| | | | | | | | cygming, make the two callers only call it if cygming. Other minor cleanups. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75744 91177308-0d34-0410-b5e6-96231b3b80d8
* eliminate the Mangler::PreserveAsmNames bit, the sole client of thisChris Lattner2009-07-153-18/+11
| | | | | | | can do it perfectly well itself. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75743 91177308-0d34-0410-b5e6-96231b3b80d8
* remove printSuffixedName.Chris Lattner2009-07-152-34/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75742 91177308-0d34-0410-b5e6-96231b3b80d8
* convert arm/darwin stubs to use the mangler to synthesize all the names ↵Chris Lattner2009-07-151-47/+66
| | | | | | | | | instead of doing it with printSuffixedName. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75741 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new TargetRegistry.Daniel Dunbar2009-07-152-0/+315
| | | | | | | | | | | | | | | | | | | | | | | | Targets implement a single global Target structure which will live in a new <Target>/TargetInfo library; this will be present in any image which the target is usable in. - Optional target specific classes can then be registered and attached to the Target description. - Registration for normal Targets will be done via the initialization functions instead of using static constructors. - This allows clients to use a single interface to obtain target data, without requiring the code generator be linked in. It also provides a natural extension point for adding new optional target data (assembler parser, disassembler, etc.). - This also provides a new entry point for obtaining a target for a particular triple (without a module). - Not yet used, however this should eventually replace the TargetMachineRegistry. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75739 91177308-0d34-0410-b5e6-96231b3b80d8
* fix an arm codegen bug (the same as PR4482 on ppc) where available_externallyChris Lattner2009-07-153-7/+73
| | | | | | | | symbols were not getting stubs. While I'm at it, add a big testcase for stub generation to make sure I don't break anything. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75737 91177308-0d34-0410-b5e6-96231b3b80d8
* convert [Hidden]GVNonLazyPtrs to compute the global and stub namesChris Lattner2009-07-151-27/+41
| | | | | | | | with the mangler (like x86 and ppc), instead of going through printSuffixedName. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75736 91177308-0d34-0410-b5e6-96231b3b80d8
* use makeNameProper to add the globalprefix instead of doing it manually.Chris Lattner2009-07-151-3/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75734 91177308-0d34-0410-b5e6-96231b3b80d8
* get the PPC stub temporary label from the mangler instead of Chris Lattner2009-07-152-33/+9
| | | | | | | | using horrible string hacking. This gives us a different label, but it's just an assembler temporary, so the name doesn't matter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75733 91177308-0d34-0410-b5e6-96231b3b80d8
* turn some if/then's into ?:Chris Lattner2009-07-151-12/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75732 91177308-0d34-0410-b5e6-96231b3b80d8
* eliminate a bunch of printSuffixedName's by using info computed fromChris Lattner2009-07-151-23/+15
| | | | | | | Mangler in FnStubs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75731 91177308-0d34-0410-b5e6-96231b3b80d8
* convert FnStubs to using a more structured form, eliminatingChris Lattner2009-07-151-9/+31
| | | | | | | | a couple instances of printSuffixedName (in favor of having the mangler do stuff). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75729 91177308-0d34-0410-b5e6-96231b3b80d8
* actually $stub labels *are* private, I just missed that Chris Lattner2009-07-151-6/+2
| | | | | | | printSuffixedName automatically does this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75727 91177308-0d34-0410-b5e6-96231b3b80d8
* convert this to filecheck style and make it a test of darwin/PPC's Chris Lattner2009-07-151-1/+57
| | | | | | | extremely elaborate pic/nopic stubs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75726 91177308-0d34-0410-b5e6-96231b3b80d8
* simplify this test to test the esentials.Chris Lattner2009-07-151-57/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75725 91177308-0d34-0410-b5e6-96231b3b80d8
* test commit; add selfRyan Flynn2009-07-151-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75724 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix indentation.Dan Gohman2009-07-151-18/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75723 91177308-0d34-0410-b5e6-96231b3b80d8
* Make makeLoopInvariant report whether it made any changes or not,Dan Gohman2009-07-155-56/+28
| | | | | | | and use this to simplify more code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75722 91177308-0d34-0410-b5e6-96231b3b80d8
* $stub references should not be private ("L") labels.Chris Lattner2009-07-151-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75721 91177308-0d34-0410-b5e6-96231b3b80d8
* simplify "EmitExternalGlobal": it is only used to output aChris Lattner2009-07-151-6/+1
| | | | | | | | | reference to the personality function for a module, and those are all added to the GVStubs array by looping over MMI->getPersonalities() git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75720 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert GVStubs and HiddenGVStubs to work more like the X86 backend, thisChris Lattner2009-07-151-56/+52
| | | | | | | eliminates a bunch of uses of "printSuffixedName" and "getGlobalLinkName". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75719 91177308-0d34-0410-b5e6-96231b3b80d8
* minor cleanups: only switch sections once before all function stubs, instead ofChris Lattner2009-07-151-16/+15
| | | | | | | before each one. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75718 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-c/Core.h is no longer needed in lto.h, and it brings inDan Gohman2009-07-151-1/+0
| | | | | | | several unwanted dependencies. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75717 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a fixme, patch by Ryan Flynn!Chris Lattner2009-07-151-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75716 91177308-0d34-0410-b5e6-96231b3b80d8
* control reaches end of non-void function.Evan Cheng2009-07-141-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75714 91177308-0d34-0410-b5e6-96231b3b80d8
* Added llvm-mc support for parsing the .include directive.Kevin Enderby2009-07-145-0/+45
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75711 91177308-0d34-0410-b5e6-96231b3b80d8
* minor syntax cleanupChris Lattner2009-07-141-11/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75707 91177308-0d34-0410-b5e6-96231b3b80d8
* Move EVER MORE stuff over to LLVMContext.Owen Anderson2009-07-1453-435/+422
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75703 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix path name.Daniel Dunbar2009-07-141-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75697 91177308-0d34-0410-b5e6-96231b3b80d8
* Use the right relocation type for X86::MOV64ri64i32Bruno Cardoso Lopes2009-07-141-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75687 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bad indentation and 80-col violation.Bob Wilson2009-07-141-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75686 91177308-0d34-0410-b5e6-96231b3b80d8
* Added llvm-mc support for parsing the .lsym directive.Kevin Enderby2009-07-145-0/+53
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75685 91177308-0d34-0410-b5e6-96231b3b80d8
* Check for PRE_INC and POST_INC.David Goodwin2009-07-141-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75683 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the expansion of umax and smax in the case where one or more ofDan Gohman2009-07-142-6/+171
| | | | | | | | | the operands have pointer type, so that the resulting type matches the original SCEV type, and so that unnecessary ptrtoints are avoided in common cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75680 91177308-0d34-0410-b5e6-96231b3b80d8
* fix a bug in my previous patch.Chris Lattner2009-07-141-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75678 91177308-0d34-0410-b5e6-96231b3b80d8
* Update CMake file.Ted Kremenek2009-07-141-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75677 91177308-0d34-0410-b5e6-96231b3b80d8
* allow default construction of formatted_raw_ostream.Chris Lattner2009-07-141-4/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75674 91177308-0d34-0410-b5e6-96231b3b80d8
* fix David's merge conflictChris Lattner2009-07-141-6/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75673 91177308-0d34-0410-b5e6-96231b3b80d8
* reapply r75408, which eliminates MOV64r0 in favor of usingChris Lattner2009-07-143-17/+28
| | | | | | | | | MOV32r0 + subregs to do the same thing. This should work now that PR4544 is fixed. Thanks Evan! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75671 91177308-0d34-0410-b5e6-96231b3b80d8
* Have asm printers use formatted_raw_ostream directly to avoid aDavid Greene2009-07-1467-194/+265
| | | | | | | dynamic_cast<>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75670 91177308-0d34-0410-b5e6-96231b3b80d8
* Helper script to use bugpoint with a remote target.Viktor Kutuzov2009-07-141-0/+108
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75669 91177308-0d34-0410-b5e6-96231b3b80d8
* convert to filecheck style, simplify RUN line, and add comment.Chris Lattner2009-07-141-7/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75667 91177308-0d34-0410-b5e6-96231b3b80d8
* Update CMake file.Ted Kremenek2009-07-141-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75666 91177308-0d34-0410-b5e6-96231b3b80d8