LLVM
17.0.0git
lib
MC
MCAsmInfoELF.cpp
Go to the documentation of this file.
1
//===- MCAsmInfoELF.cpp - ELF asm properties ------------------------------===//
2
//
3
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
// See https://llvm.org/LICENSE.txt for license information.
5
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
//
7
//===----------------------------------------------------------------------===//
8
//
9
// This file defines target asm properties related what form asm statements
10
// should take in general on ELF-based targets
11
//
12
//===----------------------------------------------------------------------===//
13
14
#include "
llvm/MC/MCAsmInfoELF.h
"
15
#include "
llvm/BinaryFormat/ELF.h
"
16
#include "
llvm/MC/MCContext.h
"
17
#include "
llvm/MC/MCSectionELF.h
"
18
19
using namespace
llvm
;
20
21
void
MCAsmInfoELF::anchor() {}
22
23
MCSection
*MCAsmInfoELF::getNonexecutableStackSection(
MCContext
&Ctx)
const
{
24
return
Ctx.
getELFSection
(
".note.GNU-stack"
,
ELF::SHT_PROGBITS
, 0);
25
}
26
27
MCAsmInfoELF::MCAsmInfoELF
() {
28
HasIdentDirective
=
true
;
29
WeakRefDirective
=
"\t.weak\t"
;
30
PrivateGlobalPrefix
=
".L"
;
31
PrivateLabelPrefix
=
".L"
;
32
}
ELF.h
MCAsmInfoELF.h
MCContext.h
MCSectionELF.h
llvm::MCAsmInfoELF::MCAsmInfoELF
MCAsmInfoELF()
Definition:
MCAsmInfoELF.cpp:27
llvm::MCAsmInfo::PrivateGlobalPrefix
StringRef PrivateGlobalPrefix
This prefix is used for globals like constant pool entries that are completely private to the ....
Definition:
MCAsmInfo.h:168
llvm::MCAsmInfo::WeakRefDirective
const char * WeakRefDirective
This directive, if non-null, is used to declare a global as being a weak undefined symbol.
Definition:
MCAsmInfo.h:414
llvm::MCAsmInfo::PrivateLabelPrefix
StringRef PrivateLabelPrefix
This prefix is used for labels for basic blocks.
Definition:
MCAsmInfo.h:172
llvm::MCAsmInfo::HasIdentDirective
bool HasIdentDirective
True if the target has a .ident directive, this is true for ELF targets.
Definition:
MCAsmInfo.h:399
llvm::MCContext
Context object for machine code objects.
Definition:
MCContext.h:76
llvm::MCContext::getELFSection
MCSectionELF * getELFSection(const Twine &Section, unsigned Type, unsigned Flags)
Definition:
MCContext.h:563
llvm::MCSection
Instances of this class represent a uniqued identifier for a section in the current translation unit.
Definition:
MCSection.h:39
llvm::ELF::SHT_PROGBITS
@ SHT_PROGBITS
Definition:
ELF.h:1000
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition:
AddressRanges.h:18
Generated on Tue Jun 6 2023 03:24:09 for LLVM by
1.9.6