package bfloat16 file_number 0 "/inputs/subtree/xls/dslx/stdlib/apfloat.x" file_number 1 "/inputs/subtree/xls/dslx/stdlib/std.x" file_number 2 "/inputs/subtree/xls/dslx/stdlib/bfloat16.x" top fn __bfloat16__floor_daz(f: (bits[1], bits[8], bits[7]) id=219) -> (bits[1], bits[8], bits[7]) { f_bexp__2: bits[8] = tuple_index(f, index=1, id=570, pos=[(0,804,5), (0,809,27), (0,4604,41), (2,184,54)]) literal.574: bits[8] = literal(value=129, id=574, pos=[(0,266,6), (0,4238,31), (0,4509,45), (0,4604,22), (2,184,54)]) exp__1: bits[8] = add(f_bexp__2, literal.574, id=575, pos=[(0,266,6), (0,4238,31), (0,4509,45), (0,4604,22), (2,184,54)]) literal.578: bits[7] = literal(value=127, id=578, pos=[(0,4240,40), (0,4509,45), (0,4604,22), (2,184,54)]) sign_ext.579: bits[32] = sign_ext(exp__1, new_bit_count=32, id=579, pos=[(0,4509,45), (0,4604,22), (2,184,54)]) literal.580: bits[1] = literal(value=0, id=580, pos=[(0,4509,45), (0,4604,22), (2,184,54)]) tuple_index.576: bits[7] = tuple_index(f, index=2, id=576, pos=[(0,809,4), (0,4604,41), (2,184,54)]) fractional_mask__1: bits[7] = shrl(literal.578, sign_ext.579, id=582, pos=[(0,4240,40), (0,4509,45), (0,4604,22), (2,184,54)]) literal.571: bits[8] = literal(value=0, id=571, pos=[(0,804,14), (0,809,27), (0,4604,41), (2,184,54)]) concat.583: bits[8] = concat(literal.580, tuple_index.576, id=583, pos=[(0,4509,45), (0,4604,22), (2,184,54)]) concat.584: bits[8] = concat(literal.580, fractional_mask__1, id=584, pos=[(0,4509,45), (0,4604,22), (2,184,54)]) eq.572: bits[1] = eq(f_bexp__2, literal.571, id=572, pos=[(0,804,5), (0,809,27), (0,4604,41), (2,184,54)]) fraction_up__2: bits[8] = add(concat.583, concat.584, id=586, pos=[(0,4259,9), (0,4509,45), (0,4604,22), (2,184,54)]) not.646: bits[1] = not(eq.572, id=646, pos=[(0,809,4), (0,4604,41), (2,184,54)]) bit_slice.591: bits[7] = bit_slice(fraction_up__2, start=0, width=7, id=591, pos=[(0,4264,39), (0,4509,45), (0,4604,22), (2,184,54)]) bit_slice.594: bits[7] = bit_slice(f_bexp__2, start=0, width=7, id=594, pos=[(0,4219,5), (0,4499,43), (0,4604,22), (2,184,54)]) sign_ext.647: bits[7] = sign_ext(not.646, new_bit_count=7, id=647, pos=[(0,809,4), (0,4604,41), (2,184,54)]) not.596: bits[7] = not(tuple_index.576, id=596, pos=[(0,4276,29), (0,4512,47), (0,4604,22), (2,184,54)]) not.597: bits[7] = not(bit_slice.591, id=597, pos=[(0,4264,39), (0,4509,45), (0,4604,22), (2,184,54)]) bit_slice.604: bits[1] = bit_slice(f_bexp__2, start=7, width=1, id=604, pos=[(0,4219,5), (0,4499,43), (0,4604,22), (2,184,54)]) and_reduce.605: bits[1] = and_reduce(bit_slice.594, id=605, pos=[(0,4219,5), (0,4499,43), (0,4604,22), (2,184,54)]) literal.577: bits[7] = literal(value=0, id=577, pos=[(0,131,73), (0,809,37), (0,4604,41), (2,184,54)]) bit_slice.590: bits[1] = bit_slice(fraction_up__2, start=7, width=1, id=590, pos=[(0,4262,46), (0,4509,45), (0,4604,22), (2,184,54)]) f_sign__1: bits[1] = tuple_index(f, index=0, id=606, pos=[(0,809,60), (0,4604,41), (2,184,54)]) EXPR_MASK: bits[8] = literal(value=255, id=585, pos=[(0,39,36), (0,4492,13), (0,4604,22), (2,184,54)]) f_fraction__1: bits[7] = and(tuple_index.576, sign_ext.647, id=648, pos=[(0,809,4), (0,4604,41), (2,184,54)]) fraction_integral__2: bits[7] = nor(not.596, fractional_mask__1, id=609, pos=[(0,4276,29), (0,4512,47), (0,4604,22), (2,184,54)]) fraction_integral__4: bits[7] = nor(not.597, fractional_mask__1, id=610, pos=[(0,4264,39), (0,4509,45), (0,4604,22), (2,184,54)]) or.724: bits[1] = or(bit_slice.604, and_reduce.605, id=724, pos=[(0,4499,19), (0,4604,22), (2,184,54)]) concat.595: bits[8] = concat(literal.577, bit_slice.590, id=595, pos=[(0,4509,45), (0,4604,22), (2,184,54)]) sign_ext.649: bits[8] = sign_ext(f_sign__1, new_bit_count=8, id=649) eq.587: bits[1] = eq(f_bexp__2, EXPR_MASK, id=587, pos=[(0,4492,13), (0,4604,22), (2,184,54)]) eq.588: bits[1] = eq(f_fraction__1, literal.577, id=588, pos=[(0,4492,13), (0,4604,22), (2,184,54)]) literal.612: bits[8] = literal(value=134, id=612, pos=[(0,4192,17), (0,4497,35), (0,4604,22), (2,184,54)]) sel.616: bits[7] = sel(f_sign__1, cases=[fraction_integral__2, fraction_integral__4], id=616, pos=[(0,4507,19), (0,4604,22), (2,184,54)]) sign_ext.654: bits[7] = sign_ext(or.724, new_bit_count=7, id=654, pos=[(0,4499,19), (0,4604,22), (2,184,54)]) and.650: bits[8] = and(concat.595, sign_ext.649, id=650) bit_slice.760: bits[7] = bit_slice(sign_ext.649, start=0, width=7, id=760, pos=[(0,4500,16), (0,4604,22), (2,184,54)]) and.592: bits[1] = and(eq.587, eq.588, id=592, pos=[(0,4492,13), (0,4604,22), (2,184,54)]) not.833: bits[1] = not(eq.587, id=833, pos=[(0,4604,22), (2,184,54)]) ult.620: bits[1] = ult(f_bexp__2, literal.612, id=620, pos=[(0,4192,5), (0,4497,35), (0,4604,22), (2,184,54)]) and.655: bits[7] = and(sel.616, sign_ext.654, id=655, pos=[(0,4499,19), (0,4604,22), (2,184,54)]) nor.613: bits[1] = nor(bit_slice.604, and_reduce.605, id=613, pos=[(0,4219,5), (0,4499,43), (0,4604,22), (2,184,54)]) add.645: bits[8] = add(f_bexp__2, and.650, id=645) concat.787: bits[8] = concat(literal.580, bit_slice.760, id=787, pos=[(0,4500,16), (0,4604,22), (2,184,54)]) or.713: bits[1] = or(eq.572, and.592, id=713, pos=[(0,4604,22), (2,184,54)]) nor.841: bits[1] = nor(not.833, eq.588, id=841, pos=[(0,4604,22), (2,184,54)]) sel.626: bits[7] = sel(ult.620, cases=[tuple_index.576, and.655], id=626, pos=[(0,4497,12), (0,4604,22), (2,184,54)]) nor.836: bits[1] = nor(eq.572, eq.587, id=836, pos=[(0,4604,22), (2,184,54)]) sel.621: bits[8] = sel(nor.613, cases=[add.645, concat.787], id=621, pos=[(0,4499,19), (0,4604,22), (2,184,54)]) concat.707: bits[2] = concat(or.713, nor.841, id=707, pos=[(0,4604,22), (2,184,54)]) literal.798: bits[1] = literal(value=1, id=798, pos=[(0,4492,13), (0,4604,22), (2,184,54)]) bit_slice.685: bits[1] = bit_slice(sel.626, start=6, width=1, id=685, pos=[(0,4604,22), (2,184,54)]) bit_slice.681: bits[6] = bit_slice(sel.626, start=0, width=6, id=681, pos=[(0,4604,22), (2,184,54)]) sign_ext.781: bits[6] = sign_ext(nor.836, new_bit_count=6, id=781, pos=[(0,4604,22), (2,184,54)]) not.637: bits[1] = not(f_sign__1, id=637, pos=[(0,4604,22), (2,184,54)]) concat.706: bits[2] = concat(eq.572, eq.587, id=706, pos=[(0,4604,22), (2,184,54)]) sel.624: bits[8] = sel(ult.620, cases=[f_bexp__2, sel.621], id=624, pos=[(0,4497,12), (0,4604,22), (2,184,54)]) priority_sel.686: bits[1] = priority_sel(concat.707, cases=[literal.798, literal.580], default=bit_slice.685, id=686, pos=[(0,4604,22), (2,184,54)]) and.782: bits[6] = and(bit_slice.681, sign_ext.781, id=782, pos=[(0,4604,22), (2,184,54)]) nor.638: bits[1] = nor(nor.841, not.637, id=638, pos=[(0,4604,22), (2,184,54)]) priority_sel.660: bits[8] = priority_sel(concat.706, cases=[EXPR_MASK, literal.571], default=sel.624, id=660, pos=[(0,4604,22), (2,184,54)]) concat.687: bits[7] = concat(priority_sel.686, and.782, id=687, pos=[(0,4604,22), (2,184,54)]) ret tuple.630: (bits[1], bits[8], bits[7]) = tuple(nor.638, priority_sel.660, concat.687, id=630, pos=[(0,4604,22), (2,184,54)]) }