LLVM API Documentation
00001 //===-- SystemZMCAsmInfo.cpp - SystemZ asm properties ---------------------===// 00002 // 00003 // The LLVM Compiler Infrastructure 00004 // 00005 // This file is distributed under the University of Illinois Open Source 00006 // License. See LICENSE.TXT for details. 00007 // 00008 //===----------------------------------------------------------------------===// 00009 00010 #include "SystemZMCAsmInfo.h" 00011 #include "llvm/MC/MCContext.h" 00012 #include "llvm/MC/MCSectionELF.h" 00013 00014 using namespace llvm; 00015 00016 SystemZMCAsmInfo::SystemZMCAsmInfo(StringRef TT) { 00017 PointerSize = 8; 00018 CalleeSaveStackSlotSize = 8; 00019 IsLittleEndian = false; 00020 00021 CommentString = "#"; 00022 ZeroDirective = "\t.space\t"; 00023 Data64bitsDirective = "\t.quad\t"; 00024 UsesELFSectionDirectiveForBSS = true; 00025 SupportsDebugInformation = true; 00026 ExceptionsType = ExceptionHandling::DwarfCFI; 00027 } 00028 00029 const MCSection * 00030 SystemZMCAsmInfo::getNonexecutableStackSection(MCContext &Ctx) const { 00031 return Ctx.getELFSection(".note.GNU-stack", ELF::SHT_PROGBITS, 00032 0, SectionKind::getMetadata()); 00033 }