| //===- MCAsmInfoELF.cpp - ELF asm properties ------------------------------===// | 
 | // | 
 | //                     The LLVM Compiler Infrastructure | 
 | // | 
 | // This file is distributed under the University of Illinois Open Source | 
 | // License. See LICENSE.TXT for details. | 
 | // | 
 | //===----------------------------------------------------------------------===// | 
 | // | 
 | // This file defines target asm properties related what form asm statements | 
 | // should take in general on ELF-based targets | 
 | // | 
 | //===----------------------------------------------------------------------===// | 
 |  | 
 | #include "llvm/MC/MCAsmInfoELF.h" | 
 | #include "llvm/BinaryFormat/ELF.h" | 
 | #include "llvm/MC/MCContext.h" | 
 | #include "llvm/MC/MCSectionELF.h" | 
 |  | 
 | using namespace llvm; | 
 |  | 
 | void MCAsmInfoELF::anchor() {} | 
 |  | 
 | MCSection *MCAsmInfoELF::getNonexecutableStackSection(MCContext &Ctx) const { | 
 |   if (!UsesNonexecutableStackSection) | 
 |     return nullptr; | 
 |   return Ctx.getELFSection(".note.GNU-stack", ELF::SHT_PROGBITS, 0); | 
 | } | 
 |  | 
 | MCAsmInfoELF::MCAsmInfoELF() { | 
 |   HasIdentDirective = true; | 
 |   WeakRefDirective = "\t.weak\t"; | 
 |   PrivateGlobalPrefix = ".L"; | 
 |   PrivateLabelPrefix = ".L"; | 
 | } |