package float32 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/float32.x" top fn __float32__ldexp(f: (bits[1], bits[8], bits[23]) id=152, e: bits[32] id=153) -> (bits[1], bits[8], bits[23]) { f_bexp__1: bits[8] = tuple_index(f, index=1, id=341, pos=[(0,804,5), (0,809,27), (0,2103,37), (2,63,52)]) literal.342: bits[8] = literal(value=0, id=342, pos=[(0,804,14), (0,809,27), (0,2103,37), (2,63,52)]) literal.345: bits[8] = literal(value=129, id=345, pos=[(0,266,6), (0,2107,59), (2,63,52)]) eq.343: bits[1] = eq(f_bexp__1, literal.342, id=343, pos=[(0,804,5), (0,809,27), (0,2103,37), (2,63,52)]) add.346: bits[8] = add(f_bexp__1, literal.345, id=346, pos=[(0,266,6), (0,2107,59), (2,63,52)]) not.405: bits[1] = not(eq.343, id=405, pos=[(0,809,4), (0,2103,37), (2,63,52)]) sign_ext.347: bits[33] = sign_ext(e, new_bit_count=33, id=347, pos=[(0,2107,20), (2,63,52)]) sign_ext.348: bits[33] = sign_ext(add.346, new_bit_count=33, id=348, pos=[(0,2107,41), (2,63,52)]) tuple_index.349: bits[23] = tuple_index(f, index=2, id=349, pos=[(0,809,4), (0,2103,37), (2,63,52)]) sign_ext.406: bits[23] = sign_ext(not.405, new_bit_count=23, id=406, pos=[(0,809,4), (0,2103,37), (2,63,52)]) e__1: bits[33] = add(sign_ext.347, sign_ext.348, id=351, pos=[(0,2107,20), (2,63,52)]) literal.352: bits[33] = literal(value=8589934465, id=352, pos=[(0,2118,19), (2,63,52)]) f__1_fraction: bits[23] = and(tuple_index.349, sign_ext.406, id=407, pos=[(0,809,4), (0,2103,37), (2,63,52)]) literal.354: bits[23] = literal(value=8388607, id=354, pos=[(0,2118,79), (2,63,52)]) MAX_EXPONENT: bits[33] = literal(value=127, id=355, pos=[(2,63,52)]) bit_slice.356: bits[8] = bit_slice(e__1, start=0, width=8, id=356, pos=[(2,63,52)]) BIAS: bits[8] = literal(value=127, id=357, pos=[(0,343,38), (0,2109,47), (2,63,52)]) eq.358: bits[1] = eq(e__1, literal.352, id=358, pos=[(0,2118,11), (2,63,52)]) eq.359: bits[1] = eq(f__1_fraction, literal.354, id=359, pos=[(0,2118,52), (2,63,52)]) MIN_EXPONENT: bits[33] = literal(value=8589934466, id=360, pos=[(2,63,52)]) sgt.361: bits[1] = sgt(e__1, MAX_EXPONENT, id=361, pos=[(0,2112,20), (2,63,52)]) add.362: bits[8] = add(bit_slice.356, BIAS, id=362, pos=[(0,344,5), (0,2109,47), (2,63,52)]) literal.363: bits[8] = literal(value=255, id=363, pos=[(0,78,28), (0,2112,44), (2,63,52)]) literal.415: bits[7] = literal(value=0, id=415, pos=[(0,2118,8), (2,63,52)]) and.364: bits[1] = and(eq.358, eq.359, id=364, pos=[(0,2118,11), (2,63,52)]) slt.366: bits[1] = slt(e__1, MIN_EXPONENT, id=366, pos=[(0,2124,20), (2,63,52)]) sel.367: bits[8] = sel(sgt.361, cases=[add.362, literal.363], id=367, pos=[(0,2112,17), (2,63,52)]) concat.419: bits[8] = concat(literal.415, and.364, id=419, pos=[(0,2118,8), (2,63,52)]) result__2_bexp__1: bits[8] = sel(slt.366, cases=[sel.367, concat.419], id=371, pos=[(0,2124,17), (2,63,52)]) literal.350: bits[23] = literal(value=0, id=350, pos=[(0,131,73), (0,809,37), (0,2103,37), (2,63,52)]) eq.375: bits[1] = eq(result__2_bexp__1, literal.342, id=375, pos=[(0,804,5), (0,809,27), (0,2126,35), (2,63,52)]) eq.369: bits[1] = eq(f_bexp__1, literal.363, id=369, pos=[(0,96,6), (0,2129,60), (2,63,52)]) eq.370: bits[1] = eq(f__1_fraction, literal.350, id=370, pos=[(0,96,44), (0,2129,60), (2,63,52)]) or.399: bits[1] = or(eq.375, slt.366, sgt.361, eq.343, id=399, pos=[(0,809,4), (0,2126,35), (2,63,52)]) and.374: bits[1] = and(eq.369, eq.370, id=374, pos=[(0,96,6), (0,2129,60), (2,63,52)]) not.410: bits[1] = not(or.399, id=410, pos=[(0,809,4), (0,2126,35), (2,63,52)]) not.400: bits[1] = not(eq.369, id=400, pos=[(0,71,6), (0,2130,26), (2,63,52)]) f_sign: bits[1] = tuple_index(f, index=0, id=378, pos=[(0,809,60), (0,2103,37), (2,63,52)]) or.379: bits[1] = or(eq.343, and.374, id=379, pos=[(0,2129,40), (2,63,52)]) sign_ext.411: bits[23] = sign_ext(not.410, new_bit_count=23, id=411, pos=[(0,809,4), (0,2126,35), (2,63,52)]) nor.401: bits[1] = nor(not.400, eq.370, id=401, pos=[(0,71,6), (0,2130,26), (2,63,52)]) not.383: bits[1] = not(f_sign, id=383, pos=[(0,2130,17), (2,63,52)]) sel.384: bits[8] = sel(or.379, cases=[result__2_bexp__1, f_bexp__1], id=384, pos=[(0,2129,17), (2,63,52)]) and.412: bits[23] = and(tuple_index.349, sign_ext.411, id=412, pos=[(0,809,4), (0,2126,35), (2,63,52)]) literal.386: bits[23] = literal(value=4194304, id=386, pos=[(0,2130,17), (2,63,52)]) nor.387: bits[1] = nor(nor.401, not.383, id=387, pos=[(0,2130,17), (2,63,52)]) sel.388: bits[8] = sel(nor.401, cases=[sel.384, literal.363], id=388, pos=[(0,2130,17), (2,63,52)]) sel.389: bits[23] = sel(nor.401, cases=[and.412, literal.386], id=389, pos=[(0,2130,17), (2,63,52)]) ret result__5: (bits[1], bits[8], bits[23]) = tuple(nor.387, sel.388, sel.389, id=390, pos=[(0,2130,17), (2,63,52)]) }