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__ceil_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=572, pos=[(0,804,5), (0,809,27), (0,4397,40), (2,180,52)]) literal.576: bits[8] = literal(value=129, id=576, pos=[(0,266,6), (0,4238,31), (0,4303,45), (0,4397,21), (2,180,52)]) exp__1: bits[8] = add(f_bexp__2, literal.576, id=577, pos=[(0,266,6), (0,4238,31), (0,4303,45), (0,4397,21), (2,180,52)]) literal.580: bits[7] = literal(value=127, id=580, pos=[(0,4240,40), (0,4303,45), (0,4397,21), (2,180,52)]) sign_ext.581: bits[32] = sign_ext(exp__1, new_bit_count=32, id=581, pos=[(0,4303,45), (0,4397,21), (2,180,52)]) literal.582: bits[1] = literal(value=0, id=582, pos=[(0,4303,45), (0,4397,21), (2,180,52)]) tuple_index.578: bits[7] = tuple_index(f, index=2, id=578, pos=[(0,809,4), (0,4397,40), (2,180,52)]) fractional_mask__1: bits[7] = shrl(literal.580, sign_ext.581, id=584, pos=[(0,4240,40), (0,4303,45), (0,4397,21), (2,180,52)]) literal.573: bits[8] = literal(value=0, id=573, pos=[(0,804,14), (0,809,27), (0,4397,40), (2,180,52)]) concat.585: bits[8] = concat(literal.582, tuple_index.578, id=585, pos=[(0,4303,45), (0,4397,21), (2,180,52)]) concat.586: bits[8] = concat(literal.582, fractional_mask__1, id=586, pos=[(0,4303,45), (0,4397,21), (2,180,52)]) eq.574: bits[1] = eq(f_bexp__2, literal.573, id=574, pos=[(0,804,5), (0,809,27), (0,4397,40), (2,180,52)]) fraction_up__2: bits[8] = add(concat.585, concat.586, id=588, pos=[(0,4259,9), (0,4303,45), (0,4397,21), (2,180,52)]) not.649: bits[1] = not(eq.574, id=649, pos=[(0,809,4), (0,4397,40), (2,180,52)]) bit_slice.593: bits[7] = bit_slice(fraction_up__2, start=0, width=7, id=593, pos=[(0,4264,39), (0,4303,45), (0,4397,21), (2,180,52)]) bit_slice.596: bits[7] = bit_slice(f_bexp__2, start=0, width=7, id=596, pos=[(0,4219,5), (0,4293,43), (0,4397,21), (2,180,52)]) f_sign__1: bits[1] = tuple_index(f, index=0, id=608, pos=[(0,809,60), (0,4397,40), (2,180,52)]) sign_ext.650: bits[7] = sign_ext(not.649, new_bit_count=7, id=650, pos=[(0,809,4), (0,4397,40), (2,180,52)]) not.598: bits[7] = not(bit_slice.593, id=598, pos=[(0,4264,39), (0,4303,45), (0,4397,21), (2,180,52)]) not.599: bits[7] = not(tuple_index.578, id=599, pos=[(0,4276,29), (0,4306,47), (0,4397,21), (2,180,52)]) bit_slice.606: bits[1] = bit_slice(f_bexp__2, start=7, width=1, id=606, pos=[(0,4219,5), (0,4293,43), (0,4397,21), (2,180,52)]) and_reduce.607: bits[1] = and_reduce(bit_slice.596, id=607, pos=[(0,4219,5), (0,4293,43), (0,4397,21), (2,180,52)]) literal.579: bits[7] = literal(value=0, id=579, pos=[(0,131,73), (0,809,37), (0,4397,40), (2,180,52)]) bit_slice.592: bits[1] = bit_slice(fraction_up__2, start=7, width=1, id=592, pos=[(0,4262,46), (0,4303,45), (0,4397,21), (2,180,52)]) not.652: bits[1] = not(f_sign__1, id=652) EXPR_MASK: bits[8] = literal(value=255, id=587, pos=[(0,39,36), (0,4286,13), (0,4397,21), (2,180,52)]) f_fraction__1: bits[7] = and(tuple_index.578, sign_ext.650, id=651, pos=[(0,809,4), (0,4397,40), (2,180,52)]) fraction_integral__2: bits[7] = nor(not.598, fractional_mask__1, id=611, pos=[(0,4264,39), (0,4303,45), (0,4397,21), (2,180,52)]) fraction_integral__4: bits[7] = nor(not.599, fractional_mask__1, id=612, pos=[(0,4276,29), (0,4306,47), (0,4397,21), (2,180,52)]) or.729: bits[1] = or(bit_slice.606, and_reduce.607, id=729, pos=[(0,4293,19), (0,4397,21), (2,180,52)]) concat.597: bits[8] = concat(literal.579, bit_slice.592, id=597, pos=[(0,4303,45), (0,4397,21), (2,180,52)]) sign_ext.653: bits[8] = sign_ext(not.652, new_bit_count=8, id=653) eq.589: bits[1] = eq(f_bexp__2, EXPR_MASK, id=589, pos=[(0,4286,13), (0,4397,21), (2,180,52)]) eq.590: bits[1] = eq(f_fraction__1, literal.579, id=590, pos=[(0,4286,13), (0,4397,21), (2,180,52)]) literal.614: bits[8] = literal(value=134, id=614, pos=[(0,4192,17), (0,4291,35), (0,4397,21), (2,180,52)]) sel.618: bits[7] = sel(f_sign__1, cases=[fraction_integral__2, fraction_integral__4], id=618, pos=[(0,4301,19), (0,4397,21), (2,180,52)]) sign_ext.659: bits[7] = sign_ext(or.729, new_bit_count=7, id=659, pos=[(0,4293,19), (0,4397,21), (2,180,52)]) and.654: bits[8] = and(concat.597, sign_ext.653, id=654) bit_slice.765: bits[7] = bit_slice(sign_ext.653, start=0, width=7, id=765, pos=[(0,4294,16), (0,4397,21), (2,180,52)]) and.594: bits[1] = and(eq.589, eq.590, id=594, pos=[(0,4286,13), (0,4397,21), (2,180,52)]) not.838: bits[1] = not(eq.589, id=838, pos=[(0,4397,21), (2,180,52)]) ult.622: bits[1] = ult(f_bexp__2, literal.614, id=622, pos=[(0,4192,5), (0,4291,35), (0,4397,21), (2,180,52)]) and.660: bits[7] = and(sel.618, sign_ext.659, id=660, pos=[(0,4293,19), (0,4397,21), (2,180,52)]) nor.615: bits[1] = nor(bit_slice.606, and_reduce.607, id=615, pos=[(0,4219,5), (0,4293,43), (0,4397,21), (2,180,52)]) add.648: bits[8] = add(f_bexp__2, and.654, id=648) concat.792: bits[8] = concat(literal.582, bit_slice.765, id=792, pos=[(0,4294,16), (0,4397,21), (2,180,52)]) or.718: bits[1] = or(eq.574, and.594, id=718, pos=[(0,4397,21), (2,180,52)]) nor.846: bits[1] = nor(not.838, eq.590, id=846, pos=[(0,4397,21), (2,180,52)]) sel.628: bits[7] = sel(ult.622, cases=[tuple_index.578, and.660], id=628, pos=[(0,4291,12), (0,4397,21), (2,180,52)]) nor.841: bits[1] = nor(eq.574, eq.589, id=841, pos=[(0,4397,21), (2,180,52)]) sel.623: bits[8] = sel(nor.615, cases=[add.648, concat.792], id=623, pos=[(0,4293,19), (0,4397,21), (2,180,52)]) concat.712: bits[2] = concat(or.718, nor.846, id=712, pos=[(0,4397,21), (2,180,52)]) literal.803: bits[1] = literal(value=1, id=803, pos=[(0,4286,13), (0,4397,21), (2,180,52)]) bit_slice.690: bits[1] = bit_slice(sel.628, start=6, width=1, id=690, pos=[(0,4397,21), (2,180,52)]) bit_slice.686: bits[6] = bit_slice(sel.628, start=0, width=6, id=686, pos=[(0,4397,21), (2,180,52)]) sign_ext.786: bits[6] = sign_ext(nor.841, new_bit_count=6, id=786, pos=[(0,4397,21), (2,180,52)]) concat.711: bits[2] = concat(eq.574, eq.589, id=711, pos=[(0,4397,21), (2,180,52)]) sel.626: bits[8] = sel(ult.622, cases=[f_bexp__2, sel.623], id=626, pos=[(0,4291,12), (0,4397,21), (2,180,52)]) priority_sel.691: bits[1] = priority_sel(concat.712, cases=[literal.803, literal.582], default=bit_slice.690, id=691, pos=[(0,4397,21), (2,180,52)]) and.787: bits[6] = and(bit_slice.686, sign_ext.786, id=787, pos=[(0,4397,21), (2,180,52)]) nor.640: bits[1] = nor(nor.846, not.652, id=640, pos=[(0,4397,21), (2,180,52)]) priority_sel.665: bits[8] = priority_sel(concat.711, cases=[EXPR_MASK, literal.573], default=sel.626, id=665, pos=[(0,4397,21), (2,180,52)]) concat.692: bits[7] = concat(priority_sel.691, and.787, id=692, pos=[(0,4397,21), (2,180,52)]) ret tuple.632: (bits[1], bits[8], bits[7]) = tuple(nor.640, priority_sel.665, concat.692, id=632, pos=[(0,4397,21), (2,180,52)]) }