package bfloat16 file_number 0 "/inputs/subtree/xls/dslx/stdlib/std.x" file_number 1 "/inputs/subtree/xls/dslx/stdlib/apfloat.x" file_number 2 "/inputs/subtree/xls/dslx/stdlib/bfloat16.x" top fn __bfloat16__lt_2(x: (bits[1], bits[8], bits[7]) id=143, y: (bits[1], bits[8], bits[7]) id=144) -> bits[1] { x_bexp__1: bits[8] = tuple_index(x, index=1, id=564, pos=[(1,804,5), (1,809,27), (1,2363,34), (1,2444,8), (1,2568,41), (2,92,53)]) literal.565: bits[8] = literal(value=0, id=565, pos=[(1,804,14), (1,809,27), (1,2363,34), (1,2444,8), (1,2568,41), (2,92,53)]) y_bexp__2: bits[8] = tuple_index(y, index=1, id=566, pos=[(1,804,5), (1,809,27), (1,2364,34), (1,2444,8), (1,2568,41), (2,92,53)]) eq.567: bits[1] = eq(x_bexp__1, literal.565, id=567, pos=[(1,804,5), (1,809,27), (1,2363,34), (1,2444,8), (1,2568,41), (2,92,53)]) eq.570: bits[1] = eq(y_bexp__2, literal.565, id=570, pos=[(1,804,5), (1,809,27), (1,2364,34), (1,2444,8), (1,2568,41), (2,92,53)]) not.630: bits[1] = not(eq.567, id=630, pos=[(1,809,4), (1,2363,34), (1,2444,8), (1,2568,41), (2,92,53)]) not.633: bits[1] = not(eq.570, id=633, pos=[(1,809,4), (1,2364,34), (1,2444,8), (1,2568,41), (2,92,53)]) x_fraction__1: bits[7] = tuple_index(x, index=2, id=568, pos=[(1,809,4), (1,2363,34), (1,2444,8), (1,2568,41), (2,92,53)]) sign_ext.631: bits[7] = sign_ext(not.630, new_bit_count=7, id=631, pos=[(1,809,4), (1,2363,34), (1,2444,8), (1,2568,41), (2,92,53)]) y_fraction__1: bits[7] = tuple_index(y, index=2, id=571, pos=[(1,809,4), (1,2364,34), (1,2444,8), (1,2568,41), (2,92,53)]) sign_ext.634: bits[7] = sign_ext(not.633, new_bit_count=7, id=634, pos=[(1,809,4), (1,2364,34), (1,2444,8), (1,2568,41), (2,92,53)]) literal.573: bits[8] = literal(value=255, id=573, pos=[(1,71,29), (1,2300,15), (1,2378,33), (1,2444,8), (1,2568,41), (2,92,53)]) literal.569: bits[7] = literal(value=0, id=569, pos=[(1,131,73), (1,809,37), (1,2363,34), (1,2444,8), (1,2568,41), (2,92,53)]) x_sign__2: bits[1] = tuple_index(x, index=0, id=577, pos=[(1,809,60), (1,2363,34), (1,2444,8), (1,2568,41), (2,92,53)]) y_sign__1: bits[1] = tuple_index(y, index=0, id=578, pos=[(1,809,60), (1,2364,34), (1,2444,8), (1,2568,41), (2,92,53)]) x__1_fraction__2: bits[7] = and(x_fraction__1, sign_ext.631, id=632, pos=[(1,809,4), (1,2363,34), (1,2444,8), (1,2568,41), (2,92,53)]) y__1_fraction__2: bits[7] = and(y_fraction__1, sign_ext.634, id=635, pos=[(1,809,4), (1,2364,34), (1,2444,8), (1,2568,41), (2,92,53)]) eq.601: bits[1] = eq(x_bexp__1, literal.573, id=601, pos=[(1,71,6), (1,2300,15), (1,2359,11), (1,2444,8), (1,2568,41), (2,92,53)]) ne.602: bits[1] = ne(x_fraction__1, literal.569, id=602, pos=[(1,71,44), (1,2300,15), (1,2359,11), (1,2444,8), (1,2568,41), (2,92,53)]) eq.603: bits[1] = eq(y_bexp__2, literal.573, id=603, pos=[(1,71,6), (1,2300,28), (1,2359,11), (1,2444,8), (1,2568,41), (2,92,53)]) ne.604: bits[1] = ne(y_fraction__1, literal.569, id=604, pos=[(1,71,44), (1,2300,28), (1,2359,11), (1,2444,8), (1,2568,41), (2,92,53)]) eq.583: bits[1] = eq(x_sign__2, y_sign__1, id=583, pos=[(1,2301,17), (1,2378,33), (1,2444,8), (1,2568,41), (2,92,53)]) eq_exp: bits[1] = eq(x_bexp__1, y_bexp__2, id=584, pos=[(1,2301,17), (1,2378,33), (1,2444,8), (1,2568,41), (2,92,53)]) eq.585: bits[1] = eq(x__1_fraction__2, y__1_fraction__2, id=585, pos=[(1,2301,17), (1,2378,33), (1,2444,8), (1,2568,41), (2,92,53)]) gt_fraction: bits[1] = ugt(x__1_fraction__2, y__1_fraction__2, id=588, pos=[(1,2368,27), (1,2444,8), (1,2568,41), (2,92,53)]) and.612: bits[1] = and(eq.601, ne.602, id=612, pos=[(1,71,6), (1,2300,15), (1,2359,11), (1,2444,8), (1,2568,41), (2,92,53)]) and.613: bits[1] = and(eq.603, ne.604, id=613, pos=[(1,71,6), (1,2300,28), (1,2359,11), (1,2444,8), (1,2568,41), (2,92,53)]) and.591: bits[1] = and(eq.583, eq_exp, eq.585, id=591, pos=[(1,2301,17), (1,2378,33), (1,2444,8), (1,2568,41), (2,92,53)]) and.615: bits[1] = and(eq.567, eq.570, id=615, pos=[(1,2301,60), (1,2359,11), (1,2444,8), (1,2568,41), (2,92,53)]) gt_exp: bits[1] = ugt(x_bexp__1, y_bexp__2, id=593, pos=[(1,2366,22), (1,2444,8), (1,2568,41), (2,92,53)]) and.594: bits[1] = and(eq_exp, gt_fraction, id=594, pos=[(1,2369,32), (1,2444,8), (1,2568,41), (2,92,53)]) nor.620: bits[1] = nor(and.612, and.613, id=620, pos=[(1,2300,4), (1,2359,11), (1,2444,8), (1,2568,41), (2,92,53)]) or.596: bits[1] = or(and.591, and.615, id=596, pos=[(1,2301,17), (1,2378,33), (1,2444,8), (1,2568,41), (2,92,53)]) not.597: bits[1] = not(x_sign__2, id=597, pos=[(1,2444,8), (1,2568,41), (2,92,53)]) not.598: bits[1] = not(y_sign__1, id=598, pos=[(1,2444,8), (1,2568,41), (2,92,53)]) abs_gt: bits[1] = or(gt_exp, and.594, id=599, pos=[(1,2369,21), (1,2444,8), (1,2568,41), (2,92,53)]) and.600: bits[1] = and(nor.620, or.596, id=600, pos=[(1,2300,4), (1,2378,33), (1,2444,8), (1,2568,41), (2,92,53)]) eq.606: bits[1] = eq(x_fraction__1, y_fraction__1, id=606, pos=[(1,2301,17), (1,2359,11), (1,2444,8), (1,2568,41), (2,92,53)]) nor.607: bits[1] = nor(not.597, y_sign__1, id=607, pos=[(1,2444,8), (1,2568,41), (2,92,53)]) nor.608: bits[1] = nor(x_sign__2, not.598, id=608, pos=[(1,2444,8), (1,2568,41), (2,92,53)]) nor.609: bits[1] = nor(x_sign__2, y_sign__1, id=609, pos=[(1,2444,8), (1,2568,41), (2,92,53)]) not.610: bits[1] = not(abs_gt, id=610, pos=[(1,2378,17), (1,2444,8), (1,2568,41), (2,92,53)]) not.611: bits[1] = not(and.600, id=611, pos=[(1,2378,28), (1,2444,8), (1,2568,41), (2,92,53)]) and.614: bits[1] = and(eq.583, eq_exp, eq.606, id=614, pos=[(1,2301,17), (1,2359,11), (1,2444,8), (1,2568,41), (2,92,53)]) concat.616: bits[3] = concat(nor.607, nor.608, nor.609, id=616, pos=[(1,2444,8), (1,2568,41), (2,92,53)]) literal.617: bits[1] = literal(value=1, id=617, pos=[(1,2374,28), (1,2444,8), (1,2568,41), (2,92,53)]) literal.618: bits[1] = literal(value=0, id=618, pos=[(1,2376,28), (1,2444,8), (1,2568,41), (2,92,53)]) and.619: bits[1] = and(not.610, not.611, id=619, pos=[(1,2378,17), (1,2444,8), (1,2568,41), (2,92,53)]) or.621: bits[1] = or(and.614, and.615, id=621, pos=[(1,2301,17), (1,2359,11), (1,2444,8), (1,2568,41), (2,92,53)]) result: bits[1] = priority_sel(concat.616, cases=[abs_gt, literal.617, literal.618], default=and.619, id=622, pos=[(1,2444,8), (1,2568,41), (2,92,53)]) and.623: bits[1] = and(nor.620, or.621, id=623, pos=[(1,2300,4), (1,2359,11), (1,2444,8), (1,2568,41), (2,92,53)]) not.624: bits[1] = not(result, id=624, pos=[(1,2381,8), (1,2444,8), (1,2568,41), (2,92,53)]) not.625: bits[1] = not(and.623, id=625, pos=[(1,2359,4), (1,2444,8), (1,2568,41), (2,92,53)]) nor.626: bits[1] = nor(and.612, and.613, not.624, id=626, pos=[(1,2381,8), (1,2444,8), (1,2568,41), (2,92,53)]) and.627: bits[1] = and(not.625, nor.626, id=627, pos=[(1,2359,4), (1,2444,8), (1,2568,41), (2,92,53)]) or.628: bits[1] = or(and.627, and.623, id=628, pos=[(1,2444,8), (1,2568,41), (2,92,53)]) ret nor.629: bits[1] = nor(and.612, and.613, or.628, id=629, pos=[(1,2568,4), (2,92,53)]) }