summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* mcstreamer'ize the rest of EmitGlobalVariable that is used on Chris Lattner2010-01-191-6/+8
| | | | | | | darwin. The next big piece to get global variables streamerized is EmitGlobalConstant. llvm-svn: 93870
* don't let asm-verbose break the check-next lines in these tests.Chris Lattner2010-01-193-4/+4
| | | | llvm-svn: 93869
* stop using the .lcomm pseudoop on darwin, instead, directly use theChris Lattner2010-01-196-24/+38
| | | | | | .zerofill directive. Streamerize its generation. llvm-svn: 93868
* fix parsing .comm directives on systems which do not represent alignmentsChris Lattner2010-01-192-1/+10
| | | | | | as a power of 2. This fixes MC/AsmParser/directive_comm.s llvm-svn: 93867
* only darwin has zerofillChris Lattner2010-01-191-1/+1
| | | | llvm-svn: 93866
* MDNodes are not expected to disappear or replaced by another MDNode, so ↵Devang Patel2010-01-192-15/+16
| | | | | | there is no need to pay the cost of WeakVH and ValueMaps. llvm-svn: 93865
* Avoid including DebugInfo.h in AsmPrinter.hDevang Patel2010-01-196-4/+8
| | | | llvm-svn: 93864
* zap the ARM version of PrintGlobalVariable, which I missed.Chris Lattner2010-01-191-113/+0
| | | | llvm-svn: 93863
* When looking up enumerator names for redeclaration, use theDouglas Gregor2010-01-192-1/+13
| | | | | | | ForRedeclaration flag so that we don't look into base classes. Fixes PR6061. llvm-svn: 93862
* Update Xcode project.Anders Carlsson2010-01-191-8/+36
| | | | llvm-svn: 93861
* mc'ize some stuff, don't comment out .lcomm directive in -fverbose-asm mode.Chris Lattner2010-01-192-10/+11
| | | | llvm-svn: 93860
* factor this code better.Chris Lattner2010-01-191-21/+13
| | | | llvm-svn: 93859
* Now that we have everything nicely factored (e.g. asmprinter is notChris Lattner2010-01-1915-831/+128
| | | | | | | | | | | | | | | | | | | | | | | doing global variable classification anymore) and hookized, sink almost all target targets global variable emission code into AsmPrinter and out of each target. Some notes: 1. PIC16 does completely custom and crazy stuff, so it is not changed. 2. XCore has some custom handling for extra directives. I'll look at it next. 3. This switches linux/ppc to use .globl instead of .global. If .globl is actually wrong, let me know and I'll fix it. 4. This makes linux/ppc get a lot of random cases right which were obviously wrong before, it is probably now a bit healthier. 5. Blackfin will probably start getting .comm and other things that it didn't before. If this is undesirable, it should explicitly opt out of these things by clearing the relevant fields of MCAsmInfo. This leads to a nice diffstat: 14 files changed, 127 insertions(+), 830 deletions(-) llvm-svn: 93858
* use %object like other elf targets, gas accepts either.Chris Lattner2010-01-191-1/+1
| | | | llvm-svn: 93857
* simplify the mips target to print .size and .type for c strings Chris Lattner2010-01-191-6/+2
| | | | | | | just like all other elf targets. Bruno, if this isn't right, please let me know + why :) llvm-svn: 93856
* hookize the cygwin ".linkonce" directive.Chris Lattner2010-01-194-12/+20
| | | | llvm-svn: 93855
* more cleanups. Emit the .local directive even on cygwin/mingw.Chris Lattner2010-01-191-6/+3
| | | | | | | | I'm not sure that this is correct, but it causes no test failures, and just emitting a .comm without protecting its linkage somehow is surely not right. llvm-svn: 93854
* some cleanupsChris Lattner2010-01-192-20/+21
| | | | llvm-svn: 93853
* add a bool for whether .lcomm takes an alignment instead of basing this on ↵Chris Lattner2010-01-196-11/+21
| | | | | | "isdarwin". llvm-svn: 93852
* hoist handling of external globals and special globals up to common code.Chris Lattner2010-01-195-74/+62
| | | | | | | | | | This makes a similar code dead in all the other targets, I'll clean it up in a bit. This also moves handling of lcomm up before acquisition of a section, since lcomm never needs a section. llvm-svn: 93851
* move production of .reference directives for static ctor/dtor list onChris Lattner2010-01-197-29/+23
| | | | | | darwin into common code. llvm-svn: 93849
* Fix a crash in scalarrepl for memcpy/memmove where the source and destinationBob Wilson2010-01-192-6/+28
| | | | | | | | | are the same. I had already fixed a similar problem where the source and destination were different bitcasts derived from the same alloca, but the previous fix still did not handle the case where both operands are exactly the same value. Radar 7552893. llvm-svn: 93848
* use BSSLocal classifier to identify 'lcomm' data instead ofChris Lattner2010-01-194-72/+41
| | | | | | duplicating the logic (differently) in lots of different targets. llvm-svn: 93847
* make TLOF subclassify BSS based on linkage type into private, externalChris Lattner2010-01-192-3/+20
| | | | | | and everything else (weak). llvm-svn: 93846
* now that elf weak bss symbols are handled correctly, simplify a bunch of code.Chris Lattner2010-01-193-89/+18
| | | | llvm-svn: 93845
* fix a significant difference between llvm and gcc on ELF systems:Chris Lattner2010-01-193-3/+20
| | | | | | | | GCC would put weak zero initialized mutable data in the .bss section, we would put it into a crasy '.gnu.linkonce.b.test,"aw",@nobits' section. Fixing this will allow simplifications next up. llvm-svn: 93844
* introduce a section kind for common linkage. Use this to slightlyChris Lattner2010-01-196-25/+107
| | | | | | | | | simplify and commonize some of the asmprinter logic for globals. This also avoids printing the MCSection for .zerofill, which broke the llvm-gcc build. llvm-svn: 93843
* there is no need to emit a .section above .comm on linux.Chris Lattner2010-01-191-1/+0
| | | | llvm-svn: 93842
* Even more explanation.Bill Wendling2010-01-192-0/+24
| | | | llvm-svn: 93841
* Add try/catch CFG support. Also improve throw CFG support. WIP.Mike Stump2010-01-191-10/+100
| | | | llvm-svn: 93840
* change an accessor to a predicate.Chris Lattner2010-01-194-8/+8
| | | | llvm-svn: 93839
* Cleanup handling of .zerofill on darwin:Chris Lattner2010-01-198-153/+176
| | | | | | | | | | | | | 1. TargetLoweringObjectFileMachO should decide if something goes in zerofill instead of having every target do it. 2. TargetLoweringObjectFileMachO should assign said symbols to the right MCSection, the asmprinters should just emit to the right section. 3. Since all zerofill stuff goes through mcstreamer anymore, MAI can have a bool "haszerofill" instead of having the textual directive to emit. llvm-svn: 93838
* Emit human readable names for operators.Devang Patel2010-01-191-4/+3
| | | | llvm-svn: 93837
* First cut at emitting debugging information for C++ member functions.Devang Patel2010-01-192-2/+77
| | | | | | There is lot more work to do in this area. llvm-svn: 93836
* Remove this fixme, looking at the linker source, all targets pad to 4 bytes.Nate Begeman2010-01-191-2/+0
| | | | llvm-svn: 93835
* Fix possible memory leak by using an OwningPtr.Ted Kremenek2010-01-191-5/+5
| | | | llvm-svn: 93834
* remove extraneous ;Chris Lattner2010-01-191-1/+1
| | | | llvm-svn: 93833
* Revert accident check-in from r93165.Devang Patel2010-01-191-8/+6
| | | | llvm-svn: 93832
* Fix comment.Eric Christopher2010-01-191-1/+1
| | | | llvm-svn: 93831
* Introduce clang_getCursorReferenced, to get a cursor pointing at theDouglas Gregor2010-01-197-17/+71
| | | | | | entity that a particular cursor references. llvm-svn: 93830
* Fix r93758. Use isel patterns instead of c++ selection code to select rbit ↵Evan Cheng2010-01-193-8/+7
| | | | | | and make sure we pick different instructions for ARM vs. Thumb2. llvm-svn: 93829
* Test case for r93758.Evan Cheng2010-01-191-0/+11
| | | | llvm-svn: 93824
* Implement clang_getCursorExtent, which provides a source range for theDouglas Gregor2010-01-195-64/+121
| | | | | | | | | | | | | cursor itself. In particular, for references this returns the source range of the reference rather than the source range of the thing it refers to. Switch c-index-test from clang_getDeclExtent (which will eventually be deprecated and removed) over to clang_getCursorExtent. The source ranges we print for references now make sense; fix up the tests appropriately. llvm-svn: 93823
* Use llvm::Function name as the linkage name, but strip off leading '01' from ↵Devang Patel2010-01-191-0/+2
| | | | | | display name. llvm-svn: 93822
* Reverting.Dale Johannesen2010-01-191-55/+0
| | | | llvm-svn: 93819
* Revert 93811 per request.Dale Johannesen2010-01-192-13/+0
| | | | llvm-svn: 93818
* Add .mk for use by clang/Darwin.Daniel Dunbar2010-01-191-0/+30
| | | | llvm-svn: 93817
* Allow UniversalArchs variable to be overridden on a per-config basis.Daniel Dunbar2010-01-192-3/+5
| | | | llvm-svn: 93816
* Split up switch.S and save_restore_d8_d15.S to follow one function per file ↵Daniel Dunbar2010-01-197-101/+211
| | | | | | convention. llvm-svn: 93815
* Refactor.Devang Patel2010-01-192-49/+62
| | | | llvm-svn: 93814
OpenPOWER on IntegriCloud