/frameworks/compile/libbcc/lib/ExecutionEngine/ |
D | RuntimeStub.h | 10 extern di_int __absvdi2(di_int); 12 extern di_int __addvdi3(di_int, di_int); 15 extern di_int __ashldi3(di_int, si_int); 18 extern di_int __ashrdi3(di_int, si_int); 20 extern si_int __clzdi2(di_int); 22 extern si_int __cmpdi2(di_int, di_int); 23 extern si_int __ctzdi2(di_int); 29 extern di_int __divdi3(di_int, di_int); 35 extern si_int __ffsdi2(di_int); 36 extern di_int __fixdfdi(double); [all …]
|
/frameworks/compile/libbcc/runtime/lib/ |
D | mulvdi3.c | 22 di_int 23 __mulvdi3(di_int a, di_int b) in __mulvdi3() 25 const int N = (int)(sizeof(di_int) * CHAR_BIT); in __mulvdi3() 26 const di_int MIN = (di_int)1 << (N-1); in __mulvdi3() 27 const di_int MAX = ~MIN; in __mulvdi3() 40 di_int sa = a >> (N - 1); in __mulvdi3() 41 di_int abs_a = (a ^ sa) - sa; in __mulvdi3() 42 di_int sb = b >> (N - 1); in __mulvdi3() 43 di_int abs_b = (b ^ sb) - sb; in __mulvdi3()
|
D | divdi3.c | 21 di_int 22 __divdi3(di_int a, di_int b) in __divdi3() 24 const int bits_in_dword_m1 = (int)(sizeof(di_int) * CHAR_BIT) - 1; in __divdi3() 25 di_int s_a = a >> bits_in_dword_m1; /* s_a = a < 0 ? -1 : 0 */ in __divdi3() 26 di_int s_b = b >> bits_in_dword_m1; /* s_b = b < 0 ? -1 : 0 */ in __divdi3()
|
D | moddi3.c | 21 di_int 22 __moddi3(di_int a, di_int b) in __moddi3() 24 const int bits_in_dword_m1 = (int)(sizeof(di_int) * CHAR_BIT) - 1; in __moddi3() 25 di_int s = b >> bits_in_dword_m1; /* s = b < 0 ? -1 : 0 */ in __moddi3() 29 di_int r; in __moddi3()
|
D | negvdi2.c | 22 di_int 23 __negvdi2(di_int a) in __negvdi2() 25 const di_int MIN = (di_int)1 << ((int)(sizeof(di_int) * CHAR_BIT)-1); in __negvdi2()
|
D | absvdi2.c | 22 di_int 23 __absvdi2(di_int a) in __absvdi2() 25 const int N = (int)(sizeof(di_int) * CHAR_BIT); in __absvdi2() 26 if (a == ((di_int)1 << (N-1))) in __absvdi2() 28 const di_int t = a >> (N - 1); in __absvdi2()
|
D | addvdi3.c | 22 di_int 23 __addvdi3(di_int a, di_int b) in __addvdi3() 25 di_int s = a + b; in __addvdi3()
|
D | subvdi3.c | 22 di_int 23 __subvdi3(di_int a, di_int b) in __subvdi3() 25 di_int s = a - b; in __subvdi3()
|
D | int_lib.h | 33 typedef long long di_int; typedef 38 di_int all; 78 di_int high; 80 di_int high; 101 static inline ti_int make_ti(di_int h, di_int l) { in make_ti()
|
/frameworks/compile/libbcc/runtime/test/Unit/ |
D | divdi3_test.c | 19 di_int __divdi3(di_int a, di_int b); 21 int test__divdi3(di_int a, di_int b, di_int expected) in test__divdi3() 23 di_int x = __divdi3(a, b); in test__divdi3() 30 char assumption_1[sizeof(di_int) == 2*sizeof(si_int)] = {0};
|
D | moddi3_test.c | 19 di_int __moddi3(di_int a, di_int b); 21 int test__moddi3(di_int a, di_int b, di_int expected) in test__moddi3() 23 di_int x = __moddi3(a, b); in test__moddi3() 30 char assumption_1[sizeof(di_int) == 2*sizeof(si_int)] = {0};
|
D | muldi3_test.c | 17 di_int __muldi3(di_int a, di_int b); 19 int test__muldi3(di_int a, di_int b, di_int expected) in test__muldi3() 21 di_int x = __muldi3(a, b); in test__muldi3() 28 char assumption_1[sizeof(di_int) == 2*sizeof(si_int)] = {0};
|
D | subvdi3_test.c | 22 di_int __subvdi3(di_int a, di_int b); 24 int test__subvdi3(di_int a, di_int b) in test__subvdi3() 26 di_int x = __subvdi3(a, b); in test__subvdi3() 27 di_int expected = a - b; in test__subvdi3()
|
D | addvdi3_test.c | 21 di_int __addvdi3(di_int a, di_int b); 23 int test__addvdi3(di_int a, di_int b) in test__addvdi3() 25 di_int x = __addvdi3(a, b); in test__addvdi3() 26 di_int expected = a + b; in test__addvdi3()
|
D | mulvdi3_test.c | 21 di_int __mulvdi3(di_int a, di_int b); 23 int test__mulvdi3(di_int a, di_int b, di_int expected) in test__mulvdi3() 25 di_int x = __mulvdi3(a, b); in test__mulvdi3()
|
D | absvdi2_test.c | 22 di_int __absvdi2(di_int a); 24 int test__absvdi2(di_int a) in test__absvdi2() 26 di_int x = __absvdi2(a); in test__absvdi2() 27 di_int expected = a; in test__absvdi2() 61 if (test__absvdi2(((di_int)rand() << 32) | rand())) in main()
|
D | negdi2_test.c | 19 di_int __negdi2(di_int a); 21 int test__negdi2(di_int a, di_int expected) in test__negdi2() 23 di_int x = __negdi2(a); in test__negdi2() 30 char assumption_1[sizeof(di_int) == 2*sizeof(si_int)] = {0};
|
D | ashldi3_test.c | 21 di_int __ashldi3(di_int a, si_int b); 23 int test__ashldi3(di_int a, si_int b, di_int expected) in test__ashldi3() 25 di_int x = __ashldi3(a, b); in test__ashldi3() 32 char assumption_1[sizeof(di_int) == 2*sizeof(si_int)] = {0};
|
D | ashrdi3_test.c | 21 di_int __ashrdi3(di_int a, si_int b); 23 int test__ashrdi3(di_int a, si_int b, di_int expected) in test__ashrdi3() 25 di_int x = __ashrdi3(a, b); in test__ashrdi3() 32 char assumption_1[sizeof(di_int) == 2*sizeof(si_int)] = {0};
|
D | lshrdi3_test.c | 21 di_int __lshrdi3(di_int a, si_int b); 23 int test__lshrdi3(di_int a, si_int b, di_int expected) in test__lshrdi3() 25 di_int x = __lshrdi3(a, b); in test__lshrdi3() 32 char assumption_1[sizeof(di_int) == 2*sizeof(si_int)] = {0};
|
D | negvdi2_test.c | 21 di_int __negvdi2(di_int a); 23 int test__negvdi2(di_int a) in test__negvdi2() 25 di_int x = __negvdi2(a); in test__negvdi2() 26 di_int expected = -a; in test__negvdi2()
|
D | paritydi2_test.c | 20 si_int __paritydi2(di_int a); 22 int naive_parity(di_int a) in naive_parity() 30 int test__paritydi2(di_int a) in test__paritydi2() 40 char assumption_1[sizeof(di_int) == 2*sizeof(si_int)] = {0}; 47 if (test__paritydi2(((di_int)rand() << 32) + rand())) in main()
|
D | cmpdi2_test.c | 21 si_int __cmpdi2(di_int a, di_int b); 23 int test__cmpdi2(di_int a, di_int b, si_int expected) in test__cmpdi2() 32 char assumption_1[sizeof(di_int) == 2*sizeof(si_int)] = {0};
|
D | popcountdi2_test.c | 20 si_int __popcountdi2(di_int a); 22 int naive_popcount(di_int a) in naive_popcount() 30 int test__popcountdi2(di_int a) in test__popcountdi2() 40 char assumption_1[sizeof(di_int) == 2*sizeof(si_int)] = {0}; 59 if (test__popcountdi2(((di_int)rand() << 32) | rand())) in main()
|
/frameworks/compile/libbcc/runtime/ |
D | README.txt | 28 typedef long long di_int; 33 di_int __ashldi3(di_int a, si_int b); // a << b 36 di_int __ashrdi3(di_int a, si_int b); // a >> b arithmetic (sign fill) 38 di_int __lshrdi3(di_int a, si_int b); // a >> b logical (zero fill) 42 si_int __clzdi2(di_int a); // count leading zeros 45 si_int __ctzdi2(di_int a); // count trailing zeros 48 si_int __ffsdi2(di_int a); // find least significant 1 bit 52 si_int __paritydi2(di_int a); // bit parity 56 si_int __popcountdi2(di_int a); // bit population 64 di_int __negdi2 (di_int a); // -a [all …]
|