package float32 file_number 0 "/inputs/subtree/xls/dslx/stdlib/std.x" file_number 1 "/inputs/subtree/xls/dslx/stdlib/abs_diff.x" file_number 2 "/inputs/subtree/xls/dslx/stdlib/apfloat.x" file_number 3 "/inputs/subtree/xls/dslx/stdlib/float32.x" top fn __float32__add(x: (bits[1], bits[8], bits[23]) id=843, y: (bits[1], bits[8], bits[23]) id=844) -> (bits[1], bits[8], bits[23]) { y_bexp__1: bits[8] = tuple_index(y, index=1, id=29943, pos=[(2,3087,67), (3,363,48)]) literal.29944: bits[1] = literal(value=0, id=29944, pos=[(3,363,48)]) x_bexp__1: bits[8] = tuple_index(x, index=1, id=29945, pos=[(2,3087,59), (3,363,48)]) y_bexpnot: bits[8] = not(y_bexp__1, id=29946, pos=[(1,90,15), (2,3005,44), (2,3087,57), (3,363,48)]) x_bexp_extended__1: bits[9] = concat(literal.29944, x_bexp__1, id=29947, pos=[(1,91,63), (2,3005,44), (2,3087,57), (3,363,48)]) y_bexpnot_extended: bits[9] = concat(literal.29944, y_bexpnot, id=29948, pos=[(1,91,63), (2,3005,44), (2,3087,57), (3,363,48)]) full_result: bits[9] = add(x_bexp_extended__1, y_bexpnot_extended, id=29949, pos=[(0,1119,45), (1,91,63), (2,3005,44), (2,3087,57), (3,363,48)]) overflow_detected: bits[1] = bit_slice(full_result, start=8, width=1, id=29950, pos=[(0,1121,49), (1,91,63), (2,3005,44), (2,3087,57), (3,363,48)]) tuple_index.29952: bits[23] = tuple_index(y, index=2, id=29952, pos=[(2,3088,17), (3,363,48)]) tuple_index.29953: bits[23] = tuple_index(x, index=2, id=29953, pos=[(2,3088,17), (3,363,48)]) x_bexp: bits[8] = sel(overflow_detected, cases=[y_bexp__1, x_bexp__1], id=30370, pos=[(2,3088,17), (3,363,48)]) literal.29955: bits[8] = literal(value=0, id=29955, pos=[(2,3095,34), (3,363,48)]) y_bexp: bits[8] = sel(overflow_detected, cases=[x_bexp__1, y_bexp__1], id=30368, pos=[(2,3088,17), (3,363,48)]) literal.29956: bits[1] = literal(value=1, id=29956, pos=[(2,3091,22), (3,363,48)]) x_fraction: bits[23] = sel(overflow_detected, cases=[tuple_index.29952, tuple_index.29953], id=30371, pos=[(2,3088,17), (3,363,48)]) ne.30765: bits[1] = ne(x_bexp, literal.29955, id=30765, pos=[(2,3095,21), (3,363,48)]) y_fraction: bits[23] = sel(overflow_detected, cases=[tuple_index.29953, tuple_index.29952], id=30369, pos=[(2,3088,17), (3,363,48)]) ne.30764: bits[1] = ne(y_bexp, literal.29955, id=30764, pos=[(2,3096,21), (3,363,48)]) nc: bits[1] = not(overflow_detected, id=29951, pos=[(1,92,19), (2,3005,44), (2,3087,57), (3,363,48)]) fraction_x: bits[24] = concat(literal.29956, x_fraction, id=29977, pos=[(2,3091,22), (3,363,48)]) sign_ext.30499: bits[24] = sign_ext(ne.30765, new_bit_count=24, id=30499, pos=[(2,3095,21), (3,363,48)]) fraction_y: bits[24] = concat(literal.29956, y_fraction, id=29959, pos=[(2,3092,22), (3,363,48)]) sign_ext.30502: bits[24] = sign_ext(ne.30764, new_bit_count=24, id=30502, pos=[(2,3096,21), (3,363,48)]) narrowed_result: bits[8] = bit_slice(full_result, start=0, width=8, id=29964, pos=[(1,91,63), (2,3005,44), (2,3087,57), (3,363,48)]) x_bexpor_mask: bits[8] = sign_ext(nc, new_bit_count=8, id=29965, pos=[(1,94,32), (2,3005,44), (2,3087,57), (3,363,48)]) literal.29966: bits[7] = literal(value=0, id=29966, pos=[(2,3006,68), (2,3087,57), (3,363,48)]) fraction_x__1: bits[24] = and(fraction_x, sign_ext.30499, id=30500, pos=[(2,3095,21), (3,363,48)]) fraction_y__1: bits[24] = and(fraction_y, sign_ext.30502, id=30503, pos=[(2,3096,21), (3,363,48)]) xddend_x__1_squeezed_const_lsb_bits: bits[3] = literal(value=0, id=30508, pos=[(2,3106,19), (3,363,48)]) result: bits[8] = xor(narrowed_result, x_bexpor_mask, id=29968, pos=[(1,95,18), (2,3005,44), (2,3087,57), (3,363,48)]) concat.29969: bits[8] = concat(literal.29966, overflow_detected, id=29969, pos=[(2,3006,68), (2,3087,57), (3,363,48)]) tuple_index.29987: bits[1] = tuple_index(x, index=0, id=29987, pos=[(2,3088,17), (3,363,48)]) tuple_index.29988: bits[1] = tuple_index(y, index=0, id=29988, pos=[(2,3088,17), (3,363,48)]) wide_x_squeezed: bits[25] = concat(literal.29944, fraction_x__1, id=30696, pos=[(2,3099,17), (3,363,48)]) wide_y_shift_bits: bits[27] = concat(fraction_y__1, xddend_x__1_squeezed_const_lsb_bits, id=29981, pos=[(2,3112,31), (3,363,48)]) shift: bits[8] = add(result, concat.29969, id=29975, pos=[(1,54,7), (2,3006,68), (2,3087,57), (3,363,48)]) literal.29974: bits[28] = literal(value=268435455, id=29974, pos=[(0,1411,19), (0,1501,17), (0,1528,22), (2,3111,35), (3,363,48)]) xor.29992: bits[1] = xor(tuple_index.29987, tuple_index.29988, id=29992, pos=[(2,3106,23), (3,363,48)]) neg.29989: bits[25] = neg(wide_x_squeezed, id=29989, pos=[(2,3106,41), (3,363,48)]) shrl.29985: bits[27] = shrl(wide_y_shift_bits, shift, id=29985, pos=[(2,3112,31), (3,363,48)]) not.30846: bits[23] = not(y_fraction, id=30846, pos=[(0,1411,4), (0,1501,17), (0,1528,22), (2,3111,35), (3,363,48)]) shll.29979: bits[28] = shll(literal.29974, shift, id=29979, pos=[(0,1411,19), (0,1501,17), (0,1528,22), (2,3111,35), (3,363,48)]) xddend_x__1_squeezed: bits[25] = sel(xor.29992, cases=[wide_x_squeezed, neg.29989], id=30506, pos=[(2,3106,19), (3,363,48)]) literal.30381: bits[2] = literal(value=0, id=30381, pos=[(3,363,48)]) bit_slice.30838: bits[24] = bit_slice(shrl.29985, start=3, width=24, id=30838, pos=[(2,3116,20), (3,363,48)]) concat.30849: bits[24] = concat(literal.29944, not.30846, id=30849, pos=[(0,1411,4), (0,1501,17), (0,1528,22), (2,3111,35), (3,363,48)]) not.30768: bits[24] = not(sign_ext.30502, id=30768, pos=[(0,1411,4), (0,1501,17), (0,1528,22), (2,3111,35), (3,363,48)]) bit_slice.29983: bits[24] = bit_slice(shll.29979, start=3, width=24, id=29983, pos=[(0,1411,19), (0,1501,17), (0,1528,22), (2,3111,35), (3,363,48)]) sign_ext.30815: bits[26] = sign_ext(xddend_x__1_squeezed, new_bit_count=26, id=30815, pos=[(2,3116,20), (3,363,48)]) concat.30817: bits[26] = concat(literal.30381, bit_slice.30838, id=30817, pos=[(2,3116,20), (3,363,48)]) nor.30769: bits[24] = nor(concat.30849, not.30768, bit_slice.29983, id=30769, pos=[(0,1411,4), (0,1501,17), (0,1528,22), (2,3111,35), (3,363,48)]) literal.29960: bits[24] = literal(value=0, id=29960, pos=[(2,3095,49), (3,363,48)]) add.30749: bits[26] = add(sign_ext.30815, concat.30817, id=30749, pos=[(2,3116,20), (3,363,48)]) bit_slice.29990: bits[1] = bit_slice(shrl.29985, start=0, width=1, id=29990, pos=[(2,3049,40), (2,3112,30), (3,363,48)]) sticky: bits[1] = ne(nor.30769, literal.29960, id=29991, pos=[(0,1501,17), (0,1528,22), (2,3111,35), (3,363,48)]) bit_slice.30808: bits[25] = bit_slice(add.30749, start=0, width=25, id=30808, pos=[(2,3126,9), (3,363,48)]) bit_slice.30839: bits[2] = bit_slice(shrl.29985, start=1, width=2, id=30839, pos=[(2,3116,20), (3,363,48)]) or.29996: bits[1] = or(bit_slice.29990, sticky, id=29996, pos=[(2,3049,40), (2,3112,30), (3,363,48)]) concat.30844: bits[28] = concat(bit_slice.30808, bit_slice.30839, or.29996, id=30844, pos=[(2,3126,9), (3,363,48)]) bit_slice.30810: bits[1] = bit_slice(add.30749, start=25, width=1, id=30810, pos=[(2,3118,47), (3,363,48)]) neg.30004: bits[28] = neg(concat.30844, id=30004, pos=[(2,3126,46), (3,363,48)]) xbs_fraction: bits[28] = sel(bit_slice.30810, cases=[concat.30844, neg.30004], id=30005, pos=[(2,3126,9), (3,363,48)]) bit_slice.30093: bits[1] = bit_slice(xbs_fraction, start=4, width=1, id=30093, pos=[(0,1590,70), (0,1595,64), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30069: bits[1] = bit_slice(xbs_fraction, start=6, width=1, id=30069, pos=[(0,1590,70), (0,1595,34), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30066: bits[1] = bit_slice(xbs_fraction, start=11, width=1, id=30066, pos=[(0,1590,40), (0,1595,34), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30044: bits[1] = bit_slice(xbs_fraction, start=10, width=1, id=30044, pos=[(0,1590,70), (0,1595,34), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30089: bits[1] = bit_slice(xbs_fraction, start=9, width=1, id=30089, pos=[(0,1590,40), (0,1595,64), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30068: bits[1] = bit_slice(xbs_fraction, start=8, width=1, id=30068, pos=[(0,1590,70), (0,1595,64), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30043: bits[1] = bit_slice(xbs_fraction, start=12, width=1, id=30043, pos=[(0,1590,70), (0,1595,64), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30023: bits[1] = bit_slice(xbs_fraction, start=14, width=1, id=30023, pos=[(0,1590,70), (0,1595,34), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30020: bits[1] = bit_slice(xbs_fraction, start=19, width=1, id=30020, pos=[(0,1590,40), (0,1595,34), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30011: bits[1] = bit_slice(xbs_fraction, start=18, width=1, id=30011, pos=[(0,1590,70), (0,1595,34), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30039: bits[1] = bit_slice(xbs_fraction, start=17, width=1, id=30039, pos=[(0,1590,40), (0,1595,64), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30022: bits[1] = bit_slice(xbs_fraction, start=16, width=1, id=30022, pos=[(0,1590,70), (0,1595,64), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) carry_bit: bits[1] = bit_slice(xbs_fraction, start=27, width=1, id=30007, pos=[(2,3131,32), (3,363,48)]) bit_slice.30006: bits[1] = bit_slice(xbs_fraction, start=26, width=1, id=30006, pos=[(0,1590,70), (0,1595,34), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30015: bits[1] = bit_slice(xbs_fraction, start=25, width=1, id=30015, pos=[(0,1590,40), (0,1595,64), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30009: bits[1] = bit_slice(xbs_fraction, start=24, width=1, id=30009, pos=[(0,1590,70), (0,1595,64), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30019: bits[1] = bit_slice(xbs_fraction, start=20, width=1, id=30019, pos=[(0,1590,70), (0,1595,64), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30010: bits[1] = bit_slice(xbs_fraction, start=22, width=1, id=30010, pos=[(0,1590,70), (0,1595,34), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30091: bits[1] = bit_slice(xbs_fraction, start=7, width=1, id=30091, pos=[(0,1590,40), (0,1595,34), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30113: bits[1] = bit_slice(xbs_fraction, start=5, width=1, id=30113, pos=[(0,1590,40), (0,1595,64), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30114: bits[1] = not(bit_slice.30093, id=30114, pos=[(0,1583,4), (0,1590,64), (0,1595,64), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30938: bits[1] = not(bit_slice.30069, id=30938, pos=[(0,1590,22), (0,1595,34), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) or.30460: bits[1] = or(bit_slice.30066, bit_slice.30044, id=30460, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30108: bits[1] = nor(bit_slice.30089, bit_slice.30068, id=30108, pos=[(0,1590,22), (0,1595,64), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30087: bits[1] = nor(bit_slice.30066, bit_slice.30044, id=30087, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30942: bits[1] = not(bit_slice.30044, id=30942, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30090: bits[1] = not(bit_slice.30068, id=30090, pos=[(0,1583,4), (0,1590,64), (0,1595,64), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30041: bits[1] = bit_slice(xbs_fraction, start=15, width=1, id=30041, pos=[(0,1590,40), (0,1595,34), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30064: bits[1] = bit_slice(xbs_fraction, start=13, width=1, id=30064, pos=[(0,1590,40), (0,1595,64), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30065: bits[1] = not(bit_slice.30043, id=30065, pos=[(0,1583,4), (0,1590,64), (0,1595,64), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30042: bits[1] = not(bit_slice.30023, id=30042, pos=[(0,1583,4), (0,1590,64), (0,1595,34), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) or.30462: bits[1] = or(bit_slice.30020, bit_slice.30011, id=30462, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30059: bits[1] = nor(bit_slice.30039, bit_slice.30022, id=30059, pos=[(0,1590,22), (0,1595,64), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30037: bits[1] = nor(bit_slice.30020, bit_slice.30011, id=30037, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30040: bits[1] = not(bit_slice.30022, id=30040, pos=[(0,1583,4), (0,1590,64), (0,1595,64), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30945: bits[1] = not(bit_slice.30011, id=30945, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30013: bits[1] = nor(carry_bit, bit_slice.30006, id=30013, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30029: bits[1] = nor(bit_slice.30015, bit_slice.30009, id=30029, pos=[(0,1590,22), (0,1595,64), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30017: bits[1] = bit_slice(xbs_fraction, start=23, width=1, id=30017, pos=[(0,1590,40), (0,1595,34), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30034: bits[1] = bit_slice(xbs_fraction, start=21, width=1, id=30034, pos=[(0,1590,40), (0,1595,64), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) or.30463: bits[1] = or(carry_bit, bit_slice.30006, id=30463, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30949: bits[1] = not(bit_slice.30006, id=30949, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30016: bits[1] = not(bit_slice.30009, id=30016, pos=[(0,1583,4), (0,1590,64), (0,1595,64), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30035: bits[1] = not(bit_slice.30019, id=30035, pos=[(0,1583,4), (0,1590,64), (0,1595,64), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30018: bits[1] = not(bit_slice.30010, id=30018, pos=[(0,1583,4), (0,1590,64), (0,1595,34), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30135: bits[1] = bit_slice(xbs_fraction, start=3, width=1, id=30135, pos=[(0,1590,40), (0,1595,34), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30115: bits[1] = bit_slice(xbs_fraction, start=2, width=1, id=30115, pos=[(0,1590,70), (0,1595,34), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30159: bits[1] = bit_slice(xbs_fraction, start=1, width=1, id=30159, pos=[(0,1590,40), (0,1595,64), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) bit_slice.30137: bits[1] = bit_slice(xbs_fraction, start=0, width=1, id=30137, pos=[(2,3133,65), (3,363,48)]) or.30459: bits[1] = or(bit_slice.30091, bit_slice.30069, id=30459, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30133: bits[1] = nor(bit_slice.30113, bit_slice.30093, id=30133, pos=[(0,1590,22), (0,1595,64), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30132: bits[1] = nor(bit_slice.30113, not.30114, id=30132, pos=[(0,1590,22), (0,1595,64), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30111: bits[1] = nor(bit_slice.30091, bit_slice.30069, id=30111, pos=[(0,1590,22), (0,1595,34), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30939: bits[1] = nor(bit_slice.30091, not.30938, id=30939, pos=[(0,1590,22), (0,1595,34), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30190: bits[1] = nor(or.30460, nor.30108, id=30190, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) and.30191: bits[1] = and(nor.30087, nor.30108, id=30191, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30943: bits[1] = nor(bit_slice.30066, not.30942, id=30943, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30107: bits[1] = nor(bit_slice.30089, not.30090, id=30107, pos=[(0,1590,22), (0,1595,64), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) or.30461: bits[1] = or(bit_slice.30041, bit_slice.30023, id=30461, pos=[(0,1595,22), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30084: bits[1] = nor(bit_slice.30064, bit_slice.30043, id=30084, pos=[(0,1590,22), (0,1595,64), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30083: bits[1] = nor(bit_slice.30064, not.30065, id=30083, pos=[(0,1590,22), (0,1595,64), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30061: bits[1] = nor(bit_slice.30041, not.30042, id=30061, pos=[(0,1590,22), (0,1595,34), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30145: bits[1] = nor(or.30462, nor.30059, id=30145, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) and.30146: bits[1] = and(nor.30037, nor.30059, id=30146, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30058: bits[1] = nor(bit_slice.30039, not.30040, id=30058, pos=[(0,1590,22), (0,1595,64), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30946: bits[1] = nor(bit_slice.30020, not.30945, id=30946, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) and.30117: bits[1] = and(nor.30013, nor.30029, id=30117, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30032: bits[1] = nor(bit_slice.30017, bit_slice.30010, id=30032, pos=[(0,1590,22), (0,1595,34), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30053: bits[1] = nor(bit_slice.30034, bit_slice.30019, id=30053, pos=[(0,1590,22), (0,1595,64), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30116: bits[1] = nor(or.30463, nor.30029, id=30116, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30950: bits[1] = nor(carry_bit, not.30949, id=30950, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30028: bits[1] = nor(bit_slice.30015, not.30016, id=30028, pos=[(0,1590,22), (0,1595,64), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) or.30464: bits[1] = or(bit_slice.30017, bit_slice.30010, id=30464, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30052: bits[1] = nor(bit_slice.30034, not.30035, id=30052, pos=[(0,1590,22), (0,1595,64), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30031: bits[1] = nor(bit_slice.30017, not.30018, id=30031, pos=[(0,1590,22), (0,1595,34), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) or.30458: bits[1] = or(bit_slice.30135, bit_slice.30115, id=30458, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30181: bits[1] = nor(bit_slice.30159, bit_slice.30137, id=30181, pos=[(0,1590,22), (0,1595,64), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30157: bits[1] = nor(bit_slice.30135, bit_slice.30115, id=30157, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30160: bits[1] = not(bit_slice.30137, id=30160, pos=[(0,1583,4), (0,1590,64), (0,1595,64), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30934: bits[1] = not(bit_slice.30115, id=30934, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30207: bits[1] = nor(or.30459, nor.30133, id=30207, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30448: bits[2] = concat(literal.29956, nor.30132, id=30448, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30572: bits[2] = concat(nor.30111, nor.30939, id=30572, pos=[(0,1590,22), (0,1595,34), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30203: bits[2] = concat(nor.30190, and.30191, id=30203, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30745: bits[2] = concat(nor.30943, literal.29944, id=30745, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30720: bits[2] = concat(literal.29956, nor.30107, id=30720, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30563: bits[2] = concat(nor.30087, nor.30943, id=30563, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30062: bits[1] = nor(bit_slice.30041, bit_slice.30023, id=30062, pos=[(0,1590,22), (0,1595,34), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30170: bits[1] = nor(or.30461, nor.30084, id=30170, pos=[(0,1595,22), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30443: bits[2] = concat(literal.29956, nor.30083, id=30443, pos=[(0,1595,22), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30959: bits[2] = concat(literal.29944, nor.30061, id=30959, pos=[(0,1590,22), (0,1595,34), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30166: bits[2] = concat(nor.30145, and.30146, id=30166, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30715: bits[2] = concat(literal.29956, nor.30058, id=30715, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30554: bits[2] = concat(nor.30037, nor.30946, id=30554, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30199: bits[1] = not(and.30117, id=30199, pos=[(0,1600,22), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) and.30143: bits[1] = and(nor.30032, nor.30053, id=30143, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30138: bits[2] = concat(nor.30116, and.30117, id=30138, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30744: bits[2] = concat(nor.30950, literal.29944, id=30744, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30710: bits[2] = concat(literal.29956, nor.30028, id=30710, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30545: bits[2] = concat(literal.29944, nor.30950, id=30545, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30142: bits[1] = nor(or.30464, nor.30053, id=30142, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30440: bits[2] = concat(literal.29956, nor.30052, id=30440, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30960: bits[2] = concat(literal.29944, nor.30031, id=30960, pos=[(0,1590,22), (0,1595,34), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30233: bits[1] = nor(or.30458, nor.30181, id=30233, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) and.30234: bits[1] = and(nor.30157, nor.30181, id=30234, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30180: bits[1] = nor(bit_slice.30159, not.30160, id=30180, pos=[(0,1590,22), (0,1595,64), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30935: bits[1] = nor(bit_slice.30135, not.30934, id=30935, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30241: bits[1] = not(and.30191, id=30241, pos=[(0,1600,22), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) and.30208: bits[1] = and(nor.30111, nor.30133, id=30208, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) priority_sel.30469: bits[2] = priority_sel(nor.30207, cases=[concat.30448], default=concat.30572, id=30469, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) priority_sel.30603: bits[2] = priority_sel(concat.30203, cases=[concat.30745, concat.30720], default=concat.30563, id=30603, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30215: bits[1] = not(and.30146, id=30215, pos=[(0,1600,22), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) and.30171: bits[1] = and(nor.30062, nor.30084, id=30171, pos=[(0,1595,22), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) priority_sel.30424: bits[2] = priority_sel(nor.30170, cases=[concat.30443], default=concat.30959, id=30424, pos=[(0,1595,22), (0,1600,64), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) priority_sel.30585: bits[2] = priority_sel(concat.30166, cases=[literal.30381, concat.30715], default=concat.30554, id=30585, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30212: bits[1] = nor(not.30199, and.30143, id=30212, pos=[(0,1600,22), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) and.30213: bits[1] = and(and.30117, and.30143, id=30213, pos=[(0,1600,22), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) priority_sel.30576: bits[2] = priority_sel(concat.30138, cases=[concat.30744, concat.30710], default=concat.30545, id=30576, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) priority_sel.30421: bits[2] = priority_sel(nor.30142, cases=[concat.30440], default=concat.30960, id=30421, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30243: bits[2] = concat(nor.30233, and.30234, id=30243, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30732: bits[2] = concat(literal.29956, nor.30180, id=30732, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30599: bits[2] = concat(nor.30157, nor.30935, id=30599, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30249: bits[1] = nor(not.30241, and.30208, id=30249, pos=[(0,1600,22), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30699: bits[3] = concat(literal.29956, priority_sel.30469, id=30699, pos=[(0,1540,24), (0,1600,22), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30608: bits[3] = concat(and.30191, priority_sel.30603, id=30608, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30228: bits[1] = nor(not.30215, and.30171, id=30228, pos=[(0,1600,22), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30451: bits[3] = concat(literal.29956, priority_sel.30424, id=30451, pos=[(0,1600,22), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30590: bits[3] = concat(and.30146, priority_sel.30585, id=30590, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30224: bits[2] = concat(nor.30212, and.30213, id=30224, pos=[(0,1600,22), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30746: bits[3] = concat(priority_sel.30576, literal.29944, id=30746, pos=[(0,1600,22), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30727: bits[3] = concat(literal.29956, priority_sel.30421, id=30727, pos=[(0,1600,22), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30581: bits[3] = concat(literal.29944, priority_sel.30576, id=30581, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) priority_sel.30621: bits[2] = priority_sel(concat.30243, cases=[literal.30381, concat.30732], default=concat.30599, id=30621, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) priority_sel.30516: bits[3] = priority_sel(nor.30249, cases=[concat.30699], default=concat.30608, id=30516, pos=[(0,1600,22), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) not.30253: bits[1] = not(and.30213, id=30253, pos=[(0,1605,22), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) and.30229: bits[1] = and(and.30146, and.30171, id=30229, pos=[(0,1600,22), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) priority_sel.30471: bits[3] = priority_sel(nor.30228, cases=[concat.30451], default=concat.30590, id=30471, pos=[(0,1600,22), (0,1605,64), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) priority_sel.30612: bits[3] = priority_sel(concat.30224, cases=[concat.30746, concat.30727], default=concat.30581, id=30612, pos=[(0,1600,22), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) and.30250: bits[1] = and(and.30191, and.30208, id=30250, pos=[(0,1600,22), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30740: bits[4] = concat(literal.29956, and.30234, priority_sel.30621, id=30740, pos=[(0,1605,22), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30742: bits[4] = concat(literal.29944, priority_sel.30516, id=30742, pos=[(0,1600,22), (0,1605,34), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) nor.30261: bits[1] = nor(not.30253, and.30229, id=30261, pos=[(0,1605,22), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30702: bits[4] = concat(literal.29956, priority_sel.30471, id=30702, pos=[(0,1540,24), (0,1605,22), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30617: bits[4] = concat(and.30213, priority_sel.30612, id=30617, pos=[(0,1600,22), (0,1605,34), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) priority_sel.30273: bits[4] = priority_sel(and.30250, cases=[concat.30740], default=concat.30742, id=30273, pos=[(0,1605,22), (0,1610,66), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) priority_sel.30522: bits[4] = priority_sel(nor.30261, cases=[concat.30702], default=concat.30617, id=30522, pos=[(0,1605,22), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) and.30262: bits[1] = and(and.30213, and.30229, id=30262, pos=[(0,1605,22), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30275: bits[5] = concat(literal.29956, priority_sel.30273, id=30275, pos=[(0,1610,22), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30743: bits[5] = concat(literal.29944, priority_sel.30522, id=30743, pos=[(0,1605,22), (0,1610,35), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) concat.30276: bits[29] = concat(literal.29944, xbs_fraction, id=30276, pos=[(3,363,48)]) leading_zeroes: bits[5] = priority_sel(and.30262, cases=[concat.30275], default=concat.30743, id=30277, pos=[(0,1610,22), (0,1643,30), (0,1707,13), (2,3137,34), (3,363,48)]) cancel_fraction: bits[29] = shll(concat.30276, leading_zeroes, id=30278, pos=[(2,3140,26), (3,363,48)]) bit_slice.30279: bits[26] = bit_slice(xbs_fraction, start=2, width=26, id=30279, pos=[(2,3049,20), (2,3133,36), (3,363,48)]) or.30280: bits[1] = or(bit_slice.30159, bit_slice.30137, id=30280, pos=[(2,3049,40), (2,3133,36), (3,363,48)]) cancel_fraction__1: bits[27] = bit_slice(cancel_fraction, start=1, width=27, id=30281, pos=[(3,363,48)]) carry_fraction__1: bits[27] = concat(bit_slice.30279, or.30280, id=30282, pos=[(2,3049,20), (2,3133,36), (3,363,48)]) shifted_fraction: bits[27] = sel(carry_bit, cases=[cancel_fraction__1, carry_fraction__1], id=30283, pos=[(2,3142,27), (3,363,48)]) normal_chunk: bits[3] = bit_slice(shifted_fraction, start=0, width=3, id=30284, pos=[(2,3154,39), (3,363,48)]) fraction_shift__3: bits[3] = literal(value=4, id=30260, pos=[(2,3170,8), (3,363,48)]) half_way_chunk: bits[2] = bit_slice(shifted_fraction, start=2, width=2, id=30285, pos=[(2,3155,41), (3,363,48)]) literal.30286: bits[2] = literal(value=3, id=30286, pos=[(2,3156,68), (3,363,48)]) ugt.30287: bits[1] = ugt(normal_chunk, fraction_shift__3, id=30287, pos=[(2,3156,23), (3,363,48)]) eq.30288: bits[1] = eq(half_way_chunk, literal.30286, id=30288, pos=[(2,3156,50), (3,363,48)]) bit_slice.30820: bits[24] = bit_slice(shifted_fraction, start=3, width=24, id=30820) do_round_up: bits[1] = or(ugt.30287, eq.30288, id=30291, pos=[(2,3156,23), (3,363,48)]) concat.30821: bits[25] = concat(literal.29944, bit_slice.30820, id=30821) concat.30961: bits[25] = concat(literal.29960, do_round_up, id=30961) add.30761: bits[25] = add(concat.30821, concat.30961, id=30761) literal.30294: bits[5] = literal(value=0, id=30294, pos=[(3,363,48)]) rounding_carry: bits[1] = bit_slice(add.30761, start=24, width=1, id=30812, pos=[(2,3164,41), (3,363,48)]) literal.30908: bits[26] = literal(value=0, id=30908, pos=[(2,3117,39), (3,363,48)]) bit_slice.30957: bits[1] = bit_slice(shrl.29985, start=1, width=1, id=30957, pos=[(2,3117,27), (3,363,48)]) bit_slice.30958: bits[1] = bit_slice(shrl.29985, start=2, width=1, id=30958, pos=[(2,3117,27), (3,363,48)]) concat.30296: bits[9] = concat(literal.29944, x_bexp, id=30296, pos=[(3,363,48)]) literal.30297: bits[9] = literal(value=1, id=30297, pos=[(2,3176,24), (3,363,48)]) concat.30840: bits[6] = concat(literal.30294, rounding_carry, id=30840, pos=[(3,363,48)]) concat.30299: bits[6] = concat(literal.29944, leading_zeroes, id=30299, pos=[(3,363,48)]) eq.30876: bits[1] = eq(add.30749, literal.30908, id=30876, pos=[(2,3117,27), (3,363,48)]) nor.30931: bits[1] = nor(bit_slice.30957, bit_slice.30958, id=30931, pos=[(2,3117,27), (3,363,48)]) nor.30932: bits[1] = nor(bit_slice.29990, sticky, id=30932, pos=[(2,3117,27), (3,363,48)]) add.30300: bits[9] = add(concat.30296, literal.30297, id=30300, pos=[(2,3175,26), (3,363,48)]) sub.30301: bits[6] = sub(concat.30840, concat.30299, id=30301, pos=[(2,3175,26), (3,363,48)]) fraction_is_zero: bits[1] = and(eq.30876, nor.30931, nor.30932, id=30930, pos=[(2,3117,27), (3,363,48)]) wide_exponent_associative_element: bits[10] = concat(literal.29944, add.30300, id=30303, pos=[(2,3175,26), (3,363,48)]) wide_exponent_associative_element__1: bits[10] = sign_ext(sub.30301, new_bit_count=10, id=30304, pos=[(2,3175,26), (3,363,48)]) not.30528: bits[1] = not(fraction_is_zero, id=30528, pos=[(2,3177,24), (3,363,48)]) wide_exponent: bits[10] = add(wide_exponent_associative_element, wide_exponent_associative_element__1, id=30306, pos=[(2,3175,26), (3,363,48)]) sign_ext.30529: bits[10] = sign_ext(not.30528, new_bit_count=10, id=30529, pos=[(2,3177,24), (3,363,48)]) wide_exponent__1: bits[10] = and(wide_exponent, sign_ext.30529, id=30530, pos=[(2,3177,24), (3,363,48)]) bit_slice.30315: bits[1] = bit_slice(wide_exponent__1, start=9, width=1, id=30315, pos=[(2,3180,27), (3,363,48)]) not.30531: bits[1] = not(bit_slice.30315, id=30531, pos=[(2,3180,24), (3,363,48)]) bit_slice.30316: bits[9] = bit_slice(wide_exponent__1, start=0, width=9, id=30316, pos=[(3,363,48)]) sign_ext.30532: bits[9] = sign_ext(not.30531, new_bit_count=9, id=30532, pos=[(2,3180,24), (3,363,48)]) MAX_EXPONENT: bits[8] = literal(value=255, id=30308, pos=[(2,3193,39), (3,363,48)]) literal.30309: bits[23] = literal(value=0, id=30309, pos=[(2,3190,44), (3,363,48)]) wide_exponent__2: bits[9] = and(bit_slice.30316, sign_ext.30532, id=30533, pos=[(2,3180,24), (3,363,48)]) eq.30311: bits[1] = eq(x_bexp, MAX_EXPONENT, id=30311, pos=[(2,71,6), (2,3213,30), (3,363,48)]) eq.30312: bits[1] = eq(x_fraction, literal.30309, id=30312, pos=[(2,96,44), (2,3201,31), (3,363,48)]) eq.30313: bits[1] = eq(y_bexp, MAX_EXPONENT, id=30313, pos=[(2,71,6), (2,3213,64), (3,363,48)]) eq.30314: bits[1] = eq(y_fraction, literal.30309, id=30314, pos=[(2,96,44), (2,3201,65), (3,363,48)]) bit_slice.30330: bits[8] = bit_slice(wide_exponent__2, start=1, width=8, id=30330, pos=[(2,3190,11), (3,363,48)]) not.30318: bits[1] = not(eq.30311, id=30318, pos=[(2,3205,29), (3,363,48)]) not.30319: bits[1] = not(eq.30312, id=30319, pos=[(2,3205,29), (3,363,48)]) x_sign: bits[1] = sel(overflow_detected, cases=[tuple_index.29988, tuple_index.29987], id=30374, pos=[(2,3088,17), (3,363,48)]) not.30321: bits[1] = not(eq.30313, id=30321, pos=[(2,3206,29), (3,363,48)]) not.30322: bits[1] = not(eq.30314, id=30322, pos=[(2,3206,29), (3,363,48)]) y_sign: bits[1] = sel(overflow_detected, cases=[tuple_index.29987, tuple_index.29988], id=30375, pos=[(2,3088,17), (3,363,48)]) and.30337: bits[1] = and(eq.30311, eq.30312, id=30337, pos=[(2,96,6), (2,3201,31), (3,363,48)]) and.30338: bits[1] = and(eq.30313, eq.30314, id=30338, pos=[(2,96,6), (2,3201,65), (3,363,48)]) bit_slice.30339: bits[8] = bit_slice(wide_exponent__2, start=0, width=8, id=30339, pos=[(3,363,48)]) or_reduce.30340: bits[1] = or_reduce(bit_slice.30330, id=30340, pos=[(2,3190,11), (3,363,48)]) bit_slice.30341: bits[1] = bit_slice(wide_exponent__2, start=0, width=1, id=30341, pos=[(2,3190,11), (3,363,48)]) nor.30325: bits[1] = nor(not.30318, not.30319, x_sign, id=30325, pos=[(2,3205,29), (3,363,48)]) nor.30326: bits[1] = nor(not.30321, not.30322, y_sign, id=30326, pos=[(2,3206,29), (3,363,48)]) and.30327: bits[1] = and(eq.30311, eq.30312, x_sign, id=30327, pos=[(2,3211,29), (3,363,48)]) and.30328: bits[1] = and(eq.30313, eq.30314, y_sign, id=30328, pos=[(2,3212,29), (3,363,48)]) fraction_shift__2: bits[3] = literal(value=3, id=30331, pos=[(2,3170,8), (3,363,48)]) is_operand_inf: bits[1] = or(and.30337, and.30338, id=30349, pos=[(2,3201,31), (3,363,48)]) bit_slice.30350: bits[1] = bit_slice(wide_exponent__2, start=8, width=1, id=30350, pos=[(2,3196,11), (3,363,48)]) and_reduce.30351: bits[1] = and_reduce(bit_slice.30339, id=30351, pos=[(2,3196,11), (3,363,48)]) nor.30352: bits[1] = nor(or_reduce.30340, bit_slice.30341, id=30352, pos=[(2,3190,11), (3,363,48)]) has_pos_inf: bits[1] = or(nor.30325, nor.30326, id=30334, pos=[(2,3205,29), (3,363,48)]) has_neg_inf: bits[1] = or(and.30327, and.30328, id=30335, pos=[(2,3211,29), (3,363,48)]) rounded_fraction: bits[28] = concat(add.30761, normal_chunk, id=30843) fraction_shift__1: bits[3] = sel(rounding_carry, cases=[fraction_shift__2, fraction_shift__3], id=30342, pos=[(2,3170,8), (3,363,48)]) or.30357: bits[1] = or(is_operand_inf, bit_slice.30350, and_reduce.30351, nor.30352, id=30357, pos=[(2,3203,26), (3,363,48)]) nor.30384: bits[1] = nor(not.30318, eq.30312, id=30384, pos=[(2,71,6), (2,3213,30), (3,363,48)]) nor.30386: bits[1] = nor(not.30321, eq.30314, id=30386, pos=[(2,71,6), (2,3213,64), (3,363,48)]) and.30345: bits[1] = and(has_pos_inf, has_neg_inf, id=30345, pos=[(2,3214,25), (3,363,48)]) concat.30841: bits[2] = concat(bit_slice.30810, fraction_is_zero, id=30841, pos=[(3,363,48)]) and.30347: bits[1] = and(tuple_index.29987, tuple_index.29988, id=30347, pos=[(2,3119,22), (3,363,48)]) not.30348: bits[1] = not(y_sign, id=30348, pos=[(2,3120,25), (3,363,48)]) shrl.30353: bits[28] = shrl(rounded_fraction, fraction_shift__1, id=30353, pos=[(2,3171,27), (3,363,48)]) not.30534: bits[1] = not(or.30357, id=30534, pos=[(2,3203,26), (3,363,48)]) is_result_nan: bits[1] = or(nor.30384, nor.30386, and.30345, id=30354, pos=[(2,3213,30), (3,363,48)]) result_sign: bits[1] = priority_sel(concat.30841, cases=[and.30347, not.30348], default=y_sign, id=30355, pos=[(3,363,48)]) not.30356: bits[1] = not(has_pos_inf, id=30356, pos=[(2,3207,42), (3,363,48)]) result_fraction: bits[23] = bit_slice(shrl.30353, start=0, width=23, id=30358, pos=[(3,363,48)]) sign_ext.30535: bits[23] = sign_ext(not.30534, new_bit_count=23, id=30535, pos=[(2,3203,26), (3,363,48)]) not.30359: bits[1] = not(is_result_nan, id=30359, pos=[(2,3218,22), (3,363,48)]) result_sign__1: bits[1] = sel(is_operand_inf, cases=[result_sign, not.30356], id=30360, pos=[(2,3207,22), (3,363,48)]) or.30361: bits[1] = or(is_result_nan, is_operand_inf, bit_slice.30350, and_reduce.30351, id=30361, pos=[(2,3216,26), (3,363,48)]) result_fraction__3: bits[23] = and(result_fraction, sign_ext.30535, id=30536, pos=[(2,3203,26), (3,363,48)]) FRACTION_HIGH_BIT: bits[23] = literal(value=4194304, id=30363, pos=[(2,3215,30), (3,363,48)]) result_sign__2: bits[1] = and(not.30359, result_sign__1, id=30364, pos=[(2,3218,22), (3,363,48)]) result_exponent__2: bits[8] = sel(or.30361, cases=[bit_slice.30339, MAX_EXPONENT], id=30365, pos=[(2,3216,26), (3,363,48)]) result_fraction__4: bits[23] = sel(is_result_nan, cases=[result_fraction__3, FRACTION_HIGH_BIT], id=30366, pos=[(2,3217,26), (3,363,48)]) ret tuple.30367: (bits[1], bits[8], bits[23]) = tuple(result_sign__2, result_exponent__2, result_fraction__4, id=30367, pos=[(2,3221,33), (3,363,48)]) }