LLVM
22.0.0git
include
llvm
Support
CSKYAttributes.h
Go to the documentation of this file.
1
//===---- CSKYAttributes.h - CSKY Attributes --------------------*- 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
// This file contains enumerations for CSKY attributes.
10
//
11
//===----------------------------------------------------------------------===//
12
#ifndef LLVM_SUPPORT_CSKYATTRIBUTES_H
13
#define LLVM_SUPPORT_CSKYATTRIBUTES_H
14
15
#include "
llvm/Support/Compiler.h
"
16
#include "
llvm/Support/ELFAttributes.h
"
17
18
namespace
llvm
{
19
namespace
CSKYAttrs {
20
21
LLVM_ABI
const
TagNameMap
&
getCSKYAttributeTags
();
22
23
enum
AttrType
{
24
CSKY_ARCH_NAME
= 4,
25
CSKY_CPU_NAME
= 5,
26
CSKY_ISA_FLAGS
= 6,
27
CSKY_ISA_EXT_FLAGS
= 7,
28
CSKY_DSP_VERSION
= 8,
29
CSKY_VDSP_VERSION
= 9,
30
CSKY_FPU_VERSION
= 16,
31
CSKY_FPU_ABI
= 17,
32
CSKY_FPU_ROUNDING
= 18,
33
CSKY_FPU_DENORMAL
= 19,
34
CSKY_FPU_EXCEPTION
= 20,
35
CSKY_FPU_NUMBER_MODULE
= 21,
36
CSKY_FPU_HARDFP
= 22
37
};
38
39
enum
ISA_FLAGS
{
40
V2_ISA_E1
= 1 << 1,
41
V2_ISA_1E2
= 1 << 2,
42
V2_ISA_2E3
= 1 << 3,
43
V2_ISA_3E7
= 1 << 4,
44
V2_ISA_7E10
= 1 << 5,
45
V2_ISA_3E3R1
= 1 << 6,
46
V2_ISA_3E3R2
= 1 << 7,
47
V2_ISA_10E60
= 1 << 8,
48
V2_ISA_3E3R3
= 1 << 9,
49
ISA_TRUST
= 1 << 11,
50
ISA_CACHE
= 1 << 12,
51
ISA_NVIC
= 1 << 13,
52
ISA_CP
= 1 << 14,
53
ISA_MP
= 1 << 15,
54
ISA_MP_1E2
= 1 << 16,
55
ISA_JAVA
= 1 << 17,
56
ISA_MAC
= 1 << 18,
57
ISA_MAC_DSP
= 1 << 19,
58
ISA_DSP
= 1 << 20,
59
ISA_DSP_1E2
= 1 << 21,
60
ISA_DSP_ENHANCE
= 1 << 22,
61
ISA_DSP_SILAN
= 1 << 23,
62
ISA_VDSP
= 1 << 24,
63
ISA_VDSP_2
= 1 << 25,
64
ISA_VDSP_2E3
= 1 << 26,
65
V2_ISA_DSPE60
= 1 << 27,
66
ISA_VDSP_2E60F
= 1 << 28
67
};
68
69
enum
ISA_EXT_FLAGS
{
70
ISA_FLOAT_E1
= 1 << 0,
71
ISA_FLOAT_1E2
= 1 << 1,
72
ISA_FLOAT_1E3
= 1 << 2,
73
ISA_FLOAT_3E4
= 1 << 3,
74
ISA_FLOAT_7E60
= 1 << 4
75
};
76
77
enum
{
NONE
= 0,
NEEDED
= 1 };
78
79
enum
DSP_VERSION
{
DSP_VERSION_EXTENSION
= 1,
DSP_VERSION_2
= 2 };
80
81
enum
VDSP_VERSION
{
VDSP_VERSION_1
= 1,
VDSP_VERSION_2
= 2 };
82
83
enum
FPU_VERSION
{
FPU_VERSION_1
= 1,
FPU_VERSION_2
= 2,
FPU_VERSION_3
= 3 };
84
85
enum
FPU_ABI
{
FPU_ABI_SOFT
= 1,
FPU_ABI_SOFTFP
= 2,
FPU_ABI_HARD
= 3 };
86
87
enum
FPU_HARDFP
{
88
FPU_HARDFP_HALF
= 1,
89
FPU_HARDFP_SINGLE
= 2,
90
FPU_HARDFP_DOUBLE
= 4
91
};
92
93
}
// namespace CSKYAttrs
94
}
// namespace llvm
95
96
#endif
Compiler.h
LLVM_ABI
#define LLVM_ABI
Definition:
Compiler.h:213
ELFAttributes.h
llvm::ArrayRef< TagNameItem >
llvm::CSKYAttrs::FPU_VERSION
FPU_VERSION
Definition:
CSKYAttributes.h:83
llvm::CSKYAttrs::FPU_VERSION_2
@ FPU_VERSION_2
Definition:
CSKYAttributes.h:83
llvm::CSKYAttrs::FPU_VERSION_3
@ FPU_VERSION_3
Definition:
CSKYAttributes.h:83
llvm::CSKYAttrs::FPU_VERSION_1
@ FPU_VERSION_1
Definition:
CSKYAttributes.h:83
llvm::CSKYAttrs::FPU_HARDFP
FPU_HARDFP
Definition:
CSKYAttributes.h:87
llvm::CSKYAttrs::FPU_HARDFP_SINGLE
@ FPU_HARDFP_SINGLE
Definition:
CSKYAttributes.h:89
llvm::CSKYAttrs::FPU_HARDFP_HALF
@ FPU_HARDFP_HALF
Definition:
CSKYAttributes.h:88
llvm::CSKYAttrs::FPU_HARDFP_DOUBLE
@ FPU_HARDFP_DOUBLE
Definition:
CSKYAttributes.h:90
llvm::CSKYAttrs::ISA_EXT_FLAGS
ISA_EXT_FLAGS
Definition:
CSKYAttributes.h:69
llvm::CSKYAttrs::ISA_FLOAT_7E60
@ ISA_FLOAT_7E60
Definition:
CSKYAttributes.h:74
llvm::CSKYAttrs::ISA_FLOAT_E1
@ ISA_FLOAT_E1
Definition:
CSKYAttributes.h:70
llvm::CSKYAttrs::ISA_FLOAT_1E3
@ ISA_FLOAT_1E3
Definition:
CSKYAttributes.h:72
llvm::CSKYAttrs::ISA_FLOAT_1E2
@ ISA_FLOAT_1E2
Definition:
CSKYAttributes.h:71
llvm::CSKYAttrs::ISA_FLOAT_3E4
@ ISA_FLOAT_3E4
Definition:
CSKYAttributes.h:73
llvm::CSKYAttrs::AttrType
AttrType
Definition:
CSKYAttributes.h:23
llvm::CSKYAttrs::CSKY_ISA_FLAGS
@ CSKY_ISA_FLAGS
Definition:
CSKYAttributes.h:26
llvm::CSKYAttrs::CSKY_FPU_ROUNDING
@ CSKY_FPU_ROUNDING
Definition:
CSKYAttributes.h:32
llvm::CSKYAttrs::CSKY_ISA_EXT_FLAGS
@ CSKY_ISA_EXT_FLAGS
Definition:
CSKYAttributes.h:27
llvm::CSKYAttrs::CSKY_FPU_NUMBER_MODULE
@ CSKY_FPU_NUMBER_MODULE
Definition:
CSKYAttributes.h:35
llvm::CSKYAttrs::CSKY_VDSP_VERSION
@ CSKY_VDSP_VERSION
Definition:
CSKYAttributes.h:29
llvm::CSKYAttrs::CSKY_CPU_NAME
@ CSKY_CPU_NAME
Definition:
CSKYAttributes.h:25
llvm::CSKYAttrs::CSKY_FPU_HARDFP
@ CSKY_FPU_HARDFP
Definition:
CSKYAttributes.h:36
llvm::CSKYAttrs::CSKY_ARCH_NAME
@ CSKY_ARCH_NAME
Definition:
CSKYAttributes.h:24
llvm::CSKYAttrs::CSKY_FPU_ABI
@ CSKY_FPU_ABI
Definition:
CSKYAttributes.h:31
llvm::CSKYAttrs::CSKY_FPU_DENORMAL
@ CSKY_FPU_DENORMAL
Definition:
CSKYAttributes.h:33
llvm::CSKYAttrs::CSKY_FPU_EXCEPTION
@ CSKY_FPU_EXCEPTION
Definition:
CSKYAttributes.h:34
llvm::CSKYAttrs::CSKY_FPU_VERSION
@ CSKY_FPU_VERSION
Definition:
CSKYAttributes.h:30
llvm::CSKYAttrs::CSKY_DSP_VERSION
@ CSKY_DSP_VERSION
Definition:
CSKYAttributes.h:28
llvm::CSKYAttrs::ISA_FLAGS
ISA_FLAGS
Definition:
CSKYAttributes.h:39
llvm::CSKYAttrs::ISA_VDSP_2E60F
@ ISA_VDSP_2E60F
Definition:
CSKYAttributes.h:66
llvm::CSKYAttrs::ISA_CACHE
@ ISA_CACHE
Definition:
CSKYAttributes.h:50
llvm::CSKYAttrs::ISA_CP
@ ISA_CP
Definition:
CSKYAttributes.h:52
llvm::CSKYAttrs::V2_ISA_1E2
@ V2_ISA_1E2
Definition:
CSKYAttributes.h:41
llvm::CSKYAttrs::ISA_NVIC
@ ISA_NVIC
Definition:
CSKYAttributes.h:51
llvm::CSKYAttrs::V2_ISA_3E3R2
@ V2_ISA_3E3R2
Definition:
CSKYAttributes.h:46
llvm::CSKYAttrs::ISA_VDSP
@ ISA_VDSP
Definition:
CSKYAttributes.h:62
llvm::CSKYAttrs::ISA_DSP_SILAN
@ ISA_DSP_SILAN
Definition:
CSKYAttributes.h:61
llvm::CSKYAttrs::V2_ISA_E1
@ V2_ISA_E1
Definition:
CSKYAttributes.h:40
llvm::CSKYAttrs::ISA_MP
@ ISA_MP
Definition:
CSKYAttributes.h:53
llvm::CSKYAttrs::V2_ISA_DSPE60
@ V2_ISA_DSPE60
Definition:
CSKYAttributes.h:65
llvm::CSKYAttrs::ISA_DSP_ENHANCE
@ ISA_DSP_ENHANCE
Definition:
CSKYAttributes.h:60
llvm::CSKYAttrs::ISA_DSP_1E2
@ ISA_DSP_1E2
Definition:
CSKYAttributes.h:59
llvm::CSKYAttrs::ISA_VDSP_2
@ ISA_VDSP_2
Definition:
CSKYAttributes.h:63
llvm::CSKYAttrs::V2_ISA_7E10
@ V2_ISA_7E10
Definition:
CSKYAttributes.h:44
llvm::CSKYAttrs::ISA_VDSP_2E3
@ ISA_VDSP_2E3
Definition:
CSKYAttributes.h:64
llvm::CSKYAttrs::ISA_MAC
@ ISA_MAC
Definition:
CSKYAttributes.h:56
llvm::CSKYAttrs::ISA_MAC_DSP
@ ISA_MAC_DSP
Definition:
CSKYAttributes.h:57
llvm::CSKYAttrs::ISA_TRUST
@ ISA_TRUST
Definition:
CSKYAttributes.h:49
llvm::CSKYAttrs::V2_ISA_3E7
@ V2_ISA_3E7
Definition:
CSKYAttributes.h:43
llvm::CSKYAttrs::V2_ISA_3E3R1
@ V2_ISA_3E3R1
Definition:
CSKYAttributes.h:45
llvm::CSKYAttrs::V2_ISA_3E3R3
@ V2_ISA_3E3R3
Definition:
CSKYAttributes.h:48
llvm::CSKYAttrs::ISA_JAVA
@ ISA_JAVA
Definition:
CSKYAttributes.h:55
llvm::CSKYAttrs::ISA_DSP
@ ISA_DSP
Definition:
CSKYAttributes.h:58
llvm::CSKYAttrs::V2_ISA_10E60
@ V2_ISA_10E60
Definition:
CSKYAttributes.h:47
llvm::CSKYAttrs::ISA_MP_1E2
@ ISA_MP_1E2
Definition:
CSKYAttributes.h:54
llvm::CSKYAttrs::V2_ISA_2E3
@ V2_ISA_2E3
Definition:
CSKYAttributes.h:42
llvm::CSKYAttrs::FPU_ABI
FPU_ABI
Definition:
CSKYAttributes.h:85
llvm::CSKYAttrs::FPU_ABI_SOFT
@ FPU_ABI_SOFT
Definition:
CSKYAttributes.h:85
llvm::CSKYAttrs::FPU_ABI_SOFTFP
@ FPU_ABI_SOFTFP
Definition:
CSKYAttributes.h:85
llvm::CSKYAttrs::FPU_ABI_HARD
@ FPU_ABI_HARD
Definition:
CSKYAttributes.h:85
llvm::CSKYAttrs::DSP_VERSION
DSP_VERSION
Definition:
CSKYAttributes.h:79
llvm::CSKYAttrs::DSP_VERSION_EXTENSION
@ DSP_VERSION_EXTENSION
Definition:
CSKYAttributes.h:79
llvm::CSKYAttrs::DSP_VERSION_2
@ DSP_VERSION_2
Definition:
CSKYAttributes.h:79
llvm::CSKYAttrs::VDSP_VERSION
VDSP_VERSION
Definition:
CSKYAttributes.h:81
llvm::CSKYAttrs::VDSP_VERSION_2
@ VDSP_VERSION_2
Definition:
CSKYAttributes.h:81
llvm::CSKYAttrs::VDSP_VERSION_1
@ VDSP_VERSION_1
Definition:
CSKYAttributes.h:81
llvm::CSKYAttrs::NEEDED
@ NEEDED
Definition:
CSKYAttributes.h:77
llvm::CSKYAttrs::NONE
@ NONE
Definition:
CSKYAttributes.h:77
llvm::CSKYAttrs::getCSKYAttributeTags
LLVM_ABI const TagNameMap & getCSKYAttributeTags()
Definition:
CSKYAttributes.cpp:31
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition:
AddressRanges.h:18
Generated on Wed Sep 3 2025 01:40:13 for LLVM by
1.9.6