package acm_random file_number 0 "/inputs/subtree/xls/dslx/stdlib/acm_random.x" fn __acm_random__rng_sanitize_seed(seed: bits[32] id=1) -> bits[32] { literal.3: bits[32] = literal(value=2147483647, id=3, pos=[(0,57,22)]) literal.5: bits[32] = literal(value=0, id=5, pos=[(0,59,8)]) seed__1: bits[32] = and(seed, literal.3, id=4, pos=[(0,57,15)]) M: bits[32] = literal(value=2147483647, id=2, pos=[(0,26,10)]) eq.6: bits[1] = eq(literal.5, seed__1, id=6) eq.7: bits[1] = eq(M, seed__1, id=7) or.8: bits[1] = or(eq.6, eq.7, id=8, pos=[(0,59,8)]) concat.11: bits[1] = concat(or.8, id=11) literal.9: bits[32] = literal(value=1, id=9, pos=[(0,59,21)]) literal.10: bits[1] = literal(value=1, id=10, pos=[(0,60,8)]) ret priority_sel.12: bits[32] = priority_sel(concat.11, cases=[literal.9], default=seed__1, id=12) } top fn __acm_random__rng_new(seed: bits[32] id=13) -> (bits[32]) { invoke.14: bits[32] = invoke(seed, to_apply=__acm_random__rng_sanitize_seed, id=14, pos=[(0,64,68)]) ret tuple.15: (bits[32]) = tuple(invoke.14, id=15, pos=[(0,64,43)]) }