LLVM 23.0.0git
X86MCAsmInfo.h
Go to the documentation of this file.
1//===-- X86MCAsmInfo.h - X86 asm properties --------------------*- C++ -*--===//
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 contains the declaration of the X86MCAsmInfo class.
10//
11//===----------------------------------------------------------------------===//
12
13#ifndef LLVM_LIB_TARGET_X86_MCTARGETDESC_X86MCASMINFO_H
14#define LLVM_LIB_TARGET_X86_MCTARGETDESC_X86MCASMINFO_H
15
17#include "llvm/ADT/StringSet.h"
21#include "llvm/MC/MCExpr.h"
22
23namespace llvm {
24class Triple;
25
27 virtual void anchor();
28
29public:
31 explicit X86MCAsmInfoDarwin(const Triple &Triple,
33 bool isValidUnquotedName(StringRef Name) const override;
34};
35
37 explicit X86_64MCAsmInfoDarwin(const Triple &Triple,
39 const MCExpr *
40 getExprForPersonalitySymbol(const MCSymbol *Sym, unsigned Encoding,
41 MCStreamer &Streamer) const override;
42};
43
45 void anchor() override;
46
47public:
49 explicit X86ELFMCAsmInfo(const Triple &Triple,
51 bool isValidUnquotedName(StringRef Name) const override;
52};
53
55 void anchor() override;
56
57public:
59 explicit X86MCAsmInfoMicrosoft(const Triple &Triple,
61 bool isValidUnquotedName(StringRef Name) const override;
62};
63
65 void anchor() override;
66
67public:
70};
71
73 void anchor() override;
74
75public:
77 explicit X86MCAsmInfoGNUCOFF(const Triple &Triple,
79 bool isValidUnquotedName(StringRef Name) const override;
80};
81
82namespace X86 {
84
85enum {
88
115};
116} // namespace X86
117} // namespace llvm
118
119#endif
static LVOptions Options
Definition LVOptions.cpp:25
StringSet - A set-like wrapper for the StringMap.
MCAsmInfoDarwin(const MCTargetOptions &Options)
MCAsmInfoELF(const MCTargetOptions &Options)
MCAsmInfoGNUCOFF(const MCTargetOptions &Options)
MCAsmInfoMicrosoft(const MCTargetOptions &Options)
Base class for the full range of assembler expressions which are needed for parsing.
Definition MCExpr.h:34
Streaming machine code generation interface.
Definition MCStreamer.h:222
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
Definition MCSymbol.h:42
StringRef - Represent a constant reference to a string, i.e.
Definition StringRef.h:55
StringSet - A wrapper for StringMap that provides set-like functionality.
Definition StringSet.h:25
Triple - Helper class for working with autoconf configuration names.
Definition Triple.h:47
StringSet ReservedIdentifiers
bool isValidUnquotedName(StringRef Name) const override
Return true if the identifier Name does not need quotes to be syntactically correct.
X86ELFMCAsmInfo(const Triple &Triple, const MCTargetOptions &Options)
bool isValidUnquotedName(StringRef Name) const override
Return true if the identifier Name does not need quotes to be syntactically correct.
X86MCAsmInfoDarwin(const Triple &Triple, const MCTargetOptions &Options)
bool isValidUnquotedName(StringRef Name) const override
Return true if the identifier Name does not need quotes to be syntactically correct.
X86MCAsmInfoGNUCOFF(const Triple &Triple, const MCTargetOptions &Options)
X86MCAsmInfoMicrosoftMASM(const Triple &Triple, const MCTargetOptions &Options)
bool isValidUnquotedName(StringRef Name) const override
Return true if the identifier Name does not need quotes to be syntactically correct.
X86MCAsmInfoMicrosoft(const Triple &Triple, const MCTargetOptions &Options)
Define some predicates that are used for node matching.
uint16_t Specifier
@ S_GOTPCREL_NORELAX
This is an optimization pass for GlobalISel generic memory operations.
const MCExpr * getExprForPersonalitySymbol(const MCSymbol *Sym, unsigned Encoding, MCStreamer &Streamer) const override
X86_64MCAsmInfoDarwin(const Triple &Triple, const MCTargetOptions &Options)