summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Changes EvaluateAsAbsolute() to return the "current value" of the expressionKevin Enderby2010-09-301-1/+16
| | | | | | | | if we are given a Layout object, even in cases when the value is not fixed. This will be needed by the final patch for the dwarf .loc support to size a new MCDwarf fragment needed to build and emit dwarf line number tables. llvm-svn: 115155
* add support for fstcw, PR8259Chris Lattner2010-09-301-2/+8
| | | | llvm-svn: 115154
* Adds getPointerSize() to the AsmBackend which will be needed by the final patchKevin Enderby2010-09-302-0/+31
| | | | | | for the dwarf .loc support to emit dwarf line number tables. llvm-svn: 115153
* Grow BumpPtrAllocator's slab size dynamically if we allocated many slabs. ThisBenjamin Kramer2010-09-301-0/+6
| | | | | | | | | | | | | | | | | | | | | reduces the amount of malloc calls and may reduce memory overhead. Some numbers: ASTContext stats, clang -cc1 -disable-free -fsyntax-only Cocoa_h.m without dynamic growth | with dynamic growth Number of memory regions: 3158 | Number of memory regions: 432 Bytes used: 12333185 | Bytes used: 12333185 Bytes allocated: 12935168 | Bytes allocated: 12800000 Bytes wasted: 601983 (includes alignment, etc) | Bytes wasted: 466815 (includes alignment, etc) ASTContext stats, clang -cc1 -disable-free -fsyntax-only on clang's ASTReader.cpp without dynamic growth | with dynamic growth Number of memory regions: 10987 | Number of memory regions: 551 Bytes used: 42910356 | Bytes used: 42910356 Bytes allocated: 45002752 | Bytes allocated: 44711936 Bytes wasted: 2092396 (includes alignment, etc) | Bytes wasted: 1801580 (includes alignment, etc) llvm-svn: 115151
* 80 column fixJim Grosbach2010-09-301-1/+3
| | | | llvm-svn: 115149
* Fix two tiny issues (ARM does not need COFF) and comment sanity.Jason W Kim2010-09-301-2/+1
| | | | llvm-svn: 115147
* Tighten up prototype verification of strchr and strrchr to avoid a crash in ↵Benjamin Kramer2010-09-301-2/+4
| | | | | | the very unlikely case that someone passes an integer > i64 to strchr. llvm-svn: 115144
* Silence a GCC warning about not handling all flags in this switch, weChandler Carruth2010-09-301-2/+2
| | | | | | specifically assert on unexpected flags. llvm-svn: 115143
* Move logic of determining ELF entsize from the .s printer to initializationJan Wen Voung2010-09-302-12/+15
| | | | | | | time. That way, the EntrySize field is initialized for other code paths, namely, the .ll -> .o code path. llvm-svn: 115141
* trailing whitespaceJim Grosbach2010-09-301-3/+3
| | | | llvm-svn: 115136
* Remove misplaced ';'. Make buildbots happy, hopefully.Jim Grosbach2010-09-301-1/+1
| | | | llvm-svn: 115135
* Correctly produce R_X86_64_32 or R_X86_64_32S.Rafael Espindola2010-09-306-15/+32
| | | | | | | | | | | | | With this patch in movq $foo, foo(%rip) foo: .long foo We produce a R_X86_64_32S for the first relocation and R_X86_64_32 for the second one. llvm-svn: 115134
* Tiny patch for proof-of-concept cleanup of ARMAsmPrinter::EmitStartOfAsmFile()Jason W Kim2010-09-303-1/+3
| | | | | | | Small test for sanity check of resulting ARM .s file. Tested against -r115129. llvm-svn: 115133
* Have ELFAsmParser.cpp use the already parsed "Size" (entry size) when Jan Wen Voung2010-09-301-1/+2
| | | | | | constructing a section. Test for a few cases also included. llvm-svn: 115132
* Make it possible for the MCObjectWriter to decide if a given fixup is fullyRafael Espindola2010-09-304-132/+208
| | | | | | | | | | | resolved or not. Different object files have different restrictions and different native assemblers have different idiosyncrasies we want to emulate for now. Move the existing MachO logic to the new place and implement an ELF one that gets fixups to globals right. llvm-svn: 115131
* Go ahead and jump!Jim Grosbach2010-09-303-40/+7
| | | | | | | Now that the MC lowering handles the expansion of the pseudos, kill the horrible blobs of text. llvm-svn: 115130
* I added a new file ARMAsmBackend which stubs out in similar ways toJason W Kim2010-09-304-0/+153
| | | | | | | | | | the eqv X86 class. For now, I split the ELFARMAsmBackend from the DarwinARMAsmBackend (also mimicking X86) Tested against -r115126 llvm-svn: 115129
* Now that the pseudos that needed this are all custom lowered, we can go backJim Grosbach2010-09-302-9/+1
| | | | | | to an empty PrintSpecial() llvm-svn: 115128
* Nuke it from orbit. It's the only way to be sure.Jim Grosbach2010-09-303-766/+22
| | | | | | (Kill the dead non-MC asm printer for the ARM target.) llvm-svn: 115127
* Test commit - Deleted some whitespace at the end of a line.Jan Wen Voung2010-09-301-1/+1
| | | | llvm-svn: 115122
* ARM instruction itinerary fixes:Evan Cheng2010-09-307-315/+475
| | | | | | | | 1. Cortex-a9 8-bit and 16-bit loads / stores AGU cycles are 1 cycle longer than 32-bit ones. 2. Cortex-a9 is out-of-order so model all read cycles as cycle 1. 3. Lots of other random fixes for A8 and A9. llvm-svn: 115121
* Add constant folding for strspn and strcspn to SimplifyLibCalls.Benjamin Kramer2010-09-302-15/+64
| | | | llvm-svn: 115116
* Revert r114320(move file = copy + delete on Win32). r115040 is a better ↵Francois Pichet2010-09-301-11/+4
| | | | | | solution for the Win32 ACCESS_DENIED lit error. llvm-svn: 115114
* Add strpbrk folding to SimplifyLibCalls.Benjamin Kramer2010-09-291-7/+42
| | | | llvm-svn: 115111
* Silence compiler warning.Nick Lewycky2010-09-291-1/+1
| | | | llvm-svn: 115107
* Refactor arm fast isel libcall handling so that pieces can be usedEric Christopher2010-09-291-63/+98
| | | | | | for generic call handling. llvm-svn: 115105
* Let FE mark a variable as artificial variable.Devang Patel2010-09-292-3/+9
| | | | llvm-svn: 115102
* Noticed by inspection when looking for other cmov bits.Eric Christopher2010-09-291-0/+3
| | | | llvm-svn: 115100
* Model Cortex-a9 load to SUB, RSB, ADD, ADC, SBC, RSC, CMN, MVN, or CMPEvan Cheng2010-09-296-60/+86
| | | | | | pipeline forwarding path. llvm-svn: 115098
* Silence msvc warnings.Benjamin Kramer2010-09-291-6/+6
| | | | llvm-svn: 115097
* Simplify the loop in StrChrOptimizer. FileCheckize test.Benjamin Kramer2010-09-291-11/+4
| | | | llvm-svn: 115095
* Add a convenience variable so I'm not chasing all over looking forEric Christopher2010-09-291-6/+6
| | | | | | a context. llvm-svn: 115094
* Teach SimplifyLibCalls how to optimize strrchr.Benjamin Kramer2010-09-291-6/+44
| | | | llvm-svn: 115091
* Add support to let FE encode method access specifier.Devang Patel2010-09-291-1/+12
| | | | llvm-svn: 115089
* Generalize DISubprogram element to encode various flags instead of just one ↵Devang Patel2010-09-291-3/+3
| | | | | | | | boolean for isArtificial. This is a backword compatible change. llvm-svn: 115084
* UnreachableBlockElim could incorrectly return false when it had not modified ↵Owen Anderson2010-09-291-1/+4
| | | | | | the CFG, but HAD modified some PHI nodes. Fixes PR8174. llvm-svn: 115083
* Fix PR8247: JumpThreading can cause a block to become unreachable while ↵Owen Anderson2010-09-291-4/+4
| | | | | | | | | | still having predecessor, if it is part of a self-loop. Because of this, we cannot use the Simplify* APIs, as they can assert-fail on unreachable code. Since it's not easy to determine if a given threading will cause a block to become unreachable, simply defer simplifying simplification to later InstCombine and/or DCE passes. llvm-svn: 115082
* Remove PointerTracking from cmakelists …Benjamin Kramer2010-09-291-1/+0
| | | | llvm-svn: 115076
* Assign DW_ACCESS_public accessibility attribute to members by default.Devang Patel2010-09-291-1/+10
| | | | llvm-svn: 115067
* Add specializations of addrmode2 that allow differentiating those formsJim Grosbach2010-09-292-11/+49
| | | | | | | | | which require the use of the shifter-operand. This will be used to split the ldr/str instructions such that those versions needing the shifter operand can get a different scheduling itenerary, as in some cases, the use of the shifter can cause different scheduling than the simpler forms. llvm-svn: 115066
* Add parens to fix GCC warning:Nick Lewycky2010-09-291-2/+2
| | | | | | lib/Target/X86/X86MCCodeEmitter.cpp: 190: error: suggest parentheses around '&&' within '||' llvm-svn: 115064
* remove PointerTracking from mainline, Edwin is going to move it out to ClamAVChris Lattner2010-09-291-316/+0
| | | | | | for LLVM 2.9 llvm-svn: 115062
* implement rdar://8491845 - Gas supports commuted forms of non-commutable ↵Chris Lattner2010-09-291-2/+4
| | | | | | instructions. llvm-svn: 115061
* Revert r114919, which caused some serious regressions on ARM.Owen Anderson2010-09-291-6/+1
| | | | llvm-svn: 115053
* Increase ARM APCS preferred alignment for i64 and f64 from 32 bits to 64 bits.Bob Wilson2010-09-292-3/+3
| | | | | | | LDM/STM instructions can run one cycle faster on some ARM processors if the memory address is 64-bit aligned. Radar 8489376. llvm-svn: 115047
* Add braces for legibility.Jim Grosbach2010-09-291-1/+2
| | | | llvm-svn: 115043
* One Printer to rule them all, One Printer to find them,Jim Grosbach2010-09-291-102/+1
| | | | | | | | | One Printer to lower them all and in the back end bind them. (Remove option to use the old non-MC asm printer.) llvm-svn: 115038
* Move "local commons" to the end of .bss to match the gnu as behavior.Rafael Espindola2010-09-291-9/+29
| | | | llvm-svn: 115037
* improve heuristics to find the 'and' corresponding to 'tst' to also catch ↵Gabor Greif2010-09-291-8/+20
| | | | | | | | opportunities on thumb2 added some doxygen on the way llvm-svn: 115033
* fix rdar://8490728 - llvm-mc rejects gpr64 form of 'movmskpd'Chris Lattner2010-09-291-2/+4
| | | | llvm-svn: 115029
OpenPOWER on IntegriCloud