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.648: bits[1] = not(eq.574, id=648, 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.649: bits[7] = sign_ext(not.648, new_bit_count=7, id=649, 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.651: bits[1] = not(f_sign__1, id=651) 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.649, id=650, 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.728: bits[1] = or(bit_slice.606, and_reduce.607, id=728, 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.652: bits[8] = sign_ext(not.651, new_bit_count=8, id=652) 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.658: bits[7] = sign_ext(or.728, new_bit_count=7, id=658, pos=[(0,4293,19), (0,4397,21), (2,180,52)]) and.653: bits[8] = and(concat.597, sign_ext.652, id=653) bit_slice.764: bits[7] = bit_slice(sign_ext.652, start=0, width=7, id=764, 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.837: bits[1] = not(eq.589, id=837, 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.659: bits[7] = and(sel.618, sign_ext.658, id=659, 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.647: bits[8] = add(f_bexp__2, and.653, id=647) concat.791: bits[8] = concat(literal.582, bit_slice.764, id=791, pos=[(0,4294,16), (0,4397,21), (2,180,52)]) or.717: bits[1] = or(eq.574, and.594, id=717, pos=[(0,4397,21), (2,180,52)]) nor.845: bits[1] = nor(not.837, eq.590, id=845, pos=[(0,4397,21), (2,180,52)]) sel.628: bits[7] = sel(ult.622, cases=[tuple_index.578, and.659], id=628, pos=[(0,4291,12), (0,4397,21), (2,180,52)]) nor.840: bits[1] = nor(eq.574, eq.589, id=840, pos=[(0,4397,21), (2,180,52)]) sel.623: bits[8] = sel(nor.615, cases=[add.647, concat.791], id=623, pos=[(0,4293,19), (0,4397,21), (2,180,52)]) concat.711: bits[2] = concat(or.717, nor.845, id=711, pos=[(0,4397,21), (2,180,52)]) literal.802: bits[1] = literal(value=1, id=802, pos=[(0,4286,13), (0,4397,21), (2,180,52)]) bit_slice.689: bits[1] = bit_slice(sel.628, start=6, width=1, id=689, pos=[(0,4397,21), (2,180,52)]) bit_slice.685: bits[6] = bit_slice(sel.628, start=0, width=6, id=685, pos=[(0,4397,21), (2,180,52)]) sign_ext.785: bits[6] = sign_ext(nor.840, new_bit_count=6, id=785, pos=[(0,4397,21), (2,180,52)]) concat.710: bits[2] = concat(eq.574, eq.589, id=710, 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.690: bits[1] = priority_sel(concat.711, cases=[literal.802, literal.582], default=bit_slice.689, id=690, pos=[(0,4397,21), (2,180,52)]) and.786: bits[6] = and(bit_slice.685, sign_ext.785, id=786, pos=[(0,4397,21), (2,180,52)]) nor.640: bits[1] = nor(nor.845, not.651, id=640, pos=[(0,4397,21), (2,180,52)]) priority_sel.664: bits[8] = priority_sel(concat.710, cases=[EXPR_MASK, literal.573], default=sel.626, id=664, pos=[(0,4397,21), (2,180,52)]) concat.691: bits[7] = concat(priority_sel.690, and.786, id=691, pos=[(0,4397,21), (2,180,52)]) ret tuple.632: (bits[1], bits[8], bits[7]) = tuple(nor.640, priority_sel.664, concat.691, id=632, pos=[(0,4397,21), (2,180,52)]) }