summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC/MCAsmInfo.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Added the darwin .weak_def_can_be_hidden directive.Kevin Enderby2010-07-081-0/+1
| | | | llvm-svn: 107886
* Revert r107205 and r107207.Bill Wendling2010-06-291-1/+0
| | | | llvm-svn: 107215
* Introducing the "linker_weak" linkage type. This will be used for Objective-CBill Wendling2010-06-291-0/+1
| | | | | | | | | | | | | | | | | | | metadata types which should be marked as "weak", but which the linker will remove upon final linkage. For example, the "objc_msgSend_fixup_alloc" symbol is defined like this: .globl l_objc_msgSend_fixup_alloc .weak_definition l_objc_msgSend_fixup_alloc .section __DATA, __objc_msgrefs, coalesced .align 3 l_objc_msgSend_fixup_alloc: .quad _objc_msgSend_fixup .quad L_OBJC_METH_VAR_NAME_1 This is different from the "linker_private" linkage type, because it can't have the metadata defined with ".weak_definition". llvm-svn: 107205
* Partial code for emitting thread local bss data.Eric Christopher2010-05-201-0/+1
| | | | llvm-svn: 104197
* Add support for assemblers that don't support periods in a nameMon P Wang2010-04-291-0/+1
| | | | llvm-svn: 102594
* eliminate the magic AbsoluteDebugSectionOffsets MAI hook,Chris Lattner2010-04-041-1/+0
| | | | | | | | | which is really a property of the section being referenced. Add a predicate to MCSection to replace it. Yay for reduction in magic. llvm-svn: 100367
* isAbsoluteEHSectionOffsets always returns false, eliminate it Chris Lattner2010-04-041-1/+0
| | | | | | and substitute false at the one call site. llvm-svn: 100354
* move fastcall/stdcall mangling up into Mangler.Chris Lattner2010-03-121-0/+1
| | | | llvm-svn: 98384
* move three lowering hooks from MAI to TLOF and make one of themChris Lattner2010-03-101-3/+0
| | | | | | | semantic instead of syntactic. This completes MCization of darwin/x86[-64]! llvm-svn: 98145
* MC: Change default comment column to 40 characters.Daniel Dunbar2010-02-051-1/+1
| | | | llvm-svn: 95378
* Eliminate SetDirective, and replace it with HasSetDirective.Chris Lattner2010-01-261-1/+1
| | | | | | | | | | | Default HasSetDirective to true, since most targets have it. The targets that claim to not have it probably do, or it is spelled differently. These include Blackfin, Mips, Alpha, and PIC16. All of these except pic16 are normal ELF targets, so they almost certainly have it. llvm-svn: 94585
* Emit .comm alignment in bytes but .align in powers of 2 for ARM ELF.Rafael Espindola2010-01-261-0/+1
| | | | | | Original patch by Sandeep Patel and updated by me. llvm-svn: 94582
* eliminate MCAsmInfo::NeedsSet: we now just use .set on any platformChris Lattner2010-01-261-1/+0
| | | | | | that has it. llvm-svn: 94581
* rename MAI::PICJumpTableDirective to MAI::GPRel32Directive toChris Lattner2010-01-251-1/+1
| | | | | | make it clear what it is, instead of how it is used. llvm-svn: 94448
* remove JumpTableDirective, it is always null.Chris Lattner2010-01-251-1/+0
| | | | llvm-svn: 94445
* all supported target now have aligned common support.Chris Lattner2010-01-251-1/+0
| | | | llvm-svn: 94413
* mcize lcomm, simplify .comm, extend both to support 64-bit sizes.Chris Lattner2010-01-231-2/+1
| | | | llvm-svn: 94299
* resolve a fixme: the "nonexecutable stack directive" is actuallyChris Lattner2010-01-231-1/+1
| | | | | | | | | a .section. Switch to it with SwitchSection. However, I think that this directive should be safe on any ELF target. If so, we should hoist it up out of the X86 and SystemZ targets. llvm-svn: 94298
* mcize visibility directives.Chris Lattner2010-01-231-3/+2
| | | | llvm-svn: 94295
* mcstreamerize .no_dead_strip and .reference for static ctors/dtors.Chris Lattner2010-01-231-1/+1
| | | | llvm-svn: 94290
* revert 93934, removing the MCAsmInfo endianness bit. I can'tChris Lattner2010-01-201-2/+1
| | | | | | | stomache MCAsmInfo having this, and I found a better solution to this layering issue. llvm-svn: 93985
* give MCAsmInfo a 'has little endian' bit. This is unfortunate, butChris Lattner2010-01-191-1/+2
| | | | | | | | | I really want clients of the streamer to be able to say "emit this 64-bit integer" and have it get broken down right by the streamer. I may change this in the future, we'll see how it works out. llvm-svn: 93934
* remove MAI::ZeroDirectiveSuffix, which is only used by MASM,Chris Lattner2010-01-191-1/+0
| | | | | | which we don't support anymore. llvm-svn: 93886
* stop using the .lcomm pseudoop on darwin, instead, directly use theChris Lattner2010-01-191-1/+0
| | | | | | .zerofill directive. Streamerize its generation. llvm-svn: 93868
* hookize the cygwin ".linkonce" directive.Chris Lattner2010-01-191-0/+1
| | | | llvm-svn: 93855
* add a bool for whether .lcomm takes an alignment instead of basing this on ↵Chris Lattner2010-01-191-0/+1
| | | | | | "isdarwin". llvm-svn: 93852
* move production of .reference directives for static ctor/dtor list onChris Lattner2010-01-191-0/+1
| | | | | | darwin into common code. llvm-svn: 93849
* Cleanup handling of .zerofill on darwin:Chris Lattner2010-01-191-1/+1
| | | | | | | | | | | | | 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
* Move DataTypes.h to include/llvm/System, update all users. This breaks the lastChandler Carruth2009-10-261-1/+1
| | | | | | direct inclusion edge from System to Support. llvm-svn: 85086
* Allow symbols to start from the digit if target requests it. This allows, ↵Anton Korobeynikov2009-09-181-0/+1
| | | | | | | | | e.g. pinning variables to specified absolute address. Make use of this feature for MSP430. This unbreaks PR4776. llvm-svn: 82227
* Big change #1 for personality function references:Chris Lattner2009-09-161-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | Eliminate the PersonalityPrefix/Suffix & NeedsIndirectEncoding fields from MAI: they aren't part of the asm syntax, they are related to the structure of the object file. To replace their functionality, add a new TLOF::getSymbolForDwarfGlobalReference method which asks targets to decide how to reference a global from EH in a pc-relative way. The default implementation just returns the symbol. The default darwin implementation references the symbol through an indirect $non_lazy_ptr stub. The bizarro x86-64 darwin specialization handles the weird "foo@GOTPCREL+4" hack. DwarfException.cpp now uses this to emit the reference to the symbol in the right way, and this also eliminates another horrible hack from DwarfException.cpp: - if (strcmp(MAI->getPersonalitySuffix(), "+4@GOTPCREL")) - O << "-" << MAI->getPCSymbol(); llvm-svn: 81991
* remove some horrible MAI hooks which fortunately turn out to be always empty.Chris Lattner2009-09-151-4/+0
| | | | llvm-svn: 81946
* remove MAI::JumpTableSpecialLabelPrefix now that MAI Chris Lattner2009-09-131-1/+0
| | | | | | has real information about linker private linkage. llvm-svn: 81695
* Revert last patch. We need to put this into TargetLowering. There will be a lotBill Wendling2009-08-251-1/+0
| | | | | | of EH stuff going into there, so we can wait to add them all then. llvm-svn: 80036
* Add the #include here.Bill Wendling2009-08-251-0/+1
| | | | llvm-svn: 80032
* Add a target asm info hook to specify that particular bits of data in the FDEBill Wendling2009-08-251-0/+1
| | | | | | | | | | should be forced to 32-bits (.long) even on 64-bit architectures. Darwin wants these bits to be 64-bits (.quad). However, other platforms may disagree. This is just the info right now and is part of a work-in-progress which needs this. We'll add the actual *use* of this soon. llvm-svn: 80024
* rename TAI -> MAI, being careful not to make MAILJMP instructions :)Chris Lattner2009-08-221-1/+1
| | | | llvm-svn: 79777
* move the MCAsmInfo .cpp/.h files into the right Chris Lattner2009-08-221-0/+113
directories and rename them. llvm-svn: 79768
OpenPOWER on IntegriCloud