func clamp_double(value: i64, limit: i64) -> i64 local %2 doubled: i64 b0: r0 = local_get %0 r1 = const 2 r2 = multiply.i64 r0, r1 local_set %2, r2 r4 = local_get %2 r5 = local_get %1 r6 = greater.i64 r4, r5 branch r6, b1, b2 b1: r8 = local_get %1 ret r8 b2: r10 = local_get %2 ret r10 func main(args: list[str]) -> None local %1 (temporary): str b0: r0 = local_get %0 r1 = intrinsic len, r0 r2 = const 10 r3 = call clamp_double, r1, r2 r4 = intrinsic str_value, r3 local_set %1, r4 intrinsic print, r4 r7 = local_get %1 r8 = intrinsic drop_storage, r7 local_set %1, r8 ret