aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Fixed build warning. No functionality change.Sanjiv Gupta2009-07-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76761 91177308-0d34-0410-b5e6-96231b3b80d8
* Introduce MetadataBase, a base class for MDString and MDNode.Devang Patel2009-07-2216-130/+231
| | | | | | | | | | Derive MDString directly from MetadataBase. Introduce new bitcode block to hold metadata. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76759 91177308-0d34-0410-b5e6-96231b3b80d8
* Support writing a StringRef to a raw_ostream directly.Daniel Dunbar2009-07-222-7/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76754 91177308-0d34-0410-b5e6-96231b3b80d8
* fix some wording problems Daniel pointed out, make a example actually real.Chris Lattner2009-07-221-20/+27
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76751 91177308-0d34-0410-b5e6-96231b3b80d8
* doxygenifyChris Lattner2009-07-221-7/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76750 91177308-0d34-0410-b5e6-96231b3b80d8
* fix typo noticed by DuncanChris Lattner2009-07-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76747 91177308-0d34-0410-b5e6-96231b3b80d8
* cast signed APInt constructor params to uint64_t to suppress signedness warningRyan Flynn2009-07-221-5/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76744 91177308-0d34-0410-b5e6-96231b3b80d8
* Add newline at end of file.Duncan Sands2009-07-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76736 91177308-0d34-0410-b5e6-96231b3b80d8
* Thread local globals don't require special handling by the linker and so canRichard Osborne2009-07-221-0/+7
| | | | | | | be placed in the standard data / bss sections. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76735 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove a comment that was copy+pasted from the wrong place,Edwin Török2009-07-221-1/+0
| | | | | | | there is no MachineFunction here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76734 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert commit 76707, it was breaking the llvm-gcc buildDuncan Sands2009-07-222-8/+4
| | | | | | | | | on linux platforms. The binutils assembler does not recognize the "s" flag, see for example http://sourceware.org/binutils/docs/as/Section.html git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76733 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't give a massive inlining cost bonus to available_externally Eli Friedman2009-07-221-2/+1
| | | | | | | | | | functions with a single use; eliminating the single use may eliminate the function from the current module, but usually doesn't eliminate it from the final program. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76730 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't forget D16 - D31 are clobbered by calls and sjlj eh.Evan Cheng2009-07-223-10/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76729 91177308-0d34-0410-b5e6-96231b3b80d8
* Add R12 to the list of registers clobbered by 16-bit Thumb calls as a ↵Evan Cheng2009-07-221-2/+2
| | | | | | pre-caution. r12 could be live once we have mixed 32-bit and 16-bit instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76728 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a obvious copy-n-paste bug.Evan Cheng2009-07-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76727 91177308-0d34-0410-b5e6-96231b3b80d8
* Get rid one of the getRegisterNumbering. Also add D16 - D31.Evan Cheng2009-07-223-69/+78
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76725 91177308-0d34-0410-b5e6-96231b3b80d8
* remove Bill from the author list: his contribution (describing llvm::Ostream Chris Lattner2009-07-221-2/+1
| | | | | | | and friends) has been removed awhile ago. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76724 91177308-0d34-0410-b5e6-96231b3b80d8
* add some more topics to the coding standards doc:Chris Lattner2009-07-221-33/+456
| | | | | | | | | | | | * Use Early Exits and 'continue' to Simplify Code * Turn Predicate Loops into Predicate Functions * Spaces Before Parentheses * Namespace Indentation * Anonymous Namespaces git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76723 91177308-0d34-0410-b5e6-96231b3b80d8
* Attempt to fix BuildBot breakage with MSVC.Eli Friedman2009-07-221-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76722 91177308-0d34-0410-b5e6-96231b3b80d8
* fix some formatting stuff, patch by Edward O'Callaghan!Chris Lattner2009-07-221-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76718 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove intrinsic support for __builtin_ia32_vec_set_v16qi andEric Christopher2009-07-221-6/+0
| | | | | | | | __builtin_ia32_vec_set_v4si as these should be lowered in the front-end to inserts. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76714 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for MMX VSETCC.Eli Friedman2009-07-222-0/+33
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76713 91177308-0d34-0410-b5e6-96231b3b80d8
* Added the unconditional JMP with an 8-bit relocation for theSean Callanan2009-07-221-1/+3
| | | | | | | assembler / disassembler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76712 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an entry.Evan Cheng2009-07-221-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76711 91177308-0d34-0410-b5e6-96231b3b80d8
* inline the two MergeableConstSection implementations into theirChris Lattner2009-07-224-27/+18
| | | | | | | | only caller. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76710 91177308-0d34-0410-b5e6-96231b3b80d8
* set the ELF "small" flag on objects that end up in .rodata.cst4 consistently,Chris Lattner2009-07-222-4/+8
| | | | | | | updating a mips testcase to expect it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76707 91177308-0d34-0410-b5e6-96231b3b80d8
* don't set the small flag yet.Chris Lattner2009-07-221-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76706 91177308-0d34-0410-b5e6-96231b3b80d8
* remove the SelectSectionForMachineConst hook, replacing it withChris Lattner2009-07-228-48/+87
| | | | | | | | | a new getSectionForMergableConstant hook. This removes one dependence of TAI on Type, and provides the hook with enough info to make the right decision based on whether the global has relocations etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76705 91177308-0d34-0410-b5e6-96231b3b80d8
* Let each target determines whether a machine instruction is dead. If true, ↵Evan Cheng2009-07-224-25/+36
| | | | | | | | | that allows late codeine passes to delete it. This is considered a workaround. The problem is some targets are not modeling side effects correctly. PPC is apparently one of those. This patch allows ppc llvm-gcc to bootstrap on Darwin. Once we find out which instruction definitions are wrong, we can remove the PPCInstrInfo workaround. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76703 91177308-0d34-0410-b5e6-96231b3b80d8
* Get rid of the Pass+Context magic.Owen Anderson2009-07-22120-786/+835
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76702 91177308-0d34-0410-b5e6-96231b3b80d8
* reimplement Constant::ContainsRelocations as Chris Lattner2009-07-225-67/+51
| | | | | | | | | | | Constant::getRelocationInfo(), which has a much simpler to use API. It still should not be part of libvmcore, but is better than it was. Also teach it to be smart about hidden visibility. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76700 91177308-0d34-0410-b5e6-96231b3b80d8
* Misc. doc fixes following suggestions from Eli.Dan Gohman2009-07-221-5/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76699 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixing cp island pass. Step 1: Determine whether the constant pool offset can beEvan Cheng2009-07-211-18/+23
| | | | | | | | negative on an individual bases rather than basing on whether it's in thumb mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76698 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix comment.Evan Cheng2009-07-211-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76693 91177308-0d34-0410-b5e6-96231b3b80d8
* simplify code now that it is inlined.Chris Lattner2009-07-212-16/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76689 91177308-0d34-0410-b5e6-96231b3b80d8
* Exposed PHIElimination pass within CodeGen.Lang Hames2009-07-212-74/+101
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76688 91177308-0d34-0410-b5e6-96231b3b80d8
* Now that RelocBehaviour() is never overloaded, it doesn't need to beChris Lattner2009-07-213-17/+10
| | | | | | | | virtual. Just inline it into its two current call sites in preparation for simplifying the code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76686 91177308-0d34-0410-b5e6-96231b3b80d8
* Add intrinsic for __builtin_ia32_vec_set_v4si which turns out to beEric Christopher2009-07-211-0/+3
| | | | | | | pinsrd in sse4.1. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76684 91177308-0d34-0410-b5e6-96231b3b80d8
* this doesn't break any of the 4 ia64 tests.Chris Lattner2009-07-212-6/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76683 91177308-0d34-0410-b5e6-96231b3b80d8
* alpha doesn't need to redefine this: it only supports PIC codegen anyway.Chris Lattner2009-07-212-7/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76682 91177308-0d34-0410-b5e6-96231b3b80d8
* Add some support for iterative coalescers to calculate a joined liveDavid Greene2009-07-212-2/+35
| | | | | | | | | | | range's weight properly. This is turned off right now in the sense that you'll get an assert if you get into a situation that can only be caused by an iterative coalescer. All other code paths operate exactly as before so there is no functional change with this patch. The asserts should be disabled if/when an iterative coalescer gets added to trunk. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76680 91177308-0d34-0410-b5e6-96231b3b80d8
* no really, I can spell!Chris Lattner2009-07-213-7/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76679 91177308-0d34-0410-b5e6-96231b3b80d8
* add an API so target-independent codegen can determine if a constantChris Lattner2009-07-213-2/+55
| | | | | | | | | pool entry will require relocations against it. I implemented this conservatively for ARM, someone who is knowledgable about it should see if this can be improved. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76678 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert instcombine from using using getAnalysis<TargetData> toDan Gohman2009-07-211-46/+62
| | | | | | | getAnalysisIfAvailable<TargetData>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76676 91177308-0d34-0410-b5e6-96231b3b80d8
* Permit the IntPtrTy argument to isEliminableCastPair to be null,Dan Gohman2009-07-212-1/+5
| | | | | | | to help support use when TargetData is not available. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76675 91177308-0d34-0410-b5e6-96231b3b80d8
* fix typoChris Lattner2009-07-211-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76674 91177308-0d34-0410-b5e6-96231b3b80d8
* Change ELFCodeEmitter logic to emit the constant pool and jump tables toBruno Cardoso Lopes2009-07-213-28/+30
| | | | | | | | | their appropriate sections before the code itself. They need to be emitted before the function because on some targets (x86 but not x86_64) the later may reference a JT or CP entry address git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76672 91177308-0d34-0410-b5e6-96231b3b80d8
* Replace the original ad-hoc code for determining whether (v pred w) impliesDan Gohman2009-07-213-117/+253
| | | | | | | | | (x pred y) with more thorough code that does more complete canonicalization before resorting to range checks. This helps it find more cases where the canonicalized expressions match. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76671 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove a big test case.Evan Cheng2009-07-211-5384/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76669 91177308-0d34-0410-b5e6-96231b3b80d8
* Various doc updates from Edward O'Callaghan!Chris Lattner2009-07-214-5/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76668 91177308-0d34-0410-b5e6-96231b3b80d8