1251607Sdim//===-- SystemZMCAsmInfo.cpp - SystemZ asm properties ---------------------===// 2251607Sdim// 3251607Sdim// The LLVM Compiler Infrastructure 4251607Sdim// 5251607Sdim// This file is distributed under the University of Illinois Open Source 6251607Sdim// License. See LICENSE.TXT for details. 7251607Sdim// 8251607Sdim//===----------------------------------------------------------------------===// 9251607Sdim 10251607Sdim#include "SystemZMCAsmInfo.h" 11251607Sdim#include "llvm/MC/MCContext.h" 12251607Sdim#include "llvm/MC/MCSectionELF.h" 13251607Sdim 14251607Sdimusing namespace llvm; 15251607Sdim 16263508SdimSystemZMCAsmInfo::SystemZMCAsmInfo(StringRef TT) { 17251607Sdim PointerSize = 8; 18251607Sdim CalleeSaveStackSlotSize = 8; 19251607Sdim IsLittleEndian = false; 20251607Sdim 21251607Sdim CommentString = "#"; 22251607Sdim GlobalPrefix = ""; 23251607Sdim PrivateGlobalPrefix = ".L"; 24251607Sdim ZeroDirective = "\t.space\t"; 25251607Sdim Data64bitsDirective = "\t.quad\t"; 26251607Sdim UsesELFSectionDirectiveForBSS = true; 27251607Sdim SupportsDebugInformation = true; 28251607Sdim HasLEB128 = true; 29251607Sdim ExceptionsType = ExceptionHandling::DwarfCFI; 30251607Sdim} 31251607Sdim 32251607Sdimconst MCSection * 33251607SdimSystemZMCAsmInfo::getNonexecutableStackSection(MCContext &Ctx) const { 34251607Sdim return Ctx.getELFSection(".note.GNU-stack", ELF::SHT_PROGBITS, 35251607Sdim 0, SectionKind::getMetadata()); 36251607Sdim} 37