brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.4 KiB · 0b3778b Raw
45 lines · c
1//===-- WebAssemblyMCAsmInfo.h - WebAssembly 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-exception6//7//===----------------------------------------------------------------------===//8///9/// \file10/// This file contains the declaration of the WebAssemblyMCAsmInfo class.11///12//===----------------------------------------------------------------------===//13 14#ifndef LLVM_LIB_TARGET_WEBASSEMBLY_MCTARGETDESC_WEBASSEMBLYMCASMINFO_H15#define LLVM_LIB_TARGET_WEBASSEMBLY_MCTARGETDESC_WEBASSEMBLYMCASMINFO_H16 17#include "llvm/MC/MCAsmInfoWasm.h"18 19namespace llvm {20 21class Triple;22 23class WebAssemblyMCAsmInfo final : public MCAsmInfoWasm {24public:25  explicit WebAssemblyMCAsmInfo(const Triple &T,26                                const MCTargetOptions &Options);27  ~WebAssemblyMCAsmInfo() override;28};29 30namespace WebAssembly {31enum Specifier {32  S_None,33  S_FUNCINDEX, // Wasm function index34  S_GOT,35  S_GOT_TLS,   // Wasm global index of TLS symbol36  S_MBREL,     // Memory address relative to __memory_base37  S_TBREL,     // Table index relative to __table_base38  S_TLSREL,    // Memory address relative to __tls_base39  S_TYPEINDEX, // Reference to a symbol's type (signature)40};41}42} // end namespace llvm43 44#endif45