package bfloat16 file_number 0 "/inputs/subtree/xls/dslx/stdlib/apfloat.x" file_number 1 "/inputs/subtree/xls/dslx/stdlib/bfloat16.x" fn __apfloat__unflatten__8_7_16(x: bits[16] id=1) -> (bits[1], bits[8], bits[7]) { EXP_SZ: bits[32] = literal(value=8, id=2, pos=[(0,374,17)]) FRACTION_SZ: bits[32] = literal(value=7, id=3, pos=[(0,374,30)]) SIGN_OFFSET: bits[32] = add(EXP_SZ, FRACTION_SZ, id=5, pos=[(0,376,29)]) bit_slice.6: bits[16] = bit_slice(SIGN_OFFSET, start=0, width=16, id=6) bit_slice.9: bits[16] = bit_slice(FRACTION_SZ, start=0, width=16, id=9) shrl.7: bits[16] = shrl(x, bit_slice.6, id=7, pos=[(0,378,15)]) shrl.10: bits[16] = shrl(x, bit_slice.9, id=10, pos=[(0,379,15)]) bit_slice.8: bits[1] = bit_slice(shrl.7, start=0, width=1, id=8) bit_slice.11: bits[8] = bit_slice(shrl.10, start=0, width=8, id=11) bit_slice.12: bits[7] = bit_slice(x, start=0, width=7, id=12) TOTAL_SZ: bits[32] = literal(value=16, id=4, pos=[(0,374,48)]) ret tuple.13: (bits[1], bits[8], bits[7]) = tuple(bit_slice.8, bit_slice.11, bit_slice.12, id=13, pos=[(0,377,33)]) } top fn __bfloat16__unflatten(f: bits[16] id=14) -> (bits[1], bits[8], bits[7]) { ret invoke.15: (bits[1], bits[8], bits[7]) = invoke(f, to_apply=__apfloat__unflatten__8_7_16, id=15, pos=[(1,61,22)]) }