package acm_random file_number 0 "/inputs/subtree/xls/dslx/stdlib/std.x" file_number 1 "/inputs/subtree/xls/dslx/stdlib/acm_random.x" top fn __acm_random__rng_next(s: (bits[32]) id=7) -> ((bits[32]), bits[32]) { s_seed: bits[32] = tuple_index(s, index=0, id=10, pos=[(1,36,20)]) literal.48: bits[15] = literal(value=16807, id=48, pos=[(1,35,14)]) umul.55: bits[47] = umul(s_seed, literal.48, id=55, pos=[(1,36,20)]) literal.60: bits[16] = literal(value=0, id=60, pos=[(1,36,20)]) bit_slice.65: bits[16] = bit_slice(umul.55, start=31, width=16, id=65, pos=[(1,37,21)]) literal.51: bits[1] = literal(value=0, id=51, pos=[(1,37,43)]) bit_slice.69: bits[31] = bit_slice(umul.55, start=0, width=31, id=69, pos=[(1,37,43)]) concat.66: bits[32] = concat(literal.60, bit_slice.65, id=66, pos=[(1,37,21)]) concat.71: bits[32] = concat(literal.51, bit_slice.69, id=71, pos=[(1,37,43)]) new_seed: bits[32] = add(concat.66, concat.71, id=39, pos=[(1,37,21)]) tuple.22: (bits[32]) = tuple(new_seed, id=22, pos=[(1,39,11)]) ret tuple.23: ((bits[32]), bits[32]) = tuple(tuple.22, new_seed, id=23, pos=[(1,39,4)]) }