combinational_critical_path { total_delay_ps: 2990 nodes { total_delay_ps: 2990 op: OP_TUPLE id: 29831 ir: "tuple.29831: (bits[1], bits[8], bits[7]) = tuple(result_sign__2: bits[1], result_exponent__2: bits[8], result_fraction__4: bits[7], id=29831, pos=[(2,3221,33), (3,162,51)])" } nodes { total_delay_ps: 2990 node_delay_ps: 112 op: OP_SEL id: 29830 ir: "result_fraction__4: bits[7] = sel(is_result_nan, cases=[result_fraction__3, FRACTION_HIGH_BIT], id=29830, pos=[(2,3217,26), (3,162,51)])" } nodes { total_delay_ps: 2878 node_delay_ps: 23 op: OP_AND id: 29957 ir: "result_fraction__3: bits[7] = and(result_fraction: bits[7], sign_ext.29956: bits[7], id=29957, pos=[(2,3203,26), (3,162,51)])" } nodes { total_delay_ps: 2855 node_delay_ps: 17 op: OP_SIGN_EXT id: 29956 ir: "sign_ext.29956: bits[7] = sign_ext(not.29955: bits[1], new_bit_count=7, id=29956, pos=[(2,3203,26), (3,162,51)])" } nodes { total_delay_ps: 2838 op: OP_NOT id: 29955 ir: "not.29955: bits[1] = not(or.29821: bits[1], id=29955, pos=[(2,3203,26), (3,162,51)])" } nodes { total_delay_ps: 2838 node_delay_ps: 33 op: OP_OR id: 29821 ir: "or.29821: bits[1] = or(is_operand_inf: bits[1], bit_slice.29814: bits[1], and_reduce.29815: bits[1], nor.29816: bits[1], id=29821, pos=[(2,3203,26), (3,162,51)])" } nodes { total_delay_ps: 2805 node_delay_ps: 27 op: OP_NOR id: 29816 ir: "nor.29816: bits[1] = nor(or_reduce.29804: bits[1], bit_slice.29805: bits[1], id=29816, pos=[(2,3190,11), (3,162,51)])" } nodes { total_delay_ps: 2778 node_delay_ps: 44 op: OP_OR_REDUCE id: 29804 ir: "or_reduce.29804: bits[1] = or_reduce(bit_slice.29794: bits[8], id=29804, pos=[(2,3190,11), (3,162,51)])" } nodes { total_delay_ps: 2734 op: OP_BIT_SLICE id: 29794 ir: "bit_slice.29794: bits[8] = bit_slice(wide_exponent__2: bits[9], start=1, width=8, id=29794, pos=[(2,3190,11), (3,162,51)])" } nodes { total_delay_ps: 2734 node_delay_ps: 23 op: OP_AND id: 29954 ir: "wide_exponent__2: bits[9] = and(bit_slice.29780: bits[9], sign_ext.29953: bits[9], id=29954, pos=[(2,3180,24), (3,162,51)])" } nodes { total_delay_ps: 2711 node_delay_ps: 17 op: OP_SIGN_EXT id: 29953 ir: "sign_ext.29953: bits[9] = sign_ext(not.29952: bits[1], new_bit_count=9, id=29953, pos=[(2,3180,24), (3,162,51)])" } nodes { total_delay_ps: 2694 op: OP_NOT id: 29952 ir: "not.29952: bits[1] = not(bit_slice.29779: bits[1], id=29952, pos=[(2,3180,24), (3,162,51)])" } nodes { total_delay_ps: 2694 op: OP_BIT_SLICE id: 29779 ir: "bit_slice.29779: bits[1] = bit_slice(wide_exponent__1: bits[10], start=9, width=1, id=29779, pos=[(2,3180,27), (3,162,51)])" } nodes { total_delay_ps: 2694 node_delay_ps: 23 op: OP_AND id: 29951 ir: "wide_exponent__1: bits[10] = and(wide_exponent: bits[10], sign_ext.29950: bits[10], id=29951, pos=[(2,3177,24), (3,162,51)])" } nodes { total_delay_ps: 2671 node_delay_ps: 235 op: OP_ADD id: 29771 ir: "wide_exponent: bits[10] = add(wide_exponent_associative_element: bits[10], wide_exponent_associative_element__1: bits[10], id=29771, pos=[(2,3175,26), (3,162,51)])" } nodes { total_delay_ps: 2436 node_delay_ps: 17 op: OP_SIGN_EXT id: 29769 ir: "wide_exponent_associative_element__1: bits[10] = sign_ext(sub.29766: bits[5], new_bit_count=10, id=29769, pos=[(2,3175,26), (3,162,51)])" } nodes { total_delay_ps: 2419 node_delay_ps: 164 op: OP_SUB id: 29766 ir: "sub.29766: bits[5] = sub(concat.30082: bits[5], concat.29764: bits[5], id=29766, pos=[(2,3175,26), (3,162,51)])" } nodes { total_delay_ps: 2255 op: OP_CONCAT id: 30082 ir: "concat.30082: bits[5] = concat(literal.29759: bits[4], rounding_carry: bits[1], id=30082, pos=[(3,162,51)])" } nodes { total_delay_ps: 2255 op: OP_BIT_SLICE id: 30062 ir: "rounding_carry: bits[1] = bit_slice(add.30039: bits[9], start=8, width=1, id=30062, pos=[(2,3164,41), (3,162,51)])" } nodes { total_delay_ps: 2255 node_delay_ps: 224 op: OP_ADD id: 30039 ir: "add.30039: bits[9] = add(concat.30071: bits[9], concat.30150: bits[9], id=30039)" } nodes { total_delay_ps: 2031 op: OP_CONCAT id: 30150 ir: "concat.30150: bits[9] = concat(literal.29581: bits[8], do_round_up: bits[1], id=30150)" } nodes { total_delay_ps: 2031 node_delay_ps: 19 op: OP_OR id: 29756 ir: "do_round_up: bits[1] = or(ugt.29752: bits[1], eq.29753: bits[1], id=29756, pos=[(2,3156,23), (3,162,51)])" } nodes { total_delay_ps: 2012 node_delay_ps: 75 op: OP_UGT id: 29752 ir: "ugt.29752: bits[1] = ugt(normal_chunk: bits[3], fraction_shift__3: bits[3], id=29752, pos=[(2,3156,23), (3,162,51)])" } nodes { total_delay_ps: 1937 op: OP_BIT_SLICE id: 29749 ir: "normal_chunk: bits[3] = bit_slice(shifted_fraction: bits[11], start=0, width=3, id=29749, pos=[(2,3154,39), (3,162,51)])" } nodes { total_delay_ps: 1937 node_delay_ps: 121 op: OP_SEL id: 29748 ir: "shifted_fraction: bits[11] = sel(carry_bit, cases=[cancel_fraction__1, carry_fraction__1], id=29748, pos=[(2,3142,27), (3,162,51)])" } nodes { total_delay_ps: 1816 op: OP_BIT_SLICE id: 29746 ir: "cancel_fraction__1: bits[11] = bit_slice(cancel_fraction: bits[13], start=1, width=11, id=29746, pos=[(3,162,51)])" } nodes { total_delay_ps: 1816 node_delay_ps: 193 op: OP_SHLL id: 29743 ir: "cancel_fraction: bits[13] = shll(concat.29741: bits[13], leading_zeroes: bits[4], id=29743, pos=[(2,3140,26), (3,162,51)])" } nodes { total_delay_ps: 1623 node_delay_ps: 100 op: OP_PRIORITY_SEL id: 29742 ir: "leading_zeroes: bits[4] = priority_sel(and.29728, cases=[concat.30025], default=concat.30028, id=29742, pos=[(0,1605,22), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } nodes { total_delay_ps: 1523 op: OP_CONCAT id: 30028 ir: "concat.30028: bits[4] = concat(literal.29570: bits[1], priority_sel.29943: bits[3], id=30028, pos=[(0,1600,22), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } nodes { total_delay_ps: 1523 node_delay_ps: 94 op: OP_PRIORITY_SEL id: 29943 ir: "priority_sel.29943: bits[3] = priority_sel(nor.29727, cases=[concat.30020], default=concat.30027, id=29943, pos=[(0,1600,22), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } nodes { total_delay_ps: 1429 op: OP_CONCAT id: 30027 ir: "concat.30027: bits[3] = concat(literal.29570: bits[1], priority_sel.29937: bits[2], id=30027, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } nodes { total_delay_ps: 1429 node_delay_ps: 85 op: OP_PRIORITY_SEL id: 29937 ir: "priority_sel.29937: bits[2] = priority_sel(nor.29691, cases=[concat.30017], default=concat.30149, id=29937, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } nodes { total_delay_ps: 1344 node_delay_ps: 27 op: OP_NOR id: 29691 ir: "nor.29691: bits[1] = nor(or.29888: bits[1], nor.29649: bits[1], id=29691, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } nodes { total_delay_ps: 1317 node_delay_ps: 27 op: OP_NOR id: 29649 ir: "nor.29649: bits[1] = nor(bit_slice.29639: bits[1], bit_slice.29634: bits[1], id=29649, pos=[(0,1590,22), (0,1595,64), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } nodes { total_delay_ps: 1290 op: OP_BIT_SLICE id: 29634 ir: "bit_slice.29634: bits[1] = bit_slice(xbs_fraction: bits[12], start=8, width=1, id=29634, pos=[(0,1590,70), (0,1595,64), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } nodes { total_delay_ps: 1290 node_delay_ps: 123 op: OP_SEL id: 29630 ir: "xbs_fraction: bits[12] = sel(bit_slice.30060, cases=[concat.30086, neg.29629], id=29630, pos=[(2,3126,9), (3,162,51)])" } nodes { total_delay_ps: 1167 node_delay_ps: 172 op: OP_NEG id: 29629 ir: "neg.29629: bits[12] = neg(concat.30086: bits[12], id=29629, pos=[(2,3126,46), (3,162,51)])" } nodes { total_delay_ps: 995 op: OP_CONCAT id: 30086 ir: "concat.30086: bits[12] = concat(bit_slice.30058: bits[9], bit_slice.30081: bits[2], or.29621: bits[1], id=30086, pos=[(2,3126,9), (3,162,51)])" } nodes { total_delay_ps: 995 op: OP_BIT_SLICE id: 30058 ir: "bit_slice.30058: bits[9] = bit_slice(add.30031: bits[10], start=0, width=9, id=30058, pos=[(2,3126,9), (3,162,51)])" } nodes { total_delay_ps: 995 node_delay_ps: 235 op: OP_ADD id: 30031 ir: "add.30031: bits[10] = add(sign_ext.30065: bits[10], concat.30067: bits[10], id=30031, pos=[(2,3116,20), (3,162,51)])" } nodes { total_delay_ps: 760 node_delay_ps: 17 op: OP_SIGN_EXT id: 30065 ir: "sign_ext.30065: bits[10] = sign_ext(xddend_x__1_squeezed: bits[9], new_bit_count=10, id=30065, pos=[(2,3116,20), (3,162,51)])" } nodes { total_delay_ps: 743 node_delay_ps: 117 op: OP_SEL id: 29927 ir: "xddend_x__1_squeezed: bits[9] = sel(xor.29617, cases=[wide_x_squeezed, neg.29614], id=29927, pos=[(2,3106,19), (3,162,51)])" } nodes { total_delay_ps: 626 node_delay_ps: 151 op: OP_NEG id: 29614 ir: "neg.29614: bits[9] = neg(wide_x_squeezed: bits[9], id=29614, pos=[(2,3106,41), (3,162,51)])" } nodes { total_delay_ps: 475 op: OP_CONCAT id: 30014 ir: "wide_x_squeezed: bits[9] = concat(literal.29570: bits[1], fraction_x__1: bits[8], id=30014, pos=[(2,3099,17), (3,162,51)])" } nodes { total_delay_ps: 475 node_delay_ps: 23 op: OP_AND id: 29921 ir: "fraction_x__1: bits[8] = and(fraction_x: bits[8], sign_ext.29920: bits[8], id=29921, pos=[(2,3095,21), (3,162,51)])" } nodes { total_delay_ps: 452 node_delay_ps: 17 op: OP_SIGN_EXT id: 29920 ir: "sign_ext.29920: bits[8] = sign_ext(ne.30043: bits[1], new_bit_count=8, id=29920, pos=[(2,3095,21), (3,162,51)])" } nodes { total_delay_ps: 435 node_delay_ps: 96 op: OP_NE id: 30043 ir: "ne.30043: bits[1] = ne(x_bexp: bits[8], literal.29581: bits[8], id=30043, pos=[(2,3095,21), (3,162,51)])" } nodes { total_delay_ps: 339 node_delay_ps: 115 op: OP_SEL id: 29834 ir: "x_bexp: bits[8] = sel(overflow_detected, cases=[y_bexp__1, x_bexp__1], id=29834, pos=[(2,3088,17), (3,162,51)])" } nodes { total_delay_ps: 224 op: OP_BIT_SLICE id: 29576 ir: "overflow_detected: bits[1] = bit_slice(full_result: bits[9], start=8, width=1, id=29576, pos=[(0,1121,49), (1,91,63), (2,3005,44), (2,3087,57), (3,162,51)])" } nodes { total_delay_ps: 224 node_delay_ps: 224 op: OP_ADD id: 29575 ir: "full_result: bits[9] = add(x_bexp_extended__1: bits[9], y_bexpnot_extended: bits[9], id=29575, pos=[(0,1119,45), (1,91,63), (2,3005,44), (2,3087,57), (3,162,51)])" } nodes { op: OP_CONCAT id: 29574 ir: "y_bexpnot_extended: bits[9] = concat(literal.29570: bits[1], y_bexpnot: bits[8], id=29574, pos=[(1,91,63), (2,3005,44), (2,3087,57), (3,162,51)])" } nodes { op: OP_NOT id: 29572 ir: "y_bexpnot: bits[8] = not(y_bexp__1: bits[8], id=29572, pos=[(1,90,15), (2,3005,44), (2,3087,57), (3,162,51)])" } nodes { op: OP_TUPLE_INDEX id: 29569 ir: "y_bexp__1: bits[8] = tuple_index(y: (bits[1], bits[8], bits[7]), index=1, id=29569, pos=[(2,3087,67), (3,162,51)])" } nodes { op: OP_PARAM id: 844 ir: "y: (bits[1], bits[8], bits[7]) = param(name=y, id=844)" } } all_nodes { op: OP_PARAM id: 844 ir: "y: (bits[1], bits[8], bits[7]) = param(name=y, id=844)" } all_nodes { op: OP_PARAM id: 843 ir: "x: (bits[1], bits[8], bits[7]) = param(name=x, id=843)" } all_nodes { op: OP_TUPLE_INDEX id: 29569 ir: "y_bexp__1: bits[8] = tuple_index(y: (bits[1], bits[8], bits[7]), index=1, id=29569, pos=[(2,3087,67), (3,162,51)])" } all_nodes { op: OP_LITERAL id: 29570 ir: "literal.29570: bits[1] = literal(value=0, id=29570, pos=[(3,162,51)])" } all_nodes { op: OP_TUPLE_INDEX id: 29571 ir: "x_bexp__1: bits[8] = tuple_index(x: (bits[1], bits[8], bits[7]), index=1, id=29571, pos=[(2,3087,59), (3,162,51)])" } all_nodes { op: OP_NOT id: 29572 ir: "y_bexpnot: bits[8] = not(y_bexp__1: bits[8], id=29572, pos=[(1,90,15), (2,3005,44), (2,3087,57), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 29573 ir: "x_bexp_extended__1: bits[9] = concat(literal.29570: bits[1], x_bexp__1: bits[8], id=29573, pos=[(1,91,63), (2,3005,44), (2,3087,57), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 29574 ir: "y_bexpnot_extended: bits[9] = concat(literal.29570: bits[1], y_bexpnot: bits[8], id=29574, pos=[(1,91,63), (2,3005,44), (2,3087,57), (3,162,51)])" } all_nodes { node_delay_ps: 224 op: OP_ADD id: 29575 ir: "full_result: bits[9] = add(x_bexp_extended__1: bits[9], y_bexpnot_extended: bits[9], id=29575, pos=[(0,1119,45), (1,91,63), (2,3005,44), (2,3087,57), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29576 ir: "overflow_detected: bits[1] = bit_slice(full_result: bits[9], start=8, width=1, id=29576, pos=[(0,1121,49), (1,91,63), (2,3005,44), (2,3087,57), (3,162,51)])" } all_nodes { op: OP_TUPLE_INDEX id: 29578 ir: "tuple_index.29578: bits[7] = tuple_index(y: (bits[1], bits[8], bits[7]), index=2, id=29578, pos=[(2,3088,17), (3,162,51)])" } all_nodes { op: OP_TUPLE_INDEX id: 29579 ir: "tuple_index.29579: bits[7] = tuple_index(x: (bits[1], bits[8], bits[7]), index=2, id=29579, pos=[(2,3088,17), (3,162,51)])" } all_nodes { node_delay_ps: 115 op: OP_SEL id: 29834 ir: "x_bexp: bits[8] = sel(overflow_detected, cases=[y_bexp__1, x_bexp__1], id=29834, pos=[(2,3088,17), (3,162,51)])" } all_nodes { op: OP_LITERAL id: 29581 ir: "literal.29581: bits[8] = literal(value=0, id=29581, pos=[(2,3095,34), (3,162,51)])" } all_nodes { node_delay_ps: 115 op: OP_SEL id: 29832 ir: "y_bexp: bits[8] = sel(overflow_detected, cases=[x_bexp__1, y_bexp__1], id=29832, pos=[(2,3088,17), (3,162,51)])" } all_nodes { op: OP_LITERAL id: 29582 ir: "literal.29582: bits[1] = literal(value=1, id=29582, pos=[(2,3091,22), (3,162,51)])" } all_nodes { node_delay_ps: 112 op: OP_SEL id: 29835 ir: "x_fraction: bits[7] = sel(overflow_detected, cases=[tuple_index.29578, tuple_index.29579], id=29835, pos=[(2,3088,17), (3,162,51)])" } all_nodes { node_delay_ps: 96 op: OP_NE id: 30043 ir: "ne.30043: bits[1] = ne(x_bexp: bits[8], literal.29581: bits[8], id=30043, pos=[(2,3095,21), (3,162,51)])" } all_nodes { node_delay_ps: 112 op: OP_SEL id: 29833 ir: "y_fraction: bits[7] = sel(overflow_detected, cases=[tuple_index.29579, tuple_index.29578], id=29833, pos=[(2,3088,17), (3,162,51)])" } all_nodes { node_delay_ps: 96 op: OP_NE id: 30042 ir: "ne.30042: bits[1] = ne(y_bexp: bits[8], literal.29581: bits[8], id=30042, pos=[(2,3096,21), (3,162,51)])" } all_nodes { op: OP_NOT id: 29577 ir: "nc: bits[1] = not(overflow_detected: bits[1], id=29577, pos=[(1,92,19), (2,3005,44), (2,3087,57), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 29602 ir: "fraction_x: bits[8] = concat(literal.29582: bits[1], x_fraction: bits[7], id=29602, pos=[(2,3091,22), (3,162,51)])" } all_nodes { node_delay_ps: 17 op: OP_SIGN_EXT id: 29920 ir: "sign_ext.29920: bits[8] = sign_ext(ne.30043: bits[1], new_bit_count=8, id=29920, pos=[(2,3095,21), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 29585 ir: "fraction_y: bits[8] = concat(literal.29582: bits[1], y_fraction: bits[7], id=29585, pos=[(2,3092,22), (3,162,51)])" } all_nodes { node_delay_ps: 17 op: OP_SIGN_EXT id: 29923 ir: "sign_ext.29923: bits[8] = sign_ext(ne.30042: bits[1], new_bit_count=8, id=29923, pos=[(2,3096,21), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29589 ir: "narrowed_result: bits[8] = bit_slice(full_result: bits[9], start=0, width=8, id=29589, pos=[(1,91,63), (2,3005,44), (2,3087,57), (3,162,51)])" } all_nodes { node_delay_ps: 17 op: OP_SIGN_EXT id: 29590 ir: "x_bexpor_mask: bits[8] = sign_ext(nc: bits[1], new_bit_count=8, id=29590, pos=[(1,94,32), (2,3005,44), (2,3087,57), (3,162,51)])" } all_nodes { op: OP_LITERAL id: 29591 ir: "literal.29591: bits[7] = literal(value=0, id=29591, pos=[(2,3190,44), (3,162,51)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 29921 ir: "fraction_x__1: bits[8] = and(fraction_x: bits[8], sign_ext.29920: bits[8], id=29921, pos=[(2,3095,21), (3,162,51)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 29924 ir: "fraction_y__1: bits[8] = and(fraction_y: bits[8], sign_ext.29923: bits[8], id=29924, pos=[(2,3096,21), (3,162,51)])" } all_nodes { op: OP_LITERAL id: 29929 ir: "xddend_x__1_squeezed_const_lsb_bits: bits[3] = literal(value=0, id=29929, pos=[(2,3106,19), (3,162,51)])" } all_nodes { node_delay_ps: 49 op: OP_XOR id: 29593 ir: "result: bits[8] = xor(narrowed_result: bits[8], x_bexpor_mask: bits[8], id=29593, pos=[(1,95,18), (2,3005,44), (2,3087,57), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 29594 ir: "concat.29594: bits[8] = concat(literal.29591: bits[7], overflow_detected: bits[1], id=29594, pos=[(2,3006,68), (2,3087,57), (3,162,51)])" } all_nodes { op: OP_TUPLE_INDEX id: 29612 ir: "tuple_index.29612: bits[1] = tuple_index(x: (bits[1], bits[8], bits[7]), index=0, id=29612, pos=[(2,3088,17), (3,162,51)])" } all_nodes { op: OP_TUPLE_INDEX id: 29613 ir: "tuple_index.29613: bits[1] = tuple_index(y: (bits[1], bits[8], bits[7]), index=0, id=29613, pos=[(2,3088,17), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30014 ir: "wide_x_squeezed: bits[9] = concat(literal.29570: bits[1], fraction_x__1: bits[8], id=30014, pos=[(2,3099,17), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 29606 ir: "wide_y_shift_bits: bits[11] = concat(fraction_y__1: bits[8], xddend_x__1_squeezed_const_lsb_bits: bits[3], id=29606, pos=[(2,3112,31), (3,162,51)])" } all_nodes { node_delay_ps: 212 op: OP_ADD id: 29600 ir: "shift: bits[8] = add(result: bits[8], concat.29594: bits[8], id=29600, pos=[(1,54,7), (2,3006,68), (2,3087,57), (3,162,51)])" } all_nodes { op: OP_LITERAL id: 29599 ir: "literal.29599: bits[12] = literal(value=4095, id=29599, pos=[(0,1411,19), (0,1501,17), (0,1528,22), (2,3111,35), (3,162,51)])" } all_nodes { node_delay_ps: 49 op: OP_XOR id: 29617 ir: "xor.29617: bits[1] = xor(tuple_index.29612: bits[1], tuple_index.29613: bits[1], id=29617, pos=[(2,3106,23), (3,162,51)])" } all_nodes { node_delay_ps: 151 op: OP_NEG id: 29614 ir: "neg.29614: bits[9] = neg(wide_x_squeezed: bits[9], id=29614, pos=[(2,3106,41), (3,162,51)])" } all_nodes { node_delay_ps: 182 op: OP_SHRL id: 29610 ir: "shrl.29610: bits[11] = shrl(wide_y_shift_bits: bits[11], shift: bits[8], id=29610, pos=[(2,3112,31), (3,162,51)])" } all_nodes { op: OP_NOT id: 30088 ir: "not.30088: bits[7] = not(y_fraction: bits[7], id=30088, pos=[(0,1411,4), (0,1501,17), (0,1528,22), (2,3111,35), (3,162,51)])" } all_nodes { node_delay_ps: 188 op: OP_SHLL id: 29604 ir: "shll.29604: bits[12] = shll(literal.29599: bits[12], shift: bits[8], id=29604, pos=[(0,1411,19), (0,1501,17), (0,1528,22), (2,3111,35), (3,162,51)])" } all_nodes { node_delay_ps: 117 op: OP_SEL id: 29927 ir: "xddend_x__1_squeezed: bits[9] = sel(xor.29617, cases=[wide_x_squeezed, neg.29614], id=29927, pos=[(2,3106,19), (3,162,51)])" } all_nodes { op: OP_LITERAL id: 29845 ir: "literal.29845: bits[2] = literal(value=0, id=29845, pos=[(3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 30080 ir: "bit_slice.30080: bits[8] = bit_slice(shrl.29610: bits[11], start=3, width=8, id=30080, pos=[(2,3116,20), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30091 ir: "concat.30091: bits[8] = concat(literal.29570: bits[1], not.30088: bits[7], id=30091, pos=[(0,1411,4), (0,1501,17), (0,1528,22), (2,3111,35), (3,162,51)])" } all_nodes { op: OP_NOT id: 30046 ir: "not.30046: bits[8] = not(sign_ext.29923: bits[8], id=30046, pos=[(0,1411,4), (0,1501,17), (0,1528,22), (2,3111,35), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29608 ir: "bit_slice.29608: bits[8] = bit_slice(shll.29604: bits[12], start=3, width=8, id=29608, pos=[(0,1411,19), (0,1501,17), (0,1528,22), (2,3111,35), (3,162,51)])" } all_nodes { node_delay_ps: 17 op: OP_SIGN_EXT id: 30065 ir: "sign_ext.30065: bits[10] = sign_ext(xddend_x__1_squeezed: bits[9], new_bit_count=10, id=30065, pos=[(2,3116,20), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30067 ir: "concat.30067: bits[10] = concat(literal.29845: bits[2], bit_slice.30080: bits[8], id=30067, pos=[(2,3116,20), (3,162,51)])" } all_nodes { node_delay_ps: 38 op: OP_NOR id: 30047 ir: "nor.30047: bits[8] = nor(concat.30091: bits[8], not.30046: bits[8], bit_slice.29608: bits[8], id=30047, pos=[(0,1411,4), (0,1501,17), (0,1528,22), (2,3111,35), (3,162,51)])" } all_nodes { node_delay_ps: 235 op: OP_ADD id: 30031 ir: "add.30031: bits[10] = add(sign_ext.30065: bits[10], concat.30067: bits[10], id=30031, pos=[(2,3116,20), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29615 ir: "bit_slice.29615: bits[1] = bit_slice(shrl.29610: bits[11], start=0, width=1, id=29615, pos=[(2,3049,40), (2,3112,30), (3,162,51)])" } all_nodes { node_delay_ps: 96 op: OP_NE id: 29616 ir: "sticky: bits[1] = ne(nor.30047: bits[8], literal.29581: bits[8], id=29616, pos=[(0,1501,17), (0,1528,22), (2,3111,35), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 30058 ir: "bit_slice.30058: bits[9] = bit_slice(add.30031: bits[10], start=0, width=9, id=30058, pos=[(2,3126,9), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 30081 ir: "bit_slice.30081: bits[2] = bit_slice(shrl.29610: bits[11], start=1, width=2, id=30081, pos=[(2,3116,20), (3,162,51)])" } all_nodes { node_delay_ps: 19 op: OP_OR id: 29621 ir: "or.29621: bits[1] = or(bit_slice.29615: bits[1], sticky: bits[1], id=29621, pos=[(2,3049,40), (2,3112,30), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30086 ir: "concat.30086: bits[12] = concat(bit_slice.30058: bits[9], bit_slice.30081: bits[2], or.29621: bits[1], id=30086, pos=[(2,3126,9), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 30060 ir: "bit_slice.30060: bits[1] = bit_slice(add.30031: bits[10], start=9, width=1, id=30060, pos=[(2,3118,47), (3,162,51)])" } all_nodes { node_delay_ps: 172 op: OP_NEG id: 29629 ir: "neg.29629: bits[12] = neg(concat.30086: bits[12], id=29629, pos=[(2,3126,46), (3,162,51)])" } all_nodes { node_delay_ps: 123 op: OP_SEL id: 29630 ir: "xbs_fraction: bits[12] = sel(bit_slice.30060, cases=[concat.30086, neg.29629], id=29630, pos=[(2,3126,9), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29643 ir: "bit_slice.29643: bits[1] = bit_slice(xbs_fraction: bits[12], start=4, width=1, id=29643, pos=[(0,1590,70), (0,1595,64), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29635 ir: "bit_slice.29635: bits[1] = bit_slice(xbs_fraction: bits[12], start=6, width=1, id=29635, pos=[(0,1590,70), (0,1595,34), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29634 ir: "bit_slice.29634: bits[1] = bit_slice(xbs_fraction: bits[12], start=8, width=1, id=29634, pos=[(0,1590,70), (0,1595,64), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29631 ir: "bit_slice.29631: bits[1] = bit_slice(xbs_fraction: bits[12], start=10, width=1, id=29631, pos=[(0,1590,70), (0,1595,34), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29632 ir: "carry_bit: bits[1] = bit_slice(xbs_fraction: bits[12], start=11, width=1, id=29632, pos=[(2,3131,32), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29639 ir: "bit_slice.29639: bits[1] = bit_slice(xbs_fraction: bits[12], start=9, width=1, id=29639, pos=[(0,1590,40), (0,1595,64), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29641 ir: "bit_slice.29641: bits[1] = bit_slice(xbs_fraction: bits[12], start=7, width=1, id=29641, pos=[(0,1590,40), (0,1595,34), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29654 ir: "bit_slice.29654: bits[1] = bit_slice(xbs_fraction: bits[12], start=5, width=1, id=29654, pos=[(0,1590,40), (0,1595,64), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_NOT id: 29655 ir: "not.29655: bits[1] = not(bit_slice.29643: bits[1], id=29655, pos=[(0,1583,4), (0,1590,64), (0,1595,64), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_NOT id: 29642 ir: "not.29642: bits[1] = not(bit_slice.29635: bits[1], id=29642, pos=[(0,1583,4), (0,1590,64), (0,1595,34), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_NOT id: 29640 ir: "not.29640: bits[1] = not(bit_slice.29634: bits[1], id=29640, pos=[(0,1583,4), (0,1590,64), (0,1595,64), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_NOT id: 29633 ir: "not.29633: bits[1] = not(bit_slice.29631: bits[1], id=29633, pos=[(0,1583,4), (0,1590,64), (0,1595,34), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29667 ir: "bit_slice.29667: bits[1] = bit_slice(xbs_fraction: bits[12], start=3, width=1, id=29667, pos=[(0,1590,40), (0,1595,34), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29656 ir: "bit_slice.29656: bits[1] = bit_slice(xbs_fraction: bits[12], start=2, width=1, id=29656, pos=[(0,1590,70), (0,1595,34), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29679 ir: "bit_slice.29679: bits[1] = bit_slice(xbs_fraction: bits[12], start=1, width=1, id=29679, pos=[(0,1590,40), (0,1595,64), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29669 ir: "bit_slice.29669: bits[1] = bit_slice(xbs_fraction: bits[12], start=0, width=1, id=29669, pos=[(2,3133,65), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29637 ir: "nor.29637: bits[1] = nor(carry_bit: bits[1], bit_slice.29631: bits[1], id=29637, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29649 ir: "nor.29649: bits[1] = nor(bit_slice.29639: bits[1], bit_slice.29634: bits[1], id=29649, pos=[(0,1590,22), (0,1595,64), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 19 op: OP_OR id: 29887 ir: "or.29887: bits[1] = or(bit_slice.29641: bits[1], bit_slice.29635: bits[1], id=29887, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29665 ir: "nor.29665: bits[1] = nor(bit_slice.29654: bits[1], bit_slice.29643: bits[1], id=29665, pos=[(0,1590,22), (0,1595,64), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29664 ir: "nor.29664: bits[1] = nor(bit_slice.29654: bits[1], not.29655: bits[1], id=29664, pos=[(0,1590,22), (0,1595,64), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29651 ir: "nor.29651: bits[1] = nor(bit_slice.29641: bits[1], not.29642: bits[1], id=29651, pos=[(0,1590,22), (0,1595,34), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 19 op: OP_OR id: 29888 ir: "or.29888: bits[1] = or(carry_bit: bits[1], bit_slice.29631: bits[1], id=29888, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29648 ir: "nor.29648: bits[1] = nor(bit_slice.29639: bits[1], not.29640: bits[1], id=29648, pos=[(0,1590,22), (0,1595,64), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29636 ir: "nor.29636: bits[1] = nor(carry_bit: bits[1], not.29633: bits[1], id=29636, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 19 op: OP_OR id: 29886 ir: "or.29886: bits[1] = or(bit_slice.29667: bits[1], bit_slice.29656: bits[1], id=29886, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29689 ir: "nor.29689: bits[1] = nor(bit_slice.29679: bits[1], bit_slice.29669: bits[1], id=29689, pos=[(0,1590,22), (0,1595,64), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29677 ir: "nor.29677: bits[1] = nor(bit_slice.29667: bits[1], bit_slice.29656: bits[1], id=29677, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_NOT id: 29680 ir: "not.29680: bits[1] = not(bit_slice.29669: bits[1], id=29680, pos=[(0,1583,4), (0,1590,64), (0,1595,64), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_NOT id: 30138 ir: "not.30138: bits[1] = not(bit_slice.29656: bits[1], id=30138, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 29692 ir: "and.29692: bits[1] = and(nor.29637: bits[1], nor.29649: bits[1], id=29692, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29652 ir: "nor.29652: bits[1] = nor(bit_slice.29641: bits[1], bit_slice.29635: bits[1], id=29652, pos=[(0,1590,22), (0,1595,34), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29704 ir: "nor.29704: bits[1] = nor(or.29887: bits[1], nor.29665: bits[1], id=29704, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 29883 ir: "concat.29883: bits[2] = concat(literal.29582: bits[1], nor.29664: bits[1], id=29883, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30148 ir: "concat.30148: bits[2] = concat(literal.29570: bits[1], nor.29651: bits[1], id=30148, pos=[(0,1590,22), (0,1595,34), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29691 ir: "nor.29691: bits[1] = nor(or.29888: bits[1], nor.29649: bits[1], id=29691, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30017 ir: "concat.30017: bits[2] = concat(literal.29582: bits[1], nor.29648: bits[1], id=30017, pos=[(0,1540,24), (0,1595,22), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30149 ir: "concat.30149: bits[2] = concat(literal.29570: bits[1], nor.29636: bits[1], id=30149, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29718 ir: "nor.29718: bits[1] = nor(or.29886: bits[1], nor.29689: bits[1], id=29718, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 29719 ir: "and.29719: bits[1] = and(nor.29677: bits[1], nor.29689: bits[1], id=29719, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29688 ir: "nor.29688: bits[1] = nor(bit_slice.29679: bits[1], not.29680: bits[1], id=29688, pos=[(0,1590,22), (0,1595,64), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 30139 ir: "nor.30139: bits[1] = nor(bit_slice.29667: bits[1], not.30138: bits[1], id=30139, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_NOT id: 29721 ir: "not.29721: bits[1] = not(and.29692: bits[1], id=29721, pos=[(0,1600,22), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 29705 ir: "and.29705: bits[1] = and(nor.29652: bits[1], nor.29665: bits[1], id=29705, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 85 op: OP_PRIORITY_SEL id: 29876 ir: "priority_sel.29876: bits[2] = priority_sel(nor.29704, cases=[concat.29883], default=concat.30148, id=29876, pos=[(0,1595,22), (0,1600,64), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 85 op: OP_PRIORITY_SEL id: 29937 ir: "priority_sel.29937: bits[2] = priority_sel(nor.29691, cases=[concat.30017], default=concat.30149, id=29937, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 29723 ir: "concat.29723: bits[2] = concat(nor.29718: bits[1], and.29719: bits[1], id=29723, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30023 ir: "concat.30023: bits[2] = concat(literal.29582: bits[1], nor.29688: bits[1], id=30023, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 29966 ir: "concat.29966: bits[2] = concat(nor.29677: bits[1], nor.30139: bits[1], id=29966, pos=[(0,1590,22), (0,1595,34), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29727 ir: "nor.29727: bits[1] = nor(not.29721: bits[1], and.29705: bits[1], id=29727, pos=[(0,1600,22), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30020 ir: "concat.30020: bits[3] = concat(literal.29582: bits[1], priority_sel.29876: bits[2], id=30020, pos=[(0,1540,24), (0,1600,22), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30027 ir: "concat.30027: bits[3] = concat(literal.29570: bits[1], priority_sel.29937: bits[2], id=30027, pos=[(0,1595,22), (0,1600,34), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 105 op: OP_PRIORITY_SEL id: 29970 ir: "priority_sel.29970: bits[2] = priority_sel(concat.29723, cases=[literal.29845, concat.30023], default=concat.29966, id=29970, pos=[(0,1595,22), (0,1600,34), (0,1605,64), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 94 op: OP_PRIORITY_SEL id: 29943 ir: "priority_sel.29943: bits[3] = priority_sel(nor.29727, cases=[concat.30020], default=concat.30027, id=29943, pos=[(0,1600,22), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 29728 ir: "and.29728: bits[1] = and(and.29692: bits[1], and.29705: bits[1], id=29728, pos=[(0,1600,22), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30025 ir: "concat.30025: bits[4] = concat(literal.29582: bits[1], and.29719: bits[1], priority_sel.29970: bits[2], id=30025, pos=[(0,1605,22), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30028 ir: "concat.30028: bits[4] = concat(literal.29570: bits[1], priority_sel.29943: bits[3], id=30028, pos=[(0,1600,22), (0,1605,34), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 29741 ir: "concat.29741: bits[13] = concat(literal.29570: bits[1], xbs_fraction: bits[12], id=29741, pos=[(3,162,51)])" } all_nodes { node_delay_ps: 100 op: OP_PRIORITY_SEL id: 29742 ir: "leading_zeroes: bits[4] = priority_sel(and.29728, cases=[concat.30025], default=concat.30028, id=29742, pos=[(0,1605,22), (0,1644,30), (0,1707,13), (2,3137,34), (3,162,51)])" } all_nodes { node_delay_ps: 193 op: OP_SHLL id: 29743 ir: "cancel_fraction: bits[13] = shll(concat.29741: bits[13], leading_zeroes: bits[4], id=29743, pos=[(2,3140,26), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29744 ir: "bit_slice.29744: bits[10] = bit_slice(xbs_fraction: bits[12], start=2, width=10, id=29744, pos=[(2,3049,20), (2,3133,36), (3,162,51)])" } all_nodes { node_delay_ps: 19 op: OP_OR id: 29745 ir: "or.29745: bits[1] = or(bit_slice.29679: bits[1], bit_slice.29669: bits[1], id=29745, pos=[(2,3049,40), (2,3133,36), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29746 ir: "cancel_fraction__1: bits[11] = bit_slice(cancel_fraction: bits[13], start=1, width=11, id=29746, pos=[(3,162,51)])" } all_nodes { op: OP_CONCAT id: 29747 ir: "carry_fraction__1: bits[11] = concat(bit_slice.29744: bits[10], or.29745: bits[1], id=29747, pos=[(2,3049,20), (2,3133,36), (3,162,51)])" } all_nodes { node_delay_ps: 121 op: OP_SEL id: 29748 ir: "shifted_fraction: bits[11] = sel(carry_bit, cases=[cancel_fraction__1, carry_fraction__1], id=29748, pos=[(2,3142,27), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29749 ir: "normal_chunk: bits[3] = bit_slice(shifted_fraction: bits[11], start=0, width=3, id=29749, pos=[(2,3154,39), (3,162,51)])" } all_nodes { op: OP_LITERAL id: 29736 ir: "fraction_shift__3: bits[3] = literal(value=4, id=29736, pos=[(2,3170,8), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29750 ir: "half_way_chunk: bits[2] = bit_slice(shifted_fraction: bits[11], start=2, width=2, id=29750, pos=[(2,3155,41), (3,162,51)])" } all_nodes { op: OP_LITERAL id: 29751 ir: "literal.29751: bits[2] = literal(value=3, id=29751, pos=[(2,3156,68), (3,162,51)])" } all_nodes { node_delay_ps: 75 op: OP_UGT id: 29752 ir: "ugt.29752: bits[1] = ugt(normal_chunk: bits[3], fraction_shift__3: bits[3], id=29752, pos=[(2,3156,23), (3,162,51)])" } all_nodes { node_delay_ps: 64 op: OP_EQ id: 29753 ir: "eq.29753: bits[1] = eq(half_way_chunk: bits[2], literal.29751: bits[2], id=29753, pos=[(2,3156,50), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 30070 ir: "bit_slice.30070: bits[8] = bit_slice(shifted_fraction: bits[11], start=3, width=8, id=30070)" } all_nodes { node_delay_ps: 19 op: OP_OR id: 29756 ir: "do_round_up: bits[1] = or(ugt.29752: bits[1], eq.29753: bits[1], id=29756, pos=[(2,3156,23), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30071 ir: "concat.30071: bits[9] = concat(literal.29570: bits[1], bit_slice.30070: bits[8], id=30071)" } all_nodes { op: OP_CONCAT id: 30150 ir: "concat.30150: bits[9] = concat(literal.29581: bits[8], do_round_up: bits[1], id=30150)" } all_nodes { node_delay_ps: 224 op: OP_ADD id: 30039 ir: "add.30039: bits[9] = add(concat.30071: bits[9], concat.30150: bits[9], id=30039)" } all_nodes { op: OP_LITERAL id: 29759 ir: "literal.29759: bits[4] = literal(value=0, id=29759, pos=[(3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 30062 ir: "rounding_carry: bits[1] = bit_slice(add.30039: bits[9], start=8, width=1, id=30062, pos=[(2,3164,41), (3,162,51)])" } all_nodes { op: OP_LITERAL id: 30122 ir: "literal.30122: bits[10] = literal(value=0, id=30122, pos=[(2,3117,39), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 30146 ir: "bit_slice.30146: bits[1] = bit_slice(shrl.29610: bits[11], start=1, width=1, id=30146, pos=[(2,3117,27), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 30147 ir: "bit_slice.30147: bits[1] = bit_slice(shrl.29610: bits[11], start=2, width=1, id=30147, pos=[(2,3117,27), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 29761 ir: "concat.29761: bits[9] = concat(literal.29570: bits[1], x_bexp: bits[8], id=29761, pos=[(3,162,51)])" } all_nodes { op: OP_LITERAL id: 29762 ir: "literal.29762: bits[9] = literal(value=1, id=29762, pos=[(2,3176,24), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30082 ir: "concat.30082: bits[5] = concat(literal.29759: bits[4], rounding_carry: bits[1], id=30082, pos=[(3,162,51)])" } all_nodes { op: OP_CONCAT id: 29764 ir: "concat.29764: bits[5] = concat(literal.29570: bits[1], leading_zeroes: bits[4], id=29764, pos=[(3,162,51)])" } all_nodes { node_delay_ps: 102 op: OP_EQ id: 30098 ir: "eq.30098: bits[1] = eq(add.30031: bits[10], literal.30122: bits[10], id=30098, pos=[(2,3117,27), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 30135 ir: "nor.30135: bits[1] = nor(bit_slice.30146: bits[1], bit_slice.30147: bits[1], id=30135, pos=[(2,3117,27), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 30136 ir: "nor.30136: bits[1] = nor(bit_slice.29615: bits[1], sticky: bits[1], id=30136, pos=[(2,3117,27), (3,162,51)])" } all_nodes { node_delay_ps: 224 op: OP_ADD id: 29765 ir: "add.29765: bits[9] = add(concat.29761: bits[9], literal.29762: bits[9], id=29765, pos=[(2,3175,26), (3,162,51)])" } all_nodes { node_delay_ps: 164 op: OP_SUB id: 29766 ir: "sub.29766: bits[5] = sub(concat.30082: bits[5], concat.29764: bits[5], id=29766, pos=[(2,3175,26), (3,162,51)])" } all_nodes { node_delay_ps: 35 op: OP_AND id: 30134 ir: "fraction_is_zero: bits[1] = and(eq.30098: bits[1], nor.30135: bits[1], nor.30136: bits[1], id=30134, pos=[(2,3117,27), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 29768 ir: "wide_exponent_associative_element: bits[10] = concat(literal.29570: bits[1], add.29765: bits[9], id=29768, pos=[(2,3175,26), (3,162,51)])" } all_nodes { node_delay_ps: 17 op: OP_SIGN_EXT id: 29769 ir: "wide_exponent_associative_element__1: bits[10] = sign_ext(sub.29766: bits[5], new_bit_count=10, id=29769, pos=[(2,3175,26), (3,162,51)])" } all_nodes { op: OP_NOT id: 29949 ir: "not.29949: bits[1] = not(fraction_is_zero: bits[1], id=29949, pos=[(2,3177,24), (3,162,51)])" } all_nodes { node_delay_ps: 235 op: OP_ADD id: 29771 ir: "wide_exponent: bits[10] = add(wide_exponent_associative_element: bits[10], wide_exponent_associative_element__1: bits[10], id=29771, pos=[(2,3175,26), (3,162,51)])" } all_nodes { node_delay_ps: 17 op: OP_SIGN_EXT id: 29950 ir: "sign_ext.29950: bits[10] = sign_ext(not.29949: bits[1], new_bit_count=10, id=29950, pos=[(2,3177,24), (3,162,51)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 29951 ir: "wide_exponent__1: bits[10] = and(wide_exponent: bits[10], sign_ext.29950: bits[10], id=29951, pos=[(2,3177,24), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29779 ir: "bit_slice.29779: bits[1] = bit_slice(wide_exponent__1: bits[10], start=9, width=1, id=29779, pos=[(2,3180,27), (3,162,51)])" } all_nodes { op: OP_NOT id: 29952 ir: "not.29952: bits[1] = not(bit_slice.29779: bits[1], id=29952, pos=[(2,3180,24), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29780 ir: "bit_slice.29780: bits[9] = bit_slice(wide_exponent__1: bits[10], start=0, width=9, id=29780, pos=[(3,162,51)])" } all_nodes { node_delay_ps: 17 op: OP_SIGN_EXT id: 29953 ir: "sign_ext.29953: bits[9] = sign_ext(not.29952: bits[1], new_bit_count=9, id=29953, pos=[(2,3180,24), (3,162,51)])" } all_nodes { op: OP_LITERAL id: 29773 ir: "MAX_EXPONENT: bits[8] = literal(value=255, id=29773, pos=[(2,3193,39), (3,162,51)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 29954 ir: "wide_exponent__2: bits[9] = and(bit_slice.29780: bits[9], sign_ext.29953: bits[9], id=29954, pos=[(2,3180,24), (3,162,51)])" } all_nodes { node_delay_ps: 96 op: OP_EQ id: 29775 ir: "eq.29775: bits[1] = eq(x_bexp: bits[8], MAX_EXPONENT: bits[8], id=29775, pos=[(2,71,6), (2,3213,30), (3,162,51)])" } all_nodes { node_delay_ps: 93 op: OP_EQ id: 29776 ir: "eq.29776: bits[1] = eq(x_fraction: bits[7], literal.29591: bits[7], id=29776, pos=[(2,96,44), (2,3201,31), (3,162,51)])" } all_nodes { node_delay_ps: 96 op: OP_EQ id: 29777 ir: "eq.29777: bits[1] = eq(y_bexp: bits[8], MAX_EXPONENT: bits[8], id=29777, pos=[(2,71,6), (2,3213,64), (3,162,51)])" } all_nodes { node_delay_ps: 93 op: OP_EQ id: 29778 ir: "eq.29778: bits[1] = eq(y_fraction: bits[7], literal.29591: bits[7], id=29778, pos=[(2,96,44), (2,3201,65), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29794 ir: "bit_slice.29794: bits[8] = bit_slice(wide_exponent__2: bits[9], start=1, width=8, id=29794, pos=[(2,3190,11), (3,162,51)])" } all_nodes { op: OP_NOT id: 29782 ir: "not.29782: bits[1] = not(eq.29775: bits[1], id=29782, pos=[(2,3205,29), (3,162,51)])" } all_nodes { op: OP_NOT id: 29783 ir: "not.29783: bits[1] = not(eq.29776: bits[1], id=29783, pos=[(2,3205,29), (3,162,51)])" } all_nodes { node_delay_ps: 75 op: OP_SEL id: 29838 ir: "x_sign: bits[1] = sel(overflow_detected, cases=[tuple_index.29613, tuple_index.29612], id=29838, pos=[(2,3088,17), (3,162,51)])" } all_nodes { op: OP_NOT id: 29785 ir: "not.29785: bits[1] = not(eq.29777: bits[1], id=29785, pos=[(2,3206,29), (3,162,51)])" } all_nodes { op: OP_NOT id: 29786 ir: "not.29786: bits[1] = not(eq.29778: bits[1], id=29786, pos=[(2,3206,29), (3,162,51)])" } all_nodes { node_delay_ps: 75 op: OP_SEL id: 29839 ir: "y_sign: bits[1] = sel(overflow_detected, cases=[tuple_index.29612, tuple_index.29613], id=29839, pos=[(2,3088,17), (3,162,51)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 29801 ir: "and.29801: bits[1] = and(eq.29775: bits[1], eq.29776: bits[1], id=29801, pos=[(2,96,6), (2,3201,31), (3,162,51)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 29802 ir: "and.29802: bits[1] = and(eq.29777: bits[1], eq.29778: bits[1], id=29802, pos=[(2,96,6), (2,3201,65), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29803 ir: "bit_slice.29803: bits[8] = bit_slice(wide_exponent__2: bits[9], start=0, width=8, id=29803, pos=[(3,162,51)])" } all_nodes { node_delay_ps: 44 op: OP_OR_REDUCE id: 29804 ir: "or_reduce.29804: bits[1] = or_reduce(bit_slice.29794: bits[8], id=29804, pos=[(2,3190,11), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29805 ir: "bit_slice.29805: bits[1] = bit_slice(wide_exponent__2: bits[9], start=0, width=1, id=29805, pos=[(2,3190,11), (3,162,51)])" } all_nodes { node_delay_ps: 38 op: OP_NOR id: 29789 ir: "nor.29789: bits[1] = nor(not.29782: bits[1], not.29783: bits[1], x_sign: bits[1], id=29789, pos=[(2,3205,29), (3,162,51)])" } all_nodes { node_delay_ps: 38 op: OP_NOR id: 29790 ir: "nor.29790: bits[1] = nor(not.29785: bits[1], not.29786: bits[1], y_sign: bits[1], id=29790, pos=[(2,3206,29), (3,162,51)])" } all_nodes { node_delay_ps: 35 op: OP_AND id: 29791 ir: "and.29791: bits[1] = and(eq.29775: bits[1], eq.29776: bits[1], x_sign: bits[1], id=29791, pos=[(2,3211,29), (3,162,51)])" } all_nodes { node_delay_ps: 35 op: OP_AND id: 29792 ir: "and.29792: bits[1] = and(eq.29777: bits[1], eq.29778: bits[1], y_sign: bits[1], id=29792, pos=[(2,3212,29), (3,162,51)])" } all_nodes { op: OP_LITERAL id: 29795 ir: "fraction_shift__2: bits[3] = literal(value=3, id=29795, pos=[(2,3170,8), (3,162,51)])" } all_nodes { node_delay_ps: 19 op: OP_OR id: 29813 ir: "is_operand_inf: bits[1] = or(and.29801: bits[1], and.29802: bits[1], id=29813, pos=[(2,3201,31), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29814 ir: "bit_slice.29814: bits[1] = bit_slice(wide_exponent__2: bits[9], start=8, width=1, id=29814, pos=[(2,3196,11), (3,162,51)])" } all_nodes { node_delay_ps: 67 op: OP_AND_REDUCE id: 29815 ir: "and_reduce.29815: bits[1] = and_reduce(bit_slice.29803: bits[8], id=29815, pos=[(2,3196,11), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29816 ir: "nor.29816: bits[1] = nor(or_reduce.29804: bits[1], bit_slice.29805: bits[1], id=29816, pos=[(2,3190,11), (3,162,51)])" } all_nodes { node_delay_ps: 19 op: OP_OR id: 29798 ir: "has_pos_inf: bits[1] = or(nor.29789: bits[1], nor.29790: bits[1], id=29798, pos=[(2,3205,29), (3,162,51)])" } all_nodes { node_delay_ps: 19 op: OP_OR id: 29799 ir: "has_neg_inf: bits[1] = or(and.29791: bits[1], and.29792: bits[1], id=29799, pos=[(2,3211,29), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30085 ir: "rounded_fraction: bits[12] = concat(add.30039: bits[9], normal_chunk: bits[3], id=30085)" } all_nodes { node_delay_ps: 96 op: OP_SEL id: 29806 ir: "fraction_shift__1: bits[3] = sel(rounding_carry, cases=[fraction_shift__2, fraction_shift__3], id=29806, pos=[(2,3170,8), (3,162,51)])" } all_nodes { node_delay_ps: 33 op: OP_OR id: 29821 ir: "or.29821: bits[1] = or(is_operand_inf: bits[1], bit_slice.29814: bits[1], and_reduce.29815: bits[1], nor.29816: bits[1], id=29821, pos=[(2,3203,26), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29848 ir: "nor.29848: bits[1] = nor(not.29782: bits[1], eq.29776: bits[1], id=29848, pos=[(2,71,6), (2,3213,30), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 29850 ir: "nor.29850: bits[1] = nor(not.29785: bits[1], eq.29778: bits[1], id=29850, pos=[(2,71,6), (2,3213,64), (3,162,51)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 29809 ir: "and.29809: bits[1] = and(has_pos_inf: bits[1], has_neg_inf: bits[1], id=29809, pos=[(2,3214,25), (3,162,51)])" } all_nodes { op: OP_CONCAT id: 30083 ir: "concat.30083: bits[2] = concat(bit_slice.30060: bits[1], fraction_is_zero: bits[1], id=30083, pos=[(3,162,51)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 29811 ir: "and.29811: bits[1] = and(tuple_index.29612: bits[1], tuple_index.29613: bits[1], id=29811, pos=[(2,3119,22), (3,162,51)])" } all_nodes { op: OP_NOT id: 29812 ir: "not.29812: bits[1] = not(y_sign: bits[1], id=29812, pos=[(2,3120,25), (3,162,51)])" } all_nodes { node_delay_ps: 188 op: OP_SHRL id: 29817 ir: "shrl.29817: bits[12] = shrl(rounded_fraction: bits[12], fraction_shift__1: bits[3], id=29817, pos=[(2,3171,27), (3,162,51)])" } all_nodes { op: OP_NOT id: 29955 ir: "not.29955: bits[1] = not(or.29821: bits[1], id=29955, pos=[(2,3203,26), (3,162,51)])" } all_nodes { node_delay_ps: 27 op: OP_OR id: 29818 ir: "is_result_nan: bits[1] = or(nor.29848: bits[1], nor.29850: bits[1], and.29809: bits[1], id=29818, pos=[(2,3213,30), (3,162,51)])" } all_nodes { node_delay_ps: 90 op: OP_PRIORITY_SEL id: 29819 ir: "result_sign: bits[1] = priority_sel(concat.30083, cases=[and.29811, not.29812], default=y_sign, id=29819, pos=[(3,162,51)])" } all_nodes { op: OP_NOT id: 29820 ir: "not.29820: bits[1] = not(has_pos_inf: bits[1], id=29820, pos=[(2,3207,42), (3,162,51)])" } all_nodes { op: OP_BIT_SLICE id: 29822 ir: "result_fraction: bits[7] = bit_slice(shrl.29817: bits[12], start=0, width=7, id=29822, pos=[(3,162,51)])" } all_nodes { node_delay_ps: 17 op: OP_SIGN_EXT id: 29956 ir: "sign_ext.29956: bits[7] = sign_ext(not.29955: bits[1], new_bit_count=7, id=29956, pos=[(2,3203,26), (3,162,51)])" } all_nodes { op: OP_NOT id: 29823 ir: "not.29823: bits[1] = not(is_result_nan: bits[1], id=29823, pos=[(2,3218,22), (3,162,51)])" } all_nodes { node_delay_ps: 75 op: OP_SEL id: 29824 ir: "result_sign__1: bits[1] = sel(is_operand_inf, cases=[result_sign, not.29820], id=29824, pos=[(2,3207,22), (3,162,51)])" } all_nodes { node_delay_ps: 33 op: OP_OR id: 29825 ir: "or.29825: bits[1] = or(is_result_nan: bits[1], is_operand_inf: bits[1], bit_slice.29814: bits[1], and_reduce.29815: bits[1], id=29825, pos=[(2,3216,26), (3,162,51)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 29957 ir: "result_fraction__3: bits[7] = and(result_fraction: bits[7], sign_ext.29956: bits[7], id=29957, pos=[(2,3203,26), (3,162,51)])" } all_nodes { op: OP_LITERAL id: 29827 ir: "FRACTION_HIGH_BIT: bits[7] = literal(value=64, id=29827, pos=[(2,3215,30), (3,162,51)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 29828 ir: "result_sign__2: bits[1] = and(not.29823: bits[1], result_sign__1: bits[1], id=29828, pos=[(2,3218,22), (3,162,51)])" } all_nodes { node_delay_ps: 115 op: OP_SEL id: 29829 ir: "result_exponent__2: bits[8] = sel(or.29825, cases=[bit_slice.29803, MAX_EXPONENT], id=29829, pos=[(2,3216,26), (3,162,51)])" } all_nodes { node_delay_ps: 112 op: OP_SEL id: 29830 ir: "result_fraction__4: bits[7] = sel(is_result_nan, cases=[result_fraction__3, FRACTION_HIGH_BIT], id=29830, pos=[(2,3217,26), (3,162,51)])" } all_nodes { op: OP_TUPLE id: 29831 ir: "tuple.29831: (bits[1], bits[8], bits[7]) = tuple(result_sign__2: bits[1], result_exponent__2: bits[8], result_fraction__4: bits[7], id=29831, pos=[(2,3221,33), (3,162,51)])" }