LLVM
22.0.0git
include
llvm
Support
RISCVAttributeParser.h
Go to the documentation of this file.
1
//===-- RISCVAttributeParser.h - RISCV 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
#ifndef LLVM_SUPPORT_RISCVATTRIBUTEPARSER_H
10
#define LLVM_SUPPORT_RISCVATTRIBUTEPARSER_H
11
12
#include "
llvm/Support/Compiler.h
"
13
#include "
llvm/Support/ELFAttrParserCompact.h
"
14
#include "
llvm/Support/RISCVAttributes.h
"
15
16
namespace
llvm
{
17
class
LLVM_ABI
RISCVAttributeParser
:
public
ELFCompactAttrParser
{
18
struct
DisplayHandler {
19
RISCVAttrs::AttrType
attribute;
20
Error
(
RISCVAttributeParser
::*routine)(
unsigned
);
21
};
22
static
const
DisplayHandler displayRoutines[];
23
24
Error
handler(
uint64_t
tag,
bool
&handled)
override
;
25
26
Error
unalignedAccess(
unsigned
tag);
27
Error
stackAlign(
unsigned
tag);
28
Error
atomicAbi(
unsigned
tag);
29
30
public
:
31
RISCVAttributeParser
(
ScopedPrinter
*
sw
)
32
:
ELFCompactAttrParser
(
sw
,
RISCVAttrs
::getRISCVAttributeTags(),
"riscv"
) {
33
}
34
RISCVAttributeParser
()
35
:
ELFCompactAttrParser
(
RISCVAttrs
::getRISCVAttributeTags(),
"riscv"
) {}
36
};
37
38
}
// namespace llvm
39
40
#endif
Compiler.h
LLVM_ABI
#define LLVM_ABI
Definition
Compiler.h:213
ELFAttrParserCompact.h
RISCVAttributes.h
llvm::ELFCompactAttrParser::ELFCompactAttrParser
ELFCompactAttrParser(ScopedPrinter *sw, TagNameMap tagNameMap, StringRef vendor)
Definition
ELFAttrParserCompact.h:56
llvm::ELFCompactAttrParser::sw
ScopedPrinter * sw
Definition
ELFAttrParserCompact.h:34
llvm::Error
Lightweight error class with error context and mandatory checking.
Definition
Error.h:159
llvm::RISCVAttributeParser::RISCVAttributeParser
RISCVAttributeParser(ScopedPrinter *sw)
Definition
RISCVAttributeParser.h:31
llvm::RISCVAttributeParser::RISCVAttributeParser
RISCVAttributeParser()
Definition
RISCVAttributeParser.h:34
llvm::ScopedPrinter
Definition
ScopedPrinter.h:121
uint64_t
unsigned
llvm::RISCVAttrs
Definition
RISCVAttributes.h:24
llvm::RISCVAttrs::AttrType
AttrType
Definition
RISCVAttributes.h:28
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition
AddressRanges.h:18
Generated on
for LLVM by
1.14.0