1 #ifndef BCC_RUNTIME_STUB_H 2 #define BCC_RUNTIME_STUB_H 3 4 #include "runtime/lib/int_lib.h" 5 6 #if defined(__cplusplus) 7 extern "C" { 8 #endif 9 10 extern di_int __absvdi2(di_int); 11 extern si_int __absvsi2(si_int); 12 extern di_int __addvdi3(di_int, di_int); 13 extern si_int __addvsi3(si_int, si_int); 14 #if !defined(__i386__) && !defined(__SSE2__) 15 extern di_int __ashldi3(di_int, si_int); 16 #endif 17 #ifndef ANDROID 18 extern di_int __ashrdi3(di_int, si_int); 19 #endif 20 extern si_int __clzdi2(di_int); 21 extern si_int __clzsi2(si_int); 22 extern si_int __cmpdi2(di_int, di_int); 23 extern si_int __ctzdi2(di_int); 24 extern si_int __ctzsi2(si_int); 25 #ifndef ANDROID /* no complex.h */ 26 extern double _Complex __divdc3(double, double, double, double); 27 #endif 28 #if !defined(__i386__) 29 extern di_int __divdi3(di_int, di_int); 30 #endif 31 extern si_int __divsi3(si_int, si_int); 32 #ifndef ANDROID /* no complex.h */ 33 extern float _Complex __divsc3(float, float, float, float); 34 #endif 35 extern si_int __ffsdi2(di_int); 36 extern di_int __fixdfdi(double); 37 extern di_int __fixsfdi(float); 38 extern du_int __fixunsdfdi(double); 39 extern su_int __fixunsdfsi(double); 40 extern du_int __fixunssfdi(float); 41 extern su_int __fixunssfsi(float); 42 #if !defined(__i386__) 43 extern double __floatdidf(di_int); 44 extern float __floatdisf(di_int); 45 extern double __floatundidf(du_int); 46 extern float __floatundisf(du_int); 47 extern di_int __moddi3(di_int, di_int); 48 #endif 49 extern si_int __modsi3(si_int, si_int); 50 #if !defined(__i386__) && !defined(__SSE2__) 51 extern di_int __lshrdi3(di_int, si_int); 52 #endif 53 #ifndef ANDROID /* no complex.h */ 54 extern double _Complex __muldc3(double, double, double, double); 55 #endif 56 #if !defined(__i386__) 57 extern di_int __muldi3(di_int, di_int); 58 #endif 59 #ifndef ANDROID /* no complex.h */ 60 extern float _Complex __mulsc3(float, float, float, float); 61 #endif 62 extern di_int __mulvdi3(di_int, di_int); 63 extern si_int __mulvsi3(si_int, si_int); 64 extern di_int __negdi2(di_int); 65 extern di_int __negvdi2(di_int); 66 extern si_int __negvsi2(si_int); 67 extern si_int __paritydi2(di_int); 68 extern si_int __paritysi2(si_int); 69 extern si_int __popcountdi2(di_int); 70 extern si_int __popcountsi2(si_int); 71 extern double __powidf2(double, si_int); 72 extern float __powisf2(float, si_int); 73 extern di_int __subvdi3(di_int, di_int); 74 extern si_int __subvsi3(si_int, si_int); 75 extern si_int __ucmpdi2(du_int, du_int); 76 #if !defined(__i386__) 77 extern du_int __udivdi3(du_int, du_int); 78 #endif 79 extern su_int __udivsi3(su_int, su_int); 80 extern du_int __udivmoddi4(du_int, du_int, du_int *); 81 #if !defined(__i386__) 82 extern du_int __umoddi3(du_int, du_int); 83 #endif 84 extern su_int __umodsi3(su_int, su_int); 85 extern void __eprintf(char const *, char const *, char const *, char const *) 86 __attribute__((visibility("hidden"))); 87 88 #if defined(__cplusplus) 89 } 90 #endif 91 92 #endif /* BCC_RUNTIME_STUB_H */ 93