combinational_critical_path { total_delay_ps: 1193 nodes { total_delay_ps: 1193 op: OP_TUPLE id: 523 ir: "tuple.523: (bits[1], bits[8], bits[7]) = tuple(nor.534: bits[1], priority_sel.552: bits[8], concat.579: bits[7], id=523, pos=[(2,182,72)])" } nodes { total_delay_ps: 1193 node_delay_ps: 135 op: OP_PRIORITY_SEL id: 552 ir: "priority_sel.552: bits[8] = priority_sel(concat.601, cases=[EXPR_MASK, literal.478], default=sel.517, id=552, pos=[(2,182,72)])" } nodes { total_delay_ps: 1058 node_delay_ps: 115 op: OP_SEL id: 517 ir: "sel.517: bits[8] = sel(ult.513, cases=[f_bexp__1, sel.514], id=517, pos=[(1,4497,12), (2,182,72)])" } nodes { total_delay_ps: 943 node_delay_ps: 115 op: OP_SEL id: 514 ir: "sel.514: bits[8] = sel(nor.506, cases=[add.540, concat.684], id=514, pos=[(1,4499,19), (2,182,72)])" } nodes { total_delay_ps: 828 node_delay_ps: 212 op: OP_ADD id: 540 ir: "add.540: bits[8] = add(f_bexp__1: bits[8], concat.600: bits[8], id=540)" } nodes { total_delay_ps: 616 op: OP_CONCAT id: 600 ir: "concat.600: bits[8] = concat(literal.477: bits[7], and.599: bits[1], id=600)" } nodes { total_delay_ps: 616 node_delay_ps: 23 op: OP_AND id: 599 ir: "and.599: bits[1] = and(f_sign__1: bits[1], bit_slice.483: bits[1], id=599)" } nodes { total_delay_ps: 593 op: OP_BIT_SLICE id: 483 ir: "bit_slice.483: bits[1] = bit_slice(fraction_up__2: bits[8], start=7, width=1, id=483, pos=[(1,4262,46), (1,4509,45), (2,182,72)])" } nodes { total_delay_ps: 593 node_delay_ps: 212 op: OP_ADD id: 479 ir: "fraction_up__2: bits[8] = add(concat.474: bits[8], concat.475: bits[8], id=479, pos=[(1,4259,9), (1,4509,45), (2,182,72)])" } nodes { total_delay_ps: 381 op: OP_CONCAT id: 475 ir: "concat.475: bits[8] = concat(literal.471: bits[1], fractional_mask__1: bits[7], id=475, pos=[(1,4509,45), (2,182,72)])" } nodes { total_delay_ps: 381 node_delay_ps: 152 op: OP_SHRL id: 473 ir: "fractional_mask__1: bits[7] = shrl(literal.469: bits[7], sign_ext.470: bits[32], id=473, pos=[(1,4240,40), (1,4509,45), (2,182,72)])" } nodes { total_delay_ps: 229 node_delay_ps: 17 op: OP_SIGN_EXT id: 470 ir: "sign_ext.470: bits[32] = sign_ext(exp__1: bits[8], new_bit_count=32, id=470, pos=[(1,4509,45), (2,182,72)])" } nodes { total_delay_ps: 212 node_delay_ps: 212 op: OP_ADD id: 468 ir: "exp__1: bits[8] = add(f_bexp__1: bits[8], literal.467: bits[8], id=468, pos=[(1,266,6), (1,4238,31), (1,4509,45), (2,182,72)])" } nodes { op: OP_LITERAL id: 467 ir: "literal.467: bits[8] = literal(value=129, id=467, pos=[(1,266,6), (1,4238,31), (1,4509,45), (2,182,72)])" } } all_nodes { op: OP_PARAM id: 201 ir: "f: (bits[1], bits[8], bits[7]) = param(name=f, id=201)" } all_nodes { op: OP_TUPLE_INDEX id: 466 ir: "f_bexp__1: bits[8] = tuple_index(f: (bits[1], bits[8], bits[7]), index=1, id=466, pos=[(1,266,6), (1,4238,31), (1,4509,45), (2,182,72)])" } all_nodes { op: OP_LITERAL id: 467 ir: "literal.467: bits[8] = literal(value=129, id=467, pos=[(1,266,6), (1,4238,31), (1,4509,45), (2,182,72)])" } all_nodes { node_delay_ps: 212 op: OP_ADD id: 468 ir: "exp__1: bits[8] = add(f_bexp__1: bits[8], literal.467: bits[8], id=468, pos=[(1,266,6), (1,4238,31), (1,4509,45), (2,182,72)])" } all_nodes { op: OP_LITERAL id: 469 ir: "literal.469: bits[7] = literal(value=127, id=469, pos=[(1,4240,40), (1,4509,45), (2,182,72)])" } all_nodes { node_delay_ps: 17 op: OP_SIGN_EXT id: 470 ir: "sign_ext.470: bits[32] = sign_ext(exp__1: bits[8], new_bit_count=32, id=470, pos=[(1,4509,45), (2,182,72)])" } all_nodes { op: OP_LITERAL id: 471 ir: "literal.471: bits[1] = literal(value=0, id=471, pos=[(1,4509,45), (2,182,72)])" } all_nodes { op: OP_TUPLE_INDEX id: 472 ir: "f_fraction__1: bits[7] = tuple_index(f: (bits[1], bits[8], bits[7]), index=2, id=472, pos=[(1,4259,9), (1,4509,45), (2,182,72)])" } all_nodes { node_delay_ps: 152 op: OP_SHRL id: 473 ir: "fractional_mask__1: bits[7] = shrl(literal.469: bits[7], sign_ext.470: bits[32], id=473, pos=[(1,4240,40), (1,4509,45), (2,182,72)])" } all_nodes { op: OP_CONCAT id: 474 ir: "concat.474: bits[8] = concat(literal.471: bits[1], f_fraction__1: bits[7], id=474, pos=[(1,4509,45), (2,182,72)])" } all_nodes { op: OP_CONCAT id: 475 ir: "concat.475: bits[8] = concat(literal.471: bits[1], fractional_mask__1: bits[7], id=475, pos=[(1,4509,45), (2,182,72)])" } all_nodes { node_delay_ps: 212 op: OP_ADD id: 479 ir: "fraction_up__2: bits[8] = add(concat.474: bits[8], concat.475: bits[8], id=479, pos=[(1,4259,9), (1,4509,45), (2,182,72)])" } all_nodes { op: OP_BIT_SLICE id: 484 ir: "bit_slice.484: bits[7] = bit_slice(fraction_up__2: bits[8], start=0, width=7, id=484, pos=[(1,4264,39), (1,4509,45), (2,182,72)])" } all_nodes { op: OP_BIT_SLICE id: 487 ir: "bit_slice.487: bits[7] = bit_slice(f_bexp__1: bits[8], start=0, width=7, id=487, pos=[(1,4219,5), (1,4499,43), (2,182,72)])" } all_nodes { op: OP_LITERAL id: 478 ir: "literal.478: bits[8] = literal(value=0, id=478, pos=[(1,41,9), (1,4492,13), (2,182,72)])" } all_nodes { op: OP_LITERAL id: 477 ir: "literal.477: bits[7] = literal(value=0, id=477, pos=[(1,43,20), (1,4492,13), (2,182,72)])" } all_nodes { op: OP_LITERAL id: 476 ir: "EXPR_MASK: bits[8] = literal(value=255, id=476, pos=[(1,39,36), (1,4492,13), (2,182,72)])" } all_nodes { op: OP_NOT id: 489 ir: "not.489: bits[7] = not(f_fraction__1: bits[7], id=489, pos=[(1,4276,29), (1,4512,47), (2,182,72)])" } all_nodes { op: OP_NOT id: 490 ir: "not.490: bits[7] = not(bit_slice.484: bits[7], id=490, pos=[(1,4264,39), (1,4509,45), (2,182,72)])" } all_nodes { op: OP_BIT_SLICE id: 497 ir: "bit_slice.497: bits[1] = bit_slice(f_bexp__1: bits[8], start=7, width=1, id=497, pos=[(1,4219,5), (1,4499,43), (2,182,72)])" } all_nodes { node_delay_ps: 64 op: OP_AND_REDUCE id: 498 ir: "and_reduce.498: bits[1] = and_reduce(bit_slice.487: bits[7], id=498, pos=[(1,4219,5), (1,4499,43), (2,182,72)])" } all_nodes { node_delay_ps: 96 op: OP_EQ id: 482 ir: "eq.482: bits[1] = eq(f_bexp__1: bits[8], literal.478: bits[8], id=482, pos=[(1,4492,13), (2,182,72)])" } all_nodes { node_delay_ps: 93 op: OP_EQ id: 481 ir: "eq.481: bits[1] = eq(f_fraction__1: bits[7], literal.477: bits[7], id=481, pos=[(1,4492,13), (2,182,72)])" } all_nodes { node_delay_ps: 96 op: OP_EQ id: 480 ir: "eq.480: bits[1] = eq(f_bexp__1: bits[8], EXPR_MASK: bits[8], id=480, pos=[(1,4492,13), (2,182,72)])" } all_nodes { op: OP_TUPLE_INDEX id: 499 ir: "f_sign__1: bits[1] = tuple_index(f: (bits[1], bits[8], bits[7]), index=0, id=499, pos=[(1,4277,21), (1,4512,47), (2,182,72)])" } all_nodes { op: OP_BIT_SLICE id: 483 ir: "bit_slice.483: bits[1] = bit_slice(fraction_up__2: bits[8], start=7, width=1, id=483, pos=[(1,4262,46), (1,4509,45), (2,182,72)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 502 ir: "fraction_integral__2: bits[7] = nor(not.489: bits[7], fractional_mask__1: bits[7], id=502, pos=[(1,4276,29), (1,4512,47), (2,182,72)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 503 ir: "fraction_integral__4: bits[7] = nor(not.490: bits[7], fractional_mask__1: bits[7], id=503, pos=[(1,4264,39), (1,4509,45), (2,182,72)])" } all_nodes { node_delay_ps: 19 op: OP_OR id: 619 ir: "or.619: bits[1] = or(bit_slice.497: bits[1], and_reduce.498: bits[1], id=619, pos=[(1,4499,19), (2,182,72)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 486 ir: "and.486: bits[1] = and(eq.482: bits[1], eq.481: bits[1], id=486, pos=[(1,4492,13), (2,182,72)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 485 ir: "and.485: bits[1] = and(eq.480: bits[1], eq.481: bits[1], id=485, pos=[(1,4492,13), (2,182,72)])" } all_nodes { op: OP_NOT id: 730 ir: "not.730: bits[1] = not(eq.480: bits[1], id=730, pos=[(2,182,72)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 599 ir: "and.599: bits[1] = and(f_sign__1: bits[1], bit_slice.483: bits[1], id=599)" } all_nodes { op: OP_LITERAL id: 505 ir: "literal.505: bits[8] = literal(value=134, id=505, pos=[(1,4192,17), (1,4497,35), (2,182,72)])" } all_nodes { node_delay_ps: 112 op: OP_SEL id: 509 ir: "sel.509: bits[7] = sel(f_sign__1, cases=[fraction_integral__2, fraction_integral__4], id=509, pos=[(1,4507,19), (2,182,72)])" } all_nodes { node_delay_ps: 17 op: OP_SIGN_EXT id: 546 ir: "sign_ext.546: bits[7] = sign_ext(or.619: bits[1], new_bit_count=7, id=546, pos=[(1,4499,19), (2,182,72)])" } all_nodes { node_delay_ps: 19 op: OP_OR id: 608 ir: "or.608: bits[1] = or(and.486: bits[1], and.485: bits[1], id=608, pos=[(2,182,72)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 733 ir: "nor.733: bits[1] = nor(not.730: bits[1], eq.481: bits[1], id=733, pos=[(2,182,72)])" } all_nodes { op: OP_CONCAT id: 600 ir: "concat.600: bits[8] = concat(literal.477: bits[7], and.599: bits[1], id=600)" } all_nodes { node_delay_ps: 17 op: OP_SIGN_EXT id: 680 ir: "sign_ext.680: bits[7] = sign_ext(f_sign__1: bits[1], new_bit_count=7, id=680, pos=[(1,4500,16), (2,182,72)])" } all_nodes { node_delay_ps: 130 op: OP_ULT id: 513 ir: "ult.513: bits[1] = ult(f_bexp__1: bits[8], literal.505: bits[8], id=513, pos=[(1,4192,5), (1,4497,35), (2,182,72)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 547 ir: "and.547: bits[7] = and(sel.509: bits[7], sign_ext.546: bits[7], id=547, pos=[(1,4499,19), (2,182,72)])" } all_nodes { node_delay_ps: 19 op: OP_OR id: 655 ir: "or.655: bits[1] = or(or.608: bits[1], nor.733: bits[1], id=655, pos=[(2,182,72)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 506 ir: "nor.506: bits[1] = nor(bit_slice.497: bits[1], and_reduce.498: bits[1], id=506, pos=[(1,4219,5), (1,4499,43), (2,182,72)])" } all_nodes { node_delay_ps: 212 op: OP_ADD id: 540 ir: "add.540: bits[8] = add(f_bexp__1: bits[8], concat.600: bits[8], id=540)" } all_nodes { op: OP_CONCAT id: 684 ir: "concat.684: bits[8] = concat(literal.471: bits[1], sign_ext.680: bits[7], id=684, pos=[(1,4500,16), (2,182,72)])" } all_nodes { node_delay_ps: 112 op: OP_SEL id: 519 ir: "sel.519: bits[7] = sel(ult.513, cases=[f_fraction__1, and.547], id=519, pos=[(1,4497,12), (2,182,72)])" } all_nodes { op: OP_NOT id: 703 ir: "not.703: bits[1] = not(or.655: bits[1], id=703, pos=[(2,182,72)])" } all_nodes { node_delay_ps: 115 op: OP_SEL id: 514 ir: "sel.514: bits[8] = sel(nor.506, cases=[add.540, concat.684], id=514, pos=[(1,4499,19), (2,182,72)])" } all_nodes { op: OP_CONCAT id: 602 ir: "concat.602: bits[2] = concat(or.608: bits[1], nor.733: bits[1], id=602, pos=[(2,182,72)])" } all_nodes { op: OP_LITERAL id: 695 ir: "literal.695: bits[1] = literal(value=1, id=695, pos=[(1,4492,13), (2,182,72)])" } all_nodes { op: OP_BIT_SLICE id: 577 ir: "bit_slice.577: bits[1] = bit_slice(sel.519: bits[7], start=6, width=1, id=577, pos=[(2,182,72)])" } all_nodes { op: OP_BIT_SLICE id: 573 ir: "bit_slice.573: bits[6] = bit_slice(sel.519: bits[7], start=0, width=6, id=573, pos=[(2,182,72)])" } all_nodes { node_delay_ps: 17 op: OP_SIGN_EXT id: 676 ir: "sign_ext.676: bits[6] = sign_ext(not.703: bits[1], new_bit_count=6, id=676, pos=[(2,182,72)])" } all_nodes { op: OP_NOT id: 533 ir: "not.533: bits[1] = not(f_sign__1: bits[1], id=533, pos=[(2,182,72)])" } all_nodes { op: OP_CONCAT id: 601 ir: "concat.601: bits[2] = concat(and.486: bits[1], eq.480: bits[1], id=601, pos=[(2,182,72)])" } all_nodes { node_delay_ps: 115 op: OP_SEL id: 517 ir: "sel.517: bits[8] = sel(ult.513, cases=[f_bexp__1, sel.514], id=517, pos=[(1,4497,12), (2,182,72)])" } all_nodes { node_delay_ps: 90 op: OP_PRIORITY_SEL id: 578 ir: "priority_sel.578: bits[1] = priority_sel(concat.602, cases=[literal.695, literal.471], default=bit_slice.577, id=578, pos=[(2,182,72)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 677 ir: "and.677: bits[6] = and(bit_slice.573: bits[6], sign_ext.676: bits[6], id=677, pos=[(2,182,72)])" } all_nodes { node_delay_ps: 27 op: OP_NOR id: 534 ir: "nor.534: bits[1] = nor(nor.733: bits[1], not.533: bits[1], id=534, pos=[(2,182,72)])" } all_nodes { node_delay_ps: 135 op: OP_PRIORITY_SEL id: 552 ir: "priority_sel.552: bits[8] = priority_sel(concat.601, cases=[EXPR_MASK, literal.478], default=sel.517, id=552, pos=[(2,182,72)])" } all_nodes { op: OP_CONCAT id: 579 ir: "concat.579: bits[7] = concat(priority_sel.578: bits[1], and.677: bits[6], id=579, pos=[(2,182,72)])" } all_nodes { op: OP_TUPLE id: 523 ir: "tuple.523: (bits[1], bits[8], bits[7]) = tuple(nor.534: bits[1], priority_sel.552: bits[8], concat.579: bits[7], id=523, pos=[(2,182,72)])" }