Path: blob/main/contrib/llvm-project/llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.h
35294 views
//===-- X86MCAsmInfo.h - X86 asm properties --------------------*- C++ -*--===//1//2// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.3// See https://llvm.org/LICENSE.txt for license information.4// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception5//6//===----------------------------------------------------------------------===//7//8// This file contains the declaration of the X86MCAsmInfo class.9//10//===----------------------------------------------------------------------===//1112#ifndef LLVM_LIB_TARGET_X86_MCTARGETDESC_X86MCASMINFO_H13#define LLVM_LIB_TARGET_X86_MCTARGETDESC_X86MCASMINFO_H1415#include "llvm/MC/MCAsmInfoCOFF.h"16#include "llvm/MC/MCAsmInfoDarwin.h"17#include "llvm/MC/MCAsmInfoELF.h"1819namespace llvm {20class Triple;2122class X86MCAsmInfoDarwin : public MCAsmInfoDarwin {23virtual void anchor();2425public:26explicit X86MCAsmInfoDarwin(const Triple &Triple);27};2829struct X86_64MCAsmInfoDarwin : public X86MCAsmInfoDarwin {30explicit X86_64MCAsmInfoDarwin(const Triple &Triple);31const MCExpr *32getExprForPersonalitySymbol(const MCSymbol *Sym, unsigned Encoding,33MCStreamer &Streamer) const override;34};3536class X86ELFMCAsmInfo : public MCAsmInfoELF {37void anchor() override;3839public:40explicit X86ELFMCAsmInfo(const Triple &Triple);41};4243class X86MCAsmInfoMicrosoft : public MCAsmInfoMicrosoft {44void anchor() override;4546public:47explicit X86MCAsmInfoMicrosoft(const Triple &Triple);48};4950class X86MCAsmInfoMicrosoftMASM : public X86MCAsmInfoMicrosoft {51void anchor() override;5253public:54explicit X86MCAsmInfoMicrosoftMASM(const Triple &Triple);55};5657class X86MCAsmInfoGNUCOFF : public MCAsmInfoGNUCOFF {58void anchor() override;5960public:61explicit X86MCAsmInfoGNUCOFF(const Triple &Triple);62};63} // namespace llvm6465#endif666768