#include "llvm/MC/MCAsmInfo.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/BinaryFormat/Dwarf.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCStreamer.h"
#include "llvm/Support/CommandLine.h"
usingnamespacellvm;
namespace {
enum DefaultOnOff { … };
}
static cl::opt<DefaultOnOff> DwarfExtendedLoc(
"dwarf-extended-loc", cl::Hidden,
cl::desc("Disable emission of the extended flags in .loc directives."),
cl::values(clEnumVal(Default, "Default for platform"),
clEnumVal(Enable, "Enabled"), clEnumVal(Disable, "Disabled")),
cl::init(Default));
namespace llvm {
cl::opt<cl::boolOrDefault> UseLEB128Directives(
"use-leb128-directives", cl::Hidden,
cl::desc(
"Disable the usage of LEB128 directives, and generate .byte instead."),
cl::init(cl::BOU_UNSET));
}
MCAsmInfo::MCAsmInfo() { … }
MCAsmInfo::~MCAsmInfo() = default;
void MCAsmInfo::addInitialFrameState(const MCCFIInstruction &Inst) { … }
const MCExpr *
MCAsmInfo::getExprForPersonalitySymbol(const MCSymbol *Sym,
unsigned Encoding,
MCStreamer &Streamer) const { … }
const MCExpr *
MCAsmInfo::getExprForFDESymbol(const MCSymbol *Sym,
unsigned Encoding,
MCStreamer &Streamer) const { … }
bool MCAsmInfo::isAcceptableChar(char C) const { … }
bool MCAsmInfo::isValidUnquotedName(StringRef Name) const { … }
bool MCAsmInfo::shouldOmitSectionDirective(StringRef SectionName) const { … }