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,4393,40), (2,180,52)]) literal.576: bits[8] = literal(value=129, id=576, pos=[(0,266,6), (0,4268,31), (0,4302,47), (0,4393,21), (2,180,52)]) exp: bits[8] = add(f_bexp__2, literal.576, id=577, pos=[(0,266,6), (0,4268,31), (0,4302,47), (0,4393,21), (2,180,52)]) literal.580: bits[7] = literal(value=127, id=580, pos=[(0,4270,40), (0,4302,47), (0,4393,21), (2,180,52)]) sign_ext.581: bits[32] = sign_ext(exp, new_bit_count=32, id=581, pos=[(0,4302,47), (0,4393,21), (2,180,52)]) literal.582: bits[1] = literal(value=0, id=582, pos=[(0,4295,45), (0,4393,21), (2,180,52)]) tuple_index.578: bits[7] = tuple_index(f, index=2, id=578, pos=[(0,809,4), (0,4393,40), (2,180,52)]) fractional_mask__2: bits[7] = shrl(literal.580, sign_ext.581, id=584, pos=[(0,4270,40), (0,4302,47), (0,4393,21), (2,180,52)]) concat.585: bits[8] = concat(literal.582, tuple_index.578, id=585, pos=[(0,4299,45), (0,4393,21), (2,180,52)]) concat.586: bits[8] = concat(literal.582, fractional_mask__2, id=586, pos=[(0,4299,45), (0,4393,21), (2,180,52)]) fraction_up__2: bits[8] = add(concat.585, concat.586, id=588, pos=[(0,4255,9), (0,4299,45), (0,4393,21), (2,180,52)]) literal.573: bits[8] = literal(value=0, id=573, pos=[(0,804,14), (0,809,27), (0,4393,40), (2,180,52)]) bit_slice.593: bits[7] = bit_slice(fraction_up__2, start=0, width=7, id=593, pos=[(0,4260,39), (0,4299,45), (0,4393,21), (2,180,52)]) bit_slice.596: bits[7] = bit_slice(f_bexp__2, start=0, width=7, id=596, pos=[(0,4215,5), (0,4289,43), (0,4393,21), (2,180,52)]) bit_slice.592: bits[1] = bit_slice(fraction_up__2, start=7, width=1, id=592, pos=[(0,4258,46), (0,4299,45), (0,4393,21), (2,180,52)]) eq.574: bits[1] = eq(f_bexp__2, literal.573, id=574, pos=[(0,804,5), (0,809,27), (0,4393,40), (2,180,52)]) literal.579: bits[7] = literal(value=0, id=579, pos=[(0,131,73), (0,809,37), (0,4393,40), (2,180,52)]) not.598: bits[7] = not(bit_slice.593, id=598, pos=[(0,4260,39), (0,4299,45), (0,4393,21), (2,180,52)]) not.599: bits[7] = not(tuple_index.578, id=599, pos=[(0,4272,29), (0,4302,47), (0,4393,21), (2,180,52)]) bit_slice.606: bits[1] = bit_slice(f_bexp__2, start=7, width=1, id=606, pos=[(0,4215,5), (0,4289,43), (0,4393,21), (2,180,52)]) and_reduce.607: bits[1] = and_reduce(bit_slice.596, id=607, pos=[(0,4215,5), (0,4289,43), (0,4393,21), (2,180,52)]) f_sign__1: bits[1] = tuple_index(f, index=0, id=608, pos=[(0,809,60), (0,4393,40), (2,180,52)]) not.758: bits[1] = not(bit_slice.592, id=758) EXPR_MASK: bits[8] = literal(value=255, id=587, pos=[(0,39,36), (0,4282,13), (0,4393,21), (2,180,52)]) not.670: bits[1] = not(eq.574, id=670, pos=[(0,4282,13), (0,4393,21), (2,180,52)]) ne.668: bits[1] = ne(tuple_index.578, literal.579, id=668, pos=[(0,4282,13), (0,4393,21), (2,180,52)]) fraction_integral__2: bits[7] = nor(not.598, fractional_mask__2, id=611, pos=[(0,4260,39), (0,4299,45), (0,4393,21), (2,180,52)]) fraction_integral__4: bits[7] = nor(not.599, fractional_mask__2, id=612, pos=[(0,4272,29), (0,4302,47), (0,4393,21), (2,180,52)]) or.731: bits[1] = or(bit_slice.606, and_reduce.607, id=731, pos=[(0,4289,19), (0,4393,21), (2,180,52)]) nor.759: bits[1] = nor(f_sign__1, not.758, id=759) not.639: bits[1] = not(f_sign__1, id=639, pos=[(0,4393,21), (2,180,52)]) eq.589: bits[1] = eq(f_bexp__2, EXPR_MASK, id=589, pos=[(0,4282,13), (0,4393,21), (2,180,52)]) nand.671: bits[1] = nand(not.670, ne.668, id=671, pos=[(0,4282,13), (0,4393,21), (2,180,52)]) literal.614: bits[8] = literal(value=134, id=614, pos=[(0,4188,17), (0,4287,35), (0,4393,21), (2,180,52)]) sel.618: bits[7] = sel(f_sign__1, cases=[fraction_integral__2, fraction_integral__4], id=618, pos=[(0,4297,19), (0,4393,21), (2,180,52)]) sign_ext.690: bits[7] = sign_ext(or.731, new_bit_count=7, id=690, pos=[(0,4289,19), (0,4393,21), (2,180,52)]) concat.723: bits[8] = concat(literal.579, nor.759, id=723) sign_ext.766: bits[7] = sign_ext(not.639, new_bit_count=7, id=766, pos=[(0,4290,16), (0,4393,21), (2,180,52)]) and.594: bits[1] = and(eq.589, nand.671, id=594, pos=[(0,4282,13), (0,4393,21), (2,180,52)]) ult.622: bits[1] = ult(f_bexp__2, literal.614, id=622, pos=[(0,4188,5), (0,4287,35), (0,4393,21), (2,180,52)]) and.691: bits[7] = and(sel.618, sign_ext.690, id=691, pos=[(0,4289,19), (0,4393,21), (2,180,52)]) nor.615: bits[1] = nor(bit_slice.606, and_reduce.607, id=615, pos=[(0,4215,5), (0,4289,43), (0,4393,21), (2,180,52)]) add.677: bits[8] = add(f_bexp__2, concat.723, id=677) concat.767: bits[8] = concat(literal.582, sign_ext.766, id=767, pos=[(0,4290,16), (0,4393,21), (2,180,52)]) or.728: bits[1] = or(eq.574, and.594, id=728, pos=[(0,4393,21), (2,180,52)]) and.772: bits[1] = and(eq.589, ne.668, id=772, pos=[(0,4393,21), (2,180,52)]) sel.628: bits[7] = sel(ult.622, cases=[tuple_index.578, and.691], id=628, pos=[(0,4287,12), (0,4393,21), (2,180,52)]) nor.769: bits[1] = nor(eq.574, eq.589, id=769, pos=[(0,4393,21), (2,180,52)]) sel.623: bits[8] = sel(nor.615, cases=[add.677, concat.767], id=623, pos=[(0,4289,19), (0,4393,21), (2,180,52)]) concat.726: bits[2] = concat(or.728, and.772, id=726, pos=[(0,4393,21), (2,180,52)]) literal.652: bits[1] = literal(value=1, id=652, pos=[(0,4282,13), (0,4393,21), (2,180,52)]) bit_slice.708: bits[1] = bit_slice(sel.628, start=6, width=1, id=708, pos=[(0,4393,21), (2,180,52)]) bit_slice.704: bits[6] = bit_slice(sel.628, start=0, width=6, id=704, pos=[(0,4393,21), (2,180,52)]) sign_ext.763: bits[6] = sign_ext(nor.769, new_bit_count=6, id=763, pos=[(0,4393,21), (2,180,52)]) concat.725: bits[2] = concat(eq.574, eq.589, id=725, pos=[(0,4393,21), (2,180,52)]) sel.626: bits[8] = sel(ult.622, cases=[f_bexp__2, sel.623], id=626, pos=[(0,4287,12), (0,4393,21), (2,180,52)]) priority_sel.709: bits[1] = priority_sel(concat.726, cases=[literal.652, literal.582], default=bit_slice.708, id=709, pos=[(0,4393,21), (2,180,52)]) and.764: bits[6] = and(bit_slice.704, sign_ext.763, id=764, pos=[(0,4393,21), (2,180,52)]) nor.640: bits[1] = nor(and.772, not.639, id=640, pos=[(0,4393,21), (2,180,52)]) priority_sel.696: bits[8] = priority_sel(concat.725, cases=[EXPR_MASK, literal.573], default=sel.626, id=696, pos=[(0,4393,21), (2,180,52)]) concat.710: bits[7] = concat(priority_sel.709, and.764, id=710, pos=[(0,4393,21), (2,180,52)]) ret tuple.632: (bits[1], bits[8], bits[7]) = tuple(nor.640, priority_sel.696, concat.710, id=632, pos=[(0,4393,21), (2,180,52)]) }