LLVM 22.0.0git
MSP430AttributeParser.h
Go to the documentation of this file.
1//===-- MSP430AttributeParser.h - MSP430 Attribute Parser -------*- 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/// \file
10/// This file contains support routines for parsing MSP430 ELF build attributes.
11///
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_SUPPORT_MSP430ATTRIBUTEPARSER_H
15#define LLVM_SUPPORT_MSP430ATTRIBUTEPARSER_H
16
20
21namespace llvm {
23 struct DisplayHandler {
26 };
27 static const std::array<DisplayHandler, 4> DisplayRoutines;
28
30 Error parseCodeModel(MSP430Attrs::AttrType Tag);
31 Error parseDataModel(MSP430Attrs::AttrType Tag);
32 Error parseEnumSize(MSP430Attrs::AttrType Tag);
33
34 Error handler(uint64_t Tag, bool &Handled) override;
35
36public:
38 : ELFCompactAttrParser(SW, MSP430Attrs::getMSP430AttributeTags(),
39 "mspabi") {}
41 : ELFCompactAttrParser(MSP430Attrs::getMSP430AttributeTags(), "mspabi") {}
42};
43} // namespace llvm
44
45#endif
#define LLVM_ABI
Definition Compiler.h:213
This file contains enumerations for MSP430 ELF build attributes as defined in the MSP430 ELF psABI sp...
Functions, function parameters, and return types can have attributes to indicate how they should be t...
Definition Attributes.h:69
ELFCompactAttrParser(ScopedPrinter *sw, TagNameMap tagNameMap, StringRef vendor)
Lightweight error class with error context and mandatory checking.
Definition Error.h:159
MSP430AttributeParser(ScopedPrinter *SW)
This is an optimization pass for GlobalISel generic memory operations.