-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
/
Copy pathenums.cr
150 lines (140 loc) · 2.39 KB
/
enums.cr
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
module LLVM
@[Flags]
enum Attribute
ZExt = 1 << 0
SExt = 1 << 1
NoReturn = 1 << 2
InReg = 1 << 3
StructRet = 1 << 4
NoUnwind = 1 << 5
NoAlias = 1 << 6
ByVal = 1 << 7
Nest = 1 << 8
ReadNone = 1 << 9
ReadOnly = 1 << 10
NoInline = 1 << 11
AlwaysInline = 1 << 12
OptimizeForSize = 1 << 13
StackProtect = 1 << 14
StackProtectReq = 1 << 15
Alignment = 31 << 16
NoCapture = 1 << 21
NoRedZone = 1 << 22
NoImplicitFloat = 1 << 23
Naked = 1 << 24
InlineHint = 1 << 25
StackAlignment = 7 << 26
ReturnsTwice = 1 << 29
UWTable = 1 << 30
NonLazyBind = 1 << 31
# AddressSafety = 1_u64 << 32,
# StackProtectStrong = 1_u64 << 33
end
enum Linkage
External
AvailableExternally
LinkOnceAny
LinkOnceODR
LinkOnceODRAutoHide
WeakAny
WeakODR
Appending
Internal
Private
DLLImport
DLLExport
ExternalWeak
Ghost
Common
LinkerPrivate
LinkerPrivateWeak
end
enum IntPredicate
EQ = 32
NE
UGT
UGE
ULT
ULE
SGT
SGE
SLT
SLE
end
enum RealPredicate
PredicateFalse
OEQ
OGT
OGE
OLT
OLE
ONE
ORD
UNO
UEQ
UGT
UGE
ULT
ULE
UNE
PredicateTrue
end
struct Type
enum Kind
Void
Half
Float
Double
X86_FP80
FP128
PPC_FP128
Label
Integer
Function
Struct
Array
Pointer
Vector
Metadata
X86_MMX
end
end
enum CodeGenOptLevel
None
Less
Default
Aggressive
end
enum CodeGenFileType
AssemblyFile
ObjectFile
end
enum RelocMode
Default
Static
PIC
DynamicNoPIC
end
enum CodeModel
Default
JITDefault
Small
Kernel
Medium
Large
end
enum VerifierFailureAction
AbortProcessAction # verifier will print to stderr and abort()
PrintMessageAction # verifier will print to stderr and return 1
ReturnStatusAction # verifier will just return 1
end
enum CallConvention
C = 0
Fast = 8
Cold = 9
WebKitJS = 12
AnyReg = 13
X86Std = 64
X86Fastcall = 65
end
end