int128 44 src/dps8/dps8.h # define construct_s128(h, l) ((int128) { (h), (l) }) int128 9709 src/dps8/dps8_eis.c int128 9889 src/dps8/dps8_eis.c int128 320 src/dps8/dps8_hw_consts.h static inline int128 SIGNEXT72_128 (word72 w) int128 330 src/dps8/dps8_hw_consts.h return (int128) { (uint64_t) v.h, v.l}; int128 332 src/dps8/dps8_hw_consts.h return (int128) { (int64_t) v.h, v.l}; int128 334 src/dps8/dps8_hw_consts.h return (int128) { (__int64_t) v.h, v.l}; int128 339 src/dps8/dps8_hw_consts.h return ((int128) w) | (int128) (((uint128) -1ll) << 72); int128 346 src/dps8/dps8_hw_consts.h static inline int128 SIGNEXT36_128 (word36 w) int128 4807 src/dps8/dps8_ins.c int128 prod = multiply_s128 ( int128 1176 src/dps8/dps8_math.c int128 t = SIGNEXT72_128(m2); int128 1178 src/dps8/dps8_math.c int128 m3 = multiply_s128 (SIGNEXT72_128(m1), cast_s128 (ut)); int128 1181 src/dps8/dps8_math.c int128 m3 = (SIGNEXT72_128(m1) * (SIGNEXT72_128(m2) >> 44)); int128 1790 src/dps8/dps8_math.c SC_I_NEG ((int128)SIGNEXT72_128(m1) < (int128)SIGNEXT72_128(m2)); int128 1918 src/dps8/dps8_math.c int128 sm1 = SIGNEXT72_128 (m1); int128 1921 src/dps8/dps8_math.c int128 sm2 = SIGNEXT72_128 (m2); int128 1926 src/dps8/dps8_math.c int128 sm1 = SIGNEXT72_128 (m1); int128 1929 src/dps8/dps8_math.c int128 sm2 = SIGNEXT72_128 (m2); int128 2367 src/dps8/dps8_math.c int128 m2s = rshift_s128 (SIGNEXT72_128(m2), 8); int128 2370 src/dps8/dps8_math.c int128 m1l = and_s128 (cast_s128 (m1), construct_128 (0, MASK64)); int128 2371 src/dps8/dps8_math.c int128 m1h = rshift_s128 (SIGNEXT72_128(m1), 64); int128 2372 src/dps8/dps8_math.c int128 m3h = multiply_s128 (m1h, m2s); // hi partial product int128 2373 src/dps8/dps8_math.c int128 m3l = multiply_s128 (m1l, m2s); // lo partial product int128 2381 src/dps8/dps8_math.c int128 m2s = SIGNEXT72_128(m2) >> 8; int128 2384 src/dps8/dps8_math.c int128 m1l = m1 & (((uint128)1<<64)-1); int128 2385 src/dps8/dps8_math.c int128 m1h = SIGNEXT72_128(m1) >> 64; int128 2386 src/dps8/dps8_math.c int128 m3h = m1h * m2s; // hi partial product int128 2387 src/dps8/dps8_math.c int128 m3l = m1l * m2s; // lo partial product int128 2393 src/dps8/dps8_math.c m3h = (int128) (((uint128) m3h) << 1); // m3h is hi by 64, align it for addition. The result is 135 bits so this cannot overflow. int128 2946 src/dps8/dps8_math.c zFrac = (uint128) (((int128) (~zFrac)) + 1); int128 2984 src/dps8/dps8_math.c dFrac = (uint128) (((int128) (~dFrac)) + 1); int128 3376 src/dps8/dps8_math.c int128 sm1 = SIGNEXT72_128 (m1); int128 3377 src/dps8/dps8_math.c int128 sm2 = SIGNEXT72_128 (m2); int128 3420 src/dps8/dps8_math.c int128 sm1 = SIGNEXT72_128 (m1); int128 3421 src/dps8/dps8_math.c int128 sm2 = SIGNEXT72_128 (m2); int128 3547 src/dps8/dps8_math.c int128 sm1 = SIGNEXT72_128 (m1); int128 3550 src/dps8/dps8_math.c int128 sm2 = SIGNEXT72_128 (m2); int128 3557 src/dps8/dps8_math.c int128 sm1 = SIGNEXT72_128 (m1); int128 3560 src/dps8/dps8_math.c int128 sm2 = SIGNEXT72_128 (m2); int128 81 src/dps8/dps8_math128.c bool islt_s128 (int128 a, int128 b) int128 89 src/dps8/dps8_math128.c bool isgt_s128 (int128 a, int128 b) int128 102 src/dps8/dps8_math128.c int128 and_s128 (int128 a, uint128 b) int128 104 src/dps8/dps8_math128.c return (int128) {a.h & (int64_t)b.h, a.l & b.l}; int128 162 src/dps8/dps8_math128.c int128 negate_s128 (int128 a) int128 197 src/dps8/dps8_math128.c int128 lshift_s128 (int128 a, unsigned int n) int128 269 src/dps8/dps8_math128.c int128 rshift_s128 (int128 a, unsigned int n) int128 495 src/dps8/dps8_math128.c int128 multiply_s128 (int128 a, int128 b) int128 814 src/dps8/dps8_math128.c int128 a = construct_s128 (ah, al); int128 815 src/dps8/dps8_math128.c int128 b = construct_s128 (bh, bl); int128 816 src/dps8/dps8_math128.c int128 r = multiply_s128 (a, b); int128 36 src/dps8/dps8_math128.h bool islt_s128 (int128 a, int128 b); int128 37 src/dps8/dps8_math128.h bool isgt_s128 (int128 a, int128 b); int128 39 src/dps8/dps8_math128.h int128 and_s128 (int128 a, uint128 b); int128 45 src/dps8/dps8_math128.h int128 multiply_s128 (int128 a, int128 b); int128 51 src/dps8/dps8_math128.h int128 negate_s128 (int128 a); int128 53 src/dps8/dps8_math128.h int128 lshift_s128 (int128 a, unsigned int n); int128 55 src/dps8/dps8_math128.h int128 rshift_s128 (int128 a, unsigned int n); int128 1093 src/dps8/dps8_utils.c int128 op1s = SIGNEXT72_128 (and_128 (op1, MASK72)); int128 1094 src/dps8/dps8_utils.c int128 op2s = SIGNEXT72_128 (and_128 (op2, MASK72)); int128 1100 src/dps8/dps8_utils.c int128 op1s = SIGNEXT72_128 (op1 & MASK72); int128 1101 src/dps8/dps8_utils.c int128 op2s = SIGNEXT72_128 (op2 & MASK72); int128 1929 src/dps8/dps8_utils.c char * print_int128o (int128 n, char * p) int128 1960 src/dps8/dps8_utils.c void print_int128 (int128 n, char * p) int128 890 src/dps8/dps8_utils.h void print_int128 (int128 n, char * p); int128 891 src/dps8/dps8_utils.h char * print_int128o (int128 n, char * p);