summaryrefslogtreecommitdiff
path: root/lib/Target/SystemZ/SystemZMCAsmInfo.cpp
blob: ba392bb4d558df2c8ae74408d0a7712685d8ba01 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
//===-- SystemZMCAsmInfo.cpp - SystemZ 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 contains the declarations of the SystemZMCAsmInfo properties.
//
//===----------------------------------------------------------------------===//

#include "SystemZMCAsmInfo.h"
#include "llvm/MC/MCSectionELF.h"
using namespace llvm;

SystemZMCAsmInfo::SystemZMCAsmInfo(const Target &T, const StringRef &TT) {
  AlignmentIsInBytes = true;

  PrivateGlobalPrefix = ".L";
  WeakRefDirective = "\t.weak\t";
  SetDirective = "\t.set\t";
  PCSymbol = ".";
}

MCSection *SystemZMCAsmInfo::getNonexecutableStackSection(MCContext &Ctx) const{
  return MCSectionELF::Create(".note.GNU-stack", MCSectionELF::SHT_PROGBITS,
                              0, SectionKind::getMetadata(), false, Ctx);
}