1f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot//===-- CodeGen/RuntimeLibcalls.h - Runtime Library Calls -------*- C++ -*-===//
2f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot//
3f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot//                     The LLVM Compiler Infrastructure
4f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot//
5f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot// This file is distributed under the University of Illinois Open Source
6f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot// License. See LICENSE.TXT for details.
7f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot//
8f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot//===----------------------------------------------------------------------===//
9f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot//
10f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot// This file defines the enum representing the list of runtime library calls
11f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot// the backend may emit during code generation, and also some helper functions.
12f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot//
13f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot//===----------------------------------------------------------------------===//
14f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
15f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot#ifndef LLVM_CODEGEN_RUNTIMELIBCALLS_H
16f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot#define LLVM_CODEGEN_RUNTIMELIBCALLS_H
17f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
18f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot#include "llvm/CodeGen/ValueTypes.h"
19f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
20f3014761c955345d6e05491608e73228d014afbandroid-build-team Robotnamespace llvm {
21f3014761c955345d6e05491608e73228d014afbandroid-build-team Robotnamespace RTLIB {
22f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// RTLIB::Libcall enum - This enum defines all of the runtime library calls
23f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// the backend can emit.  The various long double types cannot be merged,
24f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// because 80-bit library functions use "xf" and 128-bit use "tf".
25f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  ///
26f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// When adding PPCF128 functions here, note that their names generally need
27f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// to be overridden for Darwin with the xxx$LDBL128 form.  See
28f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// PPCISelLowering.cpp.
29f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  ///
30f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  enum Libcall {
31f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    // Integer
32f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SHL_I16,
33f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SHL_I32,
34f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SHL_I64,
35f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SHL_I128,
36f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SRL_I16,
37f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SRL_I32,
38f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SRL_I64,
39f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SRL_I128,
40f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SRA_I16,
41f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SRA_I32,
42f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SRA_I64,
43f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SRA_I128,
44f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MUL_I8,
45f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MUL_I16,
46f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MUL_I32,
47f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MUL_I64,
48f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MUL_I128,
49f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MULO_I32,
50f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MULO_I64,
51f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MULO_I128,
52f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SDIV_I8,
53f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SDIV_I16,
54f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SDIV_I32,
55f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SDIV_I64,
56f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SDIV_I128,
57f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UDIV_I8,
58f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UDIV_I16,
59f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UDIV_I32,
60f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UDIV_I64,
61f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UDIV_I128,
62f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SREM_I8,
63f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SREM_I16,
64f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SREM_I32,
65f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SREM_I64,
66f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SREM_I128,
67f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UREM_I8,
68f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UREM_I16,
69f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UREM_I32,
70f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UREM_I64,
71f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UREM_I128,
72f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SDIVREM_I8,
73f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SDIVREM_I16,
74f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SDIVREM_I32,
75f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SDIVREM_I64,
76f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SDIVREM_I128,
77f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UDIVREM_I8,
78f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UDIVREM_I16,
79f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UDIVREM_I32,
80f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UDIVREM_I64,
81f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UDIVREM_I128,
82f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    NEG_I32,
83f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    NEG_I64,
84f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
85f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    // FLOATING POINT
86f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ADD_F32,
87f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ADD_F64,
88f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ADD_F80,
89f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ADD_F128,
90f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ADD_PPCF128,
91f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SUB_F32,
92f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SUB_F64,
93f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SUB_F80,
94f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SUB_F128,
95f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SUB_PPCF128,
96f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MUL_F32,
97f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MUL_F64,
98f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MUL_F80,
99f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MUL_F128,
100f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MUL_PPCF128,
101f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    DIV_F32,
102f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    DIV_F64,
103f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    DIV_F80,
104f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    DIV_F128,
105f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    DIV_PPCF128,
106f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    REM_F32,
107f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    REM_F64,
108f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    REM_F80,
109f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    REM_F128,
110f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    REM_PPCF128,
111f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMA_F32,
112f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMA_F64,
113f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMA_F80,
114f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMA_F128,
115f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMA_PPCF128,
116f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    POWI_F32,
117f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    POWI_F64,
118f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    POWI_F80,
119f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    POWI_F128,
120f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    POWI_PPCF128,
121f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SQRT_F32,
122f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SQRT_F64,
123f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SQRT_F80,
124f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SQRT_F128,
125f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SQRT_PPCF128,
126f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG_F32,
127f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG_F64,
128f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG_F80,
129f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG_F128,
130f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG_PPCF128,
131f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG2_F32,
132f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG2_F64,
133f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG2_F80,
134f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG2_F128,
135f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG2_PPCF128,
136f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG10_F32,
137f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG10_F64,
138f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG10_F80,
139f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG10_F128,
140f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    LOG10_PPCF128,
141f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    EXP_F32,
142f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    EXP_F64,
143f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    EXP_F80,
144f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    EXP_F128,
145f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    EXP_PPCF128,
146f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    EXP2_F32,
147f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    EXP2_F64,
148f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    EXP2_F80,
149f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    EXP2_F128,
150f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    EXP2_PPCF128,
151f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SIN_F32,
152f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SIN_F64,
153f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SIN_F80,
154f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SIN_F128,
155f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SIN_PPCF128,
156f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    COS_F32,
157f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    COS_F64,
158f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    COS_F80,
159f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    COS_F128,
160f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    COS_PPCF128,
161f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINCOS_F32,
162f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINCOS_F64,
163f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINCOS_F80,
164f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINCOS_F128,
165f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINCOS_PPCF128,
166f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    POW_F32,
167f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    POW_F64,
168f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    POW_F80,
169f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    POW_F128,
170f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    POW_PPCF128,
171f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    CEIL_F32,
172f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    CEIL_F64,
173f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    CEIL_F80,
174f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    CEIL_F128,
175f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    CEIL_PPCF128,
176f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    TRUNC_F32,
177f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    TRUNC_F64,
178f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    TRUNC_F80,
179f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    TRUNC_F128,
180f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    TRUNC_PPCF128,
181f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    RINT_F32,
182f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    RINT_F64,
183f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    RINT_F80,
184f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    RINT_F128,
185f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    RINT_PPCF128,
186f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    NEARBYINT_F32,
187f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    NEARBYINT_F64,
188f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    NEARBYINT_F80,
189f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    NEARBYINT_F128,
190f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    NEARBYINT_PPCF128,
191f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ROUND_F32,
192f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ROUND_F64,
193f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ROUND_F80,
194f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ROUND_F128,
195f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ROUND_PPCF128,
196f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FLOOR_F32,
197f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FLOOR_F64,
198f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FLOOR_F80,
199f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FLOOR_F128,
200f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FLOOR_PPCF128,
201f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    COPYSIGN_F32,
202f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    COPYSIGN_F64,
203f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    COPYSIGN_F80,
204f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    COPYSIGN_F128,
205f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    COPYSIGN_PPCF128,
206f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMIN_F32,
207f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMIN_F64,
208f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMIN_F80,
209f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMIN_F128,
210f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMIN_PPCF128,
211f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMAX_F32,
212f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMAX_F64,
213f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMAX_F80,
214f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMAX_F128,
215f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FMAX_PPCF128,
216f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
217f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    // CONVERSION
218f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPEXT_F32_PPCF128,
219f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPEXT_F64_PPCF128,
220f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPEXT_F64_F128,
221f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPEXT_F32_F128,
222f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPEXT_F32_F64,
223f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPEXT_F16_F32,
224f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPROUND_F32_F16,
225f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPROUND_F64_F16,
226f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPROUND_F80_F16,
227f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPROUND_F128_F16,
228f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPROUND_PPCF128_F16,
229f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPROUND_F64_F32,
230f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPROUND_F80_F32,
231f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPROUND_F128_F32,
232f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPROUND_PPCF128_F32,
233f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPROUND_F80_F64,
234f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPROUND_F128_F64,
235f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPROUND_PPCF128_F64,
236f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_F32_I32,
237f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_F32_I64,
238f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_F32_I128,
239f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_F64_I32,
240f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_F64_I64,
241f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_F64_I128,
242f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_F80_I32,
243f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_F80_I64,
244f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_F80_I128,
245f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_F128_I32,
246f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_F128_I64,
247f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_F128_I128,
248f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_PPCF128_I32,
249f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_PPCF128_I64,
250f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOSINT_PPCF128_I128,
251f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_F32_I32,
252f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_F32_I64,
253f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_F32_I128,
254f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_F64_I32,
255f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_F64_I64,
256f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_F64_I128,
257f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_F80_I32,
258f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_F80_I64,
259f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_F80_I128,
260f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_F128_I32,
261f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_F128_I64,
262f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_F128_I128,
263f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_PPCF128_I32,
264f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_PPCF128_I64,
265f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    FPTOUINT_PPCF128_I128,
266f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I32_F32,
267f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I32_F64,
268f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I32_F80,
269f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I32_F128,
270f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I32_PPCF128,
271f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I64_F32,
272f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I64_F64,
273f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I64_F80,
274f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I64_F128,
275f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I64_PPCF128,
276f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I128_F32,
277f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I128_F64,
278f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I128_F80,
279f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I128_F128,
280f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SINTTOFP_I128_PPCF128,
281f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I32_F32,
282f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I32_F64,
283f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I32_F80,
284f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I32_F128,
285f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I32_PPCF128,
286f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I64_F32,
287f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I64_F64,
288f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I64_F80,
289f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I64_F128,
290f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I64_PPCF128,
291f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I128_F32,
292f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I128_F64,
293f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I128_F80,
294f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I128_F128,
295f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UINTTOFP_I128_PPCF128,
296f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
297f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    // COMPARISON
298f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OEQ_F32,
299f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OEQ_F64,
300f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OEQ_F128,
301f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OEQ_PPCF128,
302f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UNE_F32,
303f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UNE_F64,
304f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UNE_F128,
305f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UNE_PPCF128,
306f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OGE_F32,
307f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OGE_F64,
308f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OGE_F128,
309f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OGE_PPCF128,
310f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OLT_F32,
311f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OLT_F64,
312f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OLT_F128,
313f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OLT_PPCF128,
314f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OLE_F32,
315f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OLE_F64,
316f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OLE_F128,
317f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OLE_PPCF128,
318f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OGT_F32,
319f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OGT_F64,
320f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OGT_F128,
321f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    OGT_PPCF128,
322f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UO_F32,
323f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UO_F64,
324f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UO_F128,
325f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UO_PPCF128,
326f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    O_F32,
327f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    O_F64,
328f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    O_F128,
329f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    O_PPCF128,
330f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
331f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    // MEMORY
332f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MEMCPY,
333f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MEMSET,
334f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MEMMOVE,
335f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
336f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    // ELEMENT-WISE UNORDERED-ATOMIC MEMORY of different element sizes
337f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MEMCPY_ELEMENT_UNORDERED_ATOMIC_1,
338f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MEMCPY_ELEMENT_UNORDERED_ATOMIC_2,
339f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MEMCPY_ELEMENT_UNORDERED_ATOMIC_4,
340f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MEMCPY_ELEMENT_UNORDERED_ATOMIC_8,
341f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    MEMCPY_ELEMENT_UNORDERED_ATOMIC_16,
342f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
343f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    // EXCEPTION HANDLING
344f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UNWIND_RESUME,
345f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
346f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    // Note: there's two sets of atomics libcalls; see
347f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    // <http://llvm.org/docs/Atomics.html> for more info on the
348f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    // difference between them.
349f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
350f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    // Atomic '__sync_*' libcalls.
351f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_VAL_COMPARE_AND_SWAP_1,
352f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_VAL_COMPARE_AND_SWAP_2,
353f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_VAL_COMPARE_AND_SWAP_4,
354f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_VAL_COMPARE_AND_SWAP_8,
355f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_VAL_COMPARE_AND_SWAP_16,
356f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_LOCK_TEST_AND_SET_1,
357f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_LOCK_TEST_AND_SET_2,
358f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_LOCK_TEST_AND_SET_4,
359f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_LOCK_TEST_AND_SET_8,
360f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_LOCK_TEST_AND_SET_16,
361f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_ADD_1,
362f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_ADD_2,
363f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_ADD_4,
364f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_ADD_8,
365f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_ADD_16,
366f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_SUB_1,
367f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_SUB_2,
368f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_SUB_4,
369f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_SUB_8,
370f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_SUB_16,
371f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_AND_1,
372f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_AND_2,
373f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_AND_4,
374f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_AND_8,
375f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_AND_16,
376f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_OR_1,
377f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_OR_2,
378f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_OR_4,
379f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_OR_8,
380f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_OR_16,
381f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_XOR_1,
382f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_XOR_2,
383f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_XOR_4,
384f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_XOR_8,
385f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_XOR_16,
386f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_NAND_1,
387f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_NAND_2,
388f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_NAND_4,
389f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_NAND_8,
390f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_NAND_16,
391f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_MAX_1,
392f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_MAX_2,
393f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_MAX_4,
394f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_MAX_8,
395f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_MAX_16,
396f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_UMAX_1,
397f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_UMAX_2,
398f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_UMAX_4,
399f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_UMAX_8,
400f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_UMAX_16,
401f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_MIN_1,
402f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_MIN_2,
403f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_MIN_4,
404f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_MIN_8,
405f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_MIN_16,
406f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_UMIN_1,
407f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_UMIN_2,
408f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_UMIN_4,
409f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_UMIN_8,
410f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    SYNC_FETCH_AND_UMIN_16,
411f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
412f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    // Atomic '__atomic_*' libcalls.
413f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_LOAD,
414f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_LOAD_1,
415f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_LOAD_2,
416f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_LOAD_4,
417f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_LOAD_8,
418f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_LOAD_16,
419f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
420f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_STORE,
421f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_STORE_1,
422f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_STORE_2,
423f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_STORE_4,
424f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_STORE_8,
425f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_STORE_16,
426f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
427f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_EXCHANGE,
428f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_EXCHANGE_1,
429f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_EXCHANGE_2,
430f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_EXCHANGE_4,
431f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_EXCHANGE_8,
432f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_EXCHANGE_16,
433f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
434f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_COMPARE_EXCHANGE,
435f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_COMPARE_EXCHANGE_1,
436f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_COMPARE_EXCHANGE_2,
437f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_COMPARE_EXCHANGE_4,
438f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_COMPARE_EXCHANGE_8,
439f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_COMPARE_EXCHANGE_16,
440f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
441f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_ADD_1,
442f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_ADD_2,
443f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_ADD_4,
444f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_ADD_8,
445f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_ADD_16,
446f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
447f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_SUB_1,
448f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_SUB_2,
449f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_SUB_4,
450f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_SUB_8,
451f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_SUB_16,
452f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
453f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_AND_1,
454f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_AND_2,
455f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_AND_4,
456f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_AND_8,
457f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_AND_16,
458f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
459f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_OR_1,
460f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_OR_2,
461f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_OR_4,
462f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_OR_8,
463f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_OR_16,
464f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
465f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_XOR_1,
466f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_XOR_2,
467f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_XOR_4,
468f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_XOR_8,
469f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_XOR_16,
470f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
471f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_NAND_1,
472f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_NAND_2,
473f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_NAND_4,
474f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_NAND_8,
475f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    ATOMIC_FETCH_NAND_16,
476f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
477f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    // Stack Protector Fail.
478f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    STACKPROTECTOR_CHECK_FAIL,
479f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
480f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    // Deoptimization.
481f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    DEOPTIMIZE,
482f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
483f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot    UNKNOWN_LIBCALL
484f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  };
485f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
486f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// getFPEXT - Return the FPEXT_*_* value for the given types, or
487f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// UNKNOWN_LIBCALL if there is none.
488f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  Libcall getFPEXT(EVT OpVT, EVT RetVT);
489f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
490f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// getFPROUND - Return the FPROUND_*_* value for the given types, or
491f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// UNKNOWN_LIBCALL if there is none.
492f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  Libcall getFPROUND(EVT OpVT, EVT RetVT);
493f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
494f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// getFPTOSINT - Return the FPTOSINT_*_* value for the given types, or
495f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// UNKNOWN_LIBCALL if there is none.
496f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  Libcall getFPTOSINT(EVT OpVT, EVT RetVT);
497f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
498f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// getFPTOUINT - Return the FPTOUINT_*_* value for the given types, or
499f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// UNKNOWN_LIBCALL if there is none.
500f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  Libcall getFPTOUINT(EVT OpVT, EVT RetVT);
501f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
502f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// getSINTTOFP - Return the SINTTOFP_*_* value for the given types, or
503f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// UNKNOWN_LIBCALL if there is none.
504f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  Libcall getSINTTOFP(EVT OpVT, EVT RetVT);
505f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
506f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// getUINTTOFP - Return the UINTTOFP_*_* value for the given types, or
507f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// UNKNOWN_LIBCALL if there is none.
508f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  Libcall getUINTTOFP(EVT OpVT, EVT RetVT);
509f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
510f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// Return the SYNC_FETCH_AND_* value for the given opcode and type, or
511f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// UNKNOWN_LIBCALL if there is none.
512f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  Libcall getSYNC(unsigned Opc, MVT VT);
513f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
514f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// getMEMCPY_ELEMENT_UNORDERED_ATOMIC - Return
515f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// MEMCPY_ELEMENT_UNORDERED_ATOMIC_* value for the given element size or
516f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  /// UNKNOW_LIBCALL if there is none.
517f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot  Libcall getMEMCPY_ELEMENT_UNORDERED_ATOMIC(uint64_t ElementSize);
518f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot}
519f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot}
520f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot
521f3014761c955345d6e05491608e73228d014afbandroid-build-team Robot#endif
522