xref: /aosp_15_r20/external/swiftshader/third_party/subzero/src/IceTargetLowering.def (revision 03ce13f70fcc45d86ee91b7ee4cab1936a95046e)
1*03ce13f7SAndroid Build Coastguard Worker//===- subzero/src/IceTargetLowering.def - Target X-macros ------*- C++ -*-===//
2*03ce13f7SAndroid Build Coastguard Worker//
3*03ce13f7SAndroid Build Coastguard Worker//                        The Subzero Code Generator
4*03ce13f7SAndroid Build Coastguard Worker//
5*03ce13f7SAndroid Build Coastguard Worker// This file is distributed under the University of Illinois Open Source
6*03ce13f7SAndroid Build Coastguard Worker// License. See LICENSE.TXT for details.
7*03ce13f7SAndroid Build Coastguard Worker//
8*03ce13f7SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
9*03ce13f7SAndroid Build Coastguard Worker//
10*03ce13f7SAndroid Build Coastguard Worker// This file defines certain platform independent patterns for lowering target
11*03ce13f7SAndroid Build Coastguard Worker// instructions, in the form of x-macros.
12*03ce13f7SAndroid Build Coastguard Worker//
13*03ce13f7SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===//
14*03ce13f7SAndroid Build Coastguard Worker
15*03ce13f7SAndroid Build Coastguard Worker#ifndef SUBZERO_SRC_ICETARGETLOWERING_DEF
16*03ce13f7SAndroid Build Coastguard Worker#define SUBZERO_SRC_ICETARGETLOWERING_DEF
17*03ce13f7SAndroid Build Coastguard Worker
18*03ce13f7SAndroid Build Coastguard Worker// Pattern for runtime helper functions
19*03ce13f7SAndroid Build Coastguard Worker#define RUNTIME_HELPER_FUNCTIONS_TABLE                                         \
20*03ce13f7SAndroid Build Coastguard Worker  /* tag ,              name */                                                \
21*03ce13f7SAndroid Build Coastguard Worker  X(bitcast_16xi1_i16,  "__Sz_bitcast_16xi1_i16")                              \
22*03ce13f7SAndroid Build Coastguard Worker  X(bitcast_8xi1_i8,    "__Sz_bitcast_8xi1_i8")                                \
23*03ce13f7SAndroid Build Coastguard Worker  X(bitcast_i16_16xi1,  "__Sz_bitcast_i16_16xi1")                              \
24*03ce13f7SAndroid Build Coastguard Worker  X(bitcast_i8_8xi1,    "__Sz_bitcast_i8_8xi1")                                \
25*03ce13f7SAndroid Build Coastguard Worker  X(call_ctpop_i32,     "__popcountsi2")                                       \
26*03ce13f7SAndroid Build Coastguard Worker  X(call_ctpop_i64,     "__popcountdi2")                                       \
27*03ce13f7SAndroid Build Coastguard Worker  X(call_longjmp,       "longjmp")                                             \
28*03ce13f7SAndroid Build Coastguard Worker  X(call_memcpy,        "memcpy")                                              \
29*03ce13f7SAndroid Build Coastguard Worker  X(call_memmove,       "memmove")                                             \
30*03ce13f7SAndroid Build Coastguard Worker  X(call_memset,        "memset")                                              \
31*03ce13f7SAndroid Build Coastguard Worker  X(call_read_tp,       "__nacl_read_tp")                                      \
32*03ce13f7SAndroid Build Coastguard Worker  X(call_setjmp,        "setjmp")                                              \
33*03ce13f7SAndroid Build Coastguard Worker  X(fptosi_f32_i64,     "__Sz_fptosi_f32_i64")                                 \
34*03ce13f7SAndroid Build Coastguard Worker  X(fptosi_f64_i64,     "__Sz_fptosi_f64_i64")                                 \
35*03ce13f7SAndroid Build Coastguard Worker  X(fptoui_4xi32_f32,   "__Sz_fptoui_4xi32_f32")                               \
36*03ce13f7SAndroid Build Coastguard Worker  X(fptoui_f32_i32,     "__Sz_fptoui_f32_i32")                                 \
37*03ce13f7SAndroid Build Coastguard Worker  X(fptoui_f32_i64,     "__Sz_fptoui_f32_i64")                                 \
38*03ce13f7SAndroid Build Coastguard Worker  X(fptoui_f64_i32,     "__Sz_fptoui_f64_i32")                                 \
39*03ce13f7SAndroid Build Coastguard Worker  X(fptoui_f64_i64,     "__Sz_fptoui_f64_i64")                                 \
40*03ce13f7SAndroid Build Coastguard Worker  X(frem_f32,           "fmodf")                                               \
41*03ce13f7SAndroid Build Coastguard Worker  X(frem_f64,           "fmod")                                                \
42*03ce13f7SAndroid Build Coastguard Worker  X(sdiv_i32,           "__divsi3")                                            \
43*03ce13f7SAndroid Build Coastguard Worker  X(sdiv_i64,           "__divdi3")                                            \
44*03ce13f7SAndroid Build Coastguard Worker  X(sitofp_i64_f32,     "__Sz_sitofp_i64_f32")                                 \
45*03ce13f7SAndroid Build Coastguard Worker  X(sitofp_i64_f64,     "__Sz_sitofp_i64_f64")                                 \
46*03ce13f7SAndroid Build Coastguard Worker  X(srem_i32,           "__modsi3")                                            \
47*03ce13f7SAndroid Build Coastguard Worker  X(srem_i64,           "__moddi3")                                            \
48*03ce13f7SAndroid Build Coastguard Worker  X(udiv_i32,           "__udivsi3")                                           \
49*03ce13f7SAndroid Build Coastguard Worker  X(udiv_i64,           "__udivdi3")                                           \
50*03ce13f7SAndroid Build Coastguard Worker  X(uitofp_4xi32_4xf32, "__Sz_uitofp_4xi32_4xf32")                             \
51*03ce13f7SAndroid Build Coastguard Worker  X(uitofp_i32_f32,     "__Sz_uitofp_i32_f32")                                 \
52*03ce13f7SAndroid Build Coastguard Worker  X(uitofp_i32_f64,     "__Sz_uitofp_i32_f64")                                 \
53*03ce13f7SAndroid Build Coastguard Worker  X(uitofp_i64_f32,     "__Sz_uitofp_i64_f32")                                 \
54*03ce13f7SAndroid Build Coastguard Worker  X(uitofp_i64_f64,     "__Sz_uitofp_i64_f64")                                 \
55*03ce13f7SAndroid Build Coastguard Worker  X(urem_i32,           "__umodsi3")                                           \
56*03ce13f7SAndroid Build Coastguard Worker  X(urem_i64,           "__umoddi3")
57*03ce13f7SAndroid Build Coastguard Worker//#define X(Tag, Name)
58*03ce13f7SAndroid Build Coastguard Worker
59*03ce13f7SAndroid Build Coastguard Worker#endif // SUBZERO_SRC_ICETARGETLOWERING_DEF
60