79e13a65f91578cb2d1716203dd58625b7db4a42
[oota-llvm.git] / lib / Support / Windows / explicit_symbols.inc
1 /* in libgcc.a */
2
3 #ifdef HAVE__ALLOCA
4   EXPLICIT_SYMBOL(_alloca)
5   EXPLICIT_SYMBOL2(alloca, _alloca)
6 #endif
7 #ifdef HAVE___ALLOCA
8   EXPLICIT_SYMBOL(__alloca)
9 #endif
10 #ifdef HAVE___CHKSTK
11   EXPLICIT_SYMBOL(__chkstk)
12 #endif
13 #ifdef HAVE____CHKSTK
14   EXPLICIT_SYMBOL(___chkstk)
15 #endif
16 #ifdef HAVE___MAIN
17   EXPLICIT_SYMBOL(__main) // FIXME: Don't call it.
18 #endif
19
20 #ifdef HAVE___ASHLDI3
21   EXPLICIT_SYMBOL(__ashldi3)
22 #endif
23 #ifdef HAVE___ASHRDI3
24   EXPLICIT_SYMBOL(__ashrdi3)
25 #endif
26 #ifdef HAVE___CMPDI2 // FIXME: unused
27   EXPLICIT_SYMBOL(__cmpdi2)
28 #endif
29 #ifdef HAVE___DIVDI3
30   EXPLICIT_SYMBOL(__divdi3)
31 #endif
32 #ifdef HAVE___FIXDFDI
33   EXPLICIT_SYMBOL(__fixdfdi)
34 #endif
35 #ifdef HAVE___FIXSFDI
36   EXPLICIT_SYMBOL(__fixsfdi)
37 #endif
38 #ifdef HAVE___FIXUNSDFDI
39   EXPLICIT_SYMBOL(__fixunsdfdi)
40 #endif
41 #ifdef HAVE___FIXUNSSFDI
42   EXPLICIT_SYMBOL(__fixunssfdi)
43 #endif
44 #ifdef HAVE___FLOATDIDF
45   EXPLICIT_SYMBOL(__floatdidf)
46 #endif
47 #ifdef HAVE___FLOATDISF
48   EXPLICIT_SYMBOL(__floatdisf)
49 #endif
50 #ifdef HAVE___LSHRDI3
51   EXPLICIT_SYMBOL(__lshrdi3)
52 #endif
53 #ifdef HAVE___MODDI3
54   EXPLICIT_SYMBOL(__moddi3)
55 #endif
56 #ifdef HAVE___UDIVDI3
57   EXPLICIT_SYMBOL(__udivdi3)
58 #endif
59 #ifdef HAVE___UMODDI3
60   EXPLICIT_SYMBOL(__umoddi3)
61 #endif
62
63 /* msvcrt */
64 #if defined(_MSC_VER)
65   EXPLICIT_SYMBOL2(alloca, _alloca_probe)
66
67 #ifdef _M_IX86
68 #define INLINE_DEF_FLOAT_SYMBOL(SYM, ARGC) INLINE_DEF_SYMBOL##ARGC(float, SYM)
69   INLINE_DEF_FLOAT_SYMBOL(acosf, 1)
70   INLINE_DEF_FLOAT_SYMBOL(asinf, 1)
71   INLINE_DEF_FLOAT_SYMBOL(atanf, 1)
72   INLINE_DEF_FLOAT_SYMBOL(atan2f, 2)
73   INLINE_DEF_FLOAT_SYMBOL(ceilf, 1)
74   INLINE_DEF_FLOAT_SYMBOL(cosf, 1)
75   INLINE_DEF_FLOAT_SYMBOL(coshf, 1)
76   INLINE_DEF_FLOAT_SYMBOL(expf, 1)
77   INLINE_DEF_FLOAT_SYMBOL(floorf, 1)
78   INLINE_DEF_FLOAT_SYMBOL(fmodf, 2)
79   INLINE_DEF_FLOAT_SYMBOL(logf, 1)
80   INLINE_DEF_FLOAT_SYMBOL(powf, 2)
81   INLINE_DEF_FLOAT_SYMBOL(sinf, 1)
82   INLINE_DEF_FLOAT_SYMBOL(sinhf, 1)
83   INLINE_DEF_FLOAT_SYMBOL(sqrtf, 1)
84   INLINE_DEF_FLOAT_SYMBOL(tanf, 1)
85   INLINE_DEF_FLOAT_SYMBOL(tanhf, 1)
86
87   // These were added in VS 2013.
88 #if (_MSC_VER < 1900)
89   INLINE_DEF_FLOAT_SYMBOL(copysignf, 2)
90   INLINE_DEF_FLOAT_SYMBOL(fminf, 2)
91   INLINE_DEF_FLOAT_SYMBOL(fmaxf, 2)
92 #endif
93 #undef INLINE_DEF_FLOAT_SYMBOL
94 #endif
95
96 #endif