LLVM
22.0.0git
include
llvm
Support
AArch64AttributeParser.h
Go to the documentation of this file.
1
//=== - AArch64AttributeParser.h-AArch64 Attribute Information Printer - ===//
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_AARCH64ATTRIBUTEPARSER_H
10
#define LLVM_SUPPORT_AARCH64ATTRIBUTEPARSER_H
11
12
#include "
llvm/Support/Compiler.h
"
13
#include "
llvm/Support/ELFAttrParserExtended.h
"
14
#include "
llvm/Support/ELFAttributes.h
"
15
16
namespace
llvm
{
17
18
class
AArch64AttributeParser
:
public
ELFExtendedAttrParser
{
19
LLVM_ABI
static
std::vector<SubsectionAndTagToTagName> &returnTagsNamesMap();
20
21
public
:
22
AArch64AttributeParser
(
ScopedPrinter
*
Sw
)
23
:
ELFExtendedAttrParser
(
Sw
, returnTagsNamesMap()) {}
24
AArch64AttributeParser
()
25
:
ELFExtendedAttrParser
(nullptr, returnTagsNamesMap()) {}
26
};
27
28
// Used for extracting AArch64 Build Attributes
29
struct
AArch64BuildAttrSubsections
{
30
struct
PauthSubSection
{
31
uint64_t
TagPlatform
= 0;
32
uint64_t
TagSchema
= 0;
33
}
Pauth
;
34
uint32_t
AndFeatures
= 0;
35
};
36
37
LLVM_ABI
AArch64BuildAttrSubsections
38
extractBuildAttributesSubsections
(
const
llvm::AArch64AttributeParser
&);
39
}
// namespace llvm
40
41
#endif
// LLVM_SUPPORT_AARCH64ATTRIBUTEPARSER_H
Compiler.h
LLVM_ABI
#define LLVM_ABI
Definition:
Compiler.h:213
ELFAttrParserExtended.h
ELFAttributes.h
llvm::AArch64AttributeParser
Definition:
AArch64AttributeParser.h:18
llvm::AArch64AttributeParser::AArch64AttributeParser
AArch64AttributeParser(ScopedPrinter *Sw)
Definition:
AArch64AttributeParser.h:22
llvm::AArch64AttributeParser::AArch64AttributeParser
AArch64AttributeParser()
Definition:
AArch64AttributeParser.h:24
llvm::ELFExtendedAttrParser
Definition:
ELFAttrParserExtended.h:25
llvm::ELFExtendedAttrParser::Sw
ScopedPrinter * Sw
Definition:
ELFAttrParserExtended.h:27
llvm::ScopedPrinter
Definition:
ScopedPrinter.h:121
uint32_t
uint64_t
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition:
AddressRanges.h:18
llvm::extractBuildAttributesSubsections
LLVM_ABI AArch64BuildAttrSubsections extractBuildAttributesSubsections(const llvm::AArch64AttributeParser &)
Definition:
AArch64AttributeParser.cpp:24
llvm::AArch64BuildAttrSubsections::PauthSubSection
Definition:
AArch64AttributeParser.h:30
llvm::AArch64BuildAttrSubsections::PauthSubSection::TagSchema
uint64_t TagSchema
Definition:
AArch64AttributeParser.h:32
llvm::AArch64BuildAttrSubsections::PauthSubSection::TagPlatform
uint64_t TagPlatform
Definition:
AArch64AttributeParser.h:31
llvm::AArch64BuildAttrSubsections
Definition:
AArch64AttributeParser.h:29
llvm::AArch64BuildAttrSubsections::AndFeatures
uint32_t AndFeatures
Definition:
AArch64AttributeParser.h:34
llvm::AArch64BuildAttrSubsections::Pauth
struct llvm::AArch64BuildAttrSubsections::PauthSubSection Pauth
Generated on Sat Aug 30 2025 05:15:29 for LLVM by
1.9.6