diff --git a/changes/ecs-growable-stores.md b/changes/ecs-growable-stores.md new file mode 100644 index 00000000..ceead52a --- /dev/null +++ b/changes/ecs-growable-stores.md @@ -0,0 +1,9 @@ +bump: minor +type: feature +**The built-in ECS grows.** Every component was a fixed array of 1024 slots, so a game past 1024 +entities could not have them (and until the last release silently corrupted memory trying). The +per-entity stores are heap blocks now, doubled by `L_grow` as entities outgrow them, the new slots +zero: 100 000 entities spawn and query. `Prop.has` bounds against the live capacity and +`Pool.capacity` answers it. A snapshot (`save`/`load`, `world_save`/`world_load`) records its slot +count first and a load grows to it before reading the stores back, so a snapshot's size follows the +world's instead of a fixed 1024. A mod's registered components grow with the rest. diff --git a/changes/worker-reads-states.md b/changes/worker-reads-states.md new file mode 100644 index 00000000..15d62e8d --- /dev/null +++ b/changes/worker-reads-states.md @@ -0,0 +1,9 @@ +bump: minor +type: feature +**A `Job.parallel_for` worker may read a state but not change one.** Every pool thread runs the +worker at once, and the runtime hands each call the same state, so a worker that took a state as +`mut` raced on it with nothing to say so. The compiler now refuses it (`fn bump: a worker runs on +every core at once, so it may read CountState but not change it`): a result goes into `ctx`, a +shared count through a `Sync` handle kept in the state. A function's signature already says what it +touches, so this is the whole check - the same one a parallel scheduler needs to run two systems at +once. `examples/library/threads.ludic` keeps its total in the words it hands the worker. diff --git a/docs/language/job/job-parallel_for.md b/docs/language/job/job-parallel_for.md index 9801e06b..4ce17b44 100644 --- a/docs/language/job/job-parallel_for.md +++ b/docs/language/job/job-parallel_for.md @@ -19,7 +19,9 @@ started on first use) and the calling thread, so each index runs exactly once, i on (`words`, `bytes` or a `pointer`). A worker computes on what it was handed and writes only its own index's results: it must not `spawn`, `despawn`, `push` onto a list another thread can see, or use Http or Audio. `spawn` and `despawn` on a worker stop the program with a located message. Shared -counters go through `Sync.add`, shared totals behind a `Sync.mutex`. +counters go through `Sync.add`, shared totals behind a `Sync.mutex`. A worker may take states, but +only to read them: every thread runs it at once, so a worker that takes one as `mut` is refused at +compile time (a result goes into `ctx`, a count through a `Sync` handle kept in the state). ```ludic program Squares { diff --git a/examples/library/threads.ludic b/examples/library/threads.ludic index 3fba9c5b..6da3e9a0 100644 --- a/examples/library/threads.ludic +++ b/examples/library/threads.ludic @@ -9,17 +9,18 @@ program Threads { state ThreadsState { calls: int = 0 # an atomic handle, made on the main thread before any work lock: int = 0 # a mutex handle - total: long = 0 # guarded by `lock` } # out[i] = i * i: every index written exactly once, by whichever thread claimed it function square(i: int, out: words) -> void { out[i] = i * i } - # count the call atomically, and add i to a shared total under the mutex - function tally(threads_st: mut ThreadsState, i: int, ctx: pointer) -> void { + # count the call atomically, and add i to a shared total under the mutex. A worker may read a + # state (the handles in it) but never change one - every thread runs it at once - so the total + # lives in what the worker is handed + function tally(threads_st: ThreadsState, i: int, total: words) -> void { Sync.add(threads_st.calls, 1) Sync.lock(threads_st.lock) - threads_st.total = threads_st.total + i + total[0] = total[0] + i Sync.unlock(threads_st.lock) } @@ -43,10 +44,11 @@ program Threads { threads_st.calls = Sync.atomic() threads_st.lock = Sync.mutex() - Job.parallel_for(N, fn tally, null) + let total = words(1) + Job.parallel_for(N, fn tally, total) if Sync.get(threads_st.calls) == N { print(4) } - let want: long = N * (N - 1) / 2 - if threads_st.total == want { print(5) } + let want = N * (N - 1) / 2 + if total[0] == want { print(5) } let ran = words(N) Job.parallel_for(N, fn placed, ran) diff --git a/packages/ludic.base/README.md b/packages/ludic.base/README.md index e636f757..5ededb78 100644 --- a/packages/ludic.base/README.md +++ b/packages/ludic.base/README.md @@ -50,6 +50,60 @@ import "ludic.base" | `def Systems key { ... }`, `SYS_`, `SYS_COUNT` | a system declared from any module; the list starts from these | | `core_init_all()`, `core_reset_all()`, `core_tick_all(t)`, `core_save_all() -> Val`, `core_load_all(v)` | the runner: in the order added, tick phase by phase | +## Entities: `Table` and its indexes + +A mechanic that keeps many of something (Things on the ground, animals, drops) keeps them as rows +of a `Table` in its state rather than as a list it scans. The table is data-oriented and +allocates nothing per query: + +- **Rows are dense.** Hot data is columns - `tb.f[c]` (floats) and `tb.i[c]` (ints), one value per + row - and `tb.rec[row]` is a record `T` for everything cold. A removal moves the last row into + the gap (`tb_remove`), so a sweep over `0 .. tb_len(tb)` touches contiguous memory. +- **Handles go stale.** `tb_add` returns a handle: a 22-bit slot and a 9-bit generation. `tb_row(tb, + h)` is -1 once the entity is removed, even after the slot is reused. Keep handles, never rows. +- **Indexes are kept by the setters.** `tb_set_f`, `tb_set_xz`, `tb_set_i` (or writing `tb.f` / + `tb.i` directly and then `tb_refile`) stamp the row's change tick and refile it in every index + that reads that column, in O(1). An index is never a frame behind. + - `tb_grid(tb, cx, cz, gate, cell)` - a spatial hash over two float columns, gated by an int + column (a row is filed while it is non-zero: "active"). `tb_nearest(tb, g, x, z, maxr, mc, mv)` + searches rings outward and stops at the first ring that cannot hold anything nearer; + `tb_within(..., out)` fills a caller's `words`. Buckets double as the rows grow. + - `tb_index(tb, col, gate)` - a cached query: the rows holding each value of an int column (a + kind). `ix_rows(ix, v)`, `ix_count(ix, v)`, `ix_first(ix, v)`. + - `tb_nearest_of` / `tb_within_of` plan between the two: a rare kind is scanned from its own + list, a common one searched by rings. +- **Change detection.** `tb_advance(tb)` moves the table to its next tick; `tb_changed_since(tb, + tick, out)` and `tb_added_since` name the rows written since - what a save or a message needs to + send a delta instead of everything. +- **Observers.** `tb_on_add(tb, fn f)` / `tb_on_remove(tb, fn f)`: `f(handle)` (its states supplied, + like a system's) is told each handle as its row is made and before it goes. +- **Groups and chunks.** `tb_remove_all(tb, ix, v)` removes every row an index files under one + value - a kind, or a chunk of the world a stream lets go (`chunk_of(x, z, size)` packs a chunk's + cell into an int). An index keeps a small value (below 1024) in its own slot and gives a larger, + sparse one (a chunk's packed cell) a slot through a map, so each value costs one list. +- **Change detection is per 64-row block too**: `tb_changed_since` skips a block nobody wrote + since. A row moved into a removal's gap keeps its own tick; the removal is the observer's. +- **Parallel work reads, never writes, a state.** `Job.parallel_for(n, fn work, ctx)` over a + table's columns runs on every core; the compiler refuses a worker that takes a state as `mut` + (a result goes into `ctx`, a shared count through a `Sync` handle kept in the state). +- **Stable ids.** `IntMap` (`imap_new`, `imap_put`, `imap_get(m, k, none)`, `imap_del`) maps an + id kept in a save or a message to a handle without a scan. + +Ludic frees nothing a safe program allocates, so a query that built a list per call leaked every +frame. Every question here writes into a buffer the caller keeps. What each costs, against a +`[]Record` list scanned (`M4 Pro`, one thread): + +| | 10 000 | 100 000 | 1 000 000 | +| --- | --- | --- | --- | +| nearest, any | 0.37 us (list 30) | 1.5 us (list 307) | 7.2 us (list 3075) | +| nearest of a kind (1 in 40) | 1.4 us (list 5.8) | 3.3 us (list 56) | 12 us (list 864) | +| by id | 0.1 us (list 1.7) | 0.09 us (list 17) | 1.5 us (list 324) | +| within 30 m | 0.9 us | 1.5 us | 6.9 us | +| a move, refiled | 11 ns | 14 ns | 44 ns | + +`tests/ecs_fuzz_test.ludic` holds the grid and the kind index against a scan through thousands of +random adds, removes, moves, kind changes and gate flips. + ## A toy mechanic ```ludic diff --git a/packages/ludic.base/ecs_grid.ludic b/packages/ludic.base/ecs_grid.ludic new file mode 100644 index 00000000..3b18f2a8 --- /dev/null +++ b/packages/ludic.base/ecs_grid.ludic @@ -0,0 +1,79 @@ +# ludic.base/ecs_grid.ludic - a spatial hash over two float columns: square cells hashed into +# buckets, each a doubly linked list of rows, so filing, moving and unfiling a row is O(1) +export property Grid { + cx: int = 0 + cz: int = 1 + gate: int = -1 # an int column: a row is filed only while it is non-zero (-1: always) + inv: float = 0.0625 # 1 / the cell's side + mask: int = 255 # buckets - 1, a power of two less one + head: words = null # bucket -> row + 1, 0 empty + next: words = null # row -> the next row in its bucket + 1 + prev: words = null # row -> the previous row + 1 + key: words = null # row -> its packed cell, -1 while not filed + count: int = 0 +} + +function grid_cell(g: Grid, v: float) -> int { return int(Math.floor(v * g.inv)) } +function grid_key(ix: int, iz: int) -> int { return ((ix & 32767) << 15) | (iz & 32767) } +function grid_bucket(g: Grid, ix: int, iz: int) -> int { return ((ix * 73856093) ^ (iz * 19349663)) & g.mask } + +function grid_make(cx: int, cz: int, gate: int, cell: float, rows: int) -> Grid { + let g = new Grid + g.cx = cx + g.cz = cz + g.gate = gate + g.inv = 1.0 / cell + g.head = words(g.mask + 1) + g.next = words(0) + g.prev = words(0) + g.key = words(0) + for r in 0 .. rows { grid_grow(g) } + return g +} + +# index a table spatially by columns cx and cz, in cells `cell` wide; its rows are filed at once +export function tb_grid(tb: Table, cx: int, cz: int, gate: int, cell: float) -> Grid { + let g = grid_make(cx, cz, gate, cell, tb.n) + push(tb.grids, g) + for r in 0 .. tb.n { tb_grid_refile(tb, g, r) } + return g +} + +export function grid_count(g: Grid) -> int { return g.count } + +function grid_grow(g: Grid) -> void { + push(g.next, 0) + push(g.prev, 0) + push(g.key, -1) +} + +function grid_shrink(g: Grid) -> void { + List.pop(g.next) + List.pop(g.prev) + List.pop(g.key) +} + +function grid_link(g: Grid, r: int, k: int, b: int) -> void { + let h = g.head[b] + g.next[r] = h + g.prev[r] = 0 + if h > 0 { g.prev[h - 1] = r + 1 } + g.head[b] = r + 1 + g.key[r] = k + g.count += 1 +} + +function grid_unlink(g: Grid, r: int) -> void { + let k = g.key[r] + if k < 0 { return } + let p = g.prev[r] + let n = g.next[r] + if p > 0 { g.next[p - 1] = n } else { g.head[grid_bucket(g, grid_key_x(k), grid_key_z(k))] = n } + if n > 0 { g.prev[n - 1] = p } + g.key[r] = -1 + g.count -= 1 +} + +# a packed key back to its cell (sign-extended from 15 bits) +function grid_key_x(k: int) -> int { return ((k >> 15) & 32767) - (((k >> 29) & 1) * 32768) } +function grid_key_z(k: int) -> int { return (k & 32767) - (((k >> 14) & 1) * 32768) } diff --git a/packages/ludic.base/ecs_grid_file.ludic b/packages/ludic.base/ecs_grid_file.ludic new file mode 100644 index 00000000..4d9a79fc --- /dev/null +++ b/packages/ludic.base/ecs_grid_file.ludic @@ -0,0 +1,40 @@ +# ludic.base/ecs_grid_file.ludic - where a row is filed follows its columns: a row that has not +# left its cell is not touched, a moved one is relinked, and the buckets double as the rows grow +function grid_refile(g: Grid, r: int, x: float, z: float, on: bool) -> void { + if not on { + grid_unlink(g, r) + return + } + let ix = grid_cell(g, x) + let iz = grid_cell(g, z) + let k = grid_key(ix, iz) + if g.key[r] == k { return } + grid_unlink(g, r) + grid_link(g, r, k, grid_bucket(g, ix, iz)) + if g.count > (g.mask + 1) * 2 { grid_rehash(g) } +} + +# row `from` becomes row `to` (which is not filed): its neighbours and its bucket follow it +function grid_moved(g: Grid, from: int, to: int) -> void { + let k = g.key[from] + g.key[to] = k + if k < 0 { return } + let p = g.prev[from] + let n = g.next[from] + g.prev[to] = p + g.next[to] = n + if p > 0 { g.next[p - 1] = to + 1 } else { g.head[grid_bucket(g, grid_key_x(k), grid_key_z(k))] = to + 1 } + if n > 0 { g.prev[n - 1] = to + 1 } + g.key[from] = -1 +} + +# twice the buckets, every filed row linked again where its key now hashes +function grid_rehash(g: Grid) -> void { + g.mask = g.mask * 2 + 1 + g.head = words(g.mask + 1) + g.count = 0 + for r in 0 .. len(g.key) { + let k = g.key[r] + if k >= 0 { grid_link(g, r, k, grid_bucket(g, grid_key_x(k), grid_key_z(k))) } + } +} diff --git a/packages/ludic.base/ecs_grid_query.ludic b/packages/ludic.base/ecs_grid_query.ludic new file mode 100644 index 00000000..c202da2c --- /dev/null +++ b/packages/ludic.base/ecs_grid_query.ludic @@ -0,0 +1,93 @@ +# ludic.base/ecs_grid_query.ludic - the nearest row: rings of cells outward from the point, stopping +# at the first ring that cannot hold anything nearer. A match is an int column equal to a value +# (column -1: any), or a predicate on the row's record. A question: it writes nothing but locals. +const GRID_RINGS: int = 24 # past this many rings a scan of the filed rows is cheaper +const GRID_FAR: float = 1000000000000.0 + +# the nearest filed row to (x, z) within maxr (0: any distance) matching (mc, mv), or -1 +export function tb_nearest(tb: Table, g: Grid, x: float, z: float, maxr: float, mc: int, mv: int) -> int { + if g.count == 0 { return -1 } + var mcol: words = null + if mc >= 0 { mcol = tb.i[mc] } + let xs = tb.f[g.cx] + let zs = tb.f[g.cz] + var best = -1 + var bd = grid_limit(maxr) + let cs = 1.0 / g.inv + let ix0 = grid_cell(g, x) + let iz0 = grid_cell(g, z) + var ring = 0 + while ring <= GRID_RINGS { + if ring > 0 and grid_ring_past(ring, cs, bd) { return best } + let span = grid_ring_n(ring) + for k in 0 .. span { + best = grid_visit(g, xs, zs, mcol, mv, x, z, grid_ring_x(ix0, ring, k), grid_ring_z(iz0, ring, k), best, bd) + if best >= 0 { bd = grid_d2(xs, zs, best, x, z) } + } + ring += 1 + } + for row in 0 .. len(g.key) { + if g.key[row] >= 0 and (mcol == null or mcol[row] == mv) and grid_d2(xs, zs, row, x, z) < bd { + best = row + bd = grid_d2(xs, zs, row, x, z) + } + } + return best +} + +function grid_limit(maxr: float) -> float { + if maxr > 0.0 { return maxr * maxr } + return GRID_FAR +} +# the nearest a point of ring `ring` can be is (ring - 1) cells: past the best, nothing there wins +function grid_ring_past(ring: int, cs: float, bd: float) -> bool { + let near = float(ring - 1) * cs + return near * near > bd +} +function grid_d2(xs: floats, zs: floats, row: int, x: float, z: float) -> float { + let dx = xs[row] - x + let dz = zs[row] - z + return dx * dx + dz * dz +} + +# a ring's cells in a fixed order: 1 for ring 0, else 8 * ring round the square's edge +function grid_ring_n(ring: int) -> int { + if ring == 0 { return 1 } + return 8 * ring +} +function grid_ring_x(ix0: int, ring: int, k: int) -> int { + if ring == 0 { return ix0 } + let side = 2 * ring + if k < side { return ix0 - ring + k } + if k < 2 * side { return ix0 + ring } + if k < 3 * side { return ix0 + ring - (k - 2 * side) } + return ix0 - ring +} +function grid_ring_z(iz0: int, ring: int, k: int) -> int { + if ring == 0 { return iz0 } + let side = 2 * ring + if k < side { return iz0 - ring } + if k < 2 * side { return iz0 - ring + (k - side) } + if k < 3 * side { return iz0 + ring } + return iz0 + ring - (k - 3 * side) +} + +# one cell: its bucket's rows that are really in it and match; the better of them and `best` +function grid_visit(g: Grid, xs: floats, zs: floats, mcol: words, mv: int, x: float, z: float, ix: int, iz: int, best: int, bd: float) -> int { + let k = grid_key(ix, iz) + var b = best + var d = bd + var r = g.head[grid_bucket(g, ix, iz)] + while r > 0 { + let row = r - 1 + if g.key[row] == k and (mcol == null or mcol[row] == mv) { + let d2 = grid_d2(xs, zs, row, x, z) + if d2 < d { + d = d2 + b = row + } + } + r = g.next[row] + } + return b +} diff --git a/packages/ludic.base/ecs_grid_where.ludic b/packages/ludic.base/ecs_grid_where.ludic new file mode 100644 index 00000000..f92c735f --- /dev/null +++ b/packages/ludic.base/ecs_grid_where.ludic @@ -0,0 +1,101 @@ +# ludic.base/ecs_grid_where.ludic - the grid's questions put to the rows' records: the nearest one a +# predicate keeps, and every record within a radius into the caller's list. The predicate is called +# with the record only; it may read anything, and must change nothing the grid indexes. +export function tb_nearest_where(tb: Table, g: Grid, x: float, z: float, maxr: float, keep: fn(T) -> bool) -> int { + if g.count == 0 { return -1 } + let xs = tb.f[g.cx] + let zs = tb.f[g.cz] + var best = -1 + var bd = grid_limit(maxr) + let cs = 1.0 / g.inv + let ix0 = grid_cell(g, x) + let iz0 = grid_cell(g, z) + var ring = 0 + while ring <= GRID_RINGS { + if ring > 0 and grid_ring_past(ring, cs, bd) { return best } + for k in 0 .. grid_ring_n(ring) { + best = grid_visit_where(tb, g, xs, zs, x, z, grid_ring_x(ix0, ring, k), grid_ring_z(iz0, ring, k), best, bd, keep) + if best >= 0 { bd = grid_d2(xs, zs, best, x, z) } + } + ring += 1 + } + for row in 0 .. len(g.key) { + if g.key[row] >= 0 and grid_d2(xs, zs, row, x, z) < bd and keep(tb.rec[row]) { + best = row + bd = grid_d2(xs, zs, row, x, z) + } + } + return best +} + +function grid_visit_where(tb: Table, g: Grid, xs: floats, zs: floats, x: float, z: float, ix: int, iz: int, best: int, bd: float, keep: fn(T) -> bool) -> int { + let k = grid_key(ix, iz) + var b = best + var d = bd + var r = g.head[grid_bucket(g, ix, iz)] + while r > 0 { + let row = r - 1 + if g.key[row] == k { + let d2 = grid_d2(xs, zs, row, x, z) + if d2 < d and keep(tb.rec[row]) { + d = d2 + b = row + } + } + r = g.next[row] + } + return b +} + +# every filed record within r of (x, z) matching (mc, mv), appended to `out` (cleared first) - the +# caller's list, kept in the caller's state and reused, so a frame's question allocates nothing +export function tb_within_recs(tb: Table, g: Grid, x: float, z: float, r: float, mc: int, mv: int, out: []T) -> int { + List.clear(out) + if g.count == 0 { return 0 } + var mcol: words = null + if mc >= 0 { mcol = tb.i[mc] } + let xs = tb.f[g.cx] + let zs = tb.f[g.cz] + let ix0 = grid_cell(g, x - r) + let ix1 = grid_cell(g, x + r) + let iz0 = grid_cell(g, z - r) + let iz1 = grid_cell(g, z + r) + let cells = (ix1 - ix0 + 1) * (iz1 - iz0 + 1) + if cells > g.count or cells < 0 { + for row in 0 .. len(g.key) { + if g.key[row] >= 0 and (mcol == null or mcol[row] == mv) and grid_d2(xs, zs, row, x, z) <= r * r { push(out, tb.rec[row]) } + } + return len(out) + } + for ix in ix0 .. ix1 + 1 { + for iz in iz0 .. iz1 + 1 { grid_recs_cell(tb, g, xs, zs, mcol, mv, x, z, r * r, ix, iz, out) } + } + return len(out) +} + +function grid_recs_cell(tb: Table, g: Grid, xs: floats, zs: floats, mcol: words, mv: int, x: float, z: float, r2: float, ix: int, iz: int, out: []T) -> void { + let k = grid_key(ix, iz) + var r = g.head[grid_bucket(g, ix, iz)] + while r > 0 { + let row = r - 1 + if g.key[row] == k and (mcol == null or mcol[row] == mv) and grid_d2(xs, zs, row, x, z) <= r2 { push(out, tb.rec[row]) } + r = g.next[row] + } +} + +# every record of kind v (an index over column ix.col) within r, into `out`: a rare kind from its list +export function tb_within_of_recs(tb: Table, g: Grid, ix: IntIndex, x: float, z: float, r: float, v: int, out: []T) -> int { + let n = ix_count(ix, v) + if n > PLAN_LIST_MAX { return tb_within_recs(tb, g, x, z, r, ix.col, v, out) } + List.clear(out) + if n == 0 { return 0 } + let rows = ix.lists[v] + let xs = tb.f[g.cx] + let zs = tb.f[g.cz] + for k in 0 .. n { + let row = rows[k] + if g.gate >= 0 and tb.i[g.gate][row] == 0 { continue } + if grid_d2(xs, zs, row, x, z) <= r * r { push(out, tb.rec[row]) } + } + return len(out) +} diff --git a/packages/ludic.base/ecs_grid_within.ludic b/packages/ludic.base/ecs_grid_within.ludic new file mode 100644 index 00000000..0de2dd90 --- /dev/null +++ b/packages/ludic.base/ecs_grid_within.ludic @@ -0,0 +1,48 @@ +# ludic.base/ecs_grid_within.ludic - every filed row within r of (x, z) matching (mc, mv), into +# `out` (cleared first), in no order; the count is returned. A radius wider than the rows are many +# is answered by one scan of them instead of by cells. +export function tb_within(tb: Table, g: Grid, x: float, z: float, r: float, mc: int, mv: int, out: words) -> int { + List.clear(out) + if g.count == 0 { return 0 } + var mcol: words = null + if mc >= 0 { mcol = tb.i[mc] } + let xs = tb.f[g.cx] + let zs = tb.f[g.cz] + let ix0 = grid_cell(g, x - r) + let ix1 = grid_cell(g, x + r) + let iz0 = grid_cell(g, z - r) + let iz1 = grid_cell(g, z + r) + let cells = (ix1 - ix0 + 1) * (iz1 - iz0 + 1) + if cells > g.count or cells < 0 { + grid_within_scan(g, xs, zs, mcol, mv, x, z, r * r, out) + return len(out) + } + for ix in ix0 .. ix1 + 1 { + for iz in iz0 .. iz1 + 1 { grid_within_cell(g, xs, zs, mcol, mv, x, z, r * r, ix, iz, out) } + } + return len(out) +} + +function grid_within_cell(g: Grid, xs: floats, zs: floats, mcol: words, mv: int, x: float, z: float, r2: float, ix: int, iz: int, out: words) -> void { + let k = grid_key(ix, iz) + var r = g.head[grid_bucket(g, ix, iz)] + while r > 0 { + let row = r - 1 + if g.key[row] == k and (mcol == null or mcol[row] == mv) { + let dx = xs[row] - x + let dz = zs[row] - z + if dx * dx + dz * dz <= r2 { push(out, row) } + } + r = g.next[row] + } +} + +function grid_within_scan(g: Grid, xs: floats, zs: floats, mcol: words, mv: int, x: float, z: float, r2: float, out: words) -> void { + for row in 0 .. len(g.key) { + if g.key[row] >= 0 and (mcol == null or mcol[row] == mv) { + let dx = xs[row] - x + let dz = zs[row] - z + if dx * dx + dz * dz <= r2 { push(out, row) } + } + } +} diff --git a/packages/ludic.base/ecs_group.ludic b/packages/ludic.base/ecs_group.ludic new file mode 100644 index 00000000..70246661 --- /dev/null +++ b/packages/ludic.base/ecs_group.ludic @@ -0,0 +1,20 @@ +# ludic.base/ecs_group.ludic - a group is every row an index files under one value: a kind, or a +# chunk of the world, loaded and let go together. A chunk's number packs its two cell coordinates. +export function chunk_of(x: float, z: float, size: float) -> int { + let cx = int(Math.floor(x / size)) + let cz = int(Math.floor(z / size)) + return ((cx & 32767) << 15) | (cz & 32767) +} + +# every row filed under v in ix removed (the observers told of each); how many went. The index's +# own list shrinks as each goes, so it is read from its end until it is empty. +export function tb_remove_all(tb: Table, ix: IntIndex, v: int) -> int { + var n = 0 + let rows = ix_rows(ix, v) + while len(rows) > 0 { + let h = tb.ent[rows[len(rows) - 1]] + if not tb_remove(tb, h) { return n } + n += 1 + } + return n +} diff --git a/packages/ludic.base/ecs_hooks.ludic b/packages/ludic.base/ecs_hooks.ludic new file mode 100644 index 00000000..b79f8656 --- /dev/null +++ b/packages/ludic.base/ecs_hooks.ludic @@ -0,0 +1,18 @@ +# ludic.base/ecs_hooks.ludic - observers on a table: told each handle as its row is made, and before +# it is removed, so what depends on a table (a drawing, a message) follows it without a scan +# an observer: a function handed an entity's handle (its states are supplied, like a system's) +export property TbHook { + run: fn(int) -> void = null +} + +# f is told every handle added from here on, and every handle about to be removed +export function tb_on_add(tb: Table, f: fn(int) -> void) -> void { + let hk = new TbHook + hk.run = f + push(tb.on_add, hk) +} +export function tb_on_remove(tb: Table, f: fn(int) -> void) -> void { + let hk = new TbHook + hk.run = f + push(tb.on_remove, hk) +} diff --git a/packages/ludic.base/ecs_index.ludic b/packages/ludic.base/ecs_index.ludic new file mode 100644 index 00000000..bf0f4cc3 --- /dev/null +++ b/packages/ludic.base/ecs_index.ludic @@ -0,0 +1,83 @@ +# ludic.base/ecs_index.ludic - a cached query: for each value of an int column (a kind), the rows +# holding it, kept current by the table's setters, so "every fire" is a list and "how many" a length +export property IntIndex { + col: int = 0 + gate: int = -1 # an int column: a row is filed only while it is non-zero (-1: always) + lists: []words = null # value -> its rows + pos: words = null # row -> where it stands in its value's list, -1 not filed + val: words = null # row -> the slot of the value it is filed under + empty: words = null # what a value with no rows answers + sparse: IntMap = null # a value past IX_DENSE (a chunk's packed cell) to its list's slot +} +export function tb_index(tb: Table, col: int, gate: int) -> IntIndex { + let ix = new IntIndex + ix.col = col + ix.gate = gate + ix.lists = new []words + ix.pos = words(0) + ix.val = words(0) + ix.empty = words(0) + ix.sparse = imap_new() + for r in 0 .. tb.n { ix_grow(ix) } + push(tb.idx, ix) + for r in 0 .. tb.n { tb_ix_refile(tb, ix, r) } + return ix +} + +# the rows filed under v - the index's own list: read it, never push to it +export function ix_rows(ix: IntIndex, v: int) -> words { + let s = ix_slot(ix, v, false) + if s < 0 { return ix.empty } + return ix.lists[s] +} +export function ix_count(ix: IntIndex, v: int) -> int { return len(ix_rows(ix, v)) } +# the first row filed under v, or -1 +export function ix_first(ix: IntIndex, v: int) -> int { + let rows = ix_rows(ix, v) + if len(rows) == 0 { return -1 } + return rows[0] +} + +function ix_grow(ix: IntIndex) -> void { + push(ix.pos, -1) + push(ix.val, -1) +} + +function ix_shrink(ix: IntIndex) -> void { + List.pop(ix.pos) + List.pop(ix.val) +} + +function ix_file(ix: IntIndex, r: int, v: int) -> void { + let s = ix_slot(ix, v, true) + if ix.pos[r] >= 0 and ix.val[r] == s { return } + ix_unfile(ix, r) + if s < 0 { return } + ix.pos[r] = len(ix.lists[s]) + ix.val[r] = s + push(ix.lists[s], r) +} + +# out of its list: the list's last row takes its place +function ix_unfile(ix: IntIndex, r: int) -> void { + let p = ix.pos[r] + if p < 0 { return } + let l = ix.lists[ix.val[r]] + let last = List.pop(l) + if last != r { + l[p] = last + ix.pos[last] = p + } + ix.pos[r] = -1 + ix.val[r] = -1 +} + +# row `from` becomes row `to` (which is not filed) +function ix_moved(ix: IntIndex, from: int, to: int) -> void { + let p = ix.pos[from] + ix.pos[to] = p + ix.val[to] = ix.val[from] + if p >= 0 { ix.lists[ix.val[from]][p] = to } + ix.pos[from] = -1 + ix.val[from] = -1 +} diff --git a/packages/ludic.base/ecs_index_slot.ludic b/packages/ludic.base/ecs_index_slot.ludic new file mode 100644 index 00000000..e35155c9 --- /dev/null +++ b/packages/ludic.base/ecs_index_slot.ludic @@ -0,0 +1,24 @@ +# ludic.base/ecs_index_slot.ludic - where a value's list lives: a small value (a kind) is its own +# slot; a large one (a chunk's packed cell) is given the next slot through a map, so a sparse +# value costs one list and not every list up to it +const IX_DENSE: int = 1024 # a value below this is its own slot; above, one is given it + +# the slot value v's list is in, -1 when it has none (and `make` did not ask for one) +function ix_slot(ix: IntIndex, v: int, make: bool) -> int { + if v < 0 { return -1 } + if v < IX_DENSE { + if v >= len(ix.lists) { + if not make { return -1 } + while len(ix.lists) <= v { push(ix.lists, words(0)) } + } + return v + } + var s = imap_get(ix.sparse, v, -1) + if s < 0 and make { + while len(ix.lists) < IX_DENSE { push(ix.lists, words(0)) } + s = len(ix.lists) + push(ix.lists, words(0)) + imap_put(ix.sparse, v, s) + } + return s +} diff --git a/packages/ludic.base/ecs_map.ludic b/packages/ludic.base/ecs_map.ludic new file mode 100644 index 00000000..ff2fca74 --- /dev/null +++ b/packages/ludic.base/ecs_map.ludic @@ -0,0 +1,79 @@ +# ludic.base/ecs_map.ludic - IntMap: a key (0 or more) to a value, open addressing with linear +# probing; what turns a stable id kept in a save or a message into a handle without a scan +export property IntMap { + keys: words = null # -1 empty, -2 a key that was deleted + vals: words = null + mask: int = 63 + n: int = 0 + used: int = 0 # live and deleted slots: what makes probing long +} + +export function imap_new() -> IntMap { + let m = new IntMap + imap_alloc(m, 64) + return m +} + +function imap_alloc(m: IntMap, cap: int) -> void { + m.keys = words(cap) + m.vals = words(cap) + for i in 0 .. cap { m.keys[i] = -1 } + m.mask = cap - 1 + m.n = 0 + m.used = 0 +} + +function imap_slot(m: IntMap, k: int) -> int { return ((k * -1640531535) >> 7) & m.mask } + +# the value under k, or `none` when there is none +export function imap_get(m: IntMap, k: int, none: int) -> int { + var s = imap_slot(m, k) + while m.keys[s] != -1 { + if m.keys[s] == k { return m.vals[s] } + s = (s + 1) & m.mask + } + return none +} + +export function imap_put(m: IntMap, k: int, v: int) -> void { + if (m.used + 1) * 4 > (m.mask + 1) * 3 { imap_grow(m) } + var s = imap_slot(m, k) + var tomb = -1 + while m.keys[s] != -1 { + if m.keys[s] == k { + m.vals[s] = v + return + } + if m.keys[s] == -2 and tomb < 0 { tomb = s } + s = (s + 1) & m.mask + } + if tomb >= 0 { s = tomb } else { m.used += 1 } + m.keys[s] = k + m.vals[s] = v + m.n += 1 +} + +export function imap_del(m: IntMap, k: int) -> bool { + var s = imap_slot(m, k) + while m.keys[s] != -1 { + if m.keys[s] == k { + m.keys[s] = -2 + m.n -= 1 + return true + } + s = (s + 1) & m.mask + } + return false +} + +export function imap_len(m: IntMap) -> int { return m.n } +export function imap_clear(m: IntMap) -> void { imap_alloc(m, m.mask + 1) } + +function imap_grow(m: IntMap) -> void { + let ok = m.keys + let ov = m.vals + var cap = m.mask + 1 + if m.n * 2 > cap { cap = cap * 2 } + imap_alloc(m, cap) + for i in 0 .. len(ok) { if ok[i] >= 0 { imap_put(m, ok[i], ov[i]) } } +} diff --git a/packages/ludic.base/ecs_plan.ludic b/packages/ludic.base/ecs_plan.ludic new file mode 100644 index 00000000..b5fdc99a --- /dev/null +++ b/packages/ludic.base/ecs_plan.ludic @@ -0,0 +1,46 @@ +# ludic.base/ecs_plan.ludic - a query that has both a grid and a kind index picks the cheaper way: +# a rare kind's own list scanned, a common one found by rings with the kind as the match +const PLAN_LIST_MAX: int = 192 # a kind with at most this many rows is scanned from its list + +export function tb_nearest_of(tb: Table, g: Grid, ix: IntIndex, x: float, z: float, maxr: float, v: int) -> int { + let n = ix_count(ix, v) + if n == 0 { return -1 } + if n > PLAN_LIST_MAX { return tb_nearest(tb, g, x, z, maxr, ix.col, v) } + let rows = ix.lists[v] + let xs = tb.f[g.cx] + let zs = tb.f[g.cz] + var best = -1 + var bd = 1000000000000.0 + if maxr > 0.0 { bd = maxr * maxr } + for k in 0 .. n { + let r = rows[k] + if g.gate >= 0 and tb.i[g.gate][r] == 0 { continue } + let dx = xs[r] - x + let dz = zs[r] - z + let d2 = dx * dx + dz * dz + if d2 < bd or (d2 == bd and best < 0) { + bd = d2 + best = r + } + } + return best +} + +# within r of (x, z), of kind v, into `out` +export function tb_within_of(tb: Table, g: Grid, ix: IntIndex, x: float, z: float, r: float, v: int, out: words) -> int { + let n = ix_count(ix, v) + if n > PLAN_LIST_MAX { return tb_within(tb, g, x, z, r, ix.col, v, out) } + List.clear(out) + if n == 0 { return 0 } + let rows = ix.lists[v] + let xs = tb.f[g.cx] + let zs = tb.f[g.cz] + for k in 0 .. n { + let row = rows[k] + if g.gate >= 0 and tb.i[g.gate][row] == 0 { continue } + let dx = xs[row] - x + let dz = zs[row] - z + if dx * dx + dz * dz <= r * r { push(out, row) } + } + return len(out) +} diff --git a/packages/ludic.base/ecs_table.ludic b/packages/ludic.base/ecs_table.ludic new file mode 100644 index 00000000..83f18337 --- /dev/null +++ b/packages/ludic.base/ecs_table.ludic @@ -0,0 +1,96 @@ +# ludic.base/ecs_table.ludic - a Table: entities as dense rows of hot columns (floats, words) +# and one record each for what is cold. A handle is a slot and a generation, so a stale one misses. +export const ECS_SLOT: int = 4194303 # the low 22 bits of a handle: its slot +export const ECS_GEN: int = 511 # the next 9: how many times the slot was reused +export const ECS_NONE: int = -1 + +export property Table { + n: int = 0 + rec: []T = null + ent: words = null # row -> handle + f: []floats = null # hot float columns, a value per row each + i: []words = null # hot int columns + added: words = null # row -> the tick it was added at + changed: words = null # row -> the tick a setter last wrote it at + blk: words = null # 64-row block -> the newest tick any row in it was added or written at + tick: int = 1 + slot_gen: words = null # slot -> generation + slot_row: words = null # slot -> row, -1 while free + free: words = null + grids: []Grid = null + idx: []IntIndex = null + on_add: []TbHook = null # observers: told a handle as its row is made, and before it goes + on_remove: []TbHook = null +} + + +# a table of nf float and ni int columns, every value 0 in a new row +export function table_new(nf: int, ni: int) -> Table { + let tb = new Table + tb.rec = new []T + tb.ent = words(0) + tb.f = new []floats + tb.i = new []words + for c in 0 .. nf { push(tb.f, floats(0)) } + for c in 0 .. ni { push(tb.i, words(0)) } + tb.added = words(0) + tb.changed = words(0) + tb.blk = words(0) + tb.slot_gen = words(0) + tb.slot_row = words(0) + tb.free = words(0) + tb.grids = new []Grid + tb.idx = new []IntIndex + tb.on_add = new []TbHook + tb.on_remove = new []TbHook + return tb +} + +export function tb_len(tb: Table) -> int { return tb.n } +export function tb_rec(tb: Table, row: int) -> T { return tb.rec[row] } +export function tb_handle(tb: Table, row: int) -> int { return tb.ent[row] } +export function tb_tick(tb: Table) -> int { return tb.tick } +# the next tick: what is written from here on is newer than anything before +export function tb_advance(tb: Table) -> void { tb.tick += 1 } + +# the row a handle names, or -1 when it was removed (or the slot has been reused since) +export function tb_row(tb: Table, h: int) -> int { + if h < 0 { return -1 } + let s = h & ECS_SLOT + if s >= len(tb.slot_gen) or tb.slot_gen[s] != ((h >> 22) & ECS_GEN) { return -1 } + return tb.slot_row[s] +} + +export function tb_alive(tb: Table, h: int) -> bool { return tb_row(tb, h) >= 0 } + +# a new row holding `r`, every column 0 and filed in no index until a setter says where it is +export function tb_add(tb: Table, r: T) -> int { + var s = 0 + if len(tb.free) > 0 { s = List.pop(tb.free) } else { + s = len(tb.slot_gen) + push(tb.slot_gen, 0) + push(tb.slot_row, -1) + } + tb.slot_row[s] = tb.n + let h = s | (tb.slot_gen[s] << 22) + push(tb.rec, r) + push(tb.ent, h) + push(tb.added, tb.tick) + push(tb.changed, tb.tick) + for c in 0 .. len(tb.f) { push(tb.f[c], 0.0) } + for c in 0 .. len(tb.i) { push(tb.i[c], 0) } + tb.n += 1 + for g in 0 .. len(tb.grids) { grid_grow(tb.grids[g]) } + for k in 0 .. len(tb.idx) { ix_grow(tb.idx[k]) } + tb_stamp(tb, tb.n - 1) + for k in 0 .. len(tb.on_add) { tb.on_add[k].run(h) } + return h +} + +# the row's tick, and its block's: what change detection reads +function tb_stamp(tb: Table, row: int) -> void { + tb.changed[row] = tb.tick + let b = row >> 6 + while len(tb.blk) <= b { push(tb.blk, 0) } + tb.blk[b] = tb.tick +} diff --git a/packages/ludic.base/ecs_table_remove.ludic b/packages/ludic.base/ecs_table_remove.ludic new file mode 100644 index 00000000..d7e0ccc7 --- /dev/null +++ b/packages/ludic.base/ecs_table_remove.ludic @@ -0,0 +1,49 @@ +# ludic.base/ecs_table_remove.ludic - removing a row moves the last one into its place, so the +# rows stay dense; every index is told, and the slot's generation moves on +export function tb_remove(tb: Table, h: int) -> bool { + if tb_row(tb, h) < 0 { return false } + for k in 0 .. len(tb.on_remove) { tb.on_remove[k].run(h) } + let r = tb_row(tb, h) + if r < 0 { return false } + for g in 0 .. len(tb.grids) { grid_unlink(tb.grids[g], r) } + for k in 0 .. len(tb.idx) { ix_unfile(tb.idx[k], r) } + let last = tb.n - 1 + if r != last { tb_move(tb, last, r) } + tb_pop(tb) + let s = h & ECS_SLOT + tb.slot_row[s] = -1 + tb.slot_gen[s] = (tb.slot_gen[s] + 1) & ECS_GEN + push(tb.free, s) + return true +} + +function tb_move(tb: Table, from: int, to: int) -> void { + tb.rec[to] = tb.rec[from] + tb.ent[to] = tb.ent[from] + tb.added[to] = tb.added[from] + tb.changed[to] = tb.changed[from] + for c in 0 .. len(tb.f) { tb.f[c][to] = tb.f[c][from] } + for c in 0 .. len(tb.i) { tb.i[c][to] = tb.i[c][from] } + tb.slot_row[tb.ent[to] & ECS_SLOT] = to + let b = to >> 6 + if tb.blk[b] < tb.changed[to] { tb.blk[b] = tb.changed[to] } + for g in 0 .. len(tb.grids) { grid_moved(tb.grids[g], from, to) } + for k in 0 .. len(tb.idx) { ix_moved(tb.idx[k], from, to) } +} + +function tb_pop(tb: Table) -> void { + List.pop(tb.rec) + List.pop(tb.ent) + List.pop(tb.added) + List.pop(tb.changed) + for c in 0 .. len(tb.f) { List.pop(tb.f[c]) } + for c in 0 .. len(tb.i) { List.pop(tb.i[c]) } + for g in 0 .. len(tb.grids) { grid_shrink(tb.grids[g]) } + for k in 0 .. len(tb.idx) { ix_shrink(tb.idx[k]) } + tb.n -= 1 +} + +# every row gone; the slots keep their generations, so an old handle still misses +export function tb_clear(tb: Table) -> void { + while tb.n > 0 { tb_remove(tb, tb.ent[tb.n - 1]) } +} diff --git a/packages/ludic.base/ecs_table_set.ludic b/packages/ludic.base/ecs_table_set.ludic new file mode 100644 index 00000000..8edb8bf8 --- /dev/null +++ b/packages/ludic.base/ecs_table_set.ludic @@ -0,0 +1,76 @@ +# ludic.base/ecs_table_set.ludic - the setters: a write stamps the row's tick and refiles it in +# every index that reads that column, so an index is never a frame behind what it indexes +export function tb_f(tb: Table, c: int, row: int) -> float { return tb.f[c][row] } +export function tb_i(tb: Table, c: int, row: int) -> int { return tb.i[c][row] } + +export function tb_set_f(tb: Table, c: int, row: int, v: float) -> void { + tb.f[c][row] = v + tb_stamp(tb, row) + for g in 0 .. len(tb.grids) { + let gr = tb.grids[g] + if gr.cx == c or gr.cz == c { tb_grid_refile(tb, gr, row) } + } +} + +# two float columns at once, filed once: a move +export function tb_set_xz(tb: Table, cx: int, cz: int, row: int, x: float, z: float) -> void { + tb.f[cx][row] = x + tb.f[cz][row] = z + tb_stamp(tb, row) + for g in 0 .. len(tb.grids) { + let gr = tb.grids[g] + if gr.cx == cx or gr.cz == cz or gr.cx == cz or gr.cz == cx { tb_grid_refile(tb, gr, row) } + } +} + +export function tb_set_i(tb: Table, c: int, row: int, v: int) -> void { + tb.i[c][row] = v + tb_stamp(tb, row) + for g in 0 .. len(tb.grids) { if tb.grids[g].gate == c { tb_grid_refile(tb, tb.grids[g], row) } } + for k in 0 .. len(tb.idx) { + let ix = tb.idx[k] + if ix.col == c or ix.gate == c { tb_ix_refile(tb, ix, row) } + } +} + +# a row written without a setter (tb.f / tb.i directly, for speed) is refiled everywhere by this +export function tb_refile(tb: Table, row: int) -> void { + tb_stamp(tb, row) + for g in 0 .. len(tb.grids) { tb_grid_refile(tb, tb.grids[g], row) } + for k in 0 .. len(tb.idx) { tb_ix_refile(tb, tb.idx[k], row) } +} + +export function tb_mark(tb: Table, row: int) -> void { tb_stamp(tb, row) } + +function tb_gate_on(tb: Table, gate: int, row: int) -> bool { return gate < 0 or tb.i[gate][row] != 0 } + +function tb_grid_refile(tb: Table, g: Grid, row: int) -> void { + grid_refile(g, row, tb.f[g.cx][row], tb.f[g.cz][row], tb_gate_on(tb, g.gate, row)) +} + +function tb_ix_refile(tb: Table, ix: IntIndex, row: int) -> void { + if tb_gate_on(tb, ix.gate, row) { ix_file(ix, row, tb.i[ix.col][row]) } else { ix_unfile(ix, row) } +} + +# change detection: the rows a setter wrote after `since`, into `out` (cleared first); no allocation +export function tb_changed_since(tb: Table, since: int, out: words) -> int { + List.clear(out) + for b in 0 .. len(tb.blk) { + if tb.blk[b] <= since { continue } + var end = b * 64 + 64 + if end > tb.n { end = tb.n } + for r in b * 64 .. end { if tb.changed[r] > since { push(out, r) } } + } + return len(out) +} + +export function tb_added_since(tb: Table, since: int, out: words) -> int { + List.clear(out) + for b in 0 .. len(tb.blk) { + if tb.blk[b] <= since { continue } + var end = b * 64 + 64 + if end > tb.n { end = tb.n } + for r in b * 64 .. end { if tb.added[r] > since { push(out, r) } } + } + return len(out) +} diff --git a/packages/ludic.base/index.ludic b/packages/ludic.base/index.ludic index aab1d11b..ce4c44da 100644 --- a/packages/ludic.base/index.ludic +++ b/packages/ludic.base/index.ludic @@ -8,3 +8,17 @@ import "rng.ludic" import "save.ludic" import "save_fields.ludic" import "system.ludic" +import "ecs_table.ludic" +import "ecs_hooks.ludic" +import "ecs_table_remove.ludic" +import "ecs_table_set.ludic" +import "ecs_grid.ludic" +import "ecs_grid_file.ludic" +import "ecs_grid_query.ludic" +import "ecs_grid_within.ludic" +import "ecs_grid_where.ludic" +import "ecs_index.ludic" +import "ecs_index_slot.ludic" +import "ecs_map.ludic" +import "ecs_plan.ludic" +import "ecs_group.ludic" diff --git a/packages/ludic.base/queue.ludic b/packages/ludic.base/queue.ludic index ff3f2a2c..521a85e2 100644 --- a/packages/ludic.base/queue.ludic +++ b/packages/ludic.base/queue.ludic @@ -3,6 +3,8 @@ export property Queue { items: []T = null tag: QueueTag = null + none: []T = null # what draining an empty queue hands back, never pushed to + spare: []T = null # the list the last drain handed out: cleared and reused by the next } # what a queue says about itself, whatever it holds: its name and how many facts wait in it export property QueueTag { @@ -22,6 +24,8 @@ export function queue_new(name: string) -> Queue { q.items = new []T q.tag = new QueueTag q.tag.name = name + q.none = new []T + q.spare = new []T return q } @@ -30,18 +34,25 @@ export function q_push(q: Queue, v: T) -> void { q.tag.pending = len(q.items) } -# the facts in the order they were pushed; the queue is empty afterwards +# the facts in the order they were pushed; the queue is empty afterwards. Ludic frees nothing, so +# a drain allocates nothing: the queue keeps two lists and hands one out while the other fills, and +# an empty drain hands back one shared empty list. What a drain returns is good until the NEXT +# drain of the same queue - read it, never push to it, never keep it. export function q_drain(q: Queue) -> []T { + if len(q.items) == 0 { return q.none } let out = q.items - q.items = new []T + List.clear(q.spare) + q.items = q.spare + q.spare = out q.tag.pending = 0 return out } export function q_len(q: Queue) -> int { return len(q.items) } +# in place: the live list was never handed out (a drain gives its list away and starts another) export function q_clear(q: Queue) -> void { - q.items = new []T + List.clear(q.items) q.tag.pending = 0 } diff --git a/packages/ludic.base/tests/ecs_fuzz_test.ludic b/packages/ludic.base/tests/ecs_fuzz_test.ludic new file mode 100644 index 00000000..e1a39567 --- /dev/null +++ b/packages/ludic.base/tests/ecs_fuzz_test.ludic @@ -0,0 +1,130 @@ +# ecs_fuzz_test.ludic - thousands of random adds, removes, moves, kind changes and gate flips, and +# after every burst the grid and the kind index answer exactly what a scan of the rows answers +import "ludic.base" +program EcsFuzzTest { + numbers float + property Toy { n: int = 0 } + const CX: int = 0 + const CZ: int = 1 + const KIND: int = 0 + const ON: int = 1 + const KINDS: int = 6 + + state FuzzState { + seed: int = 12345 + } + + function rnd(fz: mut FuzzState, n: int) -> int { + fz.seed = (fz.seed * 1103515245 + 12345) & 2147483647 + return (fz.seed >> 8) % n + } + function rpos(fz: mut FuzzState) -> float { return float(rnd(fz, 40000)) / 10.0 - 2000.0 } + + function step(fz: mut FuzzState, tb: Table) -> void { + let op = rnd(fz, 10) + if op < 4 or tb_len(tb) == 0 { + let toy = new Toy + toy.n = rnd(fz, 5) + let r = tb_row(tb, tb_add(tb, toy)) + tb_set_xz(tb, CX, CZ, r, rpos(fz), rpos(fz)) + tb_set_i(tb, KIND, r, rnd(fz, KINDS)) + tb_set_i(tb, ON, r, rnd(fz, 4) % 3) + return + } + let r = rnd(fz, tb_len(tb)) + if op < 6 { tb_remove(tb, tb_handle(tb, r)) } else if op < 8 { + tb_set_xz(tb, CX, CZ, r, tb_f(tb, CX, r) + float(rnd(fz, 200)) - 100.0, tb_f(tb, CZ, r) + float(rnd(fz, 200)) - 100.0) + } else if op < 9 { tb_set_i(tb, KIND, r, rnd(fz, KINDS)) } else { tb_set_i(tb, ON, r, 1 - tb_i(tb, ON, r)) } + } + + # the scan's answer: the smallest squared distance among on rows matching, or -1 + function brute_d2(tb: Table, x: float, z: float, maxr: float, kind: int) -> float { + var best = -1.0 + for r in 0 .. tb_len(tb) { + if tb_i(tb, ON, r) == 0 or (kind >= 0 and tb_i(tb, KIND, r) != kind) { continue } + let dx = tb_f(tb, CX, r) - x + let dz = tb_f(tb, CZ, r) - z + let d2 = dx * dx + dz * dz + if (maxr <= 0.0 or d2 <= maxr * maxr) and (best < 0.0 or d2 < best) { best = d2 } + } + return best + } + + function keep_even(t: Toy) -> bool { return t.n % 2 == 0 } + + function brute_even(tb: Table, x: float, z: float, maxr: float) -> float { + var best = -1.0 + for r in 0 .. tb_len(tb) { + if tb_i(tb, ON, r) == 0 or tb_rec(tb, r).n % 2 != 0 { continue } + let dx = tb_f(tb, CX, r) - x + let dz = tb_f(tb, CZ, r) - z + let d2 = dx * dx + dz * dz + if (maxr <= 0.0 or d2 < maxr * maxr) and (best < 0.0 or d2 < best) { best = d2 } + } + return best + } + + function where_check(tb: Table, g: Grid, ix: IntIndex, x: float, z: float, maxr: float, kind: int, recs: []Toy) -> void { + let want = brute_even(tb, x, z, maxr) + let row = tb_nearest_where(tb, g, x, z, maxr, fn keep_even) + if want < 0.0 { expect_eq(row, -1) } else { + let dx = tb_f(tb, CX, row) - x + let dz = tb_f(tb, CZ, row) - z + expect(dx * dx + dz * dz == want) + } + expect_eq(tb_within_recs(tb, g, x, z, 150.0, -1, 0, recs), brute_within(tb, x, z, 150.0, -1)) + if kind >= 0 { expect_eq(tb_within_of_recs(tb, g, ix, x, z, 150.0, kind, recs), brute_within(tb, x, z, 150.0, kind)) } + } + + function brute_within(tb: Table, x: float, z: float, r: float, kind: int) -> int { + var n = 0 + for i in 0 .. tb_len(tb) { + if tb_i(tb, ON, i) == 0 or (kind >= 0 and tb_i(tb, KIND, i) != kind) { continue } + let dx = tb_f(tb, CX, i) - x + let dz = tb_f(tb, CZ, i) - z + if dx * dx + dz * dz <= r * r { n += 1 } + } + return n + } + + function check(fz: mut FuzzState, tb: Table, g: Grid, ix: IntIndex, out: words, recs: []Toy) -> void { + for q in 0 .. 20 { + let x = rpos(fz) + let z = rpos(fz) + let kind = rnd(fz, KINDS + 1) - 1 + var maxr = 0.0 + if q % 2 == 1 { maxr = float(rnd(fz, 600)) } + var mc = KIND + if kind < 0 { mc = -1 } + let want = brute_d2(tb, x, z, maxr, kind) + let row = tb_nearest(tb, g, x, z, maxr, mc, kind) + if want < 0.0 { expect_eq(row, -1) } else { + expect(row >= 0) + let dx = tb_f(tb, CX, row) - x + let dz = tb_f(tb, CZ, row) - z + expect(dx * dx + dz * dz == want) + } + where_check(tb, g, ix, x, z, maxr, kind, recs) + let rad = float(rnd(fz, 400)) + expect_eq(tb_within(tb, g, x, z, rad, mc, kind, out), brute_within(tb, x, z, rad, kind)) + } + for k in 0 .. KINDS { expect_eq(ix_count(ix, k), brute_within(tb, 0.0, 0.0, 100000.0, k)) } + } + + function fuzz_case(fz: mut FuzzState) -> void { + let tb: Table = table_new(2, 2) + let g = tb_grid(tb, CX, CZ, ON, 16.0) + let ix = tb_index(tb, KIND, ON) + let out = words(0) + let recs = new []Toy + for burst in 0 .. 60 { + for s in 0 .. 150 { step(fz, tb) } + check(fz, tb, g, ix, out, recs) + } + tb_clear(tb) + expect_eq(grid_count(g), 0) + expect_eq(ix_count(ix, 1), 0) + } + + test "the grid and the kind index agree with a scan through 9000 random changes" (fz: mut FuzzState) { fuzz_case(fz) } +} diff --git a/packages/ludic.base/tests/ecs_test.ludic b/packages/ludic.base/tests/ecs_test.ludic new file mode 100644 index 00000000..fd9d5731 --- /dev/null +++ b/packages/ludic.base/tests/ecs_test.ludic @@ -0,0 +1,186 @@ +# ecs_test.ludic - Table: handles that go stale, dense rows after a removal, the setters keeping +# the grid and the kind index current, change ticks, and IntMap. Each case is a function because a +# generic call is not resolved inside a `test` body yet. +import "ludic.base" +program EcsTest { + numbers float + property Toy { name: string = "" } + const CX: int = 0 + const CZ: int = 1 + const KIND: int = 0 + const ON: int = 1 + + state HookState { + added: int = 0 + gone: int = 0 + last: int = -1 + } + function seen_add(hook_st: mut HookState, h: int) -> void { + hook_st.added += 1 + hook_st.last = h + } + function seen_gone(hook_st: mut HookState, h: int) -> void { hook_st.gone += 1 } + + function toy(name: string) -> Toy { + let t = new Toy + t.name = name + return t + } + + function put(tb: Table, name: string, x: float, z: float, kind: int) -> int { + let h = tb_add(tb, toy(name)) + let r = tb_row(tb, h) + tb_set_xz(tb, CX, CZ, r, x, z) + tb_set_i(tb, KIND, r, kind) + tb_set_i(tb, ON, r, 1) + return h + } + + function handles_case() -> void { + let tb: Table = table_new(2, 2) + let a = put(tb, "a", 0.0, 0.0, 1) + let b = put(tb, "b", 1.0, 0.0, 1) + let c = put(tb, "c", 2.0, 0.0, 2) + expect_eq(tb_len(tb), 3) + expect(tb_remove(tb, a)) + expect(not tb_alive(tb, a)) + expect(not tb_remove(tb, a)) + expect_eq(tb_len(tb), 2) + expect_eq(tb_rec(tb, tb_row(tb, c)).name, "c") + expect_eq(tb_rec(tb, tb_row(tb, b)).name, "b") + let d = put(tb, "d", 3.0, 0.0, 1) + expect(d != a) + expect_eq(d & ECS_SLOT, a & ECS_SLOT) + expect(not tb_alive(tb, a)) + expect_eq(tb_rec(tb, tb_row(tb, d)).name, "d") + } + + function grid_case() -> void { + let tb: Table = table_new(2, 2) + let g = tb_grid(tb, CX, CZ, ON, 16.0) + let near = put(tb, "near", 5.0, 5.0, 1) + put(tb, "far", 500.0, -300.0, 1) + let fire = put(tb, "fire", -40.0, 2.0, 2) + expect_eq(tb_handle(tb, tb_nearest(tb, g, 0.0, 0.0, 0.0, -1, 0)), near) + expect_eq(tb_handle(tb, tb_nearest(tb, g, 0.0, 0.0, 0.0, KIND, 2)), fire) + expect_eq(tb_nearest(tb, g, 0.0, 0.0, 10.0, KIND, 2), -1) + tb_set_i(tb, ON, tb_row(tb, near), 0) + expect_eq(tb_handle(tb, tb_nearest(tb, g, 0.0, 0.0, 0.0, KIND, 1)), tb_handle(tb, tb_nearest(tb, g, 499.0, -300.0, 0.0, -1, 0))) + let out = words(0) + expect_eq(tb_within(tb, g, 0.0, 0.0, 50.0, -1, 0, out), 1) + tb_set_i(tb, ON, tb_row(tb, near), 1) + expect_eq(tb_within(tb, g, 0.0, 0.0, 50.0, -1, 0, out), 2) + tb_set_xz(tb, CX, CZ, tb_row(tb, fire), 900.0, 900.0) + expect_eq(tb_within(tb, g, 0.0, 0.0, 50.0, -1, 0, out), 1) + } + + function index_case() -> void { + let tb: Table = table_new(2, 2) + let ix = tb_index(tb, KIND, ON) + let a = put(tb, "a", 0.0, 0.0, 3) + put(tb, "b", 0.0, 0.0, 3) + put(tb, "c", 0.0, 0.0, 5) + expect_eq(ix_count(ix, 3), 2) + expect_eq(ix_count(ix, 5), 1) + expect_eq(ix_count(ix, 99), 0) + tb_set_i(tb, ON, tb_row(tb, a), 0) + expect_eq(ix_count(ix, 3), 1) + tb_remove(tb, a) + tb_set_i(tb, KIND, ix_first(ix, 3), 5) + expect_eq(ix_count(ix, 3), 0) + expect_eq(ix_count(ix, 5), 2) + } + + function ticks_case() -> void { + let tb: Table = table_new(2, 2) + let a = put(tb, "a", 0.0, 0.0, 1) + put(tb, "b", 0.0, 0.0, 1) + let seen = tb_tick(tb) + tb_advance(tb) + let out = words(0) + expect_eq(tb_changed_since(tb, seen, out), 0) + tb_set_f(tb, CX, tb_row(tb, a), 4.0) + expect_eq(tb_changed_since(tb, seen, out), 1) + expect_eq(out[0], tb_row(tb, a)) + expect_eq(tb_added_since(tb, seen, out), 0) + } + + function map_case() -> void { + let m = imap_new() + for k in 0 .. 5000 { imap_put(m, k * 7, k) } + expect_eq(imap_len(m), 5000) + expect_eq(imap_get(m, 700, -1), 100) + expect_eq(imap_get(m, 701, -1), -1) + for k in 0 .. 2500 { imap_del(m, k * 14) } + expect_eq(imap_len(m), 2500) + expect_eq(imap_get(m, 14, -1), -1) + expect_eq(imap_get(m, 21, -1), 3) + imap_put(m, 14, 9) + expect_eq(imap_get(m, 14, -1), 9) + } + + function hooks_case(hook_st: HookState) -> void { + let tb: Table = table_new(2, 2) + tb_on_add(tb, fn seen_add) + tb_on_remove(tb, fn seen_gone) + let a = put(tb, "a", 0.0, 0.0, 1) + expect_eq(hook_st.last, a) + put(tb, "b", 0.0, 0.0, 1) + tb_remove(tb, a) + tb_remove(tb, a) + expect_eq(hook_st.added, 2) + expect_eq(hook_st.gone, 1) + } + + # 300 rows over five blocks; a change in one block is found, the untouched blocks skipped + function blocks_case() -> void { + let tb: Table = table_new(2, 2) + for i in 0 .. 300 { put(tb, "x", float(i), 0.0, 1) } + let seen = tb_tick(tb) + tb_advance(tb) + let out = words(0) + expect_eq(tb_changed_since(tb, seen, out), 0) + tb_set_f(tb, CX, 200, 9.0) + tb_set_f(tb, CX, 7, 9.0) + expect_eq(tb_changed_since(tb, seen, out), 2) + expect_eq(out[0], 7) + expect_eq(out[1], 200) + let before = tb_tick(tb) + tb_advance(tb) + tb_remove(tb, tb_handle(tb, 3)) + expect_eq(tb_changed_since(tb, before, out), 0) # a row moved into a gap was not written + expect_eq(tb_changed_since(tb, seen, out), 2) # a removal is told by tb_on_remove + } + + # values far apart (a chunk's packed cell) each take one list, not every list up to them + function sparse_case() -> void { + let tb: Table = table_new(2, 2) + let ix = tb_index(tb, KIND, -1) + let a = chunk_of(9000.0, -9000.0, 256.0) + let b = chunk_of(-512.0, 700.0, 256.0) + expect(a > 100000 and b > 100000) + put(tb, "a", 0.0, 0.0, a) + put(tb, "b", 0.0, 0.0, b) + let c = put(tb, "c", 0.0, 0.0, a) + put(tb, "d", 0.0, 0.0, 3) + expect_eq(ix_count(ix, a), 2) + expect_eq(ix_count(ix, b), 1) + expect_eq(ix_count(ix, 3), 1) + expect(len(ix.lists) < 1100) + tb_set_i(tb, KIND, tb_row(tb, c), b) + expect_eq(ix_count(ix, a), 1) + expect_eq(ix_count(ix, b), 2) + expect_eq(tb_remove_all(tb, ix, b), 2) + expect_eq(ix_count(ix, b), 0) + expect_eq(tb_len(tb), 2) + } + + test "a sparse value takes one list" () { sparse_case() } + test "observers hear each add, and a remove once" (hook_st: HookState) { hooks_case(hook_st) } + test "change detection skips the blocks nobody wrote" () { blocks_case() } + test "a removed handle misses, rows stay dense, a reused slot is a new handle" () { handles_case() } + test "the grid answers nearest and within, gated, after moves" () { grid_case() } + test "the kind index follows the setters, the gate and removals" () { index_case() } + test "change ticks name the rows written since" () { ticks_case() } + test "IntMap puts, finds, deletes and grows" () { map_case() } +} diff --git a/packages/ludic.base/tests/queue_test.ludic b/packages/ludic.base/tests/queue_test.ludic index 0d2c9a81..cbf46091 100644 --- a/packages/ludic.base/tests/queue_test.ludic +++ b/packages/ludic.base/tests/queue_test.ludic @@ -67,7 +67,44 @@ program QueueTest { expect_eq(len(core_undrained(tags)), 0) } + # an empty drain allocates nothing and hands back the same empty list; a drained list is the + # caller's, untouched by what is pushed or cleared after it + function empty_case() -> void { + let q: Queue = queue_new("quiet") + let a = q_drain(q) + let b = q_drain(q) + expect_eq(len(a), 0) + expect(a == b) + q_push(q, 5) + expect_eq(len(a), 0) + let got = q_drain(q) + q_push(q, 6) + q_clear(q) + expect_eq(len(got), 1) + expect_eq(got[0], 5) + expect_eq(q_len(q), 0) + expect_eq(len(q_drain(q)), 0) + } + test "a queue drains in the order it was pushed" () { fifo_case() } + # two lists, reused: a drained list is the caller's until the next drain of that queue + function reuse_case() -> void { + let q: Queue = queue_new("reused") + q_push(q, 1) + let a = q_drain(q) + q_push(q, 2) + expect_eq(a[0], 1) + let b = q_drain(q) + expect_eq(b[0], 2) + q_push(q, 3) + let c = q_drain(q) + expect(c == a) + expect_eq(len(c), 1) + expect_eq(c[0], 3) + } + + test "a drain reuses the queue's two lists" () { reuse_case() } + test "an empty drain allocates nothing, and a drained list is the caller's" () { empty_case() } test "a queue holds records" () { record_case() } test "clear drops what is waiting" () { clear_case() } test "a queue's element type is told by the queue alone" () { infer_case() } diff --git a/packages/ludic.render3d/actor.ludic b/packages/ludic.render3d/actor.ludic index 96128dc1..917193f6 100644 --- a/packages/ludic.render3d/actor.ludic +++ b/packages/ludic.render3d/actor.ludic @@ -30,6 +30,7 @@ property Actor { cast_hidden: bool = false, casts: bool = true, id: int = 0, + row: int = -1, # where it stands in ac_actors, so it leaves in O(1); -1 off the stage cutout: bool = false, # alpha-tested (a flame's cards) emissive: float = 0.0, # float bits: self-lit strength skin: Skin, # this instance's own pose (skin_clone); null: the model's @@ -82,11 +83,27 @@ function actor_init(render3d_st: mut Render3dState) -> void { render3d_st.ac_out_cut = ac_prog_new(render3d_st, "skin.vert", "outline.frag", "#define OUTLINE\n#define ALPHA_TEST\n") render3d_st.ac_actors = new []Actor } +# off the stage: the last actor takes its row, so the list stays dense and nothing is rebuilt +# (it was a new list of every other actor per removal, never freed) function actor_remove(render3d_st: mut Render3dState, a: Actor) -> void { - if render3d_st.ac_actors == null { return } - let keep = new []Actor - for i in 0 .. len(render3d_st.ac_actors) { if render3d_st.ac_actors[i].id != a.id { push(keep, render3d_st.ac_actors[i]) } } - render3d_st.ac_actors = keep + let l = render3d_st.ac_actors + if l == null or a == null { return } + let r = a.row + if r < 0 or r >= len(l) or l[r].id != a.id { return } + let last = List.pop(l) + if last.id != a.id { + l[r] = last + last.row = r + } + a.row = -1 +} + +# back on the stage (an actor kept across a world swap) +function actor_keep(render3d_st: mut Render3dState, a: Actor) -> void { + if a == null { return } + if render3d_st.ac_actors == null { render3d_st.ac_actors = new []Actor } + a.row = len(render3d_st.ac_actors) + push(render3d_st.ac_actors, a) } # colour one named part of the model (a material name from the file) function actor_tint_part(a: Actor, name: string, r: float, g: float, b: float) -> void { @@ -114,8 +131,7 @@ function actor_new(render3d_st: mut Render3dState, model: Model) -> Actor { render3d_st.ac_next_id += 1; a.id = render3d_st.ac_next_id if model != null { a.radius = Math.max(model.radius, model.height) + 1.0 } a.cull = 450.0 - if render3d_st.ac_actors == null { render3d_st.ac_actors = new []Actor } - push(render3d_st.ac_actors, a) + actor_keep(render3d_st, a) return a } @@ -396,6 +412,8 @@ function ac_caster_count(render3d_st: mut Render3dState, a: Actor) -> void { # every actor off the stage at once, for a world being replaced. Actors own no GL objects; # their models belong to whoever loaded them. function actor_clear_all(render3d_st: mut Render3dState) -> void { - render3d_st.ac_actors = new []Actor + if render3d_st.ac_actors == null { render3d_st.ac_actors = new []Actor } + for i in 0 .. len(render3d_st.ac_actors) { render3d_st.ac_actors[i].row = -1 } + List.clear(render3d_st.ac_actors) outline_clear(render3d_st) } diff --git a/packages/ludic.things/chunks.ludic b/packages/ludic.things/chunks.ludic new file mode 100644 index 00000000..d337f4ed --- /dev/null +++ b/packages/ludic.things/chunks.ludic @@ -0,0 +1,34 @@ +# chunks.ludic - the Things of one chunk of the world, counted and let go together: what a streamed +# world asks when a chunk is loaded or dropped. A chunk is chunk_of(x, z, TH_CHUNK_M). +export function things_chunk(x: float, z: float) -> int { return chunk_of(x, z, TH_CHUNK_M) } + +export function things_chunk_count(things_st: ThingsState, chunk: int) -> int { return ix_count(things_st.th.chunks, chunk) } + +# every Thing standing in the chunk removed for good, the port and the facts told of each as +# thing_remove tells them; how many went +export function things_drop_chunk(things_st: mut ThingsState, chunk: int) -> int { + var n = 0 + let rows = ix_rows(things_st.th.chunks, chunk) + while len(rows) > 0 { + thing_remove(things_st, things_st.th.tab.rec[rows[len(rows) - 1]]) + n += 1 + } + return n +} + +# change detection: the tick now, the table moving on to the next - a consumer keeps what this +# returned and asks things_changed(since: it) for what was written after +export function things_now(things_st: mut ThingsState) -> int { + let t = tb_tick(things_st.th.tab) + tb_advance(things_st.th.tab) + return t +} + +# every Thing a verb wrote after `since`, into the caller's list (untouched 64-row blocks skipped) +export function things_changed(things_st: ThingsState, since: int, rows: words, out: []Thing) -> int { + List.clear(out) + let tb = things_st.th.tab + let n = tb_changed_since(tb, since, rows) + for k in 0 .. n { push(out, tb.rec[rows[k]]) } + return n +} diff --git a/packages/ludic.things/dispatch.ludic b/packages/ludic.things/dispatch.ludic index c00fcc20..3c5a3f1e 100644 --- a/packages/ludic.things/dispatch.ludic +++ b/packages/ludic.things/dispatch.ludic @@ -45,14 +45,22 @@ export function thing_is_personal(t: Thing) -> bool { return thing_kind_ok(t.kin # set down by someone rather than grown by the world: the kind says, and the port has the last word export function thing_is_put_down(t: Thing) -> bool { return ThingsWorld.put_down(t) } -# every active Thing whose kind ticks, `hours` of the world's clock on -export function things_tick(things_st: ThingsState, hours: float) -> void { - let all = things_all(things_st) - for i in 0 .. len(all) { - let t = all[i] - if not t.active or not thing_kind_ok(t.kind) { continue } - let k = ThingKinds[t.kind] - if k.tick != null { k.tick(t, hours) } +# every active Thing whose kind ticks, `hours` of the world's clock on: only the kinds that tick +# are visited, through the kind index, from a list of handles taken first - a tick may hide one +export function things_tick(things_st: mut ThingsState, hours: float) -> void { + let hs = things_st.th_hs + List.clear(hs) + let tb = things_st.th.tab + for k in 0 .. TH_COUNT { + if ThingKinds[k].tick == null { continue } + let rows = ix_rows(things_st.th.kinds, k) + for i in 0 .. len(rows) { push(hs, tb.ent[rows[i]]) } + } + for i in 0 .. len(hs) { + let r = tb_row(tb, hs[i]) + if r < 0 { continue } + let t = tb.rec[r] + if t.active { ThingKinds[t.kind].tick(t, hours) } } } diff --git a/packages/ludic.things/index.ludic b/packages/ludic.things/index.ludic index 760476c8..28a38b7b 100644 --- a/packages/ludic.things/index.ludic +++ b/packages/ludic.things/index.ludic @@ -6,6 +6,10 @@ import "ludic.base" import "kinds.ludic" import "port.ludic" import "store.ludic" +import "verbs.ludic" +import "moves.ludic" import "queries.ludic" +import "near.ludic" +import "chunks.ludic" import "dispatch.ludic" import "system.ludic" diff --git a/packages/ludic.things/kinds.ludic b/packages/ludic.things/kinds.ludic index cad1cacc..aeef1c75 100644 --- a/packages/ludic.things/kinds.ludic +++ b/packages/ludic.things/kinds.ludic @@ -19,6 +19,8 @@ export property Thing { sz: float = 0.0 syaw: float = 0.0 shared: bool = false # the game copies it to others (a party) + ent: int = -1 # its handle in the table, -1 once removed + tab: Table = null # the table holding it, so a verb on the Thing alone keeps the indexes } export property ThingKind { diff --git a/packages/ludic.things/moves.ludic b/packages/ludic.things/moves.ludic new file mode 100644 index 00000000..0d1061d8 --- /dev/null +++ b/packages/ludic.things/moves.ludic @@ -0,0 +1,55 @@ +# moves.ludic - a Thing moved, shown or hidden: the record and its row together, so the grid, the +# kind indexes and the chunk index never answer for where it was or what it was +export function thing_move(t: Thing, x: float, z: float, yaw: float) -> void { + thing_move_to(t, x, ThingsWorld.ground(x, z), z, yaw) +} + +export function thing_move_to(t: Thing, x: float, y: float, z: float, yaw: float) -> void { + thing_place_at(t, x, y, z, yaw) + ThingsWorld.moved(t) +} + +# moved without telling the port: a stand-in the game draws itself, or nothing draws +export function thing_place_at(t: Thing, x: float, y: float, z: float, yaw: float) -> void { + t.x = x + t.y = y + t.z = z + t.yaw = yaw + let r = th_row(t) + if r >= 0 { th_moved(t.tab, r, x, z) } +} + +export function thing_set_active(t: Thing, on: bool) -> void { + if t == null { return } + thing_set_on(t, on) + ThingsWorld.shown(t) +} +export function thing_hide(t: Thing) -> void { thing_set_active(t, false) } +export function thing_show(t: Thing) -> void { thing_set_active(t, true) } + +# active or not without telling the port +export function thing_set_on(t: Thing, on: bool) -> void { + if t == null { return } + t.active = on + let r = th_row(t) + if r < 0 { return } + var v = 0 + if on { v = 1 } + tb_set_i(t.tab, TH_ON, r, v) +} + +# where it stands on the ground plane, without telling the port (its height is the caller's) +export function thing_set_xz(t: Thing, x: float, z: float) -> void { + if t == null { return } + t.x = x + t.z = z + let r = th_row(t) + if r >= 0 { th_moved(t.tab, r, x, z) } +} + +# where a row now stands: its columns, its cell in the grid and its chunk +function th_moved(tb: Table, r: int, x: float, z: float) -> void { + tb_set_xz(tb, TH_X, TH_Z, r, x, z) + let c = chunk_of(x, z, TH_CHUNK_M) + if tb.i[TH_CHUNK][r] != c { tb_set_i(tb, TH_CHUNK, r, c) } +} diff --git a/packages/ludic.things/near.ludic b/packages/ludic.things/near.ludic new file mode 100644 index 00000000..27a4063a --- /dev/null +++ b/packages/ludic.things/near.ludic @@ -0,0 +1,35 @@ +# near.ludic - the neighbourhood questions a frame asks many times: what is around a point, of any +# kind or of one, into a list the CALLER keeps (in its own state, reused every frame), from the grid +# or the kind's own list - never a walk of every Thing, and nothing allocated or written here +export function things_near(things_st: ThingsState, x: float, z: float, r: float, out: []Thing) -> int { + return tb_within_recs(things_st.th.tab, things_st.th.grid, x, z, r, -1, 0, out) +} + +export function things_near_of(things_st: ThingsState, kind: int, x: float, z: float, r: float, out: []Thing) -> int { + return tb_within_of_recs(things_st.th.tab, things_st.th.grid, things_st.th.kinds, x, z, r, kind, out) +} + +# the nearest active Thing within maxr (0: any distance) that `keep` says yes to, or null +export function thing_nearest_where(things_st: ThingsState, x: float, z: float, maxr: float, keep: fn(Thing) -> bool) -> Thing { + let r = tb_nearest_where(things_st.th.tab, things_st.th.grid, x, z, maxr, keep) + if r < 0 { return null } + return things_st.th.tab.rec[r] +} + +# every one of a kind, active or not, counted and walked without a list +export function things_count_all_of(things_st: ThingsState, kind: int) -> int { return ix_count(things_st.th.every, kind) } + +export function thing_of_kind_all(things_st: ThingsState, kind: int, i: int) -> Thing { + let rows = ix_rows(things_st.th.every, kind) + if i < 0 or i >= len(rows) { return null } + return things_st.th.tab.rec[rows[i]] +} + +# the nearest active one of a kind (below 0: any) strictly within maxr of (x, z), or null +export function thing_nearest_within(things_st: ThingsState, kind: int, x: float, z: float, maxr: float) -> Thing { + let tb = things_st.th.tab + var r = -1 + if kind < 0 { r = tb_nearest(tb, things_st.th.grid, x, z, maxr, -1, 0) } else { r = tb_nearest_of(tb, things_st.th.grid, things_st.th.kinds, x, z, maxr, kind) } + if r < 0 { return null } + return tb.rec[r] +} diff --git a/packages/ludic.things/queries.ludic b/packages/ludic.things/queries.ludic index 82f9961d..fd2c919b 100644 --- a/packages/ludic.things/queries.ludic +++ b/packages/ludic.things/queries.ludic @@ -1,38 +1,43 @@ -# queries.ludic - where the Things are. Only active Things answer, except thing_by_uid and -# things_each_all, which ask about everything that exists. A kind below 0 is any kind. +# queries.ludic - where the Things are, answered by the table's indexes rather than a scan. Only +# active Things answer, except thing_by_uid and things_each_all, which ask about everything that +# exists. A kind below 0 is any kind. function th_of(t: Thing, kind: int) -> bool { return kind < 0 or t.kind == kind } -# the first active one of a kind (and of that id, unless id < 0), in the order placed +# the first-placed active one of a kind (and of that id, unless id < 0) export function thing_find(things_st: ThingsState, kind: int, id: int) -> Thing { - let all = things_all(things_st) - for i in 0 .. len(all) { - let t = all[i] - if t.active and th_of(t, kind) and (id < 0 or t.id == id) { return t } + let tb = things_st.th.tab + var best: Thing = null + if kind < 0 { + for r in 0 .. tb_len(tb) { best = th_earlier(best, tb.rec[r], id) } + return best } - return null + let rows = ix_rows(things_st.th.kinds, kind) + for k in 0 .. len(rows) { best = th_earlier(best, tb.rec[rows[k]], id) } + return best +} + +# the one of the two placed first that is active and has the id asked for +function th_earlier(best: Thing, t: Thing, id: int) -> Thing { + if not t.active or (id >= 0 and t.id != id) { return best } + if best == null or t.uid < best.uid { return t } + return best } export function thing_by_uid(things_st: ThingsState, uid: int) -> Thing { - let all = things_all(things_st) - for i in 0 .. len(all) { if all[i].uid == uid { return all[i] } } - return null + let r = tb_row(things_st.th.tab, imap_get(things_st.th_uids, uid, -1)) + if r < 0 { return null } + return things_st.th.tab.rec[r] } # the nearest active one of a kind to (x, z), or null export function thing_nearest(things_st: ThingsState, kind: int, x: float, z: float) -> Thing { - var best: Thing = null - var bd = 0.0 - let all = things_all(things_st) - for i in 0 .. len(all) { - let t = all[i] - if not t.active or not th_of(t, kind) { continue } - let d = thing_dist2(t, x, z) - if best == null or d < bd { - best = t - bd = d - } + let tb = things_st.th.tab + var r = -1 + if kind < 0 { r = tb_nearest(tb, things_st.th.grid, x, z, 0.0, -1, 0) } else { + r = tb_nearest_of(tb, things_st.th.grid, things_st.th.kinds, x, z, 0.0, kind) } - return best + if r < 0 { return null } + return tb.rec[r] } # the squared ground distance from a Thing to (x, z) @@ -42,14 +47,13 @@ export function thing_dist2(t: Thing, x: float, z: float) -> float { return dx * dx + dz * dz } -# every active one within r of (x, z), nearest first +# every active one within r of (x, z), nearest first, in a new list: for a question asked now and +# then - a frame's question is things_near, into a list the caller keeps export function things_within(things_st: ThingsState, x: float, z: float, r: float) -> []Thing { + let found = new []Thing + things_near(things_st, x, z, r, found) let out = new []Thing - let all = things_all(things_st) - for i in 0 .. len(all) { - let t = all[i] - if t.active and thing_dist2(t, x, z) <= r * r { th_insert(out, t, x, z) } - } + for k in 0 .. len(found) { th_insert(out, found[k], x, z) } return out } @@ -63,18 +67,44 @@ function th_insert(out: []Thing, t: Thing, x: float, z: float) -> void { out[j] = t } -# every active one of a kind, in the order placed +# every active one of a kind, first placed first export function things_each(things_st: ThingsState, kind: int) -> []Thing { - let out = new []Thing - let all = things_all(things_st) - for i in 0 .. len(all) { if all[i].active and th_of(all[i], kind) { push(out, all[i]) } } - return out + return th_listed(things_st, ix_rows(things_st.th.kinds, kind)) } # every one of a kind, active or not export function things_each_all(things_st: ThingsState, kind: int) -> []Thing { - let out = new []Thing - let all = things_all(things_st) - for i in 0 .. len(all) { if th_of(all[i], kind) { push(out, all[i]) } } - return out + return th_listed(things_st, ix_rows(things_st.th.every, kind)) +} + +# how many active ones of a kind there are, without a list +export function things_count_of(things_st: ThingsState, kind: int) -> int { + return ix_count(things_st.th.kinds, kind) +} + +function th_listed(things_st: ThingsState, rows: words) -> []Thing { + let out = new []Thing + for k in 0 .. len(rows) { push(out, things_st.th.tab.rec[rows[k]]) } + return th_by_uid_order(out) +} + +function th_by_uid_order(xs: []Thing) -> []Thing { + for i in 1 .. len(xs) { + let t = xs[i] + var j = i + while j > 0 and xs[j - 1].uid > t.uid { + xs[j] = xs[j - 1] + j -= 1 + } + xs[j] = t + } + return xs +} + +# the i-th active one of a kind, 0 .. things_count_of(kind) - 1, in the index's order (which a +# removal or a hide changes: walk it within a frame, never keep an i) +export function thing_of_kind(things_st: ThingsState, kind: int, i: int) -> Thing { + let rows = ix_rows(things_st.th.kinds, kind) + if i < 0 or i >= len(rows) { return null } + return things_st.th.tab.rec[rows[i]] } diff --git a/packages/ludic.things/store.ludic b/packages/ludic.things/store.ludic index 673463a9..164e591b 100644 --- a/packages/ludic.things/store.ludic +++ b/packages/ludic.things/store.ludic @@ -1,10 +1,42 @@ -# store.ludic - the Things, and the only verbs that make, remove, move, show and hide one; each -# placing and removing is a fact, and the port is told at once so the game can draw it +# store.ludic - the Things, rows of a ludic.base Table: where each stands and whether it is active +# are columns a grid and two kind indexes are kept over, and only the verbs (verbs.ludic) make, +# move, show, hide and remove one; each placing and removing is a fact the port hears at once +export const TH_X: int = 0 # float columns +export const TH_Z: int = 1 +export const TH_KIND: int = 0 # int columns +export const TH_ON: int = 1 # 1 while active +export const TH_CHUNK: int = 2 # the chunk of the world it stands in (chunk_of, TH_CHUNK_M) +export const TH_CHUNK_M: float = 256.0 +const TH_CELL: float = 16.0 + +# the table and the indexes kept over it, made together +export property ThingsTable { + tab: Table = null + grid: Grid = null + kinds: IntIndex = null # active Things by kind + every: IntIndex = null # every Thing by kind, active or not + chunks: IntIndex = null # every Thing by the chunk it stands in: loaded and let go together +} + export state ThingsState { - th_list: []Thing = new []Thing + th: ThingsTable = th__new() + th_uids: IntMap = imap_new() th_uid: int = 0 th_facts: Queue = th_facts__new() - th_marked: int = -1 + th_hs: words = words(0) # things_tick's handles, taken before any tick runs +} + +function th_facts__new() -> Queue { return queue_new("things.facts") } + +function th__new() -> ThingsTable { + let th = new ThingsTable + let tb: Table = table_new(2, 3) + th.tab = tb + th.grid = tb_grid(tb, TH_X, TH_Z, TH_ON, TH_CELL) + th.kinds = tb_index(tb, TH_KIND, TH_ON) + th.every = tb_index(tb, TH_KIND, -1) + th.chunks = tb_index(tb, TH_CHUNK, -1) + return th } export function things_facts(things_st: ThingsState) -> Queue { @@ -24,88 +56,37 @@ function th_fact(things_st: ThingsState, what: int, t: Thing) -> void { } # whether a world has been set out (things_clear) since the program began -export function things_ready(things_st: ThingsState) -> bool { return things_st.th_list != null } +export function things_ready(things_st: ThingsState) -> bool { return things_st.th.tab != null } -# every Thing, in the order placed; the list is the package's, never to be pushed to -export function things_all(things_st: ThingsState) -> []Thing { - return things_st.th_list -} +# every Thing, one per row - the table's own list: read it, never push to it. A removal moves the +# last Thing into the removed one's place, so the order is the table's, not the order placed. +export function things_all(things_st: ThingsState) -> []Thing { return things_st.th.tab.rec } -export function things_count(things_st: ThingsState) -> int { return len(things_all(things_st)) } +export function things_count(things_st: ThingsState) -> int { return tb_len(things_st.th.tab) } # a new world: every Thing forgotten, quietly (the game has already dropped its drawings) -export function things_clear(things_st: mut ThingsState) -> void { things_st.th_list = new []Thing } - -export function thing_spawn(things_st: mut ThingsState, kind: int, look: string, x: float, y: float, z: float, yaw: float, id: int) -> Thing { - return th_place(things_st, new Thing, kind, look, x, y, z, yaw, id) +export function things_clear(things_st: mut ThingsState) -> void { + let tb = things_st.th.tab + for r in 0 .. tb_len(tb) { tb.rec[r].ent = -1 } + tb_clear(tb) + imap_clear(things_st.th_uids) } -function th_place(things_st: mut ThingsState, t: Thing, kind: int, look: string, x: float, y: float, z: float, yaw: float, id: int) -> Thing { - t.kind = kind - t.look = look - t.x = x - t.y = y - t.z = z - t.yaw = yaw - t.id = id - things_st.th_uid += 1 - t.uid = things_st.th_uid - push(things_all(things_st), t) - ThingsWorld.placed(t) - th_fact(things_st, THING_PLACED, t) - return t +# the row a Thing stands in, or -1 when it is not in the table any more +function th_row(t: Thing) -> int { + if t == null or t.tab == null { return -1 } + return tb_row(t.tab, t.ent) } -# a Thing on the ground (the port's), set into it by `sink`, used from `reach` -export function thing_put(things_st: mut ThingsState, kind: int, look: string, x: float, z: float, yaw: float, sink: float, reach: float, id: int) -> Thing { - let t = new Thing - t.reach = reach - return th_place(things_st, t, kind, look, x, ThingsWorld.ground(x, z) - sink, z, yaw, id) -} - -# gone for good -export function thing_remove(things_st: mut ThingsState, t: Thing) -> void { - if t == null { return } - things_st.th_marked = t.uid - things_drop(things_st, fn th_is_marked) - things_st.th_marked = -1 -} - -function th_is_marked(things_st: ThingsState, t: Thing) -> bool { return t.uid == things_st.th_marked } - -# every Thing `gone` says so is removed for good -export function things_drop(things_st: mut ThingsState, gone: fn(Thing) -> bool) -> void { - let keep = new []Thing - let all = things_all(things_st) - for i in 0 .. len(all) { - let t = all[i] - if gone(t) { - ThingsWorld.removed(t) - th_fact(things_st, THING_REMOVED, t) - } else { - push(keep, t) - } +# the columns say what the record says: a Thing's fields written around the verbs are caught here +export function things_verify(things_st: ThingsState) -> int { + let tb = things_st.th.tab + var bad = 0 + for r in 0 .. tb_len(tb) { + let t = tb.rec[r] + var on = 0 + if t.active { on = 1 } + if tb.f[TH_X][r] != t.x or tb.f[TH_Z][r] != t.z or tb.i[TH_KIND][r] != t.kind or tb.i[TH_ON][r] != on or tb.i[TH_CHUNK][r] != chunk_of(t.x, t.z, TH_CHUNK_M) or t.ent != tb.ent[r] { bad += 1 } } - things_st.th_list = keep + return bad } - -export function thing_move(t: Thing, x: float, z: float, yaw: float) -> void { - thing_move_to(t, x, ThingsWorld.ground(x, z), z, yaw) -} - -export function thing_move_to(t: Thing, x: float, y: float, z: float, yaw: float) -> void { - t.x = x - t.y = y - t.z = z - t.yaw = yaw - ThingsWorld.moved(t) -} - -export function thing_set_active(t: Thing, on: bool) -> void { - if t == null { return } - t.active = on - ThingsWorld.shown(t) -} -export function thing_hide(t: Thing) -> void { thing_set_active(t, false) } -export function thing_show(t: Thing) -> void { thing_set_active(t, true) } -function th_facts__new() -> Queue { return queue_new("things.facts") } diff --git a/packages/ludic.things/tests/things_test.ludic b/packages/ludic.things/tests/things_test.ludic index ee29c413..11438c80 100644 --- a/packages/ludic.things/tests/things_test.ludic +++ b/packages/ludic.things/tests/things_test.ludic @@ -155,4 +155,64 @@ program ThingsTest { expect_eq(t.owner, 0) expect_eq(things_test_st.back, 1) } + + test "removals keep the indexes true: nearest, find, uid and the columns agree" (things_st: mut ThingsState) { + things_clear(things_st) + var keep: Thing = null + for i in 0 .. 400 { + let t = put(things_st, TH_BRANCH + (i % 2), float(i) * 3.0 - 600.0, float(i % 17) * 5.0) + if i == 250 { keep = t } + } + let gone = thing_find(things_st, TH_BRANCH, -1) + let uid = gone.uid + thing_remove(things_st, gone) + expect(thing_by_uid(things_st, uid) == null) + expect(thing_by_uid(things_st, keep.uid) == keep) + expect_eq(things_count(things_st), 399) + expect_eq(things_count_of(things_st, TH_BRANCH), 199) + thing_move(keep, 5000.0, 5000.0, 0.0) + expect(thing_nearest(things_st, -1, 4990.0, 4990.0) == keep) + thing_hide(keep) + expect(thing_nearest(things_st, -1, 4990.0, 4990.0) != keep) + expect_eq(things_verify(things_st), 0) + keep.x = 1.0 + expect_eq(things_verify(things_st), 1) + } + + test "a chunk's Things are counted and let go together; a move carries a Thing to its new chunk" (things_st: mut ThingsState, things_test_st: ThingsTestState) { + things_clear(things_st) + put(things_st, TH_BRANCH, 10.0, 10.0) + put(things_st, TH_BRANCH, 20.0, 30.0) + let far = put(things_st, TH_BRANCH, 600.0, 10.0) + let here = things_chunk(10.0, 10.0) + expect_eq(things_chunk_count(things_st, here), 2) + expect_eq(things_chunk_count(things_st, things_chunk(600.0, 10.0)), 1) + thing_move(far, 15.0, 15.0, 0.0) + expect_eq(things_chunk_count(things_st, here), 3) + facts(things_st) + let gone = things_test_st.gone + expect_eq(things_drop_chunk(things_st, here), 3) + expect_eq(things_count(things_st), 0) + expect_eq(things_test_st.gone, gone + 3) + expect_eq(len(facts(things_st)), 3) + expect_eq(things_verify(things_st), 0) + } + + test "change detection names what a verb wrote since the tick a consumer kept" (things_st: mut ThingsState) { + things_clear(things_st) + let a = put(things_st, TH_BRANCH, 1.0, 0.0) + let b = put(things_st, TH_BRANCH, 2.0, 0.0) + let seen = things_now(things_st) + let rows = words(0) + let out = new []Thing + expect_eq(things_changed(things_st, seen, rows, out), 0) + thing_hide(b) + expect_eq(things_changed(things_st, seen, rows, out), 1) + expect(out[0] == b) + let later = things_now(things_st) + thing_move(a, 9.0, 9.0, 0.0) + expect_eq(things_changed(things_st, later, rows, out), 1) + expect(out[0] == a) + expect_eq(things_changed(things_st, seen, rows, out), 2) + } } diff --git a/packages/ludic.things/verbs.ludic b/packages/ludic.things/verbs.ludic new file mode 100644 index 00000000..f43e6080 --- /dev/null +++ b/packages/ludic.things/verbs.ludic @@ -0,0 +1,69 @@ +# verbs.ludic - the only ways a Thing is made, removed, moved, shown or hidden: each writes the +# record and the table's columns together, so the grid and the kind indexes never fall behind +export function thing_spawn(things_st: mut ThingsState, kind: int, look: string, x: float, y: float, z: float, yaw: float, id: int) -> Thing { + return th_place(things_st, new Thing, kind, look, x, y, z, yaw, id) +} + +function th_place(things_st: mut ThingsState, t: Thing, kind: int, look: string, x: float, y: float, z: float, yaw: float, id: int) -> Thing { + t.kind = kind + t.look = look + t.x = x + t.y = y + t.z = z + t.yaw = yaw + t.id = id + things_st.th_uid += 1 + t.uid = things_st.th_uid + let tb = things_st.th.tab + t.tab = tb + t.ent = tb_add(tb, t) + th_columns(t) + imap_put(things_st.th_uids, t.uid, t.ent) + ThingsWorld.placed(t) + th_fact(things_st, THING_PLACED, t) + return t +} + +# the record's x, z, kind and active into its row, refiled once +function th_columns(t: Thing) -> void { + let r = th_row(t) + if r < 0 { return } + let tb = t.tab + tb.f[TH_X][r] = t.x + tb.f[TH_Z][r] = t.z + tb.i[TH_KIND][r] = t.kind + var on = 0 + if t.active { on = 1 } + tb.i[TH_ON][r] = on + tb.i[TH_CHUNK][r] = chunk_of(t.x, t.z, TH_CHUNK_M) + tb_refile(tb, r) +} + +# a Thing on the ground (the port's), set into it by `sink`, used from `reach` +export function thing_put(things_st: mut ThingsState, kind: int, look: string, x: float, z: float, yaw: float, sink: float, reach: float, id: int) -> Thing { + let t = new Thing + t.reach = reach + return th_place(things_st, t, kind, look, x, ThingsWorld.ground(x, z) - sink, z, yaw, id) +} + +# gone for good +export function thing_remove(things_st: mut ThingsState, t: Thing) -> void { + if th_row(t) < 0 { return } + ThingsWorld.removed(t) + th_fact(things_st, THING_REMOVED, t) + imap_del(things_st.th_uids, t.uid) + tb_remove(t.tab, t.ent) + t.ent = -1 +} + +# every Thing `gone` says so is removed for good; from the last row down, so the row a removal +# moves into place has already been asked +export function things_drop(things_st: mut ThingsState, gone: fn(Thing) -> bool) -> void { + let tb = things_st.th.tab + var r = tb_len(tb) - 1 + while r >= 0 { + let t = tb.rec[r] + if gone(t) { thing_remove(things_st, t) } + r -= 1 + } +} diff --git a/packages/ludic.vehicles/call.ludic b/packages/ludic.vehicles/call.ludic index 168d0c92..12ed5764 100644 --- a/packages/ludic.vehicles/call.ludic +++ b/packages/ludic.vehicles/call.ludic @@ -1,10 +1,11 @@ # call.ludic - a player's boat or horse brought to a place: made there the first time, fetched there # after; gone when its player leaves -function ve_add(vehicles_st: VehiclesState, kind: int, x: float, z: float, yaw: float) -> Vehicle { +function ve_add(vehicles_st: VehiclesState, kind: int, owner: int, x: float, z: float, yaw: float) -> Vehicle { if kind != VEHICLE_HORSE and kind != VEHICLE_BOAT { return null } let v = new Vehicle v.nid = VehicleWorld.next_id() v.kind = kind + v.owner = owner v.yaw = yaw if kind == VEHICLE_HORSE { v.seat_h = 1.35 @@ -14,7 +15,7 @@ function ve_add(vehicles_st: VehiclesState, kind: int, x: float, z: float, yaw: v.seat_h = 0.30 } ve_put(v, x, z) - push(ve_all(vehicles_st), v) + ve_file(vehicles_st.ve, v) ve_settle(v) VehicleWorld.made(v) return v @@ -51,9 +52,8 @@ export function vehicle_call_for(vehicles_st: VehiclesState, pid: int, kind: int var yaw = vehicles_st.ve_dock_yaw if kind == VEHICLE_HORSE { yaw = vehicles_st.ve_rail_yaw } if v == null { - let made = ve_add(vehicles_st, kind, vehicle_place_x(vehicles_st, kind, k), vehicle_place_z(vehicles_st, kind, k), yaw) + let made = ve_add(vehicles_st, kind, pid, vehicle_place_x(vehicles_st, kind, k), vehicle_place_z(vehicles_st, kind, k), yaw) if made == null { return false } - made.owner = pid if pid == 0 { ve_apply_kept(vehicles_st, made) } return true } @@ -68,10 +68,10 @@ export function vehicle_call_for(vehicles_st: VehiclesState, pid: int, kind: int # a player left: their boat and horse go with them, and their places are free export function vehicles_release(vehicles_st: mut VehiclesState, pid: int) -> void { if pid == 0 { return } - let keep = new []Vehicle - let l = ve_all(vehicles_st) - for i in 0 .. len(l) { - if l[i].owner != pid { push(keep, l[i]) } else { ve_gone(l[i]) } + let rows = ix_rows(vehicles_st.ve.owners, pid) + while len(rows) > 0 { + let v = ve_all(vehicles_st)[rows[len(rows) - 1]] + ve_gone(v) + ve_unfile(vehicles_st.ve, v) } - vehicles_st.ve_list = keep } diff --git a/packages/ludic.vehicles/index.ludic b/packages/ludic.vehicles/index.ludic index ab502dd3..087da740 100644 --- a/packages/ludic.vehicles/index.ludic +++ b/packages/ludic.vehicles/index.ludic @@ -5,6 +5,7 @@ module ludic_vehicles uses ludic_base numbers float import "ludic.base" import "kinds.ludic" +import "table.ludic" import "ports.ludic" import "state.ludic" import "places.ludic" diff --git a/packages/ludic.vehicles/kinds.ludic b/packages/ludic.vehicles/kinds.ludic index 9b78a6d4..0d469d65 100644 --- a/packages/ludic.vehicles/kinds.ludic +++ b/packages/ludic.vehicles/kinds.ludic @@ -19,6 +19,8 @@ export property Vehicle { rider: int = -1 # the player on it, -1 nobody home_x: float = 0.0 # a horse is tied where its home is home_z: float = 0.0 + ent: int = -1 # its handle in the table + tab: Table = null } export const VEHICLE_MOUNTED: int = 0 diff --git a/packages/ludic.vehicles/ports.ludic b/packages/ludic.vehicles/ports.ludic index 690eccca..3add3590 100644 --- a/packages/ludic.vehicles/ports.ludic +++ b/packages/ludic.vehicles/ports.ludic @@ -45,7 +45,7 @@ export state VehiclesState { ve_ids: int = 0 ve_sx: float = 0.0 ve_sz: float = 0.0 - ve_list: []Vehicle = new []Vehicle + ve: VehicleTable = ve__new() ve_cur: Vehicle = null ve_dock_x: float = 0.0 ve_dock_z: float = 0.0 diff --git a/packages/ludic.vehicles/state.ludic b/packages/ludic.vehicles/state.ludic index 03b826f7..dfbb3559 100644 --- a/packages/ludic.vehicles/state.ludic +++ b/packages/ludic.vehicles/state.ludic @@ -18,7 +18,7 @@ function ve_say(vehicles_st: VehiclesState, what: int, v: Vehicle, n: float) -> q_push(vehicle_facts(vehicles_st), f) } -function ve_all(vehicles_st: VehiclesState) -> []Vehicle { return vehicles_st.ve_list } +function ve_all(vehicles_st: VehiclesState) -> []Vehicle { return vehicles_st.ve.tab.rec } # every vehicle in the valley, to draw and to aim at (change one only through the verbs) export function vehicles_all(vehicles_st: VehiclesState) -> []Vehicle { return ve_all(vehicles_st) } @@ -32,8 +32,9 @@ export function vehicle_ride_kind(vehicles_st: VehiclesState) -> int { export function vehicle_current(vehicles_st: VehiclesState) -> Vehicle { return vehicles_st.ve_cur } export function vehicle_of(vehicles_st: VehiclesState, pid: int, kind: int) -> Vehicle { + let rows = ix_rows(vehicles_st.ve.owners, pid) let l = ve_all(vehicles_st) - for i in 0 .. len(l) { if l[i].kind == kind and l[i].owner == pid { return l[i] } } + for k in 0 .. len(rows) { if l[rows[k]].kind == kind { return l[rows[k]] } } return null } diff --git a/packages/ludic.vehicles/system.ludic b/packages/ludic.vehicles/system.ludic index fb6712f0..619ef7ab 100644 --- a/packages/ludic.vehicles/system.ludic +++ b/packages/ludic.vehicles/system.ludic @@ -2,13 +2,14 @@ # and the horse's hay); where they lie is not saved - they are called again. The boats' hulls are # read back and pushed by the wind in vehicles_tick, which the game calls where the world is run export function vehicles_reset(vehicles_st: mut VehiclesState) -> void { - if vehicles_st.ve_list != null { - for i in 0 .. len(vehicles_st.ve_list) { - let v = vehicles_st.ve_list[i] - if v.kind == VEHICLE_BOAT { VehicleHull.gone(v.nid) } else { VehicleLegs.gone(v.nid) } - } + let l = ve_all(vehicles_st) + for i in 0 .. len(l) { + let v = l[i] + if v.kind == VEHICLE_BOAT { VehicleHull.gone(v.nid) } else { VehicleLegs.gone(v.nid) } + v.ent = -1 } - vehicles_st.ve_list = new []Vehicle + tb_clear(vehicles_st.ve.tab) + imap_clear(vehicles_st.ve.nids) vehicles_st.ve_cur = null vehicles_st.ve_have_dock = false vehicles_st.ve_swell_said = 0.0 diff --git a/packages/ludic.vehicles/table.ludic b/packages/ludic.vehicles/table.ludic new file mode 100644 index 00000000..96183951 --- /dev/null +++ b/packages/ludic.vehicles/table.ludic @@ -0,0 +1,45 @@ +# table.ludic - the vehicles, rows of a ludic.base Table: kind and owner as columns, each player's +# own by index, and a nid to its handle. Where one is stays on its record: a boat moves every frame +# and there are never more than two a player to search. +export const VE_KIND: int = 0 # int columns +export const VE_OWNER: int = 1 + +export property VehicleTable { + tab: Table = null + owners: IntIndex = null # every vehicle by the player it belongs to + nids: IntMap = null +} + +function ve__new() -> VehicleTable { + let w = new VehicleTable + let tb: Table = table_new(0, 2) + w.tab = tb + w.owners = tb_index(tb, VE_OWNER, -1) + w.nids = imap_new() + return w +} + +# a new row for v, its kind and owner from its record +function ve_file(w: VehicleTable, v: Vehicle) -> void { + v.tab = w.tab + v.ent = tb_add(w.tab, v) + let r = tb_row(w.tab, v.ent) + w.tab.i[VE_KIND][r] = v.kind + w.tab.i[VE_OWNER][r] = v.owner + tb_refile(w.tab, r) + imap_put(w.nids, v.nid, v.ent) +} + +function ve_unfile(w: VehicleTable, v: Vehicle) -> void { + imap_del(w.nids, v.nid) + tb_remove(w.tab, v.ent) + v.ent = -1 +} + +# the vehicle a message names, or null +export function vehicle_by_nid(vehicles_st: VehiclesState, nid: int) -> Vehicle { + let tb = vehicles_st.ve.tab + let r = tb_row(tb, imap_get(vehicles_st.ve.nids, nid, -1)) + if r < 0 or tb.rec[r].nid != nid { return null } + return tb.rec[r] +} diff --git a/packages/ludic.vehicles/tests/vehicles_test.ludic b/packages/ludic.vehicles/tests/vehicles_test.ludic index 62b2c790..653caf78 100644 --- a/packages/ludic.vehicles/tests/vehicles_test.ludic +++ b/packages/ludic.vehicles/tests/vehicles_test.ludic @@ -344,4 +344,23 @@ program VehiclesTest { expect_near(vehicle_find(vehicles_st, VEHICLE_HORSE).food, 77.0, 0.01) expect(not vehicle_find(vehicles_st, VEHICLE_BOAT).owned) } + + test "the table: a nid finds its vehicle, each player's own by the owner index, and a release takes both" (vehicles_st: mut VehiclesState, vehicles_test_st: mut VehiclesTestState) { + fresh(vehicles_st, vehicles_test_st) + vehicle_call_for(vehicles_st, 5, VEHICLE_HORSE, 0) + vehicle_call_for(vehicles_st, 5, VEHICLE_BOAT, 0) + vehicle_call_for(vehicles_st, 6, VEHICLE_BOAT, 1) + let b = vehicle_of(vehicles_st, 6, VEHICLE_BOAT) + expect(b != null) + expect(vehicle_by_nid(vehicles_st, b.nid) == b) + expect(vehicle_of(vehicles_st, 6, VEHICLE_HORSE) == null) + let h = vehicle_of(vehicles_st, 5, VEHICLE_HORSE) + vehicles_release(vehicles_st, 5) + expect_eq(len(vehicles_all(vehicles_st)), 1) + expect(vehicle_by_nid(vehicles_st, h.nid) == null) + expect(vehicle_of(vehicles_st, 6, VEHICLE_BOAT) == b) + vehicles_reset(vehicles_st) + expect_eq(len(vehicles_all(vehicles_st)), 0) + expect(vehicle_by_nid(vehicles_st, b.nid) == null) + } } diff --git a/packages/ludic.wildlife/animal.ludic b/packages/ludic.wildlife/animal.ludic index 7ebf36dd..56e92221 100644 --- a/packages/ludic.wildlife/animal.ludic +++ b/packages/ludic.wildlife/animal.ludic @@ -64,4 +64,6 @@ export property WildAnimal { sus_z: float = 0.0 spook: float = 0.0 # game minutes of extra wariness after being flushed seen: float = 0.0 # the alert it has already reacted to + ent: int = -1 # its handle in the table + tab: Table = null # the table holding it, so a verb on the animal alone keeps the indexes } diff --git a/packages/ludic.wildlife/guest.ludic b/packages/ludic.wildlife/guest.ludic index 1fdf2f1a..e1664892 100644 --- a/packages/ludic.wildlife/guest.ludic +++ b/packages/ludic.wildlife/guest.ludic @@ -3,13 +3,13 @@ export function wildlife_put_away(wildlife_st: mut WildlifeState) -> void { if wildlife_st.wl_own != null { return } - wildlife_st.wl_own = wildlife_all(wildlife_st) - wildlife_st.wl_list = new []WildAnimal + wildlife_st.wl_own = wildlife_st.wl + wildlife_st.wl = wl__new() } export function wildlife_bring_back(wildlife_st: mut WildlifeState) -> void { if wildlife_st.wl_own == null { return } - wildlife_st.wl_list = wildlife_st.wl_own + wildlife_st.wl = wildlife_st.wl_own wildlife_st.wl_own = null } diff --git a/packages/ludic.wildlife/index.ludic b/packages/ludic.wildlife/index.ludic index f768c96b..37f48c0a 100644 --- a/packages/ludic.wildlife/index.ludic +++ b/packages/ludic.wildlife/index.ludic @@ -8,7 +8,9 @@ import "animal.ludic" import "places.ludic" import "port.ludic" import "facts.ludic" +import "table.ludic" import "store.ludic" +import "near.ludic" import "guest.ludic" import "record.ludic" import "habitat.ludic" diff --git a/packages/ludic.wildlife/near.ludic b/packages/ludic.wildlife/near.ludic new file mode 100644 index 00000000..ffc71f5a --- /dev/null +++ b/packages/ludic.wildlife/near.ludic @@ -0,0 +1,15 @@ +# near.ludic - the animals around a point, living ones only, into a list the CALLER keeps (in its own +# state, reused every frame): from the grid, or a species' own list when it is rare. Nothing is +# allocated or written here. +export function wildlife_near(wildlife_st: WildlifeState, x: float, z: float, r: float, out: []WildAnimal) -> int { + let w = wildlife_st.wl + return tb_within_recs(w.tab, w.grid, x, z, r, -1, 0, out) +} + +export function wildlife_near_of(wildlife_st: WildlifeState, sp: int, x: float, z: float, r: float, out: []WildAnimal) -> int { + let w = wildlife_st.wl + return tb_within_of_recs(w.tab, w.grid, w.species, x, z, r, sp, out) +} + +# how many of a species are alive, legends included, without a walk +export function wildlife_alive_of(wildlife_st: WildlifeState, sp: int) -> int { return ix_count(wildlife_st.wl.species, sp) } diff --git a/packages/ludic.wildlife/run.ludic b/packages/ludic.wildlife/run.ludic index 0229aee1..248333e5 100644 --- a/packages/ludic.wildlife/run.ludic +++ b/packages/ludic.wildlife/run.ludic @@ -4,6 +4,7 @@ export function wildlife_tick(wildlife_st: mut WildlifeState, dt: float, gh: flo wl_seed_scan(wildlife_st, dt) let all = wildlife_all(wildlife_st) for i in 0 .. len(all) { wl_tick_one(wildlife_st, all[i], dt, gh) } + wildlife_refile(wildlife_st) } function wl_tick_one(wildlife_st: mut WildlifeState, a: WildAnimal, dt: float, gh: float) -> void { diff --git a/packages/ludic.wildlife/species.ludic b/packages/ludic.wildlife/species.ludic index df213e6b..db87a1e1 100644 --- a/packages/ludic.wildlife/species.ludic +++ b/packages/ludic.wildlife/species.ludic @@ -34,7 +34,7 @@ export property WildSpecies { export state WildlifeState { wl_facts: Queue = wl_facts__new() - wl_own: []WildAnimal = null + wl_own: WildTable = null # a guest's own animals, put away whole while it draws the host's wl_px: float = 0.0 wl_pz: float = 0.0 wl_ask: WildLure = new WildLure @@ -53,7 +53,7 @@ export state WildlifeState { wl_fed_any: bool = false wl_near_i: int = 0 wl_species: []WildSpecies = new []WildSpecies - wl_list: []WildAnimal = new []WildAnimal + wl: WildTable = wl__new() wl_keys: int = 0 wl_dice: Rng = rng_new(97) wl_hold: bool = false # staged: nobody thinks, everybody keeps their speed diff --git a/packages/ludic.wildlife/store.ludic b/packages/ludic.wildlife/store.ludic index 04a9640e..c6fc6e7d 100644 --- a/packages/ludic.wildlife/store.ludic +++ b/packages/ludic.wildlife/store.ludic @@ -1,14 +1,20 @@ # store.ludic - the animals, their own dice, and the verbs that make and take one away const WL_TAU: float = 6.2831853 +# every animal, one per row - the table's own list: read it, never push to it export function wildlife_all(wildlife_st: WildlifeState) -> []WildAnimal { - return wildlife_st.wl_list + return wildlife_st.wl.tab.rec } -export function wildlife_count_all(wildlife_st: WildlifeState) -> int { return len(wildlife_all(wildlife_st)) } +export function wildlife_count_all(wildlife_st: WildlifeState) -> int { return tb_len(wildlife_st.wl.tab) } # a new valley: every animal forgotten, quietly (the game has already let its drawings go) -export function wildlife_clear(wildlife_st: mut WildlifeState) -> void { wildlife_st.wl_list = new []WildAnimal } +export function wildlife_clear(wildlife_st: mut WildlifeState) -> void { + let tb = wildlife_st.wl.tab + for r in 0 .. tb_len(tb) { tb.rec[r].ent = -1 } + tb_clear(tb) + imap_clear(wildlife_st.wl.nids) +} function wl_rng(wildlife_st: WildlifeState) -> Rng { return wildlife_st.wl_dice @@ -40,7 +46,7 @@ export function wildlife_make(wildlife_st: mut WildlifeState, sp: int, x: float, a.scale = scale a.legend = legend a.state = WILD_IDLE - push(wildlife_all(wildlife_st), a) + wl_file(wildlife_st.wl, a) WildlifeWorld.born(a) return a } @@ -67,7 +73,7 @@ export function wildlife_new(wildlife_st: mut WildlifeState, sp: int, x: float, # gone for good: not drawn, not ticked export function wildlife_remove(a: WildAnimal) -> void { if a == null { return } - a.alive = false + wildlife_set_alive(a, false) a.shown = false } @@ -75,15 +81,16 @@ export function wildlife_remove(a: WildAnimal) -> void { export function wildlife_hold(wildlife_st: mut WildlifeState, on: bool) -> void { wildlife_st.wl_hold = on } export function wildlife_by_nid(wildlife_st: WildlifeState, nid: int) -> WildAnimal { - let all = wildlife_all(wildlife_st) - for i in 0 .. len(all) { if all[i].nid == nid { return all[i] } } - return null + let tb = wildlife_st.wl.tab + let r = tb_row(tb, imap_get(wildlife_st.wl.nids, nid, -1)) + if r < 0 or tb.rec[r].nid != nid { return null } + return tb.rec[r] } # how many of a species are alive, legends apart export function wildlife_count(wildlife_st: WildlifeState, sp: int) -> int { var n = 0 - let all = wildlife_all(wildlife_st) - for i in 0 .. len(all) { if all[i].alive and all[i].sp == sp and not all[i].legend { n += 1 } } + let rows = ix_rows(wildlife_st.wl.species, sp) + for k in 0 .. len(rows) { if not wildlife_st.wl.tab.rec[rows[k]].legend { n += 1 } } return n } diff --git a/packages/ludic.wildlife/table.ludic b/packages/ludic.wildlife/table.ludic new file mode 100644 index 00000000..46782ddb --- /dev/null +++ b/packages/ludic.wildlife/table.ludic @@ -0,0 +1,91 @@ +# table.ludic - the animals, rows of a ludic.base Table: where each stands, its species and whether +# it lives are columns, with a grid over the living, the living by species, and a nid to its handle. +# The AI moves an animal by its record; wildlife_refile files every move once, after the tick. +export const WA_X: int = 0 # float columns +export const WA_Z: int = 1 +export const WA_SP: int = 0 # int columns +export const WA_ALIVE: int = 1 # 1 while alive +const WA_CELL: float = 32.0 + +export property WildTable { + tab: Table = null + grid: Grid = null + species: IntIndex = null # the living, by species + nids: IntMap = null +} + +function wl__new() -> WildTable { + let w = new WildTable + let tb: Table = table_new(2, 2) + w.tab = tb + w.grid = tb_grid(tb, WA_X, WA_Z, WA_ALIVE, WA_CELL) + w.species = tb_index(tb, WA_SP, WA_ALIVE) + w.nids = imap_new() + return w +} + +function wl_row(a: WildAnimal) -> int { + if a == null or a.tab == null { return -1 } + return tb_row(a.tab, a.ent) +} + +# a new row for `a`, its columns from its record +function wl_file(w: WildTable, a: WildAnimal) -> void { + a.tab = w.tab + a.ent = tb_add(w.tab, a) + let r = wl_row(a) + let tb = w.tab + tb.f[WA_X][r] = a.x + tb.f[WA_Z][r] = a.z + tb.i[WA_SP][r] = a.sp + var on = 0 + if a.alive { on = 1 } + tb.i[WA_ALIVE][r] = on + tb_refile(tb, r) + if a.nid != 0 { imap_put(w.nids, a.nid, a.ent) } +} + +# alive or not, the record and the row together (a copy the game is handed says so too) +export function wildlife_set_alive(a: WildAnimal, on: bool) -> void { + if a == null { return } + a.alive = on + let r = wl_row(a) + if r < 0 { return } + var v = 0 + if on { v = 1 } + tb_set_i(a.tab, WA_ALIVE, r, v) +} + +# every row whose record moved since it was filed, refiled: once after a tick that moves them all, +# and by the game after it moves the copies a guest is handed +export function wildlife_refile(wildlife_st: mut WildlifeState) -> void { + let tb = wildlife_st.wl.tab + let xs = tb.f[WA_X] + let zs = tb.f[WA_Z] + for r in 0 .. tb_len(tb) { + let a = tb.rec[r] + if xs[r] != a.x or zs[r] != a.z { tb_set_xz(tb, WA_X, WA_Z, r, a.x, a.z) } + } +} + +# after a refile, the columns say what the records say; the count of rows that do not +export function wildlife_verify(wildlife_st: WildlifeState) -> int { + let tb = wildlife_st.wl.tab + var bad = 0 + for r in 0 .. tb_len(tb) { + let a = tb.rec[r] + var on = 0 + if a.alive { on = 1 } + if tb.f[WA_X][r] != a.x or tb.f[WA_Z][r] != a.z or tb.i[WA_SP][r] != a.sp or tb.i[WA_ALIVE][r] != on or a.ent != tb.ent[r] { bad += 1 } + } + return bad +} + +# the nearest living animal of a species (below 0: any) within maxr (0: any distance), or null +export function wildlife_nearest(wildlife_st: WildlifeState, sp: int, x: float, z: float, maxr: float) -> WildAnimal { + let w = wildlife_st.wl + var r = -1 + if sp < 0 { r = tb_nearest(w.tab, w.grid, x, z, maxr, -1, 0) } else { r = tb_nearest_of(w.tab, w.grid, w.species, x, z, maxr, sp) } + if r < 0 { return null } + return w.tab.rec[r] +} diff --git a/packages/ludic.wildlife/tests/wildlife_test.ludic b/packages/ludic.wildlife/tests/wildlife_test.ludic index b3174d04..840d0921 100644 --- a/packages/ludic.wildlife/tests/wildlife_test.ludic +++ b/packages/ludic.wildlife/tests/wildlife_test.ludic @@ -230,4 +230,33 @@ program WildlifeTest { expect_near(r.x, r.wx, 0.001) expect(r.x != x0 or r.wx == r.sx) } + + test "the table: a nid finds its animal, the living count by species, the nearest, and a refile" (wildlife_st: mut WildlifeState, wildlife_tests_fake_st: mut WildlifeTestsFakeState) { + fk_setup(wildlife_st, wildlife_tests_fake_st) + wildlife_clear(wildlife_st) + let a = wildlife_make(wildlife_st, 0, 10.0, 0.0, false, 0.0, 0, 1.0, 41) + let b = wildlife_make(wildlife_st, 0, 90.0, 0.0, false, 0.0, 0, 1.0, 42) + let c = wildlife_make(wildlife_st, 1, 30.0, 0.0, true, 0.0, 0, 1.0, 43) + expect(wildlife_by_nid(wildlife_st, 42) == b) + expect(wildlife_by_nid(wildlife_st, 7) == null) + expect_eq(wildlife_count(wildlife_st, 0), 2) + expect_eq(wildlife_count(wildlife_st, 1), 0) + expect(wildlife_nearest(wildlife_st, -1, 0.0, 0.0, 0.0) == a) + expect(wildlife_nearest(wildlife_st, 1, 0.0, 0.0, 0.0) == c) + let near = new []WildAnimal + expect_eq(wildlife_near(wildlife_st, 0.0, 0.0, 40.0, near), 2) + expect_eq(wildlife_near_of(wildlife_st, 0, 0.0, 0.0, 200.0, near), 2) + expect_eq(wildlife_alive_of(wildlife_st, 1), 1) + wildlife_remove(a) + expect_eq(wildlife_count(wildlife_st, 0), 1) + expect(wildlife_nearest(wildlife_st, 0, 0.0, 0.0, 0.0) == b) + b.x = -5.0 + wildlife_refile(wildlife_st) + expect(wildlife_nearest(wildlife_st, -1, 0.0, 0.0, 20.0) == b) + expect_eq(wildlife_verify(wildlife_st), 0) + expect_eq(wildlife_count_all(wildlife_st), 3) + wildlife_clear(wildlife_st) + expect_eq(wildlife_count_all(wildlife_st), 0) + expect(wildlife_by_nid(wildlife_st, 42) == null) + } } diff --git a/selfhost/backend/emit_call.ludic b/selfhost/backend/emit_call.ludic index 5705ed0a..52e134bc 100644 --- a/selfhost/backend/emit_call.ludic +++ b/selfhost/backend/emit_call.ludic @@ -136,9 +136,11 @@ function emit_component_access(prop: pointer, meth: pointer, e: Node) -> Val { let lt = emit_bind(`icmp slt i32 {i0}, {ec}`) emit(" br i1 "); emit(lt); emit(", label %"); emit(body); emit(", label %"); emit(endl); emit("\n") emit(body); emit(":\n") - let ap = emit_bind(`getelementptr inbounds [{me} x i32], ptr @L_alive, i32 0, i32 {i0}`) + let eb1 = ecs_base("L_alive") + let ap = emit_bind(`getelementptr inbounds i32, ptr {eb1}, i32 {i0}`) let al = emit_bind(`load i32, ptr {ap}`) - let hp = emit_bind(`getelementptr inbounds [{me} x i8], ptr @H_{prop}, i32 0, i32 {i0}`) + let eb2 = ecs_base(`H_{prop}`) + let hp = emit_bind(`getelementptr inbounds i8, ptr {eb2}, i32 {i0}`) let hv = emit_bind(`load i8, ptr {hp}`) let hz = emit_bind(`zext i8 {hv} to i32`) let both = emit_bind(`and i32 {al}, {hz}`) @@ -154,15 +156,19 @@ function emit_component_access(prop: pointer, meth: pointer, e: Node) -> Val { if len(e.kids) != 1 { perr(`{prop}.{meth} takes one argument: the entity`) } let ev = emit_expr(e.kids[0]) if (meth == "of") { - let slot = emit_bind(`getelementptr inbounds [{me} x %Cmp_{prop}], ptr @S_{prop}, i32 0, i32 {ev.code}`) + let eb3 = ecs_base(`S_{prop}`) + let slot = emit_bind(`getelementptr inbounds %Cmp_{prop}, ptr {eb3}, i32 {ev.code}`) return val(slot, prop) } - let in_range = emit_bind(`icmp ult i32 {ev.code}, {me}`) + let cap = emit_bind("load i32, ptr @L_cap") + let in_range = emit_bind(`icmp ult i32 {ev.code}, {cap}`) let idx = emit_bind(`select i1 {in_range}, i32 {ev.code}, i32 0`) - let ap = emit_bind(`getelementptr inbounds [{me} x i32], ptr @L_alive, i32 0, i32 {idx}`) + let eb4 = ecs_base("L_alive") + let ap = emit_bind(`getelementptr inbounds i32, ptr {eb4}, i32 {idx}`) let alive = emit_bind(`load i32, ptr {ap}`) let is_alive = emit_bind(`icmp ne i32 {alive}, 0`) - let hp = emit_bind(`getelementptr inbounds [{me} x i8], ptr @H_{prop}, i32 0, i32 {idx}`) + let eb5 = ecs_base(`H_{prop}`) + let hp = emit_bind(`getelementptr inbounds i8, ptr {eb5}, i32 {idx}`) let hv = emit_bind(`load i8, ptr {hp}`) let carries = emit_bind(`icmp ne i8 {hv}, 0`) let ok1 = emit_bind(`and i1 {in_range}, {is_alive}`) @@ -372,7 +378,7 @@ function emit_ns_call(ns: pointer, meth: pointer, e: Node) -> Val { return emit_alias_or_fail("App", meth, e) } if (ns == "Pool") { - if (meth == "capacity") { return val(itoa(MAX_ENT), "int") } # max entities + if (meth == "capacity") { return val(emit_bind("load i32, ptr @L_cap"), "int") } # the stores' size now: they grow if (meth == "reserved") { return val(emit_bind("load i32, ptr @L_entc"), "int") } # slots ever allocated (high-water) if (meth == "free") { return val(emit_bind("load i32, ptr @L_freen"), "int") } # recycled slots ready for reuse if (meth == "live") { # currently alive = reserved - free @@ -407,7 +413,8 @@ function emit_ns_call(ns: pointer, meth: pointer, e: Node) -> Val { let at = emit_expr(e.kids[1]) let ent = emit_bind(`call i32 @L_spawn_prefab(ptr {nm.code})`) let me = itoa(MAX_ENT) - let slot = emit_bind(`getelementptr inbounds [{me} x %Cmp_Position], ptr @S_Position, i32 0, i32 {ent}`) + let eb6 = ecs_base(`S_Position`) + let slot = emit_bind(`getelementptr inbounds %Cmp_Position, ptr {eb6}, i32 {ent}`) let xa = emit_bind(`getelementptr inbounds %Cmp_Position, ptr {slot}, i32 0, i32 {itoa(field_index(pos, "x"))}`) let ya = emit_bind(`getelementptr inbounds %Cmp_Position, ptr {slot}, i32 0, i32 {itoa(field_index(pos, "y"))}`) let ax = vec_x(at.code) diff --git a/selfhost/backend/emit_decl.ludic b/selfhost/backend/emit_decl.ludic index b18c79a2..a36ae72f 100644 --- a/selfhost/backend/emit_decl.ludic +++ b/selfhost/backend/emit_decl.ludic @@ -61,6 +61,7 @@ function emit_main(d: Node) -> void { # its framebuffer allocated. Headless it only allocates — no window, no output — # so a non-rendering entry game is unchanged. emit(" call void @L_init_runtime()\n") + if has_ecs() { emit(" call void @L_grow(i32 1)\n") } if (find_fn("rt_init") != null) { emit(" call void " + fn_sym("rt_init") + "()\n") } emit(" call void @L_init_globals()\n") emit_block(d.a) @@ -149,6 +150,7 @@ function emit_test_runner() -> void { emit(" ret i32 0\n") emit(`{lrun0}:\n`) emit(" call void @L_init_runtime()\n") + if has_ecs() { emit(" call void @L_grow(i32 1)\n") } if has_ecs() { emit(" call void @rt_init()\n") } emit(" call void @L_init_globals()\n") i = 0 diff --git a/selfhost/backend/emit_fnval.ludic b/selfhost/backend/emit_fnval.ludic index c88b7a07..ecbe5c58 100644 --- a/selfhost/backend/emit_fnval.ludic +++ b/selfhost/backend/emit_fnval.ludic @@ -185,4 +185,11 @@ function check_worker_ref(e: Node) -> void { var ok = len(d.kids) == s + 2 and llty(d.ty) == "void" if ok { ok = llty(d.kids[s].ty) == "i32" and llty(d.kids[s + 1].ty) == "ptr" } if not ok { perr(`fn {e.s}: a worker function takes (i: int, ctx: pointer) and returns nothing`) } + # every thread runs it at once: a state it is handed is read by all of them, so none may change one + var k = 0 + while k < s { + let p = d.kids[k] + if p.uns == 1 { perr(`fn {e.s}: a worker runs on every core at once, so it may read {p.ty} but not change it ({p.s}: mut {p.ty}); write results into ctx, shared counts through Sync.add`) } + k += 1 + } } diff --git a/selfhost/backend/game/emit_ecs.ludic b/selfhost/backend/game/emit_ecs.ludic index e1bf2d0f..87d86245 100644 --- a/selfhost/backend/game/emit_ecs.ludic +++ b/selfhost/backend/game/emit_ecs.ludic @@ -56,9 +56,12 @@ function emit_ecs_storage() -> void { if len(g_scenes) > 0 { emith("@L_scene = internal global i32 0\n") } # active base scene id emith("@L_entc = internal global i32 0\n") let me = itoa(MAX_ENT) - emith(`@L_alive = internal global [{me} x i32] zeroinitializer\n`) - emith(`@L_kind = internal global [{me} x i32] zeroinitializer\n`) - emith(`@L_freelist = internal global [{me} x i32] zeroinitializer\n`) + # the per-entity stores are heap blocks L_grow makes and doubles: @L_cap slots each, from MAX_ENT + emith("@L_cap = internal global i32 0\n") + emith("@L_snapcap = internal global i32 0\n") # a snapshot's slot count, read before its stores + emith("@L_alive = internal global ptr null\n") + emith("@L_kind = internal global ptr null\n") + emith("@L_freelist = internal global ptr null\n") emith("@L_freen = internal global i32 0\n") # NETWORKING role registers (N3/N5): a runtime sets these; offline they hold the # single-player default — @L_role=1 (this peer is the authority), local id 0. @@ -68,7 +71,7 @@ function emit_ecs_storage() -> void { emith("@L_role = internal global i32 1\n") # 1 = server/authority (offline default) emith("@L_localid = internal global i32 0\n") # this peer's id } - if net_has_owned() { emith(`@L_owner_arr = internal global [{me} x i32] zeroinitializer\n`) } + if net_has_owned() { emith("@L_owner_arr = internal global ptr null\n") } var i = 0 while i < len(prog) { let c = prog[i] @@ -76,8 +79,8 @@ function emit_ecs_storage() -> void { # header). Every property in an ECS program is a component today; a property # used only via `new` would not need these, but no such program mixes the two. if c.kind == N_COMP { - emith(`@S_{c.s} = internal global [{me} x %Cmp_{c.s}] zeroinitializer\n`) - emith(`@H_{c.s} = internal global [{me} x i8] zeroinitializer\n`) + emith(`@S_{c.s} = internal global ptr null\n`) + emith(`@H_{c.s} = internal global ptr null\n`) } # one enabled-flag global per model and per handler (default enabled) if c.kind == N_ARCH { emith(`@ME_{c.s} = internal global i32 1\n`) } @@ -92,21 +95,25 @@ function emit_ecs_storage() -> void { # L_reset(e): clear every has-flag and the archetype kind for entity e function emit_ecs_allocator() -> void { let me = itoa(MAX_ENT) + emit_ecs_grow() emit("define void @L_reset(i32 %e) {\nentry:\n") var i = 0 while i < len(prog) { if prog[i].kind == N_COMP { let hn = `%h{itoa(i)}` - emit(" "); emit(hn); emit(" = getelementptr inbounds ["); emit(me); emit(" x i8], ptr @H_"); emit(prog[i].s); emit(", i32 0, i32 %e\n") + let eb1 = ecs_base(`H_{prog[i].s}`) + emit(" "); emit(hn); emit(" = getelementptr inbounds i8, ptr "); emit(eb1); emit(", i32 %e\n") emit(" store i8 0, ptr "); emit(hn); emit("\n") } i += 1 } - emit(" %k = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_kind, i32 0, i32 %e\n") + let eb2 = ecs_base("L_kind") + emit(" %k = getelementptr inbounds i32, ptr "); emit(eb2); emit(", i32 %e\n") emit(" store i32 0, ptr %k\n") # N3: reset an @Owned entity's network owner to -1 (unowned) on alloc/free if net_has_owned() { - emit(" %ow = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_owner_arr, i32 0, i32 %e\n") + let eb3 = ecs_base("L_owner_arr") + emit(" %ow = getelementptr inbounds i32, ptr "); emit(eb3); emit(", i32 %e\n") emit(" store i32 -1, ptr %ow\n") } emit(" ret void\n}\n\n") @@ -118,29 +125,100 @@ function emit_ecs_allocator() -> void { emit("reuse:\n") emit(" %fn1 = sub i32 %fn, 1\n") emit(" store i32 %fn1, ptr @L_freen\n") - emit(" %fp = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_freelist, i32 0, i32 %fn1\n") + let eb4 = ecs_base("L_freelist") + emit(" %fp = getelementptr inbounds i32, ptr "); emit(eb4); emit(", i32 %fn1\n") emit(" %re = load i32, ptr %fp\n") emit(" br label %done\n") emit("fresh:\n") emit(" %ec = load i32, ptr @L_entc\n") emit(" %ec1 = add i32 %ec, 1\n") + emit(" call void @L_grow(i32 %ec1)\n") # a slot past the stores doubles them first emit(" store i32 %ec1, ptr @L_entc\n") emit(" br label %done\n") emit("done:\n") emit(" %e = phi i32 [ %re, %reuse ], [ %ec, %fresh ]\n") emit(" call void @L_reset(i32 %e)\n") - emit(" %ap = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_alive, i32 0, i32 %e\n") + let eb5 = ecs_base("L_alive") + emit(" %ap = getelementptr inbounds i32, ptr "); emit(eb5); emit(", i32 %e\n") emit(" store i32 1, ptr %ap\n") emit(" ret i32 %e\n}\n\n") emit("define void @L_free_entity(i32 %e) {\nentry:\n") - emit(" %ap = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_alive, i32 0, i32 %e\n") + let eb6 = ecs_base("L_alive") + emit(" %ap = getelementptr inbounds i32, ptr "); emit(eb6); emit(", i32 %e\n") emit(" store i32 0, ptr %ap\n") emit(" call void @L_reset(i32 %e)\n") emit(" %fn = load i32, ptr @L_freen\n") - emit(" %fp = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_freelist, i32 0, i32 %fn\n") + let eb7 = ecs_base("L_freelist") + emit(" %fp = getelementptr inbounds i32, ptr "); emit(eb7); emit(", i32 %fn\n") emit(" store i32 %e, ptr %fp\n") emit(" %fn1 = add i32 %fn, 1\n") emit(" store i32 %fn1, ptr @L_freen\n") emit(" ret void\n}\n\n") } + +# the base of a per-entity store, loaded where it is indexed (a store moves when L_grow doubles it) +function ecs_base(store: pointer) -> pointer { + let r = `%ecsb{itoa(ll_t)}` # its own prefix: raw functions name blocks t0, t1, ... + ll_t += 1 + emit(` {r} = load ptr, ptr @{store}\n`) + return r +} + +# L_grow(need): every per-entity store holds at least `need` slots - doubled from MAX_ENT as the +# entities outgrow them, the new slots zero, the mods' registered stores with them. Nothing is +# ever moved back down: an entity's slot is its handle for its whole life. +function emit_ecs_grow() -> void { + emit("define void @L_grow(i32 %need) {\nentry:\n %cap = load i32, ptr @L_cap\n") + emit(" %ok = icmp sle i32 %need, %cap\n br i1 %ok, label %done, label %grow\ngrow:\n") + emit(` %c0 = icmp eq i32 %cap, 0\n %start = select i1 %c0, i32 {itoa(MAX_ENT)}, i32 %cap\n br label %dbl\n`) + emit("dbl:\n %nc = phi i32 [ %start, %grow ], [ %nc2, %dbl2 ]\n %enough = icmp sge i32 %nc, %need\n") + emit(" br i1 %enough, label %apply, label %dbl2\ndbl2:\n %nc2 = mul i32 %nc, 2\n br label %dbl\n") + emit("apply:\n %cap64 = sext i32 %cap to i64\n %nc64 = sext i32 %nc to i64\n") + emit_grow_store("L_alive", "4", 0) + emit_grow_store("L_kind", "4", 1) + emit_grow_store("L_freelist", "4", 2) + if net_has_owned() { emit_grow_store("L_owner_arr", "4", 3) } + var k = 4 + var i = 0 + while i < len(prog) { + if prog[i].kind == N_COMP { + let sz = `%gs{itoa(k)}` + emit(` {sz} = ptrtoint ptr getelementptr (%Cmp_{prog[i].s}, ptr null, i32 1) to i64\n`) + emit_grow_store(`S_{prog[i].s}`, sz, k) + emit_grow_store(`H_{prog[i].s}`, "1", k + 1) + k += 2 + } + i += 1 + } + emit_grow_dyn() + emit("fin:\n store i32 %nc, ptr @L_cap\n br label %done\ndone:\n ret void\n}\n\n") +} + +# one store to nc slots of `esz` bytes: reallocated (8 bytes spare, so a field-less tag is never +# a zero-byte block), its new tail zeroed +function emit_grow_store(store: pointer, esz: pointer, k: int) -> void { + let n = itoa(k) + emit(` %gp{n} = load ptr, ptr @{store}\n %gb{n} = mul i64 %nc64, {esz}\n %gr{n} = add i64 %gb{n}, 8\n`) + emit(` %gn{n} = call ptr @realloc(ptr %gp{n}, i64 %gr{n})\n %go{n} = mul i64 %cap64, {esz}\n`) + emit(` %gt{n} = getelementptr i8, ptr %gn{n}, i64 %go{n}\n %gz{n} = sub i64 %gr{n}, %go{n}\n`) + emit(` %gm{n} = call ptr @memset(ptr %gt{n}, i32 0, i64 %gz{n})\n store ptr %gn{n}, ptr @{store}\n`) +} + +# the stores a mod registered at run time (ludic_register_prop), grown the same way +function emit_grow_dyn() -> void { + emit(" br label %dynh\ndynh:\n %di = phi i32 [ 0, %apply ], [ %di1, %dynb ]\n %dcn = load i32, ptr @dyn_count\n") + emit(" %dmore = icmp slt i32 %di, %dcn\n br i1 %dmore, label %dynb, label %fin\ndynb:\n") + emit(" %dfp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %di\n %dnf = load i32, ptr %dfp\n") + emit(" %dnf4 = mul i32 %dnf, 4\n %desz = sext i32 %dnf4 to i64\n") + emit_grow_slot("dynS", "%desz", "s") + emit_grow_slot("dynH", "1", "h") + emit(" %di1 = add i32 %di, 1\n br label %dynh\n") +} + +function emit_grow_slot(table: pointer, esz: pointer, t: pointer) -> void { + emit(` %d{t}p = getelementptr inbounds [32 x ptr], ptr @{table}, i32 0, i32 %di\n %d{t}o = load ptr, ptr %d{t}p\n`) + emit(` %d{t}b = mul i64 %nc64, {esz}\n %d{t}r = add i64 %d{t}b, 8\n %d{t}n = call ptr @realloc(ptr %d{t}o, i64 %d{t}r)\n`) + emit(` %d{t}f = mul i64 %cap64, {esz}\n %d{t}t = getelementptr i8, ptr %d{t}n, i64 %d{t}f\n %d{t}z = sub i64 %d{t}r, %d{t}f\n`) + emit(` %d{t}m = call ptr @memset(ptr %d{t}t, i32 0, i64 %d{t}z)\n store ptr %d{t}n, ptr %d{t}p\n`) +} diff --git a/selfhost/backend/game/emit_game.ludic b/selfhost/backend/game/emit_game.ludic index 05156e9b..621b3f3f 100644 --- a/selfhost/backend/game/emit_game.ludic +++ b/selfhost/backend/game/emit_game.ludic @@ -93,7 +93,8 @@ function emit_countdown_system() -> void { emit(" %n = load i32, ptr @L_entc\n br label %loop\nloop:\n") emit(" %i = phi i32 [ 0, %entry ], [ %i1, %next ]\n") emit(" %go = icmp slt i32 %i, %n\n br i1 %go, label %body, label %done\nbody:\n") - emit(" %ap = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_alive, i32 0, i32 %i\n") + let eb1 = ecs_base("L_alive") + emit(" %ap = getelementptr inbounds i32, ptr "); emit(eb1); emit(", i32 %i\n") emit(" %al = load i32, ptr %ap\n %alive = icmp ne i32 %al, 0\n br i1 %alive, label %c0, label %next\n") var k = 0 var i = 0 @@ -106,12 +107,14 @@ function emit_countdown_system() -> void { if any { let sk = itoa(k); let nk = itoa(k + 1) emit("c"); emit(sk); emit(":\n") - emit(" %h"); emit(sk); emit(" = getelementptr inbounds ["); emit(me); emit(" x i8], ptr @H_"); emit(d.s); emit(", i32 0, i32 %i\n") + let eb2 = ecs_base(`H_{d.s}`) + emit(" %h"); emit(sk); emit(" = getelementptr inbounds i8, ptr "); emit(eb2); emit(", i32 %i\n") emit(" %hv"); emit(sk); emit(" = load i8, ptr %h"); emit(sk); emit("\n") emit(" %has"); emit(sk); emit(" = icmp ne i8 %hv"); emit(sk); emit(", 0\n") emit(" br i1 %has"); emit(sk); emit(", label %t"); emit(sk); emit(", label %c"); emit(nk); emit("\n") emit("t"); emit(sk); emit(":\n") - emit(" %s"); emit(sk); emit(" = getelementptr inbounds ["); emit(me); emit(" x %Cmp_"); emit(d.s); emit("], ptr @S_"); emit(d.s); emit(", i32 0, i32 %i\n") + let eb3 = ecs_base(`S_{d.s}`) + emit(" %s"); emit(sk); emit(" = getelementptr inbounds %Cmp_"); emit(d.s); emit(", ptr "); emit(eb3); emit(", i32 %i\n") f = 0 while f < len(d.kids) { if (d.kids[f].ty == "countdown") { @@ -474,7 +477,8 @@ function emit_world_despawn_fn() -> void { emit("define void @fn_world_despawn(i32 %e) {\nentry:\n") if len(g_ondespawn) > 0 { let me = itoa(MAX_ENT) - emit(" %kp = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_kind, i32 0, i32 %e\n") + let eb4 = ecs_base("L_kind") + emit(" %kp = getelementptr inbounds i32, ptr "); emit(eb4); emit(", i32 %e\n") emit(" %k = load i32, ptr %kp\n") var i = 0 while i < len(g_ondespawn) { @@ -508,10 +512,14 @@ function emit_despawn_all_fn() -> void { emit("loop:\n %i = phi i32 [ 0, %entry ], [ %i1, %cont ]\n") emit(" %n = load i32, ptr @L_entc\n %go = icmp slt i32 %i, %n\n") emit(" br i1 %go, label %body, label %fin\n") - emit("body:\n %ap = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_alive, i32 0, i32 %i\n") + emit("body:\n") + let eb5 = ecs_base("L_alive") + emit(" %ap = getelementptr inbounds i32, ptr "); emit(eb5); emit(", i32 %i\n") emit(" %al = load i32, ptr %ap\n %isa = icmp ne i32 %al, 0\n") emit(" br i1 %isa, label %do, label %cont\n") - emit("do:\n %kp = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_kind, i32 0, i32 %i\n") + emit("do:\n") + let eb6 = ecs_base("L_kind") + emit(" %kp = getelementptr inbounds i32, ptr "); emit(eb6); emit(", i32 %i\n") emit(" %k = load i32, ptr %kp\n") var i = 0 while i < len(g_ondespawn) { @@ -608,7 +616,8 @@ function emit_event_fns() -> void { emit(" %n = load i32, ptr @evN_"); emit(en); emit("\n") emit(" %lo = icmp sge i32 %tok, 0\n %hi = icmp slt i32 %tok, %n\n %ok = and i1 %lo, %hi\n") emit(" br i1 %ok, label %do, label %skip\n") - emit("do:\n %slot = getelementptr inbounds ["); emit(cap); emit(" x ptr], ptr @evL_"); emit(en); emit(", i32 0, i32 %tok\n") + emit("do:\n") + emit(" %slot = getelementptr inbounds ["); emit(cap); emit(" x ptr], ptr @evL_"); emit(en); emit(", i32 0, i32 %tok\n") emit(" store ptr null, ptr %slot\n br label %skip\n") emit("skip:\n ret void\n}\n\n") diff --git a/selfhost/backend/game/emit_query.ludic b/selfhost/backend/game/emit_query.ludic index ba1ce6d7..188a4cea 100644 --- a/selfhost/backend/game/emit_query.ludic +++ b/selfhost/backend/game/emit_query.ludic @@ -25,7 +25,8 @@ function emit_query(st: Node) -> void { emit(body); emit(":\n"); g_term = false let i1 = emit_bind(`load i32, ptr {ip}`) # alive? - let ap = nreg(); emit(" "); emit(ap); emit(" = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_alive, i32 0, i32 "); emit(i1); emit("\n") + let eb1 = ecs_base("L_alive") + let ap = nreg(); emit(" "); emit(ap); emit(" = getelementptr inbounds i32, ptr "); emit(eb1); emit(", i32 "); emit(i1); emit("\n") let al = emit_bind(`load i32, ptr {ap}`) let alc = emit_bind(`icmp ne i32 {al}, 0`) let ka = lbl("qa") @@ -40,14 +41,16 @@ function emit_query(st: Node) -> void { let ak = find_arch_id(tm.s) var ok: pointer = "0" if ak > 0 { - let kp = nreg(); emit(" "); emit(kp); emit(" = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_kind, i32 0, i32 "); emit(i1); emit("\n") + let eb2 = ecs_base("L_kind") + let kp = nreg(); emit(" "); emit(kp); emit(" = getelementptr inbounds i32, ptr "); emit(eb2); emit(", i32 "); emit(i1); emit("\n") let kv = emit_bind(`load i32, ptr {kp}`) let kok = emit_bind(`icmp eq i32 {kv}, {itoa(ak)}`) let mev = emit_bind(`load i32, ptr @ME_{tm.s}`) # model-enabled flag let meok = emit_bind(`icmp ne i32 {mev}, 0`) ok = emit_bind(`and i1 {kok}, {meok}`) } else { - let hp = nreg(); emit(" "); emit(hp); emit(" = getelementptr inbounds ["); emit(me); emit(" x i8], ptr @H_"); emit(tm.s); emit(", i32 0, i32 "); emit(i1); emit("\n") + let eb3 = ecs_base(`H_{tm.s}`) + let hp = nreg(); emit(" "); emit(hp); emit(" = getelementptr inbounds i8, ptr "); emit(eb3); emit(", i32 "); emit(i1); emit("\n") let hv = emit_bind(`load i8, ptr {hp}`) ok = emit_bind(`icmp ne i8 {hv}, 0`) } @@ -66,7 +69,8 @@ function emit_query(st: Node) -> void { if tm.ival == 0 and find_arch_id(tm.s) == 0 { if vi < len(st.kids) { let slot = nreg() - emit(" "); emit(slot); emit(" = getelementptr inbounds ["); emit(me); emit(" x %Cmp_"); emit(tm.s); emit("], ptr @S_"); emit(tm.s); emit(", i32 0, i32 "); emit(i1); emit("\n") + let eb4 = ecs_base(`S_{tm.s}`) + emit(" "); emit(slot); emit(" = getelementptr inbounds %Cmp_"); emit(tm.s); emit(", ptr "); emit(eb4); emit(", i32 "); emit(i1); emit("\n") let vslot = emit_alloca("ptr") emit(" store ptr "); emit(slot); emit(", ptr "); emit(vslot); emit("\n") loc_push(st.kids[vi].s, vslot, tm.s) diff --git a/selfhost/backend/game/emit_save.ludic b/selfhost/backend/game/emit_save.ludic index f19540a1..95d97810 100644 --- a/selfhost/backend/game/emit_save.ludic +++ b/selfhost/backend/game/emit_save.ludic @@ -46,16 +46,23 @@ function emit_io(fn2: pointer, p: pointer, bytes: pointer) -> void { function emit_snapshot_blocks(fn2: pointer) -> void { g_iok = 0 g_off = "0" - let me = itoa(MAX_ENT) + # the stores grow, so a snapshot says how many slots it holds first; a load grows to it before + # reading them back + let reading = (fn2 == "fread") or (g_snap_mode == "load") + if not reading { emit(" %sncap0 = load i32, ptr @L_cap\n store i32 %sncap0, ptr @L_snapcap\n") } + emit_io(fn2, "@L_snapcap", "4") + emit(" %sncap = load i32, ptr @L_snapcap\n") + if reading { emit(" call void @L_grow(i32 %sncap)\n") } + emit(" %sncap64 = sext i32 %sncap to i64\n") emit_io(fn2, "@L_entc", "4") emit_io(fn2, "@L_freen", "4") - emit(" %nalive = mul i64 "); emit(me); emit(", 4\n") - emit_io(fn2, "@L_alive", "%nalive") - emit_io(fn2, "@L_freelist", "%nalive") - emit_io(fn2, "@L_kind", "%nalive") + emit(" %nalive = mul i64 %sncap64, 4\n") + emit_io(fn2, snap_base("L_alive", 0), "%nalive") + emit_io(fn2, snap_base("L_freelist", 1), "%nalive") + emit_io(fn2, snap_base("L_kind", 2), "%nalive") # N3: an @Owned world snapshots its per-entity owners too, so rollback/replication # round-trips ownership (like @L_kind). Gated, so non-@Owned snapshots are unchanged. - if net_has_owned() { emit_io(fn2, "@L_owner_arr", "%nalive") } + if net_has_owned() { emit_io(fn2, snap_base("L_owner_arr", 3), "%nalive") } var i = 0 while i < len(prog) { if prog[i].kind == N_VAR { emit_io(fn2, `@g_{prog[i].s}`, "4") }; i += 1 } var ci = 0 @@ -63,16 +70,25 @@ function emit_snapshot_blocks(fn2: pointer) -> void { while i < len(prog) { if prog[i].kind == N_COMP { let c = prog[i].s + let csz1 = `%csz1_{itoa(ci)}` let csz = `%csz{itoa(ci)}` - emit(" "); emit(csz); emit(" = ptrtoint ptr getelementptr (%Cmp_"); emit(c); emit(", ptr null, i32 "); emit(me); emit(") to i64\n") - emit_io(fn2, `@S_{c}`, csz) - emit_io(fn2, `@H_{c}`, me) + emit(" "); emit(csz1); emit(" = ptrtoint ptr getelementptr (%Cmp_"); emit(c); emit(", ptr null, i32 1) to i64\n") + emit(" "); emit(csz); emit(" = mul i64 %sncap64, "); emit(csz1); emit("\n") + emit_io(fn2, snap_base(`S_{c}`, 4 + ci * 2), csz) + emit_io(fn2, snap_base(`H_{c}`, 5 + ci * 2), "%sncap64") ci += 1 } i += 1 } } +# a store's base, loaded after any grow the snapshot made +function snap_base(store: pointer, k: int) -> pointer { + let r = `%snb{itoa(k)}` + emit(` {r} = load ptr, ptr @{store}\n`) + return r +} + function emit_snapshot() -> void { g_snap_mode = "file" # seed (module ptr inits are null) emith("@.sav_path = private unnamed_addr constant [10 x i8] c\"ludic.sav\\00\"\n") diff --git a/selfhost/backend/game/emit_spawn.ludic b/selfhost/backend/game/emit_spawn.ludic index f1c1eb51..c8910e35 100644 --- a/selfhost/backend/game/emit_spawn.ludic +++ b/selfhost/backend/game/emit_spawn.ludic @@ -15,10 +15,12 @@ function emit_init_component(e: pointer, comp: pointer, rec: Node) -> void { let me = itoa(MAX_ENT) let c = find_comp(comp) if (c == null) { perr(`spawn: unknown property {comp}`) } - let hp = nreg(); emit(" "); emit(hp); emit(" = getelementptr inbounds ["); emit(me); emit(" x i8], ptr @H_"); emit(comp); emit(", i32 0, i32 "); emit(e); emit("\n") + let eb1 = ecs_base(`H_{comp}`) + let hp = nreg(); emit(" "); emit(hp); emit(" = getelementptr inbounds i8, ptr "); emit(eb1); emit(", i32 "); emit(e); emit("\n") emit(" store i8 1, ptr "); emit(hp); emit("\n") let slot = nreg() - emit(" "); emit(slot); emit(" = getelementptr inbounds ["); emit(me); emit(" x %Cmp_"); emit(comp); emit("], ptr @S_"); emit(comp); emit(", i32 0, i32 "); emit(e); emit("\n") + let eb2 = ecs_base(`S_{comp}`) + emit(" "); emit(slot); emit(" = getelementptr inbounds %Cmp_"); emit(comp); emit(", ptr "); emit(eb2); emit(", i32 "); emit(e); emit("\n") # defaults var f = 0 while f < len(c.kids) { @@ -71,7 +73,8 @@ function emit_bind_props(model: Node, e: pointer) -> void { while c < len(model.kids) { let pname = model.kids[c].s let slot = nreg() - emit(" "); emit(slot); emit(" = getelementptr inbounds ["); emit(me); emit(" x %Cmp_"); emit(pname); emit("], ptr @S_"); emit(pname); emit(", i32 0, i32 "); emit(e); emit("\n") + let eb3 = ecs_base(`S_{pname}`) + emit(" "); emit(slot); emit(" = getelementptr inbounds %Cmp_"); emit(pname); emit(", ptr "); emit(eb3); emit(", i32 "); emit(e); emit("\n") let vslot = emit_alloca("ptr") emit(" store ptr "); emit(slot); emit(", ptr "); emit(vslot); emit("\n") loc_push(pname, vslot, pname) @@ -146,7 +149,8 @@ function emit_spawn(st: Node) -> pointer { if (find_prefab(st.s) != null) and (ak == 0) { perr(`prefab {st.s}: unknown model {model}`) } if ak > 0 { let me = itoa(MAX_ENT) - let kp = nreg(); emit(" "); emit(kp); emit(" = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_kind, i32 0, i32 "); emit(e); emit("\n") + let eb4 = ecs_base("L_kind") + let kp = nreg(); emit(" "); emit(kp); emit(" = getelementptr inbounds i32, ptr "); emit(eb4); emit(", i32 "); emit(e); emit("\n") emit(" store i32 "); emit(itoa(ak)); emit(", ptr "); emit(kp); emit("\n") let arch = find_arch(model) var c = 0 @@ -179,7 +183,8 @@ function emit_despawn(st: Node) -> void { # @OnDespawn: dispatch on the entity's kind and run the matching model's hook if len(g_ondespawn) > 0 { let me = itoa(MAX_ENT) - let kp = nreg(); emit(" "); emit(kp); emit(" = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_kind, i32 0, i32 "); emit(v.code); emit("\n") + let eb5 = ecs_base("L_kind") + let kp = nreg(); emit(" "); emit(kp); emit(" = getelementptr inbounds i32, ptr "); emit(eb5); emit(", i32 "); emit(v.code); emit("\n") let kind = emit_bind(`load i32, ptr {kp}`) var i = 0 while i < len(g_ondespawn) { @@ -205,7 +210,8 @@ function emit_despawn(st: Node) -> void { function emit_attach(st: Node) -> void { let ev = emit_expr(st.a) let me = itoa(MAX_ENT) - let hp = nreg(); emit(" "); emit(hp); emit(" = getelementptr inbounds ["); emit(me); emit(" x i8], ptr @H_"); emit(st.s); emit(", i32 0, i32 "); emit(ev.code); emit("\n") + let eb6 = ecs_base(`H_{st.s}`) + let hp = nreg(); emit(" "); emit(hp); emit(" = getelementptr inbounds i8, ptr "); emit(eb6); emit(", i32 "); emit(ev.code); emit("\n") let cur = emit_bind(`load i8, ptr {hp}`) let isnew = emit_bind(`icmp eq i8 {cur}, 0`) let doit = lbl("attach"); let done = lbl("attdone") @@ -223,7 +229,8 @@ function emit_attach(st: Node) -> void { function emit_detach(st: Node) -> void { let ev = emit_expr(st.a) let me = itoa(MAX_ENT) - let hp = nreg(); emit(" "); emit(hp); emit(" = getelementptr inbounds ["); emit(me); emit(" x i8], ptr @H_"); emit(st.s); emit(", i32 0, i32 "); emit(ev.code); emit("\n") + let eb7 = ecs_base(`H_{st.s}`) + let hp = nreg(); emit(" "); emit(hp); emit(" = getelementptr inbounds i8, ptr "); emit(eb7); emit(", i32 "); emit(ev.code); emit("\n") let cur = emit_bind(`load i8, ptr {hp}`) let here = emit_bind(`icmp ne i8 {cur}, 0`) let doit = lbl("detach"); let done = lbl("detdone") @@ -233,7 +240,8 @@ function emit_detach(st: Node) -> void { let hb = ondetach_body(st.s) # @OnDetach reads the outgoing value if (hb != null) { let save = nloc - let slot = nreg(); emit(" "); emit(slot); emit(" = getelementptr inbounds ["); emit(me); emit(" x %Cmp_"); emit(st.s); emit("], ptr @S_"); emit(st.s); emit(", i32 0, i32 "); emit(ev.code); emit("\n") + let eb8 = ecs_base(`S_{st.s}`) + let slot = nreg(); emit(" "); emit(slot); emit(" = getelementptr inbounds %Cmp_"); emit(st.s); emit(", ptr "); emit(eb8); emit(", i32 "); emit(ev.code); emit("\n") let vslot = emit_alloca("ptr") emit(" store ptr "); emit(slot); emit(", ptr "); emit(vslot); emit("\n") loc_push(st.s, vslot, st.s) @@ -266,13 +274,15 @@ function emit_toggle(st: Node) -> void { if (st.a != null) { let ev = emit_expr(st.a) let me = itoa(MAX_ENT) - let hp = nreg(); emit(" "); emit(hp); emit(" = getelementptr inbounds ["); emit(me); emit(" x i8], ptr @H_"); emit(st.s); emit(", i32 0, i32 "); emit(ev.code); emit("\n") + let eb9 = ecs_base(`H_{st.s}`) + let hp = nreg(); emit(" "); emit(hp); emit(" = getelementptr inbounds i8, ptr "); emit(eb9); emit(", i32 "); emit(ev.code); emit("\n") emit(" store i8 "); emit(val); emit(", ptr "); emit(hp); emit("\n") var hb: Node = null if st.ival == 1 { hb = onenable_body(st.s) } else { hb = ondisable_body(st.s) } if (hb != null) { let save = nloc - let slot = nreg(); emit(" "); emit(slot); emit(" = getelementptr inbounds ["); emit(me); emit(" x %Cmp_"); emit(st.s); emit("], ptr @S_"); emit(st.s); emit(", i32 0, i32 "); emit(ev.code); emit("\n") + let eb10 = ecs_base(`S_{st.s}`) + let slot = nreg(); emit(" "); emit(slot); emit(" = getelementptr inbounds %Cmp_"); emit(st.s); emit(", ptr "); emit(eb10); emit(", i32 "); emit(ev.code); emit("\n") let vslot = emit_alloca("ptr") emit(" store ptr "); emit(slot); emit(", ptr "); emit(vslot); emit("\n") loc_push(st.s, vslot, st.s) diff --git a/selfhost/backend/game/emit_world.ludic b/selfhost/backend/game/emit_world.ludic index f0e1d7e8..cb3a01f0 100644 --- a/selfhost/backend/game/emit_world.ludic +++ b/selfhost/backend/game/emit_world.ludic @@ -96,7 +96,8 @@ function emit_world_table() -> void { emit(" %m"); emit(sk); emit(" = icmp eq i32 %p, "); emit(sk); emit("\n") emit(" br i1 %m"); emit(sk); emit(", label %g"); emit(sk); emit(", label %gn"); emit(sk); emit("\n") emit("g"); emit(sk); emit(":\n") - emit(" %s"); emit(sk); emit(" = getelementptr inbounds ["); emit(me); emit(" x %Cmp_"); emit(cn); emit("], ptr @S_"); emit(cn); emit(", i32 0, i32 %e\n") + let eb1 = ecs_base(`S_{cn}`) + emit(" %s"); emit(sk); emit(" = getelementptr inbounds %Cmp_"); emit(cn); emit(", ptr "); emit(eb1); emit(", i32 %e\n") var fj = 0 while fj < len(c.kids) { let ft = llty(c.kids[fj].ty); let fk = `{sk}_{itoa(fj)}` @@ -139,7 +140,8 @@ function emit_world_table() -> void { emit(" %m"); emit(sk); emit(" = icmp eq i32 %p, "); emit(sk); emit("\n") emit(" br i1 %m"); emit(sk); emit(", label %g"); emit(sk); emit(", label %gn"); emit(sk); emit("\n") emit("g"); emit(sk); emit(":\n") - emit(" %s"); emit(sk); emit(" = getelementptr inbounds ["); emit(me); emit(" x %Cmp_"); emit(cn); emit("], ptr @S_"); emit(cn); emit(", i32 0, i32 %e\n") + let eb2 = ecs_base(`S_{cn}`) + emit(" %s"); emit(sk); emit(" = getelementptr inbounds %Cmp_"); emit(cn); emit(", ptr "); emit(eb2); emit(", i32 %e\n") var fj = 0 while fj < len(c.kids) { let ft = llty(c.kids[fj].ty); let fk = `{sk}_{itoa(fj)}` @@ -182,7 +184,8 @@ function emit_world_table() -> void { emit(" %m"); emit(sk); emit(" = icmp eq i32 %p, "); emit(sk); emit("\n") emit(" br i1 %m"); emit(sk); emit(", label %g"); emit(sk); emit(", label %gn"); emit(sk); emit("\n") emit("g"); emit(sk); emit(":\n") - emit(" %hp"); emit(sk); emit(" = getelementptr inbounds ["); emit(me); emit(" x i8], ptr @H_"); emit(cn); emit(", i32 0, i32 %e\n") + let eb3 = ecs_base(`H_{cn}`) + emit(" %hp"); emit(sk); emit(" = getelementptr inbounds i8, ptr "); emit(eb3); emit(", i32 %e\n") emit(" %hv"); emit(sk); emit(" = load i8, ptr %hp"); emit(sk); emit("\n") emit(" %hr"); emit(sk); emit(" = zext i8 %hv"); emit(sk); emit(" to i32\n ret i32 %hr"); emit(sk); emit("\n") emit("gn"); emit(sk); emit(":\n") @@ -201,10 +204,10 @@ function emit_world_table() -> void { # zeroed. The returned id works with get/set/has/attach exactly like a built-in. emit("define i32 @ludic_register_prop(ptr %name, i32 %nfields) {\nentry:\n") emit(" %dc = load i32, ptr @dyn_count\n %full = icmp slt i32 %dc, 32\n br i1 %full, label %do, label %rej\n") - emit("do:\n %nf4 = mul i32 %nfields, 4\n %sz = mul i32 %nf4, "); emit(me); emit("\n %szl = sext i32 %sz to i64\n") + emit("do:\n %rcap = load i32, ptr @L_cap\n %nf4 = mul i32 %nfields, 4\n %sz = mul i32 %nf4, %rcap\n %szl = sext i32 %sz to i64\n") emit(" %buf = call ptr @malloc(i64 %szl)\n call ptr @memset(ptr %buf, i32 0, i64 %szl)\n") emit(" %sp = getelementptr inbounds [32 x ptr], ptr @dynS, i32 0, i32 %dc\n store ptr %buf, ptr %sp\n") - emit(" %hbuf = call ptr @malloc(i64 "); emit(me); emit(")\n call ptr @memset(ptr %hbuf, i32 0, i64 "); emit(me); emit(")\n") + emit(" %hcap = sext i32 %rcap to i64\n %hbuf = call ptr @malloc(i64 %hcap)\n call ptr @memset(ptr %hbuf, i32 0, i64 %hcap)\n") emit(" %hp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %dc\n store ptr %hbuf, ptr %hp\n") emit(" %fp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %dc\n store i32 %nfields, ptr %fp\n") emit(" %np = getelementptr inbounds [32 x ptr], ptr @dynName, i32 0, i32 %dc\n store ptr %name, ptr %np\n") @@ -222,7 +225,8 @@ function emit_world_table() -> void { # identifies each entity's model, then reads/writes it with get/set/has above. emit("define i32 @ludic_entity_count() {\nentry:\n %n = load i32, ptr @L_entc\n ret i32 %n\n}\n\n") emit("define i32 @ludic_kind(i32 %e) {\nentry:\n") - emit(" %kp = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_kind, i32 0, i32 %e\n") + let eb4 = ecs_base("L_kind") + emit(" %kp = getelementptr inbounds i32, ptr "); emit(eb4); emit(", i32 %e\n") emit(" %k = load i32, ptr %kp\n ret i32 %k\n}\n\n") emit("define i32 @ludic_model_id(ptr %name) {\nentry:\n") k = 0; i = 0 @@ -287,7 +291,9 @@ function emit_world_table() -> void { emit(" %n = load i32, ptr @L_entc\n br label %loop\n") emit("loop:\n %e = phi i32 [ %from, %entry ], [ %e1, %cont ]\n") emit(" %go = icmp slt i32 %e, %n\n br i1 %go, label %body, label %none\n") - emit("body:\n %ap = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_alive, i32 0, i32 %e\n") + emit("body:\n") + let eb5 = ecs_base("L_alive") + emit(" %ap = getelementptr inbounds i32, ptr "); emit(eb5); emit(", i32 %e\n") emit(" %al = load i32, ptr %ap\n %isa = icmp ne i32 %al, 0\n br i1 %isa, label %chk, label %cont\n") emit("chk:\n %h = call i32 @ludic_has(i32 %e, i32 %p)\n %hit = icmp ne i32 %h, 0\n br i1 %hit, label %hitb, label %cont\n") emit("hitb:\n ret i32 %e\n") @@ -446,6 +452,7 @@ function emit_game_main() -> void { emit(" store i32 %argc, ptr @L_argc\n") emit(" store ptr %argv, ptr @L_argv\n") emit(" call void @L_init_runtime()\n") + if has_ecs() { emit(" call void @L_grow(i32 1)\n") } if (find_fn("rt_init") != null) { emit(" call void " + fn_sym("rt_init") + "()\n") } emit(" call void @L_init_globals()\n") emit_calls_for_phase("Start") diff --git a/selfhost/backend/stdlib/emit_net.ludic b/selfhost/backend/stdlib/emit_net.ludic index afc14d1f..e2e1ca05 100644 --- a/selfhost/backend/stdlib/emit_net.ludic +++ b/selfhost/backend/stdlib/emit_net.ludic @@ -121,7 +121,8 @@ function emit_net_serialize(m: Node) -> void { let cn = m.kids[ci].s let c = find_comp(cn) if (c != null) { - let s = nreg(); emit(" "); emit(s); emit(" = getelementptr inbounds ["); emit(me); emit(" x %Cmp_"); emit(cn); emit("], ptr @S_"); emit(cn); emit(", i32 0, i32 %e\n") + let eb1 = ecs_base(`S_{cn}`) + let s = nreg(); emit(" "); emit(s); emit(" = getelementptr inbounds %Cmp_"); emit(cn); emit(", ptr "); emit(eb1); emit(", i32 %e\n") var fj = 0 while fj < len(c.kids) { if c.kids[fj].ival == 1 { @@ -154,7 +155,8 @@ function emit_net_apply(m: Node) -> void { let cn = m.kids[ci].s let c = find_comp(cn) if (c != null) { - let s = nreg(); emit(" "); emit(s); emit(" = getelementptr inbounds ["); emit(me); emit(" x %Cmp_"); emit(cn); emit("], ptr @S_"); emit(cn); emit(", i32 0, i32 %e\n") + let eb2 = ecs_base(`S_{cn}`) + let s = nreg(); emit(" "); emit(s); emit(" = getelementptr inbounds %Cmp_"); emit(cn); emit(", ptr "); emit(eb2); emit(", i32 %e\n") var fj = 0 while fj < len(c.kids) { if c.kids[fj].ival == 1 { @@ -181,7 +183,8 @@ function emit_net_dispatch() -> void { let me = itoa(MAX_ENT) emit("define i32 @ludic_serialize(i32 %e, ptr %buf) {\nentry:\n") - emit(" %kp = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_kind, i32 0, i32 %e\n %k = load i32, ptr %kp\n") + let eb3 = ecs_base("L_kind") + emit(" %kp = getelementptr inbounds i32, ptr "); emit(eb3); emit(", i32 %e\n %k = load i32, ptr %kp\n") var k = 0 var i = 0 while i < len(prog) { @@ -198,7 +201,8 @@ function emit_net_dispatch() -> void { emit(" ret i32 0\n}\n\n") emit("define void @ludic_apply(i32 %e, ptr %buf, i32 %len) {\nentry:\n") - emit(" %kp = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_kind, i32 0, i32 %e\n %k = load i32, ptr %kp\n") + let eb4 = ecs_base("L_kind") + emit(" %kp = getelementptr inbounds i32, ptr "); emit(eb4); emit(", i32 %e\n %k = load i32, ptr %kp\n") k = 0; i = 0 while i < len(prog) { if prog[i].kind == N_ARCH and net_model_syncs(prog[i]) { @@ -216,7 +220,8 @@ function emit_net_dispatch() -> void { # ludic_sync_size(e): the replicated byte count for the entity's model — a # constant per kind, so a runtime can size a buffer before serialize. emit("define i32 @ludic_sync_size(i32 %e) {\nentry:\n") - emit(" %kp = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_kind, i32 0, i32 %e\n %k = load i32, ptr %kp\n") + let eb5 = ecs_base("L_kind") + emit(" %kp = getelementptr inbounds i32, ptr "); emit(eb5); emit(", i32 %e\n %k = load i32, ptr %kp\n") k = 0; i = 0 while i < len(prog) { if prog[i].kind == N_ARCH and net_model_syncs(prog[i]) { @@ -239,12 +244,15 @@ function emit_net_dispatch() -> void { function emit_net_owner() -> void { let me = itoa(MAX_ENT) emit("define i32 @L_owner(i32 %e) {\nentry:\n") - emit(" %p = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_owner_arr, i32 0, i32 %e\n %v = load i32, ptr %p\n ret i32 %v\n}\n\n") + let eb6 = ecs_base("L_owner_arr") + emit(" %p = getelementptr inbounds i32, ptr "); emit(eb6); emit(", i32 %e\n %v = load i32, ptr %p\n ret i32 %v\n}\n\n") emit("define void @L_set_owner(i32 %e, i32 %id) {\nentry:\n") - emit(" %p = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_owner_arr, i32 0, i32 %e\n store i32 %id, ptr %p\n ret void\n}\n\n") + let eb7 = ecs_base("L_owner_arr") + emit(" %p = getelementptr inbounds i32, ptr "); emit(eb7); emit(", i32 %e\n store i32 %id, ptr %p\n ret void\n}\n\n") # is_owner(e): does the local peer own e? owner(e) == local_id(). emit("define i32 @L_is_owner(i32 %e) {\nentry:\n") - emit(" %p = getelementptr inbounds ["); emit(me); emit(" x i32], ptr @L_owner_arr, i32 0, i32 %e\n %o = load i32, ptr %p\n") + let eb8 = ecs_base("L_owner_arr") + emit(" %p = getelementptr inbounds i32, ptr "); emit(eb8); emit(", i32 %e\n %o = load i32, ptr %p\n") emit(" %lid = load i32, ptr @L_localid\n %eq = icmp eq i32 %o, %lid\n %r = zext i1 %eq to i32\n ret i32 %r\n}\n\n") } diff --git a/selfhost/frontend/actions.ludic b/selfhost/frontend/actions.ludic index 6de5b6aa..e9790a05 100644 --- a/selfhost/frontend/actions.ludic +++ b/selfhost/frontend/actions.ludic @@ -147,7 +147,7 @@ function red_check(i: int) -> void { function act_src() -> pointer { var src = "export state LudicActions {\n kinds: []int = new []int\n vals: []pointer = new []pointer\n head: int = 0\n depth: int = 0\n}\n" src = src + "export function ludic_act_push(q: mut LudicActions, k: int, v: pointer) -> void {\n push(q.kinds, k)\n push(q.vals, v)\n}\n" - src = src + "export function drain_actions(q: mut LudicActions) -> void {\n if q.depth > 0 { return }\n q.depth = 1\n var pass = 0\n var round_end = len(q.kinds)\n" + src = src + "export function drain_actions(q: mut LudicActions) -> void {\n if q.depth > 0 or len(q.kinds) == 0 { return }\n q.depth = 1\n var pass = 0\n var round_end = len(q.kinds)\n" src = src + " while q.head < len(q.kinds) {\n if q.head == round_end {\n pass += 1\n round_end = len(q.kinds)\n" src = src + ` if pass >= {itoa(ACTION_PASSES)} {{ ludic_act_runaway(q.kinds[q.head]) }}\n }}\n` src = src + " let k = q.kinds[q.head]\n let v = q.vals[q.head]\n q.head += 1\n" @@ -165,7 +165,7 @@ function act_src() -> pointer { } a += 1 } - src = src + " }\n q.kinds = new []int\n q.vals = new []pointer\n q.head = 0\n q.depth = 0\n}\n" + src = src + " }\n List.clear(q.kinds)\n List.clear(q.vals)\n q.head = 0\n q.depth = 0\n}\n" # in place: a drain a phase, seven a frame, allocates nothing src = src + "export function ludic_act_runaway(k: int) -> void {\n var name = \"?\"\n" a = 0 while a < len(g_act_names) { diff --git a/selfhost/ludicc.seed.ll b/selfhost/ludicc.seed.ll index 1f8f922f..2ab47f64 100644 --- a/selfhost/ludicc.seed.ll +++ b/selfhost/ludicc.seed.ll @@ -1728,7 +1728,7 @@ declare void @hs_free(i32) @.str1311 = private unnamed_addr constant [2 x i8] c")\00" @.str1312 = private unnamed_addr constant [125 x i8] c"export state LudicActions {\0A kinds: []int = new []int\0A vals: []pointer = new []pointer\0A head: int = 0\0A depth: int = 0\0A}\0A\00" @.str1313 = private unnamed_addr constant [122 x i8] c"export function ludic_act_push(q: mut LudicActions, k: int, v: pointer) -> void {\0A push(q.kinds, k)\0A push(q.vals, v)\0A}\0A\00" -@.str1314 = private unnamed_addr constant [150 x i8] c"export function drain_actions(q: mut LudicActions) -> void {\0A if q.depth > 0 { return }\0A q.depth = 1\0A var pass = 0\0A var round_end = len(q.kinds)\0A\00" +@.str1314 = private unnamed_addr constant [171 x i8] c"export function drain_actions(q: mut LudicActions) -> void {\0A if q.depth > 0 or len(q.kinds) == 0 { return }\0A q.depth = 1\0A var pass = 0\0A var round_end = len(q.kinds)\0A\00" @.str1315 = private unnamed_addr constant [109 x i8] c" while q.head < len(q.kinds) {\0A if q.head == round_end {\0A pass += 1\0A round_end = len(q.kinds)\0A\00" @.str1316 = private unnamed_addr constant [18 x i8] c" if pass >= \00" @.str1317 = private unnamed_addr constant [47 x i8] c" { ludic_act_runaway(q.kinds[q.head]) }\0A }\0A\00" @@ -1741,7 +1741,7 @@ declare void @hs_free(i32) @.str1324 = private unnamed_addr constant [54 x i8] c"build/cfree/selfhost.ludic:4082: index out of range: \00" @.str1325 = private unnamed_addr constant [5 x i8] c"(v)\0A\00" @.str1326 = private unnamed_addr constant [7 x i8] c" }\0A\00" -@.str1327 = private unnamed_addr constant [81 x i8] c" }\0A q.kinds = new []int\0A q.vals = new []pointer\0A q.head = 0\0A q.depth = 0\0A}\0A\00" +@.str1327 = private unnamed_addr constant [77 x i8] c" }\0A List.clear(q.kinds)\0A List.clear(q.vals)\0A q.head = 0\0A q.depth = 0\0A}\0A\00" @.str1328 = private unnamed_addr constant [70 x i8] c"export function ludic_act_runaway(k: int) -> void {\0A var name = \22?\22\0A\00" @.str1329 = private unnamed_addr constant [11 x i8] c" if k == \00" @.str1330 = private unnamed_addr constant [12 x i8] c" { name = \22\00" @@ -10273,4316 +10273,4460 @@ declare void @hs_free(i32) @.str9856 = private unnamed_addr constant [10 x i8] c", label %\00" @.str9857 = private unnamed_addr constant [2 x i8] c"\0A\00" @.str9858 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str9859 = private unnamed_addr constant [25 x i8] c"getelementptr inbounds [\00" -@.str9860 = private unnamed_addr constant [35 x i8] c" x i32], ptr @L_alive, i32 0, i32 \00" -@.str9861 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str9862 = private unnamed_addr constant [25 x i8] c"getelementptr inbounds [\00" -@.str9863 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str9864 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str9865 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" -@.str9866 = private unnamed_addr constant [9 x i8] c"zext i8 \00" -@.str9867 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str9868 = private unnamed_addr constant [9 x i8] c"and i32 \00" -@.str9869 = private unnamed_addr constant [3 x i8] c", \00" -@.str9870 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str9871 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str9872 = private unnamed_addr constant [3 x i8] c", \00" -@.str9873 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str9874 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str9875 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str9876 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str9877 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str9878 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str9879 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str9880 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str9881 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str9882 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str9883 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str9884 = private unnamed_addr constant [4 x i8] c"int\00" -@.str9885 = private unnamed_addr constant [2 x i8] c".\00" -@.str9886 = private unnamed_addr constant [32 x i8] c" takes one argument: the entity\00" -@.str9887 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15344: index out of range: \00" -@.str9888 = private unnamed_addr constant [3 x i8] c"of\00" -@.str9889 = private unnamed_addr constant [25 x i8] c"getelementptr inbounds [\00" -@.str9890 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str9891 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str9892 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str9893 = private unnamed_addr constant [14 x i8] c"icmp ult i32 \00" -@.str9894 = private unnamed_addr constant [3 x i8] c", \00" -@.str9895 = private unnamed_addr constant [11 x i8] c"select i1 \00" -@.str9896 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str9897 = private unnamed_addr constant [8 x i8] c", i32 0\00" -@.str9898 = private unnamed_addr constant [25 x i8] c"getelementptr inbounds [\00" -@.str9899 = private unnamed_addr constant [35 x i8] c" x i32], ptr @L_alive, i32 0, i32 \00" -@.str9900 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str9901 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str9902 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str9903 = private unnamed_addr constant [25 x i8] c"getelementptr inbounds [\00" -@.str9904 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str9905 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str9906 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" -@.str9907 = private unnamed_addr constant [12 x i8] c"icmp ne i8 \00" -@.str9908 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str9909 = private unnamed_addr constant [8 x i8] c"and i1 \00" -@.str9910 = private unnamed_addr constant [3 x i8] c", \00" -@.str9911 = private unnamed_addr constant [8 x i8] c"and i1 \00" -@.str9912 = private unnamed_addr constant [3 x i8] c", \00" -@.str9913 = private unnamed_addr constant [9 x i8] c"zext i1 \00" -@.str9914 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str9915 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str9916 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15366: index out of range: \00" -@.str9917 = private unnamed_addr constant [5 x i8] c"name\00" -@.str9918 = private unnamed_addr constant [7 x i8] c"string\00" -@.str9919 = private unnamed_addr constant [17 x i8] c"unknown builtin \00" -@.str9920 = private unnamed_addr constant [2 x i8] c".\00" -@.str9921 = private unnamed_addr constant [3 x i8] c"of\00" -@.str9922 = private unnamed_addr constant [4 x i8] c"has\00" -@.str9923 = private unnamed_addr constant [6 x i8] c"count\00" -@.str9924 = private unnamed_addr constant [12 x i8] c"despawn_all\00" -@.str9925 = private unnamed_addr constant [2 x i8] c"_\00" -@.str9926 = private unnamed_addr constant [5 x i8] c"Math\00" -@.str9927 = private unnamed_addr constant [5 x i8] c"Math\00" -@.str9928 = private unnamed_addr constant [5 x i8] c"Text\00" -@.str9929 = private unnamed_addr constant [5 x i8] c"Text\00" -@.str9930 = private unnamed_addr constant [5 x i8] c"List\00" -@.str9931 = private unnamed_addr constant [5 x i8] c"List\00" -@.str9932 = private unnamed_addr constant [5 x i8] c"Ease\00" -@.str9933 = private unnamed_addr constant [5 x i8] c"Ease\00" -@.str9934 = private unnamed_addr constant [5 x i8] c"Anim\00" -@.str9935 = private unnamed_addr constant [6 x i8] c"Tween\00" -@.str9936 = private unnamed_addr constant [10 x i8] c"Collision\00" -@.str9937 = private unnamed_addr constant [10 x i8] c"Collision\00" -@.str9938 = private unnamed_addr constant [7 x i8] c"Memory\00" -@.str9939 = private unnamed_addr constant [7 x i8] c"Memory\00" -@.str9940 = private unnamed_addr constant [6 x i8] c"Color\00" -@.str9941 = private unnamed_addr constant [6 x i8] c"Color\00" -@.str9942 = private unnamed_addr constant [5 x i8] c"Time\00" -@.str9943 = private unnamed_addr constant [5 x i8] c"Time\00" -@.str9944 = private unnamed_addr constant [5 x i8] c"Hash\00" -@.str9945 = private unnamed_addr constant [5 x i8] c"Hash\00" -@.str9946 = private unnamed_addr constant [7 x i8] c"Crypto\00" -@.str9947 = private unnamed_addr constant [7 x i8] c"Crypto\00" -@.str9948 = private unnamed_addr constant [5 x i8] c"Uuid\00" -@.str9949 = private unnamed_addr constant [5 x i8] c"Uuid\00" -@.str9950 = private unnamed_addr constant [6 x i8] c"Noise\00" -@.str9951 = private unnamed_addr constant [6 x i8] c"Noise\00" -@.str9952 = private unnamed_addr constant [4 x i8] c"Log\00" -@.str9953 = private unnamed_addr constant [4 x i8] c"Log\00" -@.str9954 = private unnamed_addr constant [3 x i8] c"Os\00" -@.str9955 = private unnamed_addr constant [3 x i8] c"Os\00" -@.str9956 = private unnamed_addr constant [8 x i8] c"Unicode\00" -@.str9957 = private unnamed_addr constant [8 x i8] c"Unicode\00" -@.str9958 = private unnamed_addr constant [3 x i8] c"Fs\00" -@.str9959 = private unnamed_addr constant [3 x i8] c"Fs\00" -@.str9960 = private unnamed_addr constant [5 x i8] c"Path\00" -@.str9961 = private unnamed_addr constant [5 x i8] c"Path\00" -@.str9962 = private unnamed_addr constant [5 x i8] c"Mime\00" -@.str9963 = private unnamed_addr constant [5 x i8] c"Mime\00" -@.str9964 = private unnamed_addr constant [7 x i8] c"Vector\00" -@.str9965 = private unnamed_addr constant [7 x i8] c"Vector\00" -@.str9966 = private unnamed_addr constant [6 x i8] c"IVec2\00" -@.str9967 = private unnamed_addr constant [6 x i8] c"IVec2\00" -@.str9968 = private unnamed_addr constant [5 x i8] c"Rect\00" -@.str9969 = private unnamed_addr constant [5 x i8] c"Rect\00" -@.str9970 = private unnamed_addr constant [9 x i8] c"Duration\00" -@.str9971 = private unnamed_addr constant [9 x i8] c"Duration\00" -@.str9972 = private unnamed_addr constant [5 x i8] c"Date\00" -@.str9973 = private unnamed_addr constant [5 x i8] c"Date\00" -@.str9974 = private unnamed_addr constant [9 x i8] c"DateTime\00" -@.str9975 = private unnamed_addr constant [9 x i8] c"DateTime\00" -@.str9976 = private unnamed_addr constant [6 x i8] c"Clock\00" -@.str9977 = private unnamed_addr constant [6 x i8] c"Clock\00" -@.str9978 = private unnamed_addr constant [4 x i8] c"App\00" -@.str9979 = private unnamed_addr constant [12 x i8] c"splash_hide\00" -@.str9980 = private unnamed_addr constant [28 x i8] c" call void @splash_hide()\0A\00" -@.str9981 = private unnamed_addr constant [2 x i8] c"0\00" -@.str9982 = private unnamed_addr constant [5 x i8] c"void\00" -@.str9983 = private unnamed_addr constant [9 x i8] c"set_icon\00" -@.str9984 = private unnamed_addr constant [30 x i8] c" call void @lp_app_icon(ptr \00" -@.str9985 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str9986 = private unnamed_addr constant [2 x i8] c"0\00" -@.str9987 = private unnamed_addr constant [5 x i8] c"void\00" -@.str9988 = private unnamed_addr constant [14 x i8] c"monitor_count\00" -@.str9989 = private unnamed_addr constant [30 x i8] c"call i32 @win_monitor_count()\00" -@.str9990 = private unnamed_addr constant [4 x i8] c"int\00" -@.str9991 = private unnamed_addr constant [2 x i8] c"1\00" -@.str9992 = private unnamed_addr constant [4 x i8] c"int\00" -@.str9993 = private unnamed_addr constant [18 x i8] c"window_to_monitor\00" -@.str9994 = private unnamed_addr constant [40 x i8] c" call void @app_window_to_monitor(i32 \00" -@.str9995 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str9996 = private unnamed_addr constant [2 x i8] c"0\00" -@.str9997 = private unnamed_addr constant [5 x i8] c"void\00" -@.str9998 = private unnamed_addr constant [13 x i8] c"window_fixed\00" -@.str9999 = private unnamed_addr constant [35 x i8] c" call void @app_window_fixed(i32 \00" -@.str10000 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10001 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10002 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10003 = private unnamed_addr constant [12 x i8] c"window_hide\00" -@.str10004 = private unnamed_addr constant [12 x i8] c"window_show\00" -@.str10005 = private unnamed_addr constant [18 x i8] c" call void @app_\00" -@.str10006 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str10007 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10008 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10009 = private unnamed_addr constant [4 x i8] c"App\00" -@.str10010 = private unnamed_addr constant [5 x i8] c"Pool\00" -@.str10011 = private unnamed_addr constant [9 x i8] c"capacity\00" -@.str10012 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10013 = private unnamed_addr constant [9 x i8] c"reserved\00" -@.str10014 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_entc\00" -@.str10015 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10016 = private unnamed_addr constant [5 x i8] c"free\00" -@.str10017 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_freen\00" -@.str10018 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10019 = private unnamed_addr constant [5 x i8] c"live\00" -@.str10020 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_entc\00" +@.str9859 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str9860 = private unnamed_addr constant [33 x i8] c"getelementptr inbounds i32, ptr \00" +@.str9861 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str9862 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str9863 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str9864 = private unnamed_addr constant [32 x i8] c"getelementptr inbounds i8, ptr \00" +@.str9865 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str9866 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" +@.str9867 = private unnamed_addr constant [9 x i8] c"zext i8 \00" +@.str9868 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str9869 = private unnamed_addr constant [9 x i8] c"and i32 \00" +@.str9870 = private unnamed_addr constant [3 x i8] c", \00" +@.str9871 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str9872 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str9873 = private unnamed_addr constant [3 x i8] c", \00" +@.str9874 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str9875 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str9876 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str9877 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str9878 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str9879 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str9880 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str9881 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str9882 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str9883 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str9884 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str9885 = private unnamed_addr constant [4 x i8] c"int\00" +@.str9886 = private unnamed_addr constant [2 x i8] c".\00" +@.str9887 = private unnamed_addr constant [32 x i8] c" takes one argument: the entity\00" +@.str9888 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15346: index out of range: \00" +@.str9889 = private unnamed_addr constant [3 x i8] c"of\00" +@.str9890 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str9891 = private unnamed_addr constant [29 x i8] c"getelementptr inbounds %Cmp_\00" +@.str9892 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str9893 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str9894 = private unnamed_addr constant [21 x i8] c"load i32, ptr @L_cap\00" +@.str9895 = private unnamed_addr constant [14 x i8] c"icmp ult i32 \00" +@.str9896 = private unnamed_addr constant [3 x i8] c", \00" +@.str9897 = private unnamed_addr constant [11 x i8] c"select i1 \00" +@.str9898 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str9899 = private unnamed_addr constant [8 x i8] c", i32 0\00" +@.str9900 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str9901 = private unnamed_addr constant [33 x i8] c"getelementptr inbounds i32, ptr \00" +@.str9902 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str9903 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str9904 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str9905 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str9906 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str9907 = private unnamed_addr constant [32 x i8] c"getelementptr inbounds i8, ptr \00" +@.str9908 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str9909 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" +@.str9910 = private unnamed_addr constant [12 x i8] c"icmp ne i8 \00" +@.str9911 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str9912 = private unnamed_addr constant [8 x i8] c"and i1 \00" +@.str9913 = private unnamed_addr constant [3 x i8] c", \00" +@.str9914 = private unnamed_addr constant [8 x i8] c"and i1 \00" +@.str9915 = private unnamed_addr constant [3 x i8] c", \00" +@.str9916 = private unnamed_addr constant [9 x i8] c"zext i1 \00" +@.str9917 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str9918 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str9919 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15372: index out of range: \00" +@.str9920 = private unnamed_addr constant [5 x i8] c"name\00" +@.str9921 = private unnamed_addr constant [7 x i8] c"string\00" +@.str9922 = private unnamed_addr constant [17 x i8] c"unknown builtin \00" +@.str9923 = private unnamed_addr constant [2 x i8] c".\00" +@.str9924 = private unnamed_addr constant [3 x i8] c"of\00" +@.str9925 = private unnamed_addr constant [4 x i8] c"has\00" +@.str9926 = private unnamed_addr constant [6 x i8] c"count\00" +@.str9927 = private unnamed_addr constant [12 x i8] c"despawn_all\00" +@.str9928 = private unnamed_addr constant [2 x i8] c"_\00" +@.str9929 = private unnamed_addr constant [5 x i8] c"Math\00" +@.str9930 = private unnamed_addr constant [5 x i8] c"Math\00" +@.str9931 = private unnamed_addr constant [5 x i8] c"Text\00" +@.str9932 = private unnamed_addr constant [5 x i8] c"Text\00" +@.str9933 = private unnamed_addr constant [5 x i8] c"List\00" +@.str9934 = private unnamed_addr constant [5 x i8] c"List\00" +@.str9935 = private unnamed_addr constant [5 x i8] c"Ease\00" +@.str9936 = private unnamed_addr constant [5 x i8] c"Ease\00" +@.str9937 = private unnamed_addr constant [5 x i8] c"Anim\00" +@.str9938 = private unnamed_addr constant [6 x i8] c"Tween\00" +@.str9939 = private unnamed_addr constant [10 x i8] c"Collision\00" +@.str9940 = private unnamed_addr constant [10 x i8] c"Collision\00" +@.str9941 = private unnamed_addr constant [7 x i8] c"Memory\00" +@.str9942 = private unnamed_addr constant [7 x i8] c"Memory\00" +@.str9943 = private unnamed_addr constant [6 x i8] c"Color\00" +@.str9944 = private unnamed_addr constant [6 x i8] c"Color\00" +@.str9945 = private unnamed_addr constant [5 x i8] c"Time\00" +@.str9946 = private unnamed_addr constant [5 x i8] c"Time\00" +@.str9947 = private unnamed_addr constant [5 x i8] c"Hash\00" +@.str9948 = private unnamed_addr constant [5 x i8] c"Hash\00" +@.str9949 = private unnamed_addr constant [7 x i8] c"Crypto\00" +@.str9950 = private unnamed_addr constant [7 x i8] c"Crypto\00" +@.str9951 = private unnamed_addr constant [5 x i8] c"Uuid\00" +@.str9952 = private unnamed_addr constant [5 x i8] c"Uuid\00" +@.str9953 = private unnamed_addr constant [6 x i8] c"Noise\00" +@.str9954 = private unnamed_addr constant [6 x i8] c"Noise\00" +@.str9955 = private unnamed_addr constant [4 x i8] c"Log\00" +@.str9956 = private unnamed_addr constant [4 x i8] c"Log\00" +@.str9957 = private unnamed_addr constant [3 x i8] c"Os\00" +@.str9958 = private unnamed_addr constant [3 x i8] c"Os\00" +@.str9959 = private unnamed_addr constant [8 x i8] c"Unicode\00" +@.str9960 = private unnamed_addr constant [8 x i8] c"Unicode\00" +@.str9961 = private unnamed_addr constant [3 x i8] c"Fs\00" +@.str9962 = private unnamed_addr constant [3 x i8] c"Fs\00" +@.str9963 = private unnamed_addr constant [5 x i8] c"Path\00" +@.str9964 = private unnamed_addr constant [5 x i8] c"Path\00" +@.str9965 = private unnamed_addr constant [5 x i8] c"Mime\00" +@.str9966 = private unnamed_addr constant [5 x i8] c"Mime\00" +@.str9967 = private unnamed_addr constant [7 x i8] c"Vector\00" +@.str9968 = private unnamed_addr constant [7 x i8] c"Vector\00" +@.str9969 = private unnamed_addr constant [6 x i8] c"IVec2\00" +@.str9970 = private unnamed_addr constant [6 x i8] c"IVec2\00" +@.str9971 = private unnamed_addr constant [5 x i8] c"Rect\00" +@.str9972 = private unnamed_addr constant [5 x i8] c"Rect\00" +@.str9973 = private unnamed_addr constant [9 x i8] c"Duration\00" +@.str9974 = private unnamed_addr constant [9 x i8] c"Duration\00" +@.str9975 = private unnamed_addr constant [5 x i8] c"Date\00" +@.str9976 = private unnamed_addr constant [5 x i8] c"Date\00" +@.str9977 = private unnamed_addr constant [9 x i8] c"DateTime\00" +@.str9978 = private unnamed_addr constant [9 x i8] c"DateTime\00" +@.str9979 = private unnamed_addr constant [6 x i8] c"Clock\00" +@.str9980 = private unnamed_addr constant [6 x i8] c"Clock\00" +@.str9981 = private unnamed_addr constant [4 x i8] c"App\00" +@.str9982 = private unnamed_addr constant [12 x i8] c"splash_hide\00" +@.str9983 = private unnamed_addr constant [28 x i8] c" call void @splash_hide()\0A\00" +@.str9984 = private unnamed_addr constant [2 x i8] c"0\00" +@.str9985 = private unnamed_addr constant [5 x i8] c"void\00" +@.str9986 = private unnamed_addr constant [9 x i8] c"set_icon\00" +@.str9987 = private unnamed_addr constant [30 x i8] c" call void @lp_app_icon(ptr \00" +@.str9988 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str9989 = private unnamed_addr constant [2 x i8] c"0\00" +@.str9990 = private unnamed_addr constant [5 x i8] c"void\00" +@.str9991 = private unnamed_addr constant [14 x i8] c"monitor_count\00" +@.str9992 = private unnamed_addr constant [30 x i8] c"call i32 @win_monitor_count()\00" +@.str9993 = private unnamed_addr constant [4 x i8] c"int\00" +@.str9994 = private unnamed_addr constant [2 x i8] c"1\00" +@.str9995 = private unnamed_addr constant [4 x i8] c"int\00" +@.str9996 = private unnamed_addr constant [18 x i8] c"window_to_monitor\00" +@.str9997 = private unnamed_addr constant [40 x i8] c" call void @app_window_to_monitor(i32 \00" +@.str9998 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str9999 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10000 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10001 = private unnamed_addr constant [13 x i8] c"window_fixed\00" +@.str10002 = private unnamed_addr constant [35 x i8] c" call void @app_window_fixed(i32 \00" +@.str10003 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10004 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10005 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10006 = private unnamed_addr constant [12 x i8] c"window_hide\00" +@.str10007 = private unnamed_addr constant [12 x i8] c"window_show\00" +@.str10008 = private unnamed_addr constant [18 x i8] c" call void @app_\00" +@.str10009 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str10010 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10011 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10012 = private unnamed_addr constant [4 x i8] c"App\00" +@.str10013 = private unnamed_addr constant [5 x i8] c"Pool\00" +@.str10014 = private unnamed_addr constant [9 x i8] c"capacity\00" +@.str10015 = private unnamed_addr constant [21 x i8] c"load i32, ptr @L_cap\00" +@.str10016 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10017 = private unnamed_addr constant [9 x i8] c"reserved\00" +@.str10018 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_entc\00" +@.str10019 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10020 = private unnamed_addr constant [5 x i8] c"free\00" @.str10021 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_freen\00" -@.str10022 = private unnamed_addr constant [9 x i8] c"sub i32 \00" -@.str10023 = private unnamed_addr constant [3 x i8] c", \00" -@.str10024 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10025 = private unnamed_addr constant [5 x i8] c"Pool\00" -@.str10026 = private unnamed_addr constant [7 x i8] c"Prefab\00" -@.str10027 = private unnamed_addr constant [9 x i8] c"spawn_at\00" -@.str10028 = private unnamed_addr constant [48 x i8] c"Prefab.spawn_at: the program declares no prefab\00" -@.str10029 = private unnamed_addr constant [9 x i8] c"Position\00" -@.str10030 = private unnamed_addr constant [42 x i8] c"Prefab.spawn_at needs a Position property\00" -@.str10031 = private unnamed_addr constant [5 x i8] c"name\00" -@.str10032 = private unnamed_addr constant [3 x i8] c"at\00" -@.str10033 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15595: index out of range: \00" -@.str10034 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15596: index out of range: \00" -@.str10035 = private unnamed_addr constant [30 x i8] c"call i32 @L_spawn_prefab(ptr \00" -@.str10036 = private unnamed_addr constant [2 x i8] c")\00" -@.str10037 = private unnamed_addr constant [25 x i8] c"getelementptr inbounds [\00" -@.str10038 = private unnamed_addr constant [48 x i8] c" x %Cmp_Position], ptr @S_Position, i32 0, i32 \00" -@.str10039 = private unnamed_addr constant [43 x i8] c"getelementptr inbounds %Cmp_Position, ptr \00" -@.str10040 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str10041 = private unnamed_addr constant [2 x i8] c"x\00" +@.str10022 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10023 = private unnamed_addr constant [5 x i8] c"live\00" +@.str10024 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_entc\00" +@.str10025 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_freen\00" +@.str10026 = private unnamed_addr constant [9 x i8] c"sub i32 \00" +@.str10027 = private unnamed_addr constant [3 x i8] c", \00" +@.str10028 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10029 = private unnamed_addr constant [5 x i8] c"Pool\00" +@.str10030 = private unnamed_addr constant [7 x i8] c"Prefab\00" +@.str10031 = private unnamed_addr constant [9 x i8] c"spawn_at\00" +@.str10032 = private unnamed_addr constant [48 x i8] c"Prefab.spawn_at: the program declares no prefab\00" +@.str10033 = private unnamed_addr constant [9 x i8] c"Position\00" +@.str10034 = private unnamed_addr constant [42 x i8] c"Prefab.spawn_at needs a Position property\00" +@.str10035 = private unnamed_addr constant [5 x i8] c"name\00" +@.str10036 = private unnamed_addr constant [3 x i8] c"at\00" +@.str10037 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15601: index out of range: \00" +@.str10038 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15602: index out of range: \00" +@.str10039 = private unnamed_addr constant [30 x i8] c"call i32 @L_spawn_prefab(ptr \00" +@.str10040 = private unnamed_addr constant [2 x i8] c")\00" +@.str10041 = private unnamed_addr constant [11 x i8] c"S_Position\00" @.str10042 = private unnamed_addr constant [43 x i8] c"getelementptr inbounds %Cmp_Position, ptr \00" -@.str10043 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str10044 = private unnamed_addr constant [2 x i8] c"y\00" -@.str10045 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str10046 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10047 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10048 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str10049 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10050 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10051 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10052 = private unnamed_addr constant [6 x i8] c"spawn\00" -@.str10053 = private unnamed_addr constant [45 x i8] c"Prefab.spawn: the program declares no prefab\00" -@.str10054 = private unnamed_addr constant [5 x i8] c"name\00" -@.str10055 = private unnamed_addr constant [51 x i8] c"Prefab.spawn takes one argument: the prefab's name\00" -@.str10056 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15613: index out of range: \00" -@.str10057 = private unnamed_addr constant [30 x i8] c"call i32 @L_spawn_prefab(ptr \00" -@.str10058 = private unnamed_addr constant [2 x i8] c")\00" -@.str10059 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10060 = private unnamed_addr constant [7 x i8] c"Prefab\00" -@.str10061 = private unnamed_addr constant [6 x i8] c"Audio\00" -@.str10062 = private unnamed_addr constant [5 x i8] c"play\00" -@.str10063 = private unnamed_addr constant [17 x i8] c"audio_play_named\00" -@.str10064 = private unnamed_addr constant [5 x i8] c"name\00" -@.str10065 = private unnamed_addr constant [11 x i8] c"audio_play\00" -@.str10066 = private unnamed_addr constant [3 x i8] c"id\00" -@.str10067 = private unnamed_addr constant [11 x i8] c"play_music\00" -@.str10068 = private unnamed_addr constant [23 x i8] c"audio_play_music_named\00" +@.str10043 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10044 = private unnamed_addr constant [43 x i8] c"getelementptr inbounds %Cmp_Position, ptr \00" +@.str10045 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str10046 = private unnamed_addr constant [2 x i8] c"x\00" +@.str10047 = private unnamed_addr constant [43 x i8] c"getelementptr inbounds %Cmp_Position, ptr \00" +@.str10048 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str10049 = private unnamed_addr constant [2 x i8] c"y\00" +@.str10050 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str10051 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10052 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10053 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str10054 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10055 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10056 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10057 = private unnamed_addr constant [6 x i8] c"spawn\00" +@.str10058 = private unnamed_addr constant [45 x i8] c"Prefab.spawn: the program declares no prefab\00" +@.str10059 = private unnamed_addr constant [5 x i8] c"name\00" +@.str10060 = private unnamed_addr constant [51 x i8] c"Prefab.spawn takes one argument: the prefab's name\00" +@.str10061 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15620: index out of range: \00" +@.str10062 = private unnamed_addr constant [30 x i8] c"call i32 @L_spawn_prefab(ptr \00" +@.str10063 = private unnamed_addr constant [2 x i8] c")\00" +@.str10064 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10065 = private unnamed_addr constant [7 x i8] c"Prefab\00" +@.str10066 = private unnamed_addr constant [6 x i8] c"Audio\00" +@.str10067 = private unnamed_addr constant [5 x i8] c"play\00" +@.str10068 = private unnamed_addr constant [17 x i8] c"audio_play_named\00" @.str10069 = private unnamed_addr constant [5 x i8] c"name\00" -@.str10070 = private unnamed_addr constant [17 x i8] c"audio_play_music\00" +@.str10070 = private unnamed_addr constant [11 x i8] c"audio_play\00" @.str10071 = private unnamed_addr constant [3 x i8] c"id\00" -@.str10072 = private unnamed_addr constant [4 x i8] c"Job\00" -@.str10073 = private unnamed_addr constant [13 x i8] c"parallel_for\00" -@.str10074 = private unnamed_addr constant [17 x i8] c"job_parallel_for\00" -@.str10075 = private unnamed_addr constant [6 x i8] c"count\00" -@.str10076 = private unnamed_addr constant [5 x i8] c"work\00" -@.str10077 = private unnamed_addr constant [4 x i8] c"ctx\00" -@.str10078 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15659: index out of range: \00" -@.str10079 = private unnamed_addr constant [5 x i8] c"Anim\00" -@.str10080 = private unnamed_addr constant [5 x i8] c"clip\00" -@.str10081 = private unnamed_addr constant [10 x i8] c"anim_clip\00" -@.str10082 = private unnamed_addr constant [5 x i8] c"name\00" -@.str10083 = private unnamed_addr constant [7 x i8] c"frames\00" -@.str10084 = private unnamed_addr constant [4 x i8] c"fps\00" -@.str10085 = private unnamed_addr constant [5 x i8] c"mode\00" -@.str10086 = private unnamed_addr constant [9 x i8] c"on_frame\00" -@.str10087 = private unnamed_addr constant [14 x i8] c"anim_on_frame\00" -@.str10088 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10089 = private unnamed_addr constant [6 x i8] c"frame\00" -@.str10090 = private unnamed_addr constant [6 x i8] c"fired\00" -@.str10091 = private unnamed_addr constant [11 x i8] c"anim_fired\00" -@.str10092 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10093 = private unnamed_addr constant [5 x i8] c"play\00" -@.str10094 = private unnamed_addr constant [16 x i8] c"anim_play_named\00" -@.str10095 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10096 = private unnamed_addr constant [5 x i8] c"clip\00" -@.str10097 = private unnamed_addr constant [10 x i8] c"anim_play\00" -@.str10098 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10099 = private unnamed_addr constant [4 x i8] c"fps\00" -@.str10100 = private unnamed_addr constant [7 x i8] c"frames\00" -@.str10101 = private unnamed_addr constant [5 x i8] c"mode\00" -@.str10102 = private unnamed_addr constant [3 x i8] c"Vk\00" -@.str10103 = private unnamed_addr constant [4 x i8] c"vk_\00" -@.str10104 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15725: index out of range: \00" -@.str10105 = private unnamed_addr constant [3 x i8] c"Gl\00" -@.str10106 = private unnamed_addr constant [4 x i8] c"gl_\00" -@.str10107 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15739: index out of range: \00" -@.str10108 = private unnamed_addr constant [2 x i8] c"_\00" -@.str10109 = private unnamed_addr constant [2 x i8] c".\00" -@.str10110 = private unnamed_addr constant [27 x i8] c" is internal to namespace \00" -@.str10111 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15753: index out of range: \00" -@.str10112 = private unnamed_addr constant [17 x i8] c"unknown builtin \00" -@.str10113 = private unnamed_addr constant [2 x i8] c".\00" -@.str10114 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15769: index out of range: \00" -@.str10115 = private unnamed_addr constant [14 x i8] c"enum variant \00" -@.str10116 = private unnamed_addr constant [8 x i8] c" takes \00" -@.str10117 = private unnamed_addr constant [18 x i8] c" payload(s), got \00" -@.str10118 = private unnamed_addr constant [22 x i8] c"call ptr @malloc(i64 \00" -@.str10119 = private unnamed_addr constant [2 x i8] c")\00" -@.str10120 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str10121 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10122 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10123 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15776: index out of range: \00" -@.str10124 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15777: index out of range: \00" -@.str10125 = private unnamed_addr constant [3 x i8] c" \00" -@.str10126 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" -@.str10127 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10128 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10129 = private unnamed_addr constant [9 x i8] c" store \00" -@.str10130 = private unnamed_addr constant [2 x i8] c" \00" -@.str10131 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10132 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10133 = private unnamed_addr constant [30 x i8] c"call target is not a function\00" -@.str10134 = private unnamed_addr constant [5 x i8] c"self\00" -@.str10135 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10136 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10137 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str10138 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15797: index out of range: \00" -@.str10139 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10140 = private unnamed_addr constant [4 x i8] c"key\00" -@.str10141 = private unnamed_addr constant [21 x i8] c"load i32, ptr @L_key\00" -@.str10142 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10143 = private unnamed_addr constant [5 x i8] c"save\00" -@.str10144 = private unnamed_addr constant [23 x i8] c" call void @L_save()\0A\00" -@.str10145 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10146 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10147 = private unnamed_addr constant [9 x i8] c"ui_build\00" -@.str10148 = private unnamed_addr constant [25 x i8] c" call void @ui_build()\0A\00" -@.str10149 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10150 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10151 = private unnamed_addr constant [5 x i8] c"load\00" -@.str10152 = private unnamed_addr constant [19 x i8] c"call i32 @L_load()\00" -@.str10153 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10154 = private unnamed_addr constant [11 x i8] c"world_size\00" -@.str10155 = private unnamed_addr constant [25 x i8] c"call i32 @L_world_size()\00" -@.str10156 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10157 = private unnamed_addr constant [11 x i8] c"world_save\00" -@.str10158 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15804: index out of range: \00" -@.str10159 = private unnamed_addr constant [28 x i8] c"call i32 @L_world_save(ptr \00" -@.str10160 = private unnamed_addr constant [2 x i8] c")\00" +@.str10072 = private unnamed_addr constant [11 x i8] c"play_music\00" +@.str10073 = private unnamed_addr constant [23 x i8] c"audio_play_music_named\00" +@.str10074 = private unnamed_addr constant [5 x i8] c"name\00" +@.str10075 = private unnamed_addr constant [17 x i8] c"audio_play_music\00" +@.str10076 = private unnamed_addr constant [3 x i8] c"id\00" +@.str10077 = private unnamed_addr constant [4 x i8] c"Job\00" +@.str10078 = private unnamed_addr constant [13 x i8] c"parallel_for\00" +@.str10079 = private unnamed_addr constant [17 x i8] c"job_parallel_for\00" +@.str10080 = private unnamed_addr constant [6 x i8] c"count\00" +@.str10081 = private unnamed_addr constant [5 x i8] c"work\00" +@.str10082 = private unnamed_addr constant [4 x i8] c"ctx\00" +@.str10083 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15666: index out of range: \00" +@.str10084 = private unnamed_addr constant [5 x i8] c"Anim\00" +@.str10085 = private unnamed_addr constant [5 x i8] c"clip\00" +@.str10086 = private unnamed_addr constant [10 x i8] c"anim_clip\00" +@.str10087 = private unnamed_addr constant [5 x i8] c"name\00" +@.str10088 = private unnamed_addr constant [7 x i8] c"frames\00" +@.str10089 = private unnamed_addr constant [4 x i8] c"fps\00" +@.str10090 = private unnamed_addr constant [5 x i8] c"mode\00" +@.str10091 = private unnamed_addr constant [9 x i8] c"on_frame\00" +@.str10092 = private unnamed_addr constant [14 x i8] c"anim_on_frame\00" +@.str10093 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10094 = private unnamed_addr constant [6 x i8] c"frame\00" +@.str10095 = private unnamed_addr constant [6 x i8] c"fired\00" +@.str10096 = private unnamed_addr constant [11 x i8] c"anim_fired\00" +@.str10097 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10098 = private unnamed_addr constant [5 x i8] c"play\00" +@.str10099 = private unnamed_addr constant [16 x i8] c"anim_play_named\00" +@.str10100 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10101 = private unnamed_addr constant [5 x i8] c"clip\00" +@.str10102 = private unnamed_addr constant [10 x i8] c"anim_play\00" +@.str10103 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10104 = private unnamed_addr constant [4 x i8] c"fps\00" +@.str10105 = private unnamed_addr constant [7 x i8] c"frames\00" +@.str10106 = private unnamed_addr constant [5 x i8] c"mode\00" +@.str10107 = private unnamed_addr constant [3 x i8] c"Vk\00" +@.str10108 = private unnamed_addr constant [4 x i8] c"vk_\00" +@.str10109 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15732: index out of range: \00" +@.str10110 = private unnamed_addr constant [3 x i8] c"Gl\00" +@.str10111 = private unnamed_addr constant [4 x i8] c"gl_\00" +@.str10112 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15746: index out of range: \00" +@.str10113 = private unnamed_addr constant [2 x i8] c"_\00" +@.str10114 = private unnamed_addr constant [2 x i8] c".\00" +@.str10115 = private unnamed_addr constant [27 x i8] c" is internal to namespace \00" +@.str10116 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15760: index out of range: \00" +@.str10117 = private unnamed_addr constant [17 x i8] c"unknown builtin \00" +@.str10118 = private unnamed_addr constant [2 x i8] c".\00" +@.str10119 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15776: index out of range: \00" +@.str10120 = private unnamed_addr constant [14 x i8] c"enum variant \00" +@.str10121 = private unnamed_addr constant [8 x i8] c" takes \00" +@.str10122 = private unnamed_addr constant [18 x i8] c" payload(s), got \00" +@.str10123 = private unnamed_addr constant [22 x i8] c"call ptr @malloc(i64 \00" +@.str10124 = private unnamed_addr constant [2 x i8] c")\00" +@.str10125 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str10126 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10127 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10128 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15783: index out of range: \00" +@.str10129 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15784: index out of range: \00" +@.str10130 = private unnamed_addr constant [3 x i8] c" \00" +@.str10131 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str10132 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10133 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10134 = private unnamed_addr constant [9 x i8] c" store \00" +@.str10135 = private unnamed_addr constant [2 x i8] c" \00" +@.str10136 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10137 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10138 = private unnamed_addr constant [30 x i8] c"call target is not a function\00" +@.str10139 = private unnamed_addr constant [5 x i8] c"self\00" +@.str10140 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10141 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10142 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str10143 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15804: index out of range: \00" +@.str10144 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10145 = private unnamed_addr constant [4 x i8] c"key\00" +@.str10146 = private unnamed_addr constant [21 x i8] c"load i32, ptr @L_key\00" +@.str10147 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10148 = private unnamed_addr constant [5 x i8] c"save\00" +@.str10149 = private unnamed_addr constant [23 x i8] c" call void @L_save()\0A\00" +@.str10150 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10151 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10152 = private unnamed_addr constant [9 x i8] c"ui_build\00" +@.str10153 = private unnamed_addr constant [25 x i8] c" call void @ui_build()\0A\00" +@.str10154 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10155 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10156 = private unnamed_addr constant [5 x i8] c"load\00" +@.str10157 = private unnamed_addr constant [19 x i8] c"call i32 @L_load()\00" +@.str10158 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10159 = private unnamed_addr constant [11 x i8] c"world_size\00" +@.str10160 = private unnamed_addr constant [25 x i8] c"call i32 @L_world_size()\00" @.str10161 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10162 = private unnamed_addr constant [11 x i8] c"world_load\00" -@.str10163 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15808: index out of range: \00" -@.str10164 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15809: index out of range: \00" -@.str10165 = private unnamed_addr constant [31 x i8] c" call void @L_world_load(ptr \00" -@.str10166 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10167 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10168 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10169 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10170 = private unnamed_addr constant [5 x i8] c"quit\00" -@.str10171 = private unnamed_addr constant [31 x i8] c" store i32 0, ptr @L_running\0A\00" -@.str10172 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10173 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10174 = private unnamed_addr constant [10 x i8] c"serialize\00" -@.str10175 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15820: index out of range: \00" -@.str10176 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15820: index out of range: \00" -@.str10177 = private unnamed_addr constant [31 x i8] c"call i32 @ludic_serialize(i32 \00" -@.str10178 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10179 = private unnamed_addr constant [2 x i8] c")\00" -@.str10180 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10181 = private unnamed_addr constant [6 x i8] c"apply\00" -@.str10182 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15824: index out of range: \00" -@.str10183 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15824: index out of range: \00" -@.str10184 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15824: index out of range: \00" -@.str10185 = private unnamed_addr constant [30 x i8] c" call void @ludic_apply(i32 \00" -@.str10186 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10187 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10188 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10189 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10190 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10191 = private unnamed_addr constant [10 x i8] c"sync_size\00" -@.str10192 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15829: index out of range: \00" -@.str10193 = private unnamed_addr constant [31 x i8] c"call i32 @ludic_sync_size(i32 \00" -@.str10194 = private unnamed_addr constant [2 x i8] c")\00" -@.str10195 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10196 = private unnamed_addr constant [6 x i8] c"owner\00" -@.str10197 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15833: index out of range: \00" -@.str10198 = private unnamed_addr constant [23 x i8] c"call i32 @L_owner(i32 \00" +@.str10162 = private unnamed_addr constant [11 x i8] c"world_save\00" +@.str10163 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15811: index out of range: \00" +@.str10164 = private unnamed_addr constant [28 x i8] c"call i32 @L_world_save(ptr \00" +@.str10165 = private unnamed_addr constant [2 x i8] c")\00" +@.str10166 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10167 = private unnamed_addr constant [11 x i8] c"world_load\00" +@.str10168 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15815: index out of range: \00" +@.str10169 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15816: index out of range: \00" +@.str10170 = private unnamed_addr constant [31 x i8] c" call void @L_world_load(ptr \00" +@.str10171 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10172 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10173 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10174 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10175 = private unnamed_addr constant [5 x i8] c"quit\00" +@.str10176 = private unnamed_addr constant [31 x i8] c" store i32 0, ptr @L_running\0A\00" +@.str10177 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10178 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10179 = private unnamed_addr constant [10 x i8] c"serialize\00" +@.str10180 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15827: index out of range: \00" +@.str10181 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15827: index out of range: \00" +@.str10182 = private unnamed_addr constant [31 x i8] c"call i32 @ludic_serialize(i32 \00" +@.str10183 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10184 = private unnamed_addr constant [2 x i8] c")\00" +@.str10185 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10186 = private unnamed_addr constant [6 x i8] c"apply\00" +@.str10187 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15831: index out of range: \00" +@.str10188 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15831: index out of range: \00" +@.str10189 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15831: index out of range: \00" +@.str10190 = private unnamed_addr constant [30 x i8] c" call void @ludic_apply(i32 \00" +@.str10191 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10192 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10193 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10194 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10195 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10196 = private unnamed_addr constant [10 x i8] c"sync_size\00" +@.str10197 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15836: index out of range: \00" +@.str10198 = private unnamed_addr constant [31 x i8] c"call i32 @ludic_sync_size(i32 \00" @.str10199 = private unnamed_addr constant [2 x i8] c")\00" @.str10200 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10201 = private unnamed_addr constant [10 x i8] c"set_owner\00" -@.str10202 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15837: index out of range: \00" -@.str10203 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15837: index out of range: \00" -@.str10204 = private unnamed_addr constant [30 x i8] c" call void @L_set_owner(i32 \00" -@.str10205 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10206 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10207 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10208 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10209 = private unnamed_addr constant [9 x i8] c"is_owner\00" -@.str10210 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15842: index out of range: \00" -@.str10211 = private unnamed_addr constant [26 x i8] c"call i32 @L_is_owner(i32 \00" -@.str10212 = private unnamed_addr constant [2 x i8] c")\00" -@.str10213 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10214 = private unnamed_addr constant [10 x i8] c"is_server\00" -@.str10215 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_role\00" -@.str10216 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str10217 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str10218 = private unnamed_addr constant [9 x i8] c"zext i1 \00" -@.str10219 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10220 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10221 = private unnamed_addr constant [9 x i8] c"local_id\00" -@.str10222 = private unnamed_addr constant [25 x i8] c"load i32, ptr @L_localid\00" -@.str10223 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10224 = private unnamed_addr constant [9 x i8] c"net_pump\00" -@.str10225 = private unnamed_addr constant [27 x i8] c" call void @L_net_pump()\0A\00" -@.str10226 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10227 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10228 = private unnamed_addr constant [11 x i8] c"tick_fixed\00" -@.str10229 = private unnamed_addr constant [29 x i8] c" call void @L_tick_fixed()\0A\00" -@.str10230 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10231 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10232 = private unnamed_addr constant [12 x i8] c"tick_render\00" -@.str10233 = private unnamed_addr constant [30 x i8] c" call void @L_tick_render()\0A\00" -@.str10234 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10235 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10236 = private unnamed_addr constant [9 x i8] c"set_role\00" -@.str10237 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15855: index out of range: \00" -@.str10238 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str10239 = private unnamed_addr constant [15 x i8] c", ptr @L_role\0A\00" -@.str10240 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10241 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10242 = private unnamed_addr constant [13 x i8] c"set_local_id\00" -@.str10243 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15858: index out of range: \00" -@.str10244 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str10245 = private unnamed_addr constant [18 x i8] c", ptr @L_localid\0A\00" -@.str10246 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10247 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10248 = private unnamed_addr constant [9 x i8] c"net_send\00" -@.str10249 = private unnamed_addr constant [9 x i8] c"net_send\00" -@.str10250 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15865: index out of range: \00" -@.str10251 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15865: index out of range: \00" -@.str10252 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15865: index out of range: \00" -@.str10253 = private unnamed_addr constant [29 x i8] c" call void @L_net_send(i32 \00" -@.str10254 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10255 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10256 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10257 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10258 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10259 = private unnamed_addr constant [9 x i8] c"net_poll\00" -@.str10260 = private unnamed_addr constant [9 x i8] c"net_poll\00" -@.str10261 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15871: index out of range: \00" -@.str10262 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15871: index out of range: \00" -@.str10263 = private unnamed_addr constant [26 x i8] c"call i32 @L_net_poll(ptr \00" -@.str10264 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10265 = private unnamed_addr constant [2 x i8] c")\00" -@.str10266 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10267 = private unnamed_addr constant [4 x i8] c"len\00" -@.str10268 = private unnamed_addr constant [5 x i8] c"push\00" -@.str10269 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10270 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15877: index out of range: \00" -@.str10271 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str10272 = private unnamed_addr constant [4 x i8] c"i64\00" -@.str10273 = private unnamed_addr constant [27 x i8] c"call ptr @lp_long_str(i64 \00" -@.str10274 = private unnamed_addr constant [2 x i8] c")\00" -@.str10275 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10276 = private unnamed_addr constant [26 x i8] c"call ptr @lp_int_str(i32 \00" -@.str10277 = private unnamed_addr constant [2 x i8] c")\00" -@.str10278 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10279 = private unnamed_addr constant [6 x i8] c"print\00" -@.str10280 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15885: index out of range: \00" -@.str10281 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str10282 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" -@.str10283 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10284 = private unnamed_addr constant [4 x i8] c"i64\00" -@.str10285 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_long, i64 \00" -@.str10286 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10287 = private unnamed_addr constant [50 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_int, i32 \00" +@.str10201 = private unnamed_addr constant [6 x i8] c"owner\00" +@.str10202 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15840: index out of range: \00" +@.str10203 = private unnamed_addr constant [23 x i8] c"call i32 @L_owner(i32 \00" +@.str10204 = private unnamed_addr constant [2 x i8] c")\00" +@.str10205 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10206 = private unnamed_addr constant [10 x i8] c"set_owner\00" +@.str10207 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15844: index out of range: \00" +@.str10208 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15844: index out of range: \00" +@.str10209 = private unnamed_addr constant [30 x i8] c" call void @L_set_owner(i32 \00" +@.str10210 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10211 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10212 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10213 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10214 = private unnamed_addr constant [9 x i8] c"is_owner\00" +@.str10215 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15849: index out of range: \00" +@.str10216 = private unnamed_addr constant [26 x i8] c"call i32 @L_is_owner(i32 \00" +@.str10217 = private unnamed_addr constant [2 x i8] c")\00" +@.str10218 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10219 = private unnamed_addr constant [10 x i8] c"is_server\00" +@.str10220 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_role\00" +@.str10221 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str10222 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str10223 = private unnamed_addr constant [9 x i8] c"zext i1 \00" +@.str10224 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10225 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10226 = private unnamed_addr constant [9 x i8] c"local_id\00" +@.str10227 = private unnamed_addr constant [25 x i8] c"load i32, ptr @L_localid\00" +@.str10228 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10229 = private unnamed_addr constant [9 x i8] c"net_pump\00" +@.str10230 = private unnamed_addr constant [27 x i8] c" call void @L_net_pump()\0A\00" +@.str10231 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10232 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10233 = private unnamed_addr constant [11 x i8] c"tick_fixed\00" +@.str10234 = private unnamed_addr constant [29 x i8] c" call void @L_tick_fixed()\0A\00" +@.str10235 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10236 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10237 = private unnamed_addr constant [12 x i8] c"tick_render\00" +@.str10238 = private unnamed_addr constant [30 x i8] c" call void @L_tick_render()\0A\00" +@.str10239 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10240 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10241 = private unnamed_addr constant [9 x i8] c"set_role\00" +@.str10242 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15862: index out of range: \00" +@.str10243 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str10244 = private unnamed_addr constant [15 x i8] c", ptr @L_role\0A\00" +@.str10245 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10246 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10247 = private unnamed_addr constant [13 x i8] c"set_local_id\00" +@.str10248 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15865: index out of range: \00" +@.str10249 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str10250 = private unnamed_addr constant [18 x i8] c", ptr @L_localid\0A\00" +@.str10251 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10252 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10253 = private unnamed_addr constant [9 x i8] c"net_send\00" +@.str10254 = private unnamed_addr constant [9 x i8] c"net_send\00" +@.str10255 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15872: index out of range: \00" +@.str10256 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15872: index out of range: \00" +@.str10257 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15872: index out of range: \00" +@.str10258 = private unnamed_addr constant [29 x i8] c" call void @L_net_send(i32 \00" +@.str10259 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10260 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10261 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10262 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10263 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10264 = private unnamed_addr constant [9 x i8] c"net_poll\00" +@.str10265 = private unnamed_addr constant [9 x i8] c"net_poll\00" +@.str10266 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15878: index out of range: \00" +@.str10267 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15878: index out of range: \00" +@.str10268 = private unnamed_addr constant [26 x i8] c"call i32 @L_net_poll(ptr \00" +@.str10269 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10270 = private unnamed_addr constant [2 x i8] c")\00" +@.str10271 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10272 = private unnamed_addr constant [4 x i8] c"len\00" +@.str10273 = private unnamed_addr constant [5 x i8] c"push\00" +@.str10274 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10275 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15884: index out of range: \00" +@.str10276 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str10277 = private unnamed_addr constant [4 x i8] c"i64\00" +@.str10278 = private unnamed_addr constant [27 x i8] c"call ptr @lp_long_str(i64 \00" +@.str10279 = private unnamed_addr constant [2 x i8] c")\00" +@.str10280 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10281 = private unnamed_addr constant [26 x i8] c"call ptr @lp_int_str(i32 \00" +@.str10282 = private unnamed_addr constant [2 x i8] c")\00" +@.str10283 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10284 = private unnamed_addr constant [6 x i8] c"print\00" +@.str10285 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15892: index out of range: \00" +@.str10286 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str10287 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" @.str10288 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10289 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10290 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10291 = private unnamed_addr constant [6 x i8] c"bytes\00" -@.str10292 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15893: index out of range: \00" -@.str10293 = private unnamed_addr constant [10 x i8] c"zext i32 \00" -@.str10294 = private unnamed_addr constant [8 x i8] c" to i64\00" -@.str10295 = private unnamed_addr constant [22 x i8] c"call ptr @malloc(i64 \00" -@.str10296 = private unnamed_addr constant [2 x i8] c")\00" -@.str10297 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str10298 = private unnamed_addr constant [6 x i8] c"words\00" -@.str10299 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10300 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15897: index out of range: \00" -@.str10301 = private unnamed_addr constant [7 x i8] c"buffer\00" -@.str10302 = private unnamed_addr constant [5 x i8] c"byte\00" -@.str10303 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15898: index out of range: \00" -@.str10304 = private unnamed_addr constant [7 x i8] c"fixeds\00" -@.str10305 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10306 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15899: index out of range: \00" -@.str10307 = private unnamed_addr constant [9 x i8] c"pointers\00" -@.str10308 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str10309 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15900: index out of range: \00" -@.str10310 = private unnamed_addr constant [5 x i8] c"view\00" -@.str10311 = private unnamed_addr constant [8 x i8] c"data_of\00" -@.str10312 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15906: index out of range: \00" -@.str10313 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" -@.str10314 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str10315 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10316 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15910: index out of range: \00" -@.str10317 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10318 = private unnamed_addr constant [9 x i8] c"shl i32 \00" -@.str10319 = private unnamed_addr constant [5 x i8] c", 16\00" +@.str10289 = private unnamed_addr constant [4 x i8] c"i64\00" +@.str10290 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_long, i64 \00" +@.str10291 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10292 = private unnamed_addr constant [50 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_int, i32 \00" +@.str10293 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10294 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10295 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10296 = private unnamed_addr constant [6 x i8] c"bytes\00" +@.str10297 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15900: index out of range: \00" +@.str10298 = private unnamed_addr constant [10 x i8] c"zext i32 \00" +@.str10299 = private unnamed_addr constant [8 x i8] c" to i64\00" +@.str10300 = private unnamed_addr constant [22 x i8] c"call ptr @malloc(i64 \00" +@.str10301 = private unnamed_addr constant [2 x i8] c")\00" +@.str10302 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str10303 = private unnamed_addr constant [6 x i8] c"words\00" +@.str10304 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10305 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15904: index out of range: \00" +@.str10306 = private unnamed_addr constant [7 x i8] c"buffer\00" +@.str10307 = private unnamed_addr constant [5 x i8] c"byte\00" +@.str10308 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15905: index out of range: \00" +@.str10309 = private unnamed_addr constant [7 x i8] c"fixeds\00" +@.str10310 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10311 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15906: index out of range: \00" +@.str10312 = private unnamed_addr constant [9 x i8] c"pointers\00" +@.str10313 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str10314 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15907: index out of range: \00" +@.str10315 = private unnamed_addr constant [5 x i8] c"view\00" +@.str10316 = private unnamed_addr constant [8 x i8] c"data_of\00" +@.str10317 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15913: index out of range: \00" +@.str10318 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" +@.str10319 = private unnamed_addr constant [8 x i8] c"pointer\00" @.str10320 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10321 = private unnamed_addr constant [6 x i8] c"float\00" -@.str10322 = private unnamed_addr constant [7 x i8] c"double\00" -@.str10323 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15917: index out of range: \00" -@.str10324 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10325 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15920: index out of range: \00" -@.str10326 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10327 = private unnamed_addr constant [10 x i8] c"ashr i32 \00" -@.str10328 = private unnamed_addr constant [5 x i8] c", 16\00" +@.str10321 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15917: index out of range: \00" +@.str10322 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10323 = private unnamed_addr constant [9 x i8] c"shl i32 \00" +@.str10324 = private unnamed_addr constant [5 x i8] c", 16\00" +@.str10325 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10326 = private unnamed_addr constant [6 x i8] c"float\00" +@.str10327 = private unnamed_addr constant [7 x i8] c"double\00" +@.str10328 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15924: index out of range: \00" @.str10329 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10330 = private unnamed_addr constant [4 x i8] c"i64\00" -@.str10331 = private unnamed_addr constant [11 x i8] c"trunc i64 \00" -@.str10332 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10333 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10330 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15927: index out of range: \00" +@.str10331 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10332 = private unnamed_addr constant [10 x i8] c"ashr i32 \00" +@.str10333 = private unnamed_addr constant [5 x i8] c", 16\00" @.str10334 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10335 = private unnamed_addr constant [5 x i8] c"long\00" -@.str10336 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15927: index out of range: \00" -@.str10337 = private unnamed_addr constant [5 x i8] c"long\00" -@.str10338 = private unnamed_addr constant [11 x i8] c"float_bits\00" -@.str10339 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15931: index out of range: \00" -@.str10340 = private unnamed_addr constant [16 x i8] c"float_from_bits\00" -@.str10341 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15932: index out of range: \00" -@.str10342 = private unnamed_addr constant [12 x i8] c"double_bits\00" -@.str10343 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15933: index out of range: \00" -@.str10344 = private unnamed_addr constant [17 x i8] c"double_from_bits\00" -@.str10345 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15934: index out of range: \00" -@.str10346 = private unnamed_addr constant [7 x i8] c"floats\00" -@.str10347 = private unnamed_addr constant [8 x i8] c"doubles\00" -@.str10348 = private unnamed_addr constant [6 x i8] c"float\00" -@.str10349 = private unnamed_addr constant [8 x i8] c"doubles\00" -@.str10350 = private unnamed_addr constant [7 x i8] c"double\00" -@.str10351 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15938: index out of range: \00" -@.str10352 = private unnamed_addr constant [6 x i8] c"floor\00" -@.str10353 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15940: index out of range: \00" -@.str10354 = private unnamed_addr constant [10 x i8] c"ashr i32 \00" -@.str10355 = private unnamed_addr constant [5 x i8] c", 16\00" -@.str10356 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10357 = private unnamed_addr constant [7 x i8] c"expect\00" -@.str10358 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15948: index out of range: \00" -@.str10359 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str10360 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10361 = private unnamed_addr constant [16 x i8] c": expect failed\00" -@.str10362 = private unnamed_addr constant [1 x i8] c"\00" -@.str10363 = private unnamed_addr constant [1 x i8] c"\00" -@.str10364 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10365 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10366 = private unnamed_addr constant [10 x i8] c"expect_eq\00" -@.str10367 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15956: index out of range: \00" -@.str10368 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15956: index out of range: \00" -@.str10369 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10370 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10371 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str10372 = private unnamed_addr constant [3 x i8] c", \00" -@.str10373 = private unnamed_addr constant [19 x i8] c": expect_eq failed\00" -@.str10374 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10375 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10376 = private unnamed_addr constant [12 x i8] c"expect_near\00" -@.str10377 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15966: index out of range: \00" -@.str10378 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15966: index out of range: \00" -@.str10379 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15966: index out of range: \00" -@.str10380 = private unnamed_addr constant [9 x i8] c"sub i32 \00" -@.str10381 = private unnamed_addr constant [3 x i8] c", \00" -@.str10382 = private unnamed_addr constant [12 x i8] c"sub i32 0, \00" -@.str10383 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" -@.str10384 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10385 = private unnamed_addr constant [11 x i8] c"select i1 \00" -@.str10386 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10387 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10388 = private unnamed_addr constant [14 x i8] c"icmp sle i32 \00" -@.str10389 = private unnamed_addr constant [3 x i8] c", \00" -@.str10390 = private unnamed_addr constant [21 x i8] c": expect_near failed\00" -@.str10391 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10392 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10393 = private unnamed_addr constant [6 x i8] c"panic\00" -@.str10394 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15985: index out of range: \00" -@.str10395 = private unnamed_addr constant [2 x i8] c":\00" -@.str10396 = private unnamed_addr constant [10 x i8] c": panic: \00" -@.str10397 = private unnamed_addr constant [41 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr \00" -@.str10398 = private unnamed_addr constant [24 x i8] c", ptr @.fmt_panic, ptr \00" -@.str10399 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10400 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10401 = private unnamed_addr constant [40 x i8] c" call void @exit(i32 1)\0A unreachable\0A\00" -@.str10402 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10403 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10404 = private unnamed_addr constant [7 x i8] c"assert\00" -@.str10405 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15995: index out of range: \00" -@.str10406 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str10407 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10408 = private unnamed_addr constant [5 x i8] c"asok\00" -@.str10409 = private unnamed_addr constant [6 x i8] c"asbad\00" -@.str10410 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str10411 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str10412 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str10413 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10414 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str10415 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16000: index out of range: \00" -@.str10416 = private unnamed_addr constant [2 x i8] c":\00" -@.str10417 = private unnamed_addr constant [21 x i8] c": assertion failed: \00" -@.str10418 = private unnamed_addr constant [41 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr \00" -@.str10419 = private unnamed_addr constant [24 x i8] c", ptr @.fmt_panic, ptr \00" -@.str10420 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10421 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10422 = private unnamed_addr constant [40 x i8] c" call void @exit(i32 1)\0A unreachable\0A\00" -@.str10423 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str10424 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10425 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10426 = private unnamed_addr constant [3 x i8] c"ok\00" -@.str10427 = private unnamed_addr constant [3 x i8] c"ok\00" -@.str10428 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16016: index out of range: \00" -@.str10429 = private unnamed_addr constant [25 x i8] c"call ptr @malloc(i64 16)\00" -@.str10430 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10431 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10432 = private unnamed_addr constant [20 x i8] c" store i32 1, ptr \00" -@.str10433 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10434 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10435 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" -@.str10436 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str10437 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10438 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10439 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10440 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10441 = private unnamed_addr constant [15 x i8] c", i32 0, i32 2\00" -@.str10442 = private unnamed_addr constant [23 x i8] c" store ptr null, ptr \00" -@.str10443 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10444 = private unnamed_addr constant [7 x i8] c"result\00" -@.str10445 = private unnamed_addr constant [4 x i8] c"err\00" -@.str10446 = private unnamed_addr constant [4 x i8] c"err\00" -@.str10447 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16028: index out of range: \00" -@.str10448 = private unnamed_addr constant [25 x i8] c"call ptr @malloc(i64 16)\00" -@.str10449 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10450 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10451 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" -@.str10452 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10453 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10454 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" -@.str10455 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" -@.str10456 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10457 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10458 = private unnamed_addr constant [15 x i8] c", i32 0, i32 2\00" -@.str10459 = private unnamed_addr constant [13 x i8] c" store ptr \00" -@.str10460 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10335 = private unnamed_addr constant [4 x i8] c"i64\00" +@.str10336 = private unnamed_addr constant [11 x i8] c"trunc i64 \00" +@.str10337 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10338 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10339 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10340 = private unnamed_addr constant [5 x i8] c"long\00" +@.str10341 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15934: index out of range: \00" +@.str10342 = private unnamed_addr constant [5 x i8] c"long\00" +@.str10343 = private unnamed_addr constant [11 x i8] c"float_bits\00" +@.str10344 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15938: index out of range: \00" +@.str10345 = private unnamed_addr constant [16 x i8] c"float_from_bits\00" +@.str10346 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15939: index out of range: \00" +@.str10347 = private unnamed_addr constant [12 x i8] c"double_bits\00" +@.str10348 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15940: index out of range: \00" +@.str10349 = private unnamed_addr constant [17 x i8] c"double_from_bits\00" +@.str10350 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15941: index out of range: \00" +@.str10351 = private unnamed_addr constant [7 x i8] c"floats\00" +@.str10352 = private unnamed_addr constant [8 x i8] c"doubles\00" +@.str10353 = private unnamed_addr constant [6 x i8] c"float\00" +@.str10354 = private unnamed_addr constant [8 x i8] c"doubles\00" +@.str10355 = private unnamed_addr constant [7 x i8] c"double\00" +@.str10356 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15945: index out of range: \00" +@.str10357 = private unnamed_addr constant [6 x i8] c"floor\00" +@.str10358 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15947: index out of range: \00" +@.str10359 = private unnamed_addr constant [10 x i8] c"ashr i32 \00" +@.str10360 = private unnamed_addr constant [5 x i8] c", 16\00" +@.str10361 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10362 = private unnamed_addr constant [7 x i8] c"expect\00" +@.str10363 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15955: index out of range: \00" +@.str10364 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str10365 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10366 = private unnamed_addr constant [16 x i8] c": expect failed\00" +@.str10367 = private unnamed_addr constant [1 x i8] c"\00" +@.str10368 = private unnamed_addr constant [1 x i8] c"\00" +@.str10369 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10370 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10371 = private unnamed_addr constant [10 x i8] c"expect_eq\00" +@.str10372 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15963: index out of range: \00" +@.str10373 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15963: index out of range: \00" +@.str10374 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10375 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10376 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str10377 = private unnamed_addr constant [3 x i8] c", \00" +@.str10378 = private unnamed_addr constant [19 x i8] c": expect_eq failed\00" +@.str10379 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10380 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10381 = private unnamed_addr constant [12 x i8] c"expect_near\00" +@.str10382 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15973: index out of range: \00" +@.str10383 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15973: index out of range: \00" +@.str10384 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15973: index out of range: \00" +@.str10385 = private unnamed_addr constant [9 x i8] c"sub i32 \00" +@.str10386 = private unnamed_addr constant [3 x i8] c", \00" +@.str10387 = private unnamed_addr constant [12 x i8] c"sub i32 0, \00" +@.str10388 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" +@.str10389 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10390 = private unnamed_addr constant [11 x i8] c"select i1 \00" +@.str10391 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10392 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10393 = private unnamed_addr constant [14 x i8] c"icmp sle i32 \00" +@.str10394 = private unnamed_addr constant [3 x i8] c", \00" +@.str10395 = private unnamed_addr constant [21 x i8] c": expect_near failed\00" +@.str10396 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10397 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10398 = private unnamed_addr constant [6 x i8] c"panic\00" +@.str10399 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15992: index out of range: \00" +@.str10400 = private unnamed_addr constant [2 x i8] c":\00" +@.str10401 = private unnamed_addr constant [10 x i8] c": panic: \00" +@.str10402 = private unnamed_addr constant [41 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr \00" +@.str10403 = private unnamed_addr constant [24 x i8] c", ptr @.fmt_panic, ptr \00" +@.str10404 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10405 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10406 = private unnamed_addr constant [40 x i8] c" call void @exit(i32 1)\0A unreachable\0A\00" +@.str10407 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10408 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10409 = private unnamed_addr constant [7 x i8] c"assert\00" +@.str10410 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16002: index out of range: \00" +@.str10411 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str10412 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10413 = private unnamed_addr constant [5 x i8] c"asok\00" +@.str10414 = private unnamed_addr constant [6 x i8] c"asbad\00" +@.str10415 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str10416 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str10417 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str10418 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10419 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str10420 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16007: index out of range: \00" +@.str10421 = private unnamed_addr constant [2 x i8] c":\00" +@.str10422 = private unnamed_addr constant [21 x i8] c": assertion failed: \00" +@.str10423 = private unnamed_addr constant [41 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr \00" +@.str10424 = private unnamed_addr constant [24 x i8] c", ptr @.fmt_panic, ptr \00" +@.str10425 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10426 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10427 = private unnamed_addr constant [40 x i8] c" call void @exit(i32 1)\0A unreachable\0A\00" +@.str10428 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str10429 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10430 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10431 = private unnamed_addr constant [3 x i8] c"ok\00" +@.str10432 = private unnamed_addr constant [3 x i8] c"ok\00" +@.str10433 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16023: index out of range: \00" +@.str10434 = private unnamed_addr constant [25 x i8] c"call ptr @malloc(i64 16)\00" +@.str10435 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10436 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10437 = private unnamed_addr constant [20 x i8] c" store i32 1, ptr \00" +@.str10438 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10439 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10440 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" +@.str10441 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str10442 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10443 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10444 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10445 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10446 = private unnamed_addr constant [15 x i8] c", i32 0, i32 2\00" +@.str10447 = private unnamed_addr constant [23 x i8] c" store ptr null, ptr \00" +@.str10448 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10449 = private unnamed_addr constant [7 x i8] c"result\00" +@.str10450 = private unnamed_addr constant [4 x i8] c"err\00" +@.str10451 = private unnamed_addr constant [4 x i8] c"err\00" +@.str10452 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16035: index out of range: \00" +@.str10453 = private unnamed_addr constant [25 x i8] c"call ptr @malloc(i64 16)\00" +@.str10454 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10455 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10456 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" +@.str10457 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10458 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10459 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" +@.str10460 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" @.str10461 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10462 = private unnamed_addr constant [7 x i8] c"result\00" -@.str10463 = private unnamed_addr constant [6 x i8] c"is_ok\00" -@.str10464 = private unnamed_addr constant [6 x i8] c"is_ok\00" -@.str10465 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16039: index out of range: \00" -@.str10466 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10467 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10468 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str10469 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str10470 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10471 = private unnamed_addr constant [9 x i8] c"zext i1 \00" -@.str10472 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10473 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10474 = private unnamed_addr constant [7 x i8] c"is_err\00" -@.str10475 = private unnamed_addr constant [7 x i8] c"is_err\00" -@.str10476 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16046: index out of range: \00" -@.str10477 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10478 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10479 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str10480 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str10481 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10482 = private unnamed_addr constant [9 x i8] c"zext i1 \00" -@.str10483 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10484 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10485 = private unnamed_addr constant [5 x i8] c"some\00" -@.str10486 = private unnamed_addr constant [5 x i8] c"some\00" -@.str10487 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16060: index out of range: \00" -@.str10488 = private unnamed_addr constant [24 x i8] c"call ptr @malloc(i64 8)\00" -@.str10489 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10490 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10491 = private unnamed_addr constant [20 x i8] c" store i32 1, ptr \00" -@.str10492 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10493 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10494 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" -@.str10495 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str10496 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10497 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10498 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10499 = private unnamed_addr constant [7 x i8] c"option\00" -@.str10500 = private unnamed_addr constant [5 x i8] c"none\00" -@.str10501 = private unnamed_addr constant [5 x i8] c"none\00" -@.str10502 = private unnamed_addr constant [24 x i8] c"call ptr @malloc(i64 8)\00" -@.str10503 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10504 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10505 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" -@.str10506 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10507 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10508 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" -@.str10509 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" -@.str10510 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10511 = private unnamed_addr constant [7 x i8] c"option\00" -@.str10512 = private unnamed_addr constant [8 x i8] c"is_some\00" -@.str10513 = private unnamed_addr constant [8 x i8] c"is_some\00" -@.str10514 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16078: index out of range: \00" -@.str10515 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10516 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10517 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str10518 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str10519 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10520 = private unnamed_addr constant [9 x i8] c"zext i1 \00" -@.str10521 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10522 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10523 = private unnamed_addr constant [8 x i8] c"is_none\00" -@.str10524 = private unnamed_addr constant [8 x i8] c"is_none\00" -@.str10525 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16085: index out of range: \00" -@.str10526 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10527 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10528 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str10529 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str10530 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10531 = private unnamed_addr constant [9 x i8] c"zext i1 \00" -@.str10532 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10533 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10534 = private unnamed_addr constant [10 x i8] c"unwrap_or\00" -@.str10535 = private unnamed_addr constant [10 x i8] c"unwrap_or\00" -@.str10536 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16092: index out of range: \00" -@.str10537 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16093: index out of range: \00" -@.str10538 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10539 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10540 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str10541 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10542 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" -@.str10543 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str10544 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str10545 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10546 = private unnamed_addr constant [11 x i8] c"select i1 \00" -@.str10547 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10548 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10549 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10550 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10551 = private unnamed_addr constant [14 x i8] c"world_prop_id\00" -@.str10552 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16104: index out of range: \00" -@.str10553 = private unnamed_addr constant [29 x i8] c"call i32 @ludic_prop_id(ptr \00" -@.str10554 = private unnamed_addr constant [2 x i8] c")\00" +@.str10462 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10463 = private unnamed_addr constant [15 x i8] c", i32 0, i32 2\00" +@.str10464 = private unnamed_addr constant [13 x i8] c" store ptr \00" +@.str10465 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10466 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10467 = private unnamed_addr constant [7 x i8] c"result\00" +@.str10468 = private unnamed_addr constant [6 x i8] c"is_ok\00" +@.str10469 = private unnamed_addr constant [6 x i8] c"is_ok\00" +@.str10470 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16046: index out of range: \00" +@.str10471 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10472 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10473 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str10474 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str10475 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10476 = private unnamed_addr constant [9 x i8] c"zext i1 \00" +@.str10477 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10478 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10479 = private unnamed_addr constant [7 x i8] c"is_err\00" +@.str10480 = private unnamed_addr constant [7 x i8] c"is_err\00" +@.str10481 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16053: index out of range: \00" +@.str10482 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10483 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10484 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str10485 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str10486 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10487 = private unnamed_addr constant [9 x i8] c"zext i1 \00" +@.str10488 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10489 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10490 = private unnamed_addr constant [5 x i8] c"some\00" +@.str10491 = private unnamed_addr constant [5 x i8] c"some\00" +@.str10492 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16067: index out of range: \00" +@.str10493 = private unnamed_addr constant [24 x i8] c"call ptr @malloc(i64 8)\00" +@.str10494 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10495 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10496 = private unnamed_addr constant [20 x i8] c" store i32 1, ptr \00" +@.str10497 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10498 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10499 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" +@.str10500 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str10501 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10502 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10503 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10504 = private unnamed_addr constant [7 x i8] c"option\00" +@.str10505 = private unnamed_addr constant [5 x i8] c"none\00" +@.str10506 = private unnamed_addr constant [5 x i8] c"none\00" +@.str10507 = private unnamed_addr constant [24 x i8] c"call ptr @malloc(i64 8)\00" +@.str10508 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10509 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10510 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" +@.str10511 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10512 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10513 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" +@.str10514 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" +@.str10515 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10516 = private unnamed_addr constant [7 x i8] c"option\00" +@.str10517 = private unnamed_addr constant [8 x i8] c"is_some\00" +@.str10518 = private unnamed_addr constant [8 x i8] c"is_some\00" +@.str10519 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16085: index out of range: \00" +@.str10520 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10521 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10522 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str10523 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str10524 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10525 = private unnamed_addr constant [9 x i8] c"zext i1 \00" +@.str10526 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10527 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10528 = private unnamed_addr constant [8 x i8] c"is_none\00" +@.str10529 = private unnamed_addr constant [8 x i8] c"is_none\00" +@.str10530 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16092: index out of range: \00" +@.str10531 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10532 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10533 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str10534 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str10535 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10536 = private unnamed_addr constant [9 x i8] c"zext i1 \00" +@.str10537 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10538 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10539 = private unnamed_addr constant [10 x i8] c"unwrap_or\00" +@.str10540 = private unnamed_addr constant [10 x i8] c"unwrap_or\00" +@.str10541 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16099: index out of range: \00" +@.str10542 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16100: index out of range: \00" +@.str10543 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10544 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10545 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str10546 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10547 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" +@.str10548 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str10549 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str10550 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10551 = private unnamed_addr constant [11 x i8] c"select i1 \00" +@.str10552 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10553 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10554 = private unnamed_addr constant [4 x i8] c"int\00" @.str10555 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10556 = private unnamed_addr constant [15 x i8] c"world_field_id\00" -@.str10557 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16105: index out of range: \00" -@.str10558 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16105: index out of range: \00" -@.str10559 = private unnamed_addr constant [30 x i8] c"call i32 @ludic_field_id(i32 \00" -@.str10560 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10561 = private unnamed_addr constant [2 x i8] c")\00" -@.str10562 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10563 = private unnamed_addr constant [10 x i8] c"world_get\00" -@.str10564 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16107: index out of range: \00" -@.str10565 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16107: index out of range: \00" -@.str10566 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16107: index out of range: \00" -@.str10567 = private unnamed_addr constant [25 x i8] c"call i64 @ludic_get(i32 \00" -@.str10568 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10569 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10570 = private unnamed_addr constant [2 x i8] c")\00" -@.str10571 = private unnamed_addr constant [11 x i8] c"trunc i64 \00" -@.str10572 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10573 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10574 = private unnamed_addr constant [10 x i8] c"world_set\00" -@.str10575 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16112: index out of range: \00" -@.str10576 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16112: index out of range: \00" -@.str10577 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16112: index out of range: \00" -@.str10578 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16112: index out of range: \00" -@.str10579 = private unnamed_addr constant [10 x i8] c"sext i32 \00" -@.str10580 = private unnamed_addr constant [8 x i8] c" to i64\00" -@.str10581 = private unnamed_addr constant [28 x i8] c" call void @ludic_set(i32 \00" -@.str10582 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10583 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10584 = private unnamed_addr constant [7 x i8] c", i64 \00" -@.str10585 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10586 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10587 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10588 = private unnamed_addr constant [10 x i8] c"world_has\00" -@.str10589 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16117: index out of range: \00" -@.str10590 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16117: index out of range: \00" -@.str10591 = private unnamed_addr constant [25 x i8] c"call i32 @ludic_has(i32 \00" -@.str10592 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10593 = private unnamed_addr constant [2 x i8] c")\00" -@.str10594 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10595 = private unnamed_addr constant [12 x i8] c"world_count\00" -@.str10596 = private unnamed_addr constant [31 x i8] c"call i32 @ludic_entity_count()\00" -@.str10597 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10598 = private unnamed_addr constant [11 x i8] c"world_kind\00" -@.str10599 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16119: index out of range: \00" -@.str10600 = private unnamed_addr constant [26 x i8] c"call i32 @ludic_kind(i32 \00" -@.str10601 = private unnamed_addr constant [2 x i8] c")\00" +@.str10556 = private unnamed_addr constant [14 x i8] c"world_prop_id\00" +@.str10557 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16111: index out of range: \00" +@.str10558 = private unnamed_addr constant [29 x i8] c"call i32 @ludic_prop_id(ptr \00" +@.str10559 = private unnamed_addr constant [2 x i8] c")\00" +@.str10560 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10561 = private unnamed_addr constant [15 x i8] c"world_field_id\00" +@.str10562 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16112: index out of range: \00" +@.str10563 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16112: index out of range: \00" +@.str10564 = private unnamed_addr constant [30 x i8] c"call i32 @ludic_field_id(i32 \00" +@.str10565 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10566 = private unnamed_addr constant [2 x i8] c")\00" +@.str10567 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10568 = private unnamed_addr constant [10 x i8] c"world_get\00" +@.str10569 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16114: index out of range: \00" +@.str10570 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16114: index out of range: \00" +@.str10571 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16114: index out of range: \00" +@.str10572 = private unnamed_addr constant [25 x i8] c"call i64 @ludic_get(i32 \00" +@.str10573 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10574 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10575 = private unnamed_addr constant [2 x i8] c")\00" +@.str10576 = private unnamed_addr constant [11 x i8] c"trunc i64 \00" +@.str10577 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10578 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10579 = private unnamed_addr constant [10 x i8] c"world_set\00" +@.str10580 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16119: index out of range: \00" +@.str10581 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16119: index out of range: \00" +@.str10582 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16119: index out of range: \00" +@.str10583 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16119: index out of range: \00" +@.str10584 = private unnamed_addr constant [10 x i8] c"sext i32 \00" +@.str10585 = private unnamed_addr constant [8 x i8] c" to i64\00" +@.str10586 = private unnamed_addr constant [28 x i8] c" call void @ludic_set(i32 \00" +@.str10587 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10588 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10589 = private unnamed_addr constant [7 x i8] c", i64 \00" +@.str10590 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10591 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10592 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10593 = private unnamed_addr constant [10 x i8] c"world_has\00" +@.str10594 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16124: index out of range: \00" +@.str10595 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16124: index out of range: \00" +@.str10596 = private unnamed_addr constant [25 x i8] c"call i32 @ludic_has(i32 \00" +@.str10597 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10598 = private unnamed_addr constant [2 x i8] c")\00" +@.str10599 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10600 = private unnamed_addr constant [12 x i8] c"world_count\00" +@.str10601 = private unnamed_addr constant [31 x i8] c"call i32 @ludic_entity_count()\00" @.str10602 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10603 = private unnamed_addr constant [15 x i8] c"world_model_id\00" -@.str10604 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16120: index out of range: \00" -@.str10605 = private unnamed_addr constant [30 x i8] c"call i32 @ludic_model_id(ptr \00" +@.str10603 = private unnamed_addr constant [11 x i8] c"world_kind\00" +@.str10604 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16126: index out of range: \00" +@.str10605 = private unnamed_addr constant [26 x i8] c"call i32 @ludic_kind(i32 \00" @.str10606 = private unnamed_addr constant [2 x i8] c")\00" @.str10607 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10608 = private unnamed_addr constant [17 x i8] c"world_query_next\00" -@.str10609 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16121: index out of range: \00" -@.str10610 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16121: index out of range: \00" -@.str10611 = private unnamed_addr constant [32 x i8] c"call i32 @ludic_query_next(i32 \00" -@.str10612 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10613 = private unnamed_addr constant [2 x i8] c")\00" -@.str10614 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10615 = private unnamed_addr constant [20 x i8] c"world_register_prop\00" -@.str10616 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16122: index out of range: \00" -@.str10617 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16122: index out of range: \00" -@.str10618 = private unnamed_addr constant [35 x i8] c"call i32 @ludic_register_prop(ptr \00" -@.str10619 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10620 = private unnamed_addr constant [2 x i8] c")\00" -@.str10621 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10622 = private unnamed_addr constant [17 x i8] c"world_attach_dyn\00" -@.str10623 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16123: index out of range: \00" -@.str10624 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16123: index out of range: \00" -@.str10625 = private unnamed_addr constant [35 x i8] c" call void @ludic_attach_dyn(i32 \00" -@.str10626 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10627 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10628 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10629 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10630 = private unnamed_addr constant [17 x i8] c"world_detach_dyn\00" -@.str10631 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16124: index out of range: \00" -@.str10632 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16124: index out of range: \00" -@.str10633 = private unnamed_addr constant [35 x i8] c" call void @ludic_detach_dyn(i32 \00" -@.str10634 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10635 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10636 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10637 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10638 = private unnamed_addr constant [12 x i8] c"world_spawn\00" -@.str10639 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16125: index out of range: \00" -@.str10640 = private unnamed_addr constant [27 x i8] c"call i32 @ludic_spawn(i32 \00" -@.str10641 = private unnamed_addr constant [2 x i8] c")\00" -@.str10642 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10643 = private unnamed_addr constant [17 x i8] c"world_prop_count\00" -@.str10644 = private unnamed_addr constant [29 x i8] c"call i32 @ludic_prop_count()\00" -@.str10645 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10646 = private unnamed_addr constant [16 x i8] c"world_prop_name\00" -@.str10647 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16128: index out of range: \00" -@.str10648 = private unnamed_addr constant [31 x i8] c"call ptr @ludic_prop_name(i32 \00" -@.str10649 = private unnamed_addr constant [2 x i8] c")\00" -@.str10650 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10651 = private unnamed_addr constant [18 x i8] c"world_field_count\00" -@.str10652 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16129: index out of range: \00" -@.str10653 = private unnamed_addr constant [33 x i8] c"call i32 @ludic_field_count(i32 \00" +@.str10608 = private unnamed_addr constant [15 x i8] c"world_model_id\00" +@.str10609 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16127: index out of range: \00" +@.str10610 = private unnamed_addr constant [30 x i8] c"call i32 @ludic_model_id(ptr \00" +@.str10611 = private unnamed_addr constant [2 x i8] c")\00" +@.str10612 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10613 = private unnamed_addr constant [17 x i8] c"world_query_next\00" +@.str10614 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16128: index out of range: \00" +@.str10615 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16128: index out of range: \00" +@.str10616 = private unnamed_addr constant [32 x i8] c"call i32 @ludic_query_next(i32 \00" +@.str10617 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10618 = private unnamed_addr constant [2 x i8] c")\00" +@.str10619 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10620 = private unnamed_addr constant [20 x i8] c"world_register_prop\00" +@.str10621 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16129: index out of range: \00" +@.str10622 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16129: index out of range: \00" +@.str10623 = private unnamed_addr constant [35 x i8] c"call i32 @ludic_register_prop(ptr \00" +@.str10624 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10625 = private unnamed_addr constant [2 x i8] c")\00" +@.str10626 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10627 = private unnamed_addr constant [17 x i8] c"world_attach_dyn\00" +@.str10628 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16130: index out of range: \00" +@.str10629 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16130: index out of range: \00" +@.str10630 = private unnamed_addr constant [35 x i8] c" call void @ludic_attach_dyn(i32 \00" +@.str10631 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10632 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10633 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10634 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10635 = private unnamed_addr constant [17 x i8] c"world_detach_dyn\00" +@.str10636 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16131: index out of range: \00" +@.str10637 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16131: index out of range: \00" +@.str10638 = private unnamed_addr constant [35 x i8] c" call void @ludic_detach_dyn(i32 \00" +@.str10639 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10640 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10641 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10642 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10643 = private unnamed_addr constant [12 x i8] c"world_spawn\00" +@.str10644 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16132: index out of range: \00" +@.str10645 = private unnamed_addr constant [27 x i8] c"call i32 @ludic_spawn(i32 \00" +@.str10646 = private unnamed_addr constant [2 x i8] c")\00" +@.str10647 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10648 = private unnamed_addr constant [17 x i8] c"world_prop_count\00" +@.str10649 = private unnamed_addr constant [29 x i8] c"call i32 @ludic_prop_count()\00" +@.str10650 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10651 = private unnamed_addr constant [16 x i8] c"world_prop_name\00" +@.str10652 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16135: index out of range: \00" +@.str10653 = private unnamed_addr constant [31 x i8] c"call ptr @ludic_prop_name(i32 \00" @.str10654 = private unnamed_addr constant [2 x i8] c")\00" -@.str10655 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10656 = private unnamed_addr constant [17 x i8] c"world_field_name\00" -@.str10657 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16130: index out of range: \00" -@.str10658 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16130: index out of range: \00" -@.str10659 = private unnamed_addr constant [32 x i8] c"call ptr @ludic_field_name(i32 \00" -@.str10660 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10661 = private unnamed_addr constant [2 x i8] c")\00" -@.str10662 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10663 = private unnamed_addr constant [17 x i8] c"world_field_type\00" -@.str10664 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16131: index out of range: \00" -@.str10665 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16131: index out of range: \00" -@.str10666 = private unnamed_addr constant [32 x i8] c"call ptr @ludic_field_type(i32 \00" -@.str10667 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10668 = private unnamed_addr constant [2 x i8] c")\00" -@.str10669 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10670 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16147: index out of range: \00" -@.str10671 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" -@.str10672 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str10673 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16151: index out of range: \00" -@.str10674 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str10675 = private unnamed_addr constant [3 x i8] c" \00" -@.str10676 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10677 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10678 = private unnamed_addr constant [4 x i8] c" = \00" -@.str10679 = private unnamed_addr constant [6 x i8] c"call \00" -@.str10680 = private unnamed_addr constant [3 x i8] c" @\00" -@.str10681 = private unnamed_addr constant [2 x i8] c"(\00" -@.str10682 = private unnamed_addr constant [3 x i8] c", \00" -@.str10683 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16165: index out of range: \00" -@.str10684 = private unnamed_addr constant [2 x i8] c" \00" -@.str10685 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16165: index out of range: \00" -@.str10686 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10687 = private unnamed_addr constant [4 x i8] c"rt_\00" -@.str10688 = private unnamed_addr constant [18 x i8] c"unknown function \00" -@.str10689 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16199: index out of range: \00" -@.str10690 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16201: index out of range: \00" -@.str10691 = private unnamed_addr constant [3 x i8] c" \00" -@.str10692 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10693 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10694 = private unnamed_addr constant [4 x i8] c" = \00" -@.str10695 = private unnamed_addr constant [6 x i8] c"call \00" -@.str10696 = private unnamed_addr constant [6 x i8] c" @fn_\00" -@.str10697 = private unnamed_addr constant [2 x i8] c"(\00" -@.str10698 = private unnamed_addr constant [3 x i8] c", \00" -@.str10699 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16212: index out of range: \00" -@.str10700 = private unnamed_addr constant [2 x i8] c" \00" -@.str10701 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16212: index out of range: \00" -@.str10702 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10703 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10704 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10705 = private unnamed_addr constant [5 x i8] c"long\00" -@.str10706 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10707 = private unnamed_addr constant [6 x i8] c"float\00" -@.str10708 = private unnamed_addr constant [6 x i8] c"float\00" -@.str10709 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10710 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16231: index out of range: \00" -@.str10711 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10712 = private unnamed_addr constant [5 x i8] c"null\00" -@.str10713 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str10714 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10715 = private unnamed_addr constant [28 x i8] c"call ptr @lp_str_slice(ptr \00" -@.str10716 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10717 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10718 = private unnamed_addr constant [2 x i8] c")\00" -@.str10719 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10720 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10721 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16253: index out of range: \00" -@.str10722 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16253: index out of range: \00" -@.str10723 = private unnamed_addr constant [7 x i8] c"const \00" -@.str10724 = private unnamed_addr constant [6 x i8] c"load \00" -@.str10725 = private unnamed_addr constant [10 x i8] c", ptr @g_\00" -@.str10726 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10727 = private unnamed_addr constant [20 x i8] c"unknown identifier \00" -@.str10728 = private unnamed_addr constant [6 x i8] c"Color\00" -@.str10729 = private unnamed_addr constant [21 x i8] c"unknown color Color.\00" -@.str10730 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10731 = private unnamed_addr constant [4 x i8] c"Key\00" -@.str10732 = private unnamed_addr constant [17 x i8] c"unknown key Key.\00" -@.str10733 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10734 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10735 = private unnamed_addr constant [6 x i8] c"IVec2\00" -@.str10736 = private unnamed_addr constant [2 x i8] c"x\00" -@.str10737 = private unnamed_addr constant [2 x i8] c"y\00" -@.str10738 = private unnamed_addr constant [2 x i8] c"x\00" +@.str10655 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10656 = private unnamed_addr constant [18 x i8] c"world_field_count\00" +@.str10657 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16136: index out of range: \00" +@.str10658 = private unnamed_addr constant [33 x i8] c"call i32 @ludic_field_count(i32 \00" +@.str10659 = private unnamed_addr constant [2 x i8] c")\00" +@.str10660 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10661 = private unnamed_addr constant [17 x i8] c"world_field_name\00" +@.str10662 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16137: index out of range: \00" +@.str10663 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16137: index out of range: \00" +@.str10664 = private unnamed_addr constant [32 x i8] c"call ptr @ludic_field_name(i32 \00" +@.str10665 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10666 = private unnamed_addr constant [2 x i8] c")\00" +@.str10667 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10668 = private unnamed_addr constant [17 x i8] c"world_field_type\00" +@.str10669 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16138: index out of range: \00" +@.str10670 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16138: index out of range: \00" +@.str10671 = private unnamed_addr constant [32 x i8] c"call ptr @ludic_field_type(i32 \00" +@.str10672 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10673 = private unnamed_addr constant [2 x i8] c")\00" +@.str10674 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10675 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16154: index out of range: \00" +@.str10676 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" +@.str10677 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str10678 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16158: index out of range: \00" +@.str10679 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str10680 = private unnamed_addr constant [3 x i8] c" \00" +@.str10681 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10682 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10683 = private unnamed_addr constant [4 x i8] c" = \00" +@.str10684 = private unnamed_addr constant [6 x i8] c"call \00" +@.str10685 = private unnamed_addr constant [3 x i8] c" @\00" +@.str10686 = private unnamed_addr constant [2 x i8] c"(\00" +@.str10687 = private unnamed_addr constant [3 x i8] c", \00" +@.str10688 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16172: index out of range: \00" +@.str10689 = private unnamed_addr constant [2 x i8] c" \00" +@.str10690 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16172: index out of range: \00" +@.str10691 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10692 = private unnamed_addr constant [4 x i8] c"rt_\00" +@.str10693 = private unnamed_addr constant [18 x i8] c"unknown function \00" +@.str10694 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16206: index out of range: \00" +@.str10695 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16208: index out of range: \00" +@.str10696 = private unnamed_addr constant [3 x i8] c" \00" +@.str10697 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10698 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10699 = private unnamed_addr constant [4 x i8] c" = \00" +@.str10700 = private unnamed_addr constant [6 x i8] c"call \00" +@.str10701 = private unnamed_addr constant [6 x i8] c" @fn_\00" +@.str10702 = private unnamed_addr constant [2 x i8] c"(\00" +@.str10703 = private unnamed_addr constant [3 x i8] c", \00" +@.str10704 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16219: index out of range: \00" +@.str10705 = private unnamed_addr constant [2 x i8] c" \00" +@.str10706 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16219: index out of range: \00" +@.str10707 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10708 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10709 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10710 = private unnamed_addr constant [5 x i8] c"long\00" +@.str10711 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10712 = private unnamed_addr constant [6 x i8] c"float\00" +@.str10713 = private unnamed_addr constant [6 x i8] c"float\00" +@.str10714 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10715 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16238: index out of range: \00" +@.str10716 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10717 = private unnamed_addr constant [5 x i8] c"null\00" +@.str10718 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str10719 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10720 = private unnamed_addr constant [28 x i8] c"call ptr @lp_str_slice(ptr \00" +@.str10721 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10722 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10723 = private unnamed_addr constant [2 x i8] c")\00" +@.str10724 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10725 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10726 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16260: index out of range: \00" +@.str10727 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16260: index out of range: \00" +@.str10728 = private unnamed_addr constant [7 x i8] c"const \00" +@.str10729 = private unnamed_addr constant [6 x i8] c"load \00" +@.str10730 = private unnamed_addr constant [10 x i8] c", ptr @g_\00" +@.str10731 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10732 = private unnamed_addr constant [20 x i8] c"unknown identifier \00" +@.str10733 = private unnamed_addr constant [6 x i8] c"Color\00" +@.str10734 = private unnamed_addr constant [21 x i8] c"unknown color Color.\00" +@.str10735 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10736 = private unnamed_addr constant [4 x i8] c"Key\00" +@.str10737 = private unnamed_addr constant [17 x i8] c"unknown key Key.\00" +@.str10738 = private unnamed_addr constant [4 x i8] c"int\00" @.str10739 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10740 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10741 = private unnamed_addr constant [5 x i8] c"byte\00" -@.str10742 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" -@.str10743 = private unnamed_addr constant [9 x i8] c"zext i8 \00" -@.str10744 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10740 = private unnamed_addr constant [6 x i8] c"IVec2\00" +@.str10741 = private unnamed_addr constant [2 x i8] c"x\00" +@.str10742 = private unnamed_addr constant [2 x i8] c"y\00" +@.str10743 = private unnamed_addr constant [2 x i8] c"x\00" +@.str10744 = private unnamed_addr constant [4 x i8] c"int\00" @.str10745 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10746 = private unnamed_addr constant [2 x i8] c"-\00" -@.str10747 = private unnamed_addr constant [6 x i8] c"fneg \00" -@.str10748 = private unnamed_addr constant [2 x i8] c" \00" -@.str10749 = private unnamed_addr constant [10 x i8] c"operator \00" -@.str10750 = private unnamed_addr constant [20 x i8] c" does not apply to \00" +@.str10746 = private unnamed_addr constant [5 x i8] c"byte\00" +@.str10747 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" +@.str10748 = private unnamed_addr constant [9 x i8] c"zext i8 \00" +@.str10749 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10750 = private unnamed_addr constant [4 x i8] c"int\00" @.str10751 = private unnamed_addr constant [2 x i8] c"-\00" -@.str10752 = private unnamed_addr constant [12 x i8] c"sub i32 0, \00" -@.str10753 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10754 = private unnamed_addr constant [4 x i8] c"i64\00" -@.str10755 = private unnamed_addr constant [2 x i8] c"-\00" -@.str10756 = private unnamed_addr constant [12 x i8] c"sub i64 0, \00" -@.str10757 = private unnamed_addr constant [5 x i8] c"long\00" -@.str10758 = private unnamed_addr constant [2 x i8] c"~\00" -@.str10759 = private unnamed_addr constant [9 x i8] c"xor i64 \00" -@.str10760 = private unnamed_addr constant [5 x i8] c", -1\00" -@.str10761 = private unnamed_addr constant [5 x i8] c"long\00" -@.str10762 = private unnamed_addr constant [2 x i8] c"-\00" -@.str10763 = private unnamed_addr constant [12 x i8] c"sub i32 0, \00" -@.str10764 = private unnamed_addr constant [2 x i8] c"~\00" -@.str10765 = private unnamed_addr constant [9 x i8] c"xor i32 \00" -@.str10766 = private unnamed_addr constant [5 x i8] c", -1\00" -@.str10767 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str10768 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10769 = private unnamed_addr constant [9 x i8] c"zext i1 \00" -@.str10770 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10771 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10772 = private unnamed_addr constant [35 x i8] c"cannot emit expression (node kind \00" -@.str10773 = private unnamed_addr constant [2 x i8] c")\00" -@.str10774 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10775 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10776 = private unnamed_addr constant [4 x i8] c"fn(\00" -@.str10777 = private unnamed_addr constant [2 x i8] c",\00" -@.str10778 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16363: index out of range: \00" -@.str10779 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10780 = private unnamed_addr constant [4 x i8] c")->\00" -@.str10781 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10782 = private unnamed_addr constant [4 x i8] c"fn \00" -@.str10783 = private unnamed_addr constant [22 x i8] c": no function called \00" -@.str10784 = private unnamed_addr constant [5 x i8] c"@fn_\00" -@.str10785 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16420: index out of range: \00" -@.str10786 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16420: index out of range: \00" -@.str10787 = private unnamed_addr constant [5 x i8] c"@fn_\00" -@.str10788 = private unnamed_addr constant [5 x i8] c"$inj\00" -@.str10789 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16431: index out of range: \00" -@.str10790 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10791 = private unnamed_addr constant [1 x i8] c"\00" -@.str10792 = private unnamed_addr constant [1 x i8] c"\00" -@.str10793 = private unnamed_addr constant [1 x i8] c"\00" -@.str10794 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16443: index out of range: \00" -@.str10795 = private unnamed_addr constant [5 x i8] c" %s\00" -@.str10796 = private unnamed_addr constant [27 x i8] c" = load ptr, ptr @g_state$\00" -@.str10797 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10798 = private unnamed_addr constant [3 x i8] c", \00" -@.str10799 = private unnamed_addr constant [7 x i8] c"ptr %s\00" -@.str10800 = private unnamed_addr constant [3 x i8] c", \00" -@.str10801 = private unnamed_addr constant [4 x i8] c" %p\00" -@.str10802 = private unnamed_addr constant [3 x i8] c", \00" -@.str10803 = private unnamed_addr constant [4 x i8] c" %p\00" -@.str10804 = private unnamed_addr constant [8 x i8] c" call \00" -@.str10805 = private unnamed_addr constant [6 x i8] c" @fn_\00" -@.str10806 = private unnamed_addr constant [2 x i8] c"(\00" -@.str10807 = private unnamed_addr constant [14 x i8] c")\0A ret void\0A\00" -@.str10808 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10809 = private unnamed_addr constant [13 x i8] c" %r = call \00" +@.str10752 = private unnamed_addr constant [6 x i8] c"fneg \00" +@.str10753 = private unnamed_addr constant [2 x i8] c" \00" +@.str10754 = private unnamed_addr constant [10 x i8] c"operator \00" +@.str10755 = private unnamed_addr constant [20 x i8] c" does not apply to \00" +@.str10756 = private unnamed_addr constant [2 x i8] c"-\00" +@.str10757 = private unnamed_addr constant [12 x i8] c"sub i32 0, \00" +@.str10758 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10759 = private unnamed_addr constant [4 x i8] c"i64\00" +@.str10760 = private unnamed_addr constant [2 x i8] c"-\00" +@.str10761 = private unnamed_addr constant [12 x i8] c"sub i64 0, \00" +@.str10762 = private unnamed_addr constant [5 x i8] c"long\00" +@.str10763 = private unnamed_addr constant [2 x i8] c"~\00" +@.str10764 = private unnamed_addr constant [9 x i8] c"xor i64 \00" +@.str10765 = private unnamed_addr constant [5 x i8] c", -1\00" +@.str10766 = private unnamed_addr constant [5 x i8] c"long\00" +@.str10767 = private unnamed_addr constant [2 x i8] c"-\00" +@.str10768 = private unnamed_addr constant [12 x i8] c"sub i32 0, \00" +@.str10769 = private unnamed_addr constant [2 x i8] c"~\00" +@.str10770 = private unnamed_addr constant [9 x i8] c"xor i32 \00" +@.str10771 = private unnamed_addr constant [5 x i8] c", -1\00" +@.str10772 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str10773 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10774 = private unnamed_addr constant [9 x i8] c"zext i1 \00" +@.str10775 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10776 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10777 = private unnamed_addr constant [35 x i8] c"cannot emit expression (node kind \00" +@.str10778 = private unnamed_addr constant [2 x i8] c")\00" +@.str10779 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10780 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10781 = private unnamed_addr constant [4 x i8] c"fn(\00" +@.str10782 = private unnamed_addr constant [2 x i8] c",\00" +@.str10783 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16370: index out of range: \00" +@.str10784 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10785 = private unnamed_addr constant [4 x i8] c")->\00" +@.str10786 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10787 = private unnamed_addr constant [4 x i8] c"fn \00" +@.str10788 = private unnamed_addr constant [22 x i8] c": no function called \00" +@.str10789 = private unnamed_addr constant [5 x i8] c"@fn_\00" +@.str10790 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16427: index out of range: \00" +@.str10791 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16427: index out of range: \00" +@.str10792 = private unnamed_addr constant [5 x i8] c"@fn_\00" +@.str10793 = private unnamed_addr constant [5 x i8] c"$inj\00" +@.str10794 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16438: index out of range: \00" +@.str10795 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10796 = private unnamed_addr constant [1 x i8] c"\00" +@.str10797 = private unnamed_addr constant [1 x i8] c"\00" +@.str10798 = private unnamed_addr constant [1 x i8] c"\00" +@.str10799 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16450: index out of range: \00" +@.str10800 = private unnamed_addr constant [5 x i8] c" %s\00" +@.str10801 = private unnamed_addr constant [27 x i8] c" = load ptr, ptr @g_state$\00" +@.str10802 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10803 = private unnamed_addr constant [3 x i8] c", \00" +@.str10804 = private unnamed_addr constant [7 x i8] c"ptr %s\00" +@.str10805 = private unnamed_addr constant [3 x i8] c", \00" +@.str10806 = private unnamed_addr constant [4 x i8] c" %p\00" +@.str10807 = private unnamed_addr constant [3 x i8] c", \00" +@.str10808 = private unnamed_addr constant [4 x i8] c" %p\00" +@.str10809 = private unnamed_addr constant [8 x i8] c" call \00" @.str10810 = private unnamed_addr constant [6 x i8] c" @fn_\00" @.str10811 = private unnamed_addr constant [2 x i8] c"(\00" -@.str10812 = private unnamed_addr constant [9 x i8] c")\0A ret \00" -@.str10813 = private unnamed_addr constant [5 x i8] c" %r\0A\00" -@.str10814 = private unnamed_addr constant [8 x i8] c"define \00" -@.str10815 = private unnamed_addr constant [2 x i8] c" \00" +@.str10812 = private unnamed_addr constant [14 x i8] c")\0A ret void\0A\00" +@.str10813 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10814 = private unnamed_addr constant [13 x i8] c" %r = call \00" +@.str10815 = private unnamed_addr constant [6 x i8] c" @fn_\00" @.str10816 = private unnamed_addr constant [2 x i8] c"(\00" -@.str10817 = private unnamed_addr constant [12 x i8] c") {\0Aentry:\0A\00" -@.str10818 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str10819 = private unnamed_addr constant [5 x i8] c"@fn_\00" -@.str10820 = private unnamed_addr constant [3 x i8] c"a \00" -@.str10821 = private unnamed_addr constant [8 x i8] c" takes \00" -@.str10822 = private unnamed_addr constant [35 x i8] c" argument(s), and this call gives \00" -@.str10823 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16476: index out of range: \00" -@.str10824 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16477: index out of range: \00" -@.str10825 = private unnamed_addr constant [3 x i8] c" \00" -@.str10826 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10827 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10828 = private unnamed_addr constant [4 x i8] c" = \00" -@.str10829 = private unnamed_addr constant [6 x i8] c"call \00" -@.str10830 = private unnamed_addr constant [2 x i8] c" \00" -@.str10831 = private unnamed_addr constant [2 x i8] c"(\00" -@.str10832 = private unnamed_addr constant [3 x i8] c", \00" -@.str10833 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16492: index out of range: \00" -@.str10834 = private unnamed_addr constant [2 x i8] c" \00" -@.str10835 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16492: index out of range: \00" -@.str10836 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10837 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16504: index out of range: \00" -@.str10838 = private unnamed_addr constant [3 x i8] c"a \00" -@.str10839 = private unnamed_addr constant [40 x i8] c" is not a function and cannot be called\00" -@.str10840 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10841 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16531: index out of range: \00" -@.str10842 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str10843 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16531: index out of range: \00" -@.str10844 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str10845 = private unnamed_addr constant [4 x i8] c"fn \00" -@.str10846 = private unnamed_addr constant [69 x i8] c": a worker function takes (i: int, ctx: pointer) and returns nothing\00" -@.str10847 = private unnamed_addr constant [17 x i8] c"LUDIC_VIS_REPORT\00" -@.str10848 = private unnamed_addr constant [7 x i8] c"state$\00" -@.str10849 = private unnamed_addr constant [15 x i8] c"ludic_reduce__\00" -@.str10850 = private unnamed_addr constant [1 x i8] c"\00" -@.str10851 = private unnamed_addr constant [7 x i8] c"uses: \00" -@.str10852 = private unnamed_addr constant [2 x i8] c":\00" -@.str10853 = private unnamed_addr constant [3 x i8] c": \00" -@.str10854 = private unnamed_addr constant [2 x i8] c".\00" -@.str10855 = private unnamed_addr constant [12 x i8] c" used from \00" -@.str10856 = private unnamed_addr constant [10 x i8] c" (module \00" -@.str10857 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10858 = private unnamed_addr constant [7 x i8] c" uses \00" -@.str10859 = private unnamed_addr constant [2 x i8] c".\00" -@.str10860 = private unnamed_addr constant [3 x i8] c" (\00" -@.str10861 = private unnamed_addr constant [2 x i8] c":\00" -@.str10862 = private unnamed_addr constant [14 x i8] c"): add 'uses \00" -@.str10863 = private unnamed_addr constant [6 x i8] c"' to \00" -@.str10864 = private unnamed_addr constant [42 x i8] c"'s module line, or take it through a port\00" -@.str10865 = private unnamed_addr constant [1 x i8] c"\00" -@.str10866 = private unnamed_addr constant [6 x i8] c"vis: \00" -@.str10867 = private unnamed_addr constant [2 x i8] c":\00" -@.str10868 = private unnamed_addr constant [3 x i8] c": \00" -@.str10869 = private unnamed_addr constant [2 x i8] c".\00" -@.str10870 = private unnamed_addr constant [12 x i8] c" used from \00" -@.str10871 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10872 = private unnamed_addr constant [23 x i8] c" is private to module \00" -@.str10873 = private unnamed_addr constant [42 x i8] c"; mark it 'export' where it is declared (\00" -@.str10874 = private unnamed_addr constant [2 x i8] c")\00" -@.str10875 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16629: index out of range: \00" -@.str10876 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16629: index out of range: \00" -@.str10877 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16630: index out of range: \00" -@.str10878 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16631: index out of range: \00" -@.str10879 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16632: index out of range: \00" -@.str10880 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16633: index out of range: \00" -@.str10881 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16633: index out of range: \00" -@.str10882 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16633: index out of range: \00" -@.str10883 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16634: index out of range: \00" -@.str10884 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16634: index out of range: \00" -@.str10885 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16639: index out of range: \00" -@.str10886 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16640: index out of range: \00" -@.str10887 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16640: index out of range: \00" -@.str10888 = private unnamed_addr constant [2 x i8] c"?\00" -@.str10889 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10890 = private unnamed_addr constant [6 x i8] c"float\00" -@.str10891 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10892 = private unnamed_addr constant [5 x i8] c"long\00" -@.str10893 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10894 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10895 = private unnamed_addr constant [5 x i8] c"byte\00" -@.str10896 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str10897 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16659: index out of range: \00" -@.str10898 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16659: index out of range: \00" -@.str10899 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16660: index out of range: \00" -@.str10900 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16660: index out of range: \00" -@.str10901 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16666: index out of range: \00" -@.str10902 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16670: index out of range: \00" -@.str10903 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16692: index out of range: \00" -@.str10904 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16693: index out of range: \00" -@.str10905 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16694: index out of range: \00" -@.str10906 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16694: index out of range: \00" -@.str10907 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16695: index out of range: \00" -@.str10908 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16696: index out of range: \00" -@.str10909 = private unnamed_addr constant [6 x i8] c"state\00" -@.str10910 = private unnamed_addr constant [3 x i8] c": \00" -@.str10911 = private unnamed_addr constant [16 x i8] c" holds part of \00" -@.str10912 = private unnamed_addr constant [55 x i8] c", which is module-level and immutable all the way down\00" -@.str10913 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16700: index out of range: \00" -@.str10914 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16701: index out of range: \00" -@.str10915 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16704: index out of range: \00" -@.str10916 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16704: index out of range: \00" -@.str10917 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16704: index out of range: \00" -@.str10918 = private unnamed_addr constant [6 x i8] c"state\00" -@.str10919 = private unnamed_addr constant [3 x i8] c": \00" -@.str10920 = private unnamed_addr constant [28 x i8] c" holds part of a read-only \00" -@.str10921 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16705: index out of range: \00" -@.str10922 = private unnamed_addr constant [25 x i8] c"; take the state as mut \00" -@.str10923 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16705: index out of range: \00" -@.str10924 = private unnamed_addr constant [14 x i8] c" to change it\00" -@.str10925 = private unnamed_addr constant [6 x i8] c"state\00" -@.str10926 = private unnamed_addr constant [3 x i8] c": \00" -@.str10927 = private unnamed_addr constant [21 x i8] c" is read-only here (\00" -@.str10928 = private unnamed_addr constant [3 x i8] c": \00" -@.str10929 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16709: index out of range: \00" -@.str10930 = private unnamed_addr constant [15 x i8] c"); take it as \00" -@.str10931 = private unnamed_addr constant [7 x i8] c": mut \00" -@.str10932 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16709: index out of range: \00" -@.str10933 = private unnamed_addr constant [14 x i8] c" to change it\00" -@.str10934 = private unnamed_addr constant [11 x i8] c"the state \00" -@.str10935 = private unnamed_addr constant [6 x i8] c"state\00" -@.str10936 = private unnamed_addr constant [3 x i8] c": \00" -@.str10937 = private unnamed_addr constant [109 x i8] c" is module-level and immutable all the way down; changing data belongs in a state, passed as a mut parameter\00" -@.str10938 = private unnamed_addr constant [6 x i8] c"state\00" -@.str10939 = private unnamed_addr constant [7 x i8] c": mut \00" -@.str10940 = private unnamed_addr constant [38 x i8] c" - mut is for a state parameter, and \00" -@.str10941 = private unnamed_addr constant [16 x i8] c" is not a state\00" -@.str10942 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16735: index out of range: \00" -@.str10943 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16738: index out of range: \00" -@.str10944 = private unnamed_addr constant [6 x i8] c"state\00" -@.str10945 = private unnamed_addr constant [10 x i8] c" changes \00" -@.str10946 = private unnamed_addr constant [3 x i8] c" (\00" -@.str10947 = private unnamed_addr constant [7 x i8] c": mut \00" -@.str10948 = private unnamed_addr constant [8 x i8] c"), and \00" -@.str10949 = private unnamed_addr constant [19 x i8] c" is read-only here\00" -@.str10950 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16756: index out of range: \00" -@.str10951 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16761: index out of range: \00" -@.str10952 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16761: index out of range: \00" -@.str10953 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16803: index out of range: \00" -@.str10954 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16804: index out of range: \00" -@.str10955 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16807: index out of range: \00" -@.str10956 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16808: index out of range: \00" -@.str10957 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16813: index out of range: \00" -@.str10958 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16814: index out of range: \00" -@.str10959 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16814: index out of range: \00" -@.str10960 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16827: index out of range: \00" -@.str10961 = private unnamed_addr constant [2 x i8] c"?\00" -@.str10962 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10963 = private unnamed_addr constant [5 x i8] c"long\00" -@.str10964 = private unnamed_addr constant [5 x i8] c"byte\00" -@.str10965 = private unnamed_addr constant [4 x i8] c"i64\00" -@.str10966 = private unnamed_addr constant [3 x i8] c"u8\00" -@.str10967 = private unnamed_addr constant [4 x i8] c"an \00" -@.str10968 = private unnamed_addr constant [3 x i8] c"a \00" -@.str10969 = private unnamed_addr constant [6 x i8] c"float\00" -@.str10970 = private unnamed_addr constant [7 x i8] c"double\00" -@.str10971 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10972 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10973 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10974 = private unnamed_addr constant [5 x i8] c"null\00" -@.str10975 = private unnamed_addr constant [2 x i8] c"-\00" -@.str10976 = private unnamed_addr constant [7 x i8] c"number\00" -@.str10977 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10978 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10979 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10980 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10981 = private unnamed_addr constant [10 x i8] c"reference\00" -@.str10982 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10983 = private unnamed_addr constant [5 x i8] c"null\00" -@.str10984 = private unnamed_addr constant [5 x i8] c"null\00" -@.str10985 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10986 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10987 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10988 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10989 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10990 = private unnamed_addr constant [10 x i8] c"narrowing\00" -@.str10991 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str10992 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10993 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10994 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str10995 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10996 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10997 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str10998 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str10999 = private unnamed_addr constant [6 x i8] c"bytes\00" -@.str11000 = private unnamed_addr constant [14 x i8] c"slice-pointer\00" -@.str11001 = private unnamed_addr constant [6 x i8] c"bytes\00" -@.str11002 = private unnamed_addr constant [14 x i8] c"pointer-slice\00" -@.str11003 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11004 = private unnamed_addr constant [14 x i8] c"slice-pointer\00" -@.str11005 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11006 = private unnamed_addr constant [14 x i8] c"pointer-slice\00" -@.str11007 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11008 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11009 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11010 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str11011 = private unnamed_addr constant [7 x i8] c"record\00" -@.str11012 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11013 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str11014 = private unnamed_addr constant [10 x i8] c"[]pointer\00" -@.str11015 = private unnamed_addr constant [10 x i8] c"[]pointer\00" -@.str11016 = private unnamed_addr constant [6 x i8] c"slice\00" -@.str11017 = private unnamed_addr constant [3 x i8] c"fn\00" -@.str11018 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11019 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str11020 = private unnamed_addr constant [5 x i8] c"null\00" -@.str11021 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11022 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16957: index out of range: \00" -@.str11023 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16958: index out of range: \00" -@.str11024 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16971: index out of range: \00" -@.str11025 = private unnamed_addr constant [19 x i8] c"LUDIC_CHECK_REPORT\00" -@.str11026 = private unnamed_addr constant [1 x i8] c"\00" -@.str11027 = private unnamed_addr constant [2 x i8] c":\00" -@.str11028 = private unnamed_addr constant [10 x i8] c": error: \00" -@.str11029 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11030 = private unnamed_addr constant [7 x i8] c"check[\00" -@.str11031 = private unnamed_addr constant [4 x i8] c"]: \00" -@.str11032 = private unnamed_addr constant [2 x i8] c":\00" -@.str11033 = private unnamed_addr constant [3 x i8] c": \00" -@.str11034 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11035 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11036 = private unnamed_addr constant [5 x i8] c"byte\00" -@.str11037 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11038 = private unnamed_addr constant [8 x i8] c"literal\00" -@.str11039 = private unnamed_addr constant [8 x i8] c" wants \00" -@.str11040 = private unnamed_addr constant [6 x i8] c" and \00" -@.str11041 = private unnamed_addr constant [32 x i8] c" does not fit one; it is a long\00" -@.str11042 = private unnamed_addr constant [14 x i8] c"slice-pointer\00" -@.str11043 = private unnamed_addr constant [30 x i8] c" wants a pointer and this is \00" -@.str11044 = private unnamed_addr constant [55 x i8] c": take the slice itself, or data_of(xs) in unsafe code\00" -@.str11045 = private unnamed_addr constant [14 x i8] c"pointer-slice\00" -@.str11046 = private unnamed_addr constant [8 x i8] c" wants \00" -@.str11047 = private unnamed_addr constant [93 x i8] c" and this is a pointer: a slice is made with words(n), floats(n) or new, not from an address\00" -@.str11048 = private unnamed_addr constant [8 x i8] c" wants \00" -@.str11049 = private unnamed_addr constant [14 x i8] c" and this is \00" -@.str11050 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17021: index out of range: \00" -@.str11051 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17021: index out of range: \00" -@.str11052 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17034: index out of range: \00" -@.str11053 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11054 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11055 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11056 = private unnamed_addr constant [6 x i8] c"float\00" -@.str11057 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11058 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11059 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11060 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11061 = private unnamed_addr constant [5 x i8] c"null\00" -@.str11062 = private unnamed_addr constant [6 x i8] c"fnref\00" -@.str11063 = private unnamed_addr constant [4 x i8] c"fn \00" -@.str11064 = private unnamed_addr constant [22 x i8] c": no function called \00" -@.str11065 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11066 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11067 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11068 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17089: index out of range: \00" -@.str11069 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17090: index out of range: \00" -@.str11070 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11071 = private unnamed_addr constant [5 x i8] c"port\00" -@.str11072 = private unnamed_addr constant [42 x i8] c" is a port: it is filled once with 'bind \00" -@.str11073 = private unnamed_addr constant [63 x i8] c" { ... }' where the program is put together, not made with new\00" -@.str11074 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17126: index out of range: \00" -@.str11075 = private unnamed_addr constant [7 x i8] c"field \00" -@.str11076 = private unnamed_addr constant [5 x i8] c" of \00" -@.str11077 = private unnamed_addr constant [6 x i8] c"field\00" -@.str11078 = private unnamed_addr constant [15 x i8] c" has no field \00" -@.str11079 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11080 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17144: index out of range: \00" -@.str11081 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17144: index out of range: \00" -@.str11082 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17145: index out of range: \00" -@.str11083 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17148: index out of range: \00" -@.str11084 = private unnamed_addr constant [19 x i8] c"an element of a []\00" -@.str11085 = private unnamed_addr constant [5 x i8] c"null\00" -@.str11086 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11087 = private unnamed_addr constant [3 x i8] c"[]\00" -@.str11088 = private unnamed_addr constant [4 x i8] c"not\00" -@.str11089 = private unnamed_addr constant [2 x i8] c"!\00" -@.str11090 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11091 = private unnamed_addr constant [2 x i8] c"-\00" -@.str11092 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11093 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11094 = private unnamed_addr constant [12 x i8] c"- on a bool\00" -@.str11095 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11096 = private unnamed_addr constant [2 x i8] c"?\00" +@.str10817 = private unnamed_addr constant [9 x i8] c")\0A ret \00" +@.str10818 = private unnamed_addr constant [5 x i8] c" %r\0A\00" +@.str10819 = private unnamed_addr constant [8 x i8] c"define \00" +@.str10820 = private unnamed_addr constant [2 x i8] c" \00" +@.str10821 = private unnamed_addr constant [2 x i8] c"(\00" +@.str10822 = private unnamed_addr constant [12 x i8] c") {\0Aentry:\0A\00" +@.str10823 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str10824 = private unnamed_addr constant [5 x i8] c"@fn_\00" +@.str10825 = private unnamed_addr constant [3 x i8] c"a \00" +@.str10826 = private unnamed_addr constant [8 x i8] c" takes \00" +@.str10827 = private unnamed_addr constant [35 x i8] c" argument(s), and this call gives \00" +@.str10828 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16483: index out of range: \00" +@.str10829 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16484: index out of range: \00" +@.str10830 = private unnamed_addr constant [3 x i8] c" \00" +@.str10831 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10832 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10833 = private unnamed_addr constant [4 x i8] c" = \00" +@.str10834 = private unnamed_addr constant [6 x i8] c"call \00" +@.str10835 = private unnamed_addr constant [2 x i8] c" \00" +@.str10836 = private unnamed_addr constant [2 x i8] c"(\00" +@.str10837 = private unnamed_addr constant [3 x i8] c", \00" +@.str10838 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16499: index out of range: \00" +@.str10839 = private unnamed_addr constant [2 x i8] c" \00" +@.str10840 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16499: index out of range: \00" +@.str10841 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10842 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16511: index out of range: \00" +@.str10843 = private unnamed_addr constant [3 x i8] c"a \00" +@.str10844 = private unnamed_addr constant [40 x i8] c" is not a function and cannot be called\00" +@.str10845 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10846 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16538: index out of range: \00" +@.str10847 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str10848 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16538: index out of range: \00" +@.str10849 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str10850 = private unnamed_addr constant [4 x i8] c"fn \00" +@.str10851 = private unnamed_addr constant [69 x i8] c": a worker function takes (i: int, ctx: pointer) and returns nothing\00" +@.str10852 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16543: index out of range: \00" +@.str10853 = private unnamed_addr constant [4 x i8] c"fn \00" +@.str10854 = private unnamed_addr constant [55 x i8] c": a worker runs on every core at once, so it may read \00" +@.str10855 = private unnamed_addr constant [21 x i8] c" but not change it (\00" +@.str10856 = private unnamed_addr constant [7 x i8] c": mut \00" +@.str10857 = private unnamed_addr constant [58 x i8] c"); write results into ctx, shared counts through Sync.add\00" +@.str10858 = private unnamed_addr constant [17 x i8] c"LUDIC_VIS_REPORT\00" +@.str10859 = private unnamed_addr constant [7 x i8] c"state$\00" +@.str10860 = private unnamed_addr constant [15 x i8] c"ludic_reduce__\00" +@.str10861 = private unnamed_addr constant [1 x i8] c"\00" +@.str10862 = private unnamed_addr constant [7 x i8] c"uses: \00" +@.str10863 = private unnamed_addr constant [2 x i8] c":\00" +@.str10864 = private unnamed_addr constant [3 x i8] c": \00" +@.str10865 = private unnamed_addr constant [2 x i8] c".\00" +@.str10866 = private unnamed_addr constant [12 x i8] c" used from \00" +@.str10867 = private unnamed_addr constant [10 x i8] c" (module \00" +@.str10868 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10869 = private unnamed_addr constant [7 x i8] c" uses \00" +@.str10870 = private unnamed_addr constant [2 x i8] c".\00" +@.str10871 = private unnamed_addr constant [3 x i8] c" (\00" +@.str10872 = private unnamed_addr constant [2 x i8] c":\00" +@.str10873 = private unnamed_addr constant [14 x i8] c"): add 'uses \00" +@.str10874 = private unnamed_addr constant [6 x i8] c"' to \00" +@.str10875 = private unnamed_addr constant [42 x i8] c"'s module line, or take it through a port\00" +@.str10876 = private unnamed_addr constant [1 x i8] c"\00" +@.str10877 = private unnamed_addr constant [6 x i8] c"vis: \00" +@.str10878 = private unnamed_addr constant [2 x i8] c":\00" +@.str10879 = private unnamed_addr constant [3 x i8] c": \00" +@.str10880 = private unnamed_addr constant [2 x i8] c".\00" +@.str10881 = private unnamed_addr constant [12 x i8] c" used from \00" +@.str10882 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10883 = private unnamed_addr constant [23 x i8] c" is private to module \00" +@.str10884 = private unnamed_addr constant [42 x i8] c"; mark it 'export' where it is declared (\00" +@.str10885 = private unnamed_addr constant [2 x i8] c")\00" +@.str10886 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16643: index out of range: \00" +@.str10887 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16643: index out of range: \00" +@.str10888 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16644: index out of range: \00" +@.str10889 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16645: index out of range: \00" +@.str10890 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16646: index out of range: \00" +@.str10891 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16647: index out of range: \00" +@.str10892 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16647: index out of range: \00" +@.str10893 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16647: index out of range: \00" +@.str10894 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16648: index out of range: \00" +@.str10895 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16648: index out of range: \00" +@.str10896 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16653: index out of range: \00" +@.str10897 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16654: index out of range: \00" +@.str10898 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16654: index out of range: \00" +@.str10899 = private unnamed_addr constant [2 x i8] c"?\00" +@.str10900 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10901 = private unnamed_addr constant [6 x i8] c"float\00" +@.str10902 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10903 = private unnamed_addr constant [5 x i8] c"long\00" +@.str10904 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10905 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10906 = private unnamed_addr constant [5 x i8] c"byte\00" +@.str10907 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str10908 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16673: index out of range: \00" +@.str10909 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16673: index out of range: \00" +@.str10910 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16674: index out of range: \00" +@.str10911 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16674: index out of range: \00" +@.str10912 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16680: index out of range: \00" +@.str10913 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16684: index out of range: \00" +@.str10914 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16706: index out of range: \00" +@.str10915 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16707: index out of range: \00" +@.str10916 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16708: index out of range: \00" +@.str10917 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16708: index out of range: \00" +@.str10918 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16709: index out of range: \00" +@.str10919 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16710: index out of range: \00" +@.str10920 = private unnamed_addr constant [6 x i8] c"state\00" +@.str10921 = private unnamed_addr constant [3 x i8] c": \00" +@.str10922 = private unnamed_addr constant [16 x i8] c" holds part of \00" +@.str10923 = private unnamed_addr constant [55 x i8] c", which is module-level and immutable all the way down\00" +@.str10924 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16714: index out of range: \00" +@.str10925 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16715: index out of range: \00" +@.str10926 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16718: index out of range: \00" +@.str10927 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16718: index out of range: \00" +@.str10928 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16718: index out of range: \00" +@.str10929 = private unnamed_addr constant [6 x i8] c"state\00" +@.str10930 = private unnamed_addr constant [3 x i8] c": \00" +@.str10931 = private unnamed_addr constant [28 x i8] c" holds part of a read-only \00" +@.str10932 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16719: index out of range: \00" +@.str10933 = private unnamed_addr constant [25 x i8] c"; take the state as mut \00" +@.str10934 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16719: index out of range: \00" +@.str10935 = private unnamed_addr constant [14 x i8] c" to change it\00" +@.str10936 = private unnamed_addr constant [6 x i8] c"state\00" +@.str10937 = private unnamed_addr constant [3 x i8] c": \00" +@.str10938 = private unnamed_addr constant [21 x i8] c" is read-only here (\00" +@.str10939 = private unnamed_addr constant [3 x i8] c": \00" +@.str10940 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16723: index out of range: \00" +@.str10941 = private unnamed_addr constant [15 x i8] c"); take it as \00" +@.str10942 = private unnamed_addr constant [7 x i8] c": mut \00" +@.str10943 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16723: index out of range: \00" +@.str10944 = private unnamed_addr constant [14 x i8] c" to change it\00" +@.str10945 = private unnamed_addr constant [11 x i8] c"the state \00" +@.str10946 = private unnamed_addr constant [6 x i8] c"state\00" +@.str10947 = private unnamed_addr constant [3 x i8] c": \00" +@.str10948 = private unnamed_addr constant [109 x i8] c" is module-level and immutable all the way down; changing data belongs in a state, passed as a mut parameter\00" +@.str10949 = private unnamed_addr constant [6 x i8] c"state\00" +@.str10950 = private unnamed_addr constant [7 x i8] c": mut \00" +@.str10951 = private unnamed_addr constant [38 x i8] c" - mut is for a state parameter, and \00" +@.str10952 = private unnamed_addr constant [16 x i8] c" is not a state\00" +@.str10953 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16749: index out of range: \00" +@.str10954 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16752: index out of range: \00" +@.str10955 = private unnamed_addr constant [6 x i8] c"state\00" +@.str10956 = private unnamed_addr constant [10 x i8] c" changes \00" +@.str10957 = private unnamed_addr constant [3 x i8] c" (\00" +@.str10958 = private unnamed_addr constant [7 x i8] c": mut \00" +@.str10959 = private unnamed_addr constant [8 x i8] c"), and \00" +@.str10960 = private unnamed_addr constant [19 x i8] c" is read-only here\00" +@.str10961 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16770: index out of range: \00" +@.str10962 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16775: index out of range: \00" +@.str10963 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16775: index out of range: \00" +@.str10964 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16817: index out of range: \00" +@.str10965 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16818: index out of range: \00" +@.str10966 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16821: index out of range: \00" +@.str10967 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16822: index out of range: \00" +@.str10968 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16827: index out of range: \00" +@.str10969 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16828: index out of range: \00" +@.str10970 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16828: index out of range: \00" +@.str10971 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16841: index out of range: \00" +@.str10972 = private unnamed_addr constant [2 x i8] c"?\00" +@.str10973 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10974 = private unnamed_addr constant [5 x i8] c"long\00" +@.str10975 = private unnamed_addr constant [5 x i8] c"byte\00" +@.str10976 = private unnamed_addr constant [4 x i8] c"i64\00" +@.str10977 = private unnamed_addr constant [3 x i8] c"u8\00" +@.str10978 = private unnamed_addr constant [4 x i8] c"an \00" +@.str10979 = private unnamed_addr constant [3 x i8] c"a \00" +@.str10980 = private unnamed_addr constant [6 x i8] c"float\00" +@.str10981 = private unnamed_addr constant [7 x i8] c"double\00" +@.str10982 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10983 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10984 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10985 = private unnamed_addr constant [5 x i8] c"null\00" +@.str10986 = private unnamed_addr constant [2 x i8] c"-\00" +@.str10987 = private unnamed_addr constant [7 x i8] c"number\00" +@.str10988 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10989 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10990 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10991 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10992 = private unnamed_addr constant [10 x i8] c"reference\00" +@.str10993 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10994 = private unnamed_addr constant [5 x i8] c"null\00" +@.str10995 = private unnamed_addr constant [5 x i8] c"null\00" +@.str10996 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10997 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10998 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10999 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11000 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11001 = private unnamed_addr constant [10 x i8] c"narrowing\00" +@.str11002 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11003 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11004 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11005 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11006 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11007 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11008 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11009 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11010 = private unnamed_addr constant [6 x i8] c"bytes\00" +@.str11011 = private unnamed_addr constant [14 x i8] c"slice-pointer\00" +@.str11012 = private unnamed_addr constant [6 x i8] c"bytes\00" +@.str11013 = private unnamed_addr constant [14 x i8] c"pointer-slice\00" +@.str11014 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11015 = private unnamed_addr constant [14 x i8] c"slice-pointer\00" +@.str11016 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11017 = private unnamed_addr constant [14 x i8] c"pointer-slice\00" +@.str11018 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11019 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11020 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11021 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11022 = private unnamed_addr constant [7 x i8] c"record\00" +@.str11023 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11024 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11025 = private unnamed_addr constant [10 x i8] c"[]pointer\00" +@.str11026 = private unnamed_addr constant [10 x i8] c"[]pointer\00" +@.str11027 = private unnamed_addr constant [6 x i8] c"slice\00" +@.str11028 = private unnamed_addr constant [3 x i8] c"fn\00" +@.str11029 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11030 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11031 = private unnamed_addr constant [5 x i8] c"null\00" +@.str11032 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11033 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16971: index out of range: \00" +@.str11034 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16972: index out of range: \00" +@.str11035 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16985: index out of range: \00" +@.str11036 = private unnamed_addr constant [19 x i8] c"LUDIC_CHECK_REPORT\00" +@.str11037 = private unnamed_addr constant [1 x i8] c"\00" +@.str11038 = private unnamed_addr constant [2 x i8] c":\00" +@.str11039 = private unnamed_addr constant [10 x i8] c": error: \00" +@.str11040 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11041 = private unnamed_addr constant [7 x i8] c"check[\00" +@.str11042 = private unnamed_addr constant [4 x i8] c"]: \00" +@.str11043 = private unnamed_addr constant [2 x i8] c":\00" +@.str11044 = private unnamed_addr constant [3 x i8] c": \00" +@.str11045 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11046 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11047 = private unnamed_addr constant [5 x i8] c"byte\00" +@.str11048 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11049 = private unnamed_addr constant [8 x i8] c"literal\00" +@.str11050 = private unnamed_addr constant [8 x i8] c" wants \00" +@.str11051 = private unnamed_addr constant [6 x i8] c" and \00" +@.str11052 = private unnamed_addr constant [32 x i8] c" does not fit one; it is a long\00" +@.str11053 = private unnamed_addr constant [14 x i8] c"slice-pointer\00" +@.str11054 = private unnamed_addr constant [30 x i8] c" wants a pointer and this is \00" +@.str11055 = private unnamed_addr constant [55 x i8] c": take the slice itself, or data_of(xs) in unsafe code\00" +@.str11056 = private unnamed_addr constant [14 x i8] c"pointer-slice\00" +@.str11057 = private unnamed_addr constant [8 x i8] c" wants \00" +@.str11058 = private unnamed_addr constant [93 x i8] c" and this is a pointer: a slice is made with words(n), floats(n) or new, not from an address\00" +@.str11059 = private unnamed_addr constant [8 x i8] c" wants \00" +@.str11060 = private unnamed_addr constant [14 x i8] c" and this is \00" +@.str11061 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17035: index out of range: \00" +@.str11062 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17035: index out of range: \00" +@.str11063 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17048: index out of range: \00" +@.str11064 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11065 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11066 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11067 = private unnamed_addr constant [6 x i8] c"float\00" +@.str11068 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11069 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11070 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11071 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11072 = private unnamed_addr constant [5 x i8] c"null\00" +@.str11073 = private unnamed_addr constant [6 x i8] c"fnref\00" +@.str11074 = private unnamed_addr constant [4 x i8] c"fn \00" +@.str11075 = private unnamed_addr constant [22 x i8] c": no function called \00" +@.str11076 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11077 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11078 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11079 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17103: index out of range: \00" +@.str11080 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17104: index out of range: \00" +@.str11081 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11082 = private unnamed_addr constant [5 x i8] c"port\00" +@.str11083 = private unnamed_addr constant [42 x i8] c" is a port: it is filled once with 'bind \00" +@.str11084 = private unnamed_addr constant [63 x i8] c" { ... }' where the program is put together, not made with new\00" +@.str11085 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17140: index out of range: \00" +@.str11086 = private unnamed_addr constant [7 x i8] c"field \00" +@.str11087 = private unnamed_addr constant [5 x i8] c" of \00" +@.str11088 = private unnamed_addr constant [6 x i8] c"field\00" +@.str11089 = private unnamed_addr constant [15 x i8] c" has no field \00" +@.str11090 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11091 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17158: index out of range: \00" +@.str11092 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17158: index out of range: \00" +@.str11093 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17159: index out of range: \00" +@.str11094 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17162: index out of range: \00" +@.str11095 = private unnamed_addr constant [19 x i8] c"an element of a []\00" +@.str11096 = private unnamed_addr constant [5 x i8] c"null\00" @.str11097 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11098 = private unnamed_addr constant [10 x i8] c"indexing \00" -@.str11099 = private unnamed_addr constant [6 x i8] c"index\00" -@.str11100 = private unnamed_addr constant [35 x i8] c"an index wants an int and this is \00" -@.str11101 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11102 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11103 = private unnamed_addr constant [6 x i8] c"words\00" -@.str11104 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11105 = private unnamed_addr constant [7 x i8] c"floats\00" -@.str11106 = private unnamed_addr constant [6 x i8] c"float\00" -@.str11107 = private unnamed_addr constant [8 x i8] c"doubles\00" -@.str11108 = private unnamed_addr constant [7 x i8] c"double\00" -@.str11109 = private unnamed_addr constant [7 x i8] c"fixeds\00" -@.str11110 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11111 = private unnamed_addr constant [9 x i8] c"pointers\00" -@.str11112 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11113 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11114 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11115 = private unnamed_addr constant [5 x i8] c"cond\00" -@.str11116 = private unnamed_addr constant [38 x i8] c"a condition wants a bool and this is \00" -@.str11117 = private unnamed_addr constant [4 x i8] c"and\00" -@.str11118 = private unnamed_addr constant [3 x i8] c"or\00" -@.str11119 = private unnamed_addr constant [3 x i8] c"&&\00" -@.str11120 = private unnamed_addr constant [3 x i8] c"||\00" -@.str11121 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11122 = private unnamed_addr constant [3 x i8] c"==\00" -@.str11123 = private unnamed_addr constant [3 x i8] c"!=\00" -@.str11124 = private unnamed_addr constant [2 x i8] c"<\00" -@.str11125 = private unnamed_addr constant [2 x i8] c">\00" -@.str11126 = private unnamed_addr constant [3 x i8] c"<=\00" -@.str11127 = private unnamed_addr constant [3 x i8] c">=\00" -@.str11128 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11129 = private unnamed_addr constant [2 x i8] c"+\00" -@.str11130 = private unnamed_addr constant [2 x i8] c"-\00" -@.str11131 = private unnamed_addr constant [2 x i8] c"*\00" -@.str11132 = private unnamed_addr constant [2 x i8] c"/\00" -@.str11133 = private unnamed_addr constant [2 x i8] c"%\00" -@.str11134 = private unnamed_addr constant [2 x i8] c"&\00" -@.str11135 = private unnamed_addr constant [2 x i8] c"|\00" -@.str11136 = private unnamed_addr constant [2 x i8] c"^\00" -@.str11137 = private unnamed_addr constant [3 x i8] c"<<\00" -@.str11138 = private unnamed_addr constant [3 x i8] c">>\00" -@.str11139 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11140 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11141 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11142 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11143 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11144 = private unnamed_addr constant [5 x i8] c"null\00" -@.str11145 = private unnamed_addr constant [5 x i8] c"null\00" -@.str11146 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11147 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11148 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11149 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11150 = private unnamed_addr constant [8 x i8] c"compare\00" -@.str11151 = private unnamed_addr constant [10 x i8] c" between \00" -@.str11152 = private unnamed_addr constant [6 x i8] c" and \00" -@.str11153 = private unnamed_addr constant [8 x i8] c"compare\00" -@.str11154 = private unnamed_addr constant [10 x i8] c" between \00" -@.str11155 = private unnamed_addr constant [6 x i8] c" and \00" -@.str11156 = private unnamed_addr constant [19 x i8] c" can never be true\00" -@.str11157 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11158 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11159 = private unnamed_addr constant [22 x i8] c" between a fixed and \00" -@.str11160 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11161 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11098 = private unnamed_addr constant [3 x i8] c"[]\00" +@.str11099 = private unnamed_addr constant [4 x i8] c"not\00" +@.str11100 = private unnamed_addr constant [2 x i8] c"!\00" +@.str11101 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11102 = private unnamed_addr constant [2 x i8] c"-\00" +@.str11103 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11104 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11105 = private unnamed_addr constant [12 x i8] c"- on a bool\00" +@.str11106 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11107 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11108 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11109 = private unnamed_addr constant [10 x i8] c"indexing \00" +@.str11110 = private unnamed_addr constant [6 x i8] c"index\00" +@.str11111 = private unnamed_addr constant [35 x i8] c"an index wants an int and this is \00" +@.str11112 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11113 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11114 = private unnamed_addr constant [6 x i8] c"words\00" +@.str11115 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11116 = private unnamed_addr constant [7 x i8] c"floats\00" +@.str11117 = private unnamed_addr constant [6 x i8] c"float\00" +@.str11118 = private unnamed_addr constant [8 x i8] c"doubles\00" +@.str11119 = private unnamed_addr constant [7 x i8] c"double\00" +@.str11120 = private unnamed_addr constant [7 x i8] c"fixeds\00" +@.str11121 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11122 = private unnamed_addr constant [9 x i8] c"pointers\00" +@.str11123 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11124 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11125 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11126 = private unnamed_addr constant [5 x i8] c"cond\00" +@.str11127 = private unnamed_addr constant [38 x i8] c"a condition wants a bool and this is \00" +@.str11128 = private unnamed_addr constant [4 x i8] c"and\00" +@.str11129 = private unnamed_addr constant [3 x i8] c"or\00" +@.str11130 = private unnamed_addr constant [3 x i8] c"&&\00" +@.str11131 = private unnamed_addr constant [3 x i8] c"||\00" +@.str11132 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11133 = private unnamed_addr constant [3 x i8] c"==\00" +@.str11134 = private unnamed_addr constant [3 x i8] c"!=\00" +@.str11135 = private unnamed_addr constant [2 x i8] c"<\00" +@.str11136 = private unnamed_addr constant [2 x i8] c">\00" +@.str11137 = private unnamed_addr constant [3 x i8] c"<=\00" +@.str11138 = private unnamed_addr constant [3 x i8] c">=\00" +@.str11139 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11140 = private unnamed_addr constant [2 x i8] c"+\00" +@.str11141 = private unnamed_addr constant [2 x i8] c"-\00" +@.str11142 = private unnamed_addr constant [2 x i8] c"*\00" +@.str11143 = private unnamed_addr constant [2 x i8] c"/\00" +@.str11144 = private unnamed_addr constant [2 x i8] c"%\00" +@.str11145 = private unnamed_addr constant [2 x i8] c"&\00" +@.str11146 = private unnamed_addr constant [2 x i8] c"|\00" +@.str11147 = private unnamed_addr constant [2 x i8] c"^\00" +@.str11148 = private unnamed_addr constant [3 x i8] c"<<\00" +@.str11149 = private unnamed_addr constant [3 x i8] c">>\00" +@.str11150 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11151 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11152 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11153 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11154 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11155 = private unnamed_addr constant [5 x i8] c"null\00" +@.str11156 = private unnamed_addr constant [5 x i8] c"null\00" +@.str11157 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11158 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11159 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11160 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11161 = private unnamed_addr constant [8 x i8] c"compare\00" @.str11162 = private unnamed_addr constant [10 x i8] c" between \00" -@.str11163 = private unnamed_addr constant [13 x i8] c" and a fixed\00" -@.str11164 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11165 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11166 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11167 = private unnamed_addr constant [2 x i8] c"+\00" -@.str11168 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11169 = private unnamed_addr constant [5 x i8] c"text\00" -@.str11170 = private unnamed_addr constant [5 x i8] c" of \00" -@.str11171 = private unnamed_addr constant [6 x i8] c" and \00" -@.str11172 = private unnamed_addr constant [54 x i8] c": text joins text only - write string(x) for a number\00" -@.str11173 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11174 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11175 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11176 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11177 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11178 = private unnamed_addr constant [11 x i8] c" on a bool\00" -@.str11179 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11180 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11163 = private unnamed_addr constant [6 x i8] c" and \00" +@.str11164 = private unnamed_addr constant [8 x i8] c"compare\00" +@.str11165 = private unnamed_addr constant [10 x i8] c" between \00" +@.str11166 = private unnamed_addr constant [6 x i8] c" and \00" +@.str11167 = private unnamed_addr constant [19 x i8] c" can never be true\00" +@.str11168 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11169 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11170 = private unnamed_addr constant [22 x i8] c" between a fixed and \00" +@.str11171 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11172 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11173 = private unnamed_addr constant [10 x i8] c" between \00" +@.str11174 = private unnamed_addr constant [13 x i8] c" and a fixed\00" +@.str11175 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11176 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11177 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11178 = private unnamed_addr constant [2 x i8] c"+\00" +@.str11179 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11180 = private unnamed_addr constant [5 x i8] c"text\00" @.str11181 = private unnamed_addr constant [5 x i8] c" of \00" @.str11182 = private unnamed_addr constant [6 x i8] c" and \00" -@.str11183 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11184 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11185 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11186 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11187 = private unnamed_addr constant [17 x i8] c" of a fixed and \00" -@.str11188 = private unnamed_addr constant [40 x i8] c": convert one with float(x) or fixed(x)\00" -@.str11189 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11190 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11191 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11192 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11193 = private unnamed_addr constant [5 x i8] c" of \00" -@.str11194 = private unnamed_addr constant [52 x i8] c" and a fixed: convert one with float(x) or fixed(x)\00" -@.str11195 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11196 = private unnamed_addr constant [7 x i8] c"double\00" -@.str11197 = private unnamed_addr constant [7 x i8] c"double\00" -@.str11198 = private unnamed_addr constant [7 x i8] c"double\00" -@.str11199 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11200 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11183 = private unnamed_addr constant [54 x i8] c": text joins text only - write string(x) for a number\00" +@.str11184 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11185 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11186 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11187 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11188 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11189 = private unnamed_addr constant [11 x i8] c" on a bool\00" +@.str11190 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11191 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11192 = private unnamed_addr constant [5 x i8] c" of \00" +@.str11193 = private unnamed_addr constant [6 x i8] c" and \00" +@.str11194 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11195 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11196 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11197 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11198 = private unnamed_addr constant [17 x i8] c" of a fixed and \00" +@.str11199 = private unnamed_addr constant [40 x i8] c": convert one with float(x) or fixed(x)\00" +@.str11200 = private unnamed_addr constant [2 x i8] c"?\00" @.str11201 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11202 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11203 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11204 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11205 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11206 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17287: index out of range: \00" -@.str11207 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17288: index out of range: \00" -@.str11208 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17289: index out of range: \00" -@.str11209 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11210 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17310: index out of range: \00" -@.str11211 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11212 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17326: index out of range: \00" -@.str11213 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17333: index out of range: \00" -@.str11214 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17336: index out of range: \00" -@.str11215 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17339: index out of range: \00" -@.str11216 = private unnamed_addr constant [10 x i8] c"argument \00" -@.str11217 = private unnamed_addr constant [5 x i8] c" of \00" -@.str11218 = private unnamed_addr constant [6 x i8] c"arity\00" -@.str11219 = private unnamed_addr constant [19 x i8] c" has no parameter \00" -@.str11220 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17345: index out of range: \00" -@.str11221 = private unnamed_addr constant [6 x i8] c"arity\00" -@.str11222 = private unnamed_addr constant [14 x i8] c"this call to \00" -@.str11223 = private unnamed_addr constant [13 x i8] c" leaves out \00" -@.str11224 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17345: index out of range: \00" -@.str11225 = private unnamed_addr constant [23 x i8] c", which has no default\00" -@.str11226 = private unnamed_addr constant [6 x i8] c"arity\00" -@.str11227 = private unnamed_addr constant [14 x i8] c"this call to \00" -@.str11228 = private unnamed_addr constant [13 x i8] c" leaves out \00" -@.str11229 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17350: index out of range: \00" -@.str11230 = private unnamed_addr constant [23 x i8] c", which has no default\00" -@.str11231 = private unnamed_addr constant [6 x i8] c"arity\00" -@.str11232 = private unnamed_addr constant [8 x i8] c" takes \00" -@.str11233 = private unnamed_addr constant [34 x i8] c" argument(s) and this call gives \00" -@.str11234 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17354: index out of range: \00" -@.str11235 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17355: index out of range: \00" -@.str11236 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17356: index out of range: \00" -@.str11237 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17356: index out of range: \00" -@.str11238 = private unnamed_addr constant [10 x i8] c"argument \00" -@.str11239 = private unnamed_addr constant [5 x i8] c" of \00" -@.str11240 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17363: index out of range: \00" -@.str11241 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17371: index out of range: \00" -@.str11242 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11243 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11244 = private unnamed_addr constant [6 x i8] c"float\00" -@.str11245 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11246 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11247 = private unnamed_addr constant [7 x i8] c"double\00" -@.str11248 = private unnamed_addr constant [7 x i8] c"as_int\00" -@.str11249 = private unnamed_addr constant [9 x i8] c"as_fixed\00" -@.str11250 = private unnamed_addr constant [4 x i8] c"len\00" -@.str11251 = private unnamed_addr constant [11 x i8] c"float_bits\00" -@.str11252 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11253 = private unnamed_addr constant [5 x i8] c"view\00" -@.str11254 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17390: index out of range: \00" -@.str11255 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11256 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17391: index out of range: \00" -@.str11257 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17391: index out of range: \00" -@.str11258 = private unnamed_addr constant [20 x i8] c"the start of a view\00" -@.str11259 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11260 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17392: index out of range: \00" -@.str11261 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17392: index out of range: \00" -@.str11262 = private unnamed_addr constant [21 x i8] c"the length of a view\00" -@.str11263 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str11264 = private unnamed_addr constant [33 x i8] c"view takes a slice, and this is \00" -@.str11265 = private unnamed_addr constant [6 x i8] c"bytes\00" -@.str11266 = private unnamed_addr constant [7 x i8] c"offset\00" -@.str11267 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11268 = private unnamed_addr constant [8 x i8] c"data_of\00" -@.str11269 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11270 = private unnamed_addr constant [6 x i8] c"words\00" -@.str11271 = private unnamed_addr constant [6 x i8] c"[]int\00" -@.str11272 = private unnamed_addr constant [7 x i8] c"buffer\00" -@.str11273 = private unnamed_addr constant [7 x i8] c"[]byte\00" -@.str11274 = private unnamed_addr constant [7 x i8] c"fixeds\00" -@.str11275 = private unnamed_addr constant [9 x i8] c"pointers\00" -@.str11276 = private unnamed_addr constant [3 x i8] c"[]\00" -@.str11277 = private unnamed_addr constant [7 x i8] c"floats\00" -@.str11278 = private unnamed_addr constant [8 x i8] c"doubles\00" -@.str11279 = private unnamed_addr constant [3 x i8] c"[]\00" -@.str11280 = private unnamed_addr constant [16 x i8] c"float_from_bits\00" -@.str11281 = private unnamed_addr constant [6 x i8] c"float\00" -@.str11282 = private unnamed_addr constant [6 x i8] c"print\00" -@.str11283 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11284 = private unnamed_addr constant [5 x i8] c"push\00" -@.str11285 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17429: index out of range: \00" -@.str11286 = private unnamed_addr constant [5 x i8] c"push\00" -@.str11287 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17430: index out of range: \00" -@.str11288 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17431: index out of range: \00" -@.str11289 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17432: index out of range: \00" -@.str11290 = private unnamed_addr constant [11 x i8] c"push onto \00" -@.str11291 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11292 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17442: index out of range: \00" -@.str11293 = private unnamed_addr constant [16 x i8] c"runtime/native/\00" -@.str11294 = private unnamed_addr constant [16 x i8] c"runtime/native/\00" -@.str11295 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17446: index out of range: \00" -@.str11296 = private unnamed_addr constant [7 x i8] c"shadow\00" -@.str11297 = private unnamed_addr constant [18 x i8] c" is the engine's \00" -@.str11298 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17450: index out of range: \00" -@.str11299 = private unnamed_addr constant [2 x i8] c".\00" -@.str11300 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17450: index out of range: \00" -@.str11301 = private unnamed_addr constant [29 x i8] c", which this program calls (\00" -@.str11302 = private unnamed_addr constant [2 x i8] c":\00" -@.str11303 = private unnamed_addr constant [78 x i8] c"), and every such call would reach this function instead; choose another name\00" -@.str11304 = private unnamed_addr constant [7 x i8] c"Memory\00" -@.str11305 = private unnamed_addr constant [8 x i8] c"Memory.\00" -@.str11306 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17462: index out of range: \00" -@.str11307 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17465: index out of range: \00" -@.str11308 = private unnamed_addr constant [2 x i8] c".\00" -@.str11309 = private unnamed_addr constant [15 x i8] c", a C function\00" -@.str11310 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17469: index out of range: \00" -@.str11311 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17469: index out of range: \00" -@.str11312 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17470: index out of range: \00" -@.str11313 = private unnamed_addr constant [2 x i8] c".\00" -@.str11314 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11315 = private unnamed_addr constant [2 x i8] c"_\00" -@.str11316 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11317 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11318 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11319 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17501: index out of range: \00" -@.str11320 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17501: index out of range: \00" -@.str11321 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11322 = private unnamed_addr constant [3 x i8] c"()\00" -@.str11323 = private unnamed_addr constant [16 x i8] c"the C function \00" -@.str11324 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11325 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17542: index out of range: \00" -@.str11326 = private unnamed_addr constant [7 x i8] c"field \00" -@.str11327 = private unnamed_addr constant [5 x i8] c" of \00" -@.str11328 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17566: index out of range: \00" +@.str11202 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11203 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11204 = private unnamed_addr constant [5 x i8] c" of \00" +@.str11205 = private unnamed_addr constant [52 x i8] c" and a fixed: convert one with float(x) or fixed(x)\00" +@.str11206 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11207 = private unnamed_addr constant [7 x i8] c"double\00" +@.str11208 = private unnamed_addr constant [7 x i8] c"double\00" +@.str11209 = private unnamed_addr constant [7 x i8] c"double\00" +@.str11210 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11211 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11212 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11213 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11214 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11215 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11216 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11217 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17301: index out of range: \00" +@.str11218 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17302: index out of range: \00" +@.str11219 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17303: index out of range: \00" +@.str11220 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11221 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17324: index out of range: \00" +@.str11222 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11223 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17340: index out of range: \00" +@.str11224 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17347: index out of range: \00" +@.str11225 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17350: index out of range: \00" +@.str11226 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17353: index out of range: \00" +@.str11227 = private unnamed_addr constant [10 x i8] c"argument \00" +@.str11228 = private unnamed_addr constant [5 x i8] c" of \00" +@.str11229 = private unnamed_addr constant [6 x i8] c"arity\00" +@.str11230 = private unnamed_addr constant [19 x i8] c" has no parameter \00" +@.str11231 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17359: index out of range: \00" +@.str11232 = private unnamed_addr constant [6 x i8] c"arity\00" +@.str11233 = private unnamed_addr constant [14 x i8] c"this call to \00" +@.str11234 = private unnamed_addr constant [13 x i8] c" leaves out \00" +@.str11235 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17359: index out of range: \00" +@.str11236 = private unnamed_addr constant [23 x i8] c", which has no default\00" +@.str11237 = private unnamed_addr constant [6 x i8] c"arity\00" +@.str11238 = private unnamed_addr constant [14 x i8] c"this call to \00" +@.str11239 = private unnamed_addr constant [13 x i8] c" leaves out \00" +@.str11240 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17364: index out of range: \00" +@.str11241 = private unnamed_addr constant [23 x i8] c", which has no default\00" +@.str11242 = private unnamed_addr constant [6 x i8] c"arity\00" +@.str11243 = private unnamed_addr constant [8 x i8] c" takes \00" +@.str11244 = private unnamed_addr constant [34 x i8] c" argument(s) and this call gives \00" +@.str11245 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17368: index out of range: \00" +@.str11246 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17369: index out of range: \00" +@.str11247 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17370: index out of range: \00" +@.str11248 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17370: index out of range: \00" +@.str11249 = private unnamed_addr constant [10 x i8] c"argument \00" +@.str11250 = private unnamed_addr constant [5 x i8] c" of \00" +@.str11251 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17377: index out of range: \00" +@.str11252 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17385: index out of range: \00" +@.str11253 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11254 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11255 = private unnamed_addr constant [6 x i8] c"float\00" +@.str11256 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11257 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11258 = private unnamed_addr constant [7 x i8] c"double\00" +@.str11259 = private unnamed_addr constant [7 x i8] c"as_int\00" +@.str11260 = private unnamed_addr constant [9 x i8] c"as_fixed\00" +@.str11261 = private unnamed_addr constant [4 x i8] c"len\00" +@.str11262 = private unnamed_addr constant [11 x i8] c"float_bits\00" +@.str11263 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11264 = private unnamed_addr constant [5 x i8] c"view\00" +@.str11265 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17404: index out of range: \00" +@.str11266 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11267 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17405: index out of range: \00" +@.str11268 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17405: index out of range: \00" +@.str11269 = private unnamed_addr constant [20 x i8] c"the start of a view\00" +@.str11270 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11271 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17406: index out of range: \00" +@.str11272 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17406: index out of range: \00" +@.str11273 = private unnamed_addr constant [21 x i8] c"the length of a view\00" +@.str11274 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11275 = private unnamed_addr constant [33 x i8] c"view takes a slice, and this is \00" +@.str11276 = private unnamed_addr constant [6 x i8] c"bytes\00" +@.str11277 = private unnamed_addr constant [7 x i8] c"offset\00" +@.str11278 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11279 = private unnamed_addr constant [8 x i8] c"data_of\00" +@.str11280 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11281 = private unnamed_addr constant [6 x i8] c"words\00" +@.str11282 = private unnamed_addr constant [6 x i8] c"[]int\00" +@.str11283 = private unnamed_addr constant [7 x i8] c"buffer\00" +@.str11284 = private unnamed_addr constant [7 x i8] c"[]byte\00" +@.str11285 = private unnamed_addr constant [7 x i8] c"fixeds\00" +@.str11286 = private unnamed_addr constant [9 x i8] c"pointers\00" +@.str11287 = private unnamed_addr constant [3 x i8] c"[]\00" +@.str11288 = private unnamed_addr constant [7 x i8] c"floats\00" +@.str11289 = private unnamed_addr constant [8 x i8] c"doubles\00" +@.str11290 = private unnamed_addr constant [3 x i8] c"[]\00" +@.str11291 = private unnamed_addr constant [16 x i8] c"float_from_bits\00" +@.str11292 = private unnamed_addr constant [6 x i8] c"float\00" +@.str11293 = private unnamed_addr constant [6 x i8] c"print\00" +@.str11294 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11295 = private unnamed_addr constant [5 x i8] c"push\00" +@.str11296 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17443: index out of range: \00" +@.str11297 = private unnamed_addr constant [5 x i8] c"push\00" +@.str11298 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17444: index out of range: \00" +@.str11299 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17445: index out of range: \00" +@.str11300 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17446: index out of range: \00" +@.str11301 = private unnamed_addr constant [11 x i8] c"push onto \00" +@.str11302 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11303 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17456: index out of range: \00" +@.str11304 = private unnamed_addr constant [16 x i8] c"runtime/native/\00" +@.str11305 = private unnamed_addr constant [16 x i8] c"runtime/native/\00" +@.str11306 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17460: index out of range: \00" +@.str11307 = private unnamed_addr constant [7 x i8] c"shadow\00" +@.str11308 = private unnamed_addr constant [18 x i8] c" is the engine's \00" +@.str11309 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17464: index out of range: \00" +@.str11310 = private unnamed_addr constant [2 x i8] c".\00" +@.str11311 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17464: index out of range: \00" +@.str11312 = private unnamed_addr constant [29 x i8] c", which this program calls (\00" +@.str11313 = private unnamed_addr constant [2 x i8] c":\00" +@.str11314 = private unnamed_addr constant [78 x i8] c"), and every such call would reach this function instead; choose another name\00" +@.str11315 = private unnamed_addr constant [7 x i8] c"Memory\00" +@.str11316 = private unnamed_addr constant [8 x i8] c"Memory.\00" +@.str11317 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17476: index out of range: \00" +@.str11318 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17479: index out of range: \00" +@.str11319 = private unnamed_addr constant [2 x i8] c".\00" +@.str11320 = private unnamed_addr constant [15 x i8] c", a C function\00" +@.str11321 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17483: index out of range: \00" +@.str11322 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17483: index out of range: \00" +@.str11323 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17484: index out of range: \00" +@.str11324 = private unnamed_addr constant [2 x i8] c".\00" +@.str11325 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11326 = private unnamed_addr constant [2 x i8] c"_\00" +@.str11327 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11328 = private unnamed_addr constant [2 x i8] c"?\00" @.str11329 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11330 = private unnamed_addr constant [6 x i8] c"state\00" -@.str11331 = private unnamed_addr constant [6 x i8] c"state\00" -@.str11332 = private unnamed_addr constant [34 x i8] c"an entry point takes states, and \00" -@.str11333 = private unnamed_addr constant [3 x i8] c": \00" -@.str11334 = private unnamed_addr constant [12 x i8] c" is not one\00" -@.str11335 = private unnamed_addr constant [16 x i8] c"this assignment\00" -@.str11336 = private unnamed_addr constant [2 x i8] c"=\00" -@.str11337 = private unnamed_addr constant [16 x i8] c"this assignment\00" -@.str11338 = private unnamed_addr constant [7 x i8] c"field \00" -@.str11339 = private unnamed_addr constant [2 x i8] c"=\00" -@.str11340 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17617: index out of range: \00" -@.str11341 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17621: index out of range: \00" -@.str11342 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17626: index out of range: \00" -@.str11343 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17626: index out of range: \00" -@.str11344 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11345 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11346 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11347 = private unnamed_addr constant [11 x i8] c"the result\00" -@.str11348 = private unnamed_addr constant [19 x i8] c"a machine's become\00" -@.str11349 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11350 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17694: index out of range: \00" -@.str11351 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17695: index out of range: \00" -@.str11352 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17698: index out of range: \00" -@.str11353 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17712: index out of range: \00" -@.str11354 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17712: index out of range: \00" -@.str11355 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17712: index out of range: \00" -@.str11356 = private unnamed_addr constant [6 x i8] c"arity\00" -@.str11357 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17713: index out of range: \00" -@.str11358 = private unnamed_addr constant [23 x i8] c" names two parameters \00" -@.str11359 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17713: index out of range: \00" -@.str11360 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17724: index out of range: \00" -@.str11361 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17726: index out of range: \00" -@.str11362 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11363 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11364 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17750: index out of range: \00" -@.str11365 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17750: index out of range: \00" -@.str11366 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11367 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17765: index out of range: \00" -@.str11368 = private unnamed_addr constant [7 x i8] c"shadow\00" -@.str11369 = private unnamed_addr constant [102 x i8] c" is a built-in of the compiler, and a call to it would never reach this function; choose another name\00" -@.str11370 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17771: index out of range: \00" -@.str11371 = private unnamed_addr constant [7 x i8] c"shadow\00" -@.str11372 = private unnamed_addr constant [44 x i8] c" is also a function of the engine runtime (\00" -@.str11373 = private unnamed_addr constant [23 x i8] c"); choose another name\00" -@.str11374 = private unnamed_addr constant [1 x i8] c"\00" -@.str11375 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17781: index out of range: \00" -@.str11376 = private unnamed_addr constant [1 x i8] c"\00" -@.str11377 = private unnamed_addr constant [7 x i8] c"shadow\00" -@.str11378 = private unnamed_addr constant [19 x i8] c" is the runtime's \00" -@.str11379 = private unnamed_addr constant [3 x i8] c" (\00" -@.str11380 = private unnamed_addr constant [33 x i8] c"); choose another name for this \00" -@.str11381 = private unnamed_addr constant [5 x i8] c"enum\00" -@.str11382 = private unnamed_addr constant [6 x i8] c"state\00" -@.str11383 = private unnamed_addr constant [9 x i8] c"property\00" -@.str11384 = private unnamed_addr constant [7 x i8] c"record\00" -@.str11385 = private unnamed_addr constant [6 x i8] c"event\00" -@.str11386 = private unnamed_addr constant [1 x i8] c"\00" -@.str11387 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17802: index out of range: \00" -@.str11388 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17803: index out of range: \00" -@.str11389 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17819: index out of range: \00" -@.str11390 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17824: index out of range: \00" -@.str11391 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17836: index out of range: \00" -@.str11392 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17864: index out of range: \00" -@.str11393 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17876: index out of range: \00" -@.str11394 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17877: index out of range: \00" -@.str11395 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17884: index out of range: \00" -@.str11396 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17885: index out of range: \00" -@.str11397 = private unnamed_addr constant [16 x i8] c" type error(s)\0A\00" -@.str11398 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17915: index out of range: \00" -@.str11399 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17915: index out of range: \00" -@.str11400 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17926: index out of range: \00" -@.str11401 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17941: index out of range: \00" -@.str11402 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17950: index out of range: \00" -@.str11403 = private unnamed_addr constant [3 x i8] c"[]\00" -@.str11404 = private unnamed_addr constant [4 x i8] c"fn(\00" -@.str11405 = private unnamed_addr constant [2 x i8] c",\00" -@.str11406 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17958: index out of range: \00" -@.str11407 = private unnamed_addr constant [4 x i8] c")->\00" -@.str11408 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17964: index out of range: \00" -@.str11409 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17965: index out of range: \00" -@.str11410 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17969: index out of range: \00" -@.str11411 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17972: index out of range: \00" -@.str11412 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17996: index out of range: \00" -@.str11413 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18004: index out of range: \00" -@.str11414 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18005: index out of range: \00" -@.str11415 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18007: index out of range: \00" -@.str11416 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18011: index out of range: \00" -@.str11417 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18012: index out of range: \00" -@.str11418 = private unnamed_addr constant [8 x i8] c"generic\00" -@.str11419 = private unnamed_addr constant [8 x i8] c" takes \00" -@.str11420 = private unnamed_addr constant [23 x i8] c" type argument(s) and \00" -@.str11421 = private unnamed_addr constant [8 x i8] c" gives \00" -@.str11422 = private unnamed_addr constant [5 x i8] c"null\00" -@.str11423 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18027: index out of range: \00" -@.str11424 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18027: index out of range: \00" -@.str11425 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18039: index out of range: \00" -@.str11426 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18039: index out of range: \00" -@.str11427 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18047: index out of range: \00" -@.str11428 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18047: index out of range: \00" -@.str11429 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18048: index out of range: \00" -@.str11430 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18049: index out of range: \00" -@.str11431 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18052: index out of range: \00" -@.str11432 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18052: index out of range: \00" -@.str11433 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11434 = private unnamed_addr constant [3 x i8] c"[]\00" -@.str11435 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18063: index out of range: \00" -@.str11436 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18064: index out of range: \00" -@.str11437 = private unnamed_addr constant [2 x i8] c"<\00" -@.str11438 = private unnamed_addr constant [3 x i8] c", \00" -@.str11439 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18068: index out of range: \00" -@.str11440 = private unnamed_addr constant [2 x i8] c">\00" -@.str11441 = private unnamed_addr constant [2 x i8] c"$\00" -@.str11442 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18083: index out of range: \00" -@.str11443 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18109: index out of range: \00" -@.str11444 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18112: index out of range: \00" -@.str11445 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18114: index out of range: \00" -@.str11446 = private unnamed_addr constant [6 x i8] c"arity\00" -@.str11447 = private unnamed_addr constant [8 x i8] c" takes \00" -@.str11448 = private unnamed_addr constant [34 x i8] c" argument(s) and this call gives \00" -@.str11449 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11450 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18140: index out of range: \00" -@.str11451 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18140: index out of range: \00" -@.str11452 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18142: index out of range: \00" -@.str11453 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18142: index out of range: \00" -@.str11454 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18142: index out of range: \00" -@.str11455 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18148: index out of range: \00" -@.str11456 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18148: index out of range: \00" -@.str11457 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18148: index out of range: \00" -@.str11458 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18148: index out of range: \00" -@.str11459 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18153: index out of range: \00" -@.str11460 = private unnamed_addr constant [8 x i8] c"generic\00" -@.str11461 = private unnamed_addr constant [18 x i8] c"cannot tell what \00" +@.str11330 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17515: index out of range: \00" +@.str11331 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17515: index out of range: \00" +@.str11332 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11333 = private unnamed_addr constant [3 x i8] c"()\00" +@.str11334 = private unnamed_addr constant [16 x i8] c"the C function \00" +@.str11335 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11336 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17556: index out of range: \00" +@.str11337 = private unnamed_addr constant [7 x i8] c"field \00" +@.str11338 = private unnamed_addr constant [5 x i8] c" of \00" +@.str11339 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17580: index out of range: \00" +@.str11340 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11341 = private unnamed_addr constant [6 x i8] c"state\00" +@.str11342 = private unnamed_addr constant [6 x i8] c"state\00" +@.str11343 = private unnamed_addr constant [34 x i8] c"an entry point takes states, and \00" +@.str11344 = private unnamed_addr constant [3 x i8] c": \00" +@.str11345 = private unnamed_addr constant [12 x i8] c" is not one\00" +@.str11346 = private unnamed_addr constant [16 x i8] c"this assignment\00" +@.str11347 = private unnamed_addr constant [2 x i8] c"=\00" +@.str11348 = private unnamed_addr constant [16 x i8] c"this assignment\00" +@.str11349 = private unnamed_addr constant [7 x i8] c"field \00" +@.str11350 = private unnamed_addr constant [2 x i8] c"=\00" +@.str11351 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17631: index out of range: \00" +@.str11352 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17635: index out of range: \00" +@.str11353 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17640: index out of range: \00" +@.str11354 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17640: index out of range: \00" +@.str11355 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11356 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11357 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11358 = private unnamed_addr constant [11 x i8] c"the result\00" +@.str11359 = private unnamed_addr constant [19 x i8] c"a machine's become\00" +@.str11360 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11361 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17708: index out of range: \00" +@.str11362 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17709: index out of range: \00" +@.str11363 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17712: index out of range: \00" +@.str11364 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17726: index out of range: \00" +@.str11365 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17726: index out of range: \00" +@.str11366 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17726: index out of range: \00" +@.str11367 = private unnamed_addr constant [6 x i8] c"arity\00" +@.str11368 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17727: index out of range: \00" +@.str11369 = private unnamed_addr constant [23 x i8] c" names two parameters \00" +@.str11370 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17727: index out of range: \00" +@.str11371 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17738: index out of range: \00" +@.str11372 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17740: index out of range: \00" +@.str11373 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11374 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11375 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17764: index out of range: \00" +@.str11376 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17764: index out of range: \00" +@.str11377 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11378 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17779: index out of range: \00" +@.str11379 = private unnamed_addr constant [7 x i8] c"shadow\00" +@.str11380 = private unnamed_addr constant [102 x i8] c" is a built-in of the compiler, and a call to it would never reach this function; choose another name\00" +@.str11381 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17785: index out of range: \00" +@.str11382 = private unnamed_addr constant [7 x i8] c"shadow\00" +@.str11383 = private unnamed_addr constant [44 x i8] c" is also a function of the engine runtime (\00" +@.str11384 = private unnamed_addr constant [23 x i8] c"); choose another name\00" +@.str11385 = private unnamed_addr constant [1 x i8] c"\00" +@.str11386 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17795: index out of range: \00" +@.str11387 = private unnamed_addr constant [1 x i8] c"\00" +@.str11388 = private unnamed_addr constant [7 x i8] c"shadow\00" +@.str11389 = private unnamed_addr constant [19 x i8] c" is the runtime's \00" +@.str11390 = private unnamed_addr constant [3 x i8] c" (\00" +@.str11391 = private unnamed_addr constant [33 x i8] c"); choose another name for this \00" +@.str11392 = private unnamed_addr constant [5 x i8] c"enum\00" +@.str11393 = private unnamed_addr constant [6 x i8] c"state\00" +@.str11394 = private unnamed_addr constant [9 x i8] c"property\00" +@.str11395 = private unnamed_addr constant [7 x i8] c"record\00" +@.str11396 = private unnamed_addr constant [6 x i8] c"event\00" +@.str11397 = private unnamed_addr constant [1 x i8] c"\00" +@.str11398 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17816: index out of range: \00" +@.str11399 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17817: index out of range: \00" +@.str11400 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17833: index out of range: \00" +@.str11401 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17838: index out of range: \00" +@.str11402 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17850: index out of range: \00" +@.str11403 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17878: index out of range: \00" +@.str11404 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17890: index out of range: \00" +@.str11405 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17891: index out of range: \00" +@.str11406 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17898: index out of range: \00" +@.str11407 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17899: index out of range: \00" +@.str11408 = private unnamed_addr constant [16 x i8] c" type error(s)\0A\00" +@.str11409 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17929: index out of range: \00" +@.str11410 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17929: index out of range: \00" +@.str11411 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17940: index out of range: \00" +@.str11412 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17955: index out of range: \00" +@.str11413 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17964: index out of range: \00" +@.str11414 = private unnamed_addr constant [3 x i8] c"[]\00" +@.str11415 = private unnamed_addr constant [4 x i8] c"fn(\00" +@.str11416 = private unnamed_addr constant [2 x i8] c",\00" +@.str11417 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17972: index out of range: \00" +@.str11418 = private unnamed_addr constant [4 x i8] c")->\00" +@.str11419 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17978: index out of range: \00" +@.str11420 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17979: index out of range: \00" +@.str11421 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17983: index out of range: \00" +@.str11422 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17986: index out of range: \00" +@.str11423 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18010: index out of range: \00" +@.str11424 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18018: index out of range: \00" +@.str11425 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18019: index out of range: \00" +@.str11426 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18021: index out of range: \00" +@.str11427 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18025: index out of range: \00" +@.str11428 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18026: index out of range: \00" +@.str11429 = private unnamed_addr constant [8 x i8] c"generic\00" +@.str11430 = private unnamed_addr constant [8 x i8] c" takes \00" +@.str11431 = private unnamed_addr constant [23 x i8] c" type argument(s) and \00" +@.str11432 = private unnamed_addr constant [8 x i8] c" gives \00" +@.str11433 = private unnamed_addr constant [5 x i8] c"null\00" +@.str11434 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18041: index out of range: \00" +@.str11435 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18041: index out of range: \00" +@.str11436 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18053: index out of range: \00" +@.str11437 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18053: index out of range: \00" +@.str11438 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18061: index out of range: \00" +@.str11439 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18061: index out of range: \00" +@.str11440 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18062: index out of range: \00" +@.str11441 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18063: index out of range: \00" +@.str11442 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18066: index out of range: \00" +@.str11443 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18066: index out of range: \00" +@.str11444 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11445 = private unnamed_addr constant [3 x i8] c"[]\00" +@.str11446 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18077: index out of range: \00" +@.str11447 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18078: index out of range: \00" +@.str11448 = private unnamed_addr constant [2 x i8] c"<\00" +@.str11449 = private unnamed_addr constant [3 x i8] c", \00" +@.str11450 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18082: index out of range: \00" +@.str11451 = private unnamed_addr constant [2 x i8] c">\00" +@.str11452 = private unnamed_addr constant [2 x i8] c"$\00" +@.str11453 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18097: index out of range: \00" +@.str11454 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18123: index out of range: \00" +@.str11455 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18126: index out of range: \00" +@.str11456 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18128: index out of range: \00" +@.str11457 = private unnamed_addr constant [6 x i8] c"arity\00" +@.str11458 = private unnamed_addr constant [8 x i8] c" takes \00" +@.str11459 = private unnamed_addr constant [34 x i8] c" argument(s) and this call gives \00" +@.str11460 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11461 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18154: index out of range: \00" @.str11462 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18154: index out of range: \00" -@.str11463 = private unnamed_addr constant [21 x i8] c" is in this call to \00" -@.str11464 = private unnamed_addr constant [88 x i8] c": pass it an argument that says, or write the call where its result has a declared type\00" -@.str11465 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11466 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18166: index out of range: \00" -@.str11467 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18166: index out of range: \00" -@.str11468 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18166: index out of range: \00" -@.str11469 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18166: index out of range: \00" -@.str11470 = private unnamed_addr constant [10 x i8] c"argument \00" -@.str11471 = private unnamed_addr constant [5 x i8] c" of \00" -@.str11472 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18177: index out of range: \00" -@.str11473 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18182: index out of range: \00" -@.str11474 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18182: index out of range: \00" -@.str11475 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18182: index out of range: \00" -@.str11476 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18192: index out of range: \00" -@.str11477 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18196: index out of range: \00" -@.str11478 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18202: index out of range: \00" -@.str11479 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18225: index out of range: \00" -@.str11480 = private unnamed_addr constant [7 x i8] c"Vector\00" -@.str11481 = private unnamed_addr constant [6 x i8] c"IVec2\00" -@.str11482 = private unnamed_addr constant [5 x i8] c"Rect\00" -@.str11483 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18278: index out of range: \00" -@.str11484 = private unnamed_addr constant [5 x i8] c"type\00" -@.str11485 = private unnamed_addr constant [20 x i8] c": there is no type \00" -@.str11486 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18293: index out of range: \00" -@.str11487 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18297: index out of range: \00" -@.str11488 = private unnamed_addr constant [14 x i8] c"'s parameter \00" -@.str11489 = private unnamed_addr constant [10 x i8] c"'s result\00" -@.str11490 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18306: index out of range: \00" -@.str11491 = private unnamed_addr constant [2 x i8] c".\00" -@.str11492 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11493 = private unnamed_addr constant [6 x i8] c"bytes\00" -@.str11494 = private unnamed_addr constant [6 x i8] c"bytes\00" -@.str11495 = private unnamed_addr constant [8 x i8] c"data_of\00" -@.str11496 = private unnamed_addr constant [5 x i8] c"free\00" -@.str11497 = private unnamed_addr constant [7 x i8] c"resize\00" -@.str11498 = private unnamed_addr constant [10 x i8] c"file_read\00" -@.str11499 = private unnamed_addr constant [11 x i8] c"file_write\00" -@.str11500 = private unnamed_addr constant [7 x i8] c"unsafe\00" -@.str11501 = private unnamed_addr constant [83 x i8] c" is raw memory: it belongs inside unsafe { }, and a game reaches it through an API\00" -@.str11502 = private unnamed_addr constant [13 x i8] c"unsafe-block\00" -@.str11503 = private unnamed_addr constant [95 x i8] c"unsafe is for the runtime and packages; this file may use it only when the build says --unsafe\00" -@.str11504 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18356: index out of range: \00" -@.str11505 = private unnamed_addr constant [9 x i8] c" store \00" -@.str11506 = private unnamed_addr constant [2 x i8] c" \00" -@.str11507 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11508 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11509 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11510 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11511 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18382: index out of range: \00" -@.str11512 = private unnamed_addr constant [29 x i8] c"cannot assign to immutable '\00" -@.str11513 = private unnamed_addr constant [41 x i8] c"' (declared with let; use var) \E2\80\94 line \00" -@.str11514 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18384: index out of range: \00" -@.str11515 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18384: index out of range: \00" -@.str11516 = private unnamed_addr constant [19 x i8] c"assign to unknown \00" -@.str11517 = private unnamed_addr constant [4 x i8] c"@g_\00" -@.str11518 = private unnamed_addr constant [22 x i8] c"bad assignment target\00" -@.str11519 = private unnamed_addr constant [2 x i8] c"=\00" -@.str11520 = private unnamed_addr constant [6 x i8] c"load \00" -@.str11521 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11522 = private unnamed_addr constant [3 x i8] c"i8\00" -@.str11523 = private unnamed_addr constant [11 x i8] c"trunc i32 \00" -@.str11524 = private unnamed_addr constant [7 x i8] c" to i8\00" -@.str11525 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str11526 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str11527 = private unnamed_addr constant [5 x i8] c"then\00" -@.str11528 = private unnamed_addr constant [5 x i8] c"else\00" -@.str11529 = private unnamed_addr constant [6 x i8] c"ifend\00" -@.str11530 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11531 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11532 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11533 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11534 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11535 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11536 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11537 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11538 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11539 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11540 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11541 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11542 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11543 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11544 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11545 = private unnamed_addr constant [6 x i8] c"wcond\00" -@.str11546 = private unnamed_addr constant [6 x i8] c"wbody\00" -@.str11547 = private unnamed_addr constant [5 x i8] c"wend\00" -@.str11548 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11549 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11550 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11551 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str11552 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str11553 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11554 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11555 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11556 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11557 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11558 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11559 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11560 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11561 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str11562 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str11563 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11564 = private unnamed_addr constant [6 x i8] c"fcond\00" -@.str11565 = private unnamed_addr constant [6 x i8] c"fbody\00" -@.str11566 = private unnamed_addr constant [6 x i8] c"fcont\00" -@.str11567 = private unnamed_addr constant [5 x i8] c"fend\00" -@.str11568 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11569 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11570 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11571 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11572 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" -@.str11573 = private unnamed_addr constant [3 x i8] c", \00" -@.str11574 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11575 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11576 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11577 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11578 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11463 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18156: index out of range: \00" +@.str11464 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18156: index out of range: \00" +@.str11465 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18156: index out of range: \00" +@.str11466 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18162: index out of range: \00" +@.str11467 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18162: index out of range: \00" +@.str11468 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18162: index out of range: \00" +@.str11469 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18162: index out of range: \00" +@.str11470 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18167: index out of range: \00" +@.str11471 = private unnamed_addr constant [8 x i8] c"generic\00" +@.str11472 = private unnamed_addr constant [18 x i8] c"cannot tell what \00" +@.str11473 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18168: index out of range: \00" +@.str11474 = private unnamed_addr constant [21 x i8] c" is in this call to \00" +@.str11475 = private unnamed_addr constant [88 x i8] c": pass it an argument that says, or write the call where its result has a declared type\00" +@.str11476 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11477 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18180: index out of range: \00" +@.str11478 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18180: index out of range: \00" +@.str11479 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18180: index out of range: \00" +@.str11480 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18180: index out of range: \00" +@.str11481 = private unnamed_addr constant [10 x i8] c"argument \00" +@.str11482 = private unnamed_addr constant [5 x i8] c" of \00" +@.str11483 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18191: index out of range: \00" +@.str11484 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18196: index out of range: \00" +@.str11485 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18196: index out of range: \00" +@.str11486 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18196: index out of range: \00" +@.str11487 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18206: index out of range: \00" +@.str11488 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18210: index out of range: \00" +@.str11489 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18216: index out of range: \00" +@.str11490 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18239: index out of range: \00" +@.str11491 = private unnamed_addr constant [7 x i8] c"Vector\00" +@.str11492 = private unnamed_addr constant [6 x i8] c"IVec2\00" +@.str11493 = private unnamed_addr constant [5 x i8] c"Rect\00" +@.str11494 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18292: index out of range: \00" +@.str11495 = private unnamed_addr constant [5 x i8] c"type\00" +@.str11496 = private unnamed_addr constant [20 x i8] c": there is no type \00" +@.str11497 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18307: index out of range: \00" +@.str11498 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18311: index out of range: \00" +@.str11499 = private unnamed_addr constant [14 x i8] c"'s parameter \00" +@.str11500 = private unnamed_addr constant [10 x i8] c"'s result\00" +@.str11501 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18320: index out of range: \00" +@.str11502 = private unnamed_addr constant [2 x i8] c".\00" +@.str11503 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11504 = private unnamed_addr constant [6 x i8] c"bytes\00" +@.str11505 = private unnamed_addr constant [6 x i8] c"bytes\00" +@.str11506 = private unnamed_addr constant [8 x i8] c"data_of\00" +@.str11507 = private unnamed_addr constant [5 x i8] c"free\00" +@.str11508 = private unnamed_addr constant [7 x i8] c"resize\00" +@.str11509 = private unnamed_addr constant [10 x i8] c"file_read\00" +@.str11510 = private unnamed_addr constant [11 x i8] c"file_write\00" +@.str11511 = private unnamed_addr constant [7 x i8] c"unsafe\00" +@.str11512 = private unnamed_addr constant [83 x i8] c" is raw memory: it belongs inside unsafe { }, and a game reaches it through an API\00" +@.str11513 = private unnamed_addr constant [13 x i8] c"unsafe-block\00" +@.str11514 = private unnamed_addr constant [95 x i8] c"unsafe is for the runtime and packages; this file may use it only when the build says --unsafe\00" +@.str11515 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18370: index out of range: \00" +@.str11516 = private unnamed_addr constant [9 x i8] c" store \00" +@.str11517 = private unnamed_addr constant [2 x i8] c" \00" +@.str11518 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11519 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11520 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11521 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11522 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18396: index out of range: \00" +@.str11523 = private unnamed_addr constant [29 x i8] c"cannot assign to immutable '\00" +@.str11524 = private unnamed_addr constant [41 x i8] c"' (declared with let; use var) \E2\80\94 line \00" +@.str11525 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18398: index out of range: \00" +@.str11526 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18398: index out of range: \00" +@.str11527 = private unnamed_addr constant [19 x i8] c"assign to unknown \00" +@.str11528 = private unnamed_addr constant [4 x i8] c"@g_\00" +@.str11529 = private unnamed_addr constant [22 x i8] c"bad assignment target\00" +@.str11530 = private unnamed_addr constant [2 x i8] c"=\00" +@.str11531 = private unnamed_addr constant [6 x i8] c"load \00" +@.str11532 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11533 = private unnamed_addr constant [3 x i8] c"i8\00" +@.str11534 = private unnamed_addr constant [11 x i8] c"trunc i32 \00" +@.str11535 = private unnamed_addr constant [7 x i8] c" to i8\00" +@.str11536 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str11537 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str11538 = private unnamed_addr constant [5 x i8] c"then\00" +@.str11539 = private unnamed_addr constant [5 x i8] c"else\00" +@.str11540 = private unnamed_addr constant [6 x i8] c"ifend\00" +@.str11541 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11542 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11543 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11544 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11545 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11546 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11547 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11548 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11549 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11550 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11551 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11552 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11553 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11554 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11555 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11556 = private unnamed_addr constant [6 x i8] c"wcond\00" +@.str11557 = private unnamed_addr constant [6 x i8] c"wbody\00" +@.str11558 = private unnamed_addr constant [5 x i8] c"wend\00" +@.str11559 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11560 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11561 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11562 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str11563 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str11564 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11565 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11566 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11567 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11568 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11569 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11570 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11571 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11572 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str11573 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str11574 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11575 = private unnamed_addr constant [6 x i8] c"fcond\00" +@.str11576 = private unnamed_addr constant [6 x i8] c"fbody\00" +@.str11577 = private unnamed_addr constant [6 x i8] c"fcont\00" +@.str11578 = private unnamed_addr constant [5 x i8] c"fend\00" @.str11579 = private unnamed_addr constant [13 x i8] c" br label %\00" @.str11580 = private unnamed_addr constant [2 x i8] c"\0A\00" @.str11581 = private unnamed_addr constant [3 x i8] c":\0A\00" @.str11582 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11583 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str11584 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str11585 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str11586 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11587 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11588 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11589 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11590 = private unnamed_addr constant [54 x i8] c"a function that returns nothing cannot return a value\00" -@.str11591 = private unnamed_addr constant [8 x i8] c"%retval\00" -@.str11592 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11593 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11594 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18492: index out of range: \00" -@.str11595 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18509: index out of range: \00" -@.str11596 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18521: index out of range: \00" -@.str11597 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18521: index out of range: \00" -@.str11598 = private unnamed_addr constant [2 x i8] c"_\00" -@.str11599 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18531: index out of range: \00" -@.str11600 = private unnamed_addr constant [8 x i8] c"match: \00" -@.str11601 = private unnamed_addr constant [8 x i8] c" binds \00" -@.str11602 = private unnamed_addr constant [22 x i8] c" name(s) but carries \00" -@.str11603 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18537: index out of range: \00" -@.str11604 = private unnamed_addr constant [8 x i8] c"match: \00" -@.str11605 = private unnamed_addr constant [10 x i8] c" payload \00" -@.str11606 = private unnamed_addr constant [24 x i8] c" must be a binding name\00" -@.str11607 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18538: index out of range: \00" -@.str11608 = private unnamed_addr constant [3 x i8] c" \00" -@.str11609 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" -@.str11610 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str11611 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11612 = private unnamed_addr constant [6 x i8] c"load \00" -@.str11613 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11614 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18544: index out of range: \00" -@.str11615 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11616 = private unnamed_addr constant [5 x i8] c"mend\00" -@.str11617 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18560: index out of range: \00" -@.str11618 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11619 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18568: index out of range: \00" -@.str11620 = private unnamed_addr constant [8 x i8] c"match: \00" -@.str11621 = private unnamed_addr constant [27 x i8] c" is not a variant of enum \00" -@.str11622 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str11623 = private unnamed_addr constant [3 x i8] c", \00" -@.str11624 = private unnamed_addr constant [7 x i8] c"or i1 \00" -@.str11625 = private unnamed_addr constant [3 x i8] c", \00" -@.str11626 = private unnamed_addr constant [6 x i8] c"mbody\00" -@.str11627 = private unnamed_addr constant [5 x i8] c"marm\00" -@.str11628 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11629 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11630 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11631 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11632 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11633 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11634 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11635 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11636 = private unnamed_addr constant [10 x i8] c"match on \00" -@.str11637 = private unnamed_addr constant [29 x i8] c" is not exhaustive: variant \00" -@.str11638 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18596: index out of range: \00" -@.str11639 = private unnamed_addr constant [34 x i8] c" is unhandled (add it or a _ arm)\00" -@.str11640 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11641 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11642 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11643 = private unnamed_addr constant [5 x i8] c"mend\00" -@.str11644 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18613: index out of range: \00" -@.str11645 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11646 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18620: index out of range: \00" -@.str11647 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str11648 = private unnamed_addr constant [3 x i8] c", \00" -@.str11649 = private unnamed_addr constant [7 x i8] c"or i1 \00" -@.str11650 = private unnamed_addr constant [3 x i8] c", \00" -@.str11651 = private unnamed_addr constant [6 x i8] c"mbody\00" -@.str11652 = private unnamed_addr constant [5 x i8] c"marm\00" -@.str11653 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11654 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11655 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11656 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11657 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11658 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11659 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11660 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11661 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11662 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11663 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11664 = private unnamed_addr constant [21 x i8] c"emit: unknown event \00" -@.str11665 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18652: index out of range: \00" -@.str11666 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18655: index out of range: \00" -@.str11667 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18655: index out of range: \00" -@.str11668 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11669 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str11670 = private unnamed_addr constant [5 x i8] c"null\00" -@.str11671 = private unnamed_addr constant [3 x i8] c" \00" -@.str11672 = private unnamed_addr constant [53 x i8] c" = getelementptr inbounds i8, ptr @L_sendbuf, i32 0\0A\00" -@.str11673 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str11674 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11675 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11676 = private unnamed_addr constant [3 x i8] c" \00" -@.str11677 = private unnamed_addr constant [51 x i8] c" = getelementptr inbounds i8, ptr @L_sendbuf, i32 \00" -@.str11678 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11679 = private unnamed_addr constant [9 x i8] c" store \00" -@.str11680 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18674: index out of range: \00" -@.str11681 = private unnamed_addr constant [2 x i8] c" \00" -@.str11682 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18674: index out of range: \00" -@.str11683 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11684 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11685 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18675: index out of range: \00" -@.str11686 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11687 = private unnamed_addr constant [10 x i8] c"toclients\00" -@.str11688 = private unnamed_addr constant [3 x i8] c"-1\00" -@.str11689 = private unnamed_addr constant [9 x i8] c"net_send\00" -@.str11690 = private unnamed_addr constant [14 x i8] c" call void @\00" -@.str11691 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str11692 = private unnamed_addr constant [23 x i8] c", ptr @L_sendbuf, i32 \00" -@.str11693 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str11694 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11695 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11696 = private unnamed_addr constant [3 x i8] c", \00" -@.str11697 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18690: index out of range: \00" -@.str11698 = private unnamed_addr constant [2 x i8] c" \00" -@.str11699 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18690: index out of range: \00" -@.str11700 = private unnamed_addr constant [3 x i8] c" \00" -@.str11701 = private unnamed_addr constant [17 x i8] c" = call i32 @ev_\00" -@.str11702 = private unnamed_addr constant [2 x i8] c"(\00" -@.str11703 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str11704 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11705 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str11706 = private unnamed_addr constant [2 x i8] c"(\00" -@.str11707 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str11708 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11709 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11710 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11711 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18725: index out of range: \00" -@.str11712 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11713 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11714 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18726: index out of range: \00" -@.str11715 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11716 = private unnamed_addr constant [44 x i8] c"cancel outside a cancellable event listener\00" -@.str11717 = private unnamed_addr constant [20 x i8] c" store i32 1, ptr \00" -@.str11718 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11719 = private unnamed_addr constant [22 x i8] c"cannot emit statement\00" -@.str11720 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18747: index out of range: \00" -@.str11721 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18747: index out of range: \00" -@.str11722 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18762: index out of range: \00" -@.str11723 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18771: index out of range: \00" -@.str11724 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18785: index out of range: \00" -@.str11725 = private unnamed_addr constant [9 x i8] c"Occluder\00" -@.str11726 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18794: index out of range: \00" -@.str11727 = private unnamed_addr constant [36 x i8] c"@L_running = internal global i32 1\0A\00" -@.str11728 = private unnamed_addr constant [32 x i8] c"@L_key = internal global i32 0\0A\00" -@.str11729 = private unnamed_addr constant [34 x i8] c"@L_frame = internal global i32 0\0A\00" -@.str11730 = private unnamed_addr constant [34 x i8] c"@L_scene = internal global i32 0\0A\00" -@.str11731 = private unnamed_addr constant [33 x i8] c"@L_entc = internal global i32 0\0A\00" -@.str11732 = private unnamed_addr constant [29 x i8] c"@L_alive = internal global [\00" -@.str11733 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" -@.str11734 = private unnamed_addr constant [28 x i8] c"@L_kind = internal global [\00" -@.str11735 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" -@.str11736 = private unnamed_addr constant [32 x i8] c"@L_freelist = internal global [\00" -@.str11737 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" -@.str11738 = private unnamed_addr constant [34 x i8] c"@L_freen = internal global i32 0\0A\00" -@.str11739 = private unnamed_addr constant [33 x i8] c"@L_role = internal global i32 1\0A\00" -@.str11740 = private unnamed_addr constant [36 x i8] c"@L_localid = internal global i32 0\0A\00" -@.str11741 = private unnamed_addr constant [33 x i8] c"@L_owner_arr = internal global [\00" -@.str11742 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" -@.str11743 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18826: index out of range: \00" -@.str11744 = private unnamed_addr constant [4 x i8] c"@S_\00" -@.str11745 = private unnamed_addr constant [21 x i8] c" = internal global [\00" -@.str11746 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str11747 = private unnamed_addr constant [19 x i8] c"] zeroinitializer\0A\00" -@.str11748 = private unnamed_addr constant [4 x i8] c"@H_\00" -@.str11749 = private unnamed_addr constant [21 x i8] c" = internal global [\00" -@.str11750 = private unnamed_addr constant [24 x i8] c" x i8] zeroinitializer\0A\00" -@.str11751 = private unnamed_addr constant [5 x i8] c"@ME_\00" -@.str11752 = private unnamed_addr constant [26 x i8] c" = internal global i32 1\0A\00" -@.str11753 = private unnamed_addr constant [5 x i8] c"@HE_\00" -@.str11754 = private unnamed_addr constant [26 x i8] c" = internal global i32 1\0A\00" -@.str11755 = private unnamed_addr constant [5 x i8] c"@LE_\00" -@.str11756 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18841: index out of range: \00" -@.str11757 = private unnamed_addr constant [26 x i8] c" = internal global i32 1\0A\00" -@.str11758 = private unnamed_addr constant [39 x i8] c"define void @L_reset(i32 %e) {\0Aentry:\0A\00" -@.str11759 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18850: index out of range: \00" -@.str11760 = private unnamed_addr constant [3 x i8] c"%h\00" -@.str11761 = private unnamed_addr constant [3 x i8] c" \00" -@.str11762 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11763 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str11764 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18852: index out of range: \00" -@.str11765 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %e\0A\00" -@.str11766 = private unnamed_addr constant [19 x i8] c" store i8 0, ptr \00" -@.str11767 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11768 = private unnamed_addr constant [32 x i8] c" %k = getelementptr inbounds [\00" -@.str11769 = private unnamed_addr constant [37 x i8] c" x i32], ptr @L_kind, i32 0, i32 %e\0A\00" -@.str11770 = private unnamed_addr constant [23 x i8] c" store i32 0, ptr %k\0A\00" -@.str11771 = private unnamed_addr constant [33 x i8] c" %ow = getelementptr inbounds [\00" -@.str11772 = private unnamed_addr constant [42 x i8] c" x i32], ptr @L_owner_arr, i32 0, i32 %e\0A\00" -@.str11773 = private unnamed_addr constant [25 x i8] c" store i32 -1, ptr %ow\0A\00" -@.str11774 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str11775 = private unnamed_addr constant [32 x i8] c"define i32 @L_alloc() {\0Aentry:\0A\00" -@.str11776 = private unnamed_addr constant [32 x i8] c" %fn = load i32, ptr @L_freen\0A\00" -@.str11777 = private unnamed_addr constant [30 x i8] c" %has = icmp sgt i32 %fn, 0\0A\00" -@.str11778 = private unnamed_addr constant [42 x i8] c" br i1 %has, label %reuse, label %fresh\0A\00" -@.str11779 = private unnamed_addr constant [8 x i8] c"reuse:\0A\00" -@.str11780 = private unnamed_addr constant [25 x i8] c" %fn1 = sub i32 %fn, 1\0A\00" -@.str11781 = private unnamed_addr constant [32 x i8] c" store i32 %fn1, ptr @L_freen\0A\00" -@.str11782 = private unnamed_addr constant [33 x i8] c" %fp = getelementptr inbounds [\00" -@.str11783 = private unnamed_addr constant [43 x i8] c" x i32], ptr @L_freelist, i32 0, i32 %fn1\0A\00" -@.str11784 = private unnamed_addr constant [27 x i8] c" %re = load i32, ptr %fp\0A\00" -@.str11785 = private unnamed_addr constant [18 x i8] c" br label %done\0A\00" -@.str11786 = private unnamed_addr constant [8 x i8] c"fresh:\0A\00" -@.str11787 = private unnamed_addr constant [31 x i8] c" %ec = load i32, ptr @L_entc\0A\00" -@.str11788 = private unnamed_addr constant [25 x i8] c" %ec1 = add i32 %ec, 1\0A\00" -@.str11789 = private unnamed_addr constant [31 x i8] c" store i32 %ec1, ptr @L_entc\0A\00" -@.str11790 = private unnamed_addr constant [18 x i8] c" br label %done\0A\00" -@.str11791 = private unnamed_addr constant [7 x i8] c"done:\0A\00" -@.str11792 = private unnamed_addr constant [49 x i8] c" %e = phi i32 [ %re, %reuse ], [ %ec, %fresh ]\0A\00" -@.str11793 = private unnamed_addr constant [30 x i8] c" call void @L_reset(i32 %e)\0A\00" -@.str11794 = private unnamed_addr constant [33 x i8] c" %ap = getelementptr inbounds [\00" -@.str11795 = private unnamed_addr constant [38 x i8] c" x i32], ptr @L_alive, i32 0, i32 %e\0A\00" -@.str11796 = private unnamed_addr constant [24 x i8] c" store i32 1, ptr %ap\0A\00" -@.str11797 = private unnamed_addr constant [17 x i8] c" ret i32 %e\0A}\0A\0A\00" -@.str11798 = private unnamed_addr constant [45 x i8] c"define void @L_free_entity(i32 %e) {\0Aentry:\0A\00" -@.str11799 = private unnamed_addr constant [33 x i8] c" %ap = getelementptr inbounds [\00" -@.str11800 = private unnamed_addr constant [38 x i8] c" x i32], ptr @L_alive, i32 0, i32 %e\0A\00" -@.str11801 = private unnamed_addr constant [24 x i8] c" store i32 0, ptr %ap\0A\00" -@.str11802 = private unnamed_addr constant [30 x i8] c" call void @L_reset(i32 %e)\0A\00" -@.str11803 = private unnamed_addr constant [32 x i8] c" %fn = load i32, ptr @L_freen\0A\00" -@.str11804 = private unnamed_addr constant [33 x i8] c" %fp = getelementptr inbounds [\00" -@.str11805 = private unnamed_addr constant [42 x i8] c" x i32], ptr @L_freelist, i32 0, i32 %fn\0A\00" -@.str11806 = private unnamed_addr constant [25 x i8] c" store i32 %e, ptr %fp\0A\00" -@.str11807 = private unnamed_addr constant [25 x i8] c" %fn1 = add i32 %fn, 1\0A\00" -@.str11808 = private unnamed_addr constant [32 x i8] c" store i32 %fn1, ptr @L_freen\0A\00" -@.str11809 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str11810 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18906: index out of range: \00" -@.str11811 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18906: index out of range: \00" -@.str11812 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str11813 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str11814 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11815 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18914: index out of range: \00" -@.str11816 = private unnamed_addr constant [6 x i8] c"qcond\00" -@.str11817 = private unnamed_addr constant [6 x i8] c"qbody\00" -@.str11818 = private unnamed_addr constant [6 x i8] c"qnext\00" -@.str11819 = private unnamed_addr constant [5 x i8] c"qend\00" -@.str11820 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11821 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11822 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11823 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11824 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_entc\00" -@.str11825 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" -@.str11826 = private unnamed_addr constant [3 x i8] c", \00" -@.str11827 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11828 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11829 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11830 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11831 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11832 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11833 = private unnamed_addr constant [3 x i8] c" \00" -@.str11834 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11835 = private unnamed_addr constant [35 x i8] c" x i32], ptr @L_alive, i32 0, i32 \00" -@.str11836 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11837 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11838 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str11839 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str11840 = private unnamed_addr constant [3 x i8] c"qa\00" -@.str11841 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11842 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11843 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11844 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11845 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11846 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18938: index out of range: \00" -@.str11847 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11848 = private unnamed_addr constant [3 x i8] c" \00" -@.str11849 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11850 = private unnamed_addr constant [34 x i8] c" x i32], ptr @L_kind, i32 0, i32 \00" -@.str11851 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11852 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11853 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str11854 = private unnamed_addr constant [3 x i8] c", \00" -@.str11855 = private unnamed_addr constant [19 x i8] c"load i32, ptr @ME_\00" -@.str11856 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str11857 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str11858 = private unnamed_addr constant [8 x i8] c"and i1 \00" -@.str11859 = private unnamed_addr constant [3 x i8] c", \00" -@.str11860 = private unnamed_addr constant [3 x i8] c" \00" -@.str11861 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11862 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str11863 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str11864 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11865 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" -@.str11866 = private unnamed_addr constant [12 x i8] c"icmp ne i8 \00" -@.str11867 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str11868 = private unnamed_addr constant [3 x i8] c"qt\00" -@.str11869 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11870 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11871 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11872 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11873 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11874 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18964: index out of range: \00" -@.str11875 = private unnamed_addr constant [3 x i8] c" \00" -@.str11876 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11877 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str11878 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str11879 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str11880 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11881 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str11882 = private unnamed_addr constant [13 x i8] c" store ptr \00" -@.str11883 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11884 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11885 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18971: index out of range: \00" -@.str11886 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str11887 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str11888 = private unnamed_addr constant [3 x i8] c"qw\00" -@.str11889 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11890 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11891 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11892 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11893 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11894 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11895 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11896 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11897 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11898 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str11899 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str11900 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str11901 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11902 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11903 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11904 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str11905 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str11906 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11907 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11908 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19009: index out of range: \00" -@.str11909 = private unnamed_addr constant [25 x i8] c"spawn: unknown property \00" -@.str11910 = private unnamed_addr constant [3 x i8] c" \00" -@.str11911 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11912 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str11913 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str11914 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11915 = private unnamed_addr constant [19 x i8] c" store i8 1, ptr \00" -@.str11916 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11917 = private unnamed_addr constant [3 x i8] c" \00" -@.str11918 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11919 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str11920 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str11921 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str11922 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11923 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19026: index out of range: \00" -@.str11924 = private unnamed_addr constant [3 x i8] c" \00" -@.str11925 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" -@.str11926 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11927 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str11928 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11929 = private unnamed_addr constant [9 x i8] c" store \00" -@.str11930 = private unnamed_addr constant [2 x i8] c" \00" -@.str11931 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11932 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11933 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19039: index out of range: \00" -@.str11934 = private unnamed_addr constant [3 x i8] c" \00" -@.str11935 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" -@.str11936 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11937 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str11938 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11939 = private unnamed_addr constant [9 x i8] c" store \00" -@.str11940 = private unnamed_addr constant [2 x i8] c" \00" -@.str11941 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11942 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11943 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str11944 = private unnamed_addr constant [13 x i8] c" store ptr \00" -@.str11945 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11583 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" +@.str11584 = private unnamed_addr constant [3 x i8] c", \00" +@.str11585 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11586 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11587 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11588 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11589 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11590 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11591 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11592 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11593 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str11594 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str11595 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str11596 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str11597 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11598 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11599 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11600 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11601 = private unnamed_addr constant [54 x i8] c"a function that returns nothing cannot return a value\00" +@.str11602 = private unnamed_addr constant [8 x i8] c"%retval\00" +@.str11603 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11604 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11605 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18506: index out of range: \00" +@.str11606 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18523: index out of range: \00" +@.str11607 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18535: index out of range: \00" +@.str11608 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18535: index out of range: \00" +@.str11609 = private unnamed_addr constant [2 x i8] c"_\00" +@.str11610 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18545: index out of range: \00" +@.str11611 = private unnamed_addr constant [8 x i8] c"match: \00" +@.str11612 = private unnamed_addr constant [8 x i8] c" binds \00" +@.str11613 = private unnamed_addr constant [22 x i8] c" name(s) but carries \00" +@.str11614 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18551: index out of range: \00" +@.str11615 = private unnamed_addr constant [8 x i8] c"match: \00" +@.str11616 = private unnamed_addr constant [10 x i8] c" payload \00" +@.str11617 = private unnamed_addr constant [24 x i8] c" must be a binding name\00" +@.str11618 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18552: index out of range: \00" +@.str11619 = private unnamed_addr constant [3 x i8] c" \00" +@.str11620 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str11621 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str11622 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11623 = private unnamed_addr constant [6 x i8] c"load \00" +@.str11624 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11625 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18558: index out of range: \00" +@.str11626 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str11627 = private unnamed_addr constant [5 x i8] c"mend\00" +@.str11628 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18574: index out of range: \00" +@.str11629 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11630 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18582: index out of range: \00" +@.str11631 = private unnamed_addr constant [8 x i8] c"match: \00" +@.str11632 = private unnamed_addr constant [27 x i8] c" is not a variant of enum \00" +@.str11633 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str11634 = private unnamed_addr constant [3 x i8] c", \00" +@.str11635 = private unnamed_addr constant [7 x i8] c"or i1 \00" +@.str11636 = private unnamed_addr constant [3 x i8] c", \00" +@.str11637 = private unnamed_addr constant [6 x i8] c"mbody\00" +@.str11638 = private unnamed_addr constant [5 x i8] c"marm\00" +@.str11639 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11640 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11641 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11642 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11643 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11644 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11645 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11646 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11647 = private unnamed_addr constant [10 x i8] c"match on \00" +@.str11648 = private unnamed_addr constant [29 x i8] c" is not exhaustive: variant \00" +@.str11649 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18610: index out of range: \00" +@.str11650 = private unnamed_addr constant [34 x i8] c" is unhandled (add it or a _ arm)\00" +@.str11651 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11652 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11653 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11654 = private unnamed_addr constant [5 x i8] c"mend\00" +@.str11655 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18627: index out of range: \00" +@.str11656 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11657 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18634: index out of range: \00" +@.str11658 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str11659 = private unnamed_addr constant [3 x i8] c", \00" +@.str11660 = private unnamed_addr constant [7 x i8] c"or i1 \00" +@.str11661 = private unnamed_addr constant [3 x i8] c", \00" +@.str11662 = private unnamed_addr constant [6 x i8] c"mbody\00" +@.str11663 = private unnamed_addr constant [5 x i8] c"marm\00" +@.str11664 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11665 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11666 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11667 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11668 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11669 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11670 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11671 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11672 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11673 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11674 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11675 = private unnamed_addr constant [21 x i8] c"emit: unknown event \00" +@.str11676 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18666: index out of range: \00" +@.str11677 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18669: index out of range: \00" +@.str11678 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18669: index out of range: \00" +@.str11679 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11680 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str11681 = private unnamed_addr constant [5 x i8] c"null\00" +@.str11682 = private unnamed_addr constant [3 x i8] c" \00" +@.str11683 = private unnamed_addr constant [53 x i8] c" = getelementptr inbounds i8, ptr @L_sendbuf, i32 0\0A\00" +@.str11684 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str11685 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11686 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11687 = private unnamed_addr constant [3 x i8] c" \00" +@.str11688 = private unnamed_addr constant [51 x i8] c" = getelementptr inbounds i8, ptr @L_sendbuf, i32 \00" +@.str11689 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11690 = private unnamed_addr constant [9 x i8] c" store \00" +@.str11691 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18688: index out of range: \00" +@.str11692 = private unnamed_addr constant [2 x i8] c" \00" +@.str11693 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18688: index out of range: \00" +@.str11694 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11695 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11696 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18689: index out of range: \00" +@.str11697 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11698 = private unnamed_addr constant [10 x i8] c"toclients\00" +@.str11699 = private unnamed_addr constant [3 x i8] c"-1\00" +@.str11700 = private unnamed_addr constant [9 x i8] c"net_send\00" +@.str11701 = private unnamed_addr constant [14 x i8] c" call void @\00" +@.str11702 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str11703 = private unnamed_addr constant [23 x i8] c", ptr @L_sendbuf, i32 \00" +@.str11704 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str11705 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11706 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11707 = private unnamed_addr constant [3 x i8] c", \00" +@.str11708 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18704: index out of range: \00" +@.str11709 = private unnamed_addr constant [2 x i8] c" \00" +@.str11710 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18704: index out of range: \00" +@.str11711 = private unnamed_addr constant [3 x i8] c" \00" +@.str11712 = private unnamed_addr constant [17 x i8] c" = call i32 @ev_\00" +@.str11713 = private unnamed_addr constant [2 x i8] c"(\00" +@.str11714 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str11715 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11716 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str11717 = private unnamed_addr constant [2 x i8] c"(\00" +@.str11718 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str11719 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11720 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11721 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11722 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18739: index out of range: \00" +@.str11723 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11724 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11725 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18740: index out of range: \00" +@.str11726 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11727 = private unnamed_addr constant [44 x i8] c"cancel outside a cancellable event listener\00" +@.str11728 = private unnamed_addr constant [20 x i8] c" store i32 1, ptr \00" +@.str11729 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11730 = private unnamed_addr constant [22 x i8] c"cannot emit statement\00" +@.str11731 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18761: index out of range: \00" +@.str11732 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18761: index out of range: \00" +@.str11733 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18776: index out of range: \00" +@.str11734 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18785: index out of range: \00" +@.str11735 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18799: index out of range: \00" +@.str11736 = private unnamed_addr constant [9 x i8] c"Occluder\00" +@.str11737 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18808: index out of range: \00" +@.str11738 = private unnamed_addr constant [36 x i8] c"@L_running = internal global i32 1\0A\00" +@.str11739 = private unnamed_addr constant [32 x i8] c"@L_key = internal global i32 0\0A\00" +@.str11740 = private unnamed_addr constant [34 x i8] c"@L_frame = internal global i32 0\0A\00" +@.str11741 = private unnamed_addr constant [34 x i8] c"@L_scene = internal global i32 0\0A\00" +@.str11742 = private unnamed_addr constant [33 x i8] c"@L_entc = internal global i32 0\0A\00" +@.str11743 = private unnamed_addr constant [32 x i8] c"@L_cap = internal global i32 0\0A\00" +@.str11744 = private unnamed_addr constant [36 x i8] c"@L_snapcap = internal global i32 0\0A\00" +@.str11745 = private unnamed_addr constant [37 x i8] c"@L_alive = internal global ptr null\0A\00" +@.str11746 = private unnamed_addr constant [36 x i8] c"@L_kind = internal global ptr null\0A\00" +@.str11747 = private unnamed_addr constant [40 x i8] c"@L_freelist = internal global ptr null\0A\00" +@.str11748 = private unnamed_addr constant [34 x i8] c"@L_freen = internal global i32 0\0A\00" +@.str11749 = private unnamed_addr constant [33 x i8] c"@L_role = internal global i32 1\0A\00" +@.str11750 = private unnamed_addr constant [36 x i8] c"@L_localid = internal global i32 0\0A\00" +@.str11751 = private unnamed_addr constant [41 x i8] c"@L_owner_arr = internal global ptr null\0A\00" +@.str11752 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18843: index out of range: \00" +@.str11753 = private unnamed_addr constant [4 x i8] c"@S_\00" +@.str11754 = private unnamed_addr constant [29 x i8] c" = internal global ptr null\0A\00" +@.str11755 = private unnamed_addr constant [4 x i8] c"@H_\00" +@.str11756 = private unnamed_addr constant [29 x i8] c" = internal global ptr null\0A\00" +@.str11757 = private unnamed_addr constant [5 x i8] c"@ME_\00" +@.str11758 = private unnamed_addr constant [26 x i8] c" = internal global i32 1\0A\00" +@.str11759 = private unnamed_addr constant [5 x i8] c"@HE_\00" +@.str11760 = private unnamed_addr constant [26 x i8] c" = internal global i32 1\0A\00" +@.str11761 = private unnamed_addr constant [5 x i8] c"@LE_\00" +@.str11762 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18858: index out of range: \00" +@.str11763 = private unnamed_addr constant [26 x i8] c" = internal global i32 1\0A\00" +@.str11764 = private unnamed_addr constant [39 x i8] c"define void @L_reset(i32 %e) {\0Aentry:\0A\00" +@.str11765 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18868: index out of range: \00" +@.str11766 = private unnamed_addr constant [3 x i8] c"%h\00" +@.str11767 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str11768 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18870: index out of range: \00" +@.str11769 = private unnamed_addr constant [3 x i8] c" \00" +@.str11770 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str11771 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str11772 = private unnamed_addr constant [19 x i8] c" store i8 0, ptr \00" +@.str11773 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11774 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str11775 = private unnamed_addr constant [40 x i8] c" %k = getelementptr inbounds i32, ptr \00" +@.str11776 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str11777 = private unnamed_addr constant [23 x i8] c" store i32 0, ptr %k\0A\00" +@.str11778 = private unnamed_addr constant [12 x i8] c"L_owner_arr\00" +@.str11779 = private unnamed_addr constant [41 x i8] c" %ow = getelementptr inbounds i32, ptr \00" +@.str11780 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str11781 = private unnamed_addr constant [25 x i8] c" store i32 -1, ptr %ow\0A\00" +@.str11782 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str11783 = private unnamed_addr constant [32 x i8] c"define i32 @L_alloc() {\0Aentry:\0A\00" +@.str11784 = private unnamed_addr constant [32 x i8] c" %fn = load i32, ptr @L_freen\0A\00" +@.str11785 = private unnamed_addr constant [30 x i8] c" %has = icmp sgt i32 %fn, 0\0A\00" +@.str11786 = private unnamed_addr constant [42 x i8] c" br i1 %has, label %reuse, label %fresh\0A\00" +@.str11787 = private unnamed_addr constant [8 x i8] c"reuse:\0A\00" +@.str11788 = private unnamed_addr constant [25 x i8] c" %fn1 = sub i32 %fn, 1\0A\00" +@.str11789 = private unnamed_addr constant [32 x i8] c" store i32 %fn1, ptr @L_freen\0A\00" +@.str11790 = private unnamed_addr constant [11 x i8] c"L_freelist\00" +@.str11791 = private unnamed_addr constant [41 x i8] c" %fp = getelementptr inbounds i32, ptr \00" +@.str11792 = private unnamed_addr constant [12 x i8] c", i32 %fn1\0A\00" +@.str11793 = private unnamed_addr constant [27 x i8] c" %re = load i32, ptr %fp\0A\00" +@.str11794 = private unnamed_addr constant [18 x i8] c" br label %done\0A\00" +@.str11795 = private unnamed_addr constant [8 x i8] c"fresh:\0A\00" +@.str11796 = private unnamed_addr constant [31 x i8] c" %ec = load i32, ptr @L_entc\0A\00" +@.str11797 = private unnamed_addr constant [25 x i8] c" %ec1 = add i32 %ec, 1\0A\00" +@.str11798 = private unnamed_addr constant [31 x i8] c" call void @L_grow(i32 %ec1)\0A\00" +@.str11799 = private unnamed_addr constant [31 x i8] c" store i32 %ec1, ptr @L_entc\0A\00" +@.str11800 = private unnamed_addr constant [18 x i8] c" br label %done\0A\00" +@.str11801 = private unnamed_addr constant [7 x i8] c"done:\0A\00" +@.str11802 = private unnamed_addr constant [49 x i8] c" %e = phi i32 [ %re, %reuse ], [ %ec, %fresh ]\0A\00" +@.str11803 = private unnamed_addr constant [30 x i8] c" call void @L_reset(i32 %e)\0A\00" +@.str11804 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str11805 = private unnamed_addr constant [41 x i8] c" %ap = getelementptr inbounds i32, ptr \00" +@.str11806 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str11807 = private unnamed_addr constant [24 x i8] c" store i32 1, ptr %ap\0A\00" +@.str11808 = private unnamed_addr constant [17 x i8] c" ret i32 %e\0A}\0A\0A\00" +@.str11809 = private unnamed_addr constant [45 x i8] c"define void @L_free_entity(i32 %e) {\0Aentry:\0A\00" +@.str11810 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str11811 = private unnamed_addr constant [41 x i8] c" %ap = getelementptr inbounds i32, ptr \00" +@.str11812 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str11813 = private unnamed_addr constant [24 x i8] c" store i32 0, ptr %ap\0A\00" +@.str11814 = private unnamed_addr constant [30 x i8] c" call void @L_reset(i32 %e)\0A\00" +@.str11815 = private unnamed_addr constant [32 x i8] c" %fn = load i32, ptr @L_freen\0A\00" +@.str11816 = private unnamed_addr constant [11 x i8] c"L_freelist\00" +@.str11817 = private unnamed_addr constant [41 x i8] c" %fp = getelementptr inbounds i32, ptr \00" +@.str11818 = private unnamed_addr constant [11 x i8] c", i32 %fn\0A\00" +@.str11819 = private unnamed_addr constant [25 x i8] c" store i32 %e, ptr %fp\0A\00" +@.str11820 = private unnamed_addr constant [25 x i8] c" %fn1 = add i32 %fn, 1\0A\00" +@.str11821 = private unnamed_addr constant [32 x i8] c" store i32 %fn1, ptr @L_freen\0A\00" +@.str11822 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str11823 = private unnamed_addr constant [6 x i8] c"%ecsb\00" +@.str11824 = private unnamed_addr constant [3 x i8] c" \00" +@.str11825 = private unnamed_addr constant [19 x i8] c" = load ptr, ptr @\00" +@.str11826 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11827 = private unnamed_addr constant [71 x i8] c"define void @L_grow(i32 %need) {\0Aentry:\0A %cap = load i32, ptr @L_cap\0A\00" +@.str11828 = private unnamed_addr constant [78 x i8] c" %ok = icmp sle i32 %need, %cap\0A br i1 %ok, label %done, label %grow\0Agrow:\0A\00" +@.str11829 = private unnamed_addr constant [59 x i8] c" %c0 = icmp eq i32 %cap, 0\0A %start = select i1 %c0, i32 \00" +@.str11830 = private unnamed_addr constant [28 x i8] c", i32 %cap\0A br label %dbl\0A\00" +@.str11831 = private unnamed_addr constant [93 x i8] c"dbl:\0A %nc = phi i32 [ %start, %grow ], [ %nc2, %dbl2 ]\0A %enough = icmp sge i32 %nc, %need\0A\00" +@.str11832 = private unnamed_addr constant [90 x i8] c" br i1 %enough, label %apply, label %dbl2\0Adbl2:\0A %nc2 = mul i32 %nc, 2\0A br label %dbl\0A\00" +@.str11833 = private unnamed_addr constant [70 x i8] c"apply:\0A %cap64 = sext i32 %cap to i64\0A %nc64 = sext i32 %nc to i64\0A\00" +@.str11834 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str11835 = private unnamed_addr constant [2 x i8] c"4\00" +@.str11836 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str11837 = private unnamed_addr constant [2 x i8] c"4\00" +@.str11838 = private unnamed_addr constant [11 x i8] c"L_freelist\00" +@.str11839 = private unnamed_addr constant [2 x i8] c"4\00" +@.str11840 = private unnamed_addr constant [12 x i8] c"L_owner_arr\00" +@.str11841 = private unnamed_addr constant [2 x i8] c"4\00" +@.str11842 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18951: index out of range: \00" +@.str11843 = private unnamed_addr constant [4 x i8] c"%gs\00" +@.str11844 = private unnamed_addr constant [3 x i8] c" \00" +@.str11845 = private unnamed_addr constant [37 x i8] c" = ptrtoint ptr getelementptr (%Cmp_\00" +@.str11846 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18953: index out of range: \00" +@.str11847 = private unnamed_addr constant [27 x i8] c", ptr null, i32 1) to i64\0A\00" +@.str11848 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str11849 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18954: index out of range: \00" +@.str11850 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str11851 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18955: index out of range: \00" +@.str11852 = private unnamed_addr constant [2 x i8] c"1\00" +@.str11853 = private unnamed_addr constant [71 x i8] c"fin:\0A store i32 %nc, ptr @L_cap\0A br label %done\0Adone:\0A ret void\0A}\0A\0A\00" +@.str11854 = private unnamed_addr constant [6 x i8] c" %gp\00" +@.str11855 = private unnamed_addr constant [19 x i8] c" = load ptr, ptr @\00" +@.str11856 = private unnamed_addr constant [7 x i8] c"\0A %gb\00" +@.str11857 = private unnamed_addr constant [19 x i8] c" = mul i64 %nc64, \00" +@.str11858 = private unnamed_addr constant [7 x i8] c"\0A %gr\00" +@.str11859 = private unnamed_addr constant [15 x i8] c" = add i64 %gb\00" +@.str11860 = private unnamed_addr constant [5 x i8] c", 8\0A\00" +@.str11861 = private unnamed_addr constant [6 x i8] c" %gn\00" +@.str11862 = private unnamed_addr constant [29 x i8] c" = call ptr @realloc(ptr %gp\00" +@.str11863 = private unnamed_addr constant [10 x i8] c", i64 %gr\00" +@.str11864 = private unnamed_addr constant [8 x i8] c")\0A %go\00" +@.str11865 = private unnamed_addr constant [20 x i8] c" = mul i64 %cap64, \00" +@.str11866 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11867 = private unnamed_addr constant [6 x i8] c" %gt\00" +@.str11868 = private unnamed_addr constant [29 x i8] c" = getelementptr i8, ptr %gn\00" +@.str11869 = private unnamed_addr constant [10 x i8] c", i64 %go\00" +@.str11870 = private unnamed_addr constant [7 x i8] c"\0A %gz\00" +@.str11871 = private unnamed_addr constant [15 x i8] c" = sub i64 %gr\00" +@.str11872 = private unnamed_addr constant [6 x i8] c", %go\00" +@.str11873 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11874 = private unnamed_addr constant [6 x i8] c" %gm\00" +@.str11875 = private unnamed_addr constant [28 x i8] c" = call ptr @memset(ptr %gt\00" +@.str11876 = private unnamed_addr constant [17 x i8] c", i32 0, i64 %gz\00" +@.str11877 = private unnamed_addr constant [18 x i8] c")\0A store ptr %gn\00" +@.str11878 = private unnamed_addr constant [8 x i8] c", ptr @\00" +@.str11879 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11880 = private unnamed_addr constant [105 x i8] c" br label %dynh\0Adynh:\0A %di = phi i32 [ 0, %apply ], [ %di1, %dynb ]\0A %dcn = load i32, ptr @dyn_count\0A\00" +@.str11881 = private unnamed_addr constant [81 x i8] c" %dmore = icmp slt i32 %di, %dcn\0A br i1 %dmore, label %dynb, label %fin\0Adynb:\0A\00" +@.str11882 = private unnamed_addr constant [99 x i8] c" %dfp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %di\0A %dnf = load i32, ptr %dfp\0A\00" +@.str11883 = private unnamed_addr constant [59 x i8] c" %dnf4 = mul i32 %dnf, 4\0A %desz = sext i32 %dnf4 to i64\0A\00" +@.str11884 = private unnamed_addr constant [5 x i8] c"dynS\00" +@.str11885 = private unnamed_addr constant [6 x i8] c"%desz\00" +@.str11886 = private unnamed_addr constant [2 x i8] c"s\00" +@.str11887 = private unnamed_addr constant [5 x i8] c"dynH\00" +@.str11888 = private unnamed_addr constant [2 x i8] c"1\00" +@.str11889 = private unnamed_addr constant [2 x i8] c"h\00" +@.str11890 = private unnamed_addr constant [42 x i8] c" %di1 = add i32 %di, 1\0A br label %dynh\0A\00" +@.str11891 = private unnamed_addr constant [5 x i8] c" %d\00" +@.str11892 = private unnamed_addr constant [45 x i8] c"p = getelementptr inbounds [32 x ptr], ptr @\00" +@.str11893 = private unnamed_addr constant [22 x i8] c", i32 0, i32 %di\0A %d\00" +@.str11894 = private unnamed_addr constant [21 x i8] c"o = load ptr, ptr %d\00" +@.str11895 = private unnamed_addr constant [3 x i8] c"p\0A\00" +@.str11896 = private unnamed_addr constant [5 x i8] c" %d\00" +@.str11897 = private unnamed_addr constant [20 x i8] c"b = mul i64 %nc64, \00" +@.str11898 = private unnamed_addr constant [6 x i8] c"\0A %d\00" +@.str11899 = private unnamed_addr constant [15 x i8] c"r = add i64 %d\00" +@.str11900 = private unnamed_addr constant [10 x i8] c"b, 8\0A %d\00" +@.str11901 = private unnamed_addr constant [29 x i8] c"n = call ptr @realloc(ptr %d\00" +@.str11902 = private unnamed_addr constant [10 x i8] c"o, i64 %d\00" +@.str11903 = private unnamed_addr constant [4 x i8] c"r)\0A\00" +@.str11904 = private unnamed_addr constant [5 x i8] c" %d\00" +@.str11905 = private unnamed_addr constant [21 x i8] c"f = mul i64 %cap64, \00" +@.str11906 = private unnamed_addr constant [6 x i8] c"\0A %d\00" +@.str11907 = private unnamed_addr constant [29 x i8] c"t = getelementptr i8, ptr %d\00" +@.str11908 = private unnamed_addr constant [10 x i8] c"n, i64 %d\00" +@.str11909 = private unnamed_addr constant [7 x i8] c"f\0A %d\00" +@.str11910 = private unnamed_addr constant [15 x i8] c"z = sub i64 %d\00" +@.str11911 = private unnamed_addr constant [6 x i8] c"r, %d\00" +@.str11912 = private unnamed_addr constant [3 x i8] c"f\0A\00" +@.str11913 = private unnamed_addr constant [5 x i8] c" %d\00" +@.str11914 = private unnamed_addr constant [28 x i8] c"m = call ptr @memset(ptr %d\00" +@.str11915 = private unnamed_addr constant [17 x i8] c"t, i32 0, i64 %d\00" +@.str11916 = private unnamed_addr constant [18 x i8] c"z)\0A store ptr %d\00" +@.str11917 = private unnamed_addr constant [10 x i8] c"n, ptr %d\00" +@.str11918 = private unnamed_addr constant [3 x i8] c"p\0A\00" +@.str11919 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18998: index out of range: \00" +@.str11920 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18998: index out of range: \00" +@.str11921 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str11922 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str11923 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11924 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19006: index out of range: \00" +@.str11925 = private unnamed_addr constant [6 x i8] c"qcond\00" +@.str11926 = private unnamed_addr constant [6 x i8] c"qbody\00" +@.str11927 = private unnamed_addr constant [6 x i8] c"qnext\00" +@.str11928 = private unnamed_addr constant [5 x i8] c"qend\00" +@.str11929 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11930 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11931 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11932 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str11933 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_entc\00" +@.str11934 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" +@.str11935 = private unnamed_addr constant [3 x i8] c", \00" +@.str11936 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11937 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11938 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11939 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11940 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11941 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str11942 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str11943 = private unnamed_addr constant [3 x i8] c" \00" +@.str11944 = private unnamed_addr constant [36 x i8] c" = getelementptr inbounds i32, ptr \00" +@.str11945 = private unnamed_addr constant [7 x i8] c", i32 \00" @.str11946 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11947 = private unnamed_addr constant [6 x i8] c"prop_\00" -@.str11948 = private unnamed_addr constant [8 x i8] c"_attach\00" -@.str11949 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str11950 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str11951 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str11952 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19073: index out of range: \00" -@.str11953 = private unnamed_addr constant [3 x i8] c" \00" -@.str11954 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11955 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str11956 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str11957 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str11958 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11959 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str11960 = private unnamed_addr constant [13 x i8] c" store ptr \00" -@.str11961 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11947 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str11948 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str11949 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str11950 = private unnamed_addr constant [3 x i8] c"qa\00" +@.str11951 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11952 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11953 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11954 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11955 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11956 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19031: index out of range: \00" +@.str11957 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11958 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str11959 = private unnamed_addr constant [3 x i8] c" \00" +@.str11960 = private unnamed_addr constant [36 x i8] c" = getelementptr inbounds i32, ptr \00" +@.str11961 = private unnamed_addr constant [7 x i8] c", i32 \00" @.str11962 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11963 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19087: index out of range: \00" -@.str11964 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19087: index out of range: \00" -@.str11965 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19096: index out of range: \00" -@.str11966 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19098: index out of range: \00" -@.str11967 = private unnamed_addr constant [8 x i8] c"prefab \00" -@.str11968 = private unnamed_addr constant [45 x i8] c": the chain of prefabs never reaches a model\00" -@.str11969 = private unnamed_addr constant [26 x i8] c"call i32 @thr_is_worker()\00" -@.str11970 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str11971 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str11972 = private unnamed_addr constant [5 x i8] c"wgok\00" -@.str11973 = private unnamed_addr constant [6 x i8] c"wgbad\00" -@.str11974 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11975 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11976 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11977 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11978 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11979 = private unnamed_addr constant [2 x i8] c":\00" -@.str11980 = private unnamed_addr constant [10 x i8] c": panic: \00" -@.str11981 = private unnamed_addr constant [73 x i8] c" on a Job.parallel_for worker thread (workers must not change the world)\00" -@.str11982 = private unnamed_addr constant [41 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr \00" -@.str11983 = private unnamed_addr constant [24 x i8] c", ptr @.fmt_panic, ptr \00" -@.str11984 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11985 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str11986 = private unnamed_addr constant [40 x i8] c" call void @exit(i32 1)\0A unreachable\0A\00" -@.str11987 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11988 = private unnamed_addr constant [6 x i8] c"spawn\00" -@.str11989 = private unnamed_addr constant [20 x i8] c"call i32 @L_alloc()\00" -@.str11990 = private unnamed_addr constant [8 x i8] c"prefab \00" -@.str11991 = private unnamed_addr constant [17 x i8] c": unknown model \00" -@.str11992 = private unnamed_addr constant [3 x i8] c" \00" -@.str11993 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11994 = private unnamed_addr constant [34 x i8] c" x i32], ptr @L_kind, i32 0, i32 \00" +@.str11963 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str11964 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str11965 = private unnamed_addr constant [3 x i8] c", \00" +@.str11966 = private unnamed_addr constant [19 x i8] c"load i32, ptr @ME_\00" +@.str11967 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str11968 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str11969 = private unnamed_addr constant [8 x i8] c"and i1 \00" +@.str11970 = private unnamed_addr constant [3 x i8] c", \00" +@.str11971 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str11972 = private unnamed_addr constant [3 x i8] c" \00" +@.str11973 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str11974 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str11975 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11976 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" +@.str11977 = private unnamed_addr constant [12 x i8] c"icmp ne i8 \00" +@.str11978 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str11979 = private unnamed_addr constant [3 x i8] c"qt\00" +@.str11980 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11981 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11982 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11983 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11984 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11985 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19059: index out of range: \00" +@.str11986 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str11987 = private unnamed_addr constant [3 x i8] c" \00" +@.str11988 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str11989 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11990 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str11991 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11992 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str11993 = private unnamed_addr constant [13 x i8] c" store ptr \00" +@.str11994 = private unnamed_addr constant [7 x i8] c", ptr \00" @.str11995 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11996 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str11997 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11998 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11999 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19155: index out of range: \00" -@.str12000 = private unnamed_addr constant [7 x i8] c"model_\00" -@.str12001 = private unnamed_addr constant [7 x i8] c"_spawn\00" -@.str12002 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12003 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str12004 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12005 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19172: index out of range: \00" -@.str12006 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19172: index out of range: \00" -@.str12007 = private unnamed_addr constant [8 x i8] c"despawn\00" -@.str12008 = private unnamed_addr constant [3 x i8] c" \00" -@.str12009 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12010 = private unnamed_addr constant [34 x i8] c" x i32], ptr @L_kind, i32 0, i32 \00" -@.str12011 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12012 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str12013 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19187: index out of range: \00" -@.str12014 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str12015 = private unnamed_addr constant [3 x i8] c", \00" -@.str12016 = private unnamed_addr constant [3 x i8] c"dh\00" -@.str12017 = private unnamed_addr constant [4 x i8] c"dhn\00" -@.str12018 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12019 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12020 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12021 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12022 = private unnamed_addr constant [27 x i8] c":\0A call void @on_despawn_\00" -@.str12023 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str12024 = private unnamed_addr constant [10 x i8] c", i32 0)\0A\00" -@.str12025 = private unnamed_addr constant [7 x i8] c"model_\00" -@.str12026 = private unnamed_addr constant [9 x i8] c"_despawn\00" -@.str12027 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12028 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str12029 = private unnamed_addr constant [10 x i8] c", i32 0)\0A\00" -@.str12030 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12031 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12032 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12033 = private unnamed_addr constant [37 x i8] c" call void @ludic_sweep_entity(i32 \00" -@.str12034 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12035 = private unnamed_addr constant [32 x i8] c" call void @L_free_entity(i32 \00" -@.str12036 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12037 = private unnamed_addr constant [3 x i8] c" \00" -@.str12038 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12039 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str12040 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12041 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12042 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" -@.str12043 = private unnamed_addr constant [12 x i8] c"icmp eq i8 \00" -@.str12044 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str12045 = private unnamed_addr constant [7 x i8] c"attach\00" -@.str12046 = private unnamed_addr constant [8 x i8] c"attdone\00" -@.str12047 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12048 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12049 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12050 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12051 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12052 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11996 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19067: index out of range: \00" +@.str11997 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str11998 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str11999 = private unnamed_addr constant [3 x i8] c"qw\00" +@.str12000 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12001 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12002 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12003 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12004 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12005 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12006 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12007 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12008 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str12009 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str12010 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str12011 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str12012 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12013 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12014 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12015 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str12016 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str12017 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12018 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12019 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19105: index out of range: \00" +@.str12020 = private unnamed_addr constant [25 x i8] c"spawn: unknown property \00" +@.str12021 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str12022 = private unnamed_addr constant [3 x i8] c" \00" +@.str12023 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str12024 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12025 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12026 = private unnamed_addr constant [19 x i8] c" store i8 1, ptr \00" +@.str12027 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12028 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str12029 = private unnamed_addr constant [3 x i8] c" \00" +@.str12030 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12031 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12032 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12033 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12034 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19124: index out of range: \00" +@.str12035 = private unnamed_addr constant [3 x i8] c" \00" +@.str12036 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12037 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12038 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str12039 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12040 = private unnamed_addr constant [9 x i8] c" store \00" +@.str12041 = private unnamed_addr constant [2 x i8] c" \00" +@.str12042 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12043 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12044 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19137: index out of range: \00" +@.str12045 = private unnamed_addr constant [3 x i8] c" \00" +@.str12046 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12047 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12048 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str12049 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12050 = private unnamed_addr constant [9 x i8] c" store \00" +@.str12051 = private unnamed_addr constant [2 x i8] c" \00" +@.str12052 = private unnamed_addr constant [7 x i8] c", ptr \00" @.str12053 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12054 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12055 = private unnamed_addr constant [3 x i8] c" \00" -@.str12056 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12057 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str12058 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12059 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12060 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" -@.str12061 = private unnamed_addr constant [12 x i8] c"icmp ne i8 \00" -@.str12062 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str12063 = private unnamed_addr constant [7 x i8] c"detach\00" -@.str12064 = private unnamed_addr constant [8 x i8] c"detdone\00" -@.str12065 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12066 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12067 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12068 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12069 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12070 = private unnamed_addr constant [19 x i8] c" store i8 0, ptr \00" -@.str12071 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12072 = private unnamed_addr constant [3 x i8] c" \00" -@.str12073 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12074 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str12075 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str12076 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12077 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12078 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str12079 = private unnamed_addr constant [13 x i8] c" store ptr \00" -@.str12080 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12081 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12082 = private unnamed_addr constant [6 x i8] c"prop_\00" -@.str12083 = private unnamed_addr constant [8 x i8] c"_detach\00" -@.str12084 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12085 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str12086 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12087 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12054 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str12055 = private unnamed_addr constant [13 x i8] c" store ptr \00" +@.str12056 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12057 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12058 = private unnamed_addr constant [6 x i8] c"prop_\00" +@.str12059 = private unnamed_addr constant [8 x i8] c"_attach\00" +@.str12060 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12061 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str12062 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12063 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19171: index out of range: \00" +@.str12064 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str12065 = private unnamed_addr constant [3 x i8] c" \00" +@.str12066 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12067 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12068 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12069 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12070 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str12071 = private unnamed_addr constant [13 x i8] c" store ptr \00" +@.str12072 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12073 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12074 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19186: index out of range: \00" +@.str12075 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19186: index out of range: \00" +@.str12076 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19195: index out of range: \00" +@.str12077 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19197: index out of range: \00" +@.str12078 = private unnamed_addr constant [8 x i8] c"prefab \00" +@.str12079 = private unnamed_addr constant [45 x i8] c": the chain of prefabs never reaches a model\00" +@.str12080 = private unnamed_addr constant [26 x i8] c"call i32 @thr_is_worker()\00" +@.str12081 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str12082 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str12083 = private unnamed_addr constant [5 x i8] c"wgok\00" +@.str12084 = private unnamed_addr constant [6 x i8] c"wgbad\00" +@.str12085 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12086 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12087 = private unnamed_addr constant [10 x i8] c", label %\00" @.str12088 = private unnamed_addr constant [2 x i8] c"\0A\00" @.str12089 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12090 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19255: index out of range: \00" -@.str12091 = private unnamed_addr constant [2 x i8] c"0\00" -@.str12092 = private unnamed_addr constant [2 x i8] c"1\00" -@.str12093 = private unnamed_addr constant [7 x i8] c"system\00" -@.str12094 = private unnamed_addr constant [6 x i8] c"layer\00" -@.str12095 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str12096 = private unnamed_addr constant [11 x i8] c", ptr @LE_\00" -@.str12097 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12098 = private unnamed_addr constant [7 x i8] c"layer_\00" -@.str12099 = private unnamed_addr constant [6 x i8] c"_hide\00" -@.str12100 = private unnamed_addr constant [7 x i8] c"layer_\00" -@.str12101 = private unnamed_addr constant [6 x i8] c"_show\00" -@.str12102 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12103 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12090 = private unnamed_addr constant [2 x i8] c":\00" +@.str12091 = private unnamed_addr constant [10 x i8] c": panic: \00" +@.str12092 = private unnamed_addr constant [73 x i8] c" on a Job.parallel_for worker thread (workers must not change the world)\00" +@.str12093 = private unnamed_addr constant [41 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr \00" +@.str12094 = private unnamed_addr constant [24 x i8] c", ptr @.fmt_panic, ptr \00" +@.str12095 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12096 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12097 = private unnamed_addr constant [40 x i8] c" call void @exit(i32 1)\0A unreachable\0A\00" +@.str12098 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12099 = private unnamed_addr constant [6 x i8] c"spawn\00" +@.str12100 = private unnamed_addr constant [20 x i8] c"call i32 @L_alloc()\00" +@.str12101 = private unnamed_addr constant [8 x i8] c"prefab \00" +@.str12102 = private unnamed_addr constant [17 x i8] c": unknown model \00" +@.str12103 = private unnamed_addr constant [7 x i8] c"L_kind\00" @.str12104 = private unnamed_addr constant [3 x i8] c" \00" -@.str12105 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12106 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str12107 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12108 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12109 = private unnamed_addr constant [12 x i8] c" store i8 \00" -@.str12110 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12111 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12112 = private unnamed_addr constant [3 x i8] c" \00" -@.str12113 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12114 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str12115 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str12116 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12117 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12118 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str12119 = private unnamed_addr constant [13 x i8] c" store ptr \00" -@.str12120 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12121 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12122 = private unnamed_addr constant [6 x i8] c"prop_\00" -@.str12123 = private unnamed_addr constant [9 x i8] c"_disable\00" -@.str12124 = private unnamed_addr constant [6 x i8] c"prop_\00" -@.str12125 = private unnamed_addr constant [8 x i8] c"_enable\00" -@.str12126 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12127 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str12128 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12129 = private unnamed_addr constant [5 x i8] c"@HE_\00" -@.str12130 = private unnamed_addr constant [5 x i8] c"@ME_\00" -@.str12131 = private unnamed_addr constant [5 x i8] c"@HE_\00" -@.str12132 = private unnamed_addr constant [2 x i8] c"_\00" -@.str12133 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str12134 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12135 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12136 = private unnamed_addr constant [5 x i8] c"void\00" -@.str12137 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" -@.str12138 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" -@.str12139 = private unnamed_addr constant [18 x i8] c"define void @sys_\00" -@.str12140 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" -@.str12141 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str12142 = private unnamed_addr constant [1 x i8] c"\00" -@.str12143 = private unnamed_addr constant [19 x i8] c"load i32, ptr @HE_\00" -@.str12144 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str12145 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str12146 = private unnamed_addr constant [19 x i8] c"load i32, ptr @LE_\00" -@.str12147 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str12148 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str12149 = private unnamed_addr constant [8 x i8] c"and i1 \00" -@.str12150 = private unnamed_addr constant [3 x i8] c", \00" -@.str12151 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_role\00" -@.str12152 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str12153 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str12154 = private unnamed_addr constant [8 x i8] c"and i1 \00" -@.str12155 = private unnamed_addr constant [3 x i8] c", \00" -@.str12156 = private unnamed_addr constant [5 x i8] c"hrun\00" -@.str12157 = private unnamed_addr constant [6 x i8] c"hskip\00" -@.str12158 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12159 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12160 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12161 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12162 = private unnamed_addr constant [20 x i8] c":\0A call void @sys_\00" -@.str12163 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12164 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12165 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12166 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12167 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12168 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12169 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19368: index out of range: \00" -@.str12170 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19368: index out of range: \00" -@.str12171 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19368: index out of range: \00" -@.str12172 = private unnamed_addr constant [7 x i8] c"Update\00" -@.str12173 = private unnamed_addr constant [11 x i8] c"esys_tween\00" -@.str12174 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12175 = private unnamed_addr constant [11 x i8] c"esys_tween\00" -@.str12176 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12177 = private unnamed_addr constant [29 x i8] c" call void @L_countdowns()\0A\00" -@.str12178 = private unnamed_addr constant [8 x i8] c"fx_tick\00" -@.str12179 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12180 = private unnamed_addr constant [8 x i8] c"fx_tick\00" -@.str12181 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12182 = private unnamed_addr constant [7 x i8] c"Render\00" -@.str12183 = private unnamed_addr constant [8 x i8] c"fx_draw\00" -@.str12184 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12185 = private unnamed_addr constant [8 x i8] c"fx_draw\00" -@.str12186 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12187 = private unnamed_addr constant [38 x i8] c"define void @L_countdowns() {\0Aentry:\0A\00" -@.str12188 = private unnamed_addr constant [53 x i8] c" %n = load i32, ptr @L_entc\0A br label %loop\0Aloop:\0A\00" -@.str12189 = private unnamed_addr constant [46 x i8] c" %i = phi i32 [ 0, %entry ], [ %i1, %next ]\0A\00" -@.str12190 = private unnamed_addr constant [73 x i8] c" %go = icmp slt i32 %i, %n\0A br i1 %go, label %body, label %done\0Abody:\0A\00" -@.str12191 = private unnamed_addr constant [33 x i8] c" %ap = getelementptr inbounds [\00" -@.str12192 = private unnamed_addr constant [38 x i8] c" x i32], ptr @L_alive, i32 0, i32 %i\0A\00" -@.str12193 = private unnamed_addr constant [96 x i8] c" %al = load i32, ptr %ap\0A %alive = icmp ne i32 %al, 0\0A br i1 %alive, label %c0, label %next\0A\00" -@.str12194 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19397: index out of range: \00" -@.str12195 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19401: index out of range: \00" -@.str12196 = private unnamed_addr constant [10 x i8] c"countdown\00" -@.str12197 = private unnamed_addr constant [2 x i8] c"c\00" -@.str12198 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12199 = private unnamed_addr constant [5 x i8] c" %h\00" -@.str12200 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12201 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str12202 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %i\0A\00" -@.str12203 = private unnamed_addr constant [6 x i8] c" %hv\00" -@.str12204 = private unnamed_addr constant [19 x i8] c" = load i8, ptr %h\00" -@.str12205 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12206 = private unnamed_addr constant [7 x i8] c" %has\00" -@.str12207 = private unnamed_addr constant [18 x i8] c" = icmp ne i8 %hv\00" -@.str12208 = private unnamed_addr constant [5 x i8] c", 0\0A\00" -@.str12209 = private unnamed_addr constant [13 x i8] c" br i1 %has\00" -@.str12210 = private unnamed_addr constant [11 x i8] c", label %t\00" -@.str12211 = private unnamed_addr constant [11 x i8] c", label %c\00" -@.str12212 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12213 = private unnamed_addr constant [2 x i8] c"t\00" -@.str12214 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12215 = private unnamed_addr constant [5 x i8] c" %s\00" -@.str12216 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12217 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str12218 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str12219 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %i\0A\00" -@.str12220 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19413: index out of range: \00" -@.str12221 = private unnamed_addr constant [10 x i8] c"countdown\00" -@.str12222 = private unnamed_addr constant [2 x i8] c"_\00" -@.str12223 = private unnamed_addr constant [6 x i8] c" %fa\00" -@.str12224 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" -@.str12225 = private unnamed_addr constant [9 x i8] c", ptr %s\00" -@.str12226 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12227 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12228 = private unnamed_addr constant [6 x i8] c" %fv\00" -@.str12229 = private unnamed_addr constant [21 x i8] c" = load i32, ptr %fa\00" +@.str12105 = private unnamed_addr constant [36 x i8] c" = getelementptr inbounds i32, ptr \00" +@.str12106 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12107 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12108 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str12109 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12110 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12111 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19255: index out of range: \00" +@.str12112 = private unnamed_addr constant [7 x i8] c"model_\00" +@.str12113 = private unnamed_addr constant [7 x i8] c"_spawn\00" +@.str12114 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12115 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str12116 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12117 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19272: index out of range: \00" +@.str12118 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19272: index out of range: \00" +@.str12119 = private unnamed_addr constant [8 x i8] c"despawn\00" +@.str12120 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str12121 = private unnamed_addr constant [3 x i8] c" \00" +@.str12122 = private unnamed_addr constant [36 x i8] c" = getelementptr inbounds i32, ptr \00" +@.str12123 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12124 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12125 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str12126 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19288: index out of range: \00" +@.str12127 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str12128 = private unnamed_addr constant [3 x i8] c", \00" +@.str12129 = private unnamed_addr constant [3 x i8] c"dh\00" +@.str12130 = private unnamed_addr constant [4 x i8] c"dhn\00" +@.str12131 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12132 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12133 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12134 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12135 = private unnamed_addr constant [27 x i8] c":\0A call void @on_despawn_\00" +@.str12136 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str12137 = private unnamed_addr constant [10 x i8] c", i32 0)\0A\00" +@.str12138 = private unnamed_addr constant [7 x i8] c"model_\00" +@.str12139 = private unnamed_addr constant [9 x i8] c"_despawn\00" +@.str12140 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12141 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str12142 = private unnamed_addr constant [10 x i8] c", i32 0)\0A\00" +@.str12143 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12144 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12145 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12146 = private unnamed_addr constant [37 x i8] c" call void @ludic_sweep_entity(i32 \00" +@.str12147 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12148 = private unnamed_addr constant [32 x i8] c" call void @L_free_entity(i32 \00" +@.str12149 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12150 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str12151 = private unnamed_addr constant [3 x i8] c" \00" +@.str12152 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str12153 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12154 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12155 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" +@.str12156 = private unnamed_addr constant [12 x i8] c"icmp eq i8 \00" +@.str12157 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str12158 = private unnamed_addr constant [7 x i8] c"attach\00" +@.str12159 = private unnamed_addr constant [8 x i8] c"attdone\00" +@.str12160 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12161 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12162 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12163 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12164 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12165 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12166 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12167 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12168 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str12169 = private unnamed_addr constant [3 x i8] c" \00" +@.str12170 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str12171 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12172 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12173 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" +@.str12174 = private unnamed_addr constant [12 x i8] c"icmp ne i8 \00" +@.str12175 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str12176 = private unnamed_addr constant [7 x i8] c"detach\00" +@.str12177 = private unnamed_addr constant [8 x i8] c"detdone\00" +@.str12178 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12179 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12180 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12181 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12182 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12183 = private unnamed_addr constant [19 x i8] c" store i8 0, ptr \00" +@.str12184 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12185 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str12186 = private unnamed_addr constant [3 x i8] c" \00" +@.str12187 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12188 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12189 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12190 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12191 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str12192 = private unnamed_addr constant [13 x i8] c" store ptr \00" +@.str12193 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12194 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12195 = private unnamed_addr constant [6 x i8] c"prop_\00" +@.str12196 = private unnamed_addr constant [8 x i8] c"_detach\00" +@.str12197 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12198 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str12199 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12200 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12201 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12202 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12203 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19359: index out of range: \00" +@.str12204 = private unnamed_addr constant [2 x i8] c"0\00" +@.str12205 = private unnamed_addr constant [2 x i8] c"1\00" +@.str12206 = private unnamed_addr constant [7 x i8] c"system\00" +@.str12207 = private unnamed_addr constant [6 x i8] c"layer\00" +@.str12208 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str12209 = private unnamed_addr constant [11 x i8] c", ptr @LE_\00" +@.str12210 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12211 = private unnamed_addr constant [7 x i8] c"layer_\00" +@.str12212 = private unnamed_addr constant [6 x i8] c"_hide\00" +@.str12213 = private unnamed_addr constant [7 x i8] c"layer_\00" +@.str12214 = private unnamed_addr constant [6 x i8] c"_show\00" +@.str12215 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12216 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12217 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str12218 = private unnamed_addr constant [3 x i8] c" \00" +@.str12219 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str12220 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12221 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12222 = private unnamed_addr constant [12 x i8] c" store i8 \00" +@.str12223 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12224 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12225 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str12226 = private unnamed_addr constant [3 x i8] c" \00" +@.str12227 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12228 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12229 = private unnamed_addr constant [7 x i8] c", i32 \00" @.str12230 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12231 = private unnamed_addr constant [6 x i8] c" %fp\00" -@.str12232 = private unnamed_addr constant [20 x i8] c" = icmp sgt i32 %fv\00" -@.str12233 = private unnamed_addr constant [5 x i8] c", 0\0A\00" -@.str12234 = private unnamed_addr constant [6 x i8] c" %fd\00" -@.str12235 = private unnamed_addr constant [15 x i8] c" = sub i32 %fv\00" -@.str12236 = private unnamed_addr constant [5 x i8] c", 1\0A\00" -@.str12237 = private unnamed_addr constant [6 x i8] c" %fn\00" -@.str12238 = private unnamed_addr constant [17 x i8] c" = select i1 %fp\00" -@.str12239 = private unnamed_addr constant [10 x i8] c", i32 %fd\00" -@.str12240 = private unnamed_addr constant [10 x i8] c", i32 %fv\00" -@.str12241 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12242 = private unnamed_addr constant [16 x i8] c" store i32 %fn\00" -@.str12243 = private unnamed_addr constant [10 x i8] c", ptr %fa\00" -@.str12244 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12245 = private unnamed_addr constant [14 x i8] c" br label %c\00" -@.str12246 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12247 = private unnamed_addr constant [2 x i8] c"c\00" -@.str12248 = private unnamed_addr constant [20 x i8] c":\0A br label %next\0A\00" -@.str12249 = private unnamed_addr constant [66 x i8] c"next:\0A %i1 = add i32 %i, 1\0A br label %loop\0Adone:\0A ret void\0A}\0A\0A\00" -@.str12250 = private unnamed_addr constant [4 x i8] c"int\00" -@.str12251 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str12252 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12253 = private unnamed_addr constant [22 x i8] c"define i32 @L_prefab_\00" -@.str12254 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" -@.str12255 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str12256 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19455: index out of range: \00" -@.str12257 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19455: index out of range: \00" -@.str12258 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19464: index out of range: \00" -@.str12259 = private unnamed_addr constant [36 x i8] c"call i32 @lp_str_eq(ptr %name, ptr \00" -@.str12260 = private unnamed_addr constant [2 x i8] c")\00" -@.str12261 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str12262 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str12263 = private unnamed_addr constant [3 x i8] c"pf\00" -@.str12264 = private unnamed_addr constant [4 x i8] c"pfn\00" -@.str12265 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12266 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12267 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12268 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12269 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12270 = private unnamed_addr constant [20 x i8] c"call i32 @L_prefab_\00" -@.str12271 = private unnamed_addr constant [3 x i8] c"()\00" -@.str12272 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str12273 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12274 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12275 = private unnamed_addr constant [14 x i8] c" ret i32 -1\0A\00" -@.str12276 = private unnamed_addr constant [48 x i8] c"define i32 @L_spawn_prefab(ptr %name) {\0Aentry:\0A\00" -@.str12277 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str12278 = private unnamed_addr constant [6 x i8] c"Input\00" -@.str12279 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" -@.str12280 = private unnamed_addr constant [7 x i8] c"Update\00" -@.str12281 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" -@.str12282 = private unnamed_addr constant [7 x i8] c"Render\00" -@.str12283 = private unnamed_addr constant [6 x i8] c"Start\00" -@.str12284 = private unnamed_addr constant [7 x i8] c"OnQuit\00" -@.str12285 = private unnamed_addr constant [8 x i8] c"Overlay\00" -@.str12286 = private unnamed_addr constant [16 x i8] c"unknown phase '\00" -@.str12287 = private unnamed_addr constant [2 x i8] c"'\00" -@.str12288 = private unnamed_addr constant [6 x i8] c"Start\00" -@.str12289 = private unnamed_addr constant [6 x i8] c"Input\00" -@.str12290 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" -@.str12291 = private unnamed_addr constant [7 x i8] c"Update\00" -@.str12292 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" -@.str12293 = private unnamed_addr constant [7 x i8] c"Render\00" -@.str12294 = private unnamed_addr constant [8 x i8] c"Overlay\00" -@.str12295 = private unnamed_addr constant [44 x i8] c"declare i32 @ludic_register_prop(ptr, i32)\0A\00" -@.str12296 = private unnamed_addr constant [46 x i8] c"declare i32 @ludic_register_system(ptr, i32)\0A\00" -@.str12297 = private unnamed_addr constant [39 x i8] c"declare i64 @ludic_get(i32, i32, i32)\0A\00" -@.str12298 = private unnamed_addr constant [45 x i8] c"declare void @ludic_set(i32, i32, i32, i64)\0A\00" -@.str12299 = private unnamed_addr constant [34 x i8] c"declare i32 @ludic_has(i32, i32)\0A\00" -@.str12300 = private unnamed_addr constant [42 x i8] c"declare void @ludic_attach_dyn(i32, i32)\0A\00" -@.str12301 = private unnamed_addr constant [42 x i8] c"declare void @ludic_detach_dyn(i32, i32)\0A\00" -@.str12302 = private unnamed_addr constant [33 x i8] c"declare i32 @ludic_prop_id(ptr)\0A\00" -@.str12303 = private unnamed_addr constant [39 x i8] c"declare i32 @ludic_field_id(i32, ptr)\0A\00" -@.str12304 = private unnamed_addr constant [35 x i8] c"declare i32 @ludic_entity_count()\0A\00" -@.str12305 = private unnamed_addr constant [30 x i8] c"declare i32 @ludic_kind(i32)\0A\00" -@.str12306 = private unnamed_addr constant [34 x i8] c"declare i32 @ludic_model_id(ptr)\0A\00" -@.str12307 = private unnamed_addr constant [31 x i8] c"declare i32 @ludic_spawn(i32)\0A\00" -@.str12308 = private unnamed_addr constant [41 x i8] c"declare i32 @ludic_query_next(i32, i32)\0A\00" -@.str12309 = private unnamed_addr constant [33 x i8] c"declare i32 @ludic_prop_count()\0A\00" -@.str12310 = private unnamed_addr constant [35 x i8] c"declare ptr @ludic_prop_name(i32)\0A\00" -@.str12311 = private unnamed_addr constant [37 x i8] c"declare i32 @ludic_field_count(i32)\0A\00" -@.str12312 = private unnamed_addr constant [41 x i8] c"declare ptr @ludic_field_name(i32, i32)\0A\00" -@.str12313 = private unnamed_addr constant [41 x i8] c"declare ptr @ludic_field_type(i32, i32)\0A\00" -@.str12314 = private unnamed_addr constant [42 x i8] c"define void @__ludic_mod_init() {\0Aentry:\0A\00" -@.str12315 = private unnamed_addr constant [12 x i8] c"module_init\00" -@.str12316 = private unnamed_addr constant [31 x i8] c" call void @fn_module_init()\0A\00" -@.str12317 = private unnamed_addr constant [43 x i8] c" call i32 @ludic_register_system(ptr @fn_\00" -@.str12318 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19557: index out of range: \00" -@.str12319 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str12320 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19557: index out of range: \00" -@.str12321 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12322 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str12323 = private unnamed_addr constant [130 x i8] c"@llvm.global_ctors = appending global [1 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 65535, ptr @__ludic_mod_init, ptr null }]\0A\00" -@.str12324 = private unnamed_addr constant [22 x i8] c"@sysreg_fn = global [\00" -@.str12325 = private unnamed_addr constant [25 x i8] c" x ptr] zeroinitializer\0A\00" -@.str12326 = private unnamed_addr constant [25 x i8] c"@sysreg_phase = global [\00" -@.str12327 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" -@.str12328 = private unnamed_addr constant [30 x i8] c"@sysreg_count = global i32 0\0A\00" -@.str12329 = private unnamed_addr constant [65 x i8] c"define i32 @ludic_register_system(ptr %fn, i32 %phase) {\0Aentry:\0A\00" -@.str12330 = private unnamed_addr constant [36 x i8] c" %n = load i32, ptr @sysreg_count\0A\00" -@.str12331 = private unnamed_addr constant [26 x i8] c" %ok = icmp slt i32 %n, \00" -@.str12332 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12333 = private unnamed_addr constant [38 x i8] c" br i1 %ok, label %add, label %drop\0A\00" -@.str12334 = private unnamed_addr constant [6 x i8] c"add:\0A\00" -@.str12335 = private unnamed_addr constant [33 x i8] c" %fp = getelementptr inbounds [\00" -@.str12336 = private unnamed_addr constant [40 x i8] c" x ptr], ptr @sysreg_fn, i32 0, i32 %n\0A\00" -@.str12337 = private unnamed_addr constant [26 x i8] c" store ptr %fn, ptr %fp\0A\00" -@.str12338 = private unnamed_addr constant [33 x i8] c" %pp = getelementptr inbounds [\00" -@.str12339 = private unnamed_addr constant [43 x i8] c" x i32], ptr @sysreg_phase, i32 0, i32 %n\0A\00" -@.str12340 = private unnamed_addr constant [29 x i8] c" store i32 %phase, ptr %pp\0A\00" -@.str12341 = private unnamed_addr constant [71 x i8] c" %n1 = add i32 %n, 1\0A store i32 %n1, ptr @sysreg_count\0A ret i32 %n\0A\00" -@.str12342 = private unnamed_addr constant [23 x i8] c"drop:\0A ret i32 -1\0A}\0A\0A\00" -@.str12343 = private unnamed_addr constant [4 x i8] c"dsp\00" -@.str12344 = private unnamed_addr constant [4 x i8] c"dsh\00" -@.str12345 = private unnamed_addr constant [4 x i8] c"dsb\00" -@.str12346 = private unnamed_addr constant [5 x i8] c"dsdo\00" -@.str12347 = private unnamed_addr constant [4 x i8] c"dsc\00" -@.str12348 = private unnamed_addr constant [4 x i8] c"dsn\00" -@.str12349 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12350 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12351 = private unnamed_addr constant [15 x i8] c":\0A br label %\00" -@.str12352 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12353 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12354 = private unnamed_addr constant [3 x i8] c" \00" -@.str12355 = private unnamed_addr constant [18 x i8] c" = phi i32 [ 0, %\00" -@.str12356 = private unnamed_addr constant [7 x i8] c" ], [ \00" -@.str12357 = private unnamed_addr constant [4 x i8] c", %\00" -@.str12358 = private unnamed_addr constant [4 x i8] c" ]\0A\00" -@.str12359 = private unnamed_addr constant [28 x i8] c"load i32, ptr @sysreg_count\00" -@.str12360 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" -@.str12361 = private unnamed_addr constant [3 x i8] c", \00" -@.str12362 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12363 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12364 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12365 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12366 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12367 = private unnamed_addr constant [3 x i8] c" \00" -@.str12368 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12369 = private unnamed_addr constant [40 x i8] c" x i32], ptr @sysreg_phase, i32 0, i32 \00" -@.str12370 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12371 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str12372 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str12373 = private unnamed_addr constant [3 x i8] c", \00" -@.str12374 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12375 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12376 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12377 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12378 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12379 = private unnamed_addr constant [3 x i8] c" \00" -@.str12380 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12381 = private unnamed_addr constant [37 x i8] c" x ptr], ptr @sysreg_fn, i32 0, i32 \00" +@.str12231 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str12232 = private unnamed_addr constant [13 x i8] c" store ptr \00" +@.str12233 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12234 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12235 = private unnamed_addr constant [6 x i8] c"prop_\00" +@.str12236 = private unnamed_addr constant [9 x i8] c"_disable\00" +@.str12237 = private unnamed_addr constant [6 x i8] c"prop_\00" +@.str12238 = private unnamed_addr constant [8 x i8] c"_enable\00" +@.str12239 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12240 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str12241 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12242 = private unnamed_addr constant [5 x i8] c"@HE_\00" +@.str12243 = private unnamed_addr constant [5 x i8] c"@ME_\00" +@.str12244 = private unnamed_addr constant [5 x i8] c"@HE_\00" +@.str12245 = private unnamed_addr constant [2 x i8] c"_\00" +@.str12246 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str12247 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12248 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12249 = private unnamed_addr constant [5 x i8] c"void\00" +@.str12250 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" +@.str12251 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" +@.str12252 = private unnamed_addr constant [18 x i8] c"define void @sys_\00" +@.str12253 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" +@.str12254 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str12255 = private unnamed_addr constant [1 x i8] c"\00" +@.str12256 = private unnamed_addr constant [19 x i8] c"load i32, ptr @HE_\00" +@.str12257 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str12258 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str12259 = private unnamed_addr constant [19 x i8] c"load i32, ptr @LE_\00" +@.str12260 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str12261 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str12262 = private unnamed_addr constant [8 x i8] c"and i1 \00" +@.str12263 = private unnamed_addr constant [3 x i8] c", \00" +@.str12264 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_role\00" +@.str12265 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str12266 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str12267 = private unnamed_addr constant [8 x i8] c"and i1 \00" +@.str12268 = private unnamed_addr constant [3 x i8] c", \00" +@.str12269 = private unnamed_addr constant [5 x i8] c"hrun\00" +@.str12270 = private unnamed_addr constant [6 x i8] c"hskip\00" +@.str12271 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12272 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12273 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12274 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12275 = private unnamed_addr constant [20 x i8] c":\0A call void @sys_\00" +@.str12276 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12277 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12278 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12279 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12280 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12281 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12282 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19474: index out of range: \00" +@.str12283 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19474: index out of range: \00" +@.str12284 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19474: index out of range: \00" +@.str12285 = private unnamed_addr constant [7 x i8] c"Update\00" +@.str12286 = private unnamed_addr constant [11 x i8] c"esys_tween\00" +@.str12287 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12288 = private unnamed_addr constant [11 x i8] c"esys_tween\00" +@.str12289 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12290 = private unnamed_addr constant [29 x i8] c" call void @L_countdowns()\0A\00" +@.str12291 = private unnamed_addr constant [8 x i8] c"fx_tick\00" +@.str12292 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12293 = private unnamed_addr constant [8 x i8] c"fx_tick\00" +@.str12294 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12295 = private unnamed_addr constant [7 x i8] c"Render\00" +@.str12296 = private unnamed_addr constant [8 x i8] c"fx_draw\00" +@.str12297 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12298 = private unnamed_addr constant [8 x i8] c"fx_draw\00" +@.str12299 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12300 = private unnamed_addr constant [38 x i8] c"define void @L_countdowns() {\0Aentry:\0A\00" +@.str12301 = private unnamed_addr constant [53 x i8] c" %n = load i32, ptr @L_entc\0A br label %loop\0Aloop:\0A\00" +@.str12302 = private unnamed_addr constant [46 x i8] c" %i = phi i32 [ 0, %entry ], [ %i1, %next ]\0A\00" +@.str12303 = private unnamed_addr constant [73 x i8] c" %go = icmp slt i32 %i, %n\0A br i1 %go, label %body, label %done\0Abody:\0A\00" +@.str12304 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str12305 = private unnamed_addr constant [41 x i8] c" %ap = getelementptr inbounds i32, ptr \00" +@.str12306 = private unnamed_addr constant [10 x i8] c", i32 %i\0A\00" +@.str12307 = private unnamed_addr constant [96 x i8] c" %al = load i32, ptr %ap\0A %alive = icmp ne i32 %al, 0\0A br i1 %alive, label %c0, label %next\0A\00" +@.str12308 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19504: index out of range: \00" +@.str12309 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19508: index out of range: \00" +@.str12310 = private unnamed_addr constant [10 x i8] c"countdown\00" +@.str12311 = private unnamed_addr constant [2 x i8] c"c\00" +@.str12312 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12313 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str12314 = private unnamed_addr constant [5 x i8] c" %h\00" +@.str12315 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str12316 = private unnamed_addr constant [10 x i8] c", i32 %i\0A\00" +@.str12317 = private unnamed_addr constant [6 x i8] c" %hv\00" +@.str12318 = private unnamed_addr constant [19 x i8] c" = load i8, ptr %h\00" +@.str12319 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12320 = private unnamed_addr constant [7 x i8] c" %has\00" +@.str12321 = private unnamed_addr constant [18 x i8] c" = icmp ne i8 %hv\00" +@.str12322 = private unnamed_addr constant [5 x i8] c", 0\0A\00" +@.str12323 = private unnamed_addr constant [13 x i8] c" br i1 %has\00" +@.str12324 = private unnamed_addr constant [11 x i8] c", label %t\00" +@.str12325 = private unnamed_addr constant [11 x i8] c", label %c\00" +@.str12326 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12327 = private unnamed_addr constant [2 x i8] c"t\00" +@.str12328 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12329 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str12330 = private unnamed_addr constant [5 x i8] c" %s\00" +@.str12331 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12332 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12333 = private unnamed_addr constant [10 x i8] c", i32 %i\0A\00" +@.str12334 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19522: index out of range: \00" +@.str12335 = private unnamed_addr constant [10 x i8] c"countdown\00" +@.str12336 = private unnamed_addr constant [2 x i8] c"_\00" +@.str12337 = private unnamed_addr constant [6 x i8] c" %fa\00" +@.str12338 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12339 = private unnamed_addr constant [9 x i8] c", ptr %s\00" +@.str12340 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str12341 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12342 = private unnamed_addr constant [6 x i8] c" %fv\00" +@.str12343 = private unnamed_addr constant [21 x i8] c" = load i32, ptr %fa\00" +@.str12344 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12345 = private unnamed_addr constant [6 x i8] c" %fp\00" +@.str12346 = private unnamed_addr constant [20 x i8] c" = icmp sgt i32 %fv\00" +@.str12347 = private unnamed_addr constant [5 x i8] c", 0\0A\00" +@.str12348 = private unnamed_addr constant [6 x i8] c" %fd\00" +@.str12349 = private unnamed_addr constant [15 x i8] c" = sub i32 %fv\00" +@.str12350 = private unnamed_addr constant [5 x i8] c", 1\0A\00" +@.str12351 = private unnamed_addr constant [6 x i8] c" %fn\00" +@.str12352 = private unnamed_addr constant [17 x i8] c" = select i1 %fp\00" +@.str12353 = private unnamed_addr constant [10 x i8] c", i32 %fd\00" +@.str12354 = private unnamed_addr constant [10 x i8] c", i32 %fv\00" +@.str12355 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12356 = private unnamed_addr constant [16 x i8] c" store i32 %fn\00" +@.str12357 = private unnamed_addr constant [10 x i8] c", ptr %fa\00" +@.str12358 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12359 = private unnamed_addr constant [14 x i8] c" br label %c\00" +@.str12360 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12361 = private unnamed_addr constant [2 x i8] c"c\00" +@.str12362 = private unnamed_addr constant [20 x i8] c":\0A br label %next\0A\00" +@.str12363 = private unnamed_addr constant [66 x i8] c"next:\0A %i1 = add i32 %i, 1\0A br label %loop\0Adone:\0A ret void\0A}\0A\0A\00" +@.str12364 = private unnamed_addr constant [4 x i8] c"int\00" +@.str12365 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str12366 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12367 = private unnamed_addr constant [22 x i8] c"define i32 @L_prefab_\00" +@.str12368 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" +@.str12369 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str12370 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19564: index out of range: \00" +@.str12371 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19564: index out of range: \00" +@.str12372 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19573: index out of range: \00" +@.str12373 = private unnamed_addr constant [36 x i8] c"call i32 @lp_str_eq(ptr %name, ptr \00" +@.str12374 = private unnamed_addr constant [2 x i8] c")\00" +@.str12375 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str12376 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str12377 = private unnamed_addr constant [3 x i8] c"pf\00" +@.str12378 = private unnamed_addr constant [4 x i8] c"pfn\00" +@.str12379 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12380 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12381 = private unnamed_addr constant [10 x i8] c", label %\00" @.str12382 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12383 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" -@.str12384 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12385 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12386 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12383 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12384 = private unnamed_addr constant [20 x i8] c"call i32 @L_prefab_\00" +@.str12385 = private unnamed_addr constant [3 x i8] c"()\00" +@.str12386 = private unnamed_addr constant [11 x i8] c" ret i32 \00" @.str12387 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12388 = private unnamed_addr constant [5 x i8] c":\0A \00" -@.str12389 = private unnamed_addr constant [12 x i8] c" = add i32 \00" -@.str12390 = private unnamed_addr constant [17 x i8] c", 1\0A br label %\00" -@.str12391 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12392 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12393 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19617: index out of range: \00" -@.str12394 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19624: index out of range: \00" -@.str12395 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_scene\00" -@.str12396 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19629: index out of range: \00" -@.str12397 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str12398 = private unnamed_addr constant [3 x i8] c", \00" -@.str12399 = private unnamed_addr constant [6 x i8] c"scrun\00" -@.str12400 = private unnamed_addr constant [7 x i8] c"scskip\00" -@.str12401 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12402 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12403 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12404 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12405 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12406 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12407 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12408 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12409 = private unnamed_addr constant [8 x i8] c"Overlay\00" -@.str12410 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12411 = private unnamed_addr constant [14 x i8] c"drain_actions\00" -@.str12412 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12413 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19651: index out of range: \00" -@.str12414 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_scene\00" -@.str12415 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19656: index out of range: \00" -@.str12416 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str12417 = private unnamed_addr constant [3 x i8] c", \00" -@.str12418 = private unnamed_addr constant [5 x i8] c"mrun\00" -@.str12419 = private unnamed_addr constant [6 x i8] c"mskip\00" -@.str12420 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12421 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12422 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12423 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12424 = private unnamed_addr constant [15 x i8] c":\0A call void \00" -@.str12425 = private unnamed_addr constant [13 x i8] c"rt_ui_render\00" -@.str12426 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12427 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12428 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12429 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12430 = private unnamed_addr constant [5 x i8] c"void\00" -@.str12431 = private unnamed_addr constant [6 x i8] c"enter\00" -@.str12432 = private unnamed_addr constant [18 x i8] c"input_cursor_mode\00" -@.str12433 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12434 = private unnamed_addr constant [18 x i8] c"input_cursor_mode\00" -@.str12435 = private unnamed_addr constant [9 x i8] c"(i32 0)\0A\00" -@.str12436 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12437 = private unnamed_addr constant [11 x i8] c"rt_ui_open\00" -@.str12438 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str12439 = private unnamed_addr constant [4 x i8] c"UI_\00" -@.str12440 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12441 = private unnamed_addr constant [5 x i8] c"exit\00" -@.str12442 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12443 = private unnamed_addr constant [12 x i8] c"rt_ui_close\00" -@.str12444 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12445 = private unnamed_addr constant [7 x i8] c"scene_\00" -@.str12446 = private unnamed_addr constant [2 x i8] c"_\00" -@.str12447 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12448 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12449 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" -@.str12450 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" -@.str12451 = private unnamed_addr constant [20 x i8] c"define void @scene_\00" -@.str12452 = private unnamed_addr constant [2 x i8] c"_\00" -@.str12453 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" -@.str12454 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str12455 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19700: index out of range: \00" -@.str12456 = private unnamed_addr constant [6 x i8] c"enter\00" -@.str12457 = private unnamed_addr constant [5 x i8] c"exit\00" -@.str12458 = private unnamed_addr constant [39 x i8] c"define void @L_scene_leave() {\0Aentry:\0A\00" -@.str12459 = private unnamed_addr constant [31 x i8] c" %s = load i32, ptr @L_scene\0A\00" -@.str12460 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19718: index out of range: \00" -@.str12461 = private unnamed_addr constant [6 x i8] c" %is\00" -@.str12462 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %s, \00" -@.str12463 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12464 = private unnamed_addr constant [12 x i8] c" br i1 %is\00" -@.str12465 = private unnamed_addr constant [15 x i8] c", label %leave\00" -@.str12466 = private unnamed_addr constant [14 x i8] c", label %next\00" -@.str12467 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12468 = private unnamed_addr constant [6 x i8] c"leave\00" -@.str12469 = private unnamed_addr constant [27 x i8] c":\0A call void @scene_exit_\00" -@.str12470 = private unnamed_addr constant [15 x i8] c"()\0A ret void\0A\00" -@.str12471 = private unnamed_addr constant [5 x i8] c"next\00" -@.str12472 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12473 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str12474 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19736: index out of range: \00" -@.str12475 = private unnamed_addr constant [5 x i8] c"void\00" -@.str12476 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str12477 = private unnamed_addr constant [26 x i8] c" store i32 %reason, ptr \00" -@.str12478 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12479 = private unnamed_addr constant [4 x i8] c"int\00" -@.str12480 = private unnamed_addr constant [3 x i8] c"%e\00" -@.str12481 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" -@.str12482 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" -@.str12483 = private unnamed_addr constant [25 x i8] c"define void @on_despawn_\00" -@.str12484 = private unnamed_addr constant [32 x i8] c"(i32 %e, i32 %reason) {\0Aentry:\0A\00" -@.str12485 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str12486 = private unnamed_addr constant [48 x i8] c"define void @fn_world_despawn(i32 %e) {\0Aentry:\0A\00" -@.str12487 = private unnamed_addr constant [33 x i8] c" %kp = getelementptr inbounds [\00" -@.str12488 = private unnamed_addr constant [37 x i8] c" x i32], ptr @L_kind, i32 0, i32 %e\0A\00" -@.str12489 = private unnamed_addr constant [26 x i8] c" %k = load i32, ptr %kp\0A\00" -@.str12490 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19777: index out of range: \00" -@.str12491 = private unnamed_addr constant [5 x i8] c" %c\00" -@.str12492 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" -@.str12493 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12494 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" -@.str12495 = private unnamed_addr constant [13 x i8] c", label %hit\00" -@.str12496 = private unnamed_addr constant [14 x i8] c", label %next\00" -@.str12497 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12498 = private unnamed_addr constant [4 x i8] c"hit\00" -@.str12499 = private unnamed_addr constant [27 x i8] c":\0A call void @on_despawn_\00" -@.str12500 = private unnamed_addr constant [17 x i8] c"(i32 %e, i32 0)\0A\00" -@.str12501 = private unnamed_addr constant [7 x i8] c"model_\00" -@.str12502 = private unnamed_addr constant [9 x i8] c"_despawn\00" -@.str12503 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12504 = private unnamed_addr constant [17 x i8] c"(i32 %e, i32 0)\0A\00" -@.str12505 = private unnamed_addr constant [17 x i8] c" br label %next\00" -@.str12506 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12507 = private unnamed_addr constant [5 x i8] c"next\00" -@.str12508 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12509 = private unnamed_addr constant [41 x i8] c" call void @ludic_sweep_entity(i32 %e)\0A\00" -@.str12510 = private unnamed_addr constant [36 x i8] c" call void @L_free_entity(i32 %e)\0A\00" -@.str12511 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str12512 = private unnamed_addr constant [67 x i8] c"define void @L_despawn_all(i32 %reason) {\0Aentry:\0A br label %loop\0A\00" -@.str12513 = private unnamed_addr constant [52 x i8] c"loop:\0A %i = phi i32 [ 0, %entry ], [ %i1, %cont ]\0A\00" -@.str12514 = private unnamed_addr constant [58 x i8] c" %n = load i32, ptr @L_entc\0A %go = icmp slt i32 %i, %n\0A\00" -@.str12515 = private unnamed_addr constant [38 x i8] c" br i1 %go, label %body, label %fin\0A\00" -@.str12516 = private unnamed_addr constant [39 x i8] c"body:\0A %ap = getelementptr inbounds [\00" -@.str12517 = private unnamed_addr constant [38 x i8] c" x i32], ptr @L_alive, i32 0, i32 %i\0A\00" -@.str12518 = private unnamed_addr constant [55 x i8] c" %al = load i32, ptr %ap\0A %isa = icmp ne i32 %al, 0\0A\00" -@.str12519 = private unnamed_addr constant [38 x i8] c" br i1 %isa, label %do, label %cont\0A\00" -@.str12520 = private unnamed_addr constant [37 x i8] c"do:\0A %kp = getelementptr inbounds [\00" -@.str12521 = private unnamed_addr constant [37 x i8] c" x i32], ptr @L_kind, i32 0, i32 %i\0A\00" -@.str12522 = private unnamed_addr constant [26 x i8] c" %k = load i32, ptr %kp\0A\00" -@.str12523 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19814: index out of range: \00" -@.str12524 = private unnamed_addr constant [5 x i8] c" %c\00" -@.str12525 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" -@.str12526 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12527 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" -@.str12528 = private unnamed_addr constant [13 x i8] c", label %hit\00" -@.str12529 = private unnamed_addr constant [14 x i8] c", label %next\00" -@.str12530 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12531 = private unnamed_addr constant [4 x i8] c"hit\00" -@.str12532 = private unnamed_addr constant [27 x i8] c":\0A call void @on_despawn_\00" -@.str12533 = private unnamed_addr constant [23 x i8] c"(i32 %i, i32 %reason)\0A\00" -@.str12534 = private unnamed_addr constant [7 x i8] c"model_\00" -@.str12535 = private unnamed_addr constant [9 x i8] c"_despawn\00" -@.str12536 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12537 = private unnamed_addr constant [23 x i8] c"(i32 %i, i32 %reason)\0A\00" -@.str12538 = private unnamed_addr constant [17 x i8] c" br label %next\00" -@.str12539 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12540 = private unnamed_addr constant [5 x i8] c"next\00" -@.str12541 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12542 = private unnamed_addr constant [18 x i8] c" br label %cont\0A\00" -@.str12543 = private unnamed_addr constant [46 x i8] c"cont:\0A %i1 = add i32 %i, 1\0A br label %loop\0A\00" -@.str12544 = private unnamed_addr constant [20 x i8] c"fin:\0A ret void\0A}\0A\0A\00" -@.str12545 = private unnamed_addr constant [26 x i8] c"@ev_depth = global i32 0\0A\00" -@.str12546 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19856: index out of range: \00" -@.str12547 = private unnamed_addr constant [5 x i8] c"%Ev_\00" -@.str12548 = private unnamed_addr constant [11 x i8] c" = type { \00" -@.str12549 = private unnamed_addr constant [3 x i8] c", \00" -@.str12550 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19867: index out of range: \00" -@.str12551 = private unnamed_addr constant [3 x i8] c", \00" -@.str12552 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str12553 = private unnamed_addr constant [4 x i8] c" }\0A\00" -@.str12554 = private unnamed_addr constant [6 x i8] c"@evL_\00" -@.str12555 = private unnamed_addr constant [12 x i8] c" = global [\00" -@.str12556 = private unnamed_addr constant [25 x i8] c" x ptr] zeroinitializer\0A\00" -@.str12557 = private unnamed_addr constant [6 x i8] c"@evN_\00" -@.str12558 = private unnamed_addr constant [17 x i8] c" = global i32 0\0A\00" -@.str12559 = private unnamed_addr constant [6 x i8] c"@evO_\00" -@.str12560 = private unnamed_addr constant [12 x i8] c" = global [\00" -@.str12561 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" -@.str12562 = private unnamed_addr constant [22 x i8] c"define i32 @ludic_on_\00" -@.str12563 = private unnamed_addr constant [20 x i8] c"(ptr %cb) {\0Aentry:\0A\00" -@.str12564 = private unnamed_addr constant [27 x i8] c" %n = load i32, ptr @evN_\00" -@.str12565 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12566 = private unnamed_addr constant [28 x i8] c" %full = icmp slt i32 %n, \00" -@.str12567 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12568 = private unnamed_addr constant [40 x i8] c" br i1 %full, label %add, label %drop\0A\00" -@.str12569 = private unnamed_addr constant [40 x i8] c"add:\0A %slot = getelementptr inbounds [\00" -@.str12570 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" -@.str12571 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" -@.str12572 = private unnamed_addr constant [28 x i8] c" store ptr %cb, ptr %slot\0A\00" -@.str12573 = private unnamed_addr constant [36 x i8] c" %oslot = getelementptr inbounds [\00" -@.str12574 = private unnamed_addr constant [19 x i8] c" x i32], ptr @evO_\00" -@.str12575 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" -@.str12576 = private unnamed_addr constant [28 x i8] c" store i32 -1, ptr %oslot\0A\00" -@.str12577 = private unnamed_addr constant [49 x i8] c" %n1 = add i32 %n, 1\0A store i32 %n1, ptr @evN_\00" -@.str12578 = private unnamed_addr constant [15 x i8] c"\0A ret i32 %n\0A\00" -@.str12579 = private unnamed_addr constant [23 x i8] c"drop:\0A ret i32 -1\0A}\0A\0A\00" -@.str12580 = private unnamed_addr constant [29 x i8] c"define i32 @ludic_on_entity_\00" -@.str12581 = private unnamed_addr constant [32 x i8] c"(i32 %owner, ptr %cb) {\0Aentry:\0A\00" -@.str12582 = private unnamed_addr constant [27 x i8] c" %n = load i32, ptr @evN_\00" -@.str12583 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12584 = private unnamed_addr constant [28 x i8] c" %full = icmp slt i32 %n, \00" -@.str12585 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12586 = private unnamed_addr constant [40 x i8] c" br i1 %full, label %add, label %drop\0A\00" -@.str12587 = private unnamed_addr constant [40 x i8] c"add:\0A %slot = getelementptr inbounds [\00" -@.str12588 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" -@.str12589 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" -@.str12590 = private unnamed_addr constant [28 x i8] c" store ptr %cb, ptr %slot\0A\00" -@.str12591 = private unnamed_addr constant [36 x i8] c" %oslot = getelementptr inbounds [\00" -@.str12592 = private unnamed_addr constant [19 x i8] c" x i32], ptr @evO_\00" -@.str12593 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" -@.str12594 = private unnamed_addr constant [32 x i8] c" store i32 %owner, ptr %oslot\0A\00" -@.str12595 = private unnamed_addr constant [49 x i8] c" %n1 = add i32 %n, 1\0A store i32 %n1, ptr @evN_\00" -@.str12596 = private unnamed_addr constant [15 x i8] c"\0A ret i32 %n\0A\00" -@.str12597 = private unnamed_addr constant [23 x i8] c"drop:\0A ret i32 -1\0A}\0A\0A\00" -@.str12598 = private unnamed_addr constant [24 x i8] c"define void @ludic_off_\00" -@.str12599 = private unnamed_addr constant [21 x i8] c"(i32 %tok) {\0Aentry:\0A\00" -@.str12600 = private unnamed_addr constant [27 x i8] c" %n = load i32, ptr @evN_\00" -@.str12601 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12602 = private unnamed_addr constant [84 x i8] c" %lo = icmp sge i32 %tok, 0\0A %hi = icmp slt i32 %tok, %n\0A %ok = and i1 %lo, %hi\0A\00" -@.str12603 = private unnamed_addr constant [37 x i8] c" br i1 %ok, label %do, label %skip\0A\00" -@.str12604 = private unnamed_addr constant [39 x i8] c"do:\0A %slot = getelementptr inbounds [\00" -@.str12605 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" -@.str12606 = private unnamed_addr constant [19 x i8] c", i32 0, i32 %tok\0A\00" -@.str12607 = private unnamed_addr constant [46 x i8] c" store ptr null, ptr %slot\0A br label %skip\0A\00" -@.str12608 = private unnamed_addr constant [21 x i8] c"skip:\0A ret void\0A}\0A\0A\00" -@.str12609 = private unnamed_addr constant [5 x i8] c"void\00" -@.str12610 = private unnamed_addr constant [34 x i8] c" %evd = load i32, ptr @ev_depth\0A\00" -@.str12611 = private unnamed_addr constant [32 x i8] c" %evover = icmp sge i32 %evd, \00" +@.str12388 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12389 = private unnamed_addr constant [14 x i8] c" ret i32 -1\0A\00" +@.str12390 = private unnamed_addr constant [48 x i8] c"define i32 @L_spawn_prefab(ptr %name) {\0Aentry:\0A\00" +@.str12391 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str12392 = private unnamed_addr constant [6 x i8] c"Input\00" +@.str12393 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" +@.str12394 = private unnamed_addr constant [7 x i8] c"Update\00" +@.str12395 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" +@.str12396 = private unnamed_addr constant [7 x i8] c"Render\00" +@.str12397 = private unnamed_addr constant [6 x i8] c"Start\00" +@.str12398 = private unnamed_addr constant [7 x i8] c"OnQuit\00" +@.str12399 = private unnamed_addr constant [8 x i8] c"Overlay\00" +@.str12400 = private unnamed_addr constant [16 x i8] c"unknown phase '\00" +@.str12401 = private unnamed_addr constant [2 x i8] c"'\00" +@.str12402 = private unnamed_addr constant [6 x i8] c"Start\00" +@.str12403 = private unnamed_addr constant [6 x i8] c"Input\00" +@.str12404 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" +@.str12405 = private unnamed_addr constant [7 x i8] c"Update\00" +@.str12406 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" +@.str12407 = private unnamed_addr constant [7 x i8] c"Render\00" +@.str12408 = private unnamed_addr constant [8 x i8] c"Overlay\00" +@.str12409 = private unnamed_addr constant [44 x i8] c"declare i32 @ludic_register_prop(ptr, i32)\0A\00" +@.str12410 = private unnamed_addr constant [46 x i8] c"declare i32 @ludic_register_system(ptr, i32)\0A\00" +@.str12411 = private unnamed_addr constant [39 x i8] c"declare i64 @ludic_get(i32, i32, i32)\0A\00" +@.str12412 = private unnamed_addr constant [45 x i8] c"declare void @ludic_set(i32, i32, i32, i64)\0A\00" +@.str12413 = private unnamed_addr constant [34 x i8] c"declare i32 @ludic_has(i32, i32)\0A\00" +@.str12414 = private unnamed_addr constant [42 x i8] c"declare void @ludic_attach_dyn(i32, i32)\0A\00" +@.str12415 = private unnamed_addr constant [42 x i8] c"declare void @ludic_detach_dyn(i32, i32)\0A\00" +@.str12416 = private unnamed_addr constant [33 x i8] c"declare i32 @ludic_prop_id(ptr)\0A\00" +@.str12417 = private unnamed_addr constant [39 x i8] c"declare i32 @ludic_field_id(i32, ptr)\0A\00" +@.str12418 = private unnamed_addr constant [35 x i8] c"declare i32 @ludic_entity_count()\0A\00" +@.str12419 = private unnamed_addr constant [30 x i8] c"declare i32 @ludic_kind(i32)\0A\00" +@.str12420 = private unnamed_addr constant [34 x i8] c"declare i32 @ludic_model_id(ptr)\0A\00" +@.str12421 = private unnamed_addr constant [31 x i8] c"declare i32 @ludic_spawn(i32)\0A\00" +@.str12422 = private unnamed_addr constant [41 x i8] c"declare i32 @ludic_query_next(i32, i32)\0A\00" +@.str12423 = private unnamed_addr constant [33 x i8] c"declare i32 @ludic_prop_count()\0A\00" +@.str12424 = private unnamed_addr constant [35 x i8] c"declare ptr @ludic_prop_name(i32)\0A\00" +@.str12425 = private unnamed_addr constant [37 x i8] c"declare i32 @ludic_field_count(i32)\0A\00" +@.str12426 = private unnamed_addr constant [41 x i8] c"declare ptr @ludic_field_name(i32, i32)\0A\00" +@.str12427 = private unnamed_addr constant [41 x i8] c"declare ptr @ludic_field_type(i32, i32)\0A\00" +@.str12428 = private unnamed_addr constant [42 x i8] c"define void @__ludic_mod_init() {\0Aentry:\0A\00" +@.str12429 = private unnamed_addr constant [12 x i8] c"module_init\00" +@.str12430 = private unnamed_addr constant [31 x i8] c" call void @fn_module_init()\0A\00" +@.str12431 = private unnamed_addr constant [43 x i8] c" call i32 @ludic_register_system(ptr @fn_\00" +@.str12432 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19666: index out of range: \00" +@.str12433 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12434 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19666: index out of range: \00" +@.str12435 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12436 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str12437 = private unnamed_addr constant [130 x i8] c"@llvm.global_ctors = appending global [1 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 65535, ptr @__ludic_mod_init, ptr null }]\0A\00" +@.str12438 = private unnamed_addr constant [22 x i8] c"@sysreg_fn = global [\00" +@.str12439 = private unnamed_addr constant [25 x i8] c" x ptr] zeroinitializer\0A\00" +@.str12440 = private unnamed_addr constant [25 x i8] c"@sysreg_phase = global [\00" +@.str12441 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" +@.str12442 = private unnamed_addr constant [30 x i8] c"@sysreg_count = global i32 0\0A\00" +@.str12443 = private unnamed_addr constant [65 x i8] c"define i32 @ludic_register_system(ptr %fn, i32 %phase) {\0Aentry:\0A\00" +@.str12444 = private unnamed_addr constant [36 x i8] c" %n = load i32, ptr @sysreg_count\0A\00" +@.str12445 = private unnamed_addr constant [26 x i8] c" %ok = icmp slt i32 %n, \00" +@.str12446 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12447 = private unnamed_addr constant [38 x i8] c" br i1 %ok, label %add, label %drop\0A\00" +@.str12448 = private unnamed_addr constant [6 x i8] c"add:\0A\00" +@.str12449 = private unnamed_addr constant [33 x i8] c" %fp = getelementptr inbounds [\00" +@.str12450 = private unnamed_addr constant [40 x i8] c" x ptr], ptr @sysreg_fn, i32 0, i32 %n\0A\00" +@.str12451 = private unnamed_addr constant [26 x i8] c" store ptr %fn, ptr %fp\0A\00" +@.str12452 = private unnamed_addr constant [33 x i8] c" %pp = getelementptr inbounds [\00" +@.str12453 = private unnamed_addr constant [43 x i8] c" x i32], ptr @sysreg_phase, i32 0, i32 %n\0A\00" +@.str12454 = private unnamed_addr constant [29 x i8] c" store i32 %phase, ptr %pp\0A\00" +@.str12455 = private unnamed_addr constant [71 x i8] c" %n1 = add i32 %n, 1\0A store i32 %n1, ptr @sysreg_count\0A ret i32 %n\0A\00" +@.str12456 = private unnamed_addr constant [23 x i8] c"drop:\0A ret i32 -1\0A}\0A\0A\00" +@.str12457 = private unnamed_addr constant [4 x i8] c"dsp\00" +@.str12458 = private unnamed_addr constant [4 x i8] c"dsh\00" +@.str12459 = private unnamed_addr constant [4 x i8] c"dsb\00" +@.str12460 = private unnamed_addr constant [5 x i8] c"dsdo\00" +@.str12461 = private unnamed_addr constant [4 x i8] c"dsc\00" +@.str12462 = private unnamed_addr constant [4 x i8] c"dsn\00" +@.str12463 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12464 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12465 = private unnamed_addr constant [15 x i8] c":\0A br label %\00" +@.str12466 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12467 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12468 = private unnamed_addr constant [3 x i8] c" \00" +@.str12469 = private unnamed_addr constant [18 x i8] c" = phi i32 [ 0, %\00" +@.str12470 = private unnamed_addr constant [7 x i8] c" ], [ \00" +@.str12471 = private unnamed_addr constant [4 x i8] c", %\00" +@.str12472 = private unnamed_addr constant [4 x i8] c" ]\0A\00" +@.str12473 = private unnamed_addr constant [28 x i8] c"load i32, ptr @sysreg_count\00" +@.str12474 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" +@.str12475 = private unnamed_addr constant [3 x i8] c", \00" +@.str12476 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12477 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12478 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12479 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12480 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12481 = private unnamed_addr constant [3 x i8] c" \00" +@.str12482 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" +@.str12483 = private unnamed_addr constant [40 x i8] c" x i32], ptr @sysreg_phase, i32 0, i32 \00" +@.str12484 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12485 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str12486 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str12487 = private unnamed_addr constant [3 x i8] c", \00" +@.str12488 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12489 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12490 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12491 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12492 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12493 = private unnamed_addr constant [3 x i8] c" \00" +@.str12494 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" +@.str12495 = private unnamed_addr constant [37 x i8] c" x ptr], ptr @sysreg_fn, i32 0, i32 \00" +@.str12496 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12497 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" +@.str12498 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12499 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12500 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12501 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12502 = private unnamed_addr constant [5 x i8] c":\0A \00" +@.str12503 = private unnamed_addr constant [12 x i8] c" = add i32 \00" +@.str12504 = private unnamed_addr constant [17 x i8] c", 1\0A br label %\00" +@.str12505 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12506 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12507 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19726: index out of range: \00" +@.str12508 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19733: index out of range: \00" +@.str12509 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_scene\00" +@.str12510 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19738: index out of range: \00" +@.str12511 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str12512 = private unnamed_addr constant [3 x i8] c", \00" +@.str12513 = private unnamed_addr constant [6 x i8] c"scrun\00" +@.str12514 = private unnamed_addr constant [7 x i8] c"scskip\00" +@.str12515 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12516 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12517 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12518 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12519 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12520 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12521 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12522 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12523 = private unnamed_addr constant [8 x i8] c"Overlay\00" +@.str12524 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12525 = private unnamed_addr constant [14 x i8] c"drain_actions\00" +@.str12526 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12527 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19760: index out of range: \00" +@.str12528 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_scene\00" +@.str12529 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19765: index out of range: \00" +@.str12530 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str12531 = private unnamed_addr constant [3 x i8] c", \00" +@.str12532 = private unnamed_addr constant [5 x i8] c"mrun\00" +@.str12533 = private unnamed_addr constant [6 x i8] c"mskip\00" +@.str12534 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12535 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12536 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12537 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12538 = private unnamed_addr constant [15 x i8] c":\0A call void \00" +@.str12539 = private unnamed_addr constant [13 x i8] c"rt_ui_render\00" +@.str12540 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12541 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12542 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12543 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12544 = private unnamed_addr constant [5 x i8] c"void\00" +@.str12545 = private unnamed_addr constant [6 x i8] c"enter\00" +@.str12546 = private unnamed_addr constant [18 x i8] c"input_cursor_mode\00" +@.str12547 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12548 = private unnamed_addr constant [18 x i8] c"input_cursor_mode\00" +@.str12549 = private unnamed_addr constant [9 x i8] c"(i32 0)\0A\00" +@.str12550 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12551 = private unnamed_addr constant [11 x i8] c"rt_ui_open\00" +@.str12552 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str12553 = private unnamed_addr constant [4 x i8] c"UI_\00" +@.str12554 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12555 = private unnamed_addr constant [5 x i8] c"exit\00" +@.str12556 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12557 = private unnamed_addr constant [12 x i8] c"rt_ui_close\00" +@.str12558 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12559 = private unnamed_addr constant [7 x i8] c"scene_\00" +@.str12560 = private unnamed_addr constant [2 x i8] c"_\00" +@.str12561 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12562 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12563 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" +@.str12564 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" +@.str12565 = private unnamed_addr constant [20 x i8] c"define void @scene_\00" +@.str12566 = private unnamed_addr constant [2 x i8] c"_\00" +@.str12567 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" +@.str12568 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str12569 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19809: index out of range: \00" +@.str12570 = private unnamed_addr constant [6 x i8] c"enter\00" +@.str12571 = private unnamed_addr constant [5 x i8] c"exit\00" +@.str12572 = private unnamed_addr constant [39 x i8] c"define void @L_scene_leave() {\0Aentry:\0A\00" +@.str12573 = private unnamed_addr constant [31 x i8] c" %s = load i32, ptr @L_scene\0A\00" +@.str12574 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19827: index out of range: \00" +@.str12575 = private unnamed_addr constant [6 x i8] c" %is\00" +@.str12576 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %s, \00" +@.str12577 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12578 = private unnamed_addr constant [12 x i8] c" br i1 %is\00" +@.str12579 = private unnamed_addr constant [15 x i8] c", label %leave\00" +@.str12580 = private unnamed_addr constant [14 x i8] c", label %next\00" +@.str12581 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12582 = private unnamed_addr constant [6 x i8] c"leave\00" +@.str12583 = private unnamed_addr constant [27 x i8] c":\0A call void @scene_exit_\00" +@.str12584 = private unnamed_addr constant [15 x i8] c"()\0A ret void\0A\00" +@.str12585 = private unnamed_addr constant [5 x i8] c"next\00" +@.str12586 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12587 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str12588 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19845: index out of range: \00" +@.str12589 = private unnamed_addr constant [5 x i8] c"void\00" +@.str12590 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str12591 = private unnamed_addr constant [26 x i8] c" store i32 %reason, ptr \00" +@.str12592 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12593 = private unnamed_addr constant [4 x i8] c"int\00" +@.str12594 = private unnamed_addr constant [3 x i8] c"%e\00" +@.str12595 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" +@.str12596 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" +@.str12597 = private unnamed_addr constant [25 x i8] c"define void @on_despawn_\00" +@.str12598 = private unnamed_addr constant [32 x i8] c"(i32 %e, i32 %reason) {\0Aentry:\0A\00" +@.str12599 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str12600 = private unnamed_addr constant [48 x i8] c"define void @fn_world_despawn(i32 %e) {\0Aentry:\0A\00" +@.str12601 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str12602 = private unnamed_addr constant [41 x i8] c" %kp = getelementptr inbounds i32, ptr \00" +@.str12603 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str12604 = private unnamed_addr constant [26 x i8] c" %k = load i32, ptr %kp\0A\00" +@.str12605 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19887: index out of range: \00" +@.str12606 = private unnamed_addr constant [5 x i8] c" %c\00" +@.str12607 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" +@.str12608 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12609 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" +@.str12610 = private unnamed_addr constant [13 x i8] c", label %hit\00" +@.str12611 = private unnamed_addr constant [14 x i8] c", label %next\00" @.str12612 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12613 = private unnamed_addr constant [44 x i8] c" br i1 %evover, label %evcap, label %evgo\0A\00" -@.str12614 = private unnamed_addr constant [8 x i8] c"evcap:\0A\00" -@.str12615 = private unnamed_addr constant [13 x i8] c" ret i32 0\0A\00" -@.str12616 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" -@.str12617 = private unnamed_addr constant [7 x i8] c"evgo:\0A\00" -@.str12618 = private unnamed_addr constant [60 x i8] c" %evd1 = add i32 %evd, 1\0A store i32 %evd1, ptr @ev_depth\0A\00" -@.str12619 = private unnamed_addr constant [5 x i8] c"%Ev_\00" -@.str12620 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19933: index out of range: \00" -@.str12621 = private unnamed_addr constant [3 x i8] c" \00" -@.str12622 = private unnamed_addr constant [31 x i8] c" = getelementptr inbounds %Ev_\00" -@.str12623 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12624 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12625 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12626 = private unnamed_addr constant [9 x i8] c" store \00" -@.str12627 = private unnamed_addr constant [4 x i8] c" %p\00" -@.str12628 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12629 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12630 = private unnamed_addr constant [9 x i8] c" store \00" -@.str12631 = private unnamed_addr constant [4 x i8] c" %p\00" -@.str12632 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12633 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12634 = private unnamed_addr constant [3 x i8] c" \00" -@.str12635 = private unnamed_addr constant [31 x i8] c" = getelementptr inbounds %Ev_\00" -@.str12636 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12637 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12638 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12639 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" -@.str12640 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12641 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19952: index out of range: \00" -@.str12642 = private unnamed_addr constant [7 x i8] c"evnext\00" -@.str12643 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19958: index out of range: \00" -@.str12644 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19960: index out of range: \00" -@.str12645 = private unnamed_addr constant [4 x i8] c"ret\00" -@.str12646 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12647 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12648 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12649 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str12650 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" -@.str12651 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12652 = private unnamed_addr constant [4 x i8] c"evl\00" -@.str12653 = private unnamed_addr constant [4 x i8] c"evb\00" -@.str12654 = private unnamed_addr constant [4 x i8] c"evd\00" -@.str12655 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12656 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12657 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12658 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str12659 = private unnamed_addr constant [20 x i8] c"load i32, ptr @evN_\00" -@.str12660 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" -@.str12661 = private unnamed_addr constant [3 x i8] c", \00" -@.str12662 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12663 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12664 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12665 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12666 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12667 = private unnamed_addr constant [3 x i8] c" \00" -@.str12668 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12669 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" -@.str12670 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12671 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12672 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" -@.str12673 = private unnamed_addr constant [13 x i8] c"icmp eq ptr \00" -@.str12674 = private unnamed_addr constant [7 x i8] c", null\00" -@.str12675 = private unnamed_addr constant [5 x i8] c"evdo\00" -@.str12676 = private unnamed_addr constant [5 x i8] c"evsk\00" -@.str12677 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12678 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12679 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12680 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12681 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12682 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12683 = private unnamed_addr constant [6 x i8] c"(ptr \00" -@.str12684 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12685 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12613 = private unnamed_addr constant [4 x i8] c"hit\00" +@.str12614 = private unnamed_addr constant [27 x i8] c":\0A call void @on_despawn_\00" +@.str12615 = private unnamed_addr constant [17 x i8] c"(i32 %e, i32 0)\0A\00" +@.str12616 = private unnamed_addr constant [7 x i8] c"model_\00" +@.str12617 = private unnamed_addr constant [9 x i8] c"_despawn\00" +@.str12618 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12619 = private unnamed_addr constant [17 x i8] c"(i32 %e, i32 0)\0A\00" +@.str12620 = private unnamed_addr constant [17 x i8] c" br label %next\00" +@.str12621 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12622 = private unnamed_addr constant [5 x i8] c"next\00" +@.str12623 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12624 = private unnamed_addr constant [41 x i8] c" call void @ludic_sweep_entity(i32 %e)\0A\00" +@.str12625 = private unnamed_addr constant [36 x i8] c" call void @L_free_entity(i32 %e)\0A\00" +@.str12626 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str12627 = private unnamed_addr constant [67 x i8] c"define void @L_despawn_all(i32 %reason) {\0Aentry:\0A br label %loop\0A\00" +@.str12628 = private unnamed_addr constant [52 x i8] c"loop:\0A %i = phi i32 [ 0, %entry ], [ %i1, %cont ]\0A\00" +@.str12629 = private unnamed_addr constant [58 x i8] c" %n = load i32, ptr @L_entc\0A %go = icmp slt i32 %i, %n\0A\00" +@.str12630 = private unnamed_addr constant [38 x i8] c" br i1 %go, label %body, label %fin\0A\00" +@.str12631 = private unnamed_addr constant [7 x i8] c"body:\0A\00" +@.str12632 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str12633 = private unnamed_addr constant [41 x i8] c" %ap = getelementptr inbounds i32, ptr \00" +@.str12634 = private unnamed_addr constant [10 x i8] c", i32 %i\0A\00" +@.str12635 = private unnamed_addr constant [55 x i8] c" %al = load i32, ptr %ap\0A %isa = icmp ne i32 %al, 0\0A\00" +@.str12636 = private unnamed_addr constant [38 x i8] c" br i1 %isa, label %do, label %cont\0A\00" +@.str12637 = private unnamed_addr constant [5 x i8] c"do:\0A\00" +@.str12638 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str12639 = private unnamed_addr constant [41 x i8] c" %kp = getelementptr inbounds i32, ptr \00" +@.str12640 = private unnamed_addr constant [10 x i8] c", i32 %i\0A\00" +@.str12641 = private unnamed_addr constant [26 x i8] c" %k = load i32, ptr %kp\0A\00" +@.str12642 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19928: index out of range: \00" +@.str12643 = private unnamed_addr constant [5 x i8] c" %c\00" +@.str12644 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" +@.str12645 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12646 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" +@.str12647 = private unnamed_addr constant [13 x i8] c", label %hit\00" +@.str12648 = private unnamed_addr constant [14 x i8] c", label %next\00" +@.str12649 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12650 = private unnamed_addr constant [4 x i8] c"hit\00" +@.str12651 = private unnamed_addr constant [27 x i8] c":\0A call void @on_despawn_\00" +@.str12652 = private unnamed_addr constant [23 x i8] c"(i32 %i, i32 %reason)\0A\00" +@.str12653 = private unnamed_addr constant [7 x i8] c"model_\00" +@.str12654 = private unnamed_addr constant [9 x i8] c"_despawn\00" +@.str12655 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12656 = private unnamed_addr constant [23 x i8] c"(i32 %i, i32 %reason)\0A\00" +@.str12657 = private unnamed_addr constant [17 x i8] c" br label %next\00" +@.str12658 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12659 = private unnamed_addr constant [5 x i8] c"next\00" +@.str12660 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12661 = private unnamed_addr constant [18 x i8] c" br label %cont\0A\00" +@.str12662 = private unnamed_addr constant [46 x i8] c"cont:\0A %i1 = add i32 %i, 1\0A br label %loop\0A\00" +@.str12663 = private unnamed_addr constant [20 x i8] c"fin:\0A ret void\0A}\0A\0A\00" +@.str12664 = private unnamed_addr constant [26 x i8] c"@ev_depth = global i32 0\0A\00" +@.str12665 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19970: index out of range: \00" +@.str12666 = private unnamed_addr constant [5 x i8] c"%Ev_\00" +@.str12667 = private unnamed_addr constant [11 x i8] c" = type { \00" +@.str12668 = private unnamed_addr constant [3 x i8] c", \00" +@.str12669 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19981: index out of range: \00" +@.str12670 = private unnamed_addr constant [3 x i8] c", \00" +@.str12671 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str12672 = private unnamed_addr constant [4 x i8] c" }\0A\00" +@.str12673 = private unnamed_addr constant [6 x i8] c"@evL_\00" +@.str12674 = private unnamed_addr constant [12 x i8] c" = global [\00" +@.str12675 = private unnamed_addr constant [25 x i8] c" x ptr] zeroinitializer\0A\00" +@.str12676 = private unnamed_addr constant [6 x i8] c"@evN_\00" +@.str12677 = private unnamed_addr constant [17 x i8] c" = global i32 0\0A\00" +@.str12678 = private unnamed_addr constant [6 x i8] c"@evO_\00" +@.str12679 = private unnamed_addr constant [12 x i8] c" = global [\00" +@.str12680 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" +@.str12681 = private unnamed_addr constant [22 x i8] c"define i32 @ludic_on_\00" +@.str12682 = private unnamed_addr constant [20 x i8] c"(ptr %cb) {\0Aentry:\0A\00" +@.str12683 = private unnamed_addr constant [27 x i8] c" %n = load i32, ptr @evN_\00" +@.str12684 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12685 = private unnamed_addr constant [28 x i8] c" %full = icmp slt i32 %n, \00" @.str12686 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12687 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12688 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str12689 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str12690 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str12691 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12692 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12693 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12694 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12695 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12696 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" -@.str12697 = private unnamed_addr constant [6 x i8] c"ret:\0A\00" -@.str12698 = private unnamed_addr constant [97 x i8] c" %evdd = load i32, ptr @ev_depth\0A %evdd1 = sub i32 %evdd, 1\0A store i32 %evdd1, ptr @ev_depth\0A\00" -@.str12699 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str12700 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str12701 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12702 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" -@.str12703 = private unnamed_addr constant [5 x i8] c"void\00" -@.str12704 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str12705 = private unnamed_addr constant [8 x i8] c"define \00" -@.str12706 = private unnamed_addr constant [6 x i8] c" @ev_\00" -@.str12707 = private unnamed_addr constant [2 x i8] c"(\00" -@.str12708 = private unnamed_addr constant [3 x i8] c", \00" -@.str12709 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20007: index out of range: \00" -@.str12710 = private unnamed_addr constant [4 x i8] c" %p\00" -@.str12711 = private unnamed_addr constant [12 x i8] c") {\0Aentry:\0A\00" -@.str12712 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str12713 = private unnamed_addr constant [112 x i8] c"define void @ludic_sweep_entity(i32 %owner) {\0Aentry:\0A %ci = alloca i32\0A store i32 0, ptr %ci\0A br label %sw0\0A\00" -@.str12714 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20024: index out of range: \00" -@.str12715 = private unnamed_addr constant [3 x i8] c"sw\00" -@.str12716 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12717 = private unnamed_addr constant [7 x i8] c" %swi\00" -@.str12718 = private unnamed_addr constant [22 x i8] c" = load i32, ptr %ci\0A\00" -@.str12719 = private unnamed_addr constant [7 x i8] c" %swn\00" -@.str12720 = private unnamed_addr constant [23 x i8] c" = load i32, ptr @evN_\00" -@.str12721 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12722 = private unnamed_addr constant [7 x i8] c" %swg\00" -@.str12723 = private unnamed_addr constant [21 x i8] c" = icmp slt i32 %swi\00" -@.str12724 = private unnamed_addr constant [7 x i8] c", %swn\00" -@.str12725 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12726 = private unnamed_addr constant [13 x i8] c" br i1 %swg\00" -@.str12727 = private unnamed_addr constant [13 x i8] c", label %swb\00" -@.str12728 = private unnamed_addr constant [13 x i8] c", label %swd\00" -@.str12729 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12730 = private unnamed_addr constant [4 x i8] c"swb\00" -@.str12731 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12732 = private unnamed_addr constant [8 x i8] c" %swop\00" -@.str12733 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12734 = private unnamed_addr constant [19 x i8] c" x i32], ptr @evO_\00" -@.str12735 = private unnamed_addr constant [18 x i8] c", i32 0, i32 %swi\00" -@.str12736 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12737 = private unnamed_addr constant [8 x i8] c" %swov\00" -@.str12738 = private unnamed_addr constant [23 x i8] c" = load i32, ptr %swop\00" -@.str12739 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12740 = private unnamed_addr constant [7 x i8] c" %swm\00" -@.str12741 = private unnamed_addr constant [21 x i8] c" = icmp eq i32 %swov\00" -@.str12742 = private unnamed_addr constant [10 x i8] c", %owner\0A\00" -@.str12743 = private unnamed_addr constant [13 x i8] c" br i1 %swm\00" -@.str12744 = private unnamed_addr constant [13 x i8] c", label %swh\00" -@.str12745 = private unnamed_addr constant [13 x i8] c", label %swx\00" -@.str12746 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12747 = private unnamed_addr constant [4 x i8] c"swh\00" -@.str12748 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12749 = private unnamed_addr constant [8 x i8] c" %swlp\00" -@.str12750 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12751 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" -@.str12752 = private unnamed_addr constant [18 x i8] c", i32 0, i32 %swi\00" +@.str12687 = private unnamed_addr constant [40 x i8] c" br i1 %full, label %add, label %drop\0A\00" +@.str12688 = private unnamed_addr constant [40 x i8] c"add:\0A %slot = getelementptr inbounds [\00" +@.str12689 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" +@.str12690 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" +@.str12691 = private unnamed_addr constant [28 x i8] c" store ptr %cb, ptr %slot\0A\00" +@.str12692 = private unnamed_addr constant [36 x i8] c" %oslot = getelementptr inbounds [\00" +@.str12693 = private unnamed_addr constant [19 x i8] c" x i32], ptr @evO_\00" +@.str12694 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" +@.str12695 = private unnamed_addr constant [28 x i8] c" store i32 -1, ptr %oslot\0A\00" +@.str12696 = private unnamed_addr constant [49 x i8] c" %n1 = add i32 %n, 1\0A store i32 %n1, ptr @evN_\00" +@.str12697 = private unnamed_addr constant [15 x i8] c"\0A ret i32 %n\0A\00" +@.str12698 = private unnamed_addr constant [23 x i8] c"drop:\0A ret i32 -1\0A}\0A\0A\00" +@.str12699 = private unnamed_addr constant [29 x i8] c"define i32 @ludic_on_entity_\00" +@.str12700 = private unnamed_addr constant [32 x i8] c"(i32 %owner, ptr %cb) {\0Aentry:\0A\00" +@.str12701 = private unnamed_addr constant [27 x i8] c" %n = load i32, ptr @evN_\00" +@.str12702 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12703 = private unnamed_addr constant [28 x i8] c" %full = icmp slt i32 %n, \00" +@.str12704 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12705 = private unnamed_addr constant [40 x i8] c" br i1 %full, label %add, label %drop\0A\00" +@.str12706 = private unnamed_addr constant [40 x i8] c"add:\0A %slot = getelementptr inbounds [\00" +@.str12707 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" +@.str12708 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" +@.str12709 = private unnamed_addr constant [28 x i8] c" store ptr %cb, ptr %slot\0A\00" +@.str12710 = private unnamed_addr constant [36 x i8] c" %oslot = getelementptr inbounds [\00" +@.str12711 = private unnamed_addr constant [19 x i8] c" x i32], ptr @evO_\00" +@.str12712 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" +@.str12713 = private unnamed_addr constant [32 x i8] c" store i32 %owner, ptr %oslot\0A\00" +@.str12714 = private unnamed_addr constant [49 x i8] c" %n1 = add i32 %n, 1\0A store i32 %n1, ptr @evN_\00" +@.str12715 = private unnamed_addr constant [15 x i8] c"\0A ret i32 %n\0A\00" +@.str12716 = private unnamed_addr constant [23 x i8] c"drop:\0A ret i32 -1\0A}\0A\0A\00" +@.str12717 = private unnamed_addr constant [24 x i8] c"define void @ludic_off_\00" +@.str12718 = private unnamed_addr constant [21 x i8] c"(i32 %tok) {\0Aentry:\0A\00" +@.str12719 = private unnamed_addr constant [27 x i8] c" %n = load i32, ptr @evN_\00" +@.str12720 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12721 = private unnamed_addr constant [84 x i8] c" %lo = icmp sge i32 %tok, 0\0A %hi = icmp slt i32 %tok, %n\0A %ok = and i1 %lo, %hi\0A\00" +@.str12722 = private unnamed_addr constant [37 x i8] c" br i1 %ok, label %do, label %skip\0A\00" +@.str12723 = private unnamed_addr constant [5 x i8] c"do:\0A\00" +@.str12724 = private unnamed_addr constant [35 x i8] c" %slot = getelementptr inbounds [\00" +@.str12725 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" +@.str12726 = private unnamed_addr constant [19 x i8] c", i32 0, i32 %tok\0A\00" +@.str12727 = private unnamed_addr constant [46 x i8] c" store ptr null, ptr %slot\0A br label %skip\0A\00" +@.str12728 = private unnamed_addr constant [21 x i8] c"skip:\0A ret void\0A}\0A\0A\00" +@.str12729 = private unnamed_addr constant [5 x i8] c"void\00" +@.str12730 = private unnamed_addr constant [34 x i8] c" %evd = load i32, ptr @ev_depth\0A\00" +@.str12731 = private unnamed_addr constant [32 x i8] c" %evover = icmp sge i32 %evd, \00" +@.str12732 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12733 = private unnamed_addr constant [44 x i8] c" br i1 %evover, label %evcap, label %evgo\0A\00" +@.str12734 = private unnamed_addr constant [8 x i8] c"evcap:\0A\00" +@.str12735 = private unnamed_addr constant [13 x i8] c" ret i32 0\0A\00" +@.str12736 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" +@.str12737 = private unnamed_addr constant [7 x i8] c"evgo:\0A\00" +@.str12738 = private unnamed_addr constant [60 x i8] c" %evd1 = add i32 %evd, 1\0A store i32 %evd1, ptr @ev_depth\0A\00" +@.str12739 = private unnamed_addr constant [5 x i8] c"%Ev_\00" +@.str12740 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20048: index out of range: \00" +@.str12741 = private unnamed_addr constant [3 x i8] c" \00" +@.str12742 = private unnamed_addr constant [31 x i8] c" = getelementptr inbounds %Ev_\00" +@.str12743 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12744 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str12745 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12746 = private unnamed_addr constant [9 x i8] c" store \00" +@.str12747 = private unnamed_addr constant [4 x i8] c" %p\00" +@.str12748 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12749 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12750 = private unnamed_addr constant [9 x i8] c" store \00" +@.str12751 = private unnamed_addr constant [4 x i8] c" %p\00" +@.str12752 = private unnamed_addr constant [7 x i8] c", ptr \00" @.str12753 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12754 = private unnamed_addr constant [28 x i8] c" store ptr null, ptr %swlp\00" -@.str12755 = private unnamed_addr constant [17 x i8] c"\0A br label %swx\00" -@.str12756 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12757 = private unnamed_addr constant [4 x i8] c"swx\00" -@.str12758 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12759 = private unnamed_addr constant [9 x i8] c" %swinc\00" -@.str12760 = private unnamed_addr constant [16 x i8] c" = add i32 %swi\00" -@.str12761 = private unnamed_addr constant [23 x i8] c", 1\0A store i32 %swinc\00" -@.str12762 = private unnamed_addr constant [25 x i8] c", ptr %ci\0A br label %sw\00" -@.str12763 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12764 = private unnamed_addr constant [4 x i8] c"swd\00" -@.str12765 = private unnamed_addr constant [26 x i8] c":\0A store i32 0, ptr %ci\0A\00" -@.str12766 = private unnamed_addr constant [15 x i8] c" br label %sw\00" +@.str12754 = private unnamed_addr constant [3 x i8] c" \00" +@.str12755 = private unnamed_addr constant [31 x i8] c" = getelementptr inbounds %Ev_\00" +@.str12756 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12757 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str12758 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12759 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" +@.str12760 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12761 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20067: index out of range: \00" +@.str12762 = private unnamed_addr constant [7 x i8] c"evnext\00" +@.str12763 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20073: index out of range: \00" +@.str12764 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20075: index out of range: \00" +@.str12765 = private unnamed_addr constant [4 x i8] c"ret\00" +@.str12766 = private unnamed_addr constant [13 x i8] c" br label %\00" @.str12767 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12768 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" -@.str12769 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str12770 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20073: index out of range: \00" -@.str12771 = private unnamed_addr constant [27 x i8] c"@dyn_count = global i32 0\0A\00" -@.str12772 = private unnamed_addr constant [43 x i8] c"@dynS = global [32 x ptr] zeroinitializer\0A\00" -@.str12773 = private unnamed_addr constant [43 x i8] c"@dynH = global [32 x ptr] zeroinitializer\0A\00" -@.str12774 = private unnamed_addr constant [43 x i8] c"@dynF = global [32 x i32] zeroinitializer\0A\00" -@.str12775 = private unnamed_addr constant [46 x i8] c"@dynName = global [32 x ptr] zeroinitializer\0A\00" -@.str12776 = private unnamed_addr constant [47 x i8] c"define i32 @ludic_prop_id(ptr %name) {\0Aentry:\0A\00" -@.str12777 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20086: index out of range: \00" -@.str12778 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20087: index out of range: \00" -@.str12779 = private unnamed_addr constant [5 x i8] c" %c\00" -@.str12780 = private unnamed_addr constant [36 x i8] c" = call i32 @strcmp(ptr %name, ptr \00" -@.str12781 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12782 = private unnamed_addr constant [5 x i8] c" %e\00" -@.str12783 = private unnamed_addr constant [18 x i8] c" = icmp eq i32 %c\00" -@.str12784 = private unnamed_addr constant [5 x i8] c", 0\0A\00" -@.str12785 = private unnamed_addr constant [11 x i8] c" br i1 %e\00" -@.str12786 = private unnamed_addr constant [11 x i8] c", label %h\00" -@.str12787 = private unnamed_addr constant [11 x i8] c", label %n\00" -@.str12788 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12789 = private unnamed_addr constant [2 x i8] c"h\00" -@.str12790 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" +@.str12768 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12769 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str12770 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" +@.str12771 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12772 = private unnamed_addr constant [4 x i8] c"evl\00" +@.str12773 = private unnamed_addr constant [4 x i8] c"evb\00" +@.str12774 = private unnamed_addr constant [4 x i8] c"evd\00" +@.str12775 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12776 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12777 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12778 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str12779 = private unnamed_addr constant [20 x i8] c"load i32, ptr @evN_\00" +@.str12780 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" +@.str12781 = private unnamed_addr constant [3 x i8] c", \00" +@.str12782 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12783 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12784 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12785 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12786 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12787 = private unnamed_addr constant [3 x i8] c" \00" +@.str12788 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" +@.str12789 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" +@.str12790 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" @.str12791 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12792 = private unnamed_addr constant [2 x i8] c"n\00" -@.str12793 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12794 = private unnamed_addr constant [61 x i8] c" %dpi = alloca i32\0A store i32 0, ptr %dpi\0A br label %dpl\0A\00" -@.str12795 = private unnamed_addr constant [135 x i8] c"dpl:\0A %di = load i32, ptr %dpi\0A %dn = load i32, ptr @dyn_count\0A %dg = icmp slt i32 %di, %dn\0A br i1 %dg, label %dpb, label %dpnone\0A\00" -@.str12796 = private unnamed_addr constant [231 x i8] c"dpb:\0A %dnp = getelementptr inbounds [32 x ptr], ptr @dynName, i32 0, i32 %di\0A %dname = load ptr, ptr %dnp\0A %dcmp = call i32 @strcmp(ptr %name, ptr %dname)\0A %deq = icmp eq i32 %dcmp, 0\0A br i1 %deq, label %dphit, label %dpnext\0A\00" -@.str12797 = private unnamed_addr constant [31 x i8] c"dphit:\0A %drid = add i32 %di, \00" -@.str12798 = private unnamed_addr constant [18 x i8] c"\0A ret i32 %drid\0A\00" -@.str12799 = private unnamed_addr constant [76 x i8] c"dpnext:\0A %di1 = add i32 %di, 1\0A store i32 %di1, ptr %dpi\0A br label %dpl\0A\00" -@.str12800 = private unnamed_addr constant [25 x i8] c"dpnone:\0A ret i32 -1\0A}\0A\0A\00" -@.str12801 = private unnamed_addr constant [56 x i8] c"define i32 @ludic_field_id(i32 %p, ptr %name) {\0Aentry:\0A\00" -@.str12802 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20109: index out of range: \00" -@.str12803 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20110: index out of range: \00" -@.str12804 = private unnamed_addr constant [6 x i8] c" %pm\00" -@.str12805 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str12792 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" +@.str12793 = private unnamed_addr constant [13 x i8] c"icmp eq ptr \00" +@.str12794 = private unnamed_addr constant [7 x i8] c", null\00" +@.str12795 = private unnamed_addr constant [5 x i8] c"evdo\00" +@.str12796 = private unnamed_addr constant [5 x i8] c"evsk\00" +@.str12797 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12798 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12799 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12800 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12801 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12802 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12803 = private unnamed_addr constant [6 x i8] c"(ptr \00" +@.str12804 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12805 = private unnamed_addr constant [13 x i8] c" br label %\00" @.str12806 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12807 = private unnamed_addr constant [12 x i8] c" br i1 %pm\00" -@.str12808 = private unnamed_addr constant [12 x i8] c", label %pk\00" -@.str12809 = private unnamed_addr constant [12 x i8] c", label %pn\00" -@.str12810 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12811 = private unnamed_addr constant [3 x i8] c"pk\00" -@.str12812 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12813 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20116: index out of range: \00" -@.str12814 = private unnamed_addr constant [2 x i8] c"_\00" -@.str12815 = private unnamed_addr constant [6 x i8] c" %fc\00" -@.str12816 = private unnamed_addr constant [36 x i8] c" = call i32 @strcmp(ptr %name, ptr \00" -@.str12817 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12818 = private unnamed_addr constant [6 x i8] c" %fe\00" -@.str12819 = private unnamed_addr constant [19 x i8] c" = icmp eq i32 %fc\00" -@.str12820 = private unnamed_addr constant [5 x i8] c", 0\0A\00" -@.str12821 = private unnamed_addr constant [12 x i8] c" br i1 %fe\00" -@.str12822 = private unnamed_addr constant [12 x i8] c", label %fh\00" -@.str12823 = private unnamed_addr constant [12 x i8] c", label %fn\00" -@.str12824 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12825 = private unnamed_addr constant [3 x i8] c"fh\00" -@.str12826 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" -@.str12827 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12828 = private unnamed_addr constant [3 x i8] c"fn\00" -@.str12829 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12830 = private unnamed_addr constant [14 x i8] c" ret i32 -1\0A\00" -@.str12831 = private unnamed_addr constant [3 x i8] c"pn\00" -@.str12832 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12833 = private unnamed_addr constant [17 x i8] c" ret i32 -1\0A}\0A\0A\00" -@.str12834 = private unnamed_addr constant [56 x i8] c"define i64 @ludic_get(i32 %e, i32 %p, i32 %f) {\0Aentry:\0A\00" -@.str12835 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20141: index out of range: \00" -@.str12836 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20142: index out of range: \00" -@.str12837 = private unnamed_addr constant [5 x i8] c" %m\00" -@.str12838 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" -@.str12839 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12840 = private unnamed_addr constant [11 x i8] c" br i1 %m\00" -@.str12841 = private unnamed_addr constant [11 x i8] c", label %g\00" -@.str12842 = private unnamed_addr constant [12 x i8] c", label %gn\00" -@.str12843 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12844 = private unnamed_addr constant [2 x i8] c"g\00" -@.str12845 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12846 = private unnamed_addr constant [5 x i8] c" %s\00" -@.str12847 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12848 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str12849 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str12850 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %e\0A\00" -@.str12851 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20149: index out of range: \00" -@.str12852 = private unnamed_addr constant [2 x i8] c"_\00" -@.str12853 = private unnamed_addr constant [6 x i8] c" %gm\00" -@.str12854 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" -@.str12855 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12856 = private unnamed_addr constant [12 x i8] c" br i1 %gm\00" -@.str12857 = private unnamed_addr constant [12 x i8] c", label %gf\00" -@.str12858 = private unnamed_addr constant [12 x i8] c", label %gk\00" +@.str12807 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12808 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str12809 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str12810 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str12811 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12812 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12813 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12814 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12815 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12816 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" +@.str12817 = private unnamed_addr constant [6 x i8] c"ret:\0A\00" +@.str12818 = private unnamed_addr constant [97 x i8] c" %evdd = load i32, ptr @ev_depth\0A %evdd1 = sub i32 %evdd, 1\0A store i32 %evdd1, ptr @ev_depth\0A\00" +@.str12819 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str12820 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str12821 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12822 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" +@.str12823 = private unnamed_addr constant [5 x i8] c"void\00" +@.str12824 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str12825 = private unnamed_addr constant [8 x i8] c"define \00" +@.str12826 = private unnamed_addr constant [6 x i8] c" @ev_\00" +@.str12827 = private unnamed_addr constant [2 x i8] c"(\00" +@.str12828 = private unnamed_addr constant [3 x i8] c", \00" +@.str12829 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20122: index out of range: \00" +@.str12830 = private unnamed_addr constant [4 x i8] c" %p\00" +@.str12831 = private unnamed_addr constant [12 x i8] c") {\0Aentry:\0A\00" +@.str12832 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str12833 = private unnamed_addr constant [112 x i8] c"define void @ludic_sweep_entity(i32 %owner) {\0Aentry:\0A %ci = alloca i32\0A store i32 0, ptr %ci\0A br label %sw0\0A\00" +@.str12834 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20139: index out of range: \00" +@.str12835 = private unnamed_addr constant [3 x i8] c"sw\00" +@.str12836 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12837 = private unnamed_addr constant [7 x i8] c" %swi\00" +@.str12838 = private unnamed_addr constant [22 x i8] c" = load i32, ptr %ci\0A\00" +@.str12839 = private unnamed_addr constant [7 x i8] c" %swn\00" +@.str12840 = private unnamed_addr constant [23 x i8] c" = load i32, ptr @evN_\00" +@.str12841 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12842 = private unnamed_addr constant [7 x i8] c" %swg\00" +@.str12843 = private unnamed_addr constant [21 x i8] c" = icmp slt i32 %swi\00" +@.str12844 = private unnamed_addr constant [7 x i8] c", %swn\00" +@.str12845 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12846 = private unnamed_addr constant [13 x i8] c" br i1 %swg\00" +@.str12847 = private unnamed_addr constant [13 x i8] c", label %swb\00" +@.str12848 = private unnamed_addr constant [13 x i8] c", label %swd\00" +@.str12849 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12850 = private unnamed_addr constant [4 x i8] c"swb\00" +@.str12851 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12852 = private unnamed_addr constant [8 x i8] c" %swop\00" +@.str12853 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" +@.str12854 = private unnamed_addr constant [19 x i8] c" x i32], ptr @evO_\00" +@.str12855 = private unnamed_addr constant [18 x i8] c", i32 0, i32 %swi\00" +@.str12856 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12857 = private unnamed_addr constant [8 x i8] c" %swov\00" +@.str12858 = private unnamed_addr constant [23 x i8] c" = load i32, ptr %swop\00" @.str12859 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12860 = private unnamed_addr constant [3 x i8] c"gf\00" -@.str12861 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12862 = private unnamed_addr constant [6 x i8] c" %ga\00" -@.str12863 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" -@.str12864 = private unnamed_addr constant [9 x i8] c", ptr %s\00" -@.str12865 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str12860 = private unnamed_addr constant [7 x i8] c" %swm\00" +@.str12861 = private unnamed_addr constant [21 x i8] c" = icmp eq i32 %swov\00" +@.str12862 = private unnamed_addr constant [10 x i8] c", %owner\0A\00" +@.str12863 = private unnamed_addr constant [13 x i8] c" br i1 %swm\00" +@.str12864 = private unnamed_addr constant [13 x i8] c", label %swh\00" +@.str12865 = private unnamed_addr constant [13 x i8] c", label %swx\00" @.str12866 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12867 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str12868 = private unnamed_addr constant [6 x i8] c" %gl\00" -@.str12869 = private unnamed_addr constant [21 x i8] c" = load ptr, ptr %ga\00" -@.str12870 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12871 = private unnamed_addr constant [6 x i8] c" %gr\00" -@.str12872 = private unnamed_addr constant [20 x i8] c" = ptrtoint ptr %gl\00" -@.str12873 = private unnamed_addr constant [22 x i8] c" to i64\0A ret i64 %gr\00" -@.str12874 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12875 = private unnamed_addr constant [3 x i8] c"i8\00" -@.str12876 = private unnamed_addr constant [6 x i8] c" %gl\00" -@.str12877 = private unnamed_addr constant [20 x i8] c" = load i8, ptr %ga\00" -@.str12878 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12879 = private unnamed_addr constant [6 x i8] c" %gr\00" -@.str12880 = private unnamed_addr constant [15 x i8] c" = zext i8 %gl\00" -@.str12881 = private unnamed_addr constant [22 x i8] c" to i64\0A ret i64 %gr\00" -@.str12882 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12883 = private unnamed_addr constant [6 x i8] c" %gl\00" -@.str12884 = private unnamed_addr constant [21 x i8] c" = load i32, ptr %ga\00" -@.str12885 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12886 = private unnamed_addr constant [6 x i8] c" %gr\00" -@.str12887 = private unnamed_addr constant [16 x i8] c" = sext i32 %gl\00" -@.str12888 = private unnamed_addr constant [22 x i8] c" to i64\0A ret i64 %gr\00" -@.str12889 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12890 = private unnamed_addr constant [3 x i8] c"gk\00" -@.str12891 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12892 = private unnamed_addr constant [13 x i8] c" ret i64 0\0A\00" -@.str12893 = private unnamed_addr constant [3 x i8] c"gn\00" -@.str12894 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12895 = private unnamed_addr constant [23 x i8] c" %gdyn = sub i32 %p, \00" -@.str12896 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12897 = private unnamed_addr constant [175 x i8] c" %gdlo = icmp sge i32 %gdyn, 0\0A %gdc = load i32, ptr @dyn_count\0A %gdhi = icmp slt i32 %gdyn, %gdc\0A %gdok = and i1 %gdlo, %gdhi\0A br i1 %gdok, label %gdyng, label %gdnone\0A\00" -@.str12898 = private unnamed_addr constant [110 x i8] c"gdyng:\0A %gsp = getelementptr inbounds [32 x ptr], ptr @dynS, i32 0, i32 %gdyn\0A %gbase = load ptr, ptr %gsp\0A\00" -@.str12899 = private unnamed_addr constant [156 x i8] c" %gfp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %gdyn\0A %gnf = load i32, ptr %gfp\0A %grow = mul i32 %e, %gnf\0A %gidx = add i32 %grow, %f\0A\00" -@.str12900 = private unnamed_addr constant [133 x i8] c" %gaddr = getelementptr inbounds i32, ptr %gbase, i32 %gidx\0A %gv = load i32, ptr %gaddr\0A %gr = sext i32 %gv to i64\0A ret i64 %gr\0A\00" -@.str12901 = private unnamed_addr constant [24 x i8] c"gdnone:\0A ret i64 0\0A}\0A\0A\00" -@.str12902 = private unnamed_addr constant [67 x i8] c"define void @ludic_set(i32 %e, i32 %p, i32 %f, i64 %val) {\0Aentry:\0A\00" -@.str12903 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20184: index out of range: \00" -@.str12904 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20185: index out of range: \00" -@.str12905 = private unnamed_addr constant [5 x i8] c" %m\00" -@.str12906 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" -@.str12907 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12908 = private unnamed_addr constant [11 x i8] c" br i1 %m\00" -@.str12909 = private unnamed_addr constant [11 x i8] c", label %g\00" -@.str12910 = private unnamed_addr constant [12 x i8] c", label %gn\00" +@.str12867 = private unnamed_addr constant [4 x i8] c"swh\00" +@.str12868 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12869 = private unnamed_addr constant [8 x i8] c" %swlp\00" +@.str12870 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" +@.str12871 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" +@.str12872 = private unnamed_addr constant [18 x i8] c", i32 0, i32 %swi\00" +@.str12873 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12874 = private unnamed_addr constant [28 x i8] c" store ptr null, ptr %swlp\00" +@.str12875 = private unnamed_addr constant [17 x i8] c"\0A br label %swx\00" +@.str12876 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12877 = private unnamed_addr constant [4 x i8] c"swx\00" +@.str12878 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12879 = private unnamed_addr constant [9 x i8] c" %swinc\00" +@.str12880 = private unnamed_addr constant [16 x i8] c" = add i32 %swi\00" +@.str12881 = private unnamed_addr constant [23 x i8] c", 1\0A store i32 %swinc\00" +@.str12882 = private unnamed_addr constant [25 x i8] c", ptr %ci\0A br label %sw\00" +@.str12883 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12884 = private unnamed_addr constant [4 x i8] c"swd\00" +@.str12885 = private unnamed_addr constant [26 x i8] c":\0A store i32 0, ptr %ci\0A\00" +@.str12886 = private unnamed_addr constant [15 x i8] c" br label %sw\00" +@.str12887 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12888 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" +@.str12889 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str12890 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20188: index out of range: \00" +@.str12891 = private unnamed_addr constant [27 x i8] c"@dyn_count = global i32 0\0A\00" +@.str12892 = private unnamed_addr constant [43 x i8] c"@dynS = global [32 x ptr] zeroinitializer\0A\00" +@.str12893 = private unnamed_addr constant [43 x i8] c"@dynH = global [32 x ptr] zeroinitializer\0A\00" +@.str12894 = private unnamed_addr constant [43 x i8] c"@dynF = global [32 x i32] zeroinitializer\0A\00" +@.str12895 = private unnamed_addr constant [46 x i8] c"@dynName = global [32 x ptr] zeroinitializer\0A\00" +@.str12896 = private unnamed_addr constant [47 x i8] c"define i32 @ludic_prop_id(ptr %name) {\0Aentry:\0A\00" +@.str12897 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20201: index out of range: \00" +@.str12898 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20202: index out of range: \00" +@.str12899 = private unnamed_addr constant [5 x i8] c" %c\00" +@.str12900 = private unnamed_addr constant [36 x i8] c" = call i32 @strcmp(ptr %name, ptr \00" +@.str12901 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12902 = private unnamed_addr constant [5 x i8] c" %e\00" +@.str12903 = private unnamed_addr constant [18 x i8] c" = icmp eq i32 %c\00" +@.str12904 = private unnamed_addr constant [5 x i8] c", 0\0A\00" +@.str12905 = private unnamed_addr constant [11 x i8] c" br i1 %e\00" +@.str12906 = private unnamed_addr constant [11 x i8] c", label %h\00" +@.str12907 = private unnamed_addr constant [11 x i8] c", label %n\00" +@.str12908 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12909 = private unnamed_addr constant [2 x i8] c"h\00" +@.str12910 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" @.str12911 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12912 = private unnamed_addr constant [2 x i8] c"g\00" +@.str12912 = private unnamed_addr constant [2 x i8] c"n\00" @.str12913 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12914 = private unnamed_addr constant [5 x i8] c" %s\00" -@.str12915 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12916 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str12917 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str12918 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %e\0A\00" -@.str12919 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20192: index out of range: \00" -@.str12920 = private unnamed_addr constant [2 x i8] c"_\00" -@.str12921 = private unnamed_addr constant [6 x i8] c" %sm\00" -@.str12922 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" -@.str12923 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12924 = private unnamed_addr constant [12 x i8] c" br i1 %sm\00" -@.str12925 = private unnamed_addr constant [12 x i8] c", label %sf\00" -@.str12926 = private unnamed_addr constant [12 x i8] c", label %sk\00" -@.str12927 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12928 = private unnamed_addr constant [3 x i8] c"sf\00" -@.str12929 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12930 = private unnamed_addr constant [6 x i8] c" %sa\00" -@.str12931 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" -@.str12932 = private unnamed_addr constant [9 x i8] c", ptr %s\00" -@.str12933 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12934 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12935 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str12936 = private unnamed_addr constant [6 x i8] c" %sp\00" -@.str12937 = private unnamed_addr constant [29 x i8] c" = inttoptr i64 %val to ptr\0A\00" -@.str12938 = private unnamed_addr constant [16 x i8] c" store ptr %sp\00" -@.str12939 = private unnamed_addr constant [10 x i8] c", ptr %sa\00" -@.str12940 = private unnamed_addr constant [13 x i8] c"\0A ret void\0A\00" -@.str12941 = private unnamed_addr constant [3 x i8] c"i8\00" -@.str12942 = private unnamed_addr constant [6 x i8] c" %sb\00" -@.str12943 = private unnamed_addr constant [25 x i8] c" = trunc i64 %val to i8\0A\00" -@.str12944 = private unnamed_addr constant [15 x i8] c" store i8 %sb\00" -@.str12945 = private unnamed_addr constant [10 x i8] c", ptr %sa\00" -@.str12946 = private unnamed_addr constant [13 x i8] c"\0A ret void\0A\00" -@.str12947 = private unnamed_addr constant [6 x i8] c" %sw\00" -@.str12948 = private unnamed_addr constant [26 x i8] c" = trunc i64 %val to i32\0A\00" -@.str12949 = private unnamed_addr constant [16 x i8] c" store i32 %sw\00" -@.str12950 = private unnamed_addr constant [10 x i8] c", ptr %sa\00" -@.str12951 = private unnamed_addr constant [13 x i8] c"\0A ret void\0A\00" -@.str12952 = private unnamed_addr constant [3 x i8] c"sk\00" -@.str12953 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12954 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" -@.str12955 = private unnamed_addr constant [3 x i8] c"gn\00" -@.str12956 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12957 = private unnamed_addr constant [23 x i8] c" %sdyn = sub i32 %p, \00" -@.str12958 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12959 = private unnamed_addr constant [175 x i8] c" %sdlo = icmp sge i32 %sdyn, 0\0A %sdc = load i32, ptr @dyn_count\0A %sdhi = icmp slt i32 %sdyn, %sdc\0A %sdok = and i1 %sdlo, %sdhi\0A br i1 %sdok, label %sdyng, label %sdnone\0A\00" -@.str12960 = private unnamed_addr constant [110 x i8] c"sdyng:\0A %ssp = getelementptr inbounds [32 x ptr], ptr @dynS, i32 0, i32 %sdyn\0A %sbase = load ptr, ptr %ssp\0A\00" -@.str12961 = private unnamed_addr constant [156 x i8] c" %sfp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %sdyn\0A %snf = load i32, ptr %sfp\0A %srow = mul i32 %e, %snf\0A %sidx = add i32 %srow, %f\0A\00" -@.str12962 = private unnamed_addr constant [131 x i8] c" %saddr = getelementptr inbounds i32, ptr %sbase, i32 %sidx\0A %sv = trunc i64 %val to i32\0A store i32 %sv, ptr %saddr\0A ret void\0A\00" -@.str12963 = private unnamed_addr constant [23 x i8] c"sdnone:\0A ret void\0A}\0A\0A\00" -@.str12964 = private unnamed_addr constant [48 x i8] c"define i32 @ludic_has(i32 %e, i32 %p) {\0Aentry:\0A\00" -@.str12965 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20227: index out of range: \00" -@.str12966 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20228: index out of range: \00" -@.str12967 = private unnamed_addr constant [5 x i8] c" %m\00" -@.str12968 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" -@.str12969 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12970 = private unnamed_addr constant [11 x i8] c" br i1 %m\00" -@.str12971 = private unnamed_addr constant [11 x i8] c", label %g\00" -@.str12972 = private unnamed_addr constant [12 x i8] c", label %gn\00" -@.str12973 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12974 = private unnamed_addr constant [2 x i8] c"g\00" -@.str12975 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12976 = private unnamed_addr constant [6 x i8] c" %hp\00" -@.str12977 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12978 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str12979 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %e\0A\00" -@.str12980 = private unnamed_addr constant [6 x i8] c" %hv\00" -@.str12981 = private unnamed_addr constant [20 x i8] c" = load i8, ptr %hp\00" -@.str12982 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12983 = private unnamed_addr constant [6 x i8] c" %hr\00" -@.str12984 = private unnamed_addr constant [15 x i8] c" = zext i8 %hv\00" -@.str12985 = private unnamed_addr constant [22 x i8] c" to i32\0A ret i32 %hr\00" +@.str12914 = private unnamed_addr constant [61 x i8] c" %dpi = alloca i32\0A store i32 0, ptr %dpi\0A br label %dpl\0A\00" +@.str12915 = private unnamed_addr constant [135 x i8] c"dpl:\0A %di = load i32, ptr %dpi\0A %dn = load i32, ptr @dyn_count\0A %dg = icmp slt i32 %di, %dn\0A br i1 %dg, label %dpb, label %dpnone\0A\00" +@.str12916 = private unnamed_addr constant [231 x i8] c"dpb:\0A %dnp = getelementptr inbounds [32 x ptr], ptr @dynName, i32 0, i32 %di\0A %dname = load ptr, ptr %dnp\0A %dcmp = call i32 @strcmp(ptr %name, ptr %dname)\0A %deq = icmp eq i32 %dcmp, 0\0A br i1 %deq, label %dphit, label %dpnext\0A\00" +@.str12917 = private unnamed_addr constant [31 x i8] c"dphit:\0A %drid = add i32 %di, \00" +@.str12918 = private unnamed_addr constant [18 x i8] c"\0A ret i32 %drid\0A\00" +@.str12919 = private unnamed_addr constant [76 x i8] c"dpnext:\0A %di1 = add i32 %di, 1\0A store i32 %di1, ptr %dpi\0A br label %dpl\0A\00" +@.str12920 = private unnamed_addr constant [25 x i8] c"dpnone:\0A ret i32 -1\0A}\0A\0A\00" +@.str12921 = private unnamed_addr constant [56 x i8] c"define i32 @ludic_field_id(i32 %p, ptr %name) {\0Aentry:\0A\00" +@.str12922 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20224: index out of range: \00" +@.str12923 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20225: index out of range: \00" +@.str12924 = private unnamed_addr constant [6 x i8] c" %pm\00" +@.str12925 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str12926 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12927 = private unnamed_addr constant [12 x i8] c" br i1 %pm\00" +@.str12928 = private unnamed_addr constant [12 x i8] c", label %pk\00" +@.str12929 = private unnamed_addr constant [12 x i8] c", label %pn\00" +@.str12930 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12931 = private unnamed_addr constant [3 x i8] c"pk\00" +@.str12932 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12933 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20231: index out of range: \00" +@.str12934 = private unnamed_addr constant [2 x i8] c"_\00" +@.str12935 = private unnamed_addr constant [6 x i8] c" %fc\00" +@.str12936 = private unnamed_addr constant [36 x i8] c" = call i32 @strcmp(ptr %name, ptr \00" +@.str12937 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12938 = private unnamed_addr constant [6 x i8] c" %fe\00" +@.str12939 = private unnamed_addr constant [19 x i8] c" = icmp eq i32 %fc\00" +@.str12940 = private unnamed_addr constant [5 x i8] c", 0\0A\00" +@.str12941 = private unnamed_addr constant [12 x i8] c" br i1 %fe\00" +@.str12942 = private unnamed_addr constant [12 x i8] c", label %fh\00" +@.str12943 = private unnamed_addr constant [12 x i8] c", label %fn\00" +@.str12944 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12945 = private unnamed_addr constant [3 x i8] c"fh\00" +@.str12946 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" +@.str12947 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12948 = private unnamed_addr constant [3 x i8] c"fn\00" +@.str12949 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12950 = private unnamed_addr constant [14 x i8] c" ret i32 -1\0A\00" +@.str12951 = private unnamed_addr constant [3 x i8] c"pn\00" +@.str12952 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12953 = private unnamed_addr constant [17 x i8] c" ret i32 -1\0A}\0A\0A\00" +@.str12954 = private unnamed_addr constant [56 x i8] c"define i64 @ludic_get(i32 %e, i32 %p, i32 %f) {\0Aentry:\0A\00" +@.str12955 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20256: index out of range: \00" +@.str12956 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20257: index out of range: \00" +@.str12957 = private unnamed_addr constant [5 x i8] c" %m\00" +@.str12958 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str12959 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12960 = private unnamed_addr constant [11 x i8] c" br i1 %m\00" +@.str12961 = private unnamed_addr constant [11 x i8] c", label %g\00" +@.str12962 = private unnamed_addr constant [12 x i8] c", label %gn\00" +@.str12963 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12964 = private unnamed_addr constant [2 x i8] c"g\00" +@.str12965 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12966 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str12967 = private unnamed_addr constant [5 x i8] c" %s\00" +@.str12968 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12969 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12970 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str12971 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20265: index out of range: \00" +@.str12972 = private unnamed_addr constant [2 x i8] c"_\00" +@.str12973 = private unnamed_addr constant [6 x i8] c" %gm\00" +@.str12974 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" +@.str12975 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12976 = private unnamed_addr constant [12 x i8] c" br i1 %gm\00" +@.str12977 = private unnamed_addr constant [12 x i8] c", label %gf\00" +@.str12978 = private unnamed_addr constant [12 x i8] c", label %gk\00" +@.str12979 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12980 = private unnamed_addr constant [3 x i8] c"gf\00" +@.str12981 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12982 = private unnamed_addr constant [6 x i8] c" %ga\00" +@.str12983 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12984 = private unnamed_addr constant [9 x i8] c", ptr %s\00" +@.str12985 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" @.str12986 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12987 = private unnamed_addr constant [3 x i8] c"gn\00" -@.str12988 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12989 = private unnamed_addr constant [23 x i8] c" %hdyn = sub i32 %p, \00" +@.str12987 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str12988 = private unnamed_addr constant [6 x i8] c" %gl\00" +@.str12989 = private unnamed_addr constant [21 x i8] c" = load ptr, ptr %ga\00" @.str12990 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12991 = private unnamed_addr constant [175 x i8] c" %hdlo = icmp sge i32 %hdyn, 0\0A %hdc = load i32, ptr @dyn_count\0A %hdhi = icmp slt i32 %hdyn, %hdc\0A %hdok = and i1 %hdlo, %hdhi\0A br i1 %hdok, label %hdyng, label %hdnone\0A\00" -@.str12992 = private unnamed_addr constant [238 x i8] c"hdyng:\0A %hhp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %hdyn\0A %hh = load ptr, ptr %hhp\0A %hslot = getelementptr inbounds i8, ptr %hh, i32 %e\0A %hval = load i8, ptr %hslot\0A %hres = zext i8 %hval to i32\0A ret i32 %hres\0A\00" -@.str12993 = private unnamed_addr constant [24 x i8] c"hdnone:\0A ret i32 0\0A}\0A\0A\00" -@.str12994 = private unnamed_addr constant [67 x i8] c"define i32 @ludic_register_prop(ptr %name, i32 %nfields) {\0Aentry:\0A\00" -@.str12995 = private unnamed_addr constant [102 x i8] c" %dc = load i32, ptr @dyn_count\0A %full = icmp slt i32 %dc, 32\0A br i1 %full, label %do, label %rej\0A\00" -@.str12996 = private unnamed_addr constant [56 x i8] c"do:\0A %nf4 = mul i32 %nfields, 4\0A %sz = mul i32 %nf4, \00" -@.str12997 = private unnamed_addr constant [31 x i8] c"\0A %szl = sext i32 %sz to i64\0A\00" -@.str12998 = private unnamed_addr constant [83 x i8] c" %buf = call ptr @malloc(i64 %szl)\0A call ptr @memset(ptr %buf, i32 0, i64 %szl)\0A\00" -@.str12999 = private unnamed_addr constant [96 x i8] c" %sp = getelementptr inbounds [32 x ptr], ptr @dynS, i32 0, i32 %dc\0A store ptr %buf, ptr %sp\0A\00" -@.str13000 = private unnamed_addr constant [32 x i8] c" %hbuf = call ptr @malloc(i64 \00" -@.str13001 = private unnamed_addr constant [44 x i8] c")\0A call ptr @memset(ptr %hbuf, i32 0, i64 \00" -@.str13002 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13003 = private unnamed_addr constant [97 x i8] c" %hp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %dc\0A store ptr %hbuf, ptr %hp\0A\00" -@.str13004 = private unnamed_addr constant [100 x i8] c" %fp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %dc\0A store i32 %nfields, ptr %fp\0A\00" -@.str13005 = private unnamed_addr constant [100 x i8] c" %np = getelementptr inbounds [32 x ptr], ptr @dynName, i32 0, i32 %dc\0A store ptr %name, ptr %np\0A\00" -@.str13006 = private unnamed_addr constant [22 x i8] c" %id = add i32 %dc, \00" -@.str13007 = private unnamed_addr constant [73 x i8] c"\0A %dc1 = add i32 %dc, 1\0A store i32 %dc1, ptr @dyn_count\0A ret i32 %id\0A\00" -@.str13008 = private unnamed_addr constant [22 x i8] c"rej:\0A ret i32 -1\0A}\0A\0A\00" -@.str13009 = private unnamed_addr constant [56 x i8] c"define void @ludic_attach_dyn(i32 %e, i32 %p) {\0Aentry:\0A\00" -@.str13010 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %p, \00" -@.str13011 = private unnamed_addr constant [187 x i8] c"\0A %hp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %dyn\0A %h = load ptr, ptr %hp\0A %slot = getelementptr inbounds i8, ptr %h, i32 %e\0A store i8 1, ptr %slot\0A ret void\0A}\0A\0A\00" -@.str13012 = private unnamed_addr constant [56 x i8] c"define void @ludic_detach_dyn(i32 %e, i32 %p) {\0Aentry:\0A\00" -@.str13013 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %p, \00" -@.str13014 = private unnamed_addr constant [187 x i8] c"\0A %hp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %dyn\0A %h = load ptr, ptr %hp\0A %slot = getelementptr inbounds i8, ptr %h, i32 %e\0A store i8 0, ptr %slot\0A ret void\0A}\0A\0A\00" -@.str13015 = private unnamed_addr constant [88 x i8] c"define i32 @ludic_entity_count() {\0Aentry:\0A %n = load i32, ptr @L_entc\0A ret i32 %n\0A}\0A\0A\00" -@.str13016 = private unnamed_addr constant [41 x i8] c"define i32 @ludic_kind(i32 %e) {\0Aentry:\0A\00" -@.str13017 = private unnamed_addr constant [33 x i8] c" %kp = getelementptr inbounds [\00" -@.str13018 = private unnamed_addr constant [37 x i8] c" x i32], ptr @L_kind, i32 0, i32 %e\0A\00" -@.str13019 = private unnamed_addr constant [42 x i8] c" %k = load i32, ptr %kp\0A ret i32 %k\0A}\0A\0A\00" -@.str13020 = private unnamed_addr constant [48 x i8] c"define i32 @ludic_model_id(ptr %name) {\0Aentry:\0A\00" -@.str13021 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20277: index out of range: \00" -@.str13022 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20278: index out of range: \00" -@.str13023 = private unnamed_addr constant [7 x i8] c" %mdc\00" -@.str13024 = private unnamed_addr constant [36 x i8] c" = call i32 @strcmp(ptr %name, ptr \00" -@.str13025 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13026 = private unnamed_addr constant [7 x i8] c" %mde\00" -@.str13027 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %mdc\00" -@.str13028 = private unnamed_addr constant [5 x i8] c", 0\0A\00" -@.str13029 = private unnamed_addr constant [13 x i8] c" br i1 %mde\00" -@.str13030 = private unnamed_addr constant [13 x i8] c", label %mdh\00" -@.str13031 = private unnamed_addr constant [13 x i8] c", label %mdn\00" -@.str13032 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13033 = private unnamed_addr constant [4 x i8] c"mdh\00" -@.str13034 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" -@.str13035 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20282: index out of range: \00" -@.str13036 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13037 = private unnamed_addr constant [4 x i8] c"mdn\00" -@.str13038 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13039 = private unnamed_addr constant [17 x i8] c" ret i32 -1\0A}\0A\0A\00" -@.str13040 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20296: index out of range: \00" -@.str13041 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20297: index out of range: \00" -@.str13042 = private unnamed_addr constant [4 x i8] c"int\00" -@.str13043 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str13044 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13045 = private unnamed_addr constant [25 x i8] c"define i32 @ludic_spawn_\00" -@.str13046 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" -@.str13047 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str13048 = private unnamed_addr constant [42 x i8] c"define i32 @ludic_spawn(i32 %m) {\0Aentry:\0A\00" -@.str13049 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20318: index out of range: \00" -@.str13050 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20319: index out of range: \00" -@.str13051 = private unnamed_addr constant [6 x i8] c" %sm\00" -@.str13052 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %m, \00" -@.str13053 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13054 = private unnamed_addr constant [12 x i8] c" br i1 %sm\00" -@.str13055 = private unnamed_addr constant [12 x i8] c", label %sh\00" -@.str13056 = private unnamed_addr constant [12 x i8] c", label %sn\00" -@.str13057 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13058 = private unnamed_addr constant [3 x i8] c"sh\00" -@.str13059 = private unnamed_addr constant [8 x i8] c":\0A %sr\00" -@.str13060 = private unnamed_addr constant [26 x i8] c" = call i32 @ludic_spawn_\00" -@.str13061 = private unnamed_addr constant [17 x i8] c"()\0A ret i32 %sr\00" -@.str13062 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13063 = private unnamed_addr constant [3 x i8] c"sn\00" -@.str13064 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13065 = private unnamed_addr constant [17 x i8] c" ret i32 -1\0A}\0A\0A\00" -@.str13066 = private unnamed_addr constant [58 x i8] c"define i32 @ludic_query_next(i32 %p, i32 %from) {\0Aentry:\0A\00" -@.str13067 = private unnamed_addr constant [47 x i8] c" %n = load i32, ptr @L_entc\0A br label %loop\0A\00" -@.str13068 = private unnamed_addr constant [56 x i8] c"loop:\0A %e = phi i32 [ %from, %entry ], [ %e1, %cont ]\0A\00" -@.str13069 = private unnamed_addr constant [67 x i8] c" %go = icmp slt i32 %e, %n\0A br i1 %go, label %body, label %none\0A\00" -@.str13070 = private unnamed_addr constant [39 x i8] c"body:\0A %ap = getelementptr inbounds [\00" -@.str13071 = private unnamed_addr constant [38 x i8] c" x i32], ptr @L_alive, i32 0, i32 %e\0A\00" -@.str13072 = private unnamed_addr constant [93 x i8] c" %al = load i32, ptr %ap\0A %isa = icmp ne i32 %al, 0\0A br i1 %isa, label %chk, label %cont\0A\00" -@.str13073 = private unnamed_addr constant [115 x i8] c"chk:\0A %h = call i32 @ludic_has(i32 %e, i32 %p)\0A %hit = icmp ne i32 %h, 0\0A br i1 %hit, label %hitb, label %cont\0A\00" -@.str13074 = private unnamed_addr constant [20 x i8] c"hitb:\0A ret i32 %e\0A\00" -@.str13075 = private unnamed_addr constant [46 x i8] c"cont:\0A %e1 = add i32 %e, 1\0A br label %loop\0A\00" -@.str13076 = private unnamed_addr constant [23 x i8] c"none:\0A ret i32 -1\0A}\0A\0A\00" -@.str13077 = private unnamed_addr constant [1 x i8] c"\00" -@.str13078 = private unnamed_addr constant [4 x i8] c"int\00" -@.str13079 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20359: index out of range: \00" -@.str13080 = private unnamed_addr constant [41 x i8] c"define i32 @ludic_prop_count() {\0Aentry:\0A\00" -@.str13081 = private unnamed_addr constant [52 x i8] c" %d = load i32, ptr @dyn_count\0A %n = add i32 %d, \00" -@.str13082 = private unnamed_addr constant [18 x i8] c"\0A ret i32 %n\0A}\0A\0A\00" -@.str13083 = private unnamed_addr constant [46 x i8] c"define ptr @ludic_prop_name(i32 %i) {\0Aentry:\0A\00" -@.str13084 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20370: index out of range: \00" -@.str13085 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20371: index out of range: \00" -@.str13086 = private unnamed_addr constant [6 x i8] c" %pe\00" -@.str13087 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %i, \00" -@.str13088 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13089 = private unnamed_addr constant [12 x i8] c" br i1 %pe\00" -@.str13090 = private unnamed_addr constant [12 x i8] c", label %ph\00" -@.str13091 = private unnamed_addr constant [12 x i8] c", label %pn\00" -@.str13092 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13093 = private unnamed_addr constant [3 x i8] c"ph\00" -@.str13094 = private unnamed_addr constant [13 x i8] c":\0A ret ptr \00" -@.str13095 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13096 = private unnamed_addr constant [3 x i8] c"pn\00" -@.str13097 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13098 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %i, \00" -@.str13099 = private unnamed_addr constant [35 x i8] c"\0A %dc = load i32, ptr @dyn_count\0A\00" -@.str13100 = private unnamed_addr constant [70 x i8] c" %ib = icmp uge i32 %dyn, %dc\0A br i1 %ib, label %pbad, label %pdyn\0A\00" -@.str13101 = private unnamed_addr constant [120 x i8] c"pdyn:\0A %np = getelementptr inbounds [32 x ptr], ptr @dynName, i32 0, i32 %dyn\0A %nm = load ptr, ptr %np\0A ret ptr %nm\0A\00" -@.str13102 = private unnamed_addr constant [17 x i8] c"pbad:\0A ret ptr \00" -@.str13103 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" -@.str13104 = private unnamed_addr constant [48 x i8] c"define i32 @ludic_field_count(i32 %p) {\0Aentry:\0A\00" -@.str13105 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20389: index out of range: \00" -@.str13106 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20390: index out of range: \00" -@.str13107 = private unnamed_addr constant [7 x i8] c" %fce\00" -@.str13108 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" -@.str13109 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13110 = private unnamed_addr constant [13 x i8] c" br i1 %fce\00" -@.str13111 = private unnamed_addr constant [13 x i8] c", label %fch\00" -@.str13112 = private unnamed_addr constant [13 x i8] c", label %fcn\00" -@.str13113 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13114 = private unnamed_addr constant [4 x i8] c"fch\00" -@.str13115 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" -@.str13116 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13117 = private unnamed_addr constant [4 x i8] c"fcn\00" -@.str13118 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13119 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %p, \00" -@.str13120 = private unnamed_addr constant [35 x i8] c"\0A %dc = load i32, ptr @dyn_count\0A\00" -@.str13121 = private unnamed_addr constant [72 x i8] c" %ib = icmp uge i32 %dyn, %dc\0A br i1 %ib, label %fcbad, label %fcdyn\0A\00" -@.str13122 = private unnamed_addr constant [118 x i8] c"fcdyn:\0A %fp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %dyn\0A %fn = load i32, ptr %fp\0A ret i32 %fn\0A\00" -@.str13123 = private unnamed_addr constant [23 x i8] c"fcbad:\0A ret i32 0\0A}\0A\0A\00" -@.str13124 = private unnamed_addr constant [55 x i8] c"define ptr @ludic_field_name(i32 %p, i32 %f) {\0Aentry:\0A\00" -@.str13125 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20408: index out of range: \00" -@.str13126 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20409: index out of range: \00" -@.str13127 = private unnamed_addr constant [7 x i8] c" %fne\00" -@.str13128 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" -@.str13129 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13130 = private unnamed_addr constant [13 x i8] c" br i1 %fne\00" -@.str13131 = private unnamed_addr constant [13 x i8] c", label %fnk\00" -@.str13132 = private unnamed_addr constant [13 x i8] c", label %fnn\00" -@.str13133 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13134 = private unnamed_addr constant [4 x i8] c"fnk\00" -@.str13135 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13136 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20415: index out of range: \00" -@.str13137 = private unnamed_addr constant [2 x i8] c"_\00" -@.str13138 = private unnamed_addr constant [8 x i8] c" %fnfe\00" -@.str13139 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" -@.str13140 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13141 = private unnamed_addr constant [14 x i8] c" br i1 %fnfe\00" -@.str13142 = private unnamed_addr constant [14 x i8] c", label %fnfh\00" -@.str13143 = private unnamed_addr constant [14 x i8] c", label %fnfn\00" -@.str13144 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13145 = private unnamed_addr constant [5 x i8] c"fnfh\00" -@.str13146 = private unnamed_addr constant [13 x i8] c":\0A ret ptr \00" -@.str13147 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13148 = private unnamed_addr constant [5 x i8] c"fnfn\00" -@.str13149 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13150 = private unnamed_addr constant [11 x i8] c" ret ptr \00" -@.str13151 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13152 = private unnamed_addr constant [4 x i8] c"fnn\00" -@.str13153 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13154 = private unnamed_addr constant [11 x i8] c" ret ptr \00" -@.str13155 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" -@.str13156 = private unnamed_addr constant [55 x i8] c"define ptr @ludic_field_type(i32 %p, i32 %f) {\0Aentry:\0A\00" -@.str13157 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20434: index out of range: \00" -@.str13158 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20435: index out of range: \00" -@.str13159 = private unnamed_addr constant [7 x i8] c" %fte\00" -@.str13160 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" -@.str13161 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13162 = private unnamed_addr constant [13 x i8] c" br i1 %fte\00" -@.str13163 = private unnamed_addr constant [13 x i8] c", label %ftk\00" -@.str13164 = private unnamed_addr constant [13 x i8] c", label %ftn\00" -@.str13165 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13166 = private unnamed_addr constant [4 x i8] c"ftk\00" -@.str13167 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13168 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20441: index out of range: \00" -@.str13169 = private unnamed_addr constant [2 x i8] c"_\00" -@.str13170 = private unnamed_addr constant [8 x i8] c" %ftfe\00" -@.str13171 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" -@.str13172 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13173 = private unnamed_addr constant [14 x i8] c" br i1 %ftfe\00" -@.str13174 = private unnamed_addr constant [14 x i8] c", label %ftfh\00" -@.str13175 = private unnamed_addr constant [14 x i8] c", label %ftfn\00" -@.str13176 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13177 = private unnamed_addr constant [5 x i8] c"ftfh\00" -@.str13178 = private unnamed_addr constant [13 x i8] c":\0A ret ptr \00" -@.str13179 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13180 = private unnamed_addr constant [5 x i8] c"ftfn\00" -@.str13181 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13182 = private unnamed_addr constant [11 x i8] c" ret ptr \00" -@.str13183 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13184 = private unnamed_addr constant [4 x i8] c"ftn\00" -@.str13185 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13186 = private unnamed_addr constant [11 x i8] c" ret ptr \00" -@.str13187 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" -@.str13188 = private unnamed_addr constant [38 x i8] c"define void @L_tick_fixed() {\0Aentry:\0A\00" -@.str13189 = private unnamed_addr constant [6 x i8] c"Input\00" -@.str13190 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" -@.str13191 = private unnamed_addr constant [7 x i8] c"Update\00" -@.str13192 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" -@.str13193 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str13194 = private unnamed_addr constant [39 x i8] c"define void @L_tick_render() {\0Aentry:\0A\00" -@.str13195 = private unnamed_addr constant [7 x i8] c"Render\00" -@.str13196 = private unnamed_addr constant [8 x i8] c"Overlay\00" -@.str13197 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str13198 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20481: index out of range: \00" -@.str13199 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20481: index out of range: \00" -@.str13200 = private unnamed_addr constant [49 x i8] c"define i32 @main(i32 %argc, ptr %argv) {\0Aentry:\0A\00" -@.str13201 = private unnamed_addr constant [32 x i8] c" store i32 %argc, ptr @L_argc\0A\00" -@.str13202 = private unnamed_addr constant [32 x i8] c" store ptr %argv, ptr @L_argv\0A\00" -@.str13203 = private unnamed_addr constant [31 x i8] c" call void @L_init_runtime()\0A\00" -@.str13204 = private unnamed_addr constant [8 x i8] c"rt_init\00" -@.str13205 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13206 = private unnamed_addr constant [8 x i8] c"rt_init\00" -@.str13207 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13208 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" -@.str13209 = private unnamed_addr constant [6 x i8] c"Start\00" -@.str13210 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13211 = private unnamed_addr constant [16 x i8] c", ptr @L_scene\0A\00" -@.str13212 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20504: index out of range: \00" -@.str13213 = private unnamed_addr constant [26 x i8] c" call void @scene_enter_\00" -@.str13214 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20504: index out of range: \00" -@.str13215 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13216 = private unnamed_addr constant [14 x i8] c"program_start\00" -@.str13217 = private unnamed_addr constant [33 x i8] c" call void @ev_program_start()\0A\00" -@.str13218 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" -@.str13219 = private unnamed_addr constant [7 x i8] c"loop:\0A\00" -@.str13220 = private unnamed_addr constant [25 x i8] c"load i32, ptr @L_running\00" -@.str13221 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str13222 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str13223 = private unnamed_addr constant [11 x i8] c"rt_running\00" -@.str13224 = private unnamed_addr constant [10 x i8] c"call i32 \00" -@.str13225 = private unnamed_addr constant [11 x i8] c"rt_running\00" -@.str13226 = private unnamed_addr constant [3 x i8] c"()\00" -@.str13227 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str13228 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str13229 = private unnamed_addr constant [8 x i8] c"and i1 \00" -@.str13230 = private unnamed_addr constant [3 x i8] c", \00" -@.str13231 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13232 = private unnamed_addr constant [28 x i8] c", label %body, label %done\0A\00" -@.str13233 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13234 = private unnamed_addr constant [28 x i8] c", label %body, label %done\0A\00" -@.str13235 = private unnamed_addr constant [7 x i8] c"body:\0A\00" -@.str13236 = private unnamed_addr constant [12 x i8] c"input_drive\00" -@.str13237 = private unnamed_addr constant [10 x i8] c"call i32 \00" -@.str13238 = private unnamed_addr constant [12 x i8] c"input_drive\00" -@.str13239 = private unnamed_addr constant [3 x i8] c"()\00" -@.str13240 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13241 = private unnamed_addr constant [14 x i8] c", ptr @L_key\0A\00" -@.str13242 = private unnamed_addr constant [8 x i8] c"rt_poll\00" -@.str13243 = private unnamed_addr constant [10 x i8] c"call i32 \00" -@.str13244 = private unnamed_addr constant [8 x i8] c"rt_poll\00" -@.str13245 = private unnamed_addr constant [3 x i8] c"()\00" -@.str13246 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13247 = private unnamed_addr constant [14 x i8] c", ptr @L_key\0A\00" -@.str13248 = private unnamed_addr constant [11 x i8] c"rt_ui_tick\00" -@.str13249 = private unnamed_addr constant [21 x i8] c"load i32, ptr @L_key\00" -@.str13250 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13251 = private unnamed_addr constant [11 x i8] c"rt_ui_tick\00" -@.str13252 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str13253 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13254 = private unnamed_addr constant [6 x i8] c"Input\00" -@.str13255 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" -@.str13256 = private unnamed_addr constant [7 x i8] c"Update\00" -@.str13257 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" -@.str13258 = private unnamed_addr constant [9 x i8] c"rt_clear\00" -@.str13259 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13260 = private unnamed_addr constant [9 x i8] c"rt_clear\00" -@.str13261 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str13262 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13263 = private unnamed_addr constant [7 x i8] c"Render\00" -@.str13264 = private unnamed_addr constant [8 x i8] c"Overlay\00" -@.str13265 = private unnamed_addr constant [11 x i8] c"rt_present\00" -@.str13266 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13267 = private unnamed_addr constant [11 x i8] c"rt_present\00" -@.str13268 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13269 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_frame\00" -@.str13270 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str13271 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str13272 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13273 = private unnamed_addr constant [16 x i8] c", ptr @L_frame\0A\00" -@.str13274 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" -@.str13275 = private unnamed_addr constant [7 x i8] c"done:\0A\00" -@.str13276 = private unnamed_addr constant [35 x i8] c" call void @L_despawn_all(i32 2)\0A\00" -@.str13277 = private unnamed_addr constant [7 x i8] c"OnQuit\00" -@.str13278 = private unnamed_addr constant [13 x i8] c"program_quit\00" -@.str13279 = private unnamed_addr constant [32 x i8] c" call void @ev_program_quit()\0A\00" -@.str13280 = private unnamed_addr constant [12 x i8] c"rt_shutdown\00" -@.str13281 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13282 = private unnamed_addr constant [12 x i8] c"rt_shutdown\00" -@.str13283 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13284 = private unnamed_addr constant [15 x i8] c" ret i32 0\0A}\0A\00" -@.str13285 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20599: index out of range: \00" -@.str13286 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20600: index out of range: \00" -@.str13287 = private unnamed_addr constant [4 x i8] c"@g_\00" -@.str13288 = private unnamed_addr constant [15 x i8] c"machine state \00" -@.str13289 = private unnamed_addr constant [27 x i8] c" is not a variant of enum \00" -@.str13290 = private unnamed_addr constant [1 x i8] c"\00" -@.str13291 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str13292 = private unnamed_addr constant [10 x i8] c"call i32 \00" -@.str13293 = private unnamed_addr constant [7 x i8] c"rt_reg\00" -@.str13294 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str13295 = private unnamed_addr constant [2 x i8] c")\00" -@.str13296 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20635: index out of range: \00" -@.str13297 = private unnamed_addr constant [6 x i8] c"smend\00" -@.str13298 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20640: index out of range: \00" -@.str13299 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str13300 = private unnamed_addr constant [3 x i8] c", \00" -@.str13301 = private unnamed_addr constant [6 x i8] c"sbody\00" -@.str13302 = private unnamed_addr constant [5 x i8] c"sarm\00" -@.str13303 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13304 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13305 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13306 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13307 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13308 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str13309 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13310 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13311 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str13312 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13313 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13314 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20662: index out of range: \00" -@.str13315 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20665: index out of range: \00" -@.str13316 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20665: index out of range: \00" -@.str13317 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13318 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13319 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13320 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13321 = private unnamed_addr constant [11 x i8] c"rt_set_reg\00" -@.str13322 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str13323 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str13324 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13325 = private unnamed_addr constant [27 x i8] c"become: no state or scene \00" -@.str13326 = private unnamed_addr constant [25 x i8] c" call void @scene_exit_\00" -@.str13327 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13328 = private unnamed_addr constant [30 x i8] c" call void @L_scene_leave()\0A\00" -@.str13329 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13330 = private unnamed_addr constant [16 x i8] c", ptr @L_scene\0A\00" -@.str13331 = private unnamed_addr constant [26 x i8] c" call void @scene_enter_\00" -@.str13332 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13333 = private unnamed_addr constant [5 x i8] c"file\00" -@.str13334 = private unnamed_addr constant [4 x i8] c"%io\00" -@.str13335 = private unnamed_addr constant [3 x i8] c" \00" -@.str13336 = private unnamed_addr constant [14 x i8] c" = call i64 @\00" -@.str13337 = private unnamed_addr constant [6 x i8] c"(ptr \00" -@.str13338 = private unnamed_addr constant [14 x i8] c", i64 1, i64 \00" -@.str13339 = private unnamed_addr constant [11 x i8] c", ptr %f)\0A\00" -@.str13340 = private unnamed_addr constant [5 x i8] c"size\00" -@.str13341 = private unnamed_addr constant [6 x i8] c"%ioff\00" -@.str13342 = private unnamed_addr constant [3 x i8] c" \00" -@.str13343 = private unnamed_addr constant [12 x i8] c" = add i64 \00" -@.str13344 = private unnamed_addr constant [3 x i8] c", \00" -@.str13345 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13346 = private unnamed_addr constant [5 x i8] c"%ioa\00" -@.str13347 = private unnamed_addr constant [3 x i8] c" \00" -@.str13348 = private unnamed_addr constant [45 x i8] c" = getelementptr inbounds i8, ptr %buf, i64 \00" -@.str13349 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13350 = private unnamed_addr constant [5 x i8] c"save\00" -@.str13351 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" -@.str13352 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13353 = private unnamed_addr constant [7 x i8] c", i64 \00" -@.str13354 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13355 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" -@.str13356 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13357 = private unnamed_addr constant [7 x i8] c", i64 \00" -@.str13358 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13359 = private unnamed_addr constant [6 x i8] c"%ioff\00" -@.str13360 = private unnamed_addr constant [3 x i8] c" \00" -@.str13361 = private unnamed_addr constant [12 x i8] c" = add i64 \00" -@.str13362 = private unnamed_addr constant [3 x i8] c", \00" -@.str13363 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13364 = private unnamed_addr constant [2 x i8] c"0\00" -@.str13365 = private unnamed_addr constant [8 x i8] c"@L_entc\00" -@.str13366 = private unnamed_addr constant [2 x i8] c"4\00" -@.str13367 = private unnamed_addr constant [9 x i8] c"@L_freen\00" -@.str13368 = private unnamed_addr constant [2 x i8] c"4\00" -@.str13369 = private unnamed_addr constant [21 x i8] c" %nalive = mul i64 \00" -@.str13370 = private unnamed_addr constant [5 x i8] c", 4\0A\00" -@.str13371 = private unnamed_addr constant [9 x i8] c"@L_alive\00" -@.str13372 = private unnamed_addr constant [8 x i8] c"%nalive\00" -@.str13373 = private unnamed_addr constant [12 x i8] c"@L_freelist\00" -@.str13374 = private unnamed_addr constant [8 x i8] c"%nalive\00" -@.str13375 = private unnamed_addr constant [8 x i8] c"@L_kind\00" -@.str13376 = private unnamed_addr constant [8 x i8] c"%nalive\00" -@.str13377 = private unnamed_addr constant [13 x i8] c"@L_owner_arr\00" -@.str13378 = private unnamed_addr constant [8 x i8] c"%nalive\00" -@.str13379 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20747: index out of range: \00" -@.str13380 = private unnamed_addr constant [4 x i8] c"@g_\00" -@.str13381 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20747: index out of range: \00" -@.str13382 = private unnamed_addr constant [2 x i8] c"4\00" -@.str13383 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20751: index out of range: \00" -@.str13384 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20752: index out of range: \00" -@.str13385 = private unnamed_addr constant [5 x i8] c"%csz\00" -@.str13386 = private unnamed_addr constant [3 x i8] c" \00" -@.str13387 = private unnamed_addr constant [37 x i8] c" = ptrtoint ptr getelementptr (%Cmp_\00" -@.str13388 = private unnamed_addr constant [17 x i8] c", ptr null, i32 \00" -@.str13389 = private unnamed_addr constant [10 x i8] c") to i64\0A\00" -@.str13390 = private unnamed_addr constant [4 x i8] c"@S_\00" -@.str13391 = private unnamed_addr constant [4 x i8] c"@H_\00" -@.str13392 = private unnamed_addr constant [5 x i8] c"file\00" -@.str13393 = private unnamed_addr constant [70 x i8] c"@.sav_path = private unnamed_addr constant [10 x i8] c\22ludic.sav\5C00\22\0A\00" -@.str13394 = private unnamed_addr constant [60 x i8] c"@.sav_wb = private unnamed_addr constant [3 x i8] c\22wb\5C00\22\0A\00" -@.str13395 = private unnamed_addr constant [60 x i8] c"@.sav_rb = private unnamed_addr constant [3 x i8] c\22rb\5C00\22\0A\00" -@.str13396 = private unnamed_addr constant [14 x i8] c"rt_save_state\00" -@.str13397 = private unnamed_addr constant [14 x i8] c"rt_load_state\00" -@.str13398 = private unnamed_addr constant [32 x i8] c"define void @L_save() {\0Aentry:\0A\00" -@.str13399 = private unnamed_addr constant [54 x i8] c" %f = call ptr @fopen(ptr @.sav_path, ptr @.sav_wb)\0A\00" -@.str13400 = private unnamed_addr constant [31 x i8] c" %bad = icmp eq ptr %f, null\0A\00" -@.str13401 = private unnamed_addr constant [41 x i8] c" br i1 %bad, label %out, label %go\0Ago:\0A\00" -@.str13402 = private unnamed_addr constant [7 x i8] c"fwrite\00" -@.str13403 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13404 = private unnamed_addr constant [14 x i8] c"rt_save_state\00" -@.str13405 = private unnamed_addr constant [10 x i8] c"(ptr %f)\0A\00" -@.str13406 = private unnamed_addr constant [68 x i8] c" %c = call i32 @fclose(ptr %f)\0A br label %out\0Aout:\0A ret void\0A}\0A\0A\00" -@.str13407 = private unnamed_addr constant [31 x i8] c"define i32 @L_load() {\0Aentry:\0A\00" -@.str13408 = private unnamed_addr constant [54 x i8] c" %f = call ptr @fopen(ptr @.sav_path, ptr @.sav_rb)\0A\00" -@.str13409 = private unnamed_addr constant [31 x i8] c" %bad = icmp eq ptr %f, null\0A\00" -@.str13410 = private unnamed_addr constant [60 x i8] c" br i1 %bad, label %miss, label %go\0Amiss:\0A ret i32 0\0Ago:\0A\00" -@.str13411 = private unnamed_addr constant [6 x i8] c"fread\00" -@.str13412 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13413 = private unnamed_addr constant [14 x i8] c"rt_load_state\00" -@.str13414 = private unnamed_addr constant [10 x i8] c"(ptr %f)\0A\00" -@.str13415 = private unnamed_addr constant [48 x i8] c" %c = call i32 @fclose(ptr %f)\0A ret i32 1\0A}\0A\0A\00" -@.str13416 = private unnamed_addr constant [45 x i8] c"define i32 @L_world_save(ptr %buf) {\0Aentry:\0A\00" -@.str13417 = private unnamed_addr constant [5 x i8] c"save\00" -@.str13418 = private unnamed_addr constant [1 x i8] c"\00" -@.str13419 = private unnamed_addr constant [5 x i8] c"%wsn\00" -@.str13420 = private unnamed_addr constant [3 x i8] c" \00" -@.str13421 = private unnamed_addr constant [14 x i8] c" = trunc i64 \00" -@.str13422 = private unnamed_addr constant [9 x i8] c" to i32\0A\00" -@.str13423 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str13424 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" -@.str13425 = private unnamed_addr constant [56 x i8] c"define void @L_world_load(ptr %buf, i32 %len) {\0Aentry:\0A\00" -@.str13426 = private unnamed_addr constant [5 x i8] c"load\00" -@.str13427 = private unnamed_addr constant [1 x i8] c"\00" -@.str13428 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str13429 = private unnamed_addr constant [37 x i8] c"define i32 @L_world_size() {\0Aentry:\0A\00" -@.str13430 = private unnamed_addr constant [5 x i8] c"size\00" -@.str13431 = private unnamed_addr constant [1 x i8] c"\00" -@.str13432 = private unnamed_addr constant [5 x i8] c"%wzn\00" -@.str13433 = private unnamed_addr constant [3 x i8] c" \00" -@.str13434 = private unnamed_addr constant [14 x i8] c" = trunc i64 \00" -@.str13435 = private unnamed_addr constant [9 x i8] c" to i32\0A\00" -@.str13436 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str13437 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" -@.str13438 = private unnamed_addr constant [5 x i8] c"file\00" -@.str13439 = private unnamed_addr constant [3 x i8] c"i8\00" -@.str13440 = private unnamed_addr constant [3 x i8] c"i8\00" -@.str13441 = private unnamed_addr constant [2 x i8] c"1\00" -@.str13442 = private unnamed_addr constant [2 x i8] c"4\00" -@.str13443 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20845: index out of range: \00" -@.str13444 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20846: index out of range: \00" -@.str13445 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20849: index out of range: \00" -@.str13446 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20849: index out of range: \00" -@.str13447 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20861: index out of range: \00" -@.str13448 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20861: index out of range: \00" -@.str13449 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20868: index out of range: \00" -@.str13450 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20868: index out of range: \00" -@.str13451 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20876: index out of range: \00" -@.str13452 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20876: index out of range: \00" -@.str13453 = private unnamed_addr constant [24 x i8] c"ludicc(self): warning: \00" -@.str13454 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13455 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20898: index out of range: \00" -@.str13456 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20899: index out of range: \00" -@.str13457 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20902: index out of range: \00" -@.str13458 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20903: index out of range: \00" -@.str13459 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20909: index out of range: \00" -@.str13460 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20911: index out of range: \00" -@.str13461 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str13462 = private unnamed_addr constant [13 x i8] c"@Sync field \00" -@.str13463 = private unnamed_addr constant [2 x i8] c".\00" -@.str13464 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20911: index out of range: \00" -@.str13465 = private unnamed_addr constant [68 x i8] c" is not a POD scalar (networked fields must be int/bool/fixed/byte)\00" -@.str13466 = private unnamed_addr constant [7 x i8] c"model \00" -@.str13467 = private unnamed_addr constant [9 x i8] c" @Syncs \00" -@.str13468 = private unnamed_addr constant [51 x i8] c" but it has no @Sync fields \E2\80\94 nothing replicates\00" -@.str13469 = private unnamed_addr constant [25 x i8] c"define i32 @L_serialize_\00" -@.str13470 = private unnamed_addr constant [29 x i8] c"(i32 %e, ptr %buf) {\0Aentry:\0A\00" -@.str13471 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20935: index out of range: \00" -@.str13472 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20936: index out of range: \00" -@.str13473 = private unnamed_addr constant [3 x i8] c" \00" -@.str13474 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str13475 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str13476 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str13477 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %e\0A\00" -@.str13478 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20942: index out of range: \00" -@.str13479 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20943: index out of range: \00" -@.str13480 = private unnamed_addr constant [3 x i8] c" \00" -@.str13481 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" -@.str13482 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13483 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str12991 = private unnamed_addr constant [6 x i8] c" %gr\00" +@.str12992 = private unnamed_addr constant [20 x i8] c" = ptrtoint ptr %gl\00" +@.str12993 = private unnamed_addr constant [22 x i8] c" to i64\0A ret i64 %gr\00" +@.str12994 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12995 = private unnamed_addr constant [3 x i8] c"i8\00" +@.str12996 = private unnamed_addr constant [6 x i8] c" %gl\00" +@.str12997 = private unnamed_addr constant [20 x i8] c" = load i8, ptr %ga\00" +@.str12998 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12999 = private unnamed_addr constant [6 x i8] c" %gr\00" +@.str13000 = private unnamed_addr constant [15 x i8] c" = zext i8 %gl\00" +@.str13001 = private unnamed_addr constant [22 x i8] c" to i64\0A ret i64 %gr\00" +@.str13002 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13003 = private unnamed_addr constant [6 x i8] c" %gl\00" +@.str13004 = private unnamed_addr constant [21 x i8] c" = load i32, ptr %ga\00" +@.str13005 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13006 = private unnamed_addr constant [6 x i8] c" %gr\00" +@.str13007 = private unnamed_addr constant [16 x i8] c" = sext i32 %gl\00" +@.str13008 = private unnamed_addr constant [22 x i8] c" to i64\0A ret i64 %gr\00" +@.str13009 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13010 = private unnamed_addr constant [3 x i8] c"gk\00" +@.str13011 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13012 = private unnamed_addr constant [13 x i8] c" ret i64 0\0A\00" +@.str13013 = private unnamed_addr constant [3 x i8] c"gn\00" +@.str13014 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13015 = private unnamed_addr constant [23 x i8] c" %gdyn = sub i32 %p, \00" +@.str13016 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13017 = private unnamed_addr constant [175 x i8] c" %gdlo = icmp sge i32 %gdyn, 0\0A %gdc = load i32, ptr @dyn_count\0A %gdhi = icmp slt i32 %gdyn, %gdc\0A %gdok = and i1 %gdlo, %gdhi\0A br i1 %gdok, label %gdyng, label %gdnone\0A\00" +@.str13018 = private unnamed_addr constant [110 x i8] c"gdyng:\0A %gsp = getelementptr inbounds [32 x ptr], ptr @dynS, i32 0, i32 %gdyn\0A %gbase = load ptr, ptr %gsp\0A\00" +@.str13019 = private unnamed_addr constant [156 x i8] c" %gfp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %gdyn\0A %gnf = load i32, ptr %gfp\0A %grow = mul i32 %e, %gnf\0A %gidx = add i32 %grow, %f\0A\00" +@.str13020 = private unnamed_addr constant [133 x i8] c" %gaddr = getelementptr inbounds i32, ptr %gbase, i32 %gidx\0A %gv = load i32, ptr %gaddr\0A %gr = sext i32 %gv to i64\0A ret i64 %gr\0A\00" +@.str13021 = private unnamed_addr constant [24 x i8] c"gdnone:\0A ret i64 0\0A}\0A\0A\00" +@.str13022 = private unnamed_addr constant [67 x i8] c"define void @ludic_set(i32 %e, i32 %p, i32 %f, i64 %val) {\0Aentry:\0A\00" +@.str13023 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20300: index out of range: \00" +@.str13024 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20301: index out of range: \00" +@.str13025 = private unnamed_addr constant [5 x i8] c" %m\00" +@.str13026 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str13027 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13028 = private unnamed_addr constant [11 x i8] c" br i1 %m\00" +@.str13029 = private unnamed_addr constant [11 x i8] c", label %g\00" +@.str13030 = private unnamed_addr constant [12 x i8] c", label %gn\00" +@.str13031 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13032 = private unnamed_addr constant [2 x i8] c"g\00" +@.str13033 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13034 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str13035 = private unnamed_addr constant [5 x i8] c" %s\00" +@.str13036 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str13037 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13038 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str13039 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20309: index out of range: \00" +@.str13040 = private unnamed_addr constant [2 x i8] c"_\00" +@.str13041 = private unnamed_addr constant [6 x i8] c" %sm\00" +@.str13042 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" +@.str13043 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13044 = private unnamed_addr constant [12 x i8] c" br i1 %sm\00" +@.str13045 = private unnamed_addr constant [12 x i8] c", label %sf\00" +@.str13046 = private unnamed_addr constant [12 x i8] c", label %sk\00" +@.str13047 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13048 = private unnamed_addr constant [3 x i8] c"sf\00" +@.str13049 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13050 = private unnamed_addr constant [6 x i8] c" %sa\00" +@.str13051 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str13052 = private unnamed_addr constant [9 x i8] c", ptr %s\00" +@.str13053 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str13054 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13055 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str13056 = private unnamed_addr constant [6 x i8] c" %sp\00" +@.str13057 = private unnamed_addr constant [29 x i8] c" = inttoptr i64 %val to ptr\0A\00" +@.str13058 = private unnamed_addr constant [16 x i8] c" store ptr %sp\00" +@.str13059 = private unnamed_addr constant [10 x i8] c", ptr %sa\00" +@.str13060 = private unnamed_addr constant [13 x i8] c"\0A ret void\0A\00" +@.str13061 = private unnamed_addr constant [3 x i8] c"i8\00" +@.str13062 = private unnamed_addr constant [6 x i8] c" %sb\00" +@.str13063 = private unnamed_addr constant [25 x i8] c" = trunc i64 %val to i8\0A\00" +@.str13064 = private unnamed_addr constant [15 x i8] c" store i8 %sb\00" +@.str13065 = private unnamed_addr constant [10 x i8] c", ptr %sa\00" +@.str13066 = private unnamed_addr constant [13 x i8] c"\0A ret void\0A\00" +@.str13067 = private unnamed_addr constant [6 x i8] c" %sw\00" +@.str13068 = private unnamed_addr constant [26 x i8] c" = trunc i64 %val to i32\0A\00" +@.str13069 = private unnamed_addr constant [16 x i8] c" store i32 %sw\00" +@.str13070 = private unnamed_addr constant [10 x i8] c", ptr %sa\00" +@.str13071 = private unnamed_addr constant [13 x i8] c"\0A ret void\0A\00" +@.str13072 = private unnamed_addr constant [3 x i8] c"sk\00" +@.str13073 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13074 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" +@.str13075 = private unnamed_addr constant [3 x i8] c"gn\00" +@.str13076 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13077 = private unnamed_addr constant [23 x i8] c" %sdyn = sub i32 %p, \00" +@.str13078 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13079 = private unnamed_addr constant [175 x i8] c" %sdlo = icmp sge i32 %sdyn, 0\0A %sdc = load i32, ptr @dyn_count\0A %sdhi = icmp slt i32 %sdyn, %sdc\0A %sdok = and i1 %sdlo, %sdhi\0A br i1 %sdok, label %sdyng, label %sdnone\0A\00" +@.str13080 = private unnamed_addr constant [110 x i8] c"sdyng:\0A %ssp = getelementptr inbounds [32 x ptr], ptr @dynS, i32 0, i32 %sdyn\0A %sbase = load ptr, ptr %ssp\0A\00" +@.str13081 = private unnamed_addr constant [156 x i8] c" %sfp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %sdyn\0A %snf = load i32, ptr %sfp\0A %srow = mul i32 %e, %snf\0A %sidx = add i32 %srow, %f\0A\00" +@.str13082 = private unnamed_addr constant [131 x i8] c" %saddr = getelementptr inbounds i32, ptr %sbase, i32 %sidx\0A %sv = trunc i64 %val to i32\0A store i32 %sv, ptr %saddr\0A ret void\0A\00" +@.str13083 = private unnamed_addr constant [23 x i8] c"sdnone:\0A ret void\0A}\0A\0A\00" +@.str13084 = private unnamed_addr constant [48 x i8] c"define i32 @ludic_has(i32 %e, i32 %p) {\0Aentry:\0A\00" +@.str13085 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20344: index out of range: \00" +@.str13086 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20345: index out of range: \00" +@.str13087 = private unnamed_addr constant [5 x i8] c" %m\00" +@.str13088 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str13089 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13090 = private unnamed_addr constant [11 x i8] c" br i1 %m\00" +@.str13091 = private unnamed_addr constant [11 x i8] c", label %g\00" +@.str13092 = private unnamed_addr constant [12 x i8] c", label %gn\00" +@.str13093 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13094 = private unnamed_addr constant [2 x i8] c"g\00" +@.str13095 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13096 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str13097 = private unnamed_addr constant [6 x i8] c" %hp\00" +@.str13098 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str13099 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str13100 = private unnamed_addr constant [6 x i8] c" %hv\00" +@.str13101 = private unnamed_addr constant [20 x i8] c" = load i8, ptr %hp\00" +@.str13102 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13103 = private unnamed_addr constant [6 x i8] c" %hr\00" +@.str13104 = private unnamed_addr constant [15 x i8] c" = zext i8 %hv\00" +@.str13105 = private unnamed_addr constant [22 x i8] c" to i32\0A ret i32 %hr\00" +@.str13106 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13107 = private unnamed_addr constant [3 x i8] c"gn\00" +@.str13108 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13109 = private unnamed_addr constant [23 x i8] c" %hdyn = sub i32 %p, \00" +@.str13110 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13111 = private unnamed_addr constant [175 x i8] c" %hdlo = icmp sge i32 %hdyn, 0\0A %hdc = load i32, ptr @dyn_count\0A %hdhi = icmp slt i32 %hdyn, %hdc\0A %hdok = and i1 %hdlo, %hdhi\0A br i1 %hdok, label %hdyng, label %hdnone\0A\00" +@.str13112 = private unnamed_addr constant [238 x i8] c"hdyng:\0A %hhp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %hdyn\0A %hh = load ptr, ptr %hhp\0A %hslot = getelementptr inbounds i8, ptr %hh, i32 %e\0A %hval = load i8, ptr %hslot\0A %hres = zext i8 %hval to i32\0A ret i32 %hres\0A\00" +@.str13113 = private unnamed_addr constant [24 x i8] c"hdnone:\0A ret i32 0\0A}\0A\0A\00" +@.str13114 = private unnamed_addr constant [67 x i8] c"define i32 @ludic_register_prop(ptr %name, i32 %nfields) {\0Aentry:\0A\00" +@.str13115 = private unnamed_addr constant [102 x i8] c" %dc = load i32, ptr @dyn_count\0A %full = icmp slt i32 %dc, 32\0A br i1 %full, label %do, label %rej\0A\00" +@.str13116 = private unnamed_addr constant [122 x i8] c"do:\0A %rcap = load i32, ptr @L_cap\0A %nf4 = mul i32 %nfields, 4\0A %sz = mul i32 %nf4, %rcap\0A %szl = sext i32 %sz to i64\0A\00" +@.str13117 = private unnamed_addr constant [83 x i8] c" %buf = call ptr @malloc(i64 %szl)\0A call ptr @memset(ptr %buf, i32 0, i64 %szl)\0A\00" +@.str13118 = private unnamed_addr constant [96 x i8] c" %sp = getelementptr inbounds [32 x ptr], ptr @dynS, i32 0, i32 %dc\0A store ptr %buf, ptr %sp\0A\00" +@.str13119 = private unnamed_addr constant [119 x i8] c" %hcap = sext i32 %rcap to i64\0A %hbuf = call ptr @malloc(i64 %hcap)\0A call ptr @memset(ptr %hbuf, i32 0, i64 %hcap)\0A\00" +@.str13120 = private unnamed_addr constant [97 x i8] c" %hp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %dc\0A store ptr %hbuf, ptr %hp\0A\00" +@.str13121 = private unnamed_addr constant [100 x i8] c" %fp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %dc\0A store i32 %nfields, ptr %fp\0A\00" +@.str13122 = private unnamed_addr constant [100 x i8] c" %np = getelementptr inbounds [32 x ptr], ptr @dynName, i32 0, i32 %dc\0A store ptr %name, ptr %np\0A\00" +@.str13123 = private unnamed_addr constant [22 x i8] c" %id = add i32 %dc, \00" +@.str13124 = private unnamed_addr constant [73 x i8] c"\0A %dc1 = add i32 %dc, 1\0A store i32 %dc1, ptr @dyn_count\0A ret i32 %id\0A\00" +@.str13125 = private unnamed_addr constant [22 x i8] c"rej:\0A ret i32 -1\0A}\0A\0A\00" +@.str13126 = private unnamed_addr constant [56 x i8] c"define void @ludic_attach_dyn(i32 %e, i32 %p) {\0Aentry:\0A\00" +@.str13127 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %p, \00" +@.str13128 = private unnamed_addr constant [187 x i8] c"\0A %hp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %dyn\0A %h = load ptr, ptr %hp\0A %slot = getelementptr inbounds i8, ptr %h, i32 %e\0A store i8 1, ptr %slot\0A ret void\0A}\0A\0A\00" +@.str13129 = private unnamed_addr constant [56 x i8] c"define void @ludic_detach_dyn(i32 %e, i32 %p) {\0Aentry:\0A\00" +@.str13130 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %p, \00" +@.str13131 = private unnamed_addr constant [187 x i8] c"\0A %hp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %dyn\0A %h = load ptr, ptr %hp\0A %slot = getelementptr inbounds i8, ptr %h, i32 %e\0A store i8 0, ptr %slot\0A ret void\0A}\0A\0A\00" +@.str13132 = private unnamed_addr constant [88 x i8] c"define i32 @ludic_entity_count() {\0Aentry:\0A %n = load i32, ptr @L_entc\0A ret i32 %n\0A}\0A\0A\00" +@.str13133 = private unnamed_addr constant [41 x i8] c"define i32 @ludic_kind(i32 %e) {\0Aentry:\0A\00" +@.str13134 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str13135 = private unnamed_addr constant [41 x i8] c" %kp = getelementptr inbounds i32, ptr \00" +@.str13136 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str13137 = private unnamed_addr constant [42 x i8] c" %k = load i32, ptr %kp\0A ret i32 %k\0A}\0A\0A\00" +@.str13138 = private unnamed_addr constant [48 x i8] c"define i32 @ludic_model_id(ptr %name) {\0Aentry:\0A\00" +@.str13139 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20396: index out of range: \00" +@.str13140 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20397: index out of range: \00" +@.str13141 = private unnamed_addr constant [7 x i8] c" %mdc\00" +@.str13142 = private unnamed_addr constant [36 x i8] c" = call i32 @strcmp(ptr %name, ptr \00" +@.str13143 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13144 = private unnamed_addr constant [7 x i8] c" %mde\00" +@.str13145 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %mdc\00" +@.str13146 = private unnamed_addr constant [5 x i8] c", 0\0A\00" +@.str13147 = private unnamed_addr constant [13 x i8] c" br i1 %mde\00" +@.str13148 = private unnamed_addr constant [13 x i8] c", label %mdh\00" +@.str13149 = private unnamed_addr constant [13 x i8] c", label %mdn\00" +@.str13150 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13151 = private unnamed_addr constant [4 x i8] c"mdh\00" +@.str13152 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" +@.str13153 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20401: index out of range: \00" +@.str13154 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13155 = private unnamed_addr constant [4 x i8] c"mdn\00" +@.str13156 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13157 = private unnamed_addr constant [17 x i8] c" ret i32 -1\0A}\0A\0A\00" +@.str13158 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20415: index out of range: \00" +@.str13159 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20416: index out of range: \00" +@.str13160 = private unnamed_addr constant [4 x i8] c"int\00" +@.str13161 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str13162 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13163 = private unnamed_addr constant [25 x i8] c"define i32 @ludic_spawn_\00" +@.str13164 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" +@.str13165 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str13166 = private unnamed_addr constant [42 x i8] c"define i32 @ludic_spawn(i32 %m) {\0Aentry:\0A\00" +@.str13167 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20437: index out of range: \00" +@.str13168 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20438: index out of range: \00" +@.str13169 = private unnamed_addr constant [6 x i8] c" %sm\00" +@.str13170 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %m, \00" +@.str13171 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13172 = private unnamed_addr constant [12 x i8] c" br i1 %sm\00" +@.str13173 = private unnamed_addr constant [12 x i8] c", label %sh\00" +@.str13174 = private unnamed_addr constant [12 x i8] c", label %sn\00" +@.str13175 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13176 = private unnamed_addr constant [3 x i8] c"sh\00" +@.str13177 = private unnamed_addr constant [8 x i8] c":\0A %sr\00" +@.str13178 = private unnamed_addr constant [26 x i8] c" = call i32 @ludic_spawn_\00" +@.str13179 = private unnamed_addr constant [17 x i8] c"()\0A ret i32 %sr\00" +@.str13180 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13181 = private unnamed_addr constant [3 x i8] c"sn\00" +@.str13182 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13183 = private unnamed_addr constant [17 x i8] c" ret i32 -1\0A}\0A\0A\00" +@.str13184 = private unnamed_addr constant [58 x i8] c"define i32 @ludic_query_next(i32 %p, i32 %from) {\0Aentry:\0A\00" +@.str13185 = private unnamed_addr constant [47 x i8] c" %n = load i32, ptr @L_entc\0A br label %loop\0A\00" +@.str13186 = private unnamed_addr constant [56 x i8] c"loop:\0A %e = phi i32 [ %from, %entry ], [ %e1, %cont ]\0A\00" +@.str13187 = private unnamed_addr constant [67 x i8] c" %go = icmp slt i32 %e, %n\0A br i1 %go, label %body, label %none\0A\00" +@.str13188 = private unnamed_addr constant [7 x i8] c"body:\0A\00" +@.str13189 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str13190 = private unnamed_addr constant [41 x i8] c" %ap = getelementptr inbounds i32, ptr \00" +@.str13191 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str13192 = private unnamed_addr constant [93 x i8] c" %al = load i32, ptr %ap\0A %isa = icmp ne i32 %al, 0\0A br i1 %isa, label %chk, label %cont\0A\00" +@.str13193 = private unnamed_addr constant [115 x i8] c"chk:\0A %h = call i32 @ludic_has(i32 %e, i32 %p)\0A %hit = icmp ne i32 %h, 0\0A br i1 %hit, label %hitb, label %cont\0A\00" +@.str13194 = private unnamed_addr constant [20 x i8] c"hitb:\0A ret i32 %e\0A\00" +@.str13195 = private unnamed_addr constant [46 x i8] c"cont:\0A %e1 = add i32 %e, 1\0A br label %loop\0A\00" +@.str13196 = private unnamed_addr constant [23 x i8] c"none:\0A ret i32 -1\0A}\0A\0A\00" +@.str13197 = private unnamed_addr constant [1 x i8] c"\00" +@.str13198 = private unnamed_addr constant [4 x i8] c"int\00" +@.str13199 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20480: index out of range: \00" +@.str13200 = private unnamed_addr constant [41 x i8] c"define i32 @ludic_prop_count() {\0Aentry:\0A\00" +@.str13201 = private unnamed_addr constant [52 x i8] c" %d = load i32, ptr @dyn_count\0A %n = add i32 %d, \00" +@.str13202 = private unnamed_addr constant [18 x i8] c"\0A ret i32 %n\0A}\0A\0A\00" +@.str13203 = private unnamed_addr constant [46 x i8] c"define ptr @ludic_prop_name(i32 %i) {\0Aentry:\0A\00" +@.str13204 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20491: index out of range: \00" +@.str13205 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20492: index out of range: \00" +@.str13206 = private unnamed_addr constant [6 x i8] c" %pe\00" +@.str13207 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %i, \00" +@.str13208 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13209 = private unnamed_addr constant [12 x i8] c" br i1 %pe\00" +@.str13210 = private unnamed_addr constant [12 x i8] c", label %ph\00" +@.str13211 = private unnamed_addr constant [12 x i8] c", label %pn\00" +@.str13212 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13213 = private unnamed_addr constant [3 x i8] c"ph\00" +@.str13214 = private unnamed_addr constant [13 x i8] c":\0A ret ptr \00" +@.str13215 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13216 = private unnamed_addr constant [3 x i8] c"pn\00" +@.str13217 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13218 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %i, \00" +@.str13219 = private unnamed_addr constant [35 x i8] c"\0A %dc = load i32, ptr @dyn_count\0A\00" +@.str13220 = private unnamed_addr constant [70 x i8] c" %ib = icmp uge i32 %dyn, %dc\0A br i1 %ib, label %pbad, label %pdyn\0A\00" +@.str13221 = private unnamed_addr constant [120 x i8] c"pdyn:\0A %np = getelementptr inbounds [32 x ptr], ptr @dynName, i32 0, i32 %dyn\0A %nm = load ptr, ptr %np\0A ret ptr %nm\0A\00" +@.str13222 = private unnamed_addr constant [17 x i8] c"pbad:\0A ret ptr \00" +@.str13223 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" +@.str13224 = private unnamed_addr constant [48 x i8] c"define i32 @ludic_field_count(i32 %p) {\0Aentry:\0A\00" +@.str13225 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20510: index out of range: \00" +@.str13226 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20511: index out of range: \00" +@.str13227 = private unnamed_addr constant [7 x i8] c" %fce\00" +@.str13228 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str13229 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13230 = private unnamed_addr constant [13 x i8] c" br i1 %fce\00" +@.str13231 = private unnamed_addr constant [13 x i8] c", label %fch\00" +@.str13232 = private unnamed_addr constant [13 x i8] c", label %fcn\00" +@.str13233 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13234 = private unnamed_addr constant [4 x i8] c"fch\00" +@.str13235 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" +@.str13236 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13237 = private unnamed_addr constant [4 x i8] c"fcn\00" +@.str13238 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13239 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %p, \00" +@.str13240 = private unnamed_addr constant [35 x i8] c"\0A %dc = load i32, ptr @dyn_count\0A\00" +@.str13241 = private unnamed_addr constant [72 x i8] c" %ib = icmp uge i32 %dyn, %dc\0A br i1 %ib, label %fcbad, label %fcdyn\0A\00" +@.str13242 = private unnamed_addr constant [118 x i8] c"fcdyn:\0A %fp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %dyn\0A %fn = load i32, ptr %fp\0A ret i32 %fn\0A\00" +@.str13243 = private unnamed_addr constant [23 x i8] c"fcbad:\0A ret i32 0\0A}\0A\0A\00" +@.str13244 = private unnamed_addr constant [55 x i8] c"define ptr @ludic_field_name(i32 %p, i32 %f) {\0Aentry:\0A\00" +@.str13245 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20529: index out of range: \00" +@.str13246 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20530: index out of range: \00" +@.str13247 = private unnamed_addr constant [7 x i8] c" %fne\00" +@.str13248 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str13249 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13250 = private unnamed_addr constant [13 x i8] c" br i1 %fne\00" +@.str13251 = private unnamed_addr constant [13 x i8] c", label %fnk\00" +@.str13252 = private unnamed_addr constant [13 x i8] c", label %fnn\00" +@.str13253 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13254 = private unnamed_addr constant [4 x i8] c"fnk\00" +@.str13255 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13256 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20536: index out of range: \00" +@.str13257 = private unnamed_addr constant [2 x i8] c"_\00" +@.str13258 = private unnamed_addr constant [8 x i8] c" %fnfe\00" +@.str13259 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" +@.str13260 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13261 = private unnamed_addr constant [14 x i8] c" br i1 %fnfe\00" +@.str13262 = private unnamed_addr constant [14 x i8] c", label %fnfh\00" +@.str13263 = private unnamed_addr constant [14 x i8] c", label %fnfn\00" +@.str13264 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13265 = private unnamed_addr constant [5 x i8] c"fnfh\00" +@.str13266 = private unnamed_addr constant [13 x i8] c":\0A ret ptr \00" +@.str13267 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13268 = private unnamed_addr constant [5 x i8] c"fnfn\00" +@.str13269 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13270 = private unnamed_addr constant [11 x i8] c" ret ptr \00" +@.str13271 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13272 = private unnamed_addr constant [4 x i8] c"fnn\00" +@.str13273 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13274 = private unnamed_addr constant [11 x i8] c" ret ptr \00" +@.str13275 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" +@.str13276 = private unnamed_addr constant [55 x i8] c"define ptr @ludic_field_type(i32 %p, i32 %f) {\0Aentry:\0A\00" +@.str13277 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20555: index out of range: \00" +@.str13278 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20556: index out of range: \00" +@.str13279 = private unnamed_addr constant [7 x i8] c" %fte\00" +@.str13280 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str13281 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13282 = private unnamed_addr constant [13 x i8] c" br i1 %fte\00" +@.str13283 = private unnamed_addr constant [13 x i8] c", label %ftk\00" +@.str13284 = private unnamed_addr constant [13 x i8] c", label %ftn\00" +@.str13285 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13286 = private unnamed_addr constant [4 x i8] c"ftk\00" +@.str13287 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13288 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20562: index out of range: \00" +@.str13289 = private unnamed_addr constant [2 x i8] c"_\00" +@.str13290 = private unnamed_addr constant [8 x i8] c" %ftfe\00" +@.str13291 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" +@.str13292 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13293 = private unnamed_addr constant [14 x i8] c" br i1 %ftfe\00" +@.str13294 = private unnamed_addr constant [14 x i8] c", label %ftfh\00" +@.str13295 = private unnamed_addr constant [14 x i8] c", label %ftfn\00" +@.str13296 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13297 = private unnamed_addr constant [5 x i8] c"ftfh\00" +@.str13298 = private unnamed_addr constant [13 x i8] c":\0A ret ptr \00" +@.str13299 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13300 = private unnamed_addr constant [5 x i8] c"ftfn\00" +@.str13301 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13302 = private unnamed_addr constant [11 x i8] c" ret ptr \00" +@.str13303 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13304 = private unnamed_addr constant [4 x i8] c"ftn\00" +@.str13305 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13306 = private unnamed_addr constant [11 x i8] c" ret ptr \00" +@.str13307 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" +@.str13308 = private unnamed_addr constant [38 x i8] c"define void @L_tick_fixed() {\0Aentry:\0A\00" +@.str13309 = private unnamed_addr constant [6 x i8] c"Input\00" +@.str13310 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" +@.str13311 = private unnamed_addr constant [7 x i8] c"Update\00" +@.str13312 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" +@.str13313 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str13314 = private unnamed_addr constant [39 x i8] c"define void @L_tick_render() {\0Aentry:\0A\00" +@.str13315 = private unnamed_addr constant [7 x i8] c"Render\00" +@.str13316 = private unnamed_addr constant [8 x i8] c"Overlay\00" +@.str13317 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str13318 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20602: index out of range: \00" +@.str13319 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20602: index out of range: \00" +@.str13320 = private unnamed_addr constant [49 x i8] c"define i32 @main(i32 %argc, ptr %argv) {\0Aentry:\0A\00" +@.str13321 = private unnamed_addr constant [32 x i8] c" store i32 %argc, ptr @L_argc\0A\00" +@.str13322 = private unnamed_addr constant [32 x i8] c" store ptr %argv, ptr @L_argv\0A\00" +@.str13323 = private unnamed_addr constant [31 x i8] c" call void @L_init_runtime()\0A\00" +@.str13324 = private unnamed_addr constant [28 x i8] c" call void @L_grow(i32 1)\0A\00" +@.str13325 = private unnamed_addr constant [8 x i8] c"rt_init\00" +@.str13326 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13327 = private unnamed_addr constant [8 x i8] c"rt_init\00" +@.str13328 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str13329 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" +@.str13330 = private unnamed_addr constant [6 x i8] c"Start\00" +@.str13331 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str13332 = private unnamed_addr constant [16 x i8] c", ptr @L_scene\0A\00" +@.str13333 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20626: index out of range: \00" +@.str13334 = private unnamed_addr constant [26 x i8] c" call void @scene_enter_\00" +@.str13335 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20626: index out of range: \00" +@.str13336 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str13337 = private unnamed_addr constant [14 x i8] c"program_start\00" +@.str13338 = private unnamed_addr constant [33 x i8] c" call void @ev_program_start()\0A\00" +@.str13339 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" +@.str13340 = private unnamed_addr constant [7 x i8] c"loop:\0A\00" +@.str13341 = private unnamed_addr constant [25 x i8] c"load i32, ptr @L_running\00" +@.str13342 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str13343 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str13344 = private unnamed_addr constant [11 x i8] c"rt_running\00" +@.str13345 = private unnamed_addr constant [10 x i8] c"call i32 \00" +@.str13346 = private unnamed_addr constant [11 x i8] c"rt_running\00" +@.str13347 = private unnamed_addr constant [3 x i8] c"()\00" +@.str13348 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str13349 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str13350 = private unnamed_addr constant [8 x i8] c"and i1 \00" +@.str13351 = private unnamed_addr constant [3 x i8] c", \00" +@.str13352 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str13353 = private unnamed_addr constant [28 x i8] c", label %body, label %done\0A\00" +@.str13354 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str13355 = private unnamed_addr constant [28 x i8] c", label %body, label %done\0A\00" +@.str13356 = private unnamed_addr constant [7 x i8] c"body:\0A\00" +@.str13357 = private unnamed_addr constant [12 x i8] c"input_drive\00" +@.str13358 = private unnamed_addr constant [10 x i8] c"call i32 \00" +@.str13359 = private unnamed_addr constant [12 x i8] c"input_drive\00" +@.str13360 = private unnamed_addr constant [3 x i8] c"()\00" +@.str13361 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str13362 = private unnamed_addr constant [14 x i8] c", ptr @L_key\0A\00" +@.str13363 = private unnamed_addr constant [8 x i8] c"rt_poll\00" +@.str13364 = private unnamed_addr constant [10 x i8] c"call i32 \00" +@.str13365 = private unnamed_addr constant [8 x i8] c"rt_poll\00" +@.str13366 = private unnamed_addr constant [3 x i8] c"()\00" +@.str13367 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str13368 = private unnamed_addr constant [14 x i8] c", ptr @L_key\0A\00" +@.str13369 = private unnamed_addr constant [11 x i8] c"rt_ui_tick\00" +@.str13370 = private unnamed_addr constant [21 x i8] c"load i32, ptr @L_key\00" +@.str13371 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13372 = private unnamed_addr constant [11 x i8] c"rt_ui_tick\00" +@.str13373 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str13374 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13375 = private unnamed_addr constant [6 x i8] c"Input\00" +@.str13376 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" +@.str13377 = private unnamed_addr constant [7 x i8] c"Update\00" +@.str13378 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" +@.str13379 = private unnamed_addr constant [9 x i8] c"rt_clear\00" +@.str13380 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13381 = private unnamed_addr constant [9 x i8] c"rt_clear\00" +@.str13382 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str13383 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13384 = private unnamed_addr constant [7 x i8] c"Render\00" +@.str13385 = private unnamed_addr constant [8 x i8] c"Overlay\00" +@.str13386 = private unnamed_addr constant [11 x i8] c"rt_present\00" +@.str13387 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13388 = private unnamed_addr constant [11 x i8] c"rt_present\00" +@.str13389 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str13390 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_frame\00" +@.str13391 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str13392 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str13393 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str13394 = private unnamed_addr constant [16 x i8] c", ptr @L_frame\0A\00" +@.str13395 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" +@.str13396 = private unnamed_addr constant [7 x i8] c"done:\0A\00" +@.str13397 = private unnamed_addr constant [35 x i8] c" call void @L_despawn_all(i32 2)\0A\00" +@.str13398 = private unnamed_addr constant [7 x i8] c"OnQuit\00" +@.str13399 = private unnamed_addr constant [13 x i8] c"program_quit\00" +@.str13400 = private unnamed_addr constant [32 x i8] c" call void @ev_program_quit()\0A\00" +@.str13401 = private unnamed_addr constant [12 x i8] c"rt_shutdown\00" +@.str13402 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13403 = private unnamed_addr constant [12 x i8] c"rt_shutdown\00" +@.str13404 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str13405 = private unnamed_addr constant [15 x i8] c" ret i32 0\0A}\0A\00" +@.str13406 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20721: index out of range: \00" +@.str13407 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20722: index out of range: \00" +@.str13408 = private unnamed_addr constant [4 x i8] c"@g_\00" +@.str13409 = private unnamed_addr constant [15 x i8] c"machine state \00" +@.str13410 = private unnamed_addr constant [27 x i8] c" is not a variant of enum \00" +@.str13411 = private unnamed_addr constant [1 x i8] c"\00" +@.str13412 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str13413 = private unnamed_addr constant [10 x i8] c"call i32 \00" +@.str13414 = private unnamed_addr constant [7 x i8] c"rt_reg\00" +@.str13415 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str13416 = private unnamed_addr constant [2 x i8] c")\00" +@.str13417 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20757: index out of range: \00" +@.str13418 = private unnamed_addr constant [6 x i8] c"smend\00" +@.str13419 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20762: index out of range: \00" +@.str13420 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str13421 = private unnamed_addr constant [3 x i8] c", \00" +@.str13422 = private unnamed_addr constant [6 x i8] c"sbody\00" +@.str13423 = private unnamed_addr constant [5 x i8] c"sarm\00" +@.str13424 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str13425 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13426 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13427 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13428 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13429 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str13430 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13431 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13432 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str13433 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13434 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13435 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20784: index out of range: \00" +@.str13436 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20787: index out of range: \00" +@.str13437 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20787: index out of range: \00" +@.str13438 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str13439 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13440 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13441 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13442 = private unnamed_addr constant [11 x i8] c"rt_set_reg\00" +@.str13443 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str13444 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str13445 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13446 = private unnamed_addr constant [27 x i8] c"become: no state or scene \00" +@.str13447 = private unnamed_addr constant [25 x i8] c" call void @scene_exit_\00" +@.str13448 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str13449 = private unnamed_addr constant [30 x i8] c" call void @L_scene_leave()\0A\00" +@.str13450 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str13451 = private unnamed_addr constant [16 x i8] c", ptr @L_scene\0A\00" +@.str13452 = private unnamed_addr constant [26 x i8] c" call void @scene_enter_\00" +@.str13453 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str13454 = private unnamed_addr constant [5 x i8] c"file\00" +@.str13455 = private unnamed_addr constant [4 x i8] c"%io\00" +@.str13456 = private unnamed_addr constant [3 x i8] c" \00" +@.str13457 = private unnamed_addr constant [14 x i8] c" = call i64 @\00" +@.str13458 = private unnamed_addr constant [6 x i8] c"(ptr \00" +@.str13459 = private unnamed_addr constant [14 x i8] c", i64 1, i64 \00" +@.str13460 = private unnamed_addr constant [11 x i8] c", ptr %f)\0A\00" +@.str13461 = private unnamed_addr constant [5 x i8] c"size\00" +@.str13462 = private unnamed_addr constant [6 x i8] c"%ioff\00" +@.str13463 = private unnamed_addr constant [3 x i8] c" \00" +@.str13464 = private unnamed_addr constant [12 x i8] c" = add i64 \00" +@.str13465 = private unnamed_addr constant [3 x i8] c", \00" +@.str13466 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13467 = private unnamed_addr constant [5 x i8] c"%ioa\00" +@.str13468 = private unnamed_addr constant [3 x i8] c" \00" +@.str13469 = private unnamed_addr constant [45 x i8] c" = getelementptr inbounds i8, ptr %buf, i64 \00" +@.str13470 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13471 = private unnamed_addr constant [5 x i8] c"save\00" +@.str13472 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" +@.str13473 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13474 = private unnamed_addr constant [7 x i8] c", i64 \00" +@.str13475 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13476 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" +@.str13477 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13478 = private unnamed_addr constant [7 x i8] c", i64 \00" +@.str13479 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13480 = private unnamed_addr constant [6 x i8] c"%ioff\00" +@.str13481 = private unnamed_addr constant [3 x i8] c" \00" +@.str13482 = private unnamed_addr constant [12 x i8] c" = add i64 \00" +@.str13483 = private unnamed_addr constant [3 x i8] c", \00" @.str13484 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13485 = private unnamed_addr constant [3 x i8] c" \00" -@.str13486 = private unnamed_addr constant [45 x i8] c" = getelementptr inbounds i8, ptr %buf, i32 \00" -@.str13487 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13488 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" -@.str13489 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13490 = private unnamed_addr constant [7 x i8] c", i64 \00" -@.str13491 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13492 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20947: index out of range: \00" -@.str13493 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str13494 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" -@.str13495 = private unnamed_addr constant [22 x i8] c"define void @L_apply_\00" -@.str13496 = private unnamed_addr constant [39 x i8] c"(i32 %e, ptr %buf, i32 %len) {\0Aentry:\0A\00" -@.str13497 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20968: index out of range: \00" -@.str13498 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20969: index out of range: \00" -@.str13499 = private unnamed_addr constant [3 x i8] c" \00" -@.str13500 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str13501 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str13502 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str13503 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %e\0A\00" -@.str13504 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20975: index out of range: \00" -@.str13505 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20976: index out of range: \00" -@.str13506 = private unnamed_addr constant [3 x i8] c" \00" -@.str13507 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" -@.str13508 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13509 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str13510 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13511 = private unnamed_addr constant [3 x i8] c" \00" -@.str13512 = private unnamed_addr constant [45 x i8] c" = getelementptr inbounds i8, ptr %buf, i32 \00" -@.str13513 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13514 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" -@.str13515 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13516 = private unnamed_addr constant [7 x i8] c", i64 \00" -@.str13517 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13518 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20980: index out of range: \00" -@.str13519 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str13520 = private unnamed_addr constant [56 x i8] c"define i32 @ludic_serialize(i32 %e, ptr %buf) {\0Aentry:\0A\00" -@.str13521 = private unnamed_addr constant [33 x i8] c" %kp = getelementptr inbounds [\00" -@.str13522 = private unnamed_addr constant [62 x i8] c" x i32], ptr @L_kind, i32 0, i32 %e\0A %k = load i32, ptr %kp\0A\00" -@.str13523 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21003: index out of range: \00" -@.str13524 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21003: index out of range: \00" -@.str13525 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21004: index out of range: \00" -@.str13526 = private unnamed_addr constant [5 x i8] c" %c\00" -@.str13527 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" -@.str13528 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13529 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" -@.str13530 = private unnamed_addr constant [11 x i8] c", label %h\00" -@.str13531 = private unnamed_addr constant [11 x i8] c", label %n\00" -@.str13532 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13533 = private unnamed_addr constant [2 x i8] c"h\00" -@.str13534 = private unnamed_addr constant [7 x i8] c":\0A %r\00" -@.str13535 = private unnamed_addr constant [26 x i8] c" = call i32 @L_serialize_\00" -@.str13536 = private unnamed_addr constant [32 x i8] c"(i32 %e, ptr %buf)\0A ret i32 %r\00" -@.str13537 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13538 = private unnamed_addr constant [2 x i8] c"n\00" -@.str13539 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13540 = private unnamed_addr constant [16 x i8] c" ret i32 0\0A}\0A\0A\00" -@.str13541 = private unnamed_addr constant [63 x i8] c"define void @ludic_apply(i32 %e, ptr %buf, i32 %len) {\0Aentry:\0A\00" -@.str13542 = private unnamed_addr constant [33 x i8] c" %kp = getelementptr inbounds [\00" -@.str13543 = private unnamed_addr constant [62 x i8] c" x i32], ptr @L_kind, i32 0, i32 %e\0A %k = load i32, ptr %kp\0A\00" -@.str13544 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21019: index out of range: \00" -@.str13545 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21019: index out of range: \00" -@.str13546 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21020: index out of range: \00" -@.str13547 = private unnamed_addr constant [5 x i8] c" %c\00" -@.str13548 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" -@.str13549 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13550 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" -@.str13551 = private unnamed_addr constant [11 x i8] c", label %h\00" -@.str13552 = private unnamed_addr constant [11 x i8] c", label %n\00" -@.str13553 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13554 = private unnamed_addr constant [2 x i8] c"h\00" -@.str13555 = private unnamed_addr constant [24 x i8] c":\0A call void @L_apply_\00" -@.str13556 = private unnamed_addr constant [41 x i8] c"(i32 %e, ptr %buf, i32 %len)\0A ret void\0A\00" -@.str13557 = private unnamed_addr constant [2 x i8] c"n\00" -@.str13558 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13559 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str13560 = private unnamed_addr constant [46 x i8] c"define i32 @ludic_sync_size(i32 %e) {\0Aentry:\0A\00" -@.str13561 = private unnamed_addr constant [33 x i8] c" %kp = getelementptr inbounds [\00" -@.str13562 = private unnamed_addr constant [62 x i8] c" x i32], ptr @L_kind, i32 0, i32 %e\0A %k = load i32, ptr %kp\0A\00" -@.str13563 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21037: index out of range: \00" -@.str13564 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21037: index out of range: \00" -@.str13565 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21038: index out of range: \00" -@.str13566 = private unnamed_addr constant [5 x i8] c" %c\00" -@.str13567 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" -@.str13568 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13569 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" -@.str13570 = private unnamed_addr constant [11 x i8] c", label %h\00" -@.str13571 = private unnamed_addr constant [11 x i8] c", label %n\00" -@.str13572 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13573 = private unnamed_addr constant [2 x i8] c"h\00" -@.str13574 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" -@.str13575 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21041: index out of range: \00" -@.str13576 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13577 = private unnamed_addr constant [2 x i8] c"n\00" -@.str13578 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13579 = private unnamed_addr constant [16 x i8] c" ret i32 0\0A}\0A\0A\00" -@.str13580 = private unnamed_addr constant [38 x i8] c"define i32 @L_owner(i32 %e) {\0Aentry:\0A\00" -@.str13581 = private unnamed_addr constant [32 x i8] c" %p = getelementptr inbounds [\00" -@.str13582 = private unnamed_addr constant [82 x i8] c" x i32], ptr @L_owner_arr, i32 0, i32 %e\0A %v = load i32, ptr %p\0A ret i32 %v\0A}\0A\0A\00" -@.str13583 = private unnamed_addr constant [52 x i8] c"define void @L_set_owner(i32 %e, i32 %id) {\0Aentry:\0A\00" -@.str13584 = private unnamed_addr constant [32 x i8] c" %p = getelementptr inbounds [\00" -@.str13585 = private unnamed_addr constant [80 x i8] c" x i32], ptr @L_owner_arr, i32 0, i32 %e\0A store i32 %id, ptr %p\0A ret void\0A}\0A\0A\00" -@.str13586 = private unnamed_addr constant [41 x i8] c"define i32 @L_is_owner(i32 %e) {\0Aentry:\0A\00" -@.str13587 = private unnamed_addr constant [32 x i8] c" %p = getelementptr inbounds [\00" -@.str13588 = private unnamed_addr constant [66 x i8] c" x i32], ptr @L_owner_arr, i32 0, i32 %e\0A %o = load i32, ptr %p\0A\00" -@.str13589 = private unnamed_addr constant [106 x i8] c" %lid = load i32, ptr @L_localid\0A %eq = icmp eq i32 %o, %lid\0A %r = zext i1 %eq to i32\0A ret i32 %r\0A}\0A\0A\00" -@.str13590 = private unnamed_addr constant [62 x i8] c"@L_netq = internal global [64 x [2048 x i8]] zeroinitializer\0A\00" -@.str13591 = private unnamed_addr constant [56 x i8] c"@L_netlen = internal global [64 x i32] zeroinitializer\0A\00" -@.str13592 = private unnamed_addr constant [36 x i8] c"@L_nethead = internal global i32 0\0A\00" -@.str13593 = private unnamed_addr constant [36 x i8] c"@L_nettail = internal global i32 0\0A\00" -@.str13594 = private unnamed_addr constant [65 x i8] c"define void @L_net_send(i32 %peer, ptr %buf, i32 %len) {\0Aentry:\0A\00" -@.str13595 = private unnamed_addr constant [71 x i8] c" %l0 = icmp slt i32 %len, 0\0A %len1 = select i1 %l0, i32 0, i32 %len\0A\00" -@.str13596 = private unnamed_addr constant [76 x i8] c" %l1 = icmp sgt i32 %len1, 2048\0A %n = select i1 %l1, i32 2048, i32 %len1\0A\00" -@.str13597 = private unnamed_addr constant [65 x i8] c" %t = load i32, ptr @L_nettail\0A %h = load i32, ptr @L_nethead\0A\00" -@.str13598 = private unnamed_addr constant [78 x i8] c" %t1 = add i32 %t, 1\0A %tn = srem i32 %t1, 64\0A %full = icmp eq i32 %tn, %h\0A\00" -@.str13599 = private unnamed_addr constant [39 x i8] c" br i1 %full, label %drop, label %go\0A\00" -@.str13600 = private unnamed_addr constant [5 x i8] c"go:\0A\00" -@.str13601 = private unnamed_addr constant [80 x i8] c" %row = getelementptr inbounds [64 x [2048 x i8]], ptr @L_netq, i32 0, i32 %t\0A\00" -@.str13602 = private unnamed_addr constant [76 x i8] c" %nz = zext i32 %n to i64\0A call ptr @memcpy(ptr %row, ptr %buf, i64 %nz)\0A\00" -@.str13603 = private unnamed_addr constant [97 x i8] c" %lp = getelementptr inbounds [64 x i32], ptr @L_netlen, i32 0, i32 %t\0A store i32 %n, ptr %lp\0A\00" -@.str13604 = private unnamed_addr constant [50 x i8] c" store i32 %tn, ptr @L_nettail\0A br label %drop\0A\00" -@.str13605 = private unnamed_addr constant [21 x i8] c"drop:\0A ret void\0A}\0A\0A\00" -@.str13606 = private unnamed_addr constant [53 x i8] c"define i32 @L_net_poll(ptr %buf, i32 %cap) {\0Aentry:\0A\00" -@.str13607 = private unnamed_addr constant [95 x i8] c" %h = load i32, ptr @L_nethead\0A %t = load i32, ptr @L_nettail\0A %empty = icmp eq i32 %h, %t\0A\00" -@.str13608 = private unnamed_addr constant [40 x i8] c" br i1 %empty, label %none, label %go\0A\00" -@.str13609 = private unnamed_addr constant [5 x i8] c"go:\0A\00" -@.str13610 = private unnamed_addr constant [99 x i8] c" %lp = getelementptr inbounds [64 x i32], ptr @L_netlen, i32 0, i32 %h\0A %ln = load i32, ptr %lp\0A\00" -@.str13611 = private unnamed_addr constant [74 x i8] c" %big = icmp sgt i32 %ln, %cap\0A %n = select i1 %big, i32 %cap, i32 %ln\0A\00" -@.str13612 = private unnamed_addr constant [80 x i8] c" %row = getelementptr inbounds [64 x [2048 x i8]], ptr @L_netq, i32 0, i32 %h\0A\00" -@.str13613 = private unnamed_addr constant [76 x i8] c" %nz = zext i32 %n to i64\0A call ptr @memcpy(ptr %buf, ptr %row, i64 %nz)\0A\00" -@.str13614 = private unnamed_addr constant [93 x i8] c" %h1 = add i32 %h, 1\0A %hn = srem i32 %h1, 64\0A store i32 %hn, ptr @L_nethead\0A ret i32 %n\0A\00" -@.str13615 = private unnamed_addr constant [22 x i8] c"none:\0A ret i32 0\0A}\0A\0A\00" -@.str13616 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21114: index out of range: \00" -@.str13617 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21120: index out of range: \00" -@.str13618 = private unnamed_addr constant [9 x i8] c"net_send\00" -@.str13619 = private unnamed_addr constant [11 x i8] c"L_net_send\00" -@.str13620 = private unnamed_addr constant [9 x i8] c"net_poll\00" -@.str13621 = private unnamed_addr constant [11 x i8] c"L_net_poll\00" -@.str13622 = private unnamed_addr constant [58 x i8] c"@L_recvbuf = internal global [2048 x i8] zeroinitializer\0A\00" -@.str13623 = private unnamed_addr constant [9 x i8] c"net_poll\00" -@.str13624 = private unnamed_addr constant [53 x i8] c"define void @L_net_pump() {\0Aentry:\0A br label %loop\0A\00" -@.str13625 = private unnamed_addr constant [24 x i8] c"loop:\0A %n = call i32 @\00" -@.str13626 = private unnamed_addr constant [28 x i8] c"(ptr @L_recvbuf, i32 2048)\0A\00" -@.str13627 = private unnamed_addr constant [68 x i8] c" %done = icmp eq i32 %n, 0\0A br i1 %done, label %fin, label %body\0A\00" -@.str13628 = private unnamed_addr constant [41 x i8] c"body:\0A %eid = load i32, ptr @L_recvbuf\0A\00" -@.str13629 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21139: index out of range: \00" -@.str13630 = private unnamed_addr constant [5 x i8] c" %c\00" -@.str13631 = private unnamed_addr constant [22 x i8] c" = icmp eq i32 %eid, \00" -@.str13632 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13633 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" -@.str13634 = private unnamed_addr constant [11 x i8] c", label %h\00" -@.str13635 = private unnamed_addr constant [11 x i8] c", label %x\00" -@.str13636 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13637 = private unnamed_addr constant [2 x i8] c"h\00" -@.str13638 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13639 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21150: index out of range: \00" -@.str13640 = private unnamed_addr constant [2 x i8] c"_\00" -@.str13641 = private unnamed_addr constant [6 x i8] c" %fa\00" -@.str13642 = private unnamed_addr constant [51 x i8] c" = getelementptr inbounds i8, ptr @L_recvbuf, i32 \00" -@.str13643 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13644 = private unnamed_addr constant [6 x i8] c" %fv\00" -@.str13645 = private unnamed_addr constant [9 x i8] c" = load \00" -@.str13646 = private unnamed_addr constant [10 x i8] c", ptr %fa\00" -@.str13647 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13648 = private unnamed_addr constant [3 x i8] c", \00" -@.str13649 = private unnamed_addr constant [5 x i8] c" %fv\00" -@.str13650 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21156: index out of range: \00" -@.str13651 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str13652 = private unnamed_addr constant [2 x i8] c"(\00" +@.str13485 = private unnamed_addr constant [2 x i8] c"0\00" +@.str13486 = private unnamed_addr constant [6 x i8] c"fread\00" +@.str13487 = private unnamed_addr constant [5 x i8] c"load\00" +@.str13488 = private unnamed_addr constant [70 x i8] c" %sncap0 = load i32, ptr @L_cap\0A store i32 %sncap0, ptr @L_snapcap\0A\00" +@.str13489 = private unnamed_addr constant [11 x i8] c"@L_snapcap\00" +@.str13490 = private unnamed_addr constant [2 x i8] c"4\00" +@.str13491 = private unnamed_addr constant [37 x i8] c" %sncap = load i32, ptr @L_snapcap\0A\00" +@.str13492 = private unnamed_addr constant [33 x i8] c" call void @L_grow(i32 %sncap)\0A\00" +@.str13493 = private unnamed_addr constant [37 x i8] c" %sncap64 = sext i32 %sncap to i64\0A\00" +@.str13494 = private unnamed_addr constant [8 x i8] c"@L_entc\00" +@.str13495 = private unnamed_addr constant [2 x i8] c"4\00" +@.str13496 = private unnamed_addr constant [9 x i8] c"@L_freen\00" +@.str13497 = private unnamed_addr constant [2 x i8] c"4\00" +@.str13498 = private unnamed_addr constant [33 x i8] c" %nalive = mul i64 %sncap64, 4\0A\00" +@.str13499 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str13500 = private unnamed_addr constant [8 x i8] c"%nalive\00" +@.str13501 = private unnamed_addr constant [11 x i8] c"L_freelist\00" +@.str13502 = private unnamed_addr constant [8 x i8] c"%nalive\00" +@.str13503 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str13504 = private unnamed_addr constant [8 x i8] c"%nalive\00" +@.str13505 = private unnamed_addr constant [12 x i8] c"L_owner_arr\00" +@.str13506 = private unnamed_addr constant [8 x i8] c"%nalive\00" +@.str13507 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20876: index out of range: \00" +@.str13508 = private unnamed_addr constant [4 x i8] c"@g_\00" +@.str13509 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20876: index out of range: \00" +@.str13510 = private unnamed_addr constant [2 x i8] c"4\00" +@.str13511 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20880: index out of range: \00" +@.str13512 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20881: index out of range: \00" +@.str13513 = private unnamed_addr constant [7 x i8] c"%csz1_\00" +@.str13514 = private unnamed_addr constant [5 x i8] c"%csz\00" +@.str13515 = private unnamed_addr constant [3 x i8] c" \00" +@.str13516 = private unnamed_addr constant [37 x i8] c" = ptrtoint ptr getelementptr (%Cmp_\00" +@.str13517 = private unnamed_addr constant [27 x i8] c", ptr null, i32 1) to i64\0A\00" +@.str13518 = private unnamed_addr constant [3 x i8] c" \00" +@.str13519 = private unnamed_addr constant [22 x i8] c" = mul i64 %sncap64, \00" +@.str13520 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13521 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str13522 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str13523 = private unnamed_addr constant [9 x i8] c"%sncap64\00" +@.str13524 = private unnamed_addr constant [5 x i8] c"%snb\00" +@.str13525 = private unnamed_addr constant [3 x i8] c" \00" +@.str13526 = private unnamed_addr constant [19 x i8] c" = load ptr, ptr @\00" +@.str13527 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13528 = private unnamed_addr constant [5 x i8] c"file\00" +@.str13529 = private unnamed_addr constant [70 x i8] c"@.sav_path = private unnamed_addr constant [10 x i8] c\22ludic.sav\5C00\22\0A\00" +@.str13530 = private unnamed_addr constant [60 x i8] c"@.sav_wb = private unnamed_addr constant [3 x i8] c\22wb\5C00\22\0A\00" +@.str13531 = private unnamed_addr constant [60 x i8] c"@.sav_rb = private unnamed_addr constant [3 x i8] c\22rb\5C00\22\0A\00" +@.str13532 = private unnamed_addr constant [14 x i8] c"rt_save_state\00" +@.str13533 = private unnamed_addr constant [14 x i8] c"rt_load_state\00" +@.str13534 = private unnamed_addr constant [32 x i8] c"define void @L_save() {\0Aentry:\0A\00" +@.str13535 = private unnamed_addr constant [54 x i8] c" %f = call ptr @fopen(ptr @.sav_path, ptr @.sav_wb)\0A\00" +@.str13536 = private unnamed_addr constant [31 x i8] c" %bad = icmp eq ptr %f, null\0A\00" +@.str13537 = private unnamed_addr constant [41 x i8] c" br i1 %bad, label %out, label %go\0Ago:\0A\00" +@.str13538 = private unnamed_addr constant [7 x i8] c"fwrite\00" +@.str13539 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13540 = private unnamed_addr constant [14 x i8] c"rt_save_state\00" +@.str13541 = private unnamed_addr constant [10 x i8] c"(ptr %f)\0A\00" +@.str13542 = private unnamed_addr constant [68 x i8] c" %c = call i32 @fclose(ptr %f)\0A br label %out\0Aout:\0A ret void\0A}\0A\0A\00" +@.str13543 = private unnamed_addr constant [31 x i8] c"define i32 @L_load() {\0Aentry:\0A\00" +@.str13544 = private unnamed_addr constant [54 x i8] c" %f = call ptr @fopen(ptr @.sav_path, ptr @.sav_rb)\0A\00" +@.str13545 = private unnamed_addr constant [31 x i8] c" %bad = icmp eq ptr %f, null\0A\00" +@.str13546 = private unnamed_addr constant [60 x i8] c" br i1 %bad, label %miss, label %go\0Amiss:\0A ret i32 0\0Ago:\0A\00" +@.str13547 = private unnamed_addr constant [6 x i8] c"fread\00" +@.str13548 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13549 = private unnamed_addr constant [14 x i8] c"rt_load_state\00" +@.str13550 = private unnamed_addr constant [10 x i8] c"(ptr %f)\0A\00" +@.str13551 = private unnamed_addr constant [48 x i8] c" %c = call i32 @fclose(ptr %f)\0A ret i32 1\0A}\0A\0A\00" +@.str13552 = private unnamed_addr constant [45 x i8] c"define i32 @L_world_save(ptr %buf) {\0Aentry:\0A\00" +@.str13553 = private unnamed_addr constant [5 x i8] c"save\00" +@.str13554 = private unnamed_addr constant [1 x i8] c"\00" +@.str13555 = private unnamed_addr constant [5 x i8] c"%wsn\00" +@.str13556 = private unnamed_addr constant [3 x i8] c" \00" +@.str13557 = private unnamed_addr constant [14 x i8] c" = trunc i64 \00" +@.str13558 = private unnamed_addr constant [9 x i8] c" to i32\0A\00" +@.str13559 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str13560 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" +@.str13561 = private unnamed_addr constant [56 x i8] c"define void @L_world_load(ptr %buf, i32 %len) {\0Aentry:\0A\00" +@.str13562 = private unnamed_addr constant [5 x i8] c"load\00" +@.str13563 = private unnamed_addr constant [1 x i8] c"\00" +@.str13564 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str13565 = private unnamed_addr constant [37 x i8] c"define i32 @L_world_size() {\0Aentry:\0A\00" +@.str13566 = private unnamed_addr constant [5 x i8] c"size\00" +@.str13567 = private unnamed_addr constant [1 x i8] c"\00" +@.str13568 = private unnamed_addr constant [5 x i8] c"%wzn\00" +@.str13569 = private unnamed_addr constant [3 x i8] c" \00" +@.str13570 = private unnamed_addr constant [14 x i8] c" = trunc i64 \00" +@.str13571 = private unnamed_addr constant [9 x i8] c" to i32\0A\00" +@.str13572 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str13573 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" +@.str13574 = private unnamed_addr constant [5 x i8] c"file\00" +@.str13575 = private unnamed_addr constant [3 x i8] c"i8\00" +@.str13576 = private unnamed_addr constant [3 x i8] c"i8\00" +@.str13577 = private unnamed_addr constant [2 x i8] c"1\00" +@.str13578 = private unnamed_addr constant [2 x i8] c"4\00" +@.str13579 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20983: index out of range: \00" +@.str13580 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20984: index out of range: \00" +@.str13581 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20987: index out of range: \00" +@.str13582 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20987: index out of range: \00" +@.str13583 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20999: index out of range: \00" +@.str13584 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20999: index out of range: \00" +@.str13585 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21006: index out of range: \00" +@.str13586 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21006: index out of range: \00" +@.str13587 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21014: index out of range: \00" +@.str13588 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21014: index out of range: \00" +@.str13589 = private unnamed_addr constant [24 x i8] c"ludicc(self): warning: \00" +@.str13590 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13591 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21036: index out of range: \00" +@.str13592 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21037: index out of range: \00" +@.str13593 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21040: index out of range: \00" +@.str13594 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21041: index out of range: \00" +@.str13595 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21047: index out of range: \00" +@.str13596 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21049: index out of range: \00" +@.str13597 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str13598 = private unnamed_addr constant [13 x i8] c"@Sync field \00" +@.str13599 = private unnamed_addr constant [2 x i8] c".\00" +@.str13600 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21049: index out of range: \00" +@.str13601 = private unnamed_addr constant [68 x i8] c" is not a POD scalar (networked fields must be int/bool/fixed/byte)\00" +@.str13602 = private unnamed_addr constant [7 x i8] c"model \00" +@.str13603 = private unnamed_addr constant [9 x i8] c" @Syncs \00" +@.str13604 = private unnamed_addr constant [51 x i8] c" but it has no @Sync fields \E2\80\94 nothing replicates\00" +@.str13605 = private unnamed_addr constant [25 x i8] c"define i32 @L_serialize_\00" +@.str13606 = private unnamed_addr constant [29 x i8] c"(i32 %e, ptr %buf) {\0Aentry:\0A\00" +@.str13607 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21073: index out of range: \00" +@.str13608 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21074: index out of range: \00" +@.str13609 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str13610 = private unnamed_addr constant [3 x i8] c" \00" +@.str13611 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str13612 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13613 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str13614 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21081: index out of range: \00" +@.str13615 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21082: index out of range: \00" +@.str13616 = private unnamed_addr constant [3 x i8] c" \00" +@.str13617 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str13618 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13619 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str13620 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13621 = private unnamed_addr constant [3 x i8] c" \00" +@.str13622 = private unnamed_addr constant [45 x i8] c" = getelementptr inbounds i8, ptr %buf, i32 \00" +@.str13623 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13624 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" +@.str13625 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13626 = private unnamed_addr constant [7 x i8] c", i64 \00" +@.str13627 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13628 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21086: index out of range: \00" +@.str13629 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str13630 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" +@.str13631 = private unnamed_addr constant [22 x i8] c"define void @L_apply_\00" +@.str13632 = private unnamed_addr constant [39 x i8] c"(i32 %e, ptr %buf, i32 %len) {\0Aentry:\0A\00" +@.str13633 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21107: index out of range: \00" +@.str13634 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21108: index out of range: \00" +@.str13635 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str13636 = private unnamed_addr constant [3 x i8] c" \00" +@.str13637 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str13638 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13639 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str13640 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21115: index out of range: \00" +@.str13641 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21116: index out of range: \00" +@.str13642 = private unnamed_addr constant [3 x i8] c" \00" +@.str13643 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str13644 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13645 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str13646 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13647 = private unnamed_addr constant [3 x i8] c" \00" +@.str13648 = private unnamed_addr constant [45 x i8] c" = getelementptr inbounds i8, ptr %buf, i32 \00" +@.str13649 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13650 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" +@.str13651 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13652 = private unnamed_addr constant [7 x i8] c", i64 \00" @.str13653 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13654 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" -@.str13655 = private unnamed_addr constant [2 x i8] c"x\00" -@.str13656 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13657 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" -@.str13658 = private unnamed_addr constant [20 x i8] c"fin:\0A ret void\0A}\0A\0A\00" -@.str13659 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21175: index out of range: \00" -@.str13660 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21175: index out of range: \00" -@.str13661 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21176: index out of range: \00" -@.str13662 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21177: index out of range: \00" -@.str13663 = private unnamed_addr constant [58 x i8] c"@L_sendbuf = internal global [2048 x i8] zeroinitializer\0A\00" -@.str13664 = private unnamed_addr constant [6 x i8] c"panel\00" -@.str13665 = private unnamed_addr constant [4 x i8] c"col\00" -@.str13666 = private unnamed_addr constant [4 x i8] c"row\00" -@.str13667 = private unnamed_addr constant [6 x i8] c"label\00" -@.str13668 = private unnamed_addr constant [7 x i8] c"button\00" -@.str13669 = private unnamed_addr constant [6 x i8] c"image\00" -@.str13670 = private unnamed_addr constant [7 x i8] c"spacer\00" -@.str13671 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21208: index out of range: \00" -@.str13672 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21208: index out of range: \00" -@.str13673 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21214: index out of range: \00" -@.str13674 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21217: index out of range: \00" -@.str13675 = private unnamed_addr constant [5 x i8] c"font\00" -@.str13676 = private unnamed_addr constant [5 x i8] c"size\00" -@.str13677 = private unnamed_addr constant [3 x i8] c"fg\00" -@.str13678 = private unnamed_addr constant [6 x i8] c"align\00" -@.str13679 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21222: index out of range: \00" -@.str13680 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21223: index out of range: \00" -@.str13681 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21225: index out of range: \00" -@.str13682 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21225: index out of range: \00" -@.str13683 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21226: index out of range: \00" -@.str13684 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21227: index out of range: \00" -@.str13685 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21238: index out of range: \00" -@.str13686 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21244: index out of range: \00" -@.str13687 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21244: index out of range: \00" -@.str13688 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21244: index out of range: \00" -@.str13689 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21250: index out of range: \00" -@.str13690 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21250: index out of range: \00" -@.str13691 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21261: index out of range: \00" -@.str13692 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21261: index out of range: \00" -@.str13693 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21261: index out of range: \00" -@.str13694 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21261: index out of range: \00" -@.str13695 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21266: index out of range: \00" -@.str13696 = private unnamed_addr constant [3 x i8] c"id\00" -@.str13697 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13698 = private unnamed_addr constant [10 x i8] c"rt_ui_set\00" -@.str13699 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str13700 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str13701 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str13702 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13703 = private unnamed_addr constant [2 x i8] c"w\00" -@.str13704 = private unnamed_addr constant [2 x i8] c"h\00" -@.str13705 = private unnamed_addr constant [2 x i8] c"x\00" -@.str13706 = private unnamed_addr constant [2 x i8] c"y\00" -@.str13707 = private unnamed_addr constant [4 x i8] c"pad\00" -@.str13708 = private unnamed_addr constant [4 x i8] c"gap\00" -@.str13709 = private unnamed_addr constant [3 x i8] c"bg\00" -@.str13710 = private unnamed_addr constant [3 x i8] c"fg\00" -@.str13711 = private unnamed_addr constant [7 x i8] c"border\00" -@.str13712 = private unnamed_addr constant [5 x i8] c"grow\00" -@.str13713 = private unnamed_addr constant [5 x i8] c"font\00" -@.str13714 = private unnamed_addr constant [5 x i8] c"size\00" -@.str13715 = private unnamed_addr constant [6 x i8] c"inset\00" -@.str13716 = private unnamed_addr constant [6 x i8] c"focus\00" -@.str13717 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13718 = private unnamed_addr constant [12 x i8] c"rt_ui_reset\00" -@.str13719 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str13720 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13721 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21297: index out of range: \00" -@.str13722 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21300: index out of range: \00" -@.str13723 = private unnamed_addr constant [2 x i8] c"1\00" -@.str13724 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21305: index out of range: \00" -@.str13725 = private unnamed_addr constant [3 x i8] c"id\00" -@.str13726 = private unnamed_addr constant [5 x i8] c"goto\00" -@.str13727 = private unnamed_addr constant [5 x i8] c"text\00" -@.str13728 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13729 = private unnamed_addr constant [18 x i8] c"rt_ui_static_text\00" -@.str13730 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str13731 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13732 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13733 = private unnamed_addr constant [5 x i8] c"skin\00" -@.str13734 = private unnamed_addr constant [6 x i8] c"image\00" -@.str13735 = private unnamed_addr constant [10 x i8] c"call i32 \00" -@.str13736 = private unnamed_addr constant [14 x i8] c"rt_image_load\00" -@.str13737 = private unnamed_addr constant [6 x i8] c"(ptr \00" -@.str13738 = private unnamed_addr constant [2 x i8] c")\00" -@.str13739 = private unnamed_addr constant [5 x i8] c"skin\00" -@.str13740 = private unnamed_addr constant [6 x i8] c"align\00" -@.str13741 = private unnamed_addr constant [7 x i8] c"center\00" -@.str13742 = private unnamed_addr constant [4 x i8] c"end\00" -@.str13743 = private unnamed_addr constant [2 x i8] c"1\00" -@.str13744 = private unnamed_addr constant [34 x i8] c"define void @ui_build() {\0Aentry:\0A\00" -@.str13745 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str13746 = private unnamed_addr constant [3 x i8] c", \00" -@.str13747 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21349: index out of range: \00" -@.str13748 = private unnamed_addr constant [7 x i8] c" %arg_\00" -@.str13749 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21349: index out of range: \00" -@.str13750 = private unnamed_addr constant [5 x i8] c"void\00" -@.str13751 = private unnamed_addr constant [20 x i8] c" %retval = alloca \00" -@.str13752 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13753 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21368: index out of range: \00" -@.str13754 = private unnamed_addr constant [9 x i8] c" store \00" -@.str13755 = private unnamed_addr constant [7 x i8] c" %arg_\00" -@.str13756 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13757 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13758 = private unnamed_addr constant [5 x i8] c"void\00" -@.str13759 = private unnamed_addr constant [11 x i8] c"function '\00" -@.str13760 = private unnamed_addr constant [41 x i8] c"' can reach its end without returning a \00" -@.str13761 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" -@.str13762 = private unnamed_addr constant [6 x i8] c"ret:\0A\00" -@.str13763 = private unnamed_addr constant [5 x i8] c"void\00" -@.str13764 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" -@.str13765 = private unnamed_addr constant [6 x i8] c"load \00" -@.str13766 = private unnamed_addr constant [14 x i8] c", ptr %retval\00" -@.str13767 = private unnamed_addr constant [7 x i8] c" ret \00" -@.str13768 = private unnamed_addr constant [2 x i8] c" \00" -@.str13769 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13770 = private unnamed_addr constant [8 x i8] c"define \00" -@.str13771 = private unnamed_addr constant [6 x i8] c" @fn_\00" -@.str13772 = private unnamed_addr constant [2 x i8] c"(\00" -@.str13773 = private unnamed_addr constant [12 x i8] c") {\0Aentry:\0A\00" -@.str13774 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str13775 = private unnamed_addr constant [1 x i8] c"\00" -@.str13776 = private unnamed_addr constant [4 x i8] c"int\00" -@.str13777 = private unnamed_addr constant [24 x i8] c" %retval = alloca i32\0A\00" -@.str13778 = private unnamed_addr constant [32 x i8] c" store i32 %argc, ptr @L_argc\0A\00" -@.str13779 = private unnamed_addr constant [32 x i8] c" store ptr %argv, ptr @L_argv\0A\00" -@.str13780 = private unnamed_addr constant [28 x i8] c" store i32 0, ptr %retval\0A\00" -@.str13781 = private unnamed_addr constant [31 x i8] c" call void @L_init_runtime()\0A\00" -@.str13782 = private unnamed_addr constant [8 x i8] c"rt_init\00" -@.str13783 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13784 = private unnamed_addr constant [8 x i8] c"rt_init\00" -@.str13785 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13786 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" -@.str13787 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" -@.str13788 = private unnamed_addr constant [6 x i8] c"ret:\0A\00" -@.str13789 = private unnamed_addr constant [22 x i8] c"load i32, ptr %retval\00" -@.str13790 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str13791 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13792 = private unnamed_addr constant [49 x i8] c"define i32 @main(i32 %argc, ptr %argv) {\0Aentry:\0A\00" -@.str13793 = private unnamed_addr constant [3 x i8] c"}\0A\00" -@.str13794 = private unnamed_addr constant [5 x i8] c"void\00" -@.str13795 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" -@.str13796 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" -@.str13797 = private unnamed_addr constant [23 x i8] c"define void @fn__test_\00" -@.str13798 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" -@.str13799 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str13800 = private unnamed_addr constant [38 x i8] c"@L_test_fail = internal global i32 0\0A\00" -@.str13801 = private unnamed_addr constant [94 x i8] c"@.fmt_test_sum = private unnamed_addr constant [28 x i8] c\22== %d passed, %d failed ==\5C0A\5C00\22\0A\00" -@.str13802 = private unnamed_addr constant [91 x i8] c"@.fmt_test_none = private unnamed_addr constant [20 x i8] c\22no test named \5C22%s\5C22\5C0A\5C00\22\0A\00" -@.str13803 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21449: index out of range: \00" -@.str13804 = private unnamed_addr constant [86 x i8] c"@.fmt_expect = private unnamed_addr constant [22 x i8] c\22%s (got %d, want %d)\5C0A\5C00\22\0A\00" -@.str13805 = private unnamed_addr constant [102 x i8] c"@.fmt_expect_str = private unnamed_addr constant [26 x i8] c\22%s (got \5C22%s\5C22, want \5C22%s\5C22)\5C0A\5C00\22\0A\00" -@.str13806 = private unnamed_addr constant [89 x i8] c"@.fmt_expect_fp = private unnamed_addr constant [22 x i8] c\22%s (got %g, want %g)\5C0A\5C00\22\0A\00" -@.str13807 = private unnamed_addr constant [49 x i8] c"define i32 @main(i32 %argc, ptr %argv) {\0Aentry:\0A\00" -@.str13808 = private unnamed_addr constant [32 x i8] c" store i32 %argc, ptr @L_argc\0A\00" -@.str13809 = private unnamed_addr constant [32 x i8] c" store ptr %argv, ptr @L_argv\0A\00" -@.str13810 = private unnamed_addr constant [51 x i8] c" %failed = alloca i32\0A store i32 0, ptr %failed\0A\00" -@.str13811 = private unnamed_addr constant [45 x i8] c" %ran = alloca i32\0A store i32 0, ptr %ran\0A\00" -@.str13812 = private unnamed_addr constant [54 x i8] c" %filter = alloca ptr\0A store ptr null, ptr %filter\0A\00" -@.str13813 = private unnamed_addr constant [6 x i8] c"tfilt\00" -@.str13814 = private unnamed_addr constant [7 x i8] c"tbegin\00" -@.str13815 = private unnamed_addr constant [22 x i8] c"icmp sgt i32 %argc, 1\00" -@.str13816 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13817 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13818 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13819 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13820 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13821 = private unnamed_addr constant [36 x i8] c"getelementptr ptr, ptr %argv, i64 1\00" -@.str13822 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" -@.str13823 = private unnamed_addr constant [13 x i8] c" store ptr \00" -@.str13824 = private unnamed_addr constant [15 x i8] c", ptr %filter\0A\00" -@.str13825 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str13826 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13827 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13828 = private unnamed_addr constant [6 x i8] c"tlist\00" -@.str13829 = private unnamed_addr constant [6 x i8] c"trun0\00" -@.str13830 = private unnamed_addr constant [22 x i8] c"load ptr, ptr %filter\00" -@.str13831 = private unnamed_addr constant [13 x i8] c"icmp ne ptr \00" -@.str13832 = private unnamed_addr constant [7 x i8] c", null\00" -@.str13833 = private unnamed_addr constant [6 x i8] c"tlcmp\00" -@.str13834 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13835 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13836 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13837 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13838 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13839 = private unnamed_addr constant [7 x i8] c"--list\00" -@.str13840 = private unnamed_addr constant [22 x i8] c"call i32 @strcmp(ptr \00" -@.str13841 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13842 = private unnamed_addr constant [2 x i8] c")\00" -@.str13843 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str13844 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str13845 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13846 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13847 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13848 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13849 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13850 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21485: index out of range: \00" -@.str13851 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" -@.str13852 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13853 = private unnamed_addr constant [13 x i8] c" ret i32 0\0A\00" -@.str13854 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13855 = private unnamed_addr constant [31 x i8] c" call void @L_init_runtime()\0A\00" -@.str13856 = private unnamed_addr constant [24 x i8] c" call void @rt_init()\0A\00" -@.str13857 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" -@.str13858 = private unnamed_addr constant [8 x i8] c"ok - \00" -@.str13859 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21496: index out of range: \00" -@.str13860 = private unnamed_addr constant [8 x i8] c"FAIL - \00" -@.str13861 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21497: index out of range: \00" -@.str13862 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21498: index out of range: \00" -@.str13863 = private unnamed_addr constant [5 x i8] c"tcmp\00" -@.str13864 = private unnamed_addr constant [5 x i8] c"trun\00" -@.str13865 = private unnamed_addr constant [6 x i8] c"tskip\00" -@.str13866 = private unnamed_addr constant [22 x i8] c"load ptr, ptr %filter\00" -@.str13867 = private unnamed_addr constant [13 x i8] c"icmp eq ptr \00" -@.str13868 = private unnamed_addr constant [7 x i8] c", null\00" -@.str13869 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13870 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13871 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13872 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13873 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13874 = private unnamed_addr constant [22 x i8] c"call i32 @strcmp(ptr \00" -@.str13875 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13876 = private unnamed_addr constant [2 x i8] c")\00" -@.str13877 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str13878 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str13879 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13880 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13881 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13882 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13883 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13884 = private unnamed_addr constant [19 x i8] c"load i32, ptr %ran\00" -@.str13885 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str13886 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str13887 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13888 = private unnamed_addr constant [12 x i8] c", ptr %ran\0A\00" -@.str13889 = private unnamed_addr constant [33 x i8] c" store i32 0, ptr @L_test_fail\0A\00" -@.str13890 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" -@.str13891 = private unnamed_addr constant [23 x i8] c" call void @fn__test_\00" -@.str13892 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13893 = private unnamed_addr constant [27 x i8] c"load i32, ptr @L_test_fail\00" -@.str13894 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str13895 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str13896 = private unnamed_addr constant [6 x i8] c"tpass\00" -@.str13897 = private unnamed_addr constant [6 x i8] c"tfail\00" -@.str13898 = private unnamed_addr constant [6 x i8] c"tdone\00" -@.str13899 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13900 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13901 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13902 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13903 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13904 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" -@.str13905 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13906 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str13907 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13908 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13909 = private unnamed_addr constant [22 x i8] c"load i32, ptr %failed\00" -@.str13910 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str13911 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str13912 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13913 = private unnamed_addr constant [15 x i8] c", ptr %failed\0A\00" -@.str13914 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" -@.str13915 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13916 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str13917 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13918 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13919 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str13920 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13921 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13922 = private unnamed_addr constant [6 x i8] c"tnone\00" -@.str13923 = private unnamed_addr constant [5 x i8] c"tsum\00" -@.str13924 = private unnamed_addr constant [19 x i8] c"load i32, ptr %ran\00" -@.str13925 = private unnamed_addr constant [22 x i8] c"load ptr, ptr %filter\00" -@.str13926 = private unnamed_addr constant [13 x i8] c"icmp ne ptr \00" -@.str13927 = private unnamed_addr constant [7 x i8] c", null\00" -@.str13928 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str13929 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str13930 = private unnamed_addr constant [8 x i8] c"and i1 \00" -@.str13931 = private unnamed_addr constant [3 x i8] c", \00" -@.str13932 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13933 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13934 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13935 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13936 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13937 = private unnamed_addr constant [56 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_test_none, ptr \00" -@.str13938 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13939 = private unnamed_addr constant [13 x i8] c" ret i32 1\0A\00" -@.str13940 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13941 = private unnamed_addr constant [22 x i8] c"load i32, ptr %failed\00" -@.str13942 = private unnamed_addr constant [9 x i8] c"sub i32 \00" -@.str13943 = private unnamed_addr constant [3 x i8] c", \00" -@.str13944 = private unnamed_addr constant [55 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_test_sum, i32 \00" -@.str13945 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str13946 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13947 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str13948 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str13949 = private unnamed_addr constant [11 x i8] c"select i1 \00" -@.str13950 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" -@.str13951 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str13952 = private unnamed_addr constant [4 x i8] c"\0A}\0A\00" -@.str13953 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21561: index out of range: \00" -@.str13954 = private unnamed_addr constant [11 x i8] c"function '\00" -@.str13955 = private unnamed_addr constant [30 x i8] c"' is defined twice (first in \00" -@.str13956 = private unnamed_addr constant [2 x i8] c":\00" -@.str13957 = private unnamed_addr constant [2 x i8] c")\00" -@.str13958 = private unnamed_addr constant [1 x i8] c"\00" -@.str13959 = private unnamed_addr constant [1 x i8] c"\00" -@.str13960 = private unnamed_addr constant [1 x i8] c"\00" -@.str13961 = private unnamed_addr constant [1 x i8] c"\00" -@.str13962 = private unnamed_addr constant [1 x i8] c"\00" -@.str13963 = private unnamed_addr constant [1 x i8] c"\00" -@.str13964 = private unnamed_addr constant [3 x i8] c": \00" -@.str13965 = private unnamed_addr constant [126 x i8] c" exports it, and exported names are one namespace - rename this one, or declare it without export inside a module of your own\00" -@.str13966 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21598: index out of range: \00" -@.str13967 = private unnamed_addr constant [2 x i8] c":\00" -@.str13968 = private unnamed_addr constant [2 x i8] c"'\00" -@.str13969 = private unnamed_addr constant [30 x i8] c"' is defined twice (first in \00" -@.str13970 = private unnamed_addr constant [2 x i8] c":\00" -@.str13971 = private unnamed_addr constant [2 x i8] c")\00" -@.str13972 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21645: index out of range: \00" -@.str13973 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21647: index out of range: \00" -@.str13974 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21665: index out of range: \00" -@.str13975 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21665: index out of range: \00" -@.str13976 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21670: index out of range: \00" -@.str13977 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21670: index out of range: \00" -@.str13978 = private unnamed_addr constant [36 x i8] c"@L_running = internal global i32 1\0A\00" -@.str13979 = private unnamed_addr constant [23 x i8] c"declare i32 @getpid()\0A\00" -@.str13980 = private unnamed_addr constant [37 x i8] c"declare i32 @fprintf(ptr, ptr, ...)\0A\00" -@.str13981 = private unnamed_addr constant [68 x i8] c"@.fmt_panic = private unnamed_addr constant [6 x i8] c\22%s%s\5C0A\5C00\22\0A\00" -@.str13982 = private unnamed_addr constant [37 x i8] c"declare i32 @fprintf(ptr, ptr, ...)\0A\00" -@.str13983 = private unnamed_addr constant [78 x i8] c"@.fmt_bounds = private unnamed_addr constant [14 x i8] c\22%s%d, len %d\5C0A\5C00\22\0A\00" -@.str13984 = private unnamed_addr constant [34 x i8] c"%Result = type { i32, i32, ptr }\0A\00" -@.str13985 = private unnamed_addr constant [29 x i8] c"%Option = type { i32, i32 }\0A\00" -@.str13986 = private unnamed_addr constant [33 x i8] c"@L_cov_lines = internal global [\00" -@.str13987 = private unnamed_addr constant [10 x i8] c" x i32] [\00" -@.str13988 = private unnamed_addr constant [3 x i8] c", \00" -@.str13989 = private unnamed_addr constant [5 x i8] c"i32 \00" -@.str13990 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21726: index out of range: \00" -@.str13991 = private unnamed_addr constant [3 x i8] c"]\0A\00" -@.str13992 = private unnamed_addr constant [32 x i8] c"@L_cov_hits = internal global [\00" -@.str13993 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" -@.str13994 = private unnamed_addr constant [32 x i8] c"@L_cov_n = internal global i32 \00" -@.str13995 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13996 = private unnamed_addr constant [15 x i8] c"LUDIC_COVERAGE\00" -@.str13997 = private unnamed_addr constant [10 x i8] c"ludic.cov\00" -@.str13998 = private unnamed_addr constant [2 x i8] c"w\00" -@.str13999 = private unnamed_addr constant [73 x i8] c"@.cov_filefmt = private unnamed_addr constant [9 x i8] c\22FILE %s\5C0A\5C00\22\0A\00" -@.str14000 = private unnamed_addr constant [70 x i8] c"@.cov_rowfmt = private unnamed_addr constant [7 x i8] c\22%d %d\5C0A\5C00\22\0A\00" -@.str14001 = private unnamed_addr constant [37 x i8] c"declare i32 @fprintf(ptr, ptr, ...)\0A\00" -@.str14002 = private unnamed_addr constant [26 x i8] c"declare i32 @atexit(ptr)\0A\00" -@.str14003 = private unnamed_addr constant [34 x i8] c"define void @cov_dump() {\0Aentry:\0A\00" -@.str14004 = private unnamed_addr constant [31 x i8] c" %env = call ptr @getenv(ptr \00" -@.str14005 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str14006 = private unnamed_addr constant [35 x i8] c" %noenv = icmp eq ptr %env, null\0A\00" -@.str14007 = private unnamed_addr constant [33 x i8] c" %path = select i1 %noenv, ptr \00" -@.str14008 = private unnamed_addr constant [12 x i8] c", ptr %env\0A\00" -@.str14009 = private unnamed_addr constant [39 x i8] c" %f = call ptr @fopen(ptr %path, ptr \00" -@.str14010 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str14011 = private unnamed_addr constant [31 x i8] c" %bad = icmp eq ptr %f, null\0A\00" -@.str14012 = private unnamed_addr constant [41 x i8] c" br i1 %bad, label %done, label %write\0A\00" -@.str14013 = private unnamed_addr constant [8 x i8] c"write:\0A\00" -@.str14014 = private unnamed_addr constant [68 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr %f, ptr @.cov_filefmt, ptr \00" -@.str14015 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str14016 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" -@.str14017 = private unnamed_addr constant [7 x i8] c"loop:\0A\00" -@.str14018 = private unnamed_addr constant [46 x i8] c" %i = phi i32 [ 0, %write ], [ %i1, %body ]\0A\00" -@.str14019 = private unnamed_addr constant [26 x i8] c" %go = icmp slt i32 %i, \00" -@.str14020 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str14021 = private unnamed_addr constant [40 x i8] c" br i1 %go, label %body, label %close\0A\00" -@.str14022 = private unnamed_addr constant [7 x i8] c"body:\0A\00" -@.str14023 = private unnamed_addr constant [33 x i8] c" %lp = getelementptr inbounds [\00" -@.str14024 = private unnamed_addr constant [42 x i8] c" x i32], ptr @L_cov_lines, i32 0, i32 %i\0A\00" -@.str14025 = private unnamed_addr constant [27 x i8] c" %lv = load i32, ptr %lp\0A\00" -@.str14026 = private unnamed_addr constant [33 x i8] c" %hp = getelementptr inbounds [\00" -@.str14027 = private unnamed_addr constant [41 x i8] c" x i32], ptr @L_cov_hits, i32 0, i32 %i\0A\00" -@.str14028 = private unnamed_addr constant [27 x i8] c" %hv = load i32, ptr %hp\0A\00" -@.str14029 = private unnamed_addr constant [81 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr %f, ptr @.cov_rowfmt, i32 %lv, i32 %hv)\0A\00" -@.str14030 = private unnamed_addr constant [23 x i8] c" %i1 = add i32 %i, 1\0A\00" -@.str14031 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" -@.str14032 = private unnamed_addr constant [8 x i8] c"close:\0A\00" -@.str14033 = private unnamed_addr constant [34 x i8] c" %rc = call i32 @fclose(ptr %f)\0A\00" -@.str14034 = private unnamed_addr constant [18 x i8] c" br label %done\0A\00" -@.str14035 = private unnamed_addr constant [21 x i8] c"done:\0A ret void\0A}\0A\0A\00" -@.str14036 = private unnamed_addr constant [34 x i8] c"define void @cov_init() {\0Aentry:\0A\00" -@.str14037 = private unnamed_addr constant [40 x i8] c" %r = call i32 @atexit(ptr @cov_dump)\0A\00" -@.str14038 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str14039 = private unnamed_addr constant [122 x i8] c"@llvm.global_ctors = appending global [1 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 65535, ptr @cov_init, ptr null }]\0A\00" -@.str14040 = private unnamed_addr constant [3 x i8] c"wb\00" -@.str14041 = private unnamed_addr constant [7 x i8] c".ludic\00" -@.str14042 = private unnamed_addr constant [2 x i8] c"/\00" -@.str14043 = private unnamed_addr constant [15 x i8] c"if not exist \22\00" -@.str14044 = private unnamed_addr constant [10 x i8] c"\22 mkdir \22\00" -@.str14045 = private unnamed_addr constant [2 x i8] c"\22\00" -@.str14046 = private unnamed_addr constant [10 x i8] c"mkdir -p \00" -@.str14047 = private unnamed_addr constant [12 x i8] c"del /f /q \22\00" -@.str14048 = private unnamed_addr constant [8 x i8] c"\22 2>nul\00" -@.str14049 = private unnamed_addr constant [7 x i8] c"rm -f \00" -@.str14050 = private unnamed_addr constant [9 x i8] c"LUDIC_CC\00" -@.str14051 = private unnamed_addr constant [36 x i8] c"C:/Program Files/LLVM/bin/clang.exe\00" -@.str14052 = private unnamed_addr constant [3 x i8] c"rb\00" -@.str14053 = private unnamed_addr constant [2 x i8] c"\22\00" -@.str14054 = private unnamed_addr constant [2 x i8] c"\22\00" -@.str14055 = private unnamed_addr constant [6 x i8] c"clang\00" -@.str14056 = private unnamed_addr constant [8 x i8] c"VERSION\00" -@.str14057 = private unnamed_addr constant [24 x i8] c"ludic (version unknown)\00" -@.str14058 = private unnamed_addr constant [7 x i8] c"ludic \00" -@.str14059 = private unnamed_addr constant [1 x i8] c"\00" -@.str14060 = private unnamed_addr constant [1 x i8] c"\00" -@.str14061 = private unnamed_addr constant [2 x i8] c",\00" -@.str14062 = private unnamed_addr constant [1 x i8] c"\00" -@.str14063 = private unnamed_addr constant [2 x i8] c",\00" -@.str14064 = private unnamed_addr constant [2 x i8] c"?\00" -@.str14065 = private unnamed_addr constant [4 x i8] c"ret\00" -@.str14066 = private unnamed_addr constant [1 x i8] c"\00" -@.str14067 = private unnamed_addr constant [5 x i8] c"void\00" -@.str14068 = private unnamed_addr constant [10 x i8] c"--version\00" -@.str14069 = private unnamed_addr constant [11 x i8] c"--windowed\00" -@.str14070 = private unnamed_addr constant [11 x i8] c"--headless\00" -@.str14071 = private unnamed_addr constant [12 x i8] c"--emit-llvm\00" -@.str14072 = private unnamed_addr constant [9 x i8] c"--unsafe\00" -@.str14073 = private unnamed_addr constant [14 x i8] c"--emit-module\00" -@.str14074 = private unnamed_addr constant [6 x i8] c"--fmt\00" -@.str14075 = private unnamed_addr constant [13 x i8] c"--save-temps\00" -@.str14076 = private unnamed_addr constant [6 x i8] c"--run\00" -@.str14077 = private unnamed_addr constant [8 x i8] c"--check\00" -@.str14078 = private unnamed_addr constant [10 x i8] c"--globals\00" -@.str14079 = private unnamed_addr constant [16 x i8] c"--migrate-state\00" -@.str14080 = private unnamed_addr constant [16 x i8] c"--migrate-prune\00" -@.str14081 = private unnamed_addr constant [18 x i8] c"--migrate-tighten\00" -@.str14082 = private unnamed_addr constant [18 x i8] c"--migrate-runtime\00" -@.str14083 = private unnamed_addr constant [11 x i8] c"--coverage\00" -@.str14084 = private unnamed_addr constant [9 x i8] c"--target\00" -@.str14085 = private unnamed_addr constant [6 x i8] c"--gui\00" -@.str14086 = private unnamed_addr constant [8 x i8] c"--title\00" -@.str14087 = private unnamed_addr constant [14 x i8] c"--natives-out\00" -@.str14088 = private unnamed_addr constant [7 x i8] c"--link\00" -@.str14089 = private unnamed_addr constant [3 x i8] c"-o\00" -@.str14090 = private unnamed_addr constant [31 x i8] c"ludicc: ignoring unknown flag \00" -@.str14091 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str14092 = private unnamed_addr constant [108 x i8] c"usage: ludicc [-o out] [--windowed|--headless] [--target triple] [--emit-llvm] [--save-temps]\0A\00" -@.str14093 = private unnamed_addr constant [8 x i8] c"windows\00" -@.str14094 = private unnamed_addr constant [27 x i8] c"ludicc: cannot open input\0A\00" -@.str14095 = private unnamed_addr constant [5 x i8] c"TEMP\00" -@.str14096 = private unnamed_addr constant [2 x i8] c".\00" -@.str14097 = private unnamed_addr constant [12 x i8] c"/ludic-run-\00" -@.str14098 = private unnamed_addr constant [16 x i8] c"/tmp/ludic-run-\00" -@.str14099 = private unnamed_addr constant [5 x i8] c".exe\00" -@.str14100 = private unnamed_addr constant [5 x i8] c".exe\00" -@.str14101 = private unnamed_addr constant [4 x i8] c".ll\00" -@.str14102 = private unnamed_addr constant [25 x i8] c"ludicc: cannot write IR\0A\00" -@.str14103 = private unnamed_addr constant [27 x i8] c" -O2 -Wno-override-module \00" -@.str14104 = private unnamed_addr constant [24 x i8] c"runtime/native/win32.ll\00" -@.str14105 = private unnamed_addr constant [2 x i8] c" \00" -@.str14106 = private unnamed_addr constant [63 x i8] c" -luser32 -lgdi32 -lxinput -lole32 -Wl,/ignore:importeddllmain\00" -@.str14107 = private unnamed_addr constant [28 x i8] c"runtime/native/audio_win.ll\00" -@.str14108 = private unnamed_addr constant [2 x i8] c" \00" -@.str14109 = private unnamed_addr constant [19 x i8] c" -lxaudio2 -lole32\00" -@.str14110 = private unnamed_addr constant [24 x i8] c"runtime/native/cocoa.ll\00" -@.str14111 = private unnamed_addr constant [2 x i8] c" \00" -@.str14112 = private unnamed_addr constant [79 x i8] c" -framework Cocoa -Wl,-needed_framework,GameController -Wl,-rpath,@loader_path\00" -@.str14113 = private unnamed_addr constant [24 x i8] c"runtime/native/audio.ll\00" -@.str14114 = private unnamed_addr constant [2 x i8] c" \00" -@.str14115 = private unnamed_addr constant [36 x i8] c" -Wl,-needed_framework,AVFoundation\00" -@.str14116 = private unnamed_addr constant [2 x i8] c" \00" -@.str14117 = private unnamed_addr constant [30 x i8] c"runtime/native/threads_win.ll\00" -@.str14118 = private unnamed_addr constant [2 x i8] c" \00" -@.str14119 = private unnamed_addr constant [26 x i8] c"runtime/native/threads.ll\00" -@.str14120 = private unnamed_addr constant [2 x i8] c" \00" -@.str14121 = private unnamed_addr constant [26 x i8] c"runtime/native/udp_win.ll\00" -@.str14122 = private unnamed_addr constant [10 x i8] c" -lws2_32\00" -@.str14123 = private unnamed_addr constant [2 x i8] c" \00" -@.str14124 = private unnamed_addr constant [22 x i8] c"runtime/native/udp.ll\00" -@.str14125 = private unnamed_addr constant [12 x i8] c" -ladvapi32\00" -@.str14126 = private unnamed_addr constant [2 x i8] c" \00" -@.str14127 = private unnamed_addr constant [30 x i8] c"runtime/native/process_win.ll\00" -@.str14128 = private unnamed_addr constant [2 x i8] c" \00" -@.str14129 = private unnamed_addr constant [26 x i8] c"runtime/native/process.ll\00" -@.str14130 = private unnamed_addr constant [27 x i8] c"runtime/native/http_win.ll\00" -@.str14131 = private unnamed_addr constant [2 x i8] c" \00" -@.str14132 = private unnamed_addr constant [11 x i8] c" -lwinhttp\00" -@.str14133 = private unnamed_addr constant [23 x i8] c"runtime/native/http.ll\00" -@.str14134 = private unnamed_addr constant [2 x i8] c" \00" -@.str14135 = private unnamed_addr constant [34 x i8] c" -Wl,-needed_framework,Foundation\00" -@.str14136 = private unnamed_addr constant [25 x i8] c"runtime/native/gl_win.ll\00" -@.str14137 = private unnamed_addr constant [32 x i8] c"runtime/native/gl_thunks_win.ll\00" -@.str14138 = private unnamed_addr constant [31 x i8] c"runtime/native/gl_win_nowin.ll\00" -@.str14139 = private unnamed_addr constant [27 x i8] c"runtime/native/win32_gl.ll\00" -@.str14140 = private unnamed_addr constant [2 x i8] c" \00" -@.str14141 = private unnamed_addr constant [2 x i8] c" \00" -@.str14142 = private unnamed_addr constant [2 x i8] c" \00" -@.str14143 = private unnamed_addr constant [29 x i8] c" -luser32 -lgdi32 -lopengl32\00" -@.str14144 = private unnamed_addr constant [21 x i8] c"runtime/native/gl.ll\00" -@.str14145 = private unnamed_addr constant [28 x i8] c"runtime/native/gl_thunks.ll\00" -@.str14146 = private unnamed_addr constant [2 x i8] c" \00" -@.str14147 = private unnamed_addr constant [2 x i8] c" \00" -@.str14148 = private unnamed_addr constant [19 x i8] c" -framework OpenGL\00" -@.str14149 = private unnamed_addr constant [28 x i8] c"runtime/native/vk_thunks.ll\00" -@.str14150 = private unnamed_addr constant [25 x i8] c"runtime/native/vk_mac.ll\00" -@.str14151 = private unnamed_addr constant [25 x i8] c"runtime/native/vk_win.ll\00" -@.str14152 = private unnamed_addr constant [2 x i8] c" \00" -@.str14153 = private unnamed_addr constant [2 x i8] c" \00" -@.str14154 = private unnamed_addr constant [34 x i8] c" -Wl,-needed_framework,QuartzCore\00" -@.str14155 = private unnamed_addr constant [50 x i8] c" -Wl,/subsystem:windows -Wl,/entry:mainCRTStartup\00" -@.str14156 = private unnamed_addr constant [3 x i8] c" \22\00" -@.str14157 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:22170: index out of range: \00" -@.str14158 = private unnamed_addr constant [2 x i8] c"\22\00" -@.str14159 = private unnamed_addr constant [5 x i8] c" -o \00" -@.str14160 = private unnamed_addr constant [2 x i8] c"\22\00" -@.str14161 = private unnamed_addr constant [2 x i8] c"\22\00" -@.str14162 = private unnamed_addr constant [21 x i8] c"ludicc: link failed\0A\00" -@.str14163 = private unnamed_addr constant [1 x i8] c"\00" -@.str14164 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:22184: index out of range: \00" -@.str14165 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str14166 = private unnamed_addr constant [3 x i8] c"wb\00" -@.str14167 = private unnamed_addr constant [2 x i8] c"\22\00" -@.str14168 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str13654 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21120: index out of range: \00" +@.str13655 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str13656 = private unnamed_addr constant [56 x i8] c"define i32 @ludic_serialize(i32 %e, ptr %buf) {\0Aentry:\0A\00" +@.str13657 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str13658 = private unnamed_addr constant [41 x i8] c" %kp = getelementptr inbounds i32, ptr \00" +@.str13659 = private unnamed_addr constant [35 x i8] c", i32 %e\0A %k = load i32, ptr %kp\0A\00" +@.str13660 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21144: index out of range: \00" +@.str13661 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21144: index out of range: \00" +@.str13662 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21145: index out of range: \00" +@.str13663 = private unnamed_addr constant [5 x i8] c" %c\00" +@.str13664 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" +@.str13665 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13666 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" +@.str13667 = private unnamed_addr constant [11 x i8] c", label %h\00" +@.str13668 = private unnamed_addr constant [11 x i8] c", label %n\00" +@.str13669 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13670 = private unnamed_addr constant [2 x i8] c"h\00" +@.str13671 = private unnamed_addr constant [7 x i8] c":\0A %r\00" +@.str13672 = private unnamed_addr constant [26 x i8] c" = call i32 @L_serialize_\00" +@.str13673 = private unnamed_addr constant [32 x i8] c"(i32 %e, ptr %buf)\0A ret i32 %r\00" +@.str13674 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13675 = private unnamed_addr constant [2 x i8] c"n\00" +@.str13676 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13677 = private unnamed_addr constant [16 x i8] c" ret i32 0\0A}\0A\0A\00" +@.str13678 = private unnamed_addr constant [63 x i8] c"define void @ludic_apply(i32 %e, ptr %buf, i32 %len) {\0Aentry:\0A\00" +@.str13679 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str13680 = private unnamed_addr constant [41 x i8] c" %kp = getelementptr inbounds i32, ptr \00" +@.str13681 = private unnamed_addr constant [35 x i8] c", i32 %e\0A %k = load i32, ptr %kp\0A\00" +@.str13682 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21161: index out of range: \00" +@.str13683 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21161: index out of range: \00" +@.str13684 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21162: index out of range: \00" +@.str13685 = private unnamed_addr constant [5 x i8] c" %c\00" +@.str13686 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" +@.str13687 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13688 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" +@.str13689 = private unnamed_addr constant [11 x i8] c", label %h\00" +@.str13690 = private unnamed_addr constant [11 x i8] c", label %n\00" +@.str13691 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13692 = private unnamed_addr constant [2 x i8] c"h\00" +@.str13693 = private unnamed_addr constant [24 x i8] c":\0A call void @L_apply_\00" +@.str13694 = private unnamed_addr constant [41 x i8] c"(i32 %e, ptr %buf, i32 %len)\0A ret void\0A\00" +@.str13695 = private unnamed_addr constant [2 x i8] c"n\00" +@.str13696 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13697 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str13698 = private unnamed_addr constant [46 x i8] c"define i32 @ludic_sync_size(i32 %e) {\0Aentry:\0A\00" +@.str13699 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str13700 = private unnamed_addr constant [41 x i8] c" %kp = getelementptr inbounds i32, ptr \00" +@.str13701 = private unnamed_addr constant [35 x i8] c", i32 %e\0A %k = load i32, ptr %kp\0A\00" +@.str13702 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21180: index out of range: \00" +@.str13703 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21180: index out of range: \00" +@.str13704 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21181: index out of range: \00" +@.str13705 = private unnamed_addr constant [5 x i8] c" %c\00" +@.str13706 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" +@.str13707 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13708 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" +@.str13709 = private unnamed_addr constant [11 x i8] c", label %h\00" +@.str13710 = private unnamed_addr constant [11 x i8] c", label %n\00" +@.str13711 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13712 = private unnamed_addr constant [2 x i8] c"h\00" +@.str13713 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" +@.str13714 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21184: index out of range: \00" +@.str13715 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13716 = private unnamed_addr constant [2 x i8] c"n\00" +@.str13717 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13718 = private unnamed_addr constant [16 x i8] c" ret i32 0\0A}\0A\0A\00" +@.str13719 = private unnamed_addr constant [38 x i8] c"define i32 @L_owner(i32 %e) {\0Aentry:\0A\00" +@.str13720 = private unnamed_addr constant [12 x i8] c"L_owner_arr\00" +@.str13721 = private unnamed_addr constant [40 x i8] c" %p = getelementptr inbounds i32, ptr \00" +@.str13722 = private unnamed_addr constant [50 x i8] c", i32 %e\0A %v = load i32, ptr %p\0A ret i32 %v\0A}\0A\0A\00" +@.str13723 = private unnamed_addr constant [52 x i8] c"define void @L_set_owner(i32 %e, i32 %id) {\0Aentry:\0A\00" +@.str13724 = private unnamed_addr constant [12 x i8] c"L_owner_arr\00" +@.str13725 = private unnamed_addr constant [40 x i8] c" %p = getelementptr inbounds i32, ptr \00" +@.str13726 = private unnamed_addr constant [48 x i8] c", i32 %e\0A store i32 %id, ptr %p\0A ret void\0A}\0A\0A\00" +@.str13727 = private unnamed_addr constant [41 x i8] c"define i32 @L_is_owner(i32 %e) {\0Aentry:\0A\00" +@.str13728 = private unnamed_addr constant [12 x i8] c"L_owner_arr\00" +@.str13729 = private unnamed_addr constant [40 x i8] c" %p = getelementptr inbounds i32, ptr \00" +@.str13730 = private unnamed_addr constant [34 x i8] c", i32 %e\0A %o = load i32, ptr %p\0A\00" +@.str13731 = private unnamed_addr constant [106 x i8] c" %lid = load i32, ptr @L_localid\0A %eq = icmp eq i32 %o, %lid\0A %r = zext i1 %eq to i32\0A ret i32 %r\0A}\0A\0A\00" +@.str13732 = private unnamed_addr constant [62 x i8] c"@L_netq = internal global [64 x [2048 x i8]] zeroinitializer\0A\00" +@.str13733 = private unnamed_addr constant [56 x i8] c"@L_netlen = internal global [64 x i32] zeroinitializer\0A\00" +@.str13734 = private unnamed_addr constant [36 x i8] c"@L_nethead = internal global i32 0\0A\00" +@.str13735 = private unnamed_addr constant [36 x i8] c"@L_nettail = internal global i32 0\0A\00" +@.str13736 = private unnamed_addr constant [65 x i8] c"define void @L_net_send(i32 %peer, ptr %buf, i32 %len) {\0Aentry:\0A\00" +@.str13737 = private unnamed_addr constant [71 x i8] c" %l0 = icmp slt i32 %len, 0\0A %len1 = select i1 %l0, i32 0, i32 %len\0A\00" +@.str13738 = private unnamed_addr constant [76 x i8] c" %l1 = icmp sgt i32 %len1, 2048\0A %n = select i1 %l1, i32 2048, i32 %len1\0A\00" +@.str13739 = private unnamed_addr constant [65 x i8] c" %t = load i32, ptr @L_nettail\0A %h = load i32, ptr @L_nethead\0A\00" +@.str13740 = private unnamed_addr constant [78 x i8] c" %t1 = add i32 %t, 1\0A %tn = srem i32 %t1, 64\0A %full = icmp eq i32 %tn, %h\0A\00" +@.str13741 = private unnamed_addr constant [39 x i8] c" br i1 %full, label %drop, label %go\0A\00" +@.str13742 = private unnamed_addr constant [5 x i8] c"go:\0A\00" +@.str13743 = private unnamed_addr constant [80 x i8] c" %row = getelementptr inbounds [64 x [2048 x i8]], ptr @L_netq, i32 0, i32 %t\0A\00" +@.str13744 = private unnamed_addr constant [76 x i8] c" %nz = zext i32 %n to i64\0A call ptr @memcpy(ptr %row, ptr %buf, i64 %nz)\0A\00" +@.str13745 = private unnamed_addr constant [97 x i8] c" %lp = getelementptr inbounds [64 x i32], ptr @L_netlen, i32 0, i32 %t\0A store i32 %n, ptr %lp\0A\00" +@.str13746 = private unnamed_addr constant [50 x i8] c" store i32 %tn, ptr @L_nettail\0A br label %drop\0A\00" +@.str13747 = private unnamed_addr constant [21 x i8] c"drop:\0A ret void\0A}\0A\0A\00" +@.str13748 = private unnamed_addr constant [53 x i8] c"define i32 @L_net_poll(ptr %buf, i32 %cap) {\0Aentry:\0A\00" +@.str13749 = private unnamed_addr constant [95 x i8] c" %h = load i32, ptr @L_nethead\0A %t = load i32, ptr @L_nettail\0A %empty = icmp eq i32 %h, %t\0A\00" +@.str13750 = private unnamed_addr constant [40 x i8] c" br i1 %empty, label %none, label %go\0A\00" +@.str13751 = private unnamed_addr constant [5 x i8] c"go:\0A\00" +@.str13752 = private unnamed_addr constant [99 x i8] c" %lp = getelementptr inbounds [64 x i32], ptr @L_netlen, i32 0, i32 %h\0A %ln = load i32, ptr %lp\0A\00" +@.str13753 = private unnamed_addr constant [74 x i8] c" %big = icmp sgt i32 %ln, %cap\0A %n = select i1 %big, i32 %cap, i32 %ln\0A\00" +@.str13754 = private unnamed_addr constant [80 x i8] c" %row = getelementptr inbounds [64 x [2048 x i8]], ptr @L_netq, i32 0, i32 %h\0A\00" +@.str13755 = private unnamed_addr constant [76 x i8] c" %nz = zext i32 %n to i64\0A call ptr @memcpy(ptr %buf, ptr %row, i64 %nz)\0A\00" +@.str13756 = private unnamed_addr constant [93 x i8] c" %h1 = add i32 %h, 1\0A %hn = srem i32 %h1, 64\0A store i32 %hn, ptr @L_nethead\0A ret i32 %n\0A\00" +@.str13757 = private unnamed_addr constant [22 x i8] c"none:\0A ret i32 0\0A}\0A\0A\00" +@.str13758 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21260: index out of range: \00" +@.str13759 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21266: index out of range: \00" +@.str13760 = private unnamed_addr constant [9 x i8] c"net_send\00" +@.str13761 = private unnamed_addr constant [11 x i8] c"L_net_send\00" +@.str13762 = private unnamed_addr constant [9 x i8] c"net_poll\00" +@.str13763 = private unnamed_addr constant [11 x i8] c"L_net_poll\00" +@.str13764 = private unnamed_addr constant [58 x i8] c"@L_recvbuf = internal global [2048 x i8] zeroinitializer\0A\00" +@.str13765 = private unnamed_addr constant [9 x i8] c"net_poll\00" +@.str13766 = private unnamed_addr constant [53 x i8] c"define void @L_net_pump() {\0Aentry:\0A br label %loop\0A\00" +@.str13767 = private unnamed_addr constant [24 x i8] c"loop:\0A %n = call i32 @\00" +@.str13768 = private unnamed_addr constant [28 x i8] c"(ptr @L_recvbuf, i32 2048)\0A\00" +@.str13769 = private unnamed_addr constant [68 x i8] c" %done = icmp eq i32 %n, 0\0A br i1 %done, label %fin, label %body\0A\00" +@.str13770 = private unnamed_addr constant [41 x i8] c"body:\0A %eid = load i32, ptr @L_recvbuf\0A\00" +@.str13771 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21285: index out of range: \00" +@.str13772 = private unnamed_addr constant [5 x i8] c" %c\00" +@.str13773 = private unnamed_addr constant [22 x i8] c" = icmp eq i32 %eid, \00" +@.str13774 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13775 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" +@.str13776 = private unnamed_addr constant [11 x i8] c", label %h\00" +@.str13777 = private unnamed_addr constant [11 x i8] c", label %x\00" +@.str13778 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13779 = private unnamed_addr constant [2 x i8] c"h\00" +@.str13780 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13781 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21296: index out of range: \00" +@.str13782 = private unnamed_addr constant [2 x i8] c"_\00" +@.str13783 = private unnamed_addr constant [6 x i8] c" %fa\00" +@.str13784 = private unnamed_addr constant [51 x i8] c" = getelementptr inbounds i8, ptr @L_recvbuf, i32 \00" +@.str13785 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13786 = private unnamed_addr constant [6 x i8] c" %fv\00" +@.str13787 = private unnamed_addr constant [9 x i8] c" = load \00" +@.str13788 = private unnamed_addr constant [10 x i8] c", ptr %fa\00" +@.str13789 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13790 = private unnamed_addr constant [3 x i8] c", \00" +@.str13791 = private unnamed_addr constant [5 x i8] c" %fv\00" +@.str13792 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21302: index out of range: \00" +@.str13793 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str13794 = private unnamed_addr constant [2 x i8] c"(\00" +@.str13795 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13796 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" +@.str13797 = private unnamed_addr constant [2 x i8] c"x\00" +@.str13798 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13799 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" +@.str13800 = private unnamed_addr constant [20 x i8] c"fin:\0A ret void\0A}\0A\0A\00" +@.str13801 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21321: index out of range: \00" +@.str13802 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21321: index out of range: \00" +@.str13803 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21322: index out of range: \00" +@.str13804 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21323: index out of range: \00" +@.str13805 = private unnamed_addr constant [58 x i8] c"@L_sendbuf = internal global [2048 x i8] zeroinitializer\0A\00" +@.str13806 = private unnamed_addr constant [6 x i8] c"panel\00" +@.str13807 = private unnamed_addr constant [4 x i8] c"col\00" +@.str13808 = private unnamed_addr constant [4 x i8] c"row\00" +@.str13809 = private unnamed_addr constant [6 x i8] c"label\00" +@.str13810 = private unnamed_addr constant [7 x i8] c"button\00" +@.str13811 = private unnamed_addr constant [6 x i8] c"image\00" +@.str13812 = private unnamed_addr constant [7 x i8] c"spacer\00" +@.str13813 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21354: index out of range: \00" +@.str13814 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21354: index out of range: \00" +@.str13815 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21360: index out of range: \00" +@.str13816 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21363: index out of range: \00" +@.str13817 = private unnamed_addr constant [5 x i8] c"font\00" +@.str13818 = private unnamed_addr constant [5 x i8] c"size\00" +@.str13819 = private unnamed_addr constant [3 x i8] c"fg\00" +@.str13820 = private unnamed_addr constant [6 x i8] c"align\00" +@.str13821 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21368: index out of range: \00" +@.str13822 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21369: index out of range: \00" +@.str13823 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21371: index out of range: \00" +@.str13824 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21371: index out of range: \00" +@.str13825 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21372: index out of range: \00" +@.str13826 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21373: index out of range: \00" +@.str13827 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21384: index out of range: \00" +@.str13828 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21390: index out of range: \00" +@.str13829 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21390: index out of range: \00" +@.str13830 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21390: index out of range: \00" +@.str13831 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21396: index out of range: \00" +@.str13832 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21396: index out of range: \00" +@.str13833 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21407: index out of range: \00" +@.str13834 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21407: index out of range: \00" +@.str13835 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21407: index out of range: \00" +@.str13836 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21407: index out of range: \00" +@.str13837 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21412: index out of range: \00" +@.str13838 = private unnamed_addr constant [3 x i8] c"id\00" +@.str13839 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13840 = private unnamed_addr constant [10 x i8] c"rt_ui_set\00" +@.str13841 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str13842 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str13843 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str13844 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13845 = private unnamed_addr constant [2 x i8] c"w\00" +@.str13846 = private unnamed_addr constant [2 x i8] c"h\00" +@.str13847 = private unnamed_addr constant [2 x i8] c"x\00" +@.str13848 = private unnamed_addr constant [2 x i8] c"y\00" +@.str13849 = private unnamed_addr constant [4 x i8] c"pad\00" +@.str13850 = private unnamed_addr constant [4 x i8] c"gap\00" +@.str13851 = private unnamed_addr constant [3 x i8] c"bg\00" +@.str13852 = private unnamed_addr constant [3 x i8] c"fg\00" +@.str13853 = private unnamed_addr constant [7 x i8] c"border\00" +@.str13854 = private unnamed_addr constant [5 x i8] c"grow\00" +@.str13855 = private unnamed_addr constant [5 x i8] c"font\00" +@.str13856 = private unnamed_addr constant [5 x i8] c"size\00" +@.str13857 = private unnamed_addr constant [6 x i8] c"inset\00" +@.str13858 = private unnamed_addr constant [6 x i8] c"focus\00" +@.str13859 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13860 = private unnamed_addr constant [12 x i8] c"rt_ui_reset\00" +@.str13861 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str13862 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13863 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21443: index out of range: \00" +@.str13864 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21446: index out of range: \00" +@.str13865 = private unnamed_addr constant [2 x i8] c"1\00" +@.str13866 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21451: index out of range: \00" +@.str13867 = private unnamed_addr constant [3 x i8] c"id\00" +@.str13868 = private unnamed_addr constant [5 x i8] c"goto\00" +@.str13869 = private unnamed_addr constant [5 x i8] c"text\00" +@.str13870 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13871 = private unnamed_addr constant [18 x i8] c"rt_ui_static_text\00" +@.str13872 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str13873 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13874 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13875 = private unnamed_addr constant [5 x i8] c"skin\00" +@.str13876 = private unnamed_addr constant [6 x i8] c"image\00" +@.str13877 = private unnamed_addr constant [10 x i8] c"call i32 \00" +@.str13878 = private unnamed_addr constant [14 x i8] c"rt_image_load\00" +@.str13879 = private unnamed_addr constant [6 x i8] c"(ptr \00" +@.str13880 = private unnamed_addr constant [2 x i8] c")\00" +@.str13881 = private unnamed_addr constant [5 x i8] c"skin\00" +@.str13882 = private unnamed_addr constant [6 x i8] c"align\00" +@.str13883 = private unnamed_addr constant [7 x i8] c"center\00" +@.str13884 = private unnamed_addr constant [4 x i8] c"end\00" +@.str13885 = private unnamed_addr constant [2 x i8] c"1\00" +@.str13886 = private unnamed_addr constant [34 x i8] c"define void @ui_build() {\0Aentry:\0A\00" +@.str13887 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str13888 = private unnamed_addr constant [3 x i8] c", \00" +@.str13889 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21495: index out of range: \00" +@.str13890 = private unnamed_addr constant [7 x i8] c" %arg_\00" +@.str13891 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21495: index out of range: \00" +@.str13892 = private unnamed_addr constant [5 x i8] c"void\00" +@.str13893 = private unnamed_addr constant [20 x i8] c" %retval = alloca \00" +@.str13894 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13895 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21514: index out of range: \00" +@.str13896 = private unnamed_addr constant [9 x i8] c" store \00" +@.str13897 = private unnamed_addr constant [7 x i8] c" %arg_\00" +@.str13898 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13899 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13900 = private unnamed_addr constant [5 x i8] c"void\00" +@.str13901 = private unnamed_addr constant [11 x i8] c"function '\00" +@.str13902 = private unnamed_addr constant [41 x i8] c"' can reach its end without returning a \00" +@.str13903 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" +@.str13904 = private unnamed_addr constant [6 x i8] c"ret:\0A\00" +@.str13905 = private unnamed_addr constant [5 x i8] c"void\00" +@.str13906 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" +@.str13907 = private unnamed_addr constant [6 x i8] c"load \00" +@.str13908 = private unnamed_addr constant [14 x i8] c", ptr %retval\00" +@.str13909 = private unnamed_addr constant [7 x i8] c" ret \00" +@.str13910 = private unnamed_addr constant [2 x i8] c" \00" +@.str13911 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13912 = private unnamed_addr constant [8 x i8] c"define \00" +@.str13913 = private unnamed_addr constant [6 x i8] c" @fn_\00" +@.str13914 = private unnamed_addr constant [2 x i8] c"(\00" +@.str13915 = private unnamed_addr constant [12 x i8] c") {\0Aentry:\0A\00" +@.str13916 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str13917 = private unnamed_addr constant [1 x i8] c"\00" +@.str13918 = private unnamed_addr constant [4 x i8] c"int\00" +@.str13919 = private unnamed_addr constant [24 x i8] c" %retval = alloca i32\0A\00" +@.str13920 = private unnamed_addr constant [32 x i8] c" store i32 %argc, ptr @L_argc\0A\00" +@.str13921 = private unnamed_addr constant [32 x i8] c" store ptr %argv, ptr @L_argv\0A\00" +@.str13922 = private unnamed_addr constant [28 x i8] c" store i32 0, ptr %retval\0A\00" +@.str13923 = private unnamed_addr constant [31 x i8] c" call void @L_init_runtime()\0A\00" +@.str13924 = private unnamed_addr constant [28 x i8] c" call void @L_grow(i32 1)\0A\00" +@.str13925 = private unnamed_addr constant [8 x i8] c"rt_init\00" +@.str13926 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13927 = private unnamed_addr constant [8 x i8] c"rt_init\00" +@.str13928 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str13929 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" +@.str13930 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" +@.str13931 = private unnamed_addr constant [6 x i8] c"ret:\0A\00" +@.str13932 = private unnamed_addr constant [22 x i8] c"load i32, ptr %retval\00" +@.str13933 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str13934 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13935 = private unnamed_addr constant [49 x i8] c"define i32 @main(i32 %argc, ptr %argv) {\0Aentry:\0A\00" +@.str13936 = private unnamed_addr constant [3 x i8] c"}\0A\00" +@.str13937 = private unnamed_addr constant [5 x i8] c"void\00" +@.str13938 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" +@.str13939 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" +@.str13940 = private unnamed_addr constant [23 x i8] c"define void @fn__test_\00" +@.str13941 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" +@.str13942 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str13943 = private unnamed_addr constant [38 x i8] c"@L_test_fail = internal global i32 0\0A\00" +@.str13944 = private unnamed_addr constant [94 x i8] c"@.fmt_test_sum = private unnamed_addr constant [28 x i8] c\22== %d passed, %d failed ==\5C0A\5C00\22\0A\00" +@.str13945 = private unnamed_addr constant [91 x i8] c"@.fmt_test_none = private unnamed_addr constant [20 x i8] c\22no test named \5C22%s\5C22\5C0A\5C00\22\0A\00" +@.str13946 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21596: index out of range: \00" +@.str13947 = private unnamed_addr constant [86 x i8] c"@.fmt_expect = private unnamed_addr constant [22 x i8] c\22%s (got %d, want %d)\5C0A\5C00\22\0A\00" +@.str13948 = private unnamed_addr constant [102 x i8] c"@.fmt_expect_str = private unnamed_addr constant [26 x i8] c\22%s (got \5C22%s\5C22, want \5C22%s\5C22)\5C0A\5C00\22\0A\00" +@.str13949 = private unnamed_addr constant [89 x i8] c"@.fmt_expect_fp = private unnamed_addr constant [22 x i8] c\22%s (got %g, want %g)\5C0A\5C00\22\0A\00" +@.str13950 = private unnamed_addr constant [49 x i8] c"define i32 @main(i32 %argc, ptr %argv) {\0Aentry:\0A\00" +@.str13951 = private unnamed_addr constant [32 x i8] c" store i32 %argc, ptr @L_argc\0A\00" +@.str13952 = private unnamed_addr constant [32 x i8] c" store ptr %argv, ptr @L_argv\0A\00" +@.str13953 = private unnamed_addr constant [51 x i8] c" %failed = alloca i32\0A store i32 0, ptr %failed\0A\00" +@.str13954 = private unnamed_addr constant [45 x i8] c" %ran = alloca i32\0A store i32 0, ptr %ran\0A\00" +@.str13955 = private unnamed_addr constant [54 x i8] c" %filter = alloca ptr\0A store ptr null, ptr %filter\0A\00" +@.str13956 = private unnamed_addr constant [6 x i8] c"tfilt\00" +@.str13957 = private unnamed_addr constant [7 x i8] c"tbegin\00" +@.str13958 = private unnamed_addr constant [22 x i8] c"icmp sgt i32 %argc, 1\00" +@.str13959 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str13960 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13961 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13962 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13963 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13964 = private unnamed_addr constant [36 x i8] c"getelementptr ptr, ptr %argv, i64 1\00" +@.str13965 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" +@.str13966 = private unnamed_addr constant [13 x i8] c" store ptr \00" +@.str13967 = private unnamed_addr constant [15 x i8] c", ptr %filter\0A\00" +@.str13968 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str13969 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13970 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13971 = private unnamed_addr constant [6 x i8] c"tlist\00" +@.str13972 = private unnamed_addr constant [6 x i8] c"trun0\00" +@.str13973 = private unnamed_addr constant [22 x i8] c"load ptr, ptr %filter\00" +@.str13974 = private unnamed_addr constant [13 x i8] c"icmp ne ptr \00" +@.str13975 = private unnamed_addr constant [7 x i8] c", null\00" +@.str13976 = private unnamed_addr constant [6 x i8] c"tlcmp\00" +@.str13977 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str13978 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13979 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13980 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13981 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13982 = private unnamed_addr constant [7 x i8] c"--list\00" +@.str13983 = private unnamed_addr constant [22 x i8] c"call i32 @strcmp(ptr \00" +@.str13984 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13985 = private unnamed_addr constant [2 x i8] c")\00" +@.str13986 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str13987 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str13988 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str13989 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13990 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13991 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13992 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13993 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21632: index out of range: \00" +@.str13994 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" +@.str13995 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13996 = private unnamed_addr constant [13 x i8] c" ret i32 0\0A\00" +@.str13997 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13998 = private unnamed_addr constant [31 x i8] c" call void @L_init_runtime()\0A\00" +@.str13999 = private unnamed_addr constant [28 x i8] c" call void @L_grow(i32 1)\0A\00" +@.str14000 = private unnamed_addr constant [24 x i8] c" call void @rt_init()\0A\00" +@.str14001 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" +@.str14002 = private unnamed_addr constant [8 x i8] c"ok - \00" +@.str14003 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21644: index out of range: \00" +@.str14004 = private unnamed_addr constant [8 x i8] c"FAIL - \00" +@.str14005 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21645: index out of range: \00" +@.str14006 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21646: index out of range: \00" +@.str14007 = private unnamed_addr constant [5 x i8] c"tcmp\00" +@.str14008 = private unnamed_addr constant [5 x i8] c"trun\00" +@.str14009 = private unnamed_addr constant [6 x i8] c"tskip\00" +@.str14010 = private unnamed_addr constant [22 x i8] c"load ptr, ptr %filter\00" +@.str14011 = private unnamed_addr constant [13 x i8] c"icmp eq ptr \00" +@.str14012 = private unnamed_addr constant [7 x i8] c", null\00" +@.str14013 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str14014 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14015 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14016 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14017 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14018 = private unnamed_addr constant [22 x i8] c"call i32 @strcmp(ptr \00" +@.str14019 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str14020 = private unnamed_addr constant [2 x i8] c")\00" +@.str14021 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str14022 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str14023 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str14024 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14025 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14026 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14027 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14028 = private unnamed_addr constant [19 x i8] c"load i32, ptr %ran\00" +@.str14029 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str14030 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str14031 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str14032 = private unnamed_addr constant [12 x i8] c", ptr %ran\0A\00" +@.str14033 = private unnamed_addr constant [33 x i8] c" store i32 0, ptr @L_test_fail\0A\00" +@.str14034 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" +@.str14035 = private unnamed_addr constant [23 x i8] c" call void @fn__test_\00" +@.str14036 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str14037 = private unnamed_addr constant [27 x i8] c"load i32, ptr @L_test_fail\00" +@.str14038 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str14039 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str14040 = private unnamed_addr constant [6 x i8] c"tpass\00" +@.str14041 = private unnamed_addr constant [6 x i8] c"tfail\00" +@.str14042 = private unnamed_addr constant [6 x i8] c"tdone\00" +@.str14043 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str14044 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14045 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14046 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14047 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14048 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" +@.str14049 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str14050 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str14051 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14052 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14053 = private unnamed_addr constant [22 x i8] c"load i32, ptr %failed\00" +@.str14054 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str14055 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str14056 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str14057 = private unnamed_addr constant [15 x i8] c", ptr %failed\0A\00" +@.str14058 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" +@.str14059 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str14060 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str14061 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14062 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14063 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str14064 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14065 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14066 = private unnamed_addr constant [6 x i8] c"tnone\00" +@.str14067 = private unnamed_addr constant [5 x i8] c"tsum\00" +@.str14068 = private unnamed_addr constant [19 x i8] c"load i32, ptr %ran\00" +@.str14069 = private unnamed_addr constant [22 x i8] c"load ptr, ptr %filter\00" +@.str14070 = private unnamed_addr constant [13 x i8] c"icmp ne ptr \00" +@.str14071 = private unnamed_addr constant [7 x i8] c", null\00" +@.str14072 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str14073 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str14074 = private unnamed_addr constant [8 x i8] c"and i1 \00" +@.str14075 = private unnamed_addr constant [3 x i8] c", \00" +@.str14076 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str14077 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14078 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14079 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14080 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14081 = private unnamed_addr constant [56 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_test_none, ptr \00" +@.str14082 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str14083 = private unnamed_addr constant [13 x i8] c" ret i32 1\0A\00" +@.str14084 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14085 = private unnamed_addr constant [22 x i8] c"load i32, ptr %failed\00" +@.str14086 = private unnamed_addr constant [9 x i8] c"sub i32 \00" +@.str14087 = private unnamed_addr constant [3 x i8] c", \00" +@.str14088 = private unnamed_addr constant [55 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_test_sum, i32 \00" +@.str14089 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str14090 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str14091 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str14092 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str14093 = private unnamed_addr constant [11 x i8] c"select i1 \00" +@.str14094 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" +@.str14095 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str14096 = private unnamed_addr constant [4 x i8] c"\0A}\0A\00" +@.str14097 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21709: index out of range: \00" +@.str14098 = private unnamed_addr constant [11 x i8] c"function '\00" +@.str14099 = private unnamed_addr constant [30 x i8] c"' is defined twice (first in \00" +@.str14100 = private unnamed_addr constant [2 x i8] c":\00" +@.str14101 = private unnamed_addr constant [2 x i8] c")\00" +@.str14102 = private unnamed_addr constant [1 x i8] c"\00" +@.str14103 = private unnamed_addr constant [1 x i8] c"\00" +@.str14104 = private unnamed_addr constant [1 x i8] c"\00" +@.str14105 = private unnamed_addr constant [1 x i8] c"\00" +@.str14106 = private unnamed_addr constant [1 x i8] c"\00" +@.str14107 = private unnamed_addr constant [1 x i8] c"\00" +@.str14108 = private unnamed_addr constant [3 x i8] c": \00" +@.str14109 = private unnamed_addr constant [126 x i8] c" exports it, and exported names are one namespace - rename this one, or declare it without export inside a module of your own\00" +@.str14110 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21746: index out of range: \00" +@.str14111 = private unnamed_addr constant [2 x i8] c":\00" +@.str14112 = private unnamed_addr constant [2 x i8] c"'\00" +@.str14113 = private unnamed_addr constant [30 x i8] c"' is defined twice (first in \00" +@.str14114 = private unnamed_addr constant [2 x i8] c":\00" +@.str14115 = private unnamed_addr constant [2 x i8] c")\00" +@.str14116 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21793: index out of range: \00" +@.str14117 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21795: index out of range: \00" +@.str14118 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21813: index out of range: \00" +@.str14119 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21813: index out of range: \00" +@.str14120 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21818: index out of range: \00" +@.str14121 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21818: index out of range: \00" +@.str14122 = private unnamed_addr constant [36 x i8] c"@L_running = internal global i32 1\0A\00" +@.str14123 = private unnamed_addr constant [23 x i8] c"declare i32 @getpid()\0A\00" +@.str14124 = private unnamed_addr constant [37 x i8] c"declare i32 @fprintf(ptr, ptr, ...)\0A\00" +@.str14125 = private unnamed_addr constant [68 x i8] c"@.fmt_panic = private unnamed_addr constant [6 x i8] c\22%s%s\5C0A\5C00\22\0A\00" +@.str14126 = private unnamed_addr constant [37 x i8] c"declare i32 @fprintf(ptr, ptr, ...)\0A\00" +@.str14127 = private unnamed_addr constant [78 x i8] c"@.fmt_bounds = private unnamed_addr constant [14 x i8] c\22%s%d, len %d\5C0A\5C00\22\0A\00" +@.str14128 = private unnamed_addr constant [34 x i8] c"%Result = type { i32, i32, ptr }\0A\00" +@.str14129 = private unnamed_addr constant [29 x i8] c"%Option = type { i32, i32 }\0A\00" +@.str14130 = private unnamed_addr constant [33 x i8] c"@L_cov_lines = internal global [\00" +@.str14131 = private unnamed_addr constant [10 x i8] c" x i32] [\00" +@.str14132 = private unnamed_addr constant [3 x i8] c", \00" +@.str14133 = private unnamed_addr constant [5 x i8] c"i32 \00" +@.str14134 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21874: index out of range: \00" +@.str14135 = private unnamed_addr constant [3 x i8] c"]\0A\00" +@.str14136 = private unnamed_addr constant [32 x i8] c"@L_cov_hits = internal global [\00" +@.str14137 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" +@.str14138 = private unnamed_addr constant [32 x i8] c"@L_cov_n = internal global i32 \00" +@.str14139 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14140 = private unnamed_addr constant [15 x i8] c"LUDIC_COVERAGE\00" +@.str14141 = private unnamed_addr constant [10 x i8] c"ludic.cov\00" +@.str14142 = private unnamed_addr constant [2 x i8] c"w\00" +@.str14143 = private unnamed_addr constant [73 x i8] c"@.cov_filefmt = private unnamed_addr constant [9 x i8] c\22FILE %s\5C0A\5C00\22\0A\00" +@.str14144 = private unnamed_addr constant [70 x i8] c"@.cov_rowfmt = private unnamed_addr constant [7 x i8] c\22%d %d\5C0A\5C00\22\0A\00" +@.str14145 = private unnamed_addr constant [37 x i8] c"declare i32 @fprintf(ptr, ptr, ...)\0A\00" +@.str14146 = private unnamed_addr constant [26 x i8] c"declare i32 @atexit(ptr)\0A\00" +@.str14147 = private unnamed_addr constant [34 x i8] c"define void @cov_dump() {\0Aentry:\0A\00" +@.str14148 = private unnamed_addr constant [31 x i8] c" %env = call ptr @getenv(ptr \00" +@.str14149 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str14150 = private unnamed_addr constant [35 x i8] c" %noenv = icmp eq ptr %env, null\0A\00" +@.str14151 = private unnamed_addr constant [33 x i8] c" %path = select i1 %noenv, ptr \00" +@.str14152 = private unnamed_addr constant [12 x i8] c", ptr %env\0A\00" +@.str14153 = private unnamed_addr constant [39 x i8] c" %f = call ptr @fopen(ptr %path, ptr \00" +@.str14154 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str14155 = private unnamed_addr constant [31 x i8] c" %bad = icmp eq ptr %f, null\0A\00" +@.str14156 = private unnamed_addr constant [41 x i8] c" br i1 %bad, label %done, label %write\0A\00" +@.str14157 = private unnamed_addr constant [8 x i8] c"write:\0A\00" +@.str14158 = private unnamed_addr constant [68 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr %f, ptr @.cov_filefmt, ptr \00" +@.str14159 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str14160 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" +@.str14161 = private unnamed_addr constant [7 x i8] c"loop:\0A\00" +@.str14162 = private unnamed_addr constant [46 x i8] c" %i = phi i32 [ 0, %write ], [ %i1, %body ]\0A\00" +@.str14163 = private unnamed_addr constant [26 x i8] c" %go = icmp slt i32 %i, \00" +@.str14164 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14165 = private unnamed_addr constant [40 x i8] c" br i1 %go, label %body, label %close\0A\00" +@.str14166 = private unnamed_addr constant [7 x i8] c"body:\0A\00" +@.str14167 = private unnamed_addr constant [33 x i8] c" %lp = getelementptr inbounds [\00" +@.str14168 = private unnamed_addr constant [42 x i8] c" x i32], ptr @L_cov_lines, i32 0, i32 %i\0A\00" +@.str14169 = private unnamed_addr constant [27 x i8] c" %lv = load i32, ptr %lp\0A\00" +@.str14170 = private unnamed_addr constant [33 x i8] c" %hp = getelementptr inbounds [\00" +@.str14171 = private unnamed_addr constant [41 x i8] c" x i32], ptr @L_cov_hits, i32 0, i32 %i\0A\00" +@.str14172 = private unnamed_addr constant [27 x i8] c" %hv = load i32, ptr %hp\0A\00" +@.str14173 = private unnamed_addr constant [81 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr %f, ptr @.cov_rowfmt, i32 %lv, i32 %hv)\0A\00" +@.str14174 = private unnamed_addr constant [23 x i8] c" %i1 = add i32 %i, 1\0A\00" +@.str14175 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" +@.str14176 = private unnamed_addr constant [8 x i8] c"close:\0A\00" +@.str14177 = private unnamed_addr constant [34 x i8] c" %rc = call i32 @fclose(ptr %f)\0A\00" +@.str14178 = private unnamed_addr constant [18 x i8] c" br label %done\0A\00" +@.str14179 = private unnamed_addr constant [21 x i8] c"done:\0A ret void\0A}\0A\0A\00" +@.str14180 = private unnamed_addr constant [34 x i8] c"define void @cov_init() {\0Aentry:\0A\00" +@.str14181 = private unnamed_addr constant [40 x i8] c" %r = call i32 @atexit(ptr @cov_dump)\0A\00" +@.str14182 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str14183 = private unnamed_addr constant [122 x i8] c"@llvm.global_ctors = appending global [1 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 65535, ptr @cov_init, ptr null }]\0A\00" +@.str14184 = private unnamed_addr constant [3 x i8] c"wb\00" +@.str14185 = private unnamed_addr constant [7 x i8] c".ludic\00" +@.str14186 = private unnamed_addr constant [2 x i8] c"/\00" +@.str14187 = private unnamed_addr constant [15 x i8] c"if not exist \22\00" +@.str14188 = private unnamed_addr constant [10 x i8] c"\22 mkdir \22\00" +@.str14189 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str14190 = private unnamed_addr constant [10 x i8] c"mkdir -p \00" +@.str14191 = private unnamed_addr constant [12 x i8] c"del /f /q \22\00" +@.str14192 = private unnamed_addr constant [8 x i8] c"\22 2>nul\00" +@.str14193 = private unnamed_addr constant [7 x i8] c"rm -f \00" +@.str14194 = private unnamed_addr constant [9 x i8] c"LUDIC_CC\00" +@.str14195 = private unnamed_addr constant [36 x i8] c"C:/Program Files/LLVM/bin/clang.exe\00" +@.str14196 = private unnamed_addr constant [3 x i8] c"rb\00" +@.str14197 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str14198 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str14199 = private unnamed_addr constant [6 x i8] c"clang\00" +@.str14200 = private unnamed_addr constant [8 x i8] c"VERSION\00" +@.str14201 = private unnamed_addr constant [24 x i8] c"ludic (version unknown)\00" +@.str14202 = private unnamed_addr constant [7 x i8] c"ludic \00" +@.str14203 = private unnamed_addr constant [1 x i8] c"\00" +@.str14204 = private unnamed_addr constant [1 x i8] c"\00" +@.str14205 = private unnamed_addr constant [2 x i8] c",\00" +@.str14206 = private unnamed_addr constant [1 x i8] c"\00" +@.str14207 = private unnamed_addr constant [2 x i8] c",\00" +@.str14208 = private unnamed_addr constant [2 x i8] c"?\00" +@.str14209 = private unnamed_addr constant [4 x i8] c"ret\00" +@.str14210 = private unnamed_addr constant [1 x i8] c"\00" +@.str14211 = private unnamed_addr constant [5 x i8] c"void\00" +@.str14212 = private unnamed_addr constant [10 x i8] c"--version\00" +@.str14213 = private unnamed_addr constant [11 x i8] c"--windowed\00" +@.str14214 = private unnamed_addr constant [11 x i8] c"--headless\00" +@.str14215 = private unnamed_addr constant [12 x i8] c"--emit-llvm\00" +@.str14216 = private unnamed_addr constant [9 x i8] c"--unsafe\00" +@.str14217 = private unnamed_addr constant [14 x i8] c"--emit-module\00" +@.str14218 = private unnamed_addr constant [6 x i8] c"--fmt\00" +@.str14219 = private unnamed_addr constant [13 x i8] c"--save-temps\00" +@.str14220 = private unnamed_addr constant [6 x i8] c"--run\00" +@.str14221 = private unnamed_addr constant [8 x i8] c"--check\00" +@.str14222 = private unnamed_addr constant [10 x i8] c"--globals\00" +@.str14223 = private unnamed_addr constant [16 x i8] c"--migrate-state\00" +@.str14224 = private unnamed_addr constant [16 x i8] c"--migrate-prune\00" +@.str14225 = private unnamed_addr constant [18 x i8] c"--migrate-tighten\00" +@.str14226 = private unnamed_addr constant [18 x i8] c"--migrate-runtime\00" +@.str14227 = private unnamed_addr constant [11 x i8] c"--coverage\00" +@.str14228 = private unnamed_addr constant [9 x i8] c"--target\00" +@.str14229 = private unnamed_addr constant [6 x i8] c"--gui\00" +@.str14230 = private unnamed_addr constant [8 x i8] c"--title\00" +@.str14231 = private unnamed_addr constant [14 x i8] c"--natives-out\00" +@.str14232 = private unnamed_addr constant [7 x i8] c"--link\00" +@.str14233 = private unnamed_addr constant [3 x i8] c"-o\00" +@.str14234 = private unnamed_addr constant [31 x i8] c"ludicc: ignoring unknown flag \00" +@.str14235 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14236 = private unnamed_addr constant [108 x i8] c"usage: ludicc [-o out] [--windowed|--headless] [--target triple] [--emit-llvm] [--save-temps]\0A\00" +@.str14237 = private unnamed_addr constant [8 x i8] c"windows\00" +@.str14238 = private unnamed_addr constant [27 x i8] c"ludicc: cannot open input\0A\00" +@.str14239 = private unnamed_addr constant [5 x i8] c"TEMP\00" +@.str14240 = private unnamed_addr constant [2 x i8] c".\00" +@.str14241 = private unnamed_addr constant [12 x i8] c"/ludic-run-\00" +@.str14242 = private unnamed_addr constant [16 x i8] c"/tmp/ludic-run-\00" +@.str14243 = private unnamed_addr constant [5 x i8] c".exe\00" +@.str14244 = private unnamed_addr constant [5 x i8] c".exe\00" +@.str14245 = private unnamed_addr constant [4 x i8] c".ll\00" +@.str14246 = private unnamed_addr constant [25 x i8] c"ludicc: cannot write IR\0A\00" +@.str14247 = private unnamed_addr constant [27 x i8] c" -O2 -Wno-override-module \00" +@.str14248 = private unnamed_addr constant [24 x i8] c"runtime/native/win32.ll\00" +@.str14249 = private unnamed_addr constant [2 x i8] c" \00" +@.str14250 = private unnamed_addr constant [63 x i8] c" -luser32 -lgdi32 -lxinput -lole32 -Wl,/ignore:importeddllmain\00" +@.str14251 = private unnamed_addr constant [28 x i8] c"runtime/native/audio_win.ll\00" +@.str14252 = private unnamed_addr constant [2 x i8] c" \00" +@.str14253 = private unnamed_addr constant [19 x i8] c" -lxaudio2 -lole32\00" +@.str14254 = private unnamed_addr constant [24 x i8] c"runtime/native/cocoa.ll\00" +@.str14255 = private unnamed_addr constant [2 x i8] c" \00" +@.str14256 = private unnamed_addr constant [79 x i8] c" -framework Cocoa -Wl,-needed_framework,GameController -Wl,-rpath,@loader_path\00" +@.str14257 = private unnamed_addr constant [24 x i8] c"runtime/native/audio.ll\00" +@.str14258 = private unnamed_addr constant [2 x i8] c" \00" +@.str14259 = private unnamed_addr constant [36 x i8] c" -Wl,-needed_framework,AVFoundation\00" +@.str14260 = private unnamed_addr constant [2 x i8] c" \00" +@.str14261 = private unnamed_addr constant [30 x i8] c"runtime/native/threads_win.ll\00" +@.str14262 = private unnamed_addr constant [2 x i8] c" \00" +@.str14263 = private unnamed_addr constant [26 x i8] c"runtime/native/threads.ll\00" +@.str14264 = private unnamed_addr constant [2 x i8] c" \00" +@.str14265 = private unnamed_addr constant [26 x i8] c"runtime/native/udp_win.ll\00" +@.str14266 = private unnamed_addr constant [10 x i8] c" -lws2_32\00" +@.str14267 = private unnamed_addr constant [2 x i8] c" \00" +@.str14268 = private unnamed_addr constant [22 x i8] c"runtime/native/udp.ll\00" +@.str14269 = private unnamed_addr constant [12 x i8] c" -ladvapi32\00" +@.str14270 = private unnamed_addr constant [2 x i8] c" \00" +@.str14271 = private unnamed_addr constant [30 x i8] c"runtime/native/process_win.ll\00" +@.str14272 = private unnamed_addr constant [2 x i8] c" \00" +@.str14273 = private unnamed_addr constant [26 x i8] c"runtime/native/process.ll\00" +@.str14274 = private unnamed_addr constant [27 x i8] c"runtime/native/http_win.ll\00" +@.str14275 = private unnamed_addr constant [2 x i8] c" \00" +@.str14276 = private unnamed_addr constant [11 x i8] c" -lwinhttp\00" +@.str14277 = private unnamed_addr constant [23 x i8] c"runtime/native/http.ll\00" +@.str14278 = private unnamed_addr constant [2 x i8] c" \00" +@.str14279 = private unnamed_addr constant [34 x i8] c" -Wl,-needed_framework,Foundation\00" +@.str14280 = private unnamed_addr constant [25 x i8] c"runtime/native/gl_win.ll\00" +@.str14281 = private unnamed_addr constant [32 x i8] c"runtime/native/gl_thunks_win.ll\00" +@.str14282 = private unnamed_addr constant [31 x i8] c"runtime/native/gl_win_nowin.ll\00" +@.str14283 = private unnamed_addr constant [27 x i8] c"runtime/native/win32_gl.ll\00" +@.str14284 = private unnamed_addr constant [2 x i8] c" \00" +@.str14285 = private unnamed_addr constant [2 x i8] c" \00" +@.str14286 = private unnamed_addr constant [2 x i8] c" \00" +@.str14287 = private unnamed_addr constant [29 x i8] c" -luser32 -lgdi32 -lopengl32\00" +@.str14288 = private unnamed_addr constant [21 x i8] c"runtime/native/gl.ll\00" +@.str14289 = private unnamed_addr constant [28 x i8] c"runtime/native/gl_thunks.ll\00" +@.str14290 = private unnamed_addr constant [2 x i8] c" \00" +@.str14291 = private unnamed_addr constant [2 x i8] c" \00" +@.str14292 = private unnamed_addr constant [19 x i8] c" -framework OpenGL\00" +@.str14293 = private unnamed_addr constant [28 x i8] c"runtime/native/vk_thunks.ll\00" +@.str14294 = private unnamed_addr constant [25 x i8] c"runtime/native/vk_mac.ll\00" +@.str14295 = private unnamed_addr constant [25 x i8] c"runtime/native/vk_win.ll\00" +@.str14296 = private unnamed_addr constant [2 x i8] c" \00" +@.str14297 = private unnamed_addr constant [2 x i8] c" \00" +@.str14298 = private unnamed_addr constant [34 x i8] c" -Wl,-needed_framework,QuartzCore\00" +@.str14299 = private unnamed_addr constant [50 x i8] c" -Wl,/subsystem:windows -Wl,/entry:mainCRTStartup\00" +@.str14300 = private unnamed_addr constant [3 x i8] c" \22\00" +@.str14301 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:22318: index out of range: \00" +@.str14302 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str14303 = private unnamed_addr constant [5 x i8] c" -o \00" +@.str14304 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str14305 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str14306 = private unnamed_addr constant [21 x i8] c"ludicc: link failed\0A\00" +@.str14307 = private unnamed_addr constant [1 x i8] c"\00" +@.str14308 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:22332: index out of range: \00" +@.str14309 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14310 = private unnamed_addr constant [3 x i8] c"wb\00" +@.str14311 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str14312 = private unnamed_addr constant [2 x i8] c"\22\00" define i32 @lp_str_eq(ptr %a, ptr %b) { entry: br label %loop @@ -15431,56 +15575,56 @@ sod: store i32 %fcnt, ptr %d2 ret ptr %h } -@.str14169 = private unnamed_addr constant [4 x i8] c"png\00" -@.str14170 = private unnamed_addr constant [10 x i8] c"image/png\00" -@.str14171 = private unnamed_addr constant [4 x i8] c"jpg\00" -@.str14172 = private unnamed_addr constant [11 x i8] c"image/jpeg\00" -@.str14173 = private unnamed_addr constant [5 x i8] c"jpeg\00" -@.str14174 = private unnamed_addr constant [11 x i8] c"image/jpeg\00" -@.str14175 = private unnamed_addr constant [4 x i8] c"gif\00" -@.str14176 = private unnamed_addr constant [10 x i8] c"image/gif\00" -@.str14177 = private unnamed_addr constant [4 x i8] c"bmp\00" -@.str14178 = private unnamed_addr constant [10 x i8] c"image/bmp\00" -@.str14179 = private unnamed_addr constant [5 x i8] c"webp\00" -@.str14180 = private unnamed_addr constant [11 x i8] c"image/webp\00" -@.str14181 = private unnamed_addr constant [4 x i8] c"svg\00" -@.str14182 = private unnamed_addr constant [14 x i8] c"image/svg+xml\00" -@.str14183 = private unnamed_addr constant [4 x i8] c"txt\00" -@.str14184 = private unnamed_addr constant [11 x i8] c"text/plain\00" -@.str14185 = private unnamed_addr constant [3 x i8] c"md\00" -@.str14186 = private unnamed_addr constant [14 x i8] c"text/markdown\00" -@.str14187 = private unnamed_addr constant [4 x i8] c"csv\00" -@.str14188 = private unnamed_addr constant [9 x i8] c"text/csv\00" -@.str14189 = private unnamed_addr constant [5 x i8] c"html\00" -@.str14190 = private unnamed_addr constant [10 x i8] c"text/html\00" -@.str14191 = private unnamed_addr constant [4 x i8] c"htm\00" -@.str14192 = private unnamed_addr constant [10 x i8] c"text/html\00" -@.str14193 = private unnamed_addr constant [4 x i8] c"css\00" -@.str14194 = private unnamed_addr constant [9 x i8] c"text/css\00" -@.str14195 = private unnamed_addr constant [3 x i8] c"js\00" -@.str14196 = private unnamed_addr constant [16 x i8] c"text/javascript\00" -@.str14197 = private unnamed_addr constant [5 x i8] c"json\00" -@.str14198 = private unnamed_addr constant [17 x i8] c"application/json\00" -@.str14199 = private unnamed_addr constant [4 x i8] c"xml\00" -@.str14200 = private unnamed_addr constant [16 x i8] c"application/xml\00" -@.str14201 = private unnamed_addr constant [4 x i8] c"zip\00" -@.str14202 = private unnamed_addr constant [16 x i8] c"application/zip\00" -@.str14203 = private unnamed_addr constant [4 x i8] c"pdf\00" -@.str14204 = private unnamed_addr constant [16 x i8] c"application/pdf\00" -@.str14205 = private unnamed_addr constant [4 x i8] c"wav\00" -@.str14206 = private unnamed_addr constant [10 x i8] c"audio/wav\00" -@.str14207 = private unnamed_addr constant [4 x i8] c"ogg\00" -@.str14208 = private unnamed_addr constant [10 x i8] c"audio/ogg\00" -@.str14209 = private unnamed_addr constant [4 x i8] c"mp3\00" -@.str14210 = private unnamed_addr constant [11 x i8] c"audio/mpeg\00" -@.str14211 = private unnamed_addr constant [4 x i8] c"ttf\00" -@.str14212 = private unnamed_addr constant [9 x i8] c"font/ttf\00" -@.str14213 = private unnamed_addr constant [4 x i8] c"otf\00" -@.str14214 = private unnamed_addr constant [9 x i8] c"font/otf\00" -@.str14215 = private unnamed_addr constant [6 x i8] c"ludic\00" -@.str14216 = private unnamed_addr constant [13 x i8] c"text/x-ludic\00" -@.str14217 = private unnamed_addr constant [25 x i8] c"application/octet-stream\00" -@mime_tbl = private unnamed_addr constant [24 x { ptr, ptr }] [{ ptr, ptr } { ptr @.str14169, ptr @.str14170 }, { ptr, ptr } { ptr @.str14171, ptr @.str14172 }, { ptr, ptr } { ptr @.str14173, ptr @.str14174 }, { ptr, ptr } { ptr @.str14175, ptr @.str14176 }, { ptr, ptr } { ptr @.str14177, ptr @.str14178 }, { ptr, ptr } { ptr @.str14179, ptr @.str14180 }, { ptr, ptr } { ptr @.str14181, ptr @.str14182 }, { ptr, ptr } { ptr @.str14183, ptr @.str14184 }, { ptr, ptr } { ptr @.str14185, ptr @.str14186 }, { ptr, ptr } { ptr @.str14187, ptr @.str14188 }, { ptr, ptr } { ptr @.str14189, ptr @.str14190 }, { ptr, ptr } { ptr @.str14191, ptr @.str14192 }, { ptr, ptr } { ptr @.str14193, ptr @.str14194 }, { ptr, ptr } { ptr @.str14195, ptr @.str14196 }, { ptr, ptr } { ptr @.str14197, ptr @.str14198 }, { ptr, ptr } { ptr @.str14199, ptr @.str14200 }, { ptr, ptr } { ptr @.str14201, ptr @.str14202 }, { ptr, ptr } { ptr @.str14203, ptr @.str14204 }, { ptr, ptr } { ptr @.str14205, ptr @.str14206 }, { ptr, ptr } { ptr @.str14207, ptr @.str14208 }, { ptr, ptr } { ptr @.str14209, ptr @.str14210 }, { ptr, ptr } { ptr @.str14211, ptr @.str14212 }, { ptr, ptr } { ptr @.str14213, ptr @.str14214 }, { ptr, ptr } { ptr @.str14215, ptr @.str14216 }] +@.str14313 = private unnamed_addr constant [4 x i8] c"png\00" +@.str14314 = private unnamed_addr constant [10 x i8] c"image/png\00" +@.str14315 = private unnamed_addr constant [4 x i8] c"jpg\00" +@.str14316 = private unnamed_addr constant [11 x i8] c"image/jpeg\00" +@.str14317 = private unnamed_addr constant [5 x i8] c"jpeg\00" +@.str14318 = private unnamed_addr constant [11 x i8] c"image/jpeg\00" +@.str14319 = private unnamed_addr constant [4 x i8] c"gif\00" +@.str14320 = private unnamed_addr constant [10 x i8] c"image/gif\00" +@.str14321 = private unnamed_addr constant [4 x i8] c"bmp\00" +@.str14322 = private unnamed_addr constant [10 x i8] c"image/bmp\00" +@.str14323 = private unnamed_addr constant [5 x i8] c"webp\00" +@.str14324 = private unnamed_addr constant [11 x i8] c"image/webp\00" +@.str14325 = private unnamed_addr constant [4 x i8] c"svg\00" +@.str14326 = private unnamed_addr constant [14 x i8] c"image/svg+xml\00" +@.str14327 = private unnamed_addr constant [4 x i8] c"txt\00" +@.str14328 = private unnamed_addr constant [11 x i8] c"text/plain\00" +@.str14329 = private unnamed_addr constant [3 x i8] c"md\00" +@.str14330 = private unnamed_addr constant [14 x i8] c"text/markdown\00" +@.str14331 = private unnamed_addr constant [4 x i8] c"csv\00" +@.str14332 = private unnamed_addr constant [9 x i8] c"text/csv\00" +@.str14333 = private unnamed_addr constant [5 x i8] c"html\00" +@.str14334 = private unnamed_addr constant [10 x i8] c"text/html\00" +@.str14335 = private unnamed_addr constant [4 x i8] c"htm\00" +@.str14336 = private unnamed_addr constant [10 x i8] c"text/html\00" +@.str14337 = private unnamed_addr constant [4 x i8] c"css\00" +@.str14338 = private unnamed_addr constant [9 x i8] c"text/css\00" +@.str14339 = private unnamed_addr constant [3 x i8] c"js\00" +@.str14340 = private unnamed_addr constant [16 x i8] c"text/javascript\00" +@.str14341 = private unnamed_addr constant [5 x i8] c"json\00" +@.str14342 = private unnamed_addr constant [17 x i8] c"application/json\00" +@.str14343 = private unnamed_addr constant [4 x i8] c"xml\00" +@.str14344 = private unnamed_addr constant [16 x i8] c"application/xml\00" +@.str14345 = private unnamed_addr constant [4 x i8] c"zip\00" +@.str14346 = private unnamed_addr constant [16 x i8] c"application/zip\00" +@.str14347 = private unnamed_addr constant [4 x i8] c"pdf\00" +@.str14348 = private unnamed_addr constant [16 x i8] c"application/pdf\00" +@.str14349 = private unnamed_addr constant [4 x i8] c"wav\00" +@.str14350 = private unnamed_addr constant [10 x i8] c"audio/wav\00" +@.str14351 = private unnamed_addr constant [4 x i8] c"ogg\00" +@.str14352 = private unnamed_addr constant [10 x i8] c"audio/ogg\00" +@.str14353 = private unnamed_addr constant [4 x i8] c"mp3\00" +@.str14354 = private unnamed_addr constant [11 x i8] c"audio/mpeg\00" +@.str14355 = private unnamed_addr constant [4 x i8] c"ttf\00" +@.str14356 = private unnamed_addr constant [9 x i8] c"font/ttf\00" +@.str14357 = private unnamed_addr constant [4 x i8] c"otf\00" +@.str14358 = private unnamed_addr constant [9 x i8] c"font/otf\00" +@.str14359 = private unnamed_addr constant [6 x i8] c"ludic\00" +@.str14360 = private unnamed_addr constant [13 x i8] c"text/x-ludic\00" +@.str14361 = private unnamed_addr constant [25 x i8] c"application/octet-stream\00" +@mime_tbl = private unnamed_addr constant [24 x { ptr, ptr }] [{ ptr, ptr } { ptr @.str14313, ptr @.str14314 }, { ptr, ptr } { ptr @.str14315, ptr @.str14316 }, { ptr, ptr } { ptr @.str14317, ptr @.str14318 }, { ptr, ptr } { ptr @.str14319, ptr @.str14320 }, { ptr, ptr } { ptr @.str14321, ptr @.str14322 }, { ptr, ptr } { ptr @.str14323, ptr @.str14324 }, { ptr, ptr } { ptr @.str14325, ptr @.str14326 }, { ptr, ptr } { ptr @.str14327, ptr @.str14328 }, { ptr, ptr } { ptr @.str14329, ptr @.str14330 }, { ptr, ptr } { ptr @.str14331, ptr @.str14332 }, { ptr, ptr } { ptr @.str14333, ptr @.str14334 }, { ptr, ptr } { ptr @.str14335, ptr @.str14336 }, { ptr, ptr } { ptr @.str14337, ptr @.str14338 }, { ptr, ptr } { ptr @.str14339, ptr @.str14340 }, { ptr, ptr } { ptr @.str14341, ptr @.str14342 }, { ptr, ptr } { ptr @.str14343, ptr @.str14344 }, { ptr, ptr } { ptr @.str14345, ptr @.str14346 }, { ptr, ptr } { ptr @.str14347, ptr @.str14348 }, { ptr, ptr } { ptr @.str14349, ptr @.str14350 }, { ptr, ptr } { ptr @.str14351, ptr @.str14352 }, { ptr, ptr } { ptr @.str14353, ptr @.str14354 }, { ptr, ptr } { ptr @.str14355, ptr @.str14356 }, { ptr, ptr } { ptr @.str14357, ptr @.str14358 }, { ptr, ptr } { ptr @.str14359, ptr @.str14360 }] define ptr @lp_mime_of(ptr %path) { entry: %ext = call ptr @lp_path_ext(ptr %path) @@ -15508,7 +15652,7 @@ nx: store i32 %i1, ptr %ip br label %lp def: - %d = call ptr @lp_fs_strdup(ptr @.str14217) + %d = call ptr @lp_fs_strdup(ptr @.str14361) ret ptr %d } define ptr @lp_mime_lc(ptr %s) { @@ -130967,27 +131111,33 @@ entry: %t161 = alloca ptr %t163 = alloca ptr %t170 = alloca ptr - %t181 = alloca ptr - %t185 = alloca ptr - %t195 = alloca ptr - %t199 = alloca ptr - %t204 = alloca ptr - %t211 = alloca ptr - %t215 = alloca ptr - %t222 = alloca ptr - %t231 = alloca ptr - %t265 = alloca ptr - %t283 = alloca ptr - %t295 = alloca ptr - %t305 = alloca ptr - %t312 = alloca ptr - %t316 = alloca ptr - %t321 = alloca ptr - %t331 = alloca ptr - %t335 = alloca ptr + %t176 = alloca ptr + %t183 = alloca ptr + %t187 = alloca ptr + %t191 = alloca ptr + %t198 = alloca ptr + %t202 = alloca ptr + %t207 = alloca ptr + %t214 = alloca ptr + %t218 = alloca ptr + %t225 = alloca ptr + %t234 = alloca ptr + %t268 = alloca ptr + %t275 = alloca ptr + %t287 = alloca ptr + %t292 = alloca ptr + %t301 = alloca ptr + %t311 = alloca ptr + %t313 = alloca ptr + %t320 = alloca ptr + %t324 = alloca ptr + %t329 = alloca ptr + %t333 = alloca ptr %t340 = alloca ptr - %t347 = alloca ptr - %t354 = alloca ptr + %t344 = alloca ptr + %t349 = alloca ptr + %t356 = alloca ptr + %t363 = alloca ptr store ptr %arg_prop, ptr %t0 store ptr %arg_meth, ptr %t1 store ptr %arg_e, ptr %t2 @@ -131232,227 +131382,236 @@ ifend17: %t174 = load ptr, ptr %t151 call void @fn_emit(ptr %t174) call void @fn_emit(ptr @.str9858) - %t175 = load ptr, ptr %t4 - %t176 = call ptr @lp_str_concat(ptr @.str9859, ptr %t175) - %t177 = call ptr @lp_str_concat(ptr %t176, ptr @.str9860) - %t178 = load ptr, ptr %t161 - %t179 = call ptr @lp_str_concat(ptr %t177, ptr %t178) - %t180 = call ptr @fn_emit_bind(ptr %t179) - store ptr %t180, ptr %t181 - %t182 = load ptr, ptr %t181 - %t183 = call ptr @lp_str_concat(ptr @.str9861, ptr %t182) - %t184 = call ptr @fn_emit_bind(ptr %t183) - store ptr %t184, ptr %t185 - %t186 = load ptr, ptr %t4 - %t187 = call ptr @lp_str_concat(ptr @.str9862, ptr %t186) - %t188 = call ptr @lp_str_concat(ptr %t187, ptr @.str9863) - %t189 = load ptr, ptr %t0 - %t190 = call ptr @lp_str_concat(ptr %t188, ptr %t189) - %t191 = call ptr @lp_str_concat(ptr %t190, ptr @.str9864) - %t192 = load ptr, ptr %t161 - %t193 = call ptr @lp_str_concat(ptr %t191, ptr %t192) - %t194 = call ptr @fn_emit_bind(ptr %t193) - store ptr %t194, ptr %t195 - %t196 = load ptr, ptr %t195 - %t197 = call ptr @lp_str_concat(ptr @.str9865, ptr %t196) - %t198 = call ptr @fn_emit_bind(ptr %t197) - store ptr %t198, ptr %t199 - %t200 = load ptr, ptr %t199 - %t201 = call ptr @lp_str_concat(ptr @.str9866, ptr %t200) - %t202 = call ptr @lp_str_concat(ptr %t201, ptr @.str9867) - %t203 = call ptr @fn_emit_bind(ptr %t202) - store ptr %t203, ptr %t204 - %t205 = load ptr, ptr %t185 - %t206 = call ptr @lp_str_concat(ptr @.str9868, ptr %t205) - %t207 = call ptr @lp_str_concat(ptr %t206, ptr @.str9869) - %t208 = load ptr, ptr %t204 - %t209 = call ptr @lp_str_concat(ptr %t207, ptr %t208) - %t210 = call ptr @fn_emit_bind(ptr %t209) - store ptr %t210, ptr %t211 - %t212 = load ptr, ptr %t146 - %t213 = call ptr @lp_str_concat(ptr @.str9870, ptr %t212) - %t214 = call ptr @fn_emit_bind(ptr %t213) - store ptr %t214, ptr %t215 - %t216 = load ptr, ptr %t215 - %t217 = call ptr @lp_str_concat(ptr @.str9871, ptr %t216) - %t218 = call ptr @lp_str_concat(ptr %t217, ptr @.str9872) - %t219 = load ptr, ptr %t211 - %t220 = call ptr @lp_str_concat(ptr %t218, ptr %t219) - %t221 = call ptr @fn_emit_bind(ptr %t220) - store ptr %t221, ptr %t222 - %t223 = load ptr, ptr %t222 - %t224 = load ptr, ptr %t146 - call void @fn_store_at(ptr @.str9873, ptr %t223, ptr %t224) - call void @fn_emit(ptr @.str9874) - %t225 = load ptr, ptr %t153 - call void @fn_emit(ptr %t225) + %t175 = call ptr @fn_ecs_base(ptr @.str9859) + store ptr %t175, ptr %t176 + %t177 = load ptr, ptr %t176 + %t178 = call ptr @lp_str_concat(ptr @.str9860, ptr %t177) + %t179 = call ptr @lp_str_concat(ptr %t178, ptr @.str9861) + %t180 = load ptr, ptr %t161 + %t181 = call ptr @lp_str_concat(ptr %t179, ptr %t180) + %t182 = call ptr @fn_emit_bind(ptr %t181) + store ptr %t182, ptr %t183 + %t184 = load ptr, ptr %t183 + %t185 = call ptr @lp_str_concat(ptr @.str9862, ptr %t184) + %t186 = call ptr @fn_emit_bind(ptr %t185) + store ptr %t186, ptr %t187 + %t188 = load ptr, ptr %t0 + %t189 = call ptr @lp_str_concat(ptr @.str9863, ptr %t188) + %t190 = call ptr @fn_ecs_base(ptr %t189) + store ptr %t190, ptr %t191 + %t192 = load ptr, ptr %t191 + %t193 = call ptr @lp_str_concat(ptr @.str9864, ptr %t192) + %t194 = call ptr @lp_str_concat(ptr %t193, ptr @.str9865) + %t195 = load ptr, ptr %t161 + %t196 = call ptr @lp_str_concat(ptr %t194, ptr %t195) + %t197 = call ptr @fn_emit_bind(ptr %t196) + store ptr %t197, ptr %t198 + %t199 = load ptr, ptr %t198 + %t200 = call ptr @lp_str_concat(ptr @.str9866, ptr %t199) + %t201 = call ptr @fn_emit_bind(ptr %t200) + store ptr %t201, ptr %t202 + %t203 = load ptr, ptr %t202 + %t204 = call ptr @lp_str_concat(ptr @.str9867, ptr %t203) + %t205 = call ptr @lp_str_concat(ptr %t204, ptr @.str9868) + %t206 = call ptr @fn_emit_bind(ptr %t205) + store ptr %t206, ptr %t207 + %t208 = load ptr, ptr %t187 + %t209 = call ptr @lp_str_concat(ptr @.str9869, ptr %t208) + %t210 = call ptr @lp_str_concat(ptr %t209, ptr @.str9870) + %t211 = load ptr, ptr %t207 + %t212 = call ptr @lp_str_concat(ptr %t210, ptr %t211) + %t213 = call ptr @fn_emit_bind(ptr %t212) + store ptr %t213, ptr %t214 + %t215 = load ptr, ptr %t146 + %t216 = call ptr @lp_str_concat(ptr @.str9871, ptr %t215) + %t217 = call ptr @fn_emit_bind(ptr %t216) + store ptr %t217, ptr %t218 + %t219 = load ptr, ptr %t218 + %t220 = call ptr @lp_str_concat(ptr @.str9872, ptr %t219) + %t221 = call ptr @lp_str_concat(ptr %t220, ptr @.str9873) + %t222 = load ptr, ptr %t214 + %t223 = call ptr @lp_str_concat(ptr %t221, ptr %t222) + %t224 = call ptr @fn_emit_bind(ptr %t223) + store ptr %t224, ptr %t225 + %t226 = load ptr, ptr %t225 + %t227 = load ptr, ptr %t146 + call void @fn_store_at(ptr @.str9874, ptr %t226, ptr %t227) call void @fn_emit(ptr @.str9875) - %t226 = load ptr, ptr %t153 - call void @fn_emit(ptr %t226) + %t228 = load ptr, ptr %t153 + call void @fn_emit(ptr %t228) call void @fn_emit(ptr @.str9876) - %t227 = load ptr, ptr %t161 - %t228 = call ptr @lp_str_concat(ptr @.str9877, ptr %t227) - %t229 = call ptr @lp_str_concat(ptr %t228, ptr @.str9878) - %t230 = call ptr @fn_emit_bind(ptr %t229) - store ptr %t230, ptr %t231 - %t232 = load ptr, ptr %t231 - %t233 = load ptr, ptr %t143 - call void @fn_store_at(ptr @.str9879, ptr %t232, ptr %t233) - call void @fn_emit(ptr @.str9880) - %t234 = load ptr, ptr %t149 - call void @fn_emit(ptr %t234) + %t229 = load ptr, ptr %t153 + call void @fn_emit(ptr %t229) + call void @fn_emit(ptr @.str9877) + %t230 = load ptr, ptr %t161 + %t231 = call ptr @lp_str_concat(ptr @.str9878, ptr %t230) + %t232 = call ptr @lp_str_concat(ptr %t231, ptr @.str9879) + %t233 = call ptr @fn_emit_bind(ptr %t232) + store ptr %t233, ptr %t234 + %t235 = load ptr, ptr %t234 + %t236 = load ptr, ptr %t143 + call void @fn_store_at(ptr @.str9880, ptr %t235, ptr %t236) call void @fn_emit(ptr @.str9881) - %t235 = load ptr, ptr %t155 - call void @fn_emit(ptr %t235) + %t237 = load ptr, ptr %t149 + call void @fn_emit(ptr %t237) call void @fn_emit(ptr @.str9882) - %t236 = load ptr, ptr %t146 - %t237 = call ptr @lp_str_concat(ptr @.str9883, ptr %t236) - %t238 = call ptr @fn_emit_bind(ptr %t237) - %t239 = call ptr @fn_val(ptr %t238, ptr @.str9884) - store ptr %t239, ptr %retval + %t238 = load ptr, ptr %t155 + call void @fn_emit(ptr %t238) + call void @fn_emit(ptr @.str9883) + %t239 = load ptr, ptr %t146 + %t240 = call ptr @lp_str_concat(ptr @.str9884, ptr %t239) + %t241 = call ptr @fn_emit_bind(ptr %t240) + %t242 = call ptr @fn_val(ptr %t241, ptr @.str9885) + store ptr %t242, ptr %retval br label %ret ifend14: - %t240 = load ptr, ptr %t2 - %t241 = getelementptr inbounds %Cmp_Node, ptr %t240, i32 0, i32 7 - %t242 = load ptr, ptr %t241 - %t243 = getelementptr inbounds %LSlice, ptr %t242, i32 0, i32 1 - %t244 = load i32, ptr %t243 - %t245 = icmp ne i32 %t244, 1 - %t246 = zext i1 %t245 to i32 - %t247 = icmp ne i32 %t246, 0 - br i1 %t247, label %then18, label %ifend20 + %t243 = load ptr, ptr %t2 + %t244 = getelementptr inbounds %Cmp_Node, ptr %t243, i32 0, i32 7 + %t245 = load ptr, ptr %t244 + %t246 = getelementptr inbounds %LSlice, ptr %t245, i32 0, i32 1 + %t247 = load i32, ptr %t246 + %t248 = icmp ne i32 %t247, 1 + %t249 = zext i1 %t248 to i32 + %t250 = icmp ne i32 %t249, 0 + br i1 %t250, label %then18, label %ifend20 then18: - %t248 = load ptr, ptr %t0 - %t249 = call ptr @lp_str_concat(ptr %t248, ptr @.str9885) - %t250 = load ptr, ptr %t1 - %t251 = call ptr @lp_str_concat(ptr %t249, ptr %t250) + %t251 = load ptr, ptr %t0 %t252 = call ptr @lp_str_concat(ptr %t251, ptr @.str9886) - call void @fn_perr(ptr %t252) + %t253 = load ptr, ptr %t1 + %t254 = call ptr @lp_str_concat(ptr %t252, ptr %t253) + %t255 = call ptr @lp_str_concat(ptr %t254, ptr @.str9887) + call void @fn_perr(ptr %t255) br label %ifend20 ifend20: - %t253 = load ptr, ptr %t2 - %t254 = getelementptr inbounds %Cmp_Node, ptr %t253, i32 0, i32 7 - %t255 = load ptr, ptr %t254 - %t256 = getelementptr inbounds %LSlice, ptr %t255, i32 0, i32 0 - %t257 = load ptr, ptr %t256 - %t258 = getelementptr inbounds %LSlice, ptr %t255, i32 0, i32 1 - %t259 = load i32, ptr %t258 - %t260 = icmp ult i32 0, %t259 - br i1 %t260, label %ixok21, label %ixbad22 + %t256 = load ptr, ptr %t2 + %t257 = getelementptr inbounds %Cmp_Node, ptr %t256, i32 0, i32 7 + %t258 = load ptr, ptr %t257 + %t259 = getelementptr inbounds %LSlice, ptr %t258, i32 0, i32 0 + %t260 = load ptr, ptr %t259 + %t261 = getelementptr inbounds %LSlice, ptr %t258, i32 0, i32 1 + %t262 = load i32, ptr %t261 + %t263 = icmp ult i32 0, %t262 + br i1 %t263, label %ixok21, label %ixbad22 ixbad22: - %t261 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t261, ptr @.fmt_bounds, ptr @.str9887, i32 0, i32 %t259) + %t264 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t264, ptr @.fmt_bounds, ptr @.str9888, i32 0, i32 %t262) call void @exit(i32 1) unreachable ixok21: - %t262 = getelementptr inbounds ptr, ptr %t257, i32 0 - %t263 = load ptr, ptr %t262 - %t264 = call ptr @fn_emit_expr(ptr %t263) - store ptr %t264, ptr %t265 - %t266 = load ptr, ptr %t1 - %t267 = call i32 @lp_str_eq(ptr %t266, ptr @.str9888) - %t268 = icmp ne i32 %t267, 0 - br i1 %t268, label %then23, label %ifend25 + %t265 = getelementptr inbounds ptr, ptr %t260, i32 0 + %t266 = load ptr, ptr %t265 + %t267 = call ptr @fn_emit_expr(ptr %t266) + store ptr %t267, ptr %t268 + %t269 = load ptr, ptr %t1 + %t270 = call i32 @lp_str_eq(ptr %t269, ptr @.str9889) + %t271 = icmp ne i32 %t270, 0 + br i1 %t271, label %then23, label %ifend25 then23: - %t269 = load ptr, ptr %t4 - %t270 = call ptr @lp_str_concat(ptr @.str9889, ptr %t269) - %t271 = call ptr @lp_str_concat(ptr %t270, ptr @.str9890) %t272 = load ptr, ptr %t0 - %t273 = call ptr @lp_str_concat(ptr %t271, ptr %t272) - %t274 = call ptr @lp_str_concat(ptr %t273, ptr @.str9891) - %t275 = load ptr, ptr %t0 - %t276 = call ptr @lp_str_concat(ptr %t274, ptr %t275) - %t277 = call ptr @lp_str_concat(ptr %t276, ptr @.str9892) - %t278 = load ptr, ptr %t265 - %t279 = getelementptr inbounds %Cmp_Val, ptr %t278, i32 0, i32 0 - %t280 = load ptr, ptr %t279 - %t281 = call ptr @lp_str_concat(ptr %t277, ptr %t280) - %t282 = call ptr @fn_emit_bind(ptr %t281) - store ptr %t282, ptr %t283 + %t273 = call ptr @lp_str_concat(ptr @.str9890, ptr %t272) + %t274 = call ptr @fn_ecs_base(ptr %t273) + store ptr %t274, ptr %t275 + %t276 = load ptr, ptr %t0 + %t277 = call ptr @lp_str_concat(ptr @.str9891, ptr %t276) + %t278 = call ptr @lp_str_concat(ptr %t277, ptr @.str9892) + %t279 = load ptr, ptr %t275 + %t280 = call ptr @lp_str_concat(ptr %t278, ptr %t279) + %t281 = call ptr @lp_str_concat(ptr %t280, ptr @.str9893) + %t282 = load ptr, ptr %t268 + %t283 = getelementptr inbounds %Cmp_Val, ptr %t282, i32 0, i32 0 %t284 = load ptr, ptr %t283 - %t285 = load ptr, ptr %t0 - %t286 = call ptr @fn_val(ptr %t284, ptr %t285) - store ptr %t286, ptr %retval + %t285 = call ptr @lp_str_concat(ptr %t281, ptr %t284) + %t286 = call ptr @fn_emit_bind(ptr %t285) + store ptr %t286, ptr %t287 + %t288 = load ptr, ptr %t287 + %t289 = load ptr, ptr %t0 + %t290 = call ptr @fn_val(ptr %t288, ptr %t289) + store ptr %t290, ptr %retval br label %ret ifend25: - %t287 = load ptr, ptr %t265 - %t288 = getelementptr inbounds %Cmp_Val, ptr %t287, i32 0, i32 0 - %t289 = load ptr, ptr %t288 - %t290 = call ptr @lp_str_concat(ptr @.str9893, ptr %t289) - %t291 = call ptr @lp_str_concat(ptr %t290, ptr @.str9894) - %t292 = load ptr, ptr %t4 - %t293 = call ptr @lp_str_concat(ptr %t291, ptr %t292) - %t294 = call ptr @fn_emit_bind(ptr %t293) - store ptr %t294, ptr %t295 - %t296 = load ptr, ptr %t295 - %t297 = call ptr @lp_str_concat(ptr @.str9895, ptr %t296) - %t298 = call ptr @lp_str_concat(ptr %t297, ptr @.str9896) - %t299 = load ptr, ptr %t265 - %t300 = getelementptr inbounds %Cmp_Val, ptr %t299, i32 0, i32 0 - %t301 = load ptr, ptr %t300 - %t302 = call ptr @lp_str_concat(ptr %t298, ptr %t301) - %t303 = call ptr @lp_str_concat(ptr %t302, ptr @.str9897) - %t304 = call ptr @fn_emit_bind(ptr %t303) - store ptr %t304, ptr %t305 - %t306 = load ptr, ptr %t4 - %t307 = call ptr @lp_str_concat(ptr @.str9898, ptr %t306) - %t308 = call ptr @lp_str_concat(ptr %t307, ptr @.str9899) - %t309 = load ptr, ptr %t305 - %t310 = call ptr @lp_str_concat(ptr %t308, ptr %t309) - %t311 = call ptr @fn_emit_bind(ptr %t310) - store ptr %t311, ptr %t312 - %t313 = load ptr, ptr %t312 - %t314 = call ptr @lp_str_concat(ptr @.str9900, ptr %t313) - %t315 = call ptr @fn_emit_bind(ptr %t314) - store ptr %t315, ptr %t316 - %t317 = load ptr, ptr %t316 - %t318 = call ptr @lp_str_concat(ptr @.str9901, ptr %t317) - %t319 = call ptr @lp_str_concat(ptr %t318, ptr @.str9902) - %t320 = call ptr @fn_emit_bind(ptr %t319) - store ptr %t320, ptr %t321 - %t322 = load ptr, ptr %t4 - %t323 = call ptr @lp_str_concat(ptr @.str9903, ptr %t322) - %t324 = call ptr @lp_str_concat(ptr %t323, ptr @.str9904) - %t325 = load ptr, ptr %t0 - %t326 = call ptr @lp_str_concat(ptr %t324, ptr %t325) + %t291 = call ptr @fn_emit_bind(ptr @.str9894) + store ptr %t291, ptr %t292 + %t293 = load ptr, ptr %t268 + %t294 = getelementptr inbounds %Cmp_Val, ptr %t293, i32 0, i32 0 + %t295 = load ptr, ptr %t294 + %t296 = call ptr @lp_str_concat(ptr @.str9895, ptr %t295) + %t297 = call ptr @lp_str_concat(ptr %t296, ptr @.str9896) + %t298 = load ptr, ptr %t292 + %t299 = call ptr @lp_str_concat(ptr %t297, ptr %t298) + %t300 = call ptr @fn_emit_bind(ptr %t299) + store ptr %t300, ptr %t301 + %t302 = load ptr, ptr %t301 + %t303 = call ptr @lp_str_concat(ptr @.str9897, ptr %t302) + %t304 = call ptr @lp_str_concat(ptr %t303, ptr @.str9898) + %t305 = load ptr, ptr %t268 + %t306 = getelementptr inbounds %Cmp_Val, ptr %t305, i32 0, i32 0 + %t307 = load ptr, ptr %t306 + %t308 = call ptr @lp_str_concat(ptr %t304, ptr %t307) + %t309 = call ptr @lp_str_concat(ptr %t308, ptr @.str9899) + %t310 = call ptr @fn_emit_bind(ptr %t309) + store ptr %t310, ptr %t311 + %t312 = call ptr @fn_ecs_base(ptr @.str9900) + store ptr %t312, ptr %t313 + %t314 = load ptr, ptr %t313 + %t315 = call ptr @lp_str_concat(ptr @.str9901, ptr %t314) + %t316 = call ptr @lp_str_concat(ptr %t315, ptr @.str9902) + %t317 = load ptr, ptr %t311 + %t318 = call ptr @lp_str_concat(ptr %t316, ptr %t317) + %t319 = call ptr @fn_emit_bind(ptr %t318) + store ptr %t319, ptr %t320 + %t321 = load ptr, ptr %t320 + %t322 = call ptr @lp_str_concat(ptr @.str9903, ptr %t321) + %t323 = call ptr @fn_emit_bind(ptr %t322) + store ptr %t323, ptr %t324 + %t325 = load ptr, ptr %t324 + %t326 = call ptr @lp_str_concat(ptr @.str9904, ptr %t325) %t327 = call ptr @lp_str_concat(ptr %t326, ptr @.str9905) - %t328 = load ptr, ptr %t305 - %t329 = call ptr @lp_str_concat(ptr %t327, ptr %t328) - %t330 = call ptr @fn_emit_bind(ptr %t329) - store ptr %t330, ptr %t331 - %t332 = load ptr, ptr %t331 - %t333 = call ptr @lp_str_concat(ptr @.str9906, ptr %t332) - %t334 = call ptr @fn_emit_bind(ptr %t333) - store ptr %t334, ptr %t335 - %t336 = load ptr, ptr %t335 - %t337 = call ptr @lp_str_concat(ptr @.str9907, ptr %t336) - %t338 = call ptr @lp_str_concat(ptr %t337, ptr @.str9908) + %t328 = call ptr @fn_emit_bind(ptr %t327) + store ptr %t328, ptr %t329 + %t330 = load ptr, ptr %t0 + %t331 = call ptr @lp_str_concat(ptr @.str9906, ptr %t330) + %t332 = call ptr @fn_ecs_base(ptr %t331) + store ptr %t332, ptr %t333 + %t334 = load ptr, ptr %t333 + %t335 = call ptr @lp_str_concat(ptr @.str9907, ptr %t334) + %t336 = call ptr @lp_str_concat(ptr %t335, ptr @.str9908) + %t337 = load ptr, ptr %t311 + %t338 = call ptr @lp_str_concat(ptr %t336, ptr %t337) %t339 = call ptr @fn_emit_bind(ptr %t338) store ptr %t339, ptr %t340 - %t341 = load ptr, ptr %t295 + %t341 = load ptr, ptr %t340 %t342 = call ptr @lp_str_concat(ptr @.str9909, ptr %t341) - %t343 = call ptr @lp_str_concat(ptr %t342, ptr @.str9910) - %t344 = load ptr, ptr %t321 - %t345 = call ptr @lp_str_concat(ptr %t343, ptr %t344) - %t346 = call ptr @fn_emit_bind(ptr %t345) - store ptr %t346, ptr %t347 - %t348 = load ptr, ptr %t347 - %t349 = call ptr @lp_str_concat(ptr @.str9911, ptr %t348) - %t350 = call ptr @lp_str_concat(ptr %t349, ptr @.str9912) - %t351 = load ptr, ptr %t340 - %t352 = call ptr @lp_str_concat(ptr %t350, ptr %t351) - %t353 = call ptr @fn_emit_bind(ptr %t352) - store ptr %t353, ptr %t354 - %t355 = load ptr, ptr %t354 - %t356 = call ptr @lp_str_concat(ptr @.str9913, ptr %t355) - %t357 = call ptr @lp_str_concat(ptr %t356, ptr @.str9914) - %t358 = call ptr @fn_emit_bind(ptr %t357) - %t359 = call ptr @fn_val(ptr %t358, ptr @.str9915) - store ptr %t359, ptr %retval + %t343 = call ptr @fn_emit_bind(ptr %t342) + store ptr %t343, ptr %t344 + %t345 = load ptr, ptr %t344 + %t346 = call ptr @lp_str_concat(ptr @.str9910, ptr %t345) + %t347 = call ptr @lp_str_concat(ptr %t346, ptr @.str9911) + %t348 = call ptr @fn_emit_bind(ptr %t347) + store ptr %t348, ptr %t349 + %t350 = load ptr, ptr %t301 + %t351 = call ptr @lp_str_concat(ptr @.str9912, ptr %t350) + %t352 = call ptr @lp_str_concat(ptr %t351, ptr @.str9913) + %t353 = load ptr, ptr %t329 + %t354 = call ptr @lp_str_concat(ptr %t352, ptr %t353) + %t355 = call ptr @fn_emit_bind(ptr %t354) + store ptr %t355, ptr %t356 + %t357 = load ptr, ptr %t356 + %t358 = call ptr @lp_str_concat(ptr @.str9914, ptr %t357) + %t359 = call ptr @lp_str_concat(ptr %t358, ptr @.str9915) + %t360 = load ptr, ptr %t349 + %t361 = call ptr @lp_str_concat(ptr %t359, ptr %t360) + %t362 = call ptr @fn_emit_bind(ptr %t361) + store ptr %t362, ptr %t363 + %t364 = load ptr, ptr %t363 + %t365 = call ptr @lp_str_concat(ptr @.str9916, ptr %t364) + %t366 = call ptr @lp_str_concat(ptr %t365, ptr @.str9917) + %t367 = call ptr @fn_emit_bind(ptr %t366) + %t368 = call ptr @fn_val(ptr %t367, ptr @.str9918) + store ptr %t368, ptr %retval br label %ret ret: - %t360 = load ptr, ptr %retval - ret ptr %t360 + %t369 = load ptr, ptr %retval + ret ptr %t369 } define i32 @fn_first_arg_is_text(ptr %arg_e) { @@ -131486,7 +131645,7 @@ ifend2: br i1 %t16, label %ixok3, label %ixbad4 ixbad4: %t17 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str9916, i32 0, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str9919, i32 0, i32 %t15) call void @exit(i32 1) unreachable ixok3: @@ -131504,7 +131663,7 @@ then5: %t27 = load ptr, ptr %t20 %t28 = getelementptr inbounds %Cmp_Node, ptr %t27, i32 0, i32 1 %t29 = load ptr, ptr %t28 - %t30 = call i32 @lp_str_eq(ptr %t29, ptr @.str9917) + %t30 = call i32 @lp_str_eq(ptr %t29, ptr @.str9920) %t31 = icmp ne i32 %t30, 0 br i1 %t31, label %then8, label %ifend10 then8: @@ -131541,7 +131700,7 @@ then14: br label %ret ifend16: %t48 = load ptr, ptr %t43 - %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str9918) + %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str9921) store i32 %t49, ptr %retval br label %ret ret: @@ -131570,8 +131729,8 @@ entry: br i1 %t10, label %then0, label %ifend2 then0: %t11 = load ptr, ptr %t0 - %t12 = call ptr @lp_str_concat(ptr @.str9919, ptr %t11) - %t13 = call ptr @lp_str_concat(ptr %t12, ptr @.str9920) + %t12 = call ptr @lp_str_concat(ptr @.str9922, ptr %t11) + %t13 = call ptr @lp_str_concat(ptr %t12, ptr @.str9923) %t14 = load ptr, ptr %t1 %t15 = call ptr @lp_str_concat(ptr %t13, ptr %t14) call void @fn_perr(ptr %t15) @@ -131613,26 +131772,27 @@ entry: %t587 = alloca ptr %t594 = alloca ptr %t596 = alloca ptr - %t603 = alloca ptr - %t612 = alloca ptr - %t621 = alloca ptr - %t626 = alloca ptr - %t631 = alloca ptr - %t651 = alloca ptr - %t693 = alloca ptr - %t1147 = alloca i32 - %t1163 = alloca ptr - %t1176 = alloca ptr - %t1177 = alloca i32 - %t1225 = alloca i32 - %t1241 = alloca ptr - %t1254 = alloca ptr - %t1255 = alloca i32 - %t1303 = alloca i32 - %t1320 = alloca i32 - %t1348 = alloca ptr - %t1351 = alloca i32 - %t1404 = alloca ptr + %t598 = alloca ptr + %t605 = alloca ptr + %t614 = alloca ptr + %t623 = alloca ptr + %t628 = alloca ptr + %t633 = alloca ptr + %t653 = alloca ptr + %t695 = alloca ptr + %t1149 = alloca i32 + %t1165 = alloca ptr + %t1178 = alloca ptr + %t1179 = alloca i32 + %t1227 = alloca i32 + %t1243 = alloca ptr + %t1256 = alloca ptr + %t1257 = alloca i32 + %t1305 = alloca i32 + %t1322 = alloca i32 + %t1350 = alloca ptr + %t1353 = alloca i32 + %t1406 = alloca ptr store ptr %arg_ns, ptr %t0 store ptr %arg_meth, ptr %t1 store ptr %arg_e, ptr %t2 @@ -131646,14 +131806,14 @@ entry: br i1 %t8, label %sc0, label %scend1 sc0: %t13 = load ptr, ptr %t1 - %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str9921) + %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str9924) %t15 = icmp ne i32 %t14, 0 %t16 = zext i1 %t15 to i32 store i32 %t16, ptr %t12 br i1 %t15, label %scend3, label %sc2 sc2: %t17 = load ptr, ptr %t1 - %t18 = call i32 @lp_str_eq(ptr %t17, ptr @.str9922) + %t18 = call i32 @lp_str_eq(ptr %t17, ptr @.str9925) %t19 = icmp ne i32 %t18, 0 %t20 = zext i1 %t19 to i32 store i32 %t20, ptr %t12 @@ -131666,7 +131826,7 @@ scend3: br i1 %t22, label %scend5, label %sc4 sc4: %t24 = load ptr, ptr %t1 - %t25 = call i32 @lp_str_eq(ptr %t24, ptr @.str9923) + %t25 = call i32 @lp_str_eq(ptr %t24, ptr @.str9926) %t26 = icmp ne i32 %t25, 0 %t27 = zext i1 %t26 to i32 store i32 %t27, ptr %t11 @@ -131679,7 +131839,7 @@ scend5: br i1 %t29, label %scend7, label %sc6 sc6: %t31 = load ptr, ptr %t1 - %t32 = call i32 @lp_str_eq(ptr %t31, ptr @.str9924) + %t32 = call i32 @lp_str_eq(ptr %t31, ptr @.str9927) %t33 = icmp ne i32 %t32, 0 %t34 = zext i1 %t33 to i32 store i32 %t34, ptr %t10 @@ -131697,7 +131857,7 @@ scend1: then8: %t40 = load ptr, ptr %t0 %t41 = call ptr @fn_ns_lower(ptr %t40) - %t42 = call ptr @lp_str_concat(ptr %t41, ptr @.str9925) + %t42 = call ptr @lp_str_concat(ptr %t41, ptr @.str9928) %t43 = load ptr, ptr %t1 %t44 = call ptr @lp_str_concat(ptr %t42, ptr %t43) %t45 = call ptr @fn_find_fn(ptr %t44) @@ -131716,7 +131876,7 @@ ifend13: br label %ifend10 ifend10: %t53 = load ptr, ptr %t0 - %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str9926) + %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str9929) %t55 = icmp ne i32 %t54, 0 br i1 %t55, label %then14, label %ifend16 then14: @@ -131733,12 +131893,12 @@ then17: ifend19: %t62 = load ptr, ptr %t1 %t63 = load ptr, ptr %t2 - %t64 = call ptr @fn_emit_alias_or_fail(ptr @.str9927, ptr %t62, ptr %t63) + %t64 = call ptr @fn_emit_alias_or_fail(ptr @.str9930, ptr %t62, ptr %t63) store ptr %t64, ptr %retval br label %ret ifend16: %t65 = load ptr, ptr %t0 - %t66 = call i32 @lp_str_eq(ptr %t65, ptr @.str9928) + %t66 = call i32 @lp_str_eq(ptr %t65, ptr @.str9931) %t67 = icmp ne i32 %t66, 0 br i1 %t67, label %then20, label %ifend22 then20: @@ -131755,12 +131915,12 @@ then23: ifend25: %t74 = load ptr, ptr %t1 %t75 = load ptr, ptr %t2 - %t76 = call ptr @fn_emit_alias_or_fail(ptr @.str9929, ptr %t74, ptr %t75) + %t76 = call ptr @fn_emit_alias_or_fail(ptr @.str9932, ptr %t74, ptr %t75) store ptr %t76, ptr %retval br label %ret ifend22: %t77 = load ptr, ptr %t0 - %t78 = call i32 @lp_str_eq(ptr %t77, ptr @.str9930) + %t78 = call i32 @lp_str_eq(ptr %t77, ptr @.str9933) %t79 = icmp ne i32 %t78, 0 br i1 %t79, label %then26, label %ifend28 then26: @@ -131777,12 +131937,12 @@ then29: ifend31: %t86 = load ptr, ptr %t1 %t87 = load ptr, ptr %t2 - %t88 = call ptr @fn_emit_alias_or_fail(ptr @.str9931, ptr %t86, ptr %t87) + %t88 = call ptr @fn_emit_alias_or_fail(ptr @.str9934, ptr %t86, ptr %t87) store ptr %t88, ptr %retval br label %ret ifend28: %t89 = load ptr, ptr %t0 - %t90 = call i32 @lp_str_eq(ptr %t89, ptr @.str9932) + %t90 = call i32 @lp_str_eq(ptr %t89, ptr @.str9935) %t91 = icmp ne i32 %t90, 0 br i1 %t91, label %then32, label %ifend34 then32: @@ -131799,12 +131959,12 @@ then35: ifend37: %t98 = load ptr, ptr %t1 %t99 = load ptr, ptr %t2 - %t100 = call ptr @fn_emit_alias_or_fail(ptr @.str9933, ptr %t98, ptr %t99) + %t100 = call ptr @fn_emit_alias_or_fail(ptr @.str9936, ptr %t98, ptr %t99) store ptr %t100, ptr %retval br label %ret ifend34: %t101 = load ptr, ptr %t0 - %t102 = call i32 @lp_str_eq(ptr %t101, ptr @.str9934) + %t102 = call i32 @lp_str_eq(ptr %t101, ptr @.str9937) %t103 = icmp ne i32 %t102, 0 br i1 %t103, label %then38, label %ifend40 then38: @@ -131822,7 +131982,7 @@ ifend43: br label %ifend40 ifend40: %t110 = load ptr, ptr %t0 - %t111 = call i32 @lp_str_eq(ptr %t110, ptr @.str9935) + %t111 = call i32 @lp_str_eq(ptr %t110, ptr @.str9938) %t112 = icmp ne i32 %t111, 0 br i1 %t112, label %then44, label %ifend46 then44: @@ -131840,7 +132000,7 @@ ifend49: br label %ifend46 ifend46: %t119 = load ptr, ptr %t0 - %t120 = call i32 @lp_str_eq(ptr %t119, ptr @.str9936) + %t120 = call i32 @lp_str_eq(ptr %t119, ptr @.str9939) %t121 = icmp ne i32 %t120, 0 br i1 %t121, label %then50, label %ifend52 then50: @@ -131857,12 +132017,12 @@ then53: ifend55: %t128 = load ptr, ptr %t1 %t129 = load ptr, ptr %t2 - %t130 = call ptr @fn_emit_alias_or_fail(ptr @.str9937, ptr %t128, ptr %t129) + %t130 = call ptr @fn_emit_alias_or_fail(ptr @.str9940, ptr %t128, ptr %t129) store ptr %t130, ptr %retval br label %ret ifend52: %t131 = load ptr, ptr %t0 - %t132 = call i32 @lp_str_eq(ptr %t131, ptr @.str9938) + %t132 = call i32 @lp_str_eq(ptr %t131, ptr @.str9941) %t133 = icmp ne i32 %t132, 0 br i1 %t133, label %then56, label %ifend58 then56: @@ -131879,12 +132039,12 @@ then59: ifend61: %t140 = load ptr, ptr %t1 %t141 = load ptr, ptr %t2 - %t142 = call ptr @fn_emit_alias_or_fail(ptr @.str9939, ptr %t140, ptr %t141) + %t142 = call ptr @fn_emit_alias_or_fail(ptr @.str9942, ptr %t140, ptr %t141) store ptr %t142, ptr %retval br label %ret ifend58: %t143 = load ptr, ptr %t0 - %t144 = call i32 @lp_str_eq(ptr %t143, ptr @.str9940) + %t144 = call i32 @lp_str_eq(ptr %t143, ptr @.str9943) %t145 = icmp ne i32 %t144, 0 br i1 %t145, label %then62, label %ifend64 then62: @@ -131901,12 +132061,12 @@ then65: ifend67: %t152 = load ptr, ptr %t1 %t153 = load ptr, ptr %t2 - %t154 = call ptr @fn_emit_alias_or_fail(ptr @.str9941, ptr %t152, ptr %t153) + %t154 = call ptr @fn_emit_alias_or_fail(ptr @.str9944, ptr %t152, ptr %t153) store ptr %t154, ptr %retval br label %ret ifend64: %t155 = load ptr, ptr %t0 - %t156 = call i32 @lp_str_eq(ptr %t155, ptr @.str9942) + %t156 = call i32 @lp_str_eq(ptr %t155, ptr @.str9945) %t157 = icmp ne i32 %t156, 0 br i1 %t157, label %then68, label %ifend70 then68: @@ -131923,12 +132083,12 @@ then71: ifend73: %t164 = load ptr, ptr %t1 %t165 = load ptr, ptr %t2 - %t166 = call ptr @fn_emit_alias_or_fail(ptr @.str9943, ptr %t164, ptr %t165) + %t166 = call ptr @fn_emit_alias_or_fail(ptr @.str9946, ptr %t164, ptr %t165) store ptr %t166, ptr %retval br label %ret ifend70: %t167 = load ptr, ptr %t0 - %t168 = call i32 @lp_str_eq(ptr %t167, ptr @.str9944) + %t168 = call i32 @lp_str_eq(ptr %t167, ptr @.str9947) %t169 = icmp ne i32 %t168, 0 br i1 %t169, label %then74, label %ifend76 then74: @@ -131945,12 +132105,12 @@ then77: ifend79: %t176 = load ptr, ptr %t1 %t177 = load ptr, ptr %t2 - %t178 = call ptr @fn_emit_alias_or_fail(ptr @.str9945, ptr %t176, ptr %t177) + %t178 = call ptr @fn_emit_alias_or_fail(ptr @.str9948, ptr %t176, ptr %t177) store ptr %t178, ptr %retval br label %ret ifend76: %t179 = load ptr, ptr %t0 - %t180 = call i32 @lp_str_eq(ptr %t179, ptr @.str9946) + %t180 = call i32 @lp_str_eq(ptr %t179, ptr @.str9949) %t181 = icmp ne i32 %t180, 0 br i1 %t181, label %then80, label %ifend82 then80: @@ -131967,12 +132127,12 @@ then83: ifend85: %t188 = load ptr, ptr %t1 %t189 = load ptr, ptr %t2 - %t190 = call ptr @fn_emit_alias_or_fail(ptr @.str9947, ptr %t188, ptr %t189) + %t190 = call ptr @fn_emit_alias_or_fail(ptr @.str9950, ptr %t188, ptr %t189) store ptr %t190, ptr %retval br label %ret ifend82: %t191 = load ptr, ptr %t0 - %t192 = call i32 @lp_str_eq(ptr %t191, ptr @.str9948) + %t192 = call i32 @lp_str_eq(ptr %t191, ptr @.str9951) %t193 = icmp ne i32 %t192, 0 br i1 %t193, label %then86, label %ifend88 then86: @@ -131989,12 +132149,12 @@ then89: ifend91: %t200 = load ptr, ptr %t1 %t201 = load ptr, ptr %t2 - %t202 = call ptr @fn_emit_alias_or_fail(ptr @.str9949, ptr %t200, ptr %t201) + %t202 = call ptr @fn_emit_alias_or_fail(ptr @.str9952, ptr %t200, ptr %t201) store ptr %t202, ptr %retval br label %ret ifend88: %t203 = load ptr, ptr %t0 - %t204 = call i32 @lp_str_eq(ptr %t203, ptr @.str9950) + %t204 = call i32 @lp_str_eq(ptr %t203, ptr @.str9953) %t205 = icmp ne i32 %t204, 0 br i1 %t205, label %then92, label %ifend94 then92: @@ -132011,12 +132171,12 @@ then95: ifend97: %t212 = load ptr, ptr %t1 %t213 = load ptr, ptr %t2 - %t214 = call ptr @fn_emit_alias_or_fail(ptr @.str9951, ptr %t212, ptr %t213) + %t214 = call ptr @fn_emit_alias_or_fail(ptr @.str9954, ptr %t212, ptr %t213) store ptr %t214, ptr %retval br label %ret ifend94: %t215 = load ptr, ptr %t0 - %t216 = call i32 @lp_str_eq(ptr %t215, ptr @.str9952) + %t216 = call i32 @lp_str_eq(ptr %t215, ptr @.str9955) %t217 = icmp ne i32 %t216, 0 br i1 %t217, label %then98, label %ifend100 then98: @@ -132033,12 +132193,12 @@ then101: ifend103: %t224 = load ptr, ptr %t1 %t225 = load ptr, ptr %t2 - %t226 = call ptr @fn_emit_alias_or_fail(ptr @.str9953, ptr %t224, ptr %t225) + %t226 = call ptr @fn_emit_alias_or_fail(ptr @.str9956, ptr %t224, ptr %t225) store ptr %t226, ptr %retval br label %ret ifend100: %t227 = load ptr, ptr %t0 - %t228 = call i32 @lp_str_eq(ptr %t227, ptr @.str9954) + %t228 = call i32 @lp_str_eq(ptr %t227, ptr @.str9957) %t229 = icmp ne i32 %t228, 0 br i1 %t229, label %then104, label %ifend106 then104: @@ -132055,12 +132215,12 @@ then107: ifend109: %t236 = load ptr, ptr %t1 %t237 = load ptr, ptr %t2 - %t238 = call ptr @fn_emit_alias_or_fail(ptr @.str9955, ptr %t236, ptr %t237) + %t238 = call ptr @fn_emit_alias_or_fail(ptr @.str9958, ptr %t236, ptr %t237) store ptr %t238, ptr %retval br label %ret ifend106: %t239 = load ptr, ptr %t0 - %t240 = call i32 @lp_str_eq(ptr %t239, ptr @.str9956) + %t240 = call i32 @lp_str_eq(ptr %t239, ptr @.str9959) %t241 = icmp ne i32 %t240, 0 br i1 %t241, label %then110, label %ifend112 then110: @@ -132077,12 +132237,12 @@ then113: ifend115: %t248 = load ptr, ptr %t1 %t249 = load ptr, ptr %t2 - %t250 = call ptr @fn_emit_alias_or_fail(ptr @.str9957, ptr %t248, ptr %t249) + %t250 = call ptr @fn_emit_alias_or_fail(ptr @.str9960, ptr %t248, ptr %t249) store ptr %t250, ptr %retval br label %ret ifend112: %t251 = load ptr, ptr %t0 - %t252 = call i32 @lp_str_eq(ptr %t251, ptr @.str9958) + %t252 = call i32 @lp_str_eq(ptr %t251, ptr @.str9961) %t253 = icmp ne i32 %t252, 0 br i1 %t253, label %then116, label %ifend118 then116: @@ -132099,12 +132259,12 @@ then119: ifend121: %t260 = load ptr, ptr %t1 %t261 = load ptr, ptr %t2 - %t262 = call ptr @fn_emit_alias_or_fail(ptr @.str9959, ptr %t260, ptr %t261) + %t262 = call ptr @fn_emit_alias_or_fail(ptr @.str9962, ptr %t260, ptr %t261) store ptr %t262, ptr %retval br label %ret ifend118: %t263 = load ptr, ptr %t0 - %t264 = call i32 @lp_str_eq(ptr %t263, ptr @.str9960) + %t264 = call i32 @lp_str_eq(ptr %t263, ptr @.str9963) %t265 = icmp ne i32 %t264, 0 br i1 %t265, label %then122, label %ifend124 then122: @@ -132121,12 +132281,12 @@ then125: ifend127: %t272 = load ptr, ptr %t1 %t273 = load ptr, ptr %t2 - %t274 = call ptr @fn_emit_alias_or_fail(ptr @.str9961, ptr %t272, ptr %t273) + %t274 = call ptr @fn_emit_alias_or_fail(ptr @.str9964, ptr %t272, ptr %t273) store ptr %t274, ptr %retval br label %ret ifend124: %t275 = load ptr, ptr %t0 - %t276 = call i32 @lp_str_eq(ptr %t275, ptr @.str9962) + %t276 = call i32 @lp_str_eq(ptr %t275, ptr @.str9965) %t277 = icmp ne i32 %t276, 0 br i1 %t277, label %then128, label %ifend130 then128: @@ -132143,12 +132303,12 @@ then131: ifend133: %t284 = load ptr, ptr %t1 %t285 = load ptr, ptr %t2 - %t286 = call ptr @fn_emit_alias_or_fail(ptr @.str9963, ptr %t284, ptr %t285) + %t286 = call ptr @fn_emit_alias_or_fail(ptr @.str9966, ptr %t284, ptr %t285) store ptr %t286, ptr %retval br label %ret ifend130: %t287 = load ptr, ptr %t0 - %t288 = call i32 @lp_str_eq(ptr %t287, ptr @.str9964) + %t288 = call i32 @lp_str_eq(ptr %t287, ptr @.str9967) %t289 = icmp ne i32 %t288, 0 br i1 %t289, label %then134, label %ifend136 then134: @@ -132165,12 +132325,12 @@ then137: ifend139: %t296 = load ptr, ptr %t1 %t297 = load ptr, ptr %t2 - %t298 = call ptr @fn_emit_alias_or_fail(ptr @.str9965, ptr %t296, ptr %t297) + %t298 = call ptr @fn_emit_alias_or_fail(ptr @.str9968, ptr %t296, ptr %t297) store ptr %t298, ptr %retval br label %ret ifend136: %t299 = load ptr, ptr %t0 - %t300 = call i32 @lp_str_eq(ptr %t299, ptr @.str9966) + %t300 = call i32 @lp_str_eq(ptr %t299, ptr @.str9969) %t301 = icmp ne i32 %t300, 0 br i1 %t301, label %then140, label %ifend142 then140: @@ -132187,12 +132347,12 @@ then143: ifend145: %t308 = load ptr, ptr %t1 %t309 = load ptr, ptr %t2 - %t310 = call ptr @fn_emit_alias_or_fail(ptr @.str9967, ptr %t308, ptr %t309) + %t310 = call ptr @fn_emit_alias_or_fail(ptr @.str9970, ptr %t308, ptr %t309) store ptr %t310, ptr %retval br label %ret ifend142: %t311 = load ptr, ptr %t0 - %t312 = call i32 @lp_str_eq(ptr %t311, ptr @.str9968) + %t312 = call i32 @lp_str_eq(ptr %t311, ptr @.str9971) %t313 = icmp ne i32 %t312, 0 br i1 %t313, label %then146, label %ifend148 then146: @@ -132209,12 +132369,12 @@ then149: ifend151: %t320 = load ptr, ptr %t1 %t321 = load ptr, ptr %t2 - %t322 = call ptr @fn_emit_alias_or_fail(ptr @.str9969, ptr %t320, ptr %t321) + %t322 = call ptr @fn_emit_alias_or_fail(ptr @.str9972, ptr %t320, ptr %t321) store ptr %t322, ptr %retval br label %ret ifend148: %t323 = load ptr, ptr %t0 - %t324 = call i32 @lp_str_eq(ptr %t323, ptr @.str9970) + %t324 = call i32 @lp_str_eq(ptr %t323, ptr @.str9973) %t325 = icmp ne i32 %t324, 0 br i1 %t325, label %then152, label %ifend154 then152: @@ -132231,12 +132391,12 @@ then155: ifend157: %t332 = load ptr, ptr %t1 %t333 = load ptr, ptr %t2 - %t334 = call ptr @fn_emit_alias_or_fail(ptr @.str9971, ptr %t332, ptr %t333) + %t334 = call ptr @fn_emit_alias_or_fail(ptr @.str9974, ptr %t332, ptr %t333) store ptr %t334, ptr %retval br label %ret ifend154: %t335 = load ptr, ptr %t0 - %t336 = call i32 @lp_str_eq(ptr %t335, ptr @.str9972) + %t336 = call i32 @lp_str_eq(ptr %t335, ptr @.str9975) %t337 = icmp ne i32 %t336, 0 br i1 %t337, label %then158, label %ifend160 then158: @@ -132253,12 +132413,12 @@ then161: ifend163: %t344 = load ptr, ptr %t1 %t345 = load ptr, ptr %t2 - %t346 = call ptr @fn_emit_alias_or_fail(ptr @.str9973, ptr %t344, ptr %t345) + %t346 = call ptr @fn_emit_alias_or_fail(ptr @.str9976, ptr %t344, ptr %t345) store ptr %t346, ptr %retval br label %ret ifend160: %t347 = load ptr, ptr %t0 - %t348 = call i32 @lp_str_eq(ptr %t347, ptr @.str9974) + %t348 = call i32 @lp_str_eq(ptr %t347, ptr @.str9977) %t349 = icmp ne i32 %t348, 0 br i1 %t349, label %then164, label %ifend166 then164: @@ -132275,12 +132435,12 @@ then167: ifend169: %t356 = load ptr, ptr %t1 %t357 = load ptr, ptr %t2 - %t358 = call ptr @fn_emit_alias_or_fail(ptr @.str9975, ptr %t356, ptr %t357) + %t358 = call ptr @fn_emit_alias_or_fail(ptr @.str9978, ptr %t356, ptr %t357) store ptr %t358, ptr %retval br label %ret ifend166: %t359 = load ptr, ptr %t0 - %t360 = call i32 @lp_str_eq(ptr %t359, ptr @.str9976) + %t360 = call i32 @lp_str_eq(ptr %t359, ptr @.str9979) %t361 = icmp ne i32 %t360, 0 br i1 %t361, label %then170, label %ifend172 then170: @@ -132297,17 +132457,17 @@ then173: ifend175: %t368 = load ptr, ptr %t1 %t369 = load ptr, ptr %t2 - %t370 = call ptr @fn_emit_alias_or_fail(ptr @.str9977, ptr %t368, ptr %t369) + %t370 = call ptr @fn_emit_alias_or_fail(ptr @.str9980, ptr %t368, ptr %t369) store ptr %t370, ptr %retval br label %ret ifend172: %t371 = load ptr, ptr %t0 - %t372 = call i32 @lp_str_eq(ptr %t371, ptr @.str9978) + %t372 = call i32 @lp_str_eq(ptr %t371, ptr @.str9981) %t373 = icmp ne i32 %t372, 0 br i1 %t373, label %then176, label %ifend178 then176: %t374 = load ptr, ptr %t1 - %t375 = call i32 @lp_str_eq(ptr %t374, ptr @.str9979) + %t375 = call i32 @lp_str_eq(ptr %t374, ptr @.str9982) %t376 = icmp ne i32 %t375, 0 br i1 %t376, label %then179, label %ifend181 then179: @@ -132316,15 +132476,15 @@ then179: %t378 = icmp ne i32 %t377, 0 br i1 %t378, label %then182, label %ifend184 then182: - call void @fn_emit(ptr @.str9980) + call void @fn_emit(ptr @.str9983) br label %ifend184 ifend184: - %t379 = call ptr @fn_val(ptr @.str9981, ptr @.str9982) + %t379 = call ptr @fn_val(ptr @.str9984, ptr @.str9985) store ptr %t379, ptr %retval br label %ret ifend181: %t380 = load ptr, ptr %t1 - %t381 = call i32 @lp_str_eq(ptr %t380, ptr @.str9983) + %t381 = call i32 @lp_str_eq(ptr %t380, ptr @.str9986) %t382 = icmp ne i32 %t381, 0 br i1 %t382, label %then185, label %ifend187 then185: @@ -132337,17 +132497,17 @@ then185: br i1 %t387, label %then188, label %ifend190 then188: %t388 = load ptr, ptr %t385 - %t389 = call ptr @lp_str_concat(ptr @.str9984, ptr %t388) - %t390 = call ptr @lp_str_concat(ptr %t389, ptr @.str9985) + %t389 = call ptr @lp_str_concat(ptr @.str9987, ptr %t388) + %t390 = call ptr @lp_str_concat(ptr %t389, ptr @.str9988) call void @fn_emit(ptr %t390) br label %ifend190 ifend190: - %t391 = call ptr @fn_val(ptr @.str9986, ptr @.str9987) + %t391 = call ptr @fn_val(ptr @.str9989, ptr @.str9990) store ptr %t391, ptr %retval br label %ret ifend187: %t392 = load ptr, ptr %t1 - %t393 = call i32 @lp_str_eq(ptr %t392, ptr @.str9988) + %t393 = call i32 @lp_str_eq(ptr %t392, ptr @.str9991) %t394 = icmp ne i32 %t393, 0 br i1 %t394, label %then191, label %ifend193 then191: @@ -132356,17 +132516,17 @@ then191: %t396 = icmp ne i32 %t395, 0 br i1 %t396, label %then194, label %ifend196 then194: - %t397 = call ptr @fn_emit_bind(ptr @.str9989) - %t398 = call ptr @fn_val(ptr %t397, ptr @.str9990) + %t397 = call ptr @fn_emit_bind(ptr @.str9992) + %t398 = call ptr @fn_val(ptr %t397, ptr @.str9993) store ptr %t398, ptr %retval br label %ret ifend196: - %t399 = call ptr @fn_val(ptr @.str9991, ptr @.str9992) + %t399 = call ptr @fn_val(ptr @.str9994, ptr @.str9995) store ptr %t399, ptr %retval br label %ret ifend193: %t400 = load ptr, ptr %t1 - %t401 = call i32 @lp_str_eq(ptr %t400, ptr @.str9993) + %t401 = call i32 @lp_str_eq(ptr %t400, ptr @.str9996) %t402 = icmp ne i32 %t401, 0 br i1 %t402, label %then197, label %ifend199 then197: @@ -132379,17 +132539,17 @@ then197: br i1 %t407, label %then200, label %ifend202 then200: %t408 = load ptr, ptr %t405 - %t409 = call ptr @lp_str_concat(ptr @.str9994, ptr %t408) - %t410 = call ptr @lp_str_concat(ptr %t409, ptr @.str9995) + %t409 = call ptr @lp_str_concat(ptr @.str9997, ptr %t408) + %t410 = call ptr @lp_str_concat(ptr %t409, ptr @.str9998) call void @fn_emit(ptr %t410) br label %ifend202 ifend202: - %t411 = call ptr @fn_val(ptr @.str9996, ptr @.str9997) + %t411 = call ptr @fn_val(ptr @.str9999, ptr @.str10000) store ptr %t411, ptr %retval br label %ret ifend199: %t412 = load ptr, ptr %t1 - %t413 = call i32 @lp_str_eq(ptr %t412, ptr @.str9998) + %t413 = call i32 @lp_str_eq(ptr %t412, ptr @.str10001) %t414 = icmp ne i32 %t413, 0 br i1 %t414, label %then203, label %ifend205 then203: @@ -132402,24 +132562,24 @@ then203: br i1 %t419, label %then206, label %ifend208 then206: %t420 = load ptr, ptr %t417 - %t421 = call ptr @lp_str_concat(ptr @.str9999, ptr %t420) - %t422 = call ptr @lp_str_concat(ptr %t421, ptr @.str10000) + %t421 = call ptr @lp_str_concat(ptr @.str10002, ptr %t420) + %t422 = call ptr @lp_str_concat(ptr %t421, ptr @.str10003) call void @fn_emit(ptr %t422) br label %ifend208 ifend208: - %t423 = call ptr @fn_val(ptr @.str10001, ptr @.str10002) + %t423 = call ptr @fn_val(ptr @.str10004, ptr @.str10005) store ptr %t423, ptr %retval br label %ret ifend205: %t425 = load ptr, ptr %t1 - %t426 = call i32 @lp_str_eq(ptr %t425, ptr @.str10003) + %t426 = call i32 @lp_str_eq(ptr %t425, ptr @.str10006) %t427 = icmp ne i32 %t426, 0 %t428 = zext i1 %t427 to i32 store i32 %t428, ptr %t424 br i1 %t427, label %scend210, label %sc209 sc209: %t429 = load ptr, ptr %t1 - %t430 = call i32 @lp_str_eq(ptr %t429, ptr @.str10004) + %t430 = call i32 @lp_str_eq(ptr %t429, ptr @.str10007) %t431 = icmp ne i32 %t430, 0 %t432 = zext i1 %t431 to i32 store i32 %t432, ptr %t424 @@ -132435,78 +132595,78 @@ then211: br i1 %t436, label %then214, label %ifend216 then214: %t437 = load ptr, ptr %t1 - %t438 = call ptr @lp_str_concat(ptr @.str10005, ptr %t437) - %t439 = call ptr @lp_str_concat(ptr %t438, ptr @.str10006) + %t438 = call ptr @lp_str_concat(ptr @.str10008, ptr %t437) + %t439 = call ptr @lp_str_concat(ptr %t438, ptr @.str10009) call void @fn_emit(ptr %t439) br label %ifend216 ifend216: - %t440 = call ptr @fn_val(ptr @.str10007, ptr @.str10008) + %t440 = call ptr @fn_val(ptr @.str10010, ptr @.str10011) store ptr %t440, ptr %retval br label %ret ifend213: %t441 = load ptr, ptr %t1 %t442 = load ptr, ptr %t2 - %t443 = call ptr @fn_emit_alias_or_fail(ptr @.str10009, ptr %t441, ptr %t442) + %t443 = call ptr @fn_emit_alias_or_fail(ptr @.str10012, ptr %t441, ptr %t442) store ptr %t443, ptr %retval br label %ret ifend178: %t444 = load ptr, ptr %t0 - %t445 = call i32 @lp_str_eq(ptr %t444, ptr @.str10010) + %t445 = call i32 @lp_str_eq(ptr %t444, ptr @.str10013) %t446 = icmp ne i32 %t445, 0 br i1 %t446, label %then217, label %ifend219 then217: %t447 = load ptr, ptr %t1 - %t448 = call i32 @lp_str_eq(ptr %t447, ptr @.str10011) + %t448 = call i32 @lp_str_eq(ptr %t447, ptr @.str10014) %t449 = icmp ne i32 %t448, 0 br i1 %t449, label %then220, label %ifend222 then220: - %t450 = call ptr @fn_itoa(i32 1024) - %t451 = call ptr @fn_val(ptr %t450, ptr @.str10012) + %t450 = call ptr @fn_emit_bind(ptr @.str10015) + %t451 = call ptr @fn_val(ptr %t450, ptr @.str10016) store ptr %t451, ptr %retval br label %ret ifend222: %t452 = load ptr, ptr %t1 - %t453 = call i32 @lp_str_eq(ptr %t452, ptr @.str10013) + %t453 = call i32 @lp_str_eq(ptr %t452, ptr @.str10017) %t454 = icmp ne i32 %t453, 0 br i1 %t454, label %then223, label %ifend225 then223: - %t455 = call ptr @fn_emit_bind(ptr @.str10014) - %t456 = call ptr @fn_val(ptr %t455, ptr @.str10015) + %t455 = call ptr @fn_emit_bind(ptr @.str10018) + %t456 = call ptr @fn_val(ptr %t455, ptr @.str10019) store ptr %t456, ptr %retval br label %ret ifend225: %t457 = load ptr, ptr %t1 - %t458 = call i32 @lp_str_eq(ptr %t457, ptr @.str10016) + %t458 = call i32 @lp_str_eq(ptr %t457, ptr @.str10020) %t459 = icmp ne i32 %t458, 0 br i1 %t459, label %then226, label %ifend228 then226: - %t460 = call ptr @fn_emit_bind(ptr @.str10017) - %t461 = call ptr @fn_val(ptr %t460, ptr @.str10018) + %t460 = call ptr @fn_emit_bind(ptr @.str10021) + %t461 = call ptr @fn_val(ptr %t460, ptr @.str10022) store ptr %t461, ptr %retval br label %ret ifend228: %t462 = load ptr, ptr %t1 - %t463 = call i32 @lp_str_eq(ptr %t462, ptr @.str10019) + %t463 = call i32 @lp_str_eq(ptr %t462, ptr @.str10023) %t464 = icmp ne i32 %t463, 0 br i1 %t464, label %then229, label %ifend231 then229: - %t465 = call ptr @fn_emit_bind(ptr @.str10020) + %t465 = call ptr @fn_emit_bind(ptr @.str10024) store ptr %t465, ptr %t466 - %t467 = call ptr @fn_emit_bind(ptr @.str10021) + %t467 = call ptr @fn_emit_bind(ptr @.str10025) store ptr %t467, ptr %t468 %t469 = load ptr, ptr %t466 - %t470 = call ptr @lp_str_concat(ptr @.str10022, ptr %t469) - %t471 = call ptr @lp_str_concat(ptr %t470, ptr @.str10023) + %t470 = call ptr @lp_str_concat(ptr @.str10026, ptr %t469) + %t471 = call ptr @lp_str_concat(ptr %t470, ptr @.str10027) %t472 = load ptr, ptr %t468 %t473 = call ptr @lp_str_concat(ptr %t471, ptr %t472) %t474 = call ptr @fn_emit_bind(ptr %t473) - %t475 = call ptr @fn_val(ptr %t474, ptr @.str10024) + %t475 = call ptr @fn_val(ptr %t474, ptr @.str10028) store ptr %t475, ptr %retval br label %ret ifend231: %t476 = load ptr, ptr %t1 %t477 = load ptr, ptr %t2 - %t478 = call ptr @fn_emit_alias_or_fail(ptr @.str10025, ptr %t476, ptr %t477) + %t478 = call ptr @fn_emit_alias_or_fail(ptr @.str10029, ptr %t476, ptr %t477) store ptr %t478, ptr %retval br label %ret ifend219: @@ -132539,12 +132699,12 @@ ifend234: store i32 0, ptr %t497 store ptr %t494, ptr %t498 %t499 = load ptr, ptr %t0 - %t500 = call i32 @lp_str_eq(ptr %t499, ptr @.str10026) + %t500 = call i32 @lp_str_eq(ptr %t499, ptr @.str10030) %t501 = icmp ne i32 %t500, 0 br i1 %t501, label %then235, label %ifend237 then235: %t502 = load ptr, ptr %t1 - %t503 = call i32 @lp_str_eq(ptr %t502, ptr @.str10027) + %t503 = call i32 @lp_str_eq(ptr %t502, ptr @.str10031) %t504 = icmp ne i32 %t503, 0 br i1 %t504, label %then238, label %ifend240 then238: @@ -132554,10 +132714,10 @@ then238: %t508 = icmp ne i32 %t507, 0 br i1 %t508, label %then241, label %ifend243 then241: - call void @fn_perr(ptr @.str10028) + call void @fn_perr(ptr @.str10032) br label %ifend243 ifend243: - %t509 = call ptr @fn_find_comp(ptr @.str10029) + %t509 = call ptr @fn_find_comp(ptr @.str10033) store ptr %t509, ptr %t510 %t511 = load ptr, ptr %t510 %t512 = icmp eq ptr %t511, null @@ -132565,7 +132725,7 @@ ifend243: %t514 = icmp ne i32 %t513, 0 br i1 %t514, label %then244, label %ifend246 then244: - call void @fn_perr(ptr @.str10030) + call void @fn_perr(ptr @.str10034) br label %ifend246 ifend246: %t515 = getelementptr %LSlice, ptr null, i32 1 @@ -132602,7 +132762,7 @@ grow247: put248: %t538 = load ptr, ptr %t525 %t539 = getelementptr inbounds ptr, ptr %t538, i32 %t526 - store ptr @.str10031, ptr %t539 + store ptr @.str10035, ptr %t539 %t540 = add i32 %t526, 1 store i32 %t540, ptr %t523 %t541 = load ptr, ptr %t521 @@ -132629,7 +132789,7 @@ grow249: put250: %t557 = load ptr, ptr %t544 %t558 = getelementptr inbounds ptr, ptr %t557, i32 %t545 - store ptr @.str10032, ptr %t558 + store ptr @.str10036, ptr %t558 %t559 = add i32 %t545, 1 store i32 %t559, ptr %t542 %t560 = load ptr, ptr %t2 @@ -132646,7 +132806,7 @@ put250: br i1 %t569, label %ixok251, label %ixbad252 ixbad252: %t570 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t570, ptr @.fmt_bounds, ptr @.str10033, i32 0, i32 %t568) + call i32 (ptr, ptr, ...) @fprintf(ptr %t570, ptr @.fmt_bounds, ptr @.str10037, i32 0, i32 %t568) call void @exit(i32 1) unreachable ixok251: @@ -132665,7 +132825,7 @@ ixok251: br i1 %t582, label %ixok253, label %ixbad254 ixbad254: %t583 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t583, ptr @.fmt_bounds, ptr @.str10034, i32 1, i32 %t581) + call i32 (ptr, ptr, ...) @fprintf(ptr %t583, ptr @.fmt_bounds, ptr @.str10038, i32 1, i32 %t581) call void @exit(i32 1) unreachable ixok253: @@ -132676,1268 +132836,1270 @@ ixok253: %t588 = load ptr, ptr %t574 %t589 = getelementptr inbounds %Cmp_Val, ptr %t588, i32 0, i32 0 %t590 = load ptr, ptr %t589 - %t591 = call ptr @lp_str_concat(ptr @.str10035, ptr %t590) - %t592 = call ptr @lp_str_concat(ptr %t591, ptr @.str10036) + %t591 = call ptr @lp_str_concat(ptr @.str10039, ptr %t590) + %t592 = call ptr @lp_str_concat(ptr %t591, ptr @.str10040) %t593 = call ptr @fn_emit_bind(ptr %t592) store ptr %t593, ptr %t594 %t595 = call ptr @fn_itoa(i32 1024) store ptr %t595, ptr %t596 - %t597 = load ptr, ptr %t596 - %t598 = call ptr @lp_str_concat(ptr @.str10037, ptr %t597) - %t599 = call ptr @lp_str_concat(ptr %t598, ptr @.str10038) - %t600 = load ptr, ptr %t594 - %t601 = call ptr @lp_str_concat(ptr %t599, ptr %t600) - %t602 = call ptr @fn_emit_bind(ptr %t601) - store ptr %t602, ptr %t603 - %t604 = load ptr, ptr %t603 - %t605 = call ptr @lp_str_concat(ptr @.str10039, ptr %t604) - %t606 = call ptr @lp_str_concat(ptr %t605, ptr @.str10040) - %t607 = load ptr, ptr %t510 - %t608 = call i32 @fn_field_index(ptr %t607, ptr @.str10041) - %t609 = call ptr @fn_itoa(i32 %t608) - %t610 = call ptr @lp_str_concat(ptr %t606, ptr %t609) - %t611 = call ptr @fn_emit_bind(ptr %t610) - store ptr %t611, ptr %t612 - %t613 = load ptr, ptr %t603 - %t614 = call ptr @lp_str_concat(ptr @.str10042, ptr %t613) - %t615 = call ptr @lp_str_concat(ptr %t614, ptr @.str10043) - %t616 = load ptr, ptr %t510 - %t617 = call i32 @fn_field_index(ptr %t616, ptr @.str10044) - %t618 = call ptr @fn_itoa(i32 %t617) - %t619 = call ptr @lp_str_concat(ptr %t615, ptr %t618) - %t620 = call ptr @fn_emit_bind(ptr %t619) - store ptr %t620, ptr %t621 - %t622 = load ptr, ptr %t587 - %t623 = getelementptr inbounds %Cmp_Val, ptr %t622, i32 0, i32 0 - %t624 = load ptr, ptr %t623 - %t625 = call ptr @fn_vec_x(ptr %t624) - store ptr %t625, ptr %t626 - %t627 = load ptr, ptr %t587 - %t628 = getelementptr inbounds %Cmp_Val, ptr %t627, i32 0, i32 0 - %t629 = load ptr, ptr %t628 - %t630 = call ptr @fn_vec_y(ptr %t629) - store ptr %t630, ptr %t631 - call void @fn_emit(ptr @.str10045) - %t632 = load ptr, ptr %t626 - call void @fn_emit(ptr %t632) - call void @fn_emit(ptr @.str10046) - %t633 = load ptr, ptr %t612 - call void @fn_emit(ptr %t633) - call void @fn_emit(ptr @.str10047) - call void @fn_emit(ptr @.str10048) - %t634 = load ptr, ptr %t631 - call void @fn_emit(ptr %t634) - call void @fn_emit(ptr @.str10049) - %t635 = load ptr, ptr %t621 - call void @fn_emit(ptr %t635) + %t597 = call ptr @fn_ecs_base(ptr @.str10041) + store ptr %t597, ptr %t598 + %t599 = load ptr, ptr %t598 + %t600 = call ptr @lp_str_concat(ptr @.str10042, ptr %t599) + %t601 = call ptr @lp_str_concat(ptr %t600, ptr @.str10043) + %t602 = load ptr, ptr %t594 + %t603 = call ptr @lp_str_concat(ptr %t601, ptr %t602) + %t604 = call ptr @fn_emit_bind(ptr %t603) + store ptr %t604, ptr %t605 + %t606 = load ptr, ptr %t605 + %t607 = call ptr @lp_str_concat(ptr @.str10044, ptr %t606) + %t608 = call ptr @lp_str_concat(ptr %t607, ptr @.str10045) + %t609 = load ptr, ptr %t510 + %t610 = call i32 @fn_field_index(ptr %t609, ptr @.str10046) + %t611 = call ptr @fn_itoa(i32 %t610) + %t612 = call ptr @lp_str_concat(ptr %t608, ptr %t611) + %t613 = call ptr @fn_emit_bind(ptr %t612) + store ptr %t613, ptr %t614 + %t615 = load ptr, ptr %t605 + %t616 = call ptr @lp_str_concat(ptr @.str10047, ptr %t615) + %t617 = call ptr @lp_str_concat(ptr %t616, ptr @.str10048) + %t618 = load ptr, ptr %t510 + %t619 = call i32 @fn_field_index(ptr %t618, ptr @.str10049) + %t620 = call ptr @fn_itoa(i32 %t619) + %t621 = call ptr @lp_str_concat(ptr %t617, ptr %t620) + %t622 = call ptr @fn_emit_bind(ptr %t621) + store ptr %t622, ptr %t623 + %t624 = load ptr, ptr %t587 + %t625 = getelementptr inbounds %Cmp_Val, ptr %t624, i32 0, i32 0 + %t626 = load ptr, ptr %t625 + %t627 = call ptr @fn_vec_x(ptr %t626) + store ptr %t627, ptr %t628 + %t629 = load ptr, ptr %t587 + %t630 = getelementptr inbounds %Cmp_Val, ptr %t629, i32 0, i32 0 + %t631 = load ptr, ptr %t630 + %t632 = call ptr @fn_vec_y(ptr %t631) + store ptr %t632, ptr %t633 call void @fn_emit(ptr @.str10050) - %t636 = load ptr, ptr %t594 - %t637 = call ptr @fn_val(ptr %t636, ptr @.str10051) - store ptr %t637, ptr %retval + %t634 = load ptr, ptr %t628 + call void @fn_emit(ptr %t634) + call void @fn_emit(ptr @.str10051) + %t635 = load ptr, ptr %t614 + call void @fn_emit(ptr %t635) + call void @fn_emit(ptr @.str10052) + call void @fn_emit(ptr @.str10053) + %t636 = load ptr, ptr %t633 + call void @fn_emit(ptr %t636) + call void @fn_emit(ptr @.str10054) + %t637 = load ptr, ptr %t623 + call void @fn_emit(ptr %t637) + call void @fn_emit(ptr @.str10055) + %t638 = load ptr, ptr %t594 + %t639 = call ptr @fn_val(ptr %t638, ptr @.str10056) + store ptr %t639, ptr %retval br label %ret ifend240: - %t638 = load ptr, ptr %t1 - %t639 = call i32 @lp_str_eq(ptr %t638, ptr @.str10052) - %t640 = icmp ne i32 %t639, 0 - br i1 %t640, label %then255, label %ifend257 + %t640 = load ptr, ptr %t1 + %t641 = call i32 @lp_str_eq(ptr %t640, ptr @.str10057) + %t642 = icmp ne i32 %t641, 0 + br i1 %t642, label %then255, label %ifend257 then255: - %t641 = call i32 @fn_has_prefabs() - %t642 = icmp eq i32 %t641, 0 - %t643 = zext i1 %t642 to i32 - %t644 = icmp ne i32 %t643, 0 - br i1 %t644, label %then258, label %ifend260 + %t643 = call i32 @fn_has_prefabs() + %t644 = icmp eq i32 %t643, 0 + %t645 = zext i1 %t644 to i32 + %t646 = icmp ne i32 %t645, 0 + br i1 %t646, label %then258, label %ifend260 then258: - call void @fn_perr(ptr @.str10053) + call void @fn_perr(ptr @.str10058) br label %ifend260 ifend260: - %t645 = getelementptr %LSlice, ptr null, i32 1 - %t646 = ptrtoint ptr %t645 to i64 - %t647 = call ptr @malloc(i64 %t646) - %t648 = getelementptr inbounds %LSlice, ptr %t647, i32 0, i32 0 - store ptr null, ptr %t648 - %t649 = getelementptr inbounds %LSlice, ptr %t647, i32 0, i32 1 - store i32 0, ptr %t649 - %t650 = getelementptr inbounds %LSlice, ptr %t647, i32 0, i32 2 - store i32 0, ptr %t650 - store ptr %t647, ptr %t651 - %t652 = load ptr, ptr %t651 - %t653 = getelementptr inbounds %LSlice, ptr %t652, i32 0, i32 1 - %t654 = getelementptr inbounds %LSlice, ptr %t652, i32 0, i32 2 - %t655 = getelementptr inbounds %LSlice, ptr %t652, i32 0, i32 0 - %t656 = load i32, ptr %t653 - %t657 = load i32, ptr %t654 - %t658 = icmp sge i32 %t656, %t657 - br i1 %t658, label %grow261, label %put262 + %t647 = getelementptr %LSlice, ptr null, i32 1 + %t648 = ptrtoint ptr %t647 to i64 + %t649 = call ptr @malloc(i64 %t648) + %t650 = getelementptr inbounds %LSlice, ptr %t649, i32 0, i32 0 + store ptr null, ptr %t650 + %t651 = getelementptr inbounds %LSlice, ptr %t649, i32 0, i32 1 + store i32 0, ptr %t651 + %t652 = getelementptr inbounds %LSlice, ptr %t649, i32 0, i32 2 + store i32 0, ptr %t652 + store ptr %t649, ptr %t653 + %t654 = load ptr, ptr %t653 + %t655 = getelementptr inbounds %LSlice, ptr %t654, i32 0, i32 1 + %t656 = getelementptr inbounds %LSlice, ptr %t654, i32 0, i32 2 + %t657 = getelementptr inbounds %LSlice, ptr %t654, i32 0, i32 0 + %t658 = load i32, ptr %t655 + %t659 = load i32, ptr %t656 + %t660 = icmp sge i32 %t658, %t659 + br i1 %t660, label %grow261, label %put262 grow261: - %t659 = mul i32 %t657, 2 - %t660 = icmp eq i32 %t657, 0 - %t661 = select i1 %t660, i32 8, i32 %t659 - %t662 = getelementptr ptr, ptr null, i32 1 - %t663 = ptrtoint ptr %t662 to i64 - %t664 = zext i32 %t661 to i64 - %t665 = mul i64 %t664, %t663 - %t666 = load ptr, ptr %t655 - %t667 = call ptr @realloc(ptr %t666, i64 %t665) - store ptr %t667, ptr %t655 - store i32 %t661, ptr %t654 + %t661 = mul i32 %t659, 2 + %t662 = icmp eq i32 %t659, 0 + %t663 = select i1 %t662, i32 8, i32 %t661 + %t664 = getelementptr ptr, ptr null, i32 1 + %t665 = ptrtoint ptr %t664 to i64 + %t666 = zext i32 %t663 to i64 + %t667 = mul i64 %t666, %t665 + %t668 = load ptr, ptr %t657 + %t669 = call ptr @realloc(ptr %t668, i64 %t667) + store ptr %t669, ptr %t657 + store i32 %t663, ptr %t656 br label %put262 put262: - %t668 = load ptr, ptr %t655 - %t669 = getelementptr inbounds ptr, ptr %t668, i32 %t656 - store ptr @.str10054, ptr %t669 - %t670 = add i32 %t656, 1 - store i32 %t670, ptr %t653 - %t671 = load ptr, ptr %t2 - %t672 = load ptr, ptr %t651 - call void @fn_reorder_named(ptr %t671, ptr %t672) + %t670 = load ptr, ptr %t657 + %t671 = getelementptr inbounds ptr, ptr %t670, i32 %t658 + store ptr @.str10059, ptr %t671 + %t672 = add i32 %t658, 1 + store i32 %t672, ptr %t655 %t673 = load ptr, ptr %t2 - %t674 = getelementptr inbounds %Cmp_Node, ptr %t673, i32 0, i32 7 - %t675 = load ptr, ptr %t674 - %t676 = getelementptr inbounds %LSlice, ptr %t675, i32 0, i32 1 - %t677 = load i32, ptr %t676 - %t678 = icmp ne i32 %t677, 1 - %t679 = zext i1 %t678 to i32 - %t680 = icmp ne i32 %t679, 0 - br i1 %t680, label %then263, label %ifend265 + %t674 = load ptr, ptr %t653 + call void @fn_reorder_named(ptr %t673, ptr %t674) + %t675 = load ptr, ptr %t2 + %t676 = getelementptr inbounds %Cmp_Node, ptr %t675, i32 0, i32 7 + %t677 = load ptr, ptr %t676 + %t678 = getelementptr inbounds %LSlice, ptr %t677, i32 0, i32 1 + %t679 = load i32, ptr %t678 + %t680 = icmp ne i32 %t679, 1 + %t681 = zext i1 %t680 to i32 + %t682 = icmp ne i32 %t681, 0 + br i1 %t682, label %then263, label %ifend265 then263: - call void @fn_perr(ptr @.str10055) + call void @fn_perr(ptr @.str10060) br label %ifend265 ifend265: - %t681 = load ptr, ptr %t2 - %t682 = getelementptr inbounds %Cmp_Node, ptr %t681, i32 0, i32 7 - %t683 = load ptr, ptr %t682 - %t684 = getelementptr inbounds %LSlice, ptr %t683, i32 0, i32 0 + %t683 = load ptr, ptr %t2 + %t684 = getelementptr inbounds %Cmp_Node, ptr %t683, i32 0, i32 7 %t685 = load ptr, ptr %t684 - %t686 = getelementptr inbounds %LSlice, ptr %t683, i32 0, i32 1 - %t687 = load i32, ptr %t686 - %t688 = icmp ult i32 0, %t687 - br i1 %t688, label %ixok266, label %ixbad267 + %t686 = getelementptr inbounds %LSlice, ptr %t685, i32 0, i32 0 + %t687 = load ptr, ptr %t686 + %t688 = getelementptr inbounds %LSlice, ptr %t685, i32 0, i32 1 + %t689 = load i32, ptr %t688 + %t690 = icmp ult i32 0, %t689 + br i1 %t690, label %ixok266, label %ixbad267 ixbad267: - %t689 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t689, ptr @.fmt_bounds, ptr @.str10056, i32 0, i32 %t687) + %t691 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t691, ptr @.fmt_bounds, ptr @.str10061, i32 0, i32 %t689) call void @exit(i32 1) unreachable ixok266: - %t690 = getelementptr inbounds ptr, ptr %t685, i32 0 - %t691 = load ptr, ptr %t690 - %t692 = call ptr @fn_emit_expr(ptr %t691) - store ptr %t692, ptr %t693 - %t694 = load ptr, ptr %t693 - %t695 = getelementptr inbounds %Cmp_Val, ptr %t694, i32 0, i32 0 + %t692 = getelementptr inbounds ptr, ptr %t687, i32 0 + %t693 = load ptr, ptr %t692 + %t694 = call ptr @fn_emit_expr(ptr %t693) + store ptr %t694, ptr %t695 %t696 = load ptr, ptr %t695 - %t697 = call ptr @lp_str_concat(ptr @.str10057, ptr %t696) - %t698 = call ptr @lp_str_concat(ptr %t697, ptr @.str10058) - %t699 = call ptr @fn_emit_bind(ptr %t698) - %t700 = call ptr @fn_val(ptr %t699, ptr @.str10059) - store ptr %t700, ptr %retval + %t697 = getelementptr inbounds %Cmp_Val, ptr %t696, i32 0, i32 0 + %t698 = load ptr, ptr %t697 + %t699 = call ptr @lp_str_concat(ptr @.str10062, ptr %t698) + %t700 = call ptr @lp_str_concat(ptr %t699, ptr @.str10063) + %t701 = call ptr @fn_emit_bind(ptr %t700) + %t702 = call ptr @fn_val(ptr %t701, ptr @.str10064) + store ptr %t702, ptr %retval br label %ret ifend257: - %t701 = load ptr, ptr %t1 - %t702 = load ptr, ptr %t2 - %t703 = call ptr @fn_emit_alias_or_fail(ptr @.str10060, ptr %t701, ptr %t702) - store ptr %t703, ptr %retval + %t703 = load ptr, ptr %t1 + %t704 = load ptr, ptr %t2 + %t705 = call ptr @fn_emit_alias_or_fail(ptr @.str10065, ptr %t703, ptr %t704) + store ptr %t705, ptr %retval br label %ret ifend237: - %t704 = load ptr, ptr %t0 - %t705 = call i32 @lp_str_eq(ptr %t704, ptr @.str10061) - %t706 = icmp ne i32 %t705, 0 - br i1 %t706, label %then268, label %ifend270 + %t706 = load ptr, ptr %t0 + %t707 = call i32 @lp_str_eq(ptr %t706, ptr @.str10066) + %t708 = icmp ne i32 %t707, 0 + br i1 %t708, label %then268, label %ifend270 then268: - %t707 = load ptr, ptr %t1 - %t708 = call i32 @lp_str_eq(ptr %t707, ptr @.str10062) - %t709 = icmp ne i32 %t708, 0 - br i1 %t709, label %then271, label %ifend273 + %t709 = load ptr, ptr %t1 + %t710 = call i32 @lp_str_eq(ptr %t709, ptr @.str10067) + %t711 = icmp ne i32 %t710, 0 + br i1 %t711, label %then271, label %ifend273 then271: - %t710 = load ptr, ptr %t2 - %t711 = call i32 @fn_first_arg_is_text(ptr %t710) - %t712 = icmp ne i32 %t711, 0 - br i1 %t712, label %then274, label %else275 + %t712 = load ptr, ptr %t2 + %t713 = call i32 @fn_first_arg_is_text(ptr %t712) + %t714 = icmp ne i32 %t713, 0 + br i1 %t714, label %then274, label %else275 then274: - store ptr @.str10063, ptr %t490 - %t713 = load ptr, ptr %t498 - %t714 = getelementptr inbounds %LSlice, ptr %t713, i32 0, i32 1 - %t715 = getelementptr inbounds %LSlice, ptr %t713, i32 0, i32 2 - %t716 = getelementptr inbounds %LSlice, ptr %t713, i32 0, i32 0 - %t717 = load i32, ptr %t714 - %t718 = load i32, ptr %t715 - %t719 = icmp sge i32 %t717, %t718 - br i1 %t719, label %grow277, label %put278 + store ptr @.str10068, ptr %t490 + %t715 = load ptr, ptr %t498 + %t716 = getelementptr inbounds %LSlice, ptr %t715, i32 0, i32 1 + %t717 = getelementptr inbounds %LSlice, ptr %t715, i32 0, i32 2 + %t718 = getelementptr inbounds %LSlice, ptr %t715, i32 0, i32 0 + %t719 = load i32, ptr %t716 + %t720 = load i32, ptr %t717 + %t721 = icmp sge i32 %t719, %t720 + br i1 %t721, label %grow277, label %put278 grow277: - %t720 = mul i32 %t718, 2 - %t721 = icmp eq i32 %t718, 0 - %t722 = select i1 %t721, i32 8, i32 %t720 - %t723 = getelementptr ptr, ptr null, i32 1 - %t724 = ptrtoint ptr %t723 to i64 - %t725 = zext i32 %t722 to i64 - %t726 = mul i64 %t725, %t724 - %t727 = load ptr, ptr %t716 - %t728 = call ptr @realloc(ptr %t727, i64 %t726) - store ptr %t728, ptr %t716 - store i32 %t722, ptr %t715 + %t722 = mul i32 %t720, 2 + %t723 = icmp eq i32 %t720, 0 + %t724 = select i1 %t723, i32 8, i32 %t722 + %t725 = getelementptr ptr, ptr null, i32 1 + %t726 = ptrtoint ptr %t725 to i64 + %t727 = zext i32 %t724 to i64 + %t728 = mul i64 %t727, %t726 + %t729 = load ptr, ptr %t718 + %t730 = call ptr @realloc(ptr %t729, i64 %t728) + store ptr %t730, ptr %t718 + store i32 %t724, ptr %t717 br label %put278 put278: - %t729 = load ptr, ptr %t716 - %t730 = getelementptr inbounds ptr, ptr %t729, i32 %t717 - store ptr @.str10064, ptr %t730 - %t731 = add i32 %t717, 1 - store i32 %t731, ptr %t714 + %t731 = load ptr, ptr %t718 + %t732 = getelementptr inbounds ptr, ptr %t731, i32 %t719 + store ptr @.str10069, ptr %t732 + %t733 = add i32 %t719, 1 + store i32 %t733, ptr %t716 br label %ifend276 else275: - store ptr @.str10065, ptr %t490 - %t732 = load ptr, ptr %t498 - %t733 = getelementptr inbounds %LSlice, ptr %t732, i32 0, i32 1 - %t734 = getelementptr inbounds %LSlice, ptr %t732, i32 0, i32 2 - %t735 = getelementptr inbounds %LSlice, ptr %t732, i32 0, i32 0 - %t736 = load i32, ptr %t733 - %t737 = load i32, ptr %t734 - %t738 = icmp sge i32 %t736, %t737 - br i1 %t738, label %grow279, label %put280 + store ptr @.str10070, ptr %t490 + %t734 = load ptr, ptr %t498 + %t735 = getelementptr inbounds %LSlice, ptr %t734, i32 0, i32 1 + %t736 = getelementptr inbounds %LSlice, ptr %t734, i32 0, i32 2 + %t737 = getelementptr inbounds %LSlice, ptr %t734, i32 0, i32 0 + %t738 = load i32, ptr %t735 + %t739 = load i32, ptr %t736 + %t740 = icmp sge i32 %t738, %t739 + br i1 %t740, label %grow279, label %put280 grow279: - %t739 = mul i32 %t737, 2 - %t740 = icmp eq i32 %t737, 0 - %t741 = select i1 %t740, i32 8, i32 %t739 - %t742 = getelementptr ptr, ptr null, i32 1 - %t743 = ptrtoint ptr %t742 to i64 - %t744 = zext i32 %t741 to i64 - %t745 = mul i64 %t744, %t743 - %t746 = load ptr, ptr %t735 - %t747 = call ptr @realloc(ptr %t746, i64 %t745) - store ptr %t747, ptr %t735 - store i32 %t741, ptr %t734 + %t741 = mul i32 %t739, 2 + %t742 = icmp eq i32 %t739, 0 + %t743 = select i1 %t742, i32 8, i32 %t741 + %t744 = getelementptr ptr, ptr null, i32 1 + %t745 = ptrtoint ptr %t744 to i64 + %t746 = zext i32 %t743 to i64 + %t747 = mul i64 %t746, %t745 + %t748 = load ptr, ptr %t737 + %t749 = call ptr @realloc(ptr %t748, i64 %t747) + store ptr %t749, ptr %t737 + store i32 %t743, ptr %t736 br label %put280 put280: - %t748 = load ptr, ptr %t735 - %t749 = getelementptr inbounds ptr, ptr %t748, i32 %t736 - store ptr @.str10066, ptr %t749 - %t750 = add i32 %t736, 1 - store i32 %t750, ptr %t733 + %t750 = load ptr, ptr %t737 + %t751 = getelementptr inbounds ptr, ptr %t750, i32 %t738 + store ptr @.str10071, ptr %t751 + %t752 = add i32 %t738, 1 + store i32 %t752, ptr %t735 br label %ifend276 ifend276: br label %ifend273 ifend273: - %t751 = load ptr, ptr %t1 - %t752 = call i32 @lp_str_eq(ptr %t751, ptr @.str10067) - %t753 = icmp ne i32 %t752, 0 - br i1 %t753, label %then281, label %ifend283 + %t753 = load ptr, ptr %t1 + %t754 = call i32 @lp_str_eq(ptr %t753, ptr @.str10072) + %t755 = icmp ne i32 %t754, 0 + br i1 %t755, label %then281, label %ifend283 then281: - %t754 = load ptr, ptr %t2 - %t755 = call i32 @fn_first_arg_is_text(ptr %t754) - %t756 = icmp ne i32 %t755, 0 - br i1 %t756, label %then284, label %else285 + %t756 = load ptr, ptr %t2 + %t757 = call i32 @fn_first_arg_is_text(ptr %t756) + %t758 = icmp ne i32 %t757, 0 + br i1 %t758, label %then284, label %else285 then284: - store ptr @.str10068, ptr %t490 - %t757 = load ptr, ptr %t498 - %t758 = getelementptr inbounds %LSlice, ptr %t757, i32 0, i32 1 - %t759 = getelementptr inbounds %LSlice, ptr %t757, i32 0, i32 2 - %t760 = getelementptr inbounds %LSlice, ptr %t757, i32 0, i32 0 - %t761 = load i32, ptr %t758 - %t762 = load i32, ptr %t759 - %t763 = icmp sge i32 %t761, %t762 - br i1 %t763, label %grow287, label %put288 + store ptr @.str10073, ptr %t490 + %t759 = load ptr, ptr %t498 + %t760 = getelementptr inbounds %LSlice, ptr %t759, i32 0, i32 1 + %t761 = getelementptr inbounds %LSlice, ptr %t759, i32 0, i32 2 + %t762 = getelementptr inbounds %LSlice, ptr %t759, i32 0, i32 0 + %t763 = load i32, ptr %t760 + %t764 = load i32, ptr %t761 + %t765 = icmp sge i32 %t763, %t764 + br i1 %t765, label %grow287, label %put288 grow287: - %t764 = mul i32 %t762, 2 - %t765 = icmp eq i32 %t762, 0 - %t766 = select i1 %t765, i32 8, i32 %t764 - %t767 = getelementptr ptr, ptr null, i32 1 - %t768 = ptrtoint ptr %t767 to i64 - %t769 = zext i32 %t766 to i64 - %t770 = mul i64 %t769, %t768 - %t771 = load ptr, ptr %t760 - %t772 = call ptr @realloc(ptr %t771, i64 %t770) - store ptr %t772, ptr %t760 - store i32 %t766, ptr %t759 + %t766 = mul i32 %t764, 2 + %t767 = icmp eq i32 %t764, 0 + %t768 = select i1 %t767, i32 8, i32 %t766 + %t769 = getelementptr ptr, ptr null, i32 1 + %t770 = ptrtoint ptr %t769 to i64 + %t771 = zext i32 %t768 to i64 + %t772 = mul i64 %t771, %t770 + %t773 = load ptr, ptr %t762 + %t774 = call ptr @realloc(ptr %t773, i64 %t772) + store ptr %t774, ptr %t762 + store i32 %t768, ptr %t761 br label %put288 put288: - %t773 = load ptr, ptr %t760 - %t774 = getelementptr inbounds ptr, ptr %t773, i32 %t761 - store ptr @.str10069, ptr %t774 - %t775 = add i32 %t761, 1 - store i32 %t775, ptr %t758 + %t775 = load ptr, ptr %t762 + %t776 = getelementptr inbounds ptr, ptr %t775, i32 %t763 + store ptr @.str10074, ptr %t776 + %t777 = add i32 %t763, 1 + store i32 %t777, ptr %t760 br label %ifend286 else285: - store ptr @.str10070, ptr %t490 - %t776 = load ptr, ptr %t498 - %t777 = getelementptr inbounds %LSlice, ptr %t776, i32 0, i32 1 - %t778 = getelementptr inbounds %LSlice, ptr %t776, i32 0, i32 2 - %t779 = getelementptr inbounds %LSlice, ptr %t776, i32 0, i32 0 - %t780 = load i32, ptr %t777 - %t781 = load i32, ptr %t778 - %t782 = icmp sge i32 %t780, %t781 - br i1 %t782, label %grow289, label %put290 + store ptr @.str10075, ptr %t490 + %t778 = load ptr, ptr %t498 + %t779 = getelementptr inbounds %LSlice, ptr %t778, i32 0, i32 1 + %t780 = getelementptr inbounds %LSlice, ptr %t778, i32 0, i32 2 + %t781 = getelementptr inbounds %LSlice, ptr %t778, i32 0, i32 0 + %t782 = load i32, ptr %t779 + %t783 = load i32, ptr %t780 + %t784 = icmp sge i32 %t782, %t783 + br i1 %t784, label %grow289, label %put290 grow289: - %t783 = mul i32 %t781, 2 - %t784 = icmp eq i32 %t781, 0 - %t785 = select i1 %t784, i32 8, i32 %t783 - %t786 = getelementptr ptr, ptr null, i32 1 - %t787 = ptrtoint ptr %t786 to i64 - %t788 = zext i32 %t785 to i64 - %t789 = mul i64 %t788, %t787 - %t790 = load ptr, ptr %t779 - %t791 = call ptr @realloc(ptr %t790, i64 %t789) - store ptr %t791, ptr %t779 - store i32 %t785, ptr %t778 + %t785 = mul i32 %t783, 2 + %t786 = icmp eq i32 %t783, 0 + %t787 = select i1 %t786, i32 8, i32 %t785 + %t788 = getelementptr ptr, ptr null, i32 1 + %t789 = ptrtoint ptr %t788 to i64 + %t790 = zext i32 %t787 to i64 + %t791 = mul i64 %t790, %t789 + %t792 = load ptr, ptr %t781 + %t793 = call ptr @realloc(ptr %t792, i64 %t791) + store ptr %t793, ptr %t781 + store i32 %t787, ptr %t780 br label %put290 put290: - %t792 = load ptr, ptr %t779 - %t793 = getelementptr inbounds ptr, ptr %t792, i32 %t780 - store ptr @.str10071, ptr %t793 - %t794 = add i32 %t780, 1 - store i32 %t794, ptr %t777 + %t794 = load ptr, ptr %t781 + %t795 = getelementptr inbounds ptr, ptr %t794, i32 %t782 + store ptr @.str10076, ptr %t795 + %t796 = add i32 %t782, 1 + store i32 %t796, ptr %t779 br label %ifend286 ifend286: br label %ifend283 ifend283: br label %ifend270 ifend270: - %t795 = load ptr, ptr %t0 - %t796 = call i32 @lp_str_eq(ptr %t795, ptr @.str10072) - %t797 = icmp ne i32 %t796, 0 - br i1 %t797, label %then291, label %ifend293 + %t797 = load ptr, ptr %t0 + %t798 = call i32 @lp_str_eq(ptr %t797, ptr @.str10077) + %t799 = icmp ne i32 %t798, 0 + br i1 %t799, label %then291, label %ifend293 then291: - %t798 = load ptr, ptr %t1 - %t799 = call i32 @lp_str_eq(ptr %t798, ptr @.str10073) - %t800 = icmp ne i32 %t799, 0 - br i1 %t800, label %then294, label %ifend296 + %t800 = load ptr, ptr %t1 + %t801 = call i32 @lp_str_eq(ptr %t800, ptr @.str10078) + %t802 = icmp ne i32 %t801, 0 + br i1 %t802, label %then294, label %ifend296 then294: - store ptr @.str10074, ptr %t490 - %t801 = load ptr, ptr %t498 - %t802 = getelementptr inbounds %LSlice, ptr %t801, i32 0, i32 1 - %t803 = getelementptr inbounds %LSlice, ptr %t801, i32 0, i32 2 - %t804 = getelementptr inbounds %LSlice, ptr %t801, i32 0, i32 0 - %t805 = load i32, ptr %t802 - %t806 = load i32, ptr %t803 - %t807 = icmp sge i32 %t805, %t806 - br i1 %t807, label %grow297, label %put298 + store ptr @.str10079, ptr %t490 + %t803 = load ptr, ptr %t498 + %t804 = getelementptr inbounds %LSlice, ptr %t803, i32 0, i32 1 + %t805 = getelementptr inbounds %LSlice, ptr %t803, i32 0, i32 2 + %t806 = getelementptr inbounds %LSlice, ptr %t803, i32 0, i32 0 + %t807 = load i32, ptr %t804 + %t808 = load i32, ptr %t805 + %t809 = icmp sge i32 %t807, %t808 + br i1 %t809, label %grow297, label %put298 grow297: - %t808 = mul i32 %t806, 2 - %t809 = icmp eq i32 %t806, 0 - %t810 = select i1 %t809, i32 8, i32 %t808 - %t811 = getelementptr ptr, ptr null, i32 1 - %t812 = ptrtoint ptr %t811 to i64 - %t813 = zext i32 %t810 to i64 - %t814 = mul i64 %t813, %t812 - %t815 = load ptr, ptr %t804 - %t816 = call ptr @realloc(ptr %t815, i64 %t814) - store ptr %t816, ptr %t804 - store i32 %t810, ptr %t803 + %t810 = mul i32 %t808, 2 + %t811 = icmp eq i32 %t808, 0 + %t812 = select i1 %t811, i32 8, i32 %t810 + %t813 = getelementptr ptr, ptr null, i32 1 + %t814 = ptrtoint ptr %t813 to i64 + %t815 = zext i32 %t812 to i64 + %t816 = mul i64 %t815, %t814 + %t817 = load ptr, ptr %t806 + %t818 = call ptr @realloc(ptr %t817, i64 %t816) + store ptr %t818, ptr %t806 + store i32 %t812, ptr %t805 br label %put298 put298: - %t817 = load ptr, ptr %t804 - %t818 = getelementptr inbounds ptr, ptr %t817, i32 %t805 - store ptr @.str10075, ptr %t818 - %t819 = add i32 %t805, 1 - store i32 %t819, ptr %t802 - %t820 = load ptr, ptr %t498 - %t821 = getelementptr inbounds %LSlice, ptr %t820, i32 0, i32 1 - %t822 = getelementptr inbounds %LSlice, ptr %t820, i32 0, i32 2 - %t823 = getelementptr inbounds %LSlice, ptr %t820, i32 0, i32 0 - %t824 = load i32, ptr %t821 - %t825 = load i32, ptr %t822 - %t826 = icmp sge i32 %t824, %t825 - br i1 %t826, label %grow299, label %put300 + %t819 = load ptr, ptr %t806 + %t820 = getelementptr inbounds ptr, ptr %t819, i32 %t807 + store ptr @.str10080, ptr %t820 + %t821 = add i32 %t807, 1 + store i32 %t821, ptr %t804 + %t822 = load ptr, ptr %t498 + %t823 = getelementptr inbounds %LSlice, ptr %t822, i32 0, i32 1 + %t824 = getelementptr inbounds %LSlice, ptr %t822, i32 0, i32 2 + %t825 = getelementptr inbounds %LSlice, ptr %t822, i32 0, i32 0 + %t826 = load i32, ptr %t823 + %t827 = load i32, ptr %t824 + %t828 = icmp sge i32 %t826, %t827 + br i1 %t828, label %grow299, label %put300 grow299: - %t827 = mul i32 %t825, 2 - %t828 = icmp eq i32 %t825, 0 - %t829 = select i1 %t828, i32 8, i32 %t827 - %t830 = getelementptr ptr, ptr null, i32 1 - %t831 = ptrtoint ptr %t830 to i64 - %t832 = zext i32 %t829 to i64 - %t833 = mul i64 %t832, %t831 - %t834 = load ptr, ptr %t823 - %t835 = call ptr @realloc(ptr %t834, i64 %t833) - store ptr %t835, ptr %t823 - store i32 %t829, ptr %t822 + %t829 = mul i32 %t827, 2 + %t830 = icmp eq i32 %t827, 0 + %t831 = select i1 %t830, i32 8, i32 %t829 + %t832 = getelementptr ptr, ptr null, i32 1 + %t833 = ptrtoint ptr %t832 to i64 + %t834 = zext i32 %t831 to i64 + %t835 = mul i64 %t834, %t833 + %t836 = load ptr, ptr %t825 + %t837 = call ptr @realloc(ptr %t836, i64 %t835) + store ptr %t837, ptr %t825 + store i32 %t831, ptr %t824 br label %put300 put300: - %t836 = load ptr, ptr %t823 - %t837 = getelementptr inbounds ptr, ptr %t836, i32 %t824 - store ptr @.str10076, ptr %t837 - %t838 = add i32 %t824, 1 - store i32 %t838, ptr %t821 - %t839 = load ptr, ptr %t498 - %t840 = getelementptr inbounds %LSlice, ptr %t839, i32 0, i32 1 - %t841 = getelementptr inbounds %LSlice, ptr %t839, i32 0, i32 2 - %t842 = getelementptr inbounds %LSlice, ptr %t839, i32 0, i32 0 - %t843 = load i32, ptr %t840 - %t844 = load i32, ptr %t841 - %t845 = icmp sge i32 %t843, %t844 - br i1 %t845, label %grow301, label %put302 + %t838 = load ptr, ptr %t825 + %t839 = getelementptr inbounds ptr, ptr %t838, i32 %t826 + store ptr @.str10081, ptr %t839 + %t840 = add i32 %t826, 1 + store i32 %t840, ptr %t823 + %t841 = load ptr, ptr %t498 + %t842 = getelementptr inbounds %LSlice, ptr %t841, i32 0, i32 1 + %t843 = getelementptr inbounds %LSlice, ptr %t841, i32 0, i32 2 + %t844 = getelementptr inbounds %LSlice, ptr %t841, i32 0, i32 0 + %t845 = load i32, ptr %t842 + %t846 = load i32, ptr %t843 + %t847 = icmp sge i32 %t845, %t846 + br i1 %t847, label %grow301, label %put302 grow301: - %t846 = mul i32 %t844, 2 - %t847 = icmp eq i32 %t844, 0 - %t848 = select i1 %t847, i32 8, i32 %t846 - %t849 = getelementptr ptr, ptr null, i32 1 - %t850 = ptrtoint ptr %t849 to i64 - %t851 = zext i32 %t848 to i64 - %t852 = mul i64 %t851, %t850 - %t853 = load ptr, ptr %t842 - %t854 = call ptr @realloc(ptr %t853, i64 %t852) - store ptr %t854, ptr %t842 - store i32 %t848, ptr %t841 + %t848 = mul i32 %t846, 2 + %t849 = icmp eq i32 %t846, 0 + %t850 = select i1 %t849, i32 8, i32 %t848 + %t851 = getelementptr ptr, ptr null, i32 1 + %t852 = ptrtoint ptr %t851 to i64 + %t853 = zext i32 %t850 to i64 + %t854 = mul i64 %t853, %t852 + %t855 = load ptr, ptr %t844 + %t856 = call ptr @realloc(ptr %t855, i64 %t854) + store ptr %t856, ptr %t844 + store i32 %t850, ptr %t843 br label %put302 put302: - %t855 = load ptr, ptr %t842 - %t856 = getelementptr inbounds ptr, ptr %t855, i32 %t843 - store ptr @.str10077, ptr %t856 - %t857 = add i32 %t843, 1 - store i32 %t857, ptr %t840 - %t858 = load ptr, ptr %t2 - %t859 = getelementptr inbounds %Cmp_Node, ptr %t858, i32 0, i32 7 - %t860 = load ptr, ptr %t859 - %t861 = getelementptr inbounds %LSlice, ptr %t860, i32 0, i32 1 - %t862 = load i32, ptr %t861 - %t863 = icmp sgt i32 %t862, 1 - %t864 = zext i1 %t863 to i32 - %t865 = icmp ne i32 %t864, 0 - br i1 %t865, label %then303, label %ifend305 + %t857 = load ptr, ptr %t844 + %t858 = getelementptr inbounds ptr, ptr %t857, i32 %t845 + store ptr @.str10082, ptr %t858 + %t859 = add i32 %t845, 1 + store i32 %t859, ptr %t842 + %t860 = load ptr, ptr %t2 + %t861 = getelementptr inbounds %Cmp_Node, ptr %t860, i32 0, i32 7 + %t862 = load ptr, ptr %t861 + %t863 = getelementptr inbounds %LSlice, ptr %t862, i32 0, i32 1 + %t864 = load i32, ptr %t863 + %t865 = icmp sgt i32 %t864, 1 + %t866 = zext i1 %t865 to i32 + %t867 = icmp ne i32 %t866, 0 + br i1 %t867, label %then303, label %ifend305 then303: - %t866 = load ptr, ptr %t2 - %t867 = getelementptr inbounds %Cmp_Node, ptr %t866, i32 0, i32 7 - %t868 = load ptr, ptr %t867 - %t869 = getelementptr inbounds %LSlice, ptr %t868, i32 0, i32 0 + %t868 = load ptr, ptr %t2 + %t869 = getelementptr inbounds %Cmp_Node, ptr %t868, i32 0, i32 7 %t870 = load ptr, ptr %t869 - %t871 = getelementptr inbounds %LSlice, ptr %t868, i32 0, i32 1 - %t872 = load i32, ptr %t871 - %t873 = icmp ult i32 1, %t872 - br i1 %t873, label %ixok306, label %ixbad307 + %t871 = getelementptr inbounds %LSlice, ptr %t870, i32 0, i32 0 + %t872 = load ptr, ptr %t871 + %t873 = getelementptr inbounds %LSlice, ptr %t870, i32 0, i32 1 + %t874 = load i32, ptr %t873 + %t875 = icmp ult i32 1, %t874 + br i1 %t875, label %ixok306, label %ixbad307 ixbad307: - %t874 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t874, ptr @.fmt_bounds, ptr @.str10078, i32 1, i32 %t872) + %t876 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t876, ptr @.fmt_bounds, ptr @.str10083, i32 1, i32 %t874) call void @exit(i32 1) unreachable ixok306: - %t875 = getelementptr inbounds ptr, ptr %t870, i32 1 - %t876 = load ptr, ptr %t875 - call void @fn_check_worker_ref(ptr %t876) + %t877 = getelementptr inbounds ptr, ptr %t872, i32 1 + %t878 = load ptr, ptr %t877 + call void @fn_check_worker_ref(ptr %t878) br label %ifend305 ifend305: br label %ifend296 ifend296: br label %ifend293 ifend293: - %t877 = load ptr, ptr %t0 - %t878 = call i32 @lp_str_eq(ptr %t877, ptr @.str10079) - %t879 = icmp ne i32 %t878, 0 - br i1 %t879, label %then308, label %ifend310 + %t879 = load ptr, ptr %t0 + %t880 = call i32 @lp_str_eq(ptr %t879, ptr @.str10084) + %t881 = icmp ne i32 %t880, 0 + br i1 %t881, label %then308, label %ifend310 then308: - %t880 = load ptr, ptr %t1 - %t881 = call i32 @lp_str_eq(ptr %t880, ptr @.str10080) - %t882 = icmp ne i32 %t881, 0 - br i1 %t882, label %then311, label %ifend313 + %t882 = load ptr, ptr %t1 + %t883 = call i32 @lp_str_eq(ptr %t882, ptr @.str10085) + %t884 = icmp ne i32 %t883, 0 + br i1 %t884, label %then311, label %ifend313 then311: - store ptr @.str10081, ptr %t490 - %t883 = load ptr, ptr %t498 - %t884 = getelementptr inbounds %LSlice, ptr %t883, i32 0, i32 1 - %t885 = getelementptr inbounds %LSlice, ptr %t883, i32 0, i32 2 - %t886 = getelementptr inbounds %LSlice, ptr %t883, i32 0, i32 0 - %t887 = load i32, ptr %t884 - %t888 = load i32, ptr %t885 - %t889 = icmp sge i32 %t887, %t888 - br i1 %t889, label %grow314, label %put315 + store ptr @.str10086, ptr %t490 + %t885 = load ptr, ptr %t498 + %t886 = getelementptr inbounds %LSlice, ptr %t885, i32 0, i32 1 + %t887 = getelementptr inbounds %LSlice, ptr %t885, i32 0, i32 2 + %t888 = getelementptr inbounds %LSlice, ptr %t885, i32 0, i32 0 + %t889 = load i32, ptr %t886 + %t890 = load i32, ptr %t887 + %t891 = icmp sge i32 %t889, %t890 + br i1 %t891, label %grow314, label %put315 grow314: - %t890 = mul i32 %t888, 2 - %t891 = icmp eq i32 %t888, 0 - %t892 = select i1 %t891, i32 8, i32 %t890 - %t893 = getelementptr ptr, ptr null, i32 1 - %t894 = ptrtoint ptr %t893 to i64 - %t895 = zext i32 %t892 to i64 - %t896 = mul i64 %t895, %t894 - %t897 = load ptr, ptr %t886 - %t898 = call ptr @realloc(ptr %t897, i64 %t896) - store ptr %t898, ptr %t886 - store i32 %t892, ptr %t885 + %t892 = mul i32 %t890, 2 + %t893 = icmp eq i32 %t890, 0 + %t894 = select i1 %t893, i32 8, i32 %t892 + %t895 = getelementptr ptr, ptr null, i32 1 + %t896 = ptrtoint ptr %t895 to i64 + %t897 = zext i32 %t894 to i64 + %t898 = mul i64 %t897, %t896 + %t899 = load ptr, ptr %t888 + %t900 = call ptr @realloc(ptr %t899, i64 %t898) + store ptr %t900, ptr %t888 + store i32 %t894, ptr %t887 br label %put315 put315: - %t899 = load ptr, ptr %t886 - %t900 = getelementptr inbounds ptr, ptr %t899, i32 %t887 - store ptr @.str10082, ptr %t900 - %t901 = add i32 %t887, 1 - store i32 %t901, ptr %t884 - %t902 = load ptr, ptr %t498 - %t903 = getelementptr inbounds %LSlice, ptr %t902, i32 0, i32 1 - %t904 = getelementptr inbounds %LSlice, ptr %t902, i32 0, i32 2 - %t905 = getelementptr inbounds %LSlice, ptr %t902, i32 0, i32 0 - %t906 = load i32, ptr %t903 - %t907 = load i32, ptr %t904 - %t908 = icmp sge i32 %t906, %t907 - br i1 %t908, label %grow316, label %put317 + %t901 = load ptr, ptr %t888 + %t902 = getelementptr inbounds ptr, ptr %t901, i32 %t889 + store ptr @.str10087, ptr %t902 + %t903 = add i32 %t889, 1 + store i32 %t903, ptr %t886 + %t904 = load ptr, ptr %t498 + %t905 = getelementptr inbounds %LSlice, ptr %t904, i32 0, i32 1 + %t906 = getelementptr inbounds %LSlice, ptr %t904, i32 0, i32 2 + %t907 = getelementptr inbounds %LSlice, ptr %t904, i32 0, i32 0 + %t908 = load i32, ptr %t905 + %t909 = load i32, ptr %t906 + %t910 = icmp sge i32 %t908, %t909 + br i1 %t910, label %grow316, label %put317 grow316: - %t909 = mul i32 %t907, 2 - %t910 = icmp eq i32 %t907, 0 - %t911 = select i1 %t910, i32 8, i32 %t909 - %t912 = getelementptr ptr, ptr null, i32 1 - %t913 = ptrtoint ptr %t912 to i64 - %t914 = zext i32 %t911 to i64 - %t915 = mul i64 %t914, %t913 - %t916 = load ptr, ptr %t905 - %t917 = call ptr @realloc(ptr %t916, i64 %t915) - store ptr %t917, ptr %t905 - store i32 %t911, ptr %t904 + %t911 = mul i32 %t909, 2 + %t912 = icmp eq i32 %t909, 0 + %t913 = select i1 %t912, i32 8, i32 %t911 + %t914 = getelementptr ptr, ptr null, i32 1 + %t915 = ptrtoint ptr %t914 to i64 + %t916 = zext i32 %t913 to i64 + %t917 = mul i64 %t916, %t915 + %t918 = load ptr, ptr %t907 + %t919 = call ptr @realloc(ptr %t918, i64 %t917) + store ptr %t919, ptr %t907 + store i32 %t913, ptr %t906 br label %put317 put317: - %t918 = load ptr, ptr %t905 - %t919 = getelementptr inbounds ptr, ptr %t918, i32 %t906 - store ptr @.str10083, ptr %t919 - %t920 = add i32 %t906, 1 - store i32 %t920, ptr %t903 - %t921 = load ptr, ptr %t498 - %t922 = getelementptr inbounds %LSlice, ptr %t921, i32 0, i32 1 - %t923 = getelementptr inbounds %LSlice, ptr %t921, i32 0, i32 2 - %t924 = getelementptr inbounds %LSlice, ptr %t921, i32 0, i32 0 - %t925 = load i32, ptr %t922 - %t926 = load i32, ptr %t923 - %t927 = icmp sge i32 %t925, %t926 - br i1 %t927, label %grow318, label %put319 + %t920 = load ptr, ptr %t907 + %t921 = getelementptr inbounds ptr, ptr %t920, i32 %t908 + store ptr @.str10088, ptr %t921 + %t922 = add i32 %t908, 1 + store i32 %t922, ptr %t905 + %t923 = load ptr, ptr %t498 + %t924 = getelementptr inbounds %LSlice, ptr %t923, i32 0, i32 1 + %t925 = getelementptr inbounds %LSlice, ptr %t923, i32 0, i32 2 + %t926 = getelementptr inbounds %LSlice, ptr %t923, i32 0, i32 0 + %t927 = load i32, ptr %t924 + %t928 = load i32, ptr %t925 + %t929 = icmp sge i32 %t927, %t928 + br i1 %t929, label %grow318, label %put319 grow318: - %t928 = mul i32 %t926, 2 - %t929 = icmp eq i32 %t926, 0 - %t930 = select i1 %t929, i32 8, i32 %t928 - %t931 = getelementptr ptr, ptr null, i32 1 - %t932 = ptrtoint ptr %t931 to i64 - %t933 = zext i32 %t930 to i64 - %t934 = mul i64 %t933, %t932 - %t935 = load ptr, ptr %t924 - %t936 = call ptr @realloc(ptr %t935, i64 %t934) - store ptr %t936, ptr %t924 - store i32 %t930, ptr %t923 + %t930 = mul i32 %t928, 2 + %t931 = icmp eq i32 %t928, 0 + %t932 = select i1 %t931, i32 8, i32 %t930 + %t933 = getelementptr ptr, ptr null, i32 1 + %t934 = ptrtoint ptr %t933 to i64 + %t935 = zext i32 %t932 to i64 + %t936 = mul i64 %t935, %t934 + %t937 = load ptr, ptr %t926 + %t938 = call ptr @realloc(ptr %t937, i64 %t936) + store ptr %t938, ptr %t926 + store i32 %t932, ptr %t925 br label %put319 put319: - %t937 = load ptr, ptr %t924 - %t938 = getelementptr inbounds ptr, ptr %t937, i32 %t925 - store ptr @.str10084, ptr %t938 - %t939 = add i32 %t925, 1 - store i32 %t939, ptr %t922 - %t940 = load ptr, ptr %t498 - %t941 = getelementptr inbounds %LSlice, ptr %t940, i32 0, i32 1 - %t942 = getelementptr inbounds %LSlice, ptr %t940, i32 0, i32 2 - %t943 = getelementptr inbounds %LSlice, ptr %t940, i32 0, i32 0 - %t944 = load i32, ptr %t941 - %t945 = load i32, ptr %t942 - %t946 = icmp sge i32 %t944, %t945 - br i1 %t946, label %grow320, label %put321 + %t939 = load ptr, ptr %t926 + %t940 = getelementptr inbounds ptr, ptr %t939, i32 %t927 + store ptr @.str10089, ptr %t940 + %t941 = add i32 %t927, 1 + store i32 %t941, ptr %t924 + %t942 = load ptr, ptr %t498 + %t943 = getelementptr inbounds %LSlice, ptr %t942, i32 0, i32 1 + %t944 = getelementptr inbounds %LSlice, ptr %t942, i32 0, i32 2 + %t945 = getelementptr inbounds %LSlice, ptr %t942, i32 0, i32 0 + %t946 = load i32, ptr %t943 + %t947 = load i32, ptr %t944 + %t948 = icmp sge i32 %t946, %t947 + br i1 %t948, label %grow320, label %put321 grow320: - %t947 = mul i32 %t945, 2 - %t948 = icmp eq i32 %t945, 0 - %t949 = select i1 %t948, i32 8, i32 %t947 - %t950 = getelementptr ptr, ptr null, i32 1 - %t951 = ptrtoint ptr %t950 to i64 - %t952 = zext i32 %t949 to i64 - %t953 = mul i64 %t952, %t951 - %t954 = load ptr, ptr %t943 - %t955 = call ptr @realloc(ptr %t954, i64 %t953) - store ptr %t955, ptr %t943 - store i32 %t949, ptr %t942 + %t949 = mul i32 %t947, 2 + %t950 = icmp eq i32 %t947, 0 + %t951 = select i1 %t950, i32 8, i32 %t949 + %t952 = getelementptr ptr, ptr null, i32 1 + %t953 = ptrtoint ptr %t952 to i64 + %t954 = zext i32 %t951 to i64 + %t955 = mul i64 %t954, %t953 + %t956 = load ptr, ptr %t945 + %t957 = call ptr @realloc(ptr %t956, i64 %t955) + store ptr %t957, ptr %t945 + store i32 %t951, ptr %t944 br label %put321 put321: - %t956 = load ptr, ptr %t943 - %t957 = getelementptr inbounds ptr, ptr %t956, i32 %t944 - store ptr @.str10085, ptr %t957 - %t958 = add i32 %t944, 1 - store i32 %t958, ptr %t941 + %t958 = load ptr, ptr %t945 + %t959 = getelementptr inbounds ptr, ptr %t958, i32 %t946 + store ptr @.str10090, ptr %t959 + %t960 = add i32 %t946, 1 + store i32 %t960, ptr %t943 br label %ifend313 ifend313: - %t959 = load ptr, ptr %t1 - %t960 = call i32 @lp_str_eq(ptr %t959, ptr @.str10086) - %t961 = icmp ne i32 %t960, 0 - br i1 %t961, label %then322, label %ifend324 + %t961 = load ptr, ptr %t1 + %t962 = call i32 @lp_str_eq(ptr %t961, ptr @.str10091) + %t963 = icmp ne i32 %t962, 0 + br i1 %t963, label %then322, label %ifend324 then322: - store ptr @.str10087, ptr %t490 - %t962 = load ptr, ptr %t498 - %t963 = getelementptr inbounds %LSlice, ptr %t962, i32 0, i32 1 - %t964 = getelementptr inbounds %LSlice, ptr %t962, i32 0, i32 2 - %t965 = getelementptr inbounds %LSlice, ptr %t962, i32 0, i32 0 - %t966 = load i32, ptr %t963 - %t967 = load i32, ptr %t964 - %t968 = icmp sge i32 %t966, %t967 - br i1 %t968, label %grow325, label %put326 + store ptr @.str10092, ptr %t490 + %t964 = load ptr, ptr %t498 + %t965 = getelementptr inbounds %LSlice, ptr %t964, i32 0, i32 1 + %t966 = getelementptr inbounds %LSlice, ptr %t964, i32 0, i32 2 + %t967 = getelementptr inbounds %LSlice, ptr %t964, i32 0, i32 0 + %t968 = load i32, ptr %t965 + %t969 = load i32, ptr %t966 + %t970 = icmp sge i32 %t968, %t969 + br i1 %t970, label %grow325, label %put326 grow325: - %t969 = mul i32 %t967, 2 - %t970 = icmp eq i32 %t967, 0 - %t971 = select i1 %t970, i32 8, i32 %t969 - %t972 = getelementptr ptr, ptr null, i32 1 - %t973 = ptrtoint ptr %t972 to i64 - %t974 = zext i32 %t971 to i64 - %t975 = mul i64 %t974, %t973 - %t976 = load ptr, ptr %t965 - %t977 = call ptr @realloc(ptr %t976, i64 %t975) - store ptr %t977, ptr %t965 - store i32 %t971, ptr %t964 + %t971 = mul i32 %t969, 2 + %t972 = icmp eq i32 %t969, 0 + %t973 = select i1 %t972, i32 8, i32 %t971 + %t974 = getelementptr ptr, ptr null, i32 1 + %t975 = ptrtoint ptr %t974 to i64 + %t976 = zext i32 %t973 to i64 + %t977 = mul i64 %t976, %t975 + %t978 = load ptr, ptr %t967 + %t979 = call ptr @realloc(ptr %t978, i64 %t977) + store ptr %t979, ptr %t967 + store i32 %t973, ptr %t966 br label %put326 put326: - %t978 = load ptr, ptr %t965 - %t979 = getelementptr inbounds ptr, ptr %t978, i32 %t966 - store ptr @.str10088, ptr %t979 - %t980 = add i32 %t966, 1 - store i32 %t980, ptr %t963 - %t981 = load ptr, ptr %t498 - %t982 = getelementptr inbounds %LSlice, ptr %t981, i32 0, i32 1 - %t983 = getelementptr inbounds %LSlice, ptr %t981, i32 0, i32 2 - %t984 = getelementptr inbounds %LSlice, ptr %t981, i32 0, i32 0 - %t985 = load i32, ptr %t982 - %t986 = load i32, ptr %t983 - %t987 = icmp sge i32 %t985, %t986 - br i1 %t987, label %grow327, label %put328 + %t980 = load ptr, ptr %t967 + %t981 = getelementptr inbounds ptr, ptr %t980, i32 %t968 + store ptr @.str10093, ptr %t981 + %t982 = add i32 %t968, 1 + store i32 %t982, ptr %t965 + %t983 = load ptr, ptr %t498 + %t984 = getelementptr inbounds %LSlice, ptr %t983, i32 0, i32 1 + %t985 = getelementptr inbounds %LSlice, ptr %t983, i32 0, i32 2 + %t986 = getelementptr inbounds %LSlice, ptr %t983, i32 0, i32 0 + %t987 = load i32, ptr %t984 + %t988 = load i32, ptr %t985 + %t989 = icmp sge i32 %t987, %t988 + br i1 %t989, label %grow327, label %put328 grow327: - %t988 = mul i32 %t986, 2 - %t989 = icmp eq i32 %t986, 0 - %t990 = select i1 %t989, i32 8, i32 %t988 - %t991 = getelementptr ptr, ptr null, i32 1 - %t992 = ptrtoint ptr %t991 to i64 - %t993 = zext i32 %t990 to i64 - %t994 = mul i64 %t993, %t992 - %t995 = load ptr, ptr %t984 - %t996 = call ptr @realloc(ptr %t995, i64 %t994) - store ptr %t996, ptr %t984 - store i32 %t990, ptr %t983 + %t990 = mul i32 %t988, 2 + %t991 = icmp eq i32 %t988, 0 + %t992 = select i1 %t991, i32 8, i32 %t990 + %t993 = getelementptr ptr, ptr null, i32 1 + %t994 = ptrtoint ptr %t993 to i64 + %t995 = zext i32 %t992 to i64 + %t996 = mul i64 %t995, %t994 + %t997 = load ptr, ptr %t986 + %t998 = call ptr @realloc(ptr %t997, i64 %t996) + store ptr %t998, ptr %t986 + store i32 %t992, ptr %t985 br label %put328 put328: - %t997 = load ptr, ptr %t984 - %t998 = getelementptr inbounds ptr, ptr %t997, i32 %t985 - store ptr @.str10089, ptr %t998 - %t999 = add i32 %t985, 1 - store i32 %t999, ptr %t982 + %t999 = load ptr, ptr %t986 + %t1000 = getelementptr inbounds ptr, ptr %t999, i32 %t987 + store ptr @.str10094, ptr %t1000 + %t1001 = add i32 %t987, 1 + store i32 %t1001, ptr %t984 br label %ifend324 ifend324: - %t1000 = load ptr, ptr %t1 - %t1001 = call i32 @lp_str_eq(ptr %t1000, ptr @.str10090) - %t1002 = icmp ne i32 %t1001, 0 - br i1 %t1002, label %then329, label %ifend331 + %t1002 = load ptr, ptr %t1 + %t1003 = call i32 @lp_str_eq(ptr %t1002, ptr @.str10095) + %t1004 = icmp ne i32 %t1003, 0 + br i1 %t1004, label %then329, label %ifend331 then329: - store ptr @.str10091, ptr %t490 - %t1003 = load ptr, ptr %t498 - %t1004 = getelementptr inbounds %LSlice, ptr %t1003, i32 0, i32 1 - %t1005 = getelementptr inbounds %LSlice, ptr %t1003, i32 0, i32 2 - %t1006 = getelementptr inbounds %LSlice, ptr %t1003, i32 0, i32 0 - %t1007 = load i32, ptr %t1004 - %t1008 = load i32, ptr %t1005 - %t1009 = icmp sge i32 %t1007, %t1008 - br i1 %t1009, label %grow332, label %put333 + store ptr @.str10096, ptr %t490 + %t1005 = load ptr, ptr %t498 + %t1006 = getelementptr inbounds %LSlice, ptr %t1005, i32 0, i32 1 + %t1007 = getelementptr inbounds %LSlice, ptr %t1005, i32 0, i32 2 + %t1008 = getelementptr inbounds %LSlice, ptr %t1005, i32 0, i32 0 + %t1009 = load i32, ptr %t1006 + %t1010 = load i32, ptr %t1007 + %t1011 = icmp sge i32 %t1009, %t1010 + br i1 %t1011, label %grow332, label %put333 grow332: - %t1010 = mul i32 %t1008, 2 - %t1011 = icmp eq i32 %t1008, 0 - %t1012 = select i1 %t1011, i32 8, i32 %t1010 - %t1013 = getelementptr ptr, ptr null, i32 1 - %t1014 = ptrtoint ptr %t1013 to i64 - %t1015 = zext i32 %t1012 to i64 - %t1016 = mul i64 %t1015, %t1014 - %t1017 = load ptr, ptr %t1006 - %t1018 = call ptr @realloc(ptr %t1017, i64 %t1016) - store ptr %t1018, ptr %t1006 - store i32 %t1012, ptr %t1005 + %t1012 = mul i32 %t1010, 2 + %t1013 = icmp eq i32 %t1010, 0 + %t1014 = select i1 %t1013, i32 8, i32 %t1012 + %t1015 = getelementptr ptr, ptr null, i32 1 + %t1016 = ptrtoint ptr %t1015 to i64 + %t1017 = zext i32 %t1014 to i64 + %t1018 = mul i64 %t1017, %t1016 + %t1019 = load ptr, ptr %t1008 + %t1020 = call ptr @realloc(ptr %t1019, i64 %t1018) + store ptr %t1020, ptr %t1008 + store i32 %t1014, ptr %t1007 br label %put333 put333: - %t1019 = load ptr, ptr %t1006 - %t1020 = getelementptr inbounds ptr, ptr %t1019, i32 %t1007 - store ptr @.str10092, ptr %t1020 - %t1021 = add i32 %t1007, 1 - store i32 %t1021, ptr %t1004 + %t1021 = load ptr, ptr %t1008 + %t1022 = getelementptr inbounds ptr, ptr %t1021, i32 %t1009 + store ptr @.str10097, ptr %t1022 + %t1023 = add i32 %t1009, 1 + store i32 %t1023, ptr %t1006 br label %ifend331 ifend331: - %t1022 = load ptr, ptr %t1 - %t1023 = call i32 @lp_str_eq(ptr %t1022, ptr @.str10093) - %t1024 = icmp ne i32 %t1023, 0 - br i1 %t1024, label %then334, label %ifend336 + %t1024 = load ptr, ptr %t1 + %t1025 = call i32 @lp_str_eq(ptr %t1024, ptr @.str10098) + %t1026 = icmp ne i32 %t1025, 0 + br i1 %t1026, label %then334, label %ifend336 then334: - %t1025 = load ptr, ptr %t2 - %t1026 = getelementptr inbounds %Cmp_Node, ptr %t1025, i32 0, i32 7 - %t1027 = load ptr, ptr %t1026 - %t1028 = getelementptr inbounds %LSlice, ptr %t1027, i32 0, i32 1 - %t1029 = load i32, ptr %t1028 - %t1030 = icmp eq i32 %t1029, 2 - %t1031 = zext i1 %t1030 to i32 - %t1032 = icmp ne i32 %t1031, 0 - br i1 %t1032, label %then337, label %else338 + %t1027 = load ptr, ptr %t2 + %t1028 = getelementptr inbounds %Cmp_Node, ptr %t1027, i32 0, i32 7 + %t1029 = load ptr, ptr %t1028 + %t1030 = getelementptr inbounds %LSlice, ptr %t1029, i32 0, i32 1 + %t1031 = load i32, ptr %t1030 + %t1032 = icmp eq i32 %t1031, 2 + %t1033 = zext i1 %t1032 to i32 + %t1034 = icmp ne i32 %t1033, 0 + br i1 %t1034, label %then337, label %else338 then337: - store ptr @.str10094, ptr %t490 - %t1033 = load ptr, ptr %t498 - %t1034 = getelementptr inbounds %LSlice, ptr %t1033, i32 0, i32 1 - %t1035 = getelementptr inbounds %LSlice, ptr %t1033, i32 0, i32 2 - %t1036 = getelementptr inbounds %LSlice, ptr %t1033, i32 0, i32 0 - %t1037 = load i32, ptr %t1034 - %t1038 = load i32, ptr %t1035 - %t1039 = icmp sge i32 %t1037, %t1038 - br i1 %t1039, label %grow340, label %put341 + store ptr @.str10099, ptr %t490 + %t1035 = load ptr, ptr %t498 + %t1036 = getelementptr inbounds %LSlice, ptr %t1035, i32 0, i32 1 + %t1037 = getelementptr inbounds %LSlice, ptr %t1035, i32 0, i32 2 + %t1038 = getelementptr inbounds %LSlice, ptr %t1035, i32 0, i32 0 + %t1039 = load i32, ptr %t1036 + %t1040 = load i32, ptr %t1037 + %t1041 = icmp sge i32 %t1039, %t1040 + br i1 %t1041, label %grow340, label %put341 grow340: - %t1040 = mul i32 %t1038, 2 - %t1041 = icmp eq i32 %t1038, 0 - %t1042 = select i1 %t1041, i32 8, i32 %t1040 - %t1043 = getelementptr ptr, ptr null, i32 1 - %t1044 = ptrtoint ptr %t1043 to i64 - %t1045 = zext i32 %t1042 to i64 - %t1046 = mul i64 %t1045, %t1044 - %t1047 = load ptr, ptr %t1036 - %t1048 = call ptr @realloc(ptr %t1047, i64 %t1046) - store ptr %t1048, ptr %t1036 - store i32 %t1042, ptr %t1035 + %t1042 = mul i32 %t1040, 2 + %t1043 = icmp eq i32 %t1040, 0 + %t1044 = select i1 %t1043, i32 8, i32 %t1042 + %t1045 = getelementptr ptr, ptr null, i32 1 + %t1046 = ptrtoint ptr %t1045 to i64 + %t1047 = zext i32 %t1044 to i64 + %t1048 = mul i64 %t1047, %t1046 + %t1049 = load ptr, ptr %t1038 + %t1050 = call ptr @realloc(ptr %t1049, i64 %t1048) + store ptr %t1050, ptr %t1038 + store i32 %t1044, ptr %t1037 br label %put341 put341: - %t1049 = load ptr, ptr %t1036 - %t1050 = getelementptr inbounds ptr, ptr %t1049, i32 %t1037 - store ptr @.str10095, ptr %t1050 - %t1051 = add i32 %t1037, 1 - store i32 %t1051, ptr %t1034 - %t1052 = load ptr, ptr %t498 - %t1053 = getelementptr inbounds %LSlice, ptr %t1052, i32 0, i32 1 - %t1054 = getelementptr inbounds %LSlice, ptr %t1052, i32 0, i32 2 - %t1055 = getelementptr inbounds %LSlice, ptr %t1052, i32 0, i32 0 - %t1056 = load i32, ptr %t1053 - %t1057 = load i32, ptr %t1054 - %t1058 = icmp sge i32 %t1056, %t1057 - br i1 %t1058, label %grow342, label %put343 + %t1051 = load ptr, ptr %t1038 + %t1052 = getelementptr inbounds ptr, ptr %t1051, i32 %t1039 + store ptr @.str10100, ptr %t1052 + %t1053 = add i32 %t1039, 1 + store i32 %t1053, ptr %t1036 + %t1054 = load ptr, ptr %t498 + %t1055 = getelementptr inbounds %LSlice, ptr %t1054, i32 0, i32 1 + %t1056 = getelementptr inbounds %LSlice, ptr %t1054, i32 0, i32 2 + %t1057 = getelementptr inbounds %LSlice, ptr %t1054, i32 0, i32 0 + %t1058 = load i32, ptr %t1055 + %t1059 = load i32, ptr %t1056 + %t1060 = icmp sge i32 %t1058, %t1059 + br i1 %t1060, label %grow342, label %put343 grow342: - %t1059 = mul i32 %t1057, 2 - %t1060 = icmp eq i32 %t1057, 0 - %t1061 = select i1 %t1060, i32 8, i32 %t1059 - %t1062 = getelementptr ptr, ptr null, i32 1 - %t1063 = ptrtoint ptr %t1062 to i64 - %t1064 = zext i32 %t1061 to i64 - %t1065 = mul i64 %t1064, %t1063 - %t1066 = load ptr, ptr %t1055 - %t1067 = call ptr @realloc(ptr %t1066, i64 %t1065) - store ptr %t1067, ptr %t1055 - store i32 %t1061, ptr %t1054 + %t1061 = mul i32 %t1059, 2 + %t1062 = icmp eq i32 %t1059, 0 + %t1063 = select i1 %t1062, i32 8, i32 %t1061 + %t1064 = getelementptr ptr, ptr null, i32 1 + %t1065 = ptrtoint ptr %t1064 to i64 + %t1066 = zext i32 %t1063 to i64 + %t1067 = mul i64 %t1066, %t1065 + %t1068 = load ptr, ptr %t1057 + %t1069 = call ptr @realloc(ptr %t1068, i64 %t1067) + store ptr %t1069, ptr %t1057 + store i32 %t1063, ptr %t1056 br label %put343 put343: - %t1068 = load ptr, ptr %t1055 - %t1069 = getelementptr inbounds ptr, ptr %t1068, i32 %t1056 - store ptr @.str10096, ptr %t1069 - %t1070 = add i32 %t1056, 1 - store i32 %t1070, ptr %t1053 + %t1070 = load ptr, ptr %t1057 + %t1071 = getelementptr inbounds ptr, ptr %t1070, i32 %t1058 + store ptr @.str10101, ptr %t1071 + %t1072 = add i32 %t1058, 1 + store i32 %t1072, ptr %t1055 br label %ifend339 else338: - store ptr @.str10097, ptr %t490 - %t1071 = load ptr, ptr %t498 - %t1072 = getelementptr inbounds %LSlice, ptr %t1071, i32 0, i32 1 - %t1073 = getelementptr inbounds %LSlice, ptr %t1071, i32 0, i32 2 - %t1074 = getelementptr inbounds %LSlice, ptr %t1071, i32 0, i32 0 - %t1075 = load i32, ptr %t1072 - %t1076 = load i32, ptr %t1073 - %t1077 = icmp sge i32 %t1075, %t1076 - br i1 %t1077, label %grow344, label %put345 + store ptr @.str10102, ptr %t490 + %t1073 = load ptr, ptr %t498 + %t1074 = getelementptr inbounds %LSlice, ptr %t1073, i32 0, i32 1 + %t1075 = getelementptr inbounds %LSlice, ptr %t1073, i32 0, i32 2 + %t1076 = getelementptr inbounds %LSlice, ptr %t1073, i32 0, i32 0 + %t1077 = load i32, ptr %t1074 + %t1078 = load i32, ptr %t1075 + %t1079 = icmp sge i32 %t1077, %t1078 + br i1 %t1079, label %grow344, label %put345 grow344: - %t1078 = mul i32 %t1076, 2 - %t1079 = icmp eq i32 %t1076, 0 - %t1080 = select i1 %t1079, i32 8, i32 %t1078 - %t1081 = getelementptr ptr, ptr null, i32 1 - %t1082 = ptrtoint ptr %t1081 to i64 - %t1083 = zext i32 %t1080 to i64 - %t1084 = mul i64 %t1083, %t1082 - %t1085 = load ptr, ptr %t1074 - %t1086 = call ptr @realloc(ptr %t1085, i64 %t1084) - store ptr %t1086, ptr %t1074 - store i32 %t1080, ptr %t1073 + %t1080 = mul i32 %t1078, 2 + %t1081 = icmp eq i32 %t1078, 0 + %t1082 = select i1 %t1081, i32 8, i32 %t1080 + %t1083 = getelementptr ptr, ptr null, i32 1 + %t1084 = ptrtoint ptr %t1083 to i64 + %t1085 = zext i32 %t1082 to i64 + %t1086 = mul i64 %t1085, %t1084 + %t1087 = load ptr, ptr %t1076 + %t1088 = call ptr @realloc(ptr %t1087, i64 %t1086) + store ptr %t1088, ptr %t1076 + store i32 %t1082, ptr %t1075 br label %put345 put345: - %t1087 = load ptr, ptr %t1074 - %t1088 = getelementptr inbounds ptr, ptr %t1087, i32 %t1075 - store ptr @.str10098, ptr %t1088 - %t1089 = add i32 %t1075, 1 - store i32 %t1089, ptr %t1072 - %t1090 = load ptr, ptr %t498 - %t1091 = getelementptr inbounds %LSlice, ptr %t1090, i32 0, i32 1 - %t1092 = getelementptr inbounds %LSlice, ptr %t1090, i32 0, i32 2 - %t1093 = getelementptr inbounds %LSlice, ptr %t1090, i32 0, i32 0 - %t1094 = load i32, ptr %t1091 - %t1095 = load i32, ptr %t1092 - %t1096 = icmp sge i32 %t1094, %t1095 - br i1 %t1096, label %grow346, label %put347 + %t1089 = load ptr, ptr %t1076 + %t1090 = getelementptr inbounds ptr, ptr %t1089, i32 %t1077 + store ptr @.str10103, ptr %t1090 + %t1091 = add i32 %t1077, 1 + store i32 %t1091, ptr %t1074 + %t1092 = load ptr, ptr %t498 + %t1093 = getelementptr inbounds %LSlice, ptr %t1092, i32 0, i32 1 + %t1094 = getelementptr inbounds %LSlice, ptr %t1092, i32 0, i32 2 + %t1095 = getelementptr inbounds %LSlice, ptr %t1092, i32 0, i32 0 + %t1096 = load i32, ptr %t1093 + %t1097 = load i32, ptr %t1094 + %t1098 = icmp sge i32 %t1096, %t1097 + br i1 %t1098, label %grow346, label %put347 grow346: - %t1097 = mul i32 %t1095, 2 - %t1098 = icmp eq i32 %t1095, 0 - %t1099 = select i1 %t1098, i32 8, i32 %t1097 - %t1100 = getelementptr ptr, ptr null, i32 1 - %t1101 = ptrtoint ptr %t1100 to i64 - %t1102 = zext i32 %t1099 to i64 - %t1103 = mul i64 %t1102, %t1101 - %t1104 = load ptr, ptr %t1093 - %t1105 = call ptr @realloc(ptr %t1104, i64 %t1103) - store ptr %t1105, ptr %t1093 - store i32 %t1099, ptr %t1092 + %t1099 = mul i32 %t1097, 2 + %t1100 = icmp eq i32 %t1097, 0 + %t1101 = select i1 %t1100, i32 8, i32 %t1099 + %t1102 = getelementptr ptr, ptr null, i32 1 + %t1103 = ptrtoint ptr %t1102 to i64 + %t1104 = zext i32 %t1101 to i64 + %t1105 = mul i64 %t1104, %t1103 + %t1106 = load ptr, ptr %t1095 + %t1107 = call ptr @realloc(ptr %t1106, i64 %t1105) + store ptr %t1107, ptr %t1095 + store i32 %t1101, ptr %t1094 br label %put347 put347: - %t1106 = load ptr, ptr %t1093 - %t1107 = getelementptr inbounds ptr, ptr %t1106, i32 %t1094 - store ptr @.str10099, ptr %t1107 - %t1108 = add i32 %t1094, 1 - store i32 %t1108, ptr %t1091 - %t1109 = load ptr, ptr %t498 - %t1110 = getelementptr inbounds %LSlice, ptr %t1109, i32 0, i32 1 - %t1111 = getelementptr inbounds %LSlice, ptr %t1109, i32 0, i32 2 - %t1112 = getelementptr inbounds %LSlice, ptr %t1109, i32 0, i32 0 - %t1113 = load i32, ptr %t1110 - %t1114 = load i32, ptr %t1111 - %t1115 = icmp sge i32 %t1113, %t1114 - br i1 %t1115, label %grow348, label %put349 + %t1108 = load ptr, ptr %t1095 + %t1109 = getelementptr inbounds ptr, ptr %t1108, i32 %t1096 + store ptr @.str10104, ptr %t1109 + %t1110 = add i32 %t1096, 1 + store i32 %t1110, ptr %t1093 + %t1111 = load ptr, ptr %t498 + %t1112 = getelementptr inbounds %LSlice, ptr %t1111, i32 0, i32 1 + %t1113 = getelementptr inbounds %LSlice, ptr %t1111, i32 0, i32 2 + %t1114 = getelementptr inbounds %LSlice, ptr %t1111, i32 0, i32 0 + %t1115 = load i32, ptr %t1112 + %t1116 = load i32, ptr %t1113 + %t1117 = icmp sge i32 %t1115, %t1116 + br i1 %t1117, label %grow348, label %put349 grow348: - %t1116 = mul i32 %t1114, 2 - %t1117 = icmp eq i32 %t1114, 0 - %t1118 = select i1 %t1117, i32 8, i32 %t1116 - %t1119 = getelementptr ptr, ptr null, i32 1 - %t1120 = ptrtoint ptr %t1119 to i64 - %t1121 = zext i32 %t1118 to i64 - %t1122 = mul i64 %t1121, %t1120 - %t1123 = load ptr, ptr %t1112 - %t1124 = call ptr @realloc(ptr %t1123, i64 %t1122) - store ptr %t1124, ptr %t1112 - store i32 %t1118, ptr %t1111 + %t1118 = mul i32 %t1116, 2 + %t1119 = icmp eq i32 %t1116, 0 + %t1120 = select i1 %t1119, i32 8, i32 %t1118 + %t1121 = getelementptr ptr, ptr null, i32 1 + %t1122 = ptrtoint ptr %t1121 to i64 + %t1123 = zext i32 %t1120 to i64 + %t1124 = mul i64 %t1123, %t1122 + %t1125 = load ptr, ptr %t1114 + %t1126 = call ptr @realloc(ptr %t1125, i64 %t1124) + store ptr %t1126, ptr %t1114 + store i32 %t1120, ptr %t1113 br label %put349 put349: - %t1125 = load ptr, ptr %t1112 - %t1126 = getelementptr inbounds ptr, ptr %t1125, i32 %t1113 - store ptr @.str10100, ptr %t1126 - %t1127 = add i32 %t1113, 1 - store i32 %t1127, ptr %t1110 - %t1128 = load ptr, ptr %t498 - %t1129 = getelementptr inbounds %LSlice, ptr %t1128, i32 0, i32 1 - %t1130 = getelementptr inbounds %LSlice, ptr %t1128, i32 0, i32 2 - %t1131 = getelementptr inbounds %LSlice, ptr %t1128, i32 0, i32 0 - %t1132 = load i32, ptr %t1129 - %t1133 = load i32, ptr %t1130 - %t1134 = icmp sge i32 %t1132, %t1133 - br i1 %t1134, label %grow350, label %put351 + %t1127 = load ptr, ptr %t1114 + %t1128 = getelementptr inbounds ptr, ptr %t1127, i32 %t1115 + store ptr @.str10105, ptr %t1128 + %t1129 = add i32 %t1115, 1 + store i32 %t1129, ptr %t1112 + %t1130 = load ptr, ptr %t498 + %t1131 = getelementptr inbounds %LSlice, ptr %t1130, i32 0, i32 1 + %t1132 = getelementptr inbounds %LSlice, ptr %t1130, i32 0, i32 2 + %t1133 = getelementptr inbounds %LSlice, ptr %t1130, i32 0, i32 0 + %t1134 = load i32, ptr %t1131 + %t1135 = load i32, ptr %t1132 + %t1136 = icmp sge i32 %t1134, %t1135 + br i1 %t1136, label %grow350, label %put351 grow350: - %t1135 = mul i32 %t1133, 2 - %t1136 = icmp eq i32 %t1133, 0 - %t1137 = select i1 %t1136, i32 8, i32 %t1135 - %t1138 = getelementptr ptr, ptr null, i32 1 - %t1139 = ptrtoint ptr %t1138 to i64 - %t1140 = zext i32 %t1137 to i64 - %t1141 = mul i64 %t1140, %t1139 - %t1142 = load ptr, ptr %t1131 - %t1143 = call ptr @realloc(ptr %t1142, i64 %t1141) - store ptr %t1143, ptr %t1131 - store i32 %t1137, ptr %t1130 + %t1137 = mul i32 %t1135, 2 + %t1138 = icmp eq i32 %t1135, 0 + %t1139 = select i1 %t1138, i32 8, i32 %t1137 + %t1140 = getelementptr ptr, ptr null, i32 1 + %t1141 = ptrtoint ptr %t1140 to i64 + %t1142 = zext i32 %t1139 to i64 + %t1143 = mul i64 %t1142, %t1141 + %t1144 = load ptr, ptr %t1133 + %t1145 = call ptr @realloc(ptr %t1144, i64 %t1143) + store ptr %t1145, ptr %t1133 + store i32 %t1139, ptr %t1132 br label %put351 put351: - %t1144 = load ptr, ptr %t1131 - %t1145 = getelementptr inbounds ptr, ptr %t1144, i32 %t1132 - store ptr @.str10101, ptr %t1145 - %t1146 = add i32 %t1132, 1 - store i32 %t1146, ptr %t1129 + %t1146 = load ptr, ptr %t1133 + %t1147 = getelementptr inbounds ptr, ptr %t1146, i32 %t1134 + store ptr @.str10106, ptr %t1147 + %t1148 = add i32 %t1134, 1 + store i32 %t1148, ptr %t1131 br label %ifend339 ifend339: br label %ifend336 ifend336: br label %ifend310 ifend310: - %t1148 = load ptr, ptr %t0 - %t1149 = call i32 @lp_str_eq(ptr %t1148, ptr @.str10102) - %t1150 = icmp ne i32 %t1149, 0 - %t1151 = zext i1 %t1150 to i32 - store i32 %t1151, ptr %t1147 - br i1 %t1150, label %sc352, label %scend353 + %t1150 = load ptr, ptr %t0 + %t1151 = call i32 @lp_str_eq(ptr %t1150, ptr @.str10107) + %t1152 = icmp ne i32 %t1151, 0 + %t1153 = zext i1 %t1152 to i32 + store i32 %t1153, ptr %t1149 + br i1 %t1152, label %sc352, label %scend353 sc352: - %t1152 = load ptr, ptr %t490 - %t1153 = icmp eq ptr %t1152, null - %t1154 = zext i1 %t1153 to i32 - %t1155 = icmp ne i32 %t1154, 0 + %t1154 = load ptr, ptr %t490 + %t1155 = icmp eq ptr %t1154, null %t1156 = zext i1 %t1155 to i32 - store i32 %t1156, ptr %t1147 + %t1157 = icmp ne i32 %t1156, 0 + %t1158 = zext i1 %t1157 to i32 + store i32 %t1158, ptr %t1149 br label %scend353 scend353: - %t1157 = load i32, ptr %t1147 - %t1158 = icmp ne i32 %t1157, 0 - br i1 %t1158, label %then354, label %ifend356 + %t1159 = load i32, ptr %t1149 + %t1160 = icmp ne i32 %t1159, 0 + br i1 %t1160, label %then354, label %ifend356 then354: - %t1159 = load ptr, ptr %t1 - %t1160 = call ptr @lp_str_concat(ptr @.str10103, ptr %t1159) - store ptr %t1160, ptr %t490 - %t1161 = load ptr, ptr %t490 - %t1162 = call ptr @fn_find_fn(ptr %t1161) - store ptr %t1162, ptr %t1163 - %t1164 = load ptr, ptr %t1163 - %t1165 = icmp eq ptr %t1164, null - %t1166 = zext i1 %t1165 to i32 - %t1167 = icmp ne i32 %t1166, 0 - br i1 %t1167, label %then357, label %ifend359 + %t1161 = load ptr, ptr %t1 + %t1162 = call ptr @lp_str_concat(ptr @.str10108, ptr %t1161) + store ptr %t1162, ptr %t490 + %t1163 = load ptr, ptr %t490 + %t1164 = call ptr @fn_find_fn(ptr %t1163) + store ptr %t1164, ptr %t1165 + %t1166 = load ptr, ptr %t1165 + %t1167 = icmp eq ptr %t1166, null + %t1168 = zext i1 %t1167 to i32 + %t1169 = icmp ne i32 %t1168, 0 + br i1 %t1169, label %then357, label %ifend359 then357: - %t1168 = load ptr, ptr %t490 - %t1169 = call ptr @fn_find_extern(ptr %t1168) - store ptr %t1169, ptr %t1163 + %t1170 = load ptr, ptr %t490 + %t1171 = call ptr @fn_find_extern(ptr %t1170) + store ptr %t1171, ptr %t1165 br label %ifend359 ifend359: - %t1170 = load ptr, ptr %t1163 - %t1171 = icmp ne ptr %t1170, null - %t1172 = zext i1 %t1171 to i32 - %t1173 = icmp ne i32 %t1172, 0 - br i1 %t1173, label %then360, label %ifend362 + %t1172 = load ptr, ptr %t1165 + %t1173 = icmp ne ptr %t1172, null + %t1174 = zext i1 %t1173 to i32 + %t1175 = icmp ne i32 %t1174, 0 + br i1 %t1175, label %then360, label %ifend362 then360: - %t1174 = load ptr, ptr %t1163 - %t1175 = call ptr @fn_param_labels(ptr %t1174) - store ptr %t1175, ptr %t1176 - store i32 0, ptr %t1177 - %t1178 = load ptr, ptr %t1163 - %t1179 = getelementptr inbounds %Cmp_Node, ptr %t1178, i32 0, i32 0 - %t1180 = load i32, ptr %t1179 - %t1181 = icmp eq i32 %t1180, 4 - %t1182 = zext i1 %t1181 to i32 - %t1183 = icmp ne i32 %t1182, 0 - br i1 %t1183, label %then363, label %ifend365 + %t1176 = load ptr, ptr %t1165 + %t1177 = call ptr @fn_param_labels(ptr %t1176) + store ptr %t1177, ptr %t1178 + store i32 0, ptr %t1179 + %t1180 = load ptr, ptr %t1165 + %t1181 = getelementptr inbounds %Cmp_Node, ptr %t1180, i32 0, i32 0 + %t1182 = load i32, ptr %t1181 + %t1183 = icmp eq i32 %t1182, 4 + %t1184 = zext i1 %t1183 to i32 + %t1185 = icmp ne i32 %t1184, 0 + br i1 %t1185, label %then363, label %ifend365 then363: - %t1184 = load ptr, ptr %t1163 - store ptr %t1184, ptr %t491 - %t1185 = load ptr, ptr %t1163 - %t1186 = call i32 @fn_state_lead(ptr %t1185) - store i32 %t1186, ptr %t1177 + %t1186 = load ptr, ptr %t1165 + store ptr %t1186, ptr %t491 + %t1187 = load ptr, ptr %t1165 + %t1188 = call i32 @fn_state_lead(ptr %t1187) + store i32 %t1188, ptr %t1179 br label %ifend365 ifend365: br label %wcond366 wcond366: - %t1187 = load i32, ptr %t1177 - %t1188 = load ptr, ptr %t1176 - %t1189 = getelementptr inbounds %LSlice, ptr %t1188, i32 0, i32 1 - %t1190 = load i32, ptr %t1189 - %t1191 = icmp slt i32 %t1187, %t1190 - %t1192 = zext i1 %t1191 to i32 - %t1193 = icmp ne i32 %t1192, 0 - br i1 %t1193, label %wbody367, label %wend368 + %t1189 = load i32, ptr %t1179 + %t1190 = load ptr, ptr %t1178 + %t1191 = getelementptr inbounds %LSlice, ptr %t1190, i32 0, i32 1 + %t1192 = load i32, ptr %t1191 + %t1193 = icmp slt i32 %t1189, %t1192 + %t1194 = zext i1 %t1193 to i32 + %t1195 = icmp ne i32 %t1194, 0 + br i1 %t1195, label %wbody367, label %wend368 wbody367: - %t1194 = load ptr, ptr %t498 - %t1195 = load ptr, ptr %t1176 - %t1196 = load i32, ptr %t1177 - %t1197 = getelementptr inbounds %LSlice, ptr %t1195, i32 0, i32 0 - %t1198 = load ptr, ptr %t1197 - %t1199 = getelementptr inbounds %LSlice, ptr %t1195, i32 0, i32 1 - %t1200 = load i32, ptr %t1199 - %t1201 = icmp ult i32 %t1196, %t1200 - br i1 %t1201, label %ixok369, label %ixbad370 + %t1196 = load ptr, ptr %t498 + %t1197 = load ptr, ptr %t1178 + %t1198 = load i32, ptr %t1179 + %t1199 = getelementptr inbounds %LSlice, ptr %t1197, i32 0, i32 0 + %t1200 = load ptr, ptr %t1199 + %t1201 = getelementptr inbounds %LSlice, ptr %t1197, i32 0, i32 1 + %t1202 = load i32, ptr %t1201 + %t1203 = icmp ult i32 %t1198, %t1202 + br i1 %t1203, label %ixok369, label %ixbad370 ixbad370: - %t1202 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1202, ptr @.fmt_bounds, ptr @.str10104, i32 %t1196, i32 %t1200) + %t1204 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t1204, ptr @.fmt_bounds, ptr @.str10109, i32 %t1198, i32 %t1202) call void @exit(i32 1) unreachable ixok369: - %t1203 = getelementptr inbounds ptr, ptr %t1198, i32 %t1196 - %t1204 = load ptr, ptr %t1203 - %t1205 = getelementptr inbounds %LSlice, ptr %t1194, i32 0, i32 1 - %t1206 = getelementptr inbounds %LSlice, ptr %t1194, i32 0, i32 2 - %t1207 = getelementptr inbounds %LSlice, ptr %t1194, i32 0, i32 0 - %t1208 = load i32, ptr %t1205 - %t1209 = load i32, ptr %t1206 - %t1210 = icmp sge i32 %t1208, %t1209 - br i1 %t1210, label %grow371, label %put372 + %t1205 = getelementptr inbounds ptr, ptr %t1200, i32 %t1198 + %t1206 = load ptr, ptr %t1205 + %t1207 = getelementptr inbounds %LSlice, ptr %t1196, i32 0, i32 1 + %t1208 = getelementptr inbounds %LSlice, ptr %t1196, i32 0, i32 2 + %t1209 = getelementptr inbounds %LSlice, ptr %t1196, i32 0, i32 0 + %t1210 = load i32, ptr %t1207 + %t1211 = load i32, ptr %t1208 + %t1212 = icmp sge i32 %t1210, %t1211 + br i1 %t1212, label %grow371, label %put372 grow371: - %t1211 = mul i32 %t1209, 2 - %t1212 = icmp eq i32 %t1209, 0 - %t1213 = select i1 %t1212, i32 8, i32 %t1211 - %t1214 = getelementptr ptr, ptr null, i32 1 - %t1215 = ptrtoint ptr %t1214 to i64 - %t1216 = zext i32 %t1213 to i64 - %t1217 = mul i64 %t1216, %t1215 - %t1218 = load ptr, ptr %t1207 - %t1219 = call ptr @realloc(ptr %t1218, i64 %t1217) - store ptr %t1219, ptr %t1207 - store i32 %t1213, ptr %t1206 + %t1213 = mul i32 %t1211, 2 + %t1214 = icmp eq i32 %t1211, 0 + %t1215 = select i1 %t1214, i32 8, i32 %t1213 + %t1216 = getelementptr ptr, ptr null, i32 1 + %t1217 = ptrtoint ptr %t1216 to i64 + %t1218 = zext i32 %t1215 to i64 + %t1219 = mul i64 %t1218, %t1217 + %t1220 = load ptr, ptr %t1209 + %t1221 = call ptr @realloc(ptr %t1220, i64 %t1219) + store ptr %t1221, ptr %t1209 + store i32 %t1215, ptr %t1208 br label %put372 put372: - %t1220 = load ptr, ptr %t1207 - %t1221 = getelementptr inbounds ptr, ptr %t1220, i32 %t1208 - store ptr %t1204, ptr %t1221 - %t1222 = add i32 %t1208, 1 - store i32 %t1222, ptr %t1205 - %t1223 = load i32, ptr %t1177 - %t1224 = add i32 %t1223, 1 - store i32 %t1224, ptr %t1177 + %t1222 = load ptr, ptr %t1209 + %t1223 = getelementptr inbounds ptr, ptr %t1222, i32 %t1210 + store ptr %t1206, ptr %t1223 + %t1224 = add i32 %t1210, 1 + store i32 %t1224, ptr %t1207 + %t1225 = load i32, ptr %t1179 + %t1226 = add i32 %t1225, 1 + store i32 %t1226, ptr %t1179 br label %wcond366 wend368: br label %ifend362 ifend362: br label %ifend356 ifend356: - %t1226 = load ptr, ptr %t0 - %t1227 = call i32 @lp_str_eq(ptr %t1226, ptr @.str10105) - %t1228 = icmp ne i32 %t1227, 0 - %t1229 = zext i1 %t1228 to i32 - store i32 %t1229, ptr %t1225 - br i1 %t1228, label %sc373, label %scend374 + %t1228 = load ptr, ptr %t0 + %t1229 = call i32 @lp_str_eq(ptr %t1228, ptr @.str10110) + %t1230 = icmp ne i32 %t1229, 0 + %t1231 = zext i1 %t1230 to i32 + store i32 %t1231, ptr %t1227 + br i1 %t1230, label %sc373, label %scend374 sc373: - %t1230 = load ptr, ptr %t490 - %t1231 = icmp eq ptr %t1230, null - %t1232 = zext i1 %t1231 to i32 - %t1233 = icmp ne i32 %t1232, 0 + %t1232 = load ptr, ptr %t490 + %t1233 = icmp eq ptr %t1232, null %t1234 = zext i1 %t1233 to i32 - store i32 %t1234, ptr %t1225 + %t1235 = icmp ne i32 %t1234, 0 + %t1236 = zext i1 %t1235 to i32 + store i32 %t1236, ptr %t1227 br label %scend374 scend374: - %t1235 = load i32, ptr %t1225 - %t1236 = icmp ne i32 %t1235, 0 - br i1 %t1236, label %then375, label %ifend377 + %t1237 = load i32, ptr %t1227 + %t1238 = icmp ne i32 %t1237, 0 + br i1 %t1238, label %then375, label %ifend377 then375: - %t1237 = load ptr, ptr %t1 - %t1238 = call ptr @lp_str_concat(ptr @.str10106, ptr %t1237) - store ptr %t1238, ptr %t490 - %t1239 = load ptr, ptr %t490 - %t1240 = call ptr @fn_find_fn(ptr %t1239) - store ptr %t1240, ptr %t1241 - %t1242 = load ptr, ptr %t1241 - %t1243 = icmp eq ptr %t1242, null - %t1244 = zext i1 %t1243 to i32 - %t1245 = icmp ne i32 %t1244, 0 - br i1 %t1245, label %then378, label %ifend380 + %t1239 = load ptr, ptr %t1 + %t1240 = call ptr @lp_str_concat(ptr @.str10111, ptr %t1239) + store ptr %t1240, ptr %t490 + %t1241 = load ptr, ptr %t490 + %t1242 = call ptr @fn_find_fn(ptr %t1241) + store ptr %t1242, ptr %t1243 + %t1244 = load ptr, ptr %t1243 + %t1245 = icmp eq ptr %t1244, null + %t1246 = zext i1 %t1245 to i32 + %t1247 = icmp ne i32 %t1246, 0 + br i1 %t1247, label %then378, label %ifend380 then378: - %t1246 = load ptr, ptr %t490 - %t1247 = call ptr @fn_find_extern(ptr %t1246) - store ptr %t1247, ptr %t1241 + %t1248 = load ptr, ptr %t490 + %t1249 = call ptr @fn_find_extern(ptr %t1248) + store ptr %t1249, ptr %t1243 br label %ifend380 ifend380: - %t1248 = load ptr, ptr %t1241 - %t1249 = icmp ne ptr %t1248, null - %t1250 = zext i1 %t1249 to i32 - %t1251 = icmp ne i32 %t1250, 0 - br i1 %t1251, label %then381, label %ifend383 + %t1250 = load ptr, ptr %t1243 + %t1251 = icmp ne ptr %t1250, null + %t1252 = zext i1 %t1251 to i32 + %t1253 = icmp ne i32 %t1252, 0 + br i1 %t1253, label %then381, label %ifend383 then381: - %t1252 = load ptr, ptr %t1241 - %t1253 = call ptr @fn_param_labels(ptr %t1252) - store ptr %t1253, ptr %t1254 - store i32 0, ptr %t1255 - %t1256 = load ptr, ptr %t1241 - %t1257 = getelementptr inbounds %Cmp_Node, ptr %t1256, i32 0, i32 0 - %t1258 = load i32, ptr %t1257 - %t1259 = icmp eq i32 %t1258, 4 - %t1260 = zext i1 %t1259 to i32 - %t1261 = icmp ne i32 %t1260, 0 - br i1 %t1261, label %then384, label %ifend386 + %t1254 = load ptr, ptr %t1243 + %t1255 = call ptr @fn_param_labels(ptr %t1254) + store ptr %t1255, ptr %t1256 + store i32 0, ptr %t1257 + %t1258 = load ptr, ptr %t1243 + %t1259 = getelementptr inbounds %Cmp_Node, ptr %t1258, i32 0, i32 0 + %t1260 = load i32, ptr %t1259 + %t1261 = icmp eq i32 %t1260, 4 + %t1262 = zext i1 %t1261 to i32 + %t1263 = icmp ne i32 %t1262, 0 + br i1 %t1263, label %then384, label %ifend386 then384: - %t1262 = load ptr, ptr %t1241 - store ptr %t1262, ptr %t491 - %t1263 = load ptr, ptr %t1241 - %t1264 = call i32 @fn_state_lead(ptr %t1263) - store i32 %t1264, ptr %t1255 + %t1264 = load ptr, ptr %t1243 + store ptr %t1264, ptr %t491 + %t1265 = load ptr, ptr %t1243 + %t1266 = call i32 @fn_state_lead(ptr %t1265) + store i32 %t1266, ptr %t1257 br label %ifend386 ifend386: br label %wcond387 wcond387: - %t1265 = load i32, ptr %t1255 - %t1266 = load ptr, ptr %t1254 - %t1267 = getelementptr inbounds %LSlice, ptr %t1266, i32 0, i32 1 - %t1268 = load i32, ptr %t1267 - %t1269 = icmp slt i32 %t1265, %t1268 - %t1270 = zext i1 %t1269 to i32 - %t1271 = icmp ne i32 %t1270, 0 - br i1 %t1271, label %wbody388, label %wend389 + %t1267 = load i32, ptr %t1257 + %t1268 = load ptr, ptr %t1256 + %t1269 = getelementptr inbounds %LSlice, ptr %t1268, i32 0, i32 1 + %t1270 = load i32, ptr %t1269 + %t1271 = icmp slt i32 %t1267, %t1270 + %t1272 = zext i1 %t1271 to i32 + %t1273 = icmp ne i32 %t1272, 0 + br i1 %t1273, label %wbody388, label %wend389 wbody388: - %t1272 = load ptr, ptr %t498 - %t1273 = load ptr, ptr %t1254 - %t1274 = load i32, ptr %t1255 - %t1275 = getelementptr inbounds %LSlice, ptr %t1273, i32 0, i32 0 - %t1276 = load ptr, ptr %t1275 - %t1277 = getelementptr inbounds %LSlice, ptr %t1273, i32 0, i32 1 - %t1278 = load i32, ptr %t1277 - %t1279 = icmp ult i32 %t1274, %t1278 - br i1 %t1279, label %ixok390, label %ixbad391 + %t1274 = load ptr, ptr %t498 + %t1275 = load ptr, ptr %t1256 + %t1276 = load i32, ptr %t1257 + %t1277 = getelementptr inbounds %LSlice, ptr %t1275, i32 0, i32 0 + %t1278 = load ptr, ptr %t1277 + %t1279 = getelementptr inbounds %LSlice, ptr %t1275, i32 0, i32 1 + %t1280 = load i32, ptr %t1279 + %t1281 = icmp ult i32 %t1276, %t1280 + br i1 %t1281, label %ixok390, label %ixbad391 ixbad391: - %t1280 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1280, ptr @.fmt_bounds, ptr @.str10107, i32 %t1274, i32 %t1278) + %t1282 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t1282, ptr @.fmt_bounds, ptr @.str10112, i32 %t1276, i32 %t1280) call void @exit(i32 1) unreachable ixok390: - %t1281 = getelementptr inbounds ptr, ptr %t1276, i32 %t1274 - %t1282 = load ptr, ptr %t1281 - %t1283 = getelementptr inbounds %LSlice, ptr %t1272, i32 0, i32 1 - %t1284 = getelementptr inbounds %LSlice, ptr %t1272, i32 0, i32 2 - %t1285 = getelementptr inbounds %LSlice, ptr %t1272, i32 0, i32 0 - %t1286 = load i32, ptr %t1283 - %t1287 = load i32, ptr %t1284 - %t1288 = icmp sge i32 %t1286, %t1287 - br i1 %t1288, label %grow392, label %put393 + %t1283 = getelementptr inbounds ptr, ptr %t1278, i32 %t1276 + %t1284 = load ptr, ptr %t1283 + %t1285 = getelementptr inbounds %LSlice, ptr %t1274, i32 0, i32 1 + %t1286 = getelementptr inbounds %LSlice, ptr %t1274, i32 0, i32 2 + %t1287 = getelementptr inbounds %LSlice, ptr %t1274, i32 0, i32 0 + %t1288 = load i32, ptr %t1285 + %t1289 = load i32, ptr %t1286 + %t1290 = icmp sge i32 %t1288, %t1289 + br i1 %t1290, label %grow392, label %put393 grow392: - %t1289 = mul i32 %t1287, 2 - %t1290 = icmp eq i32 %t1287, 0 - %t1291 = select i1 %t1290, i32 8, i32 %t1289 - %t1292 = getelementptr ptr, ptr null, i32 1 - %t1293 = ptrtoint ptr %t1292 to i64 - %t1294 = zext i32 %t1291 to i64 - %t1295 = mul i64 %t1294, %t1293 - %t1296 = load ptr, ptr %t1285 - %t1297 = call ptr @realloc(ptr %t1296, i64 %t1295) - store ptr %t1297, ptr %t1285 - store i32 %t1291, ptr %t1284 + %t1291 = mul i32 %t1289, 2 + %t1292 = icmp eq i32 %t1289, 0 + %t1293 = select i1 %t1292, i32 8, i32 %t1291 + %t1294 = getelementptr ptr, ptr null, i32 1 + %t1295 = ptrtoint ptr %t1294 to i64 + %t1296 = zext i32 %t1293 to i64 + %t1297 = mul i64 %t1296, %t1295 + %t1298 = load ptr, ptr %t1287 + %t1299 = call ptr @realloc(ptr %t1298, i64 %t1297) + store ptr %t1299, ptr %t1287 + store i32 %t1293, ptr %t1286 br label %put393 put393: - %t1298 = load ptr, ptr %t1285 - %t1299 = getelementptr inbounds ptr, ptr %t1298, i32 %t1286 - store ptr %t1282, ptr %t1299 - %t1300 = add i32 %t1286, 1 - store i32 %t1300, ptr %t1283 - %t1301 = load i32, ptr %t1255 - %t1302 = add i32 %t1301, 1 - store i32 %t1302, ptr %t1255 + %t1300 = load ptr, ptr %t1287 + %t1301 = getelementptr inbounds ptr, ptr %t1300, i32 %t1288 + store ptr %t1284, ptr %t1301 + %t1302 = add i32 %t1288, 1 + store i32 %t1302, ptr %t1285 + %t1303 = load i32, ptr %t1257 + %t1304 = add i32 %t1303, 1 + store i32 %t1304, ptr %t1257 br label %wcond387 wend389: br label %ifend383 ifend383: br label %ifend377 ifend377: - %t1304 = load ptr, ptr %t490 - %t1305 = icmp eq ptr %t1304, null - %t1306 = zext i1 %t1305 to i32 - %t1307 = icmp ne i32 %t1306, 0 + %t1306 = load ptr, ptr %t490 + %t1307 = icmp eq ptr %t1306, null %t1308 = zext i1 %t1307 to i32 - store i32 %t1308, ptr %t1303 - br i1 %t1307, label %sc394, label %scend395 + %t1309 = icmp ne i32 %t1308, 0 + %t1310 = zext i1 %t1309 to i32 + store i32 %t1310, ptr %t1305 + br i1 %t1309, label %sc394, label %scend395 sc394: - %t1309 = load ptr, ptr %t0 - %t1310 = call i32 @fn_is_registered_namespace(ptr %t1309) - %t1311 = icmp ne i32 %t1310, 0 - %t1312 = zext i1 %t1311 to i32 - store i32 %t1312, ptr %t1303 + %t1311 = load ptr, ptr %t0 + %t1312 = call i32 @fn_is_registered_namespace(ptr %t1311) + %t1313 = icmp ne i32 %t1312, 0 + %t1314 = zext i1 %t1313 to i32 + store i32 %t1314, ptr %t1305 br label %scend395 scend395: - %t1313 = load i32, ptr %t1303 - %t1314 = icmp ne i32 %t1313, 0 - br i1 %t1314, label %then396, label %ifend398 + %t1315 = load i32, ptr %t1305 + %t1316 = icmp ne i32 %t1315, 0 + br i1 %t1316, label %then396, label %ifend398 then396: - %t1315 = load ptr, ptr %t0 - %t1316 = call ptr @fn_ns_lower(ptr %t1315) - %t1317 = call ptr @lp_str_concat(ptr %t1316, ptr @.str10108) - %t1318 = load ptr, ptr %t1 - %t1319 = call ptr @lp_str_concat(ptr %t1317, ptr %t1318) - store ptr %t1319, ptr %t490 - %t1321 = load ptr, ptr %t0 - %t1322 = call i32 @fn_is_ns_block(ptr %t1321) - %t1323 = icmp ne i32 %t1322, 0 - %t1324 = zext i1 %t1323 to i32 - store i32 %t1324, ptr %t1320 - br i1 %t1323, label %sc399, label %scend400 + %t1317 = load ptr, ptr %t0 + %t1318 = call ptr @fn_ns_lower(ptr %t1317) + %t1319 = call ptr @lp_str_concat(ptr %t1318, ptr @.str10113) + %t1320 = load ptr, ptr %t1 + %t1321 = call ptr @lp_str_concat(ptr %t1319, ptr %t1320) + store ptr %t1321, ptr %t490 + %t1323 = load ptr, ptr %t0 + %t1324 = call i32 @fn_is_ns_block(ptr %t1323) + %t1325 = icmp ne i32 %t1324, 0 + %t1326 = zext i1 %t1325 to i32 + store i32 %t1326, ptr %t1322 + br i1 %t1325, label %sc399, label %scend400 sc399: - %t1325 = load ptr, ptr %t490 - %t1326 = call i32 @fn_ns_export_has(ptr %t1325) - %t1327 = icmp eq i32 %t1326, 0 - %t1328 = zext i1 %t1327 to i32 - %t1329 = icmp ne i32 %t1328, 0 + %t1327 = load ptr, ptr %t490 + %t1328 = call i32 @fn_ns_export_has(ptr %t1327) + %t1329 = icmp eq i32 %t1328, 0 %t1330 = zext i1 %t1329 to i32 - store i32 %t1330, ptr %t1320 + %t1331 = icmp ne i32 %t1330, 0 + %t1332 = zext i1 %t1331 to i32 + store i32 %t1332, ptr %t1322 br label %scend400 scend400: - %t1331 = load i32, ptr %t1320 - %t1332 = icmp ne i32 %t1331, 0 - br i1 %t1332, label %then401, label %ifend403 + %t1333 = load i32, ptr %t1322 + %t1334 = icmp ne i32 %t1333, 0 + br i1 %t1334, label %then401, label %ifend403 then401: - %t1333 = load ptr, ptr %t0 - %t1334 = call ptr @lp_str_concat(ptr %t1333, ptr @.str10109) - %t1335 = load ptr, ptr %t1 - %t1336 = call ptr @lp_str_concat(ptr %t1334, ptr %t1335) - %t1337 = call ptr @lp_str_concat(ptr %t1336, ptr @.str10110) - %t1338 = load ptr, ptr %t0 - %t1339 = call ptr @lp_str_concat(ptr %t1337, ptr %t1338) - call void @fn_perr(ptr %t1339) + %t1335 = load ptr, ptr %t0 + %t1336 = call ptr @lp_str_concat(ptr %t1335, ptr @.str10114) + %t1337 = load ptr, ptr %t1 + %t1338 = call ptr @lp_str_concat(ptr %t1336, ptr %t1337) + %t1339 = call ptr @lp_str_concat(ptr %t1338, ptr @.str10115) + %t1340 = load ptr, ptr %t0 + %t1341 = call ptr @lp_str_concat(ptr %t1339, ptr %t1340) + call void @fn_perr(ptr %t1341) br label %ifend403 ifend403: - %t1340 = load ptr, ptr %t490 - %t1341 = call ptr @fn_find_fn(ptr %t1340) - store ptr %t1341, ptr %t491 - %t1342 = load ptr, ptr %t491 - %t1343 = icmp ne ptr %t1342, null - %t1344 = zext i1 %t1343 to i32 - %t1345 = icmp ne i32 %t1344, 0 - br i1 %t1345, label %then404, label %ifend406 + %t1342 = load ptr, ptr %t490 + %t1343 = call ptr @fn_find_fn(ptr %t1342) + store ptr %t1343, ptr %t491 + %t1344 = load ptr, ptr %t491 + %t1345 = icmp ne ptr %t1344, null + %t1346 = zext i1 %t1345 to i32 + %t1347 = icmp ne i32 %t1346, 0 + br i1 %t1347, label %then404, label %ifend406 then404: - %t1346 = load ptr, ptr %t491 - %t1347 = call ptr @fn_param_labels(ptr %t1346) - store ptr %t1347, ptr %t1348 - %t1349 = load ptr, ptr %t491 - %t1350 = call i32 @fn_state_lead(ptr %t1349) - store i32 %t1350, ptr %t1351 + %t1348 = load ptr, ptr %t491 + %t1349 = call ptr @fn_param_labels(ptr %t1348) + store ptr %t1349, ptr %t1350 + %t1351 = load ptr, ptr %t491 + %t1352 = call i32 @fn_state_lead(ptr %t1351) + store i32 %t1352, ptr %t1353 br label %wcond407 wcond407: - %t1352 = load i32, ptr %t1351 - %t1353 = load ptr, ptr %t1348 - %t1354 = getelementptr inbounds %LSlice, ptr %t1353, i32 0, i32 1 - %t1355 = load i32, ptr %t1354 - %t1356 = icmp slt i32 %t1352, %t1355 - %t1357 = zext i1 %t1356 to i32 - %t1358 = icmp ne i32 %t1357, 0 - br i1 %t1358, label %wbody408, label %wend409 + %t1354 = load i32, ptr %t1353 + %t1355 = load ptr, ptr %t1350 + %t1356 = getelementptr inbounds %LSlice, ptr %t1355, i32 0, i32 1 + %t1357 = load i32, ptr %t1356 + %t1358 = icmp slt i32 %t1354, %t1357 + %t1359 = zext i1 %t1358 to i32 + %t1360 = icmp ne i32 %t1359, 0 + br i1 %t1360, label %wbody408, label %wend409 wbody408: - %t1359 = load ptr, ptr %t498 - %t1360 = load ptr, ptr %t1348 - %t1361 = load i32, ptr %t1351 - %t1362 = getelementptr inbounds %LSlice, ptr %t1360, i32 0, i32 0 - %t1363 = load ptr, ptr %t1362 - %t1364 = getelementptr inbounds %LSlice, ptr %t1360, i32 0, i32 1 - %t1365 = load i32, ptr %t1364 - %t1366 = icmp ult i32 %t1361, %t1365 - br i1 %t1366, label %ixok410, label %ixbad411 + %t1361 = load ptr, ptr %t498 + %t1362 = load ptr, ptr %t1350 + %t1363 = load i32, ptr %t1353 + %t1364 = getelementptr inbounds %LSlice, ptr %t1362, i32 0, i32 0 + %t1365 = load ptr, ptr %t1364 + %t1366 = getelementptr inbounds %LSlice, ptr %t1362, i32 0, i32 1 + %t1367 = load i32, ptr %t1366 + %t1368 = icmp ult i32 %t1363, %t1367 + br i1 %t1368, label %ixok410, label %ixbad411 ixbad411: - %t1367 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1367, ptr @.fmt_bounds, ptr @.str10111, i32 %t1361, i32 %t1365) + %t1369 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t1369, ptr @.fmt_bounds, ptr @.str10116, i32 %t1363, i32 %t1367) call void @exit(i32 1) unreachable ixok410: - %t1368 = getelementptr inbounds ptr, ptr %t1363, i32 %t1361 - %t1369 = load ptr, ptr %t1368 - %t1370 = getelementptr inbounds %LSlice, ptr %t1359, i32 0, i32 1 - %t1371 = getelementptr inbounds %LSlice, ptr %t1359, i32 0, i32 2 - %t1372 = getelementptr inbounds %LSlice, ptr %t1359, i32 0, i32 0 - %t1373 = load i32, ptr %t1370 - %t1374 = load i32, ptr %t1371 - %t1375 = icmp sge i32 %t1373, %t1374 - br i1 %t1375, label %grow412, label %put413 + %t1370 = getelementptr inbounds ptr, ptr %t1365, i32 %t1363 + %t1371 = load ptr, ptr %t1370 + %t1372 = getelementptr inbounds %LSlice, ptr %t1361, i32 0, i32 1 + %t1373 = getelementptr inbounds %LSlice, ptr %t1361, i32 0, i32 2 + %t1374 = getelementptr inbounds %LSlice, ptr %t1361, i32 0, i32 0 + %t1375 = load i32, ptr %t1372 + %t1376 = load i32, ptr %t1373 + %t1377 = icmp sge i32 %t1375, %t1376 + br i1 %t1377, label %grow412, label %put413 grow412: - %t1376 = mul i32 %t1374, 2 - %t1377 = icmp eq i32 %t1374, 0 - %t1378 = select i1 %t1377, i32 8, i32 %t1376 - %t1379 = getelementptr ptr, ptr null, i32 1 - %t1380 = ptrtoint ptr %t1379 to i64 - %t1381 = zext i32 %t1378 to i64 - %t1382 = mul i64 %t1381, %t1380 - %t1383 = load ptr, ptr %t1372 - %t1384 = call ptr @realloc(ptr %t1383, i64 %t1382) - store ptr %t1384, ptr %t1372 - store i32 %t1378, ptr %t1371 + %t1378 = mul i32 %t1376, 2 + %t1379 = icmp eq i32 %t1376, 0 + %t1380 = select i1 %t1379, i32 8, i32 %t1378 + %t1381 = getelementptr ptr, ptr null, i32 1 + %t1382 = ptrtoint ptr %t1381 to i64 + %t1383 = zext i32 %t1380 to i64 + %t1384 = mul i64 %t1383, %t1382 + %t1385 = load ptr, ptr %t1374 + %t1386 = call ptr @realloc(ptr %t1385, i64 %t1384) + store ptr %t1386, ptr %t1374 + store i32 %t1380, ptr %t1373 br label %put413 put413: - %t1385 = load ptr, ptr %t1372 - %t1386 = getelementptr inbounds ptr, ptr %t1385, i32 %t1373 - store ptr %t1369, ptr %t1386 - %t1387 = add i32 %t1373, 1 - store i32 %t1387, ptr %t1370 - %t1388 = load i32, ptr %t1351 - %t1389 = add i32 %t1388, 1 - store i32 %t1389, ptr %t1351 + %t1387 = load ptr, ptr %t1374 + %t1388 = getelementptr inbounds ptr, ptr %t1387, i32 %t1375 + store ptr %t1371, ptr %t1388 + %t1389 = add i32 %t1375, 1 + store i32 %t1389, ptr %t1372 + %t1390 = load i32, ptr %t1353 + %t1391 = add i32 %t1390, 1 + store i32 %t1391, ptr %t1353 br label %wcond407 wend409: br label %ifend406 ifend406: br label %ifend398 ifend398: - %t1390 = load ptr, ptr %t490 - %t1391 = icmp eq ptr %t1390, null - %t1392 = zext i1 %t1391 to i32 - %t1393 = icmp ne i32 %t1392, 0 - br i1 %t1393, label %then414, label %ifend416 + %t1392 = load ptr, ptr %t490 + %t1393 = icmp eq ptr %t1392, null + %t1394 = zext i1 %t1393 to i32 + %t1395 = icmp ne i32 %t1394, 0 + br i1 %t1395, label %then414, label %ifend416 then414: - %t1394 = load ptr, ptr %t0 - %t1395 = call ptr @lp_str_concat(ptr @.str10112, ptr %t1394) - %t1396 = call ptr @lp_str_concat(ptr %t1395, ptr @.str10113) - %t1397 = load ptr, ptr %t1 - %t1398 = call ptr @lp_str_concat(ptr %t1396, ptr %t1397) - call void @fn_perr(ptr %t1398) + %t1396 = load ptr, ptr %t0 + %t1397 = call ptr @lp_str_concat(ptr @.str10117, ptr %t1396) + %t1398 = call ptr @lp_str_concat(ptr %t1397, ptr @.str10118) + %t1399 = load ptr, ptr %t1 + %t1400 = call ptr @lp_str_concat(ptr %t1398, ptr %t1399) + call void @fn_perr(ptr %t1400) br label %ifend416 ifend416: - %t1399 = load ptr, ptr %t2 - %t1400 = load ptr, ptr %t498 - call void @fn_reorder_named(ptr %t1399, ptr %t1400) %t1401 = load ptr, ptr %t2 - %t1402 = load ptr, ptr %t491 - call void @fn_state_inject(ptr %t1401, ptr %t1402) - %t1403 = call ptr @fn_node(i32 33) - store ptr %t1403, ptr %t1404 - %t1405 = load ptr, ptr %t1404 - %t1406 = getelementptr inbounds %Cmp_Node, ptr %t1405, i32 0, i32 1 - %t1407 = load ptr, ptr %t490 - store ptr %t1407, ptr %t1406 - %t1408 = load ptr, ptr %t2 - %t1409 = getelementptr inbounds %Cmp_Node, ptr %t1408, i32 0, i32 4 - %t1410 = load ptr, ptr %t1404 - store ptr %t1410, ptr %t1409 - %t1411 = load ptr, ptr %t2 - %t1412 = call ptr @fn_emit_call(ptr %t1411) - store ptr %t1412, ptr %retval + %t1402 = load ptr, ptr %t498 + call void @fn_reorder_named(ptr %t1401, ptr %t1402) + %t1403 = load ptr, ptr %t2 + %t1404 = load ptr, ptr %t491 + call void @fn_state_inject(ptr %t1403, ptr %t1404) + %t1405 = call ptr @fn_node(i32 33) + store ptr %t1405, ptr %t1406 + %t1407 = load ptr, ptr %t1406 + %t1408 = getelementptr inbounds %Cmp_Node, ptr %t1407, i32 0, i32 1 + %t1409 = load ptr, ptr %t490 + store ptr %t1409, ptr %t1408 + %t1410 = load ptr, ptr %t2 + %t1411 = getelementptr inbounds %Cmp_Node, ptr %t1410, i32 0, i32 4 + %t1412 = load ptr, ptr %t1406 + store ptr %t1412, ptr %t1411 + %t1413 = load ptr, ptr %t2 + %t1414 = call ptr @fn_emit_call(ptr %t1413) + store ptr %t1414, ptr %retval br label %ret ret: - %t1413 = load ptr, ptr %retval - ret ptr %t1413 + %t1415 = load ptr, ptr %retval + ret ptr %t1415 } define ptr @fn_emit_variant_new(ptr %arg_en, i32 %arg_ord, ptr %arg_args) { @@ -133969,7 +134131,7 @@ entry: br i1 %t11, label %ixok0, label %ixbad1 ixbad1: %t12 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t12, ptr @.fmt_bounds, ptr @.str10114, i32 %t6, i32 %t10) + call i32 (ptr, ptr, ...) @fprintf(ptr %t12, ptr @.fmt_bounds, ptr @.str10119, i32 %t6, i32 %t10) call void @exit(i32 1) unreachable ixok0: @@ -133994,12 +134156,12 @@ then2: %t29 = load ptr, ptr %t15 %t30 = getelementptr inbounds %Cmp_Node, ptr %t29, i32 0, i32 1 %t31 = load ptr, ptr %t30 - %t32 = call ptr @lp_str_concat(ptr @.str10115, ptr %t31) - %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str10116) + %t32 = call ptr @lp_str_concat(ptr @.str10120, ptr %t31) + %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str10121) %t34 = load i32, ptr %t21 %t35 = call ptr @fn_itoa(i32 %t34) %t36 = call ptr @lp_str_concat(ptr %t33, ptr %t35) - %t37 = call ptr @lp_str_concat(ptr %t36, ptr @.str10117) + %t37 = call ptr @lp_str_concat(ptr %t36, ptr @.str10122) %t38 = load ptr, ptr %t2 %t39 = getelementptr inbounds %LSlice, ptr %t38, i32 0, i32 1 %t40 = load i32, ptr %t39 @@ -134011,18 +134173,18 @@ ifend4: %t43 = load ptr, ptr %t0 %t44 = call i32 @fn_enum_box_size(ptr %t43) %t45 = call ptr @fn_itoa(i32 %t44) - %t46 = call ptr @lp_str_concat(ptr @.str10118, ptr %t45) - %t47 = call ptr @lp_str_concat(ptr %t46, ptr @.str10119) + %t46 = call ptr @lp_str_concat(ptr @.str10123, ptr %t45) + %t47 = call ptr @lp_str_concat(ptr %t46, ptr @.str10124) %t48 = call ptr @fn_emit_bind(ptr %t47) store ptr %t48, ptr %t49 - call void @fn_emit(ptr @.str10120) + call void @fn_emit(ptr @.str10125) %t50 = load i32, ptr %t1 %t51 = call ptr @fn_itoa(i32 %t50) call void @fn_emit(ptr %t51) - call void @fn_emit(ptr @.str10121) + call void @fn_emit(ptr @.str10126) %t52 = load ptr, ptr %t49 call void @fn_emit(ptr %t52) - call void @fn_emit(ptr @.str10122) + call void @fn_emit(ptr @.str10127) store i32 0, ptr %t53 br label %wcond5 wcond5: @@ -134045,7 +134207,7 @@ wbody6: br i1 %t67, label %ixok8, label %ixbad9 ixbad9: %t68 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t68, ptr @.fmt_bounds, ptr @.str10123, i32 %t62, i32 %t66) + call i32 (ptr, ptr, ...) @fprintf(ptr %t68, ptr @.fmt_bounds, ptr @.str10128, i32 %t62, i32 %t66) call void @exit(i32 1) unreachable ixok8: @@ -134064,7 +134226,7 @@ ixok8: br i1 %t80, label %ixok10, label %ixbad11 ixbad11: %t81 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t81, ptr @.fmt_bounds, ptr @.str10124, i32 %t75, i32 %t79) + call i32 (ptr, ptr, ...) @fprintf(ptr %t81, ptr @.fmt_bounds, ptr @.str10129, i32 %t75, i32 %t79) call void @exit(i32 1) unreachable ixok10: @@ -134078,30 +134240,30 @@ ixok10: store ptr %t88, ptr %t89 %t90 = call ptr @fn_nreg() store ptr %t90, ptr %t91 - call void @fn_emit(ptr @.str10125) + call void @fn_emit(ptr @.str10130) %t92 = load ptr, ptr %t91 call void @fn_emit(ptr %t92) - call void @fn_emit(ptr @.str10126) + call void @fn_emit(ptr @.str10131) %t93 = load ptr, ptr %t49 call void @fn_emit(ptr %t93) - call void @fn_emit(ptr @.str10127) + call void @fn_emit(ptr @.str10132) %t94 = load i32, ptr %t53 %t95 = add i32 %t94, 1 %t96 = mul i32 8, %t95 %t97 = call ptr @fn_itoa(i32 %t96) call void @fn_emit(ptr %t97) - call void @fn_emit(ptr @.str10128) - call void @fn_emit(ptr @.str10129) + call void @fn_emit(ptr @.str10133) + call void @fn_emit(ptr @.str10134) %t98 = load ptr, ptr %t73 %t99 = call ptr @fn_llty(ptr %t98) call void @fn_emit(ptr %t99) - call void @fn_emit(ptr @.str10130) + call void @fn_emit(ptr @.str10135) %t100 = load ptr, ptr %t89 call void @fn_emit(ptr %t100) - call void @fn_emit(ptr @.str10131) + call void @fn_emit(ptr @.str10136) %t101 = load ptr, ptr %t91 call void @fn_emit(ptr %t101) - call void @fn_emit(ptr @.str10132) + call void @fn_emit(ptr @.str10137) %t102 = load i32, ptr %t53 %t103 = add i32 %t102, 1 store i32 %t103, ptr %t53 @@ -134362,7 +134524,7 @@ then6: store ptr %t42, ptr %retval br label %ret ifend8: - call void @fn_perr(ptr @.str10133) + call void @fn_perr(ptr @.str10138) br label %ifend5 ifend5: %t43 = load ptr, ptr %t0 @@ -134372,7 +134534,7 @@ ifend5: %t47 = load ptr, ptr %t46 store ptr %t47, ptr %t48 %t49 = load ptr, ptr %t48 - %t50 = call i32 @lp_str_eq(ptr %t49, ptr @.str10134) + %t50 = call i32 @lp_str_eq(ptr %t49, ptr @.str10139) %t51 = icmp ne i32 %t50, 0 br i1 %t51, label %then9, label %ifend11 then9: @@ -134382,7 +134544,7 @@ then9: %t55 = icmp ne i32 %t54, 0 br i1 %t55, label %then12, label %ifend14 then12: - %t56 = call ptr @fn_val(ptr @.str10135, ptr @.str10136) + %t56 = call ptr @fn_val(ptr @.str10140, ptr @.str10141) store ptr %t56, ptr %retval br label %ret ifend14: @@ -134397,40 +134559,40 @@ ifend14: br i1 %t64, label %ixok15, label %ixbad16 ixbad16: %t65 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t65, ptr @.fmt_bounds, ptr @.str10138, i32 %t59, i32 %t63) + call i32 (ptr, ptr, ...) @fprintf(ptr %t65, ptr @.fmt_bounds, ptr @.str10143, i32 %t59, i32 %t63) call void @exit(i32 1) unreachable ixok15: %t66 = getelementptr inbounds ptr, ptr %t61, i32 %t59 %t67 = load ptr, ptr %t66 - %t68 = call ptr @lp_str_concat(ptr @.str10137, ptr %t67) + %t68 = call ptr @lp_str_concat(ptr @.str10142, ptr %t67) %t69 = call ptr @fn_emit_bind(ptr %t68) - %t70 = call ptr @fn_val(ptr %t69, ptr @.str10139) + %t70 = call ptr @fn_val(ptr %t69, ptr @.str10144) store ptr %t70, ptr %retval br label %ret ifend11: %t71 = load ptr, ptr %t48 - %t72 = call i32 @lp_str_eq(ptr %t71, ptr @.str10140) + %t72 = call i32 @lp_str_eq(ptr %t71, ptr @.str10145) %t73 = icmp ne i32 %t72, 0 br i1 %t73, label %then17, label %ifend19 then17: - %t74 = call ptr @fn_emit_bind(ptr @.str10141) - %t75 = call ptr @fn_val(ptr %t74, ptr @.str10142) + %t74 = call ptr @fn_emit_bind(ptr @.str10146) + %t75 = call ptr @fn_val(ptr %t74, ptr @.str10147) store ptr %t75, ptr %retval br label %ret ifend19: %t76 = load ptr, ptr %t48 - %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str10143) + %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str10148) %t78 = icmp ne i32 %t77, 0 br i1 %t78, label %then20, label %ifend22 then20: - call void @fn_emit(ptr @.str10144) - %t79 = call ptr @fn_val(ptr @.str10145, ptr @.str10146) + call void @fn_emit(ptr @.str10149) + %t79 = call ptr @fn_val(ptr @.str10150, ptr @.str10151) store ptr %t79, ptr %retval br label %ret ifend22: %t81 = load ptr, ptr %t48 - %t82 = call i32 @lp_str_eq(ptr %t81, ptr @.str10147) + %t82 = call i32 @lp_str_eq(ptr %t81, ptr @.str10152) %t83 = icmp ne i32 %t82, 0 %t84 = zext i1 %t83 to i32 store i32 %t84, ptr %t80 @@ -134449,33 +134611,33 @@ scend24: %t92 = icmp ne i32 %t91, 0 br i1 %t92, label %then25, label %ifend27 then25: - call void @fn_emit(ptr @.str10148) - %t93 = call ptr @fn_val(ptr @.str10149, ptr @.str10150) + call void @fn_emit(ptr @.str10153) + %t93 = call ptr @fn_val(ptr @.str10154, ptr @.str10155) store ptr %t93, ptr %retval br label %ret ifend27: %t94 = load ptr, ptr %t48 - %t95 = call i32 @lp_str_eq(ptr %t94, ptr @.str10151) + %t95 = call i32 @lp_str_eq(ptr %t94, ptr @.str10156) %t96 = icmp ne i32 %t95, 0 br i1 %t96, label %then28, label %ifend30 then28: - %t97 = call ptr @fn_emit_bind(ptr @.str10152) - %t98 = call ptr @fn_val(ptr %t97, ptr @.str10153) + %t97 = call ptr @fn_emit_bind(ptr @.str10157) + %t98 = call ptr @fn_val(ptr %t97, ptr @.str10158) store ptr %t98, ptr %retval br label %ret ifend30: %t99 = load ptr, ptr %t48 - %t100 = call i32 @lp_str_eq(ptr %t99, ptr @.str10154) + %t100 = call i32 @lp_str_eq(ptr %t99, ptr @.str10159) %t101 = icmp ne i32 %t100, 0 br i1 %t101, label %then31, label %ifend33 then31: - %t102 = call ptr @fn_emit_bind(ptr @.str10155) - %t103 = call ptr @fn_val(ptr %t102, ptr @.str10156) + %t102 = call ptr @fn_emit_bind(ptr @.str10160) + %t103 = call ptr @fn_val(ptr %t102, ptr @.str10161) store ptr %t103, ptr %retval br label %ret ifend33: %t104 = load ptr, ptr %t48 - %t105 = call i32 @lp_str_eq(ptr %t104, ptr @.str10157) + %t105 = call i32 @lp_str_eq(ptr %t104, ptr @.str10162) %t106 = icmp ne i32 %t105, 0 br i1 %t106, label %then34, label %ifend36 then34: @@ -134490,7 +134652,7 @@ then34: br i1 %t114, label %ixok37, label %ixbad38 ixbad38: %t115 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t115, ptr @.fmt_bounds, ptr @.str10158, i32 0, i32 %t113) + call i32 (ptr, ptr, ...) @fprintf(ptr %t115, ptr @.fmt_bounds, ptr @.str10163, i32 0, i32 %t113) call void @exit(i32 1) unreachable ixok37: @@ -134501,15 +134663,15 @@ ixok37: %t120 = load ptr, ptr %t119 %t121 = getelementptr inbounds %Cmp_Val, ptr %t120, i32 0, i32 0 %t122 = load ptr, ptr %t121 - %t123 = call ptr @lp_str_concat(ptr @.str10159, ptr %t122) - %t124 = call ptr @lp_str_concat(ptr %t123, ptr @.str10160) + %t123 = call ptr @lp_str_concat(ptr @.str10164, ptr %t122) + %t124 = call ptr @lp_str_concat(ptr %t123, ptr @.str10165) %t125 = call ptr @fn_emit_bind(ptr %t124) - %t126 = call ptr @fn_val(ptr %t125, ptr @.str10161) + %t126 = call ptr @fn_val(ptr %t125, ptr @.str10166) store ptr %t126, ptr %retval br label %ret ifend36: %t127 = load ptr, ptr %t48 - %t128 = call i32 @lp_str_eq(ptr %t127, ptr @.str10162) + %t128 = call i32 @lp_str_eq(ptr %t127, ptr @.str10167) %t129 = icmp ne i32 %t128, 0 br i1 %t129, label %then39, label %ifend41 then39: @@ -134524,7 +134686,7 @@ then39: br i1 %t137, label %ixok42, label %ixbad43 ixbad43: %t138 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t138, ptr @.fmt_bounds, ptr @.str10163, i32 0, i32 %t136) + call i32 (ptr, ptr, ...) @fprintf(ptr %t138, ptr @.fmt_bounds, ptr @.str10168, i32 0, i32 %t136) call void @exit(i32 1) unreachable ixok42: @@ -134543,7 +134705,7 @@ ixok42: br i1 %t150, label %ixok44, label %ixbad45 ixbad45: %t151 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t151, ptr @.fmt_bounds, ptr @.str10164, i32 1, i32 %t149) + call i32 (ptr, ptr, ...) @fprintf(ptr %t151, ptr @.fmt_bounds, ptr @.str10169, i32 1, i32 %t149) call void @exit(i32 1) unreachable ixok44: @@ -134551,34 +134713,34 @@ ixok44: %t153 = load ptr, ptr %t152 %t154 = call ptr @fn_emit_expr(ptr %t153) store ptr %t154, ptr %t155 - call void @fn_emit(ptr @.str10165) + call void @fn_emit(ptr @.str10170) %t156 = load ptr, ptr %t142 %t157 = getelementptr inbounds %Cmp_Val, ptr %t156, i32 0, i32 0 %t158 = load ptr, ptr %t157 call void @fn_emit(ptr %t158) - call void @fn_emit(ptr @.str10166) + call void @fn_emit(ptr @.str10171) %t159 = load ptr, ptr %t155 %t160 = getelementptr inbounds %Cmp_Val, ptr %t159, i32 0, i32 0 %t161 = load ptr, ptr %t160 call void @fn_emit(ptr %t161) - call void @fn_emit(ptr @.str10167) - %t162 = call ptr @fn_val(ptr @.str10168, ptr @.str10169) + call void @fn_emit(ptr @.str10172) + %t162 = call ptr @fn_val(ptr @.str10173, ptr @.str10174) store ptr %t162, ptr %retval br label %ret ifend41: %t163 = load ptr, ptr %t48 - %t164 = call i32 @lp_str_eq(ptr %t163, ptr @.str10170) + %t164 = call i32 @lp_str_eq(ptr %t163, ptr @.str10175) %t165 = icmp ne i32 %t164, 0 br i1 %t165, label %then46, label %ifend48 then46: store i32 1, ptr @g_g_uses_quit - call void @fn_emit(ptr @.str10171) - %t166 = call ptr @fn_val(ptr @.str10172, ptr @.str10173) + call void @fn_emit(ptr @.str10176) + %t166 = call ptr @fn_val(ptr @.str10177, ptr @.str10178) store ptr %t166, ptr %retval br label %ret ifend48: %t167 = load ptr, ptr %t48 - %t168 = call i32 @lp_str_eq(ptr %t167, ptr @.str10174) + %t168 = call i32 @lp_str_eq(ptr %t167, ptr @.str10179) %t169 = icmp ne i32 %t168, 0 br i1 %t169, label %then49, label %ifend51 then49: @@ -134593,7 +134755,7 @@ then49: br i1 %t177, label %ixok52, label %ixbad53 ixbad53: %t178 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t178, ptr @.fmt_bounds, ptr @.str10175, i32 0, i32 %t176) + call i32 (ptr, ptr, ...) @fprintf(ptr %t178, ptr @.fmt_bounds, ptr @.str10180, i32 0, i32 %t176) call void @exit(i32 1) unreachable ixok52: @@ -134612,7 +134774,7 @@ ixok52: br i1 %t190, label %ixok54, label %ixbad55 ixbad55: %t191 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t191, ptr @.fmt_bounds, ptr @.str10176, i32 1, i32 %t189) + call i32 (ptr, ptr, ...) @fprintf(ptr %t191, ptr @.fmt_bounds, ptr @.str10181, i32 1, i32 %t189) call void @exit(i32 1) unreachable ixok54: @@ -134623,20 +134785,20 @@ ixok54: %t196 = load ptr, ptr %t182 %t197 = getelementptr inbounds %Cmp_Val, ptr %t196, i32 0, i32 0 %t198 = load ptr, ptr %t197 - %t199 = call ptr @lp_str_concat(ptr @.str10177, ptr %t198) - %t200 = call ptr @lp_str_concat(ptr %t199, ptr @.str10178) + %t199 = call ptr @lp_str_concat(ptr @.str10182, ptr %t198) + %t200 = call ptr @lp_str_concat(ptr %t199, ptr @.str10183) %t201 = load ptr, ptr %t195 %t202 = getelementptr inbounds %Cmp_Val, ptr %t201, i32 0, i32 0 %t203 = load ptr, ptr %t202 %t204 = call ptr @lp_str_concat(ptr %t200, ptr %t203) - %t205 = call ptr @lp_str_concat(ptr %t204, ptr @.str10179) + %t205 = call ptr @lp_str_concat(ptr %t204, ptr @.str10184) %t206 = call ptr @fn_emit_bind(ptr %t205) - %t207 = call ptr @fn_val(ptr %t206, ptr @.str10180) + %t207 = call ptr @fn_val(ptr %t206, ptr @.str10185) store ptr %t207, ptr %retval br label %ret ifend51: %t208 = load ptr, ptr %t48 - %t209 = call i32 @lp_str_eq(ptr %t208, ptr @.str10181) + %t209 = call i32 @lp_str_eq(ptr %t208, ptr @.str10186) %t210 = icmp ne i32 %t209, 0 br i1 %t210, label %then56, label %ifend58 then56: @@ -134651,7 +134813,7 @@ then56: br i1 %t218, label %ixok59, label %ixbad60 ixbad60: %t219 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t219, ptr @.fmt_bounds, ptr @.str10182, i32 0, i32 %t217) + call i32 (ptr, ptr, ...) @fprintf(ptr %t219, ptr @.fmt_bounds, ptr @.str10187, i32 0, i32 %t217) call void @exit(i32 1) unreachable ixok59: @@ -134670,7 +134832,7 @@ ixok59: br i1 %t231, label %ixok61, label %ixbad62 ixbad62: %t232 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t232, ptr @.fmt_bounds, ptr @.str10183, i32 1, i32 %t230) + call i32 (ptr, ptr, ...) @fprintf(ptr %t232, ptr @.fmt_bounds, ptr @.str10188, i32 1, i32 %t230) call void @exit(i32 1) unreachable ixok61: @@ -134689,7 +134851,7 @@ ixok61: br i1 %t244, label %ixok63, label %ixbad64 ixbad64: %t245 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t245, ptr @.fmt_bounds, ptr @.str10184, i32 2, i32 %t243) + call i32 (ptr, ptr, ...) @fprintf(ptr %t245, ptr @.fmt_bounds, ptr @.str10189, i32 2, i32 %t243) call void @exit(i32 1) unreachable ixok63: @@ -134697,28 +134859,28 @@ ixok63: %t247 = load ptr, ptr %t246 %t248 = call ptr @fn_emit_expr(ptr %t247) store ptr %t248, ptr %t249 - call void @fn_emit(ptr @.str10185) + call void @fn_emit(ptr @.str10190) %t250 = load ptr, ptr %t223 %t251 = getelementptr inbounds %Cmp_Val, ptr %t250, i32 0, i32 0 %t252 = load ptr, ptr %t251 call void @fn_emit(ptr %t252) - call void @fn_emit(ptr @.str10186) + call void @fn_emit(ptr @.str10191) %t253 = load ptr, ptr %t236 %t254 = getelementptr inbounds %Cmp_Val, ptr %t253, i32 0, i32 0 %t255 = load ptr, ptr %t254 call void @fn_emit(ptr %t255) - call void @fn_emit(ptr @.str10187) + call void @fn_emit(ptr @.str10192) %t256 = load ptr, ptr %t249 %t257 = getelementptr inbounds %Cmp_Val, ptr %t256, i32 0, i32 0 %t258 = load ptr, ptr %t257 call void @fn_emit(ptr %t258) - call void @fn_emit(ptr @.str10188) - %t259 = call ptr @fn_val(ptr @.str10189, ptr @.str10190) + call void @fn_emit(ptr @.str10193) + %t259 = call ptr @fn_val(ptr @.str10194, ptr @.str10195) store ptr %t259, ptr %retval br label %ret ifend58: %t260 = load ptr, ptr %t48 - %t261 = call i32 @lp_str_eq(ptr %t260, ptr @.str10191) + %t261 = call i32 @lp_str_eq(ptr %t260, ptr @.str10196) %t262 = icmp ne i32 %t261, 0 br i1 %t262, label %then65, label %ifend67 then65: @@ -134733,7 +134895,7 @@ then65: br i1 %t270, label %ixok68, label %ixbad69 ixbad69: %t271 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t271, ptr @.fmt_bounds, ptr @.str10192, i32 0, i32 %t269) + call i32 (ptr, ptr, ...) @fprintf(ptr %t271, ptr @.fmt_bounds, ptr @.str10197, i32 0, i32 %t269) call void @exit(i32 1) unreachable ixok68: @@ -134744,15 +134906,15 @@ ixok68: %t276 = load ptr, ptr %t275 %t277 = getelementptr inbounds %Cmp_Val, ptr %t276, i32 0, i32 0 %t278 = load ptr, ptr %t277 - %t279 = call ptr @lp_str_concat(ptr @.str10193, ptr %t278) - %t280 = call ptr @lp_str_concat(ptr %t279, ptr @.str10194) + %t279 = call ptr @lp_str_concat(ptr @.str10198, ptr %t278) + %t280 = call ptr @lp_str_concat(ptr %t279, ptr @.str10199) %t281 = call ptr @fn_emit_bind(ptr %t280) - %t282 = call ptr @fn_val(ptr %t281, ptr @.str10195) + %t282 = call ptr @fn_val(ptr %t281, ptr @.str10200) store ptr %t282, ptr %retval br label %ret ifend67: %t283 = load ptr, ptr %t48 - %t284 = call i32 @lp_str_eq(ptr %t283, ptr @.str10196) + %t284 = call i32 @lp_str_eq(ptr %t283, ptr @.str10201) %t285 = icmp ne i32 %t284, 0 br i1 %t285, label %then70, label %ifend72 then70: @@ -134767,7 +134929,7 @@ then70: br i1 %t293, label %ixok73, label %ixbad74 ixbad74: %t294 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t294, ptr @.fmt_bounds, ptr @.str10197, i32 0, i32 %t292) + call i32 (ptr, ptr, ...) @fprintf(ptr %t294, ptr @.fmt_bounds, ptr @.str10202, i32 0, i32 %t292) call void @exit(i32 1) unreachable ixok73: @@ -134778,15 +134940,15 @@ ixok73: %t299 = load ptr, ptr %t298 %t300 = getelementptr inbounds %Cmp_Val, ptr %t299, i32 0, i32 0 %t301 = load ptr, ptr %t300 - %t302 = call ptr @lp_str_concat(ptr @.str10198, ptr %t301) - %t303 = call ptr @lp_str_concat(ptr %t302, ptr @.str10199) + %t302 = call ptr @lp_str_concat(ptr @.str10203, ptr %t301) + %t303 = call ptr @lp_str_concat(ptr %t302, ptr @.str10204) %t304 = call ptr @fn_emit_bind(ptr %t303) - %t305 = call ptr @fn_val(ptr %t304, ptr @.str10200) + %t305 = call ptr @fn_val(ptr %t304, ptr @.str10205) store ptr %t305, ptr %retval br label %ret ifend72: %t306 = load ptr, ptr %t48 - %t307 = call i32 @lp_str_eq(ptr %t306, ptr @.str10201) + %t307 = call i32 @lp_str_eq(ptr %t306, ptr @.str10206) %t308 = icmp ne i32 %t307, 0 br i1 %t308, label %then75, label %ifend77 then75: @@ -134801,7 +134963,7 @@ then75: br i1 %t316, label %ixok78, label %ixbad79 ixbad79: %t317 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t317, ptr @.fmt_bounds, ptr @.str10202, i32 0, i32 %t315) + call i32 (ptr, ptr, ...) @fprintf(ptr %t317, ptr @.fmt_bounds, ptr @.str10207, i32 0, i32 %t315) call void @exit(i32 1) unreachable ixok78: @@ -134820,7 +134982,7 @@ ixok78: br i1 %t329, label %ixok80, label %ixbad81 ixbad81: %t330 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t330, ptr @.fmt_bounds, ptr @.str10203, i32 1, i32 %t328) + call i32 (ptr, ptr, ...) @fprintf(ptr %t330, ptr @.fmt_bounds, ptr @.str10208, i32 1, i32 %t328) call void @exit(i32 1) unreachable ixok80: @@ -134828,23 +134990,23 @@ ixok80: %t332 = load ptr, ptr %t331 %t333 = call ptr @fn_emit_expr(ptr %t332) store ptr %t333, ptr %t334 - call void @fn_emit(ptr @.str10204) + call void @fn_emit(ptr @.str10209) %t335 = load ptr, ptr %t321 %t336 = getelementptr inbounds %Cmp_Val, ptr %t335, i32 0, i32 0 %t337 = load ptr, ptr %t336 call void @fn_emit(ptr %t337) - call void @fn_emit(ptr @.str10205) + call void @fn_emit(ptr @.str10210) %t338 = load ptr, ptr %t334 %t339 = getelementptr inbounds %Cmp_Val, ptr %t338, i32 0, i32 0 %t340 = load ptr, ptr %t339 call void @fn_emit(ptr %t340) - call void @fn_emit(ptr @.str10206) - %t341 = call ptr @fn_val(ptr @.str10207, ptr @.str10208) + call void @fn_emit(ptr @.str10211) + %t341 = call ptr @fn_val(ptr @.str10212, ptr @.str10213) store ptr %t341, ptr %retval br label %ret ifend77: %t342 = load ptr, ptr %t48 - %t343 = call i32 @lp_str_eq(ptr %t342, ptr @.str10209) + %t343 = call i32 @lp_str_eq(ptr %t342, ptr @.str10214) %t344 = icmp ne i32 %t343, 0 br i1 %t344, label %then82, label %ifend84 then82: @@ -134859,7 +135021,7 @@ then82: br i1 %t352, label %ixok85, label %ixbad86 ixbad86: %t353 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t353, ptr @.fmt_bounds, ptr @.str10210, i32 0, i32 %t351) + call i32 (ptr, ptr, ...) @fprintf(ptr %t353, ptr @.fmt_bounds, ptr @.str10215, i32 0, i32 %t351) call void @exit(i32 1) unreachable ixok85: @@ -134870,75 +135032,75 @@ ixok85: %t358 = load ptr, ptr %t357 %t359 = getelementptr inbounds %Cmp_Val, ptr %t358, i32 0, i32 0 %t360 = load ptr, ptr %t359 - %t361 = call ptr @lp_str_concat(ptr @.str10211, ptr %t360) - %t362 = call ptr @lp_str_concat(ptr %t361, ptr @.str10212) + %t361 = call ptr @lp_str_concat(ptr @.str10216, ptr %t360) + %t362 = call ptr @lp_str_concat(ptr %t361, ptr @.str10217) %t363 = call ptr @fn_emit_bind(ptr %t362) - %t364 = call ptr @fn_val(ptr %t363, ptr @.str10213) + %t364 = call ptr @fn_val(ptr %t363, ptr @.str10218) store ptr %t364, ptr %retval br label %ret ifend84: %t365 = load ptr, ptr %t48 - %t366 = call i32 @lp_str_eq(ptr %t365, ptr @.str10214) + %t366 = call i32 @lp_str_eq(ptr %t365, ptr @.str10219) %t367 = icmp ne i32 %t366, 0 br i1 %t367, label %then87, label %ifend89 then87: - %t368 = call ptr @fn_emit_bind(ptr @.str10215) + %t368 = call ptr @fn_emit_bind(ptr @.str10220) store ptr %t368, ptr %t369 %t370 = load ptr, ptr %t369 - %t371 = call ptr @lp_str_concat(ptr @.str10216, ptr %t370) - %t372 = call ptr @lp_str_concat(ptr %t371, ptr @.str10217) + %t371 = call ptr @lp_str_concat(ptr @.str10221, ptr %t370) + %t372 = call ptr @lp_str_concat(ptr %t371, ptr @.str10222) %t373 = call ptr @fn_emit_bind(ptr %t372) store ptr %t373, ptr %t374 %t375 = load ptr, ptr %t374 - %t376 = call ptr @lp_str_concat(ptr @.str10218, ptr %t375) - %t377 = call ptr @lp_str_concat(ptr %t376, ptr @.str10219) + %t376 = call ptr @lp_str_concat(ptr @.str10223, ptr %t375) + %t377 = call ptr @lp_str_concat(ptr %t376, ptr @.str10224) %t378 = call ptr @fn_emit_bind(ptr %t377) - %t379 = call ptr @fn_val(ptr %t378, ptr @.str10220) + %t379 = call ptr @fn_val(ptr %t378, ptr @.str10225) store ptr %t379, ptr %retval br label %ret ifend89: %t380 = load ptr, ptr %t48 - %t381 = call i32 @lp_str_eq(ptr %t380, ptr @.str10221) + %t381 = call i32 @lp_str_eq(ptr %t380, ptr @.str10226) %t382 = icmp ne i32 %t381, 0 br i1 %t382, label %then90, label %ifend92 then90: - %t383 = call ptr @fn_emit_bind(ptr @.str10222) - %t384 = call ptr @fn_val(ptr %t383, ptr @.str10223) + %t383 = call ptr @fn_emit_bind(ptr @.str10227) + %t384 = call ptr @fn_val(ptr %t383, ptr @.str10228) store ptr %t384, ptr %retval br label %ret ifend92: %t385 = load ptr, ptr %t48 - %t386 = call i32 @lp_str_eq(ptr %t385, ptr @.str10224) + %t386 = call i32 @lp_str_eq(ptr %t385, ptr @.str10229) %t387 = icmp ne i32 %t386, 0 br i1 %t387, label %then93, label %ifend95 then93: - call void @fn_emit(ptr @.str10225) - %t388 = call ptr @fn_val(ptr @.str10226, ptr @.str10227) + call void @fn_emit(ptr @.str10230) + %t388 = call ptr @fn_val(ptr @.str10231, ptr @.str10232) store ptr %t388, ptr %retval br label %ret ifend95: %t389 = load ptr, ptr %t48 - %t390 = call i32 @lp_str_eq(ptr %t389, ptr @.str10228) + %t390 = call i32 @lp_str_eq(ptr %t389, ptr @.str10233) %t391 = icmp ne i32 %t390, 0 br i1 %t391, label %then96, label %ifend98 then96: - call void @fn_emit(ptr @.str10229) - %t392 = call ptr @fn_val(ptr @.str10230, ptr @.str10231) + call void @fn_emit(ptr @.str10234) + %t392 = call ptr @fn_val(ptr @.str10235, ptr @.str10236) store ptr %t392, ptr %retval br label %ret ifend98: %t393 = load ptr, ptr %t48 - %t394 = call i32 @lp_str_eq(ptr %t393, ptr @.str10232) + %t394 = call i32 @lp_str_eq(ptr %t393, ptr @.str10237) %t395 = icmp ne i32 %t394, 0 br i1 %t395, label %then99, label %ifend101 then99: - call void @fn_emit(ptr @.str10233) - %t396 = call ptr @fn_val(ptr @.str10234, ptr @.str10235) + call void @fn_emit(ptr @.str10238) + %t396 = call ptr @fn_val(ptr @.str10239, ptr @.str10240) store ptr %t396, ptr %retval br label %ret ifend101: %t397 = load ptr, ptr %t48 - %t398 = call i32 @lp_str_eq(ptr %t397, ptr @.str10236) + %t398 = call i32 @lp_str_eq(ptr %t397, ptr @.str10241) %t399 = icmp ne i32 %t398, 0 br i1 %t399, label %then102, label %ifend104 then102: @@ -134953,7 +135115,7 @@ then102: br i1 %t407, label %ixok105, label %ixbad106 ixbad106: %t408 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t408, ptr @.fmt_bounds, ptr @.str10237, i32 0, i32 %t406) + call i32 (ptr, ptr, ...) @fprintf(ptr %t408, ptr @.fmt_bounds, ptr @.str10242, i32 0, i32 %t406) call void @exit(i32 1) unreachable ixok105: @@ -134961,18 +135123,18 @@ ixok105: %t410 = load ptr, ptr %t409 %t411 = call ptr @fn_emit_expr(ptr %t410) store ptr %t411, ptr %t412 - call void @fn_emit(ptr @.str10238) + call void @fn_emit(ptr @.str10243) %t413 = load ptr, ptr %t412 %t414 = getelementptr inbounds %Cmp_Val, ptr %t413, i32 0, i32 0 %t415 = load ptr, ptr %t414 call void @fn_emit(ptr %t415) - call void @fn_emit(ptr @.str10239) - %t416 = call ptr @fn_val(ptr @.str10240, ptr @.str10241) + call void @fn_emit(ptr @.str10244) + %t416 = call ptr @fn_val(ptr @.str10245, ptr @.str10246) store ptr %t416, ptr %retval br label %ret ifend104: %t417 = load ptr, ptr %t48 - %t418 = call i32 @lp_str_eq(ptr %t417, ptr @.str10242) + %t418 = call i32 @lp_str_eq(ptr %t417, ptr @.str10247) %t419 = icmp ne i32 %t418, 0 br i1 %t419, label %then107, label %ifend109 then107: @@ -134987,7 +135149,7 @@ then107: br i1 %t427, label %ixok110, label %ixbad111 ixbad111: %t428 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t428, ptr @.fmt_bounds, ptr @.str10243, i32 0, i32 %t426) + call i32 (ptr, ptr, ...) @fprintf(ptr %t428, ptr @.fmt_bounds, ptr @.str10248, i32 0, i32 %t426) call void @exit(i32 1) unreachable ixok110: @@ -134995,24 +135157,24 @@ ixok110: %t430 = load ptr, ptr %t429 %t431 = call ptr @fn_emit_expr(ptr %t430) store ptr %t431, ptr %t432 - call void @fn_emit(ptr @.str10244) + call void @fn_emit(ptr @.str10249) %t433 = load ptr, ptr %t432 %t434 = getelementptr inbounds %Cmp_Val, ptr %t433, i32 0, i32 0 %t435 = load ptr, ptr %t434 call void @fn_emit(ptr %t435) - call void @fn_emit(ptr @.str10245) - %t436 = call ptr @fn_val(ptr @.str10246, ptr @.str10247) + call void @fn_emit(ptr @.str10250) + %t436 = call ptr @fn_val(ptr @.str10251, ptr @.str10252) store ptr %t436, ptr %retval br label %ret ifend109: %t438 = load ptr, ptr %t48 - %t439 = call i32 @lp_str_eq(ptr %t438, ptr @.str10248) + %t439 = call i32 @lp_str_eq(ptr %t438, ptr @.str10253) %t440 = icmp ne i32 %t439, 0 %t441 = zext i1 %t440 to i32 store i32 %t441, ptr %t437 br i1 %t440, label %sc112, label %scend113 sc112: - %t442 = call ptr @fn_find_extern(ptr @.str10249) + %t442 = call ptr @fn_find_extern(ptr @.str10254) %t443 = icmp eq ptr %t442, null %t444 = zext i1 %t443 to i32 %t445 = icmp ne i32 %t444, 0 @@ -135036,7 +135198,7 @@ then114: br i1 %t456, label %ixok117, label %ixbad118 ixbad118: %t457 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t457, ptr @.fmt_bounds, ptr @.str10250, i32 0, i32 %t455) + call i32 (ptr, ptr, ...) @fprintf(ptr %t457, ptr @.fmt_bounds, ptr @.str10255, i32 0, i32 %t455) call void @exit(i32 1) unreachable ixok117: @@ -135055,7 +135217,7 @@ ixok117: br i1 %t469, label %ixok119, label %ixbad120 ixbad120: %t470 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t470, ptr @.fmt_bounds, ptr @.str10251, i32 1, i32 %t468) + call i32 (ptr, ptr, ...) @fprintf(ptr %t470, ptr @.fmt_bounds, ptr @.str10256, i32 1, i32 %t468) call void @exit(i32 1) unreachable ixok119: @@ -135074,7 +135236,7 @@ ixok119: br i1 %t482, label %ixok121, label %ixbad122 ixbad122: %t483 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t483, ptr @.fmt_bounds, ptr @.str10252, i32 2, i32 %t481) + call i32 (ptr, ptr, ...) @fprintf(ptr %t483, ptr @.fmt_bounds, ptr @.str10257, i32 2, i32 %t481) call void @exit(i32 1) unreachable ixok121: @@ -135082,34 +135244,34 @@ ixok121: %t485 = load ptr, ptr %t484 %t486 = call ptr @fn_emit_expr(ptr %t485) store ptr %t486, ptr %t487 - call void @fn_emit(ptr @.str10253) + call void @fn_emit(ptr @.str10258) %t488 = load ptr, ptr %t461 %t489 = getelementptr inbounds %Cmp_Val, ptr %t488, i32 0, i32 0 %t490 = load ptr, ptr %t489 call void @fn_emit(ptr %t490) - call void @fn_emit(ptr @.str10254) + call void @fn_emit(ptr @.str10259) %t491 = load ptr, ptr %t474 %t492 = getelementptr inbounds %Cmp_Val, ptr %t491, i32 0, i32 0 %t493 = load ptr, ptr %t492 call void @fn_emit(ptr %t493) - call void @fn_emit(ptr @.str10255) + call void @fn_emit(ptr @.str10260) %t494 = load ptr, ptr %t487 %t495 = getelementptr inbounds %Cmp_Val, ptr %t494, i32 0, i32 0 %t496 = load ptr, ptr %t495 call void @fn_emit(ptr %t496) - call void @fn_emit(ptr @.str10256) - %t497 = call ptr @fn_val(ptr @.str10257, ptr @.str10258) + call void @fn_emit(ptr @.str10261) + %t497 = call ptr @fn_val(ptr @.str10262, ptr @.str10263) store ptr %t497, ptr %retval br label %ret ifend116: %t499 = load ptr, ptr %t48 - %t500 = call i32 @lp_str_eq(ptr %t499, ptr @.str10259) + %t500 = call i32 @lp_str_eq(ptr %t499, ptr @.str10264) %t501 = icmp ne i32 %t500, 0 %t502 = zext i1 %t501 to i32 store i32 %t502, ptr %t498 br i1 %t501, label %sc123, label %scend124 sc123: - %t503 = call ptr @fn_find_extern(ptr @.str10260) + %t503 = call ptr @fn_find_extern(ptr @.str10265) %t504 = icmp eq ptr %t503, null %t505 = zext i1 %t504 to i32 %t506 = icmp ne i32 %t505, 0 @@ -135133,7 +135295,7 @@ then125: br i1 %t517, label %ixok128, label %ixbad129 ixbad129: %t518 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t518, ptr @.fmt_bounds, ptr @.str10261, i32 0, i32 %t516) + call i32 (ptr, ptr, ...) @fprintf(ptr %t518, ptr @.fmt_bounds, ptr @.str10266, i32 0, i32 %t516) call void @exit(i32 1) unreachable ixok128: @@ -135152,7 +135314,7 @@ ixok128: br i1 %t530, label %ixok130, label %ixbad131 ixbad131: %t531 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t531, ptr @.fmt_bounds, ptr @.str10262, i32 1, i32 %t529) + call i32 (ptr, ptr, ...) @fprintf(ptr %t531, ptr @.fmt_bounds, ptr @.str10267, i32 1, i32 %t529) call void @exit(i32 1) unreachable ixok130: @@ -135163,20 +135325,20 @@ ixok130: %t536 = load ptr, ptr %t522 %t537 = getelementptr inbounds %Cmp_Val, ptr %t536, i32 0, i32 0 %t538 = load ptr, ptr %t537 - %t539 = call ptr @lp_str_concat(ptr @.str10263, ptr %t538) - %t540 = call ptr @lp_str_concat(ptr %t539, ptr @.str10264) + %t539 = call ptr @lp_str_concat(ptr @.str10268, ptr %t538) + %t540 = call ptr @lp_str_concat(ptr %t539, ptr @.str10269) %t541 = load ptr, ptr %t535 %t542 = getelementptr inbounds %Cmp_Val, ptr %t541, i32 0, i32 0 %t543 = load ptr, ptr %t542 %t544 = call ptr @lp_str_concat(ptr %t540, ptr %t543) - %t545 = call ptr @lp_str_concat(ptr %t544, ptr @.str10265) + %t545 = call ptr @lp_str_concat(ptr %t544, ptr @.str10270) %t546 = call ptr @fn_emit_bind(ptr %t545) - %t547 = call ptr @fn_val(ptr %t546, ptr @.str10266) + %t547 = call ptr @fn_val(ptr %t546, ptr @.str10271) store ptr %t547, ptr %retval br label %ret ifend127: %t548 = load ptr, ptr %t48 - %t549 = call i32 @lp_str_eq(ptr %t548, ptr @.str10267) + %t549 = call i32 @lp_str_eq(ptr %t548, ptr @.str10272) %t550 = icmp ne i32 %t549, 0 br i1 %t550, label %then132, label %ifend134 then132: @@ -135186,7 +135348,7 @@ then132: br label %ret ifend134: %t553 = load ptr, ptr %t48 - %t554 = call i32 @lp_str_eq(ptr %t553, ptr @.str10268) + %t554 = call i32 @lp_str_eq(ptr %t553, ptr @.str10273) %t555 = icmp ne i32 %t554, 0 br i1 %t555, label %then135, label %ifend137 then135: @@ -135196,7 +135358,7 @@ then135: br label %ret ifend137: %t558 = load ptr, ptr %t48 - %t559 = call i32 @lp_str_eq(ptr %t558, ptr @.str10269) + %t559 = call i32 @lp_str_eq(ptr %t558, ptr @.str10274) %t560 = icmp ne i32 %t559, 0 br i1 %t560, label %then138, label %ifend140 then138: @@ -135211,7 +135373,7 @@ then138: br i1 %t568, label %ixok141, label %ixbad142 ixbad142: %t569 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t569, ptr @.fmt_bounds, ptr @.str10270, i32 0, i32 %t567) + call i32 (ptr, ptr, ...) @fprintf(ptr %t569, ptr @.fmt_bounds, ptr @.str10275, i32 0, i32 %t567) call void @exit(i32 1) unreachable ixok141: @@ -135223,7 +135385,7 @@ ixok141: %t575 = getelementptr inbounds %Cmp_Val, ptr %t574, i32 0, i32 1 %t576 = load ptr, ptr %t575 %t577 = call ptr @fn_llty(ptr %t576) - %t578 = call i32 @lp_str_eq(ptr %t577, ptr @.str10271) + %t578 = call i32 @lp_str_eq(ptr %t577, ptr @.str10276) %t579 = icmp ne i32 %t578, 0 br i1 %t579, label %then143, label %ifend145 then143: @@ -135247,7 +135409,7 @@ ifend148: %t589 = getelementptr inbounds %Cmp_Val, ptr %t588, i32 0, i32 1 %t590 = load ptr, ptr %t589 %t591 = call ptr @fn_llty(ptr %t590) - %t592 = call i32 @lp_str_eq(ptr %t591, ptr @.str10272) + %t592 = call i32 @lp_str_eq(ptr %t591, ptr @.str10277) %t593 = icmp ne i32 %t592, 0 br i1 %t593, label %then149, label %ifend151 then149: @@ -135255,10 +135417,10 @@ then149: %t594 = load ptr, ptr %t573 %t595 = getelementptr inbounds %Cmp_Val, ptr %t594, i32 0, i32 0 %t596 = load ptr, ptr %t595 - %t597 = call ptr @lp_str_concat(ptr @.str10273, ptr %t596) - %t598 = call ptr @lp_str_concat(ptr %t597, ptr @.str10274) + %t597 = call ptr @lp_str_concat(ptr @.str10278, ptr %t596) + %t598 = call ptr @lp_str_concat(ptr %t597, ptr @.str10279) %t599 = call ptr @fn_emit_bind(ptr %t598) - %t600 = call ptr @fn_val(ptr %t599, ptr @.str10275) + %t600 = call ptr @fn_val(ptr %t599, ptr @.str10280) store ptr %t600, ptr %retval br label %ret ifend151: @@ -135266,15 +135428,15 @@ ifend151: %t601 = load ptr, ptr %t573 %t602 = getelementptr inbounds %Cmp_Val, ptr %t601, i32 0, i32 0 %t603 = load ptr, ptr %t602 - %t604 = call ptr @lp_str_concat(ptr @.str10276, ptr %t603) - %t605 = call ptr @lp_str_concat(ptr %t604, ptr @.str10277) + %t604 = call ptr @lp_str_concat(ptr @.str10281, ptr %t603) + %t605 = call ptr @lp_str_concat(ptr %t604, ptr @.str10282) %t606 = call ptr @fn_emit_bind(ptr %t605) - %t607 = call ptr @fn_val(ptr %t606, ptr @.str10278) + %t607 = call ptr @fn_val(ptr %t606, ptr @.str10283) store ptr %t607, ptr %retval br label %ret ifend140: %t608 = load ptr, ptr %t48 - %t609 = call i32 @lp_str_eq(ptr %t608, ptr @.str10279) + %t609 = call i32 @lp_str_eq(ptr %t608, ptr @.str10284) %t610 = icmp ne i32 %t609, 0 br i1 %t610, label %then152, label %ifend154 then152: @@ -135289,7 +135451,7 @@ then152: br i1 %t618, label %ixok155, label %ixbad156 ixbad156: %t619 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t619, ptr @.fmt_bounds, ptr @.str10280, i32 0, i32 %t617) + call i32 (ptr, ptr, ...) @fprintf(ptr %t619, ptr @.fmt_bounds, ptr @.str10285, i32 0, i32 %t617) call void @exit(i32 1) unreachable ixok155: @@ -135313,15 +135475,15 @@ ifend159: %t632 = getelementptr inbounds %Cmp_Val, ptr %t631, i32 0, i32 1 %t633 = load ptr, ptr %t632 %t634 = call ptr @fn_llty(ptr %t633) - %t635 = call i32 @lp_str_eq(ptr %t634, ptr @.str10281) + %t635 = call i32 @lp_str_eq(ptr %t634, ptr @.str10286) %t636 = icmp ne i32 %t635, 0 br i1 %t636, label %then160, label %else161 then160: %t637 = load ptr, ptr %t623 %t638 = getelementptr inbounds %Cmp_Val, ptr %t637, i32 0, i32 0 %t639 = load ptr, ptr %t638 - %t640 = call ptr @lp_str_concat(ptr %t639, ptr @.str10283) - %t641 = call ptr @lp_str_concat(ptr @.str10282, ptr %t640) + %t640 = call ptr @lp_str_concat(ptr %t639, ptr @.str10288) + %t641 = call ptr @lp_str_concat(ptr @.str10287, ptr %t640) call void @fn_emit(ptr %t641) br label %ifend162 else161: @@ -135329,34 +135491,34 @@ else161: %t643 = getelementptr inbounds %Cmp_Val, ptr %t642, i32 0, i32 1 %t644 = load ptr, ptr %t643 %t645 = call ptr @fn_llty(ptr %t644) - %t646 = call i32 @lp_str_eq(ptr %t645, ptr @.str10284) + %t646 = call i32 @lp_str_eq(ptr %t645, ptr @.str10289) %t647 = icmp ne i32 %t646, 0 br i1 %t647, label %then163, label %else164 then163: %t648 = load ptr, ptr %t623 %t649 = getelementptr inbounds %Cmp_Val, ptr %t648, i32 0, i32 0 %t650 = load ptr, ptr %t649 - %t651 = call ptr @lp_str_concat(ptr %t650, ptr @.str10286) - %t652 = call ptr @lp_str_concat(ptr @.str10285, ptr %t651) + %t651 = call ptr @lp_str_concat(ptr %t650, ptr @.str10291) + %t652 = call ptr @lp_str_concat(ptr @.str10290, ptr %t651) call void @fn_emit(ptr %t652) br label %ifend165 else164: %t653 = load ptr, ptr %t623 %t654 = getelementptr inbounds %Cmp_Val, ptr %t653, i32 0, i32 0 %t655 = load ptr, ptr %t654 - %t656 = call ptr @lp_str_concat(ptr %t655, ptr @.str10288) - %t657 = call ptr @lp_str_concat(ptr @.str10287, ptr %t656) + %t656 = call ptr @lp_str_concat(ptr %t655, ptr @.str10293) + %t657 = call ptr @lp_str_concat(ptr @.str10292, ptr %t656) call void @fn_emit(ptr %t657) br label %ifend165 ifend165: br label %ifend162 ifend162: - %t658 = call ptr @fn_val(ptr @.str10289, ptr @.str10290) + %t658 = call ptr @fn_val(ptr @.str10294, ptr @.str10295) store ptr %t658, ptr %retval br label %ret ifend154: %t659 = load ptr, ptr %t48 - %t660 = call i32 @lp_str_eq(ptr %t659, ptr @.str10291) + %t660 = call i32 @lp_str_eq(ptr %t659, ptr @.str10296) %t661 = icmp ne i32 %t660, 0 br i1 %t661, label %then166, label %ifend168 then166: @@ -135371,7 +135533,7 @@ then166: br i1 %t669, label %ixok169, label %ixbad170 ixbad170: %t670 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t670, ptr @.fmt_bounds, ptr @.str10292, i32 0, i32 %t668) + call i32 (ptr, ptr, ...) @fprintf(ptr %t670, ptr @.fmt_bounds, ptr @.str10297, i32 0, i32 %t668) call void @exit(i32 1) unreachable ixok169: @@ -135382,20 +135544,20 @@ ixok169: %t675 = load ptr, ptr %t674 %t676 = getelementptr inbounds %Cmp_Val, ptr %t675, i32 0, i32 0 %t677 = load ptr, ptr %t676 - %t678 = call ptr @lp_str_concat(ptr @.str10293, ptr %t677) - %t679 = call ptr @lp_str_concat(ptr %t678, ptr @.str10294) + %t678 = call ptr @lp_str_concat(ptr @.str10298, ptr %t677) + %t679 = call ptr @lp_str_concat(ptr %t678, ptr @.str10299) %t680 = call ptr @fn_emit_bind(ptr %t679) store ptr %t680, ptr %t681 %t682 = load ptr, ptr %t681 - %t683 = call ptr @lp_str_concat(ptr @.str10295, ptr %t682) - %t684 = call ptr @lp_str_concat(ptr %t683, ptr @.str10296) + %t683 = call ptr @lp_str_concat(ptr @.str10300, ptr %t682) + %t684 = call ptr @lp_str_concat(ptr %t683, ptr @.str10301) %t685 = call ptr @fn_emit_bind(ptr %t684) - %t686 = call ptr @fn_val(ptr %t685, ptr @.str10297) + %t686 = call ptr @fn_val(ptr %t685, ptr @.str10302) store ptr %t686, ptr %retval br label %ret ifend168: %t687 = load ptr, ptr %t48 - %t688 = call i32 @lp_str_eq(ptr %t687, ptr @.str10298) + %t688 = call i32 @lp_str_eq(ptr %t687, ptr @.str10303) %t689 = icmp ne i32 %t688, 0 br i1 %t689, label %then171, label %ifend173 then171: @@ -135410,19 +135572,19 @@ then171: br i1 %t697, label %ixok174, label %ixbad175 ixbad175: %t698 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t698, ptr @.fmt_bounds, ptr @.str10300, i32 0, i32 %t696) + call i32 (ptr, ptr, ...) @fprintf(ptr %t698, ptr @.fmt_bounds, ptr @.str10305, i32 0, i32 %t696) call void @exit(i32 1) unreachable ixok174: %t699 = getelementptr inbounds ptr, ptr %t694, i32 0 %t700 = load ptr, ptr %t699 %t701 = call ptr @fn_emit_expr(ptr %t700) - %t702 = call ptr @fn_emit_sized_slice(ptr @.str10299, ptr %t701) + %t702 = call ptr @fn_emit_sized_slice(ptr @.str10304, ptr %t701) store ptr %t702, ptr %retval br label %ret ifend173: %t704 = load ptr, ptr %t48 - %t705 = call i32 @lp_str_eq(ptr %t704, ptr @.str10301) + %t705 = call i32 @lp_str_eq(ptr %t704, ptr @.str10306) %t706 = icmp ne i32 %t705, 0 %t707 = zext i1 %t706 to i32 store i32 %t707, ptr %t703 @@ -135452,19 +135614,19 @@ then178: br i1 %t723, label %ixok181, label %ixbad182 ixbad182: %t724 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t724, ptr @.fmt_bounds, ptr @.str10303, i32 0, i32 %t722) + call i32 (ptr, ptr, ...) @fprintf(ptr %t724, ptr @.fmt_bounds, ptr @.str10308, i32 0, i32 %t722) call void @exit(i32 1) unreachable ixok181: %t725 = getelementptr inbounds ptr, ptr %t720, i32 0 %t726 = load ptr, ptr %t725 %t727 = call ptr @fn_emit_expr(ptr %t726) - %t728 = call ptr @fn_emit_sized_slice(ptr @.str10302, ptr %t727) + %t728 = call ptr @fn_emit_sized_slice(ptr @.str10307, ptr %t727) store ptr %t728, ptr %retval br label %ret ifend180: %t730 = load ptr, ptr %t48 - %t731 = call i32 @lp_str_eq(ptr %t730, ptr @.str10304) + %t731 = call i32 @lp_str_eq(ptr %t730, ptr @.str10309) %t732 = icmp ne i32 %t731, 0 %t733 = zext i1 %t732 to i32 store i32 %t733, ptr %t729 @@ -135494,19 +135656,19 @@ then185: br i1 %t749, label %ixok188, label %ixbad189 ixbad189: %t750 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t750, ptr @.fmt_bounds, ptr @.str10306, i32 0, i32 %t748) + call i32 (ptr, ptr, ...) @fprintf(ptr %t750, ptr @.fmt_bounds, ptr @.str10311, i32 0, i32 %t748) call void @exit(i32 1) unreachable ixok188: %t751 = getelementptr inbounds ptr, ptr %t746, i32 0 %t752 = load ptr, ptr %t751 %t753 = call ptr @fn_emit_expr(ptr %t752) - %t754 = call ptr @fn_emit_sized_slice(ptr @.str10305, ptr %t753) + %t754 = call ptr @fn_emit_sized_slice(ptr @.str10310, ptr %t753) store ptr %t754, ptr %retval br label %ret ifend187: %t756 = load ptr, ptr %t48 - %t757 = call i32 @lp_str_eq(ptr %t756, ptr @.str10307) + %t757 = call i32 @lp_str_eq(ptr %t756, ptr @.str10312) %t758 = icmp ne i32 %t757, 0 %t759 = zext i1 %t758 to i32 store i32 %t759, ptr %t755 @@ -135536,19 +135698,19 @@ then192: br i1 %t775, label %ixok195, label %ixbad196 ixbad196: %t776 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t776, ptr @.fmt_bounds, ptr @.str10309, i32 0, i32 %t774) + call i32 (ptr, ptr, ...) @fprintf(ptr %t776, ptr @.fmt_bounds, ptr @.str10314, i32 0, i32 %t774) call void @exit(i32 1) unreachable ixok195: %t777 = getelementptr inbounds ptr, ptr %t772, i32 0 %t778 = load ptr, ptr %t777 %t779 = call ptr @fn_emit_expr(ptr %t778) - %t780 = call ptr @fn_emit_sized_slice(ptr @.str10308, ptr %t779) + %t780 = call ptr @fn_emit_sized_slice(ptr @.str10313, ptr %t779) store ptr %t780, ptr %retval br label %ret ifend194: %t781 = load ptr, ptr %t48 - %t782 = call i32 @lp_str_eq(ptr %t781, ptr @.str10310) + %t782 = call i32 @lp_str_eq(ptr %t781, ptr @.str10315) %t783 = icmp ne i32 %t782, 0 br i1 %t783, label %then197, label %ifend199 then197: @@ -135558,7 +135720,7 @@ then197: br label %ret ifend199: %t786 = load ptr, ptr %t48 - %t787 = call i32 @lp_str_eq(ptr %t786, ptr @.str10311) + %t787 = call i32 @lp_str_eq(ptr %t786, ptr @.str10316) %t788 = icmp ne i32 %t787, 0 br i1 %t788, label %then200, label %ifend202 then200: @@ -135573,7 +135735,7 @@ then200: br i1 %t796, label %ixok203, label %ixbad204 ixbad204: %t797 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t797, ptr @.fmt_bounds, ptr @.str10312, i32 0, i32 %t795) + call i32 (ptr, ptr, ...) @fprintf(ptr %t797, ptr @.fmt_bounds, ptr @.str10317, i32 0, i32 %t795) call void @exit(i32 1) unreachable ixok203: @@ -135585,14 +135747,14 @@ ixok203: %t803 = getelementptr inbounds %Cmp_Val, ptr %t802, i32 0, i32 0 %t804 = load ptr, ptr %t803 %t805 = call ptr @fn_slice_field(ptr %t804, i32 0) - %t806 = call ptr @lp_str_concat(ptr @.str10313, ptr %t805) + %t806 = call ptr @lp_str_concat(ptr @.str10318, ptr %t805) %t807 = call ptr @fn_emit_bind(ptr %t806) - %t808 = call ptr @fn_val(ptr %t807, ptr @.str10314) + %t808 = call ptr @fn_val(ptr %t807, ptr @.str10319) store ptr %t808, ptr %retval br label %ret ifend202: %t809 = load ptr, ptr %t48 - %t810 = call i32 @lp_str_eq(ptr %t809, ptr @.str10315) + %t810 = call i32 @lp_str_eq(ptr %t809, ptr @.str10320) %t811 = icmp ne i32 %t810, 0 br i1 %t811, label %then205, label %ifend207 then205: @@ -135607,7 +135769,7 @@ then205: br i1 %t819, label %ixok208, label %ixbad209 ixbad209: %t820 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t820, ptr @.fmt_bounds, ptr @.str10316, i32 0, i32 %t818) + call i32 (ptr, ptr, ...) @fprintf(ptr %t820, ptr @.fmt_bounds, ptr @.str10321, i32 0, i32 %t818) call void @exit(i32 1) unreachable ixok208: @@ -135638,29 +135800,29 @@ then213: %t838 = load ptr, ptr %t824 %t839 = getelementptr inbounds %Cmp_Val, ptr %t838, i32 0, i32 0 %t840 = load ptr, ptr %t839 - %t841 = call ptr @fn_val(ptr %t840, ptr @.str10317) + %t841 = call ptr @fn_val(ptr %t840, ptr @.str10322) store ptr %t841, ptr %retval br label %ret ifend215: %t842 = load ptr, ptr %t824 %t843 = getelementptr inbounds %Cmp_Val, ptr %t842, i32 0, i32 0 %t844 = load ptr, ptr %t843 - %t845 = call ptr @lp_str_concat(ptr @.str10318, ptr %t844) - %t846 = call ptr @lp_str_concat(ptr %t845, ptr @.str10319) + %t845 = call ptr @lp_str_concat(ptr @.str10323, ptr %t844) + %t846 = call ptr @lp_str_concat(ptr %t845, ptr @.str10324) %t847 = call ptr @fn_emit_bind(ptr %t846) - %t848 = call ptr @fn_val(ptr %t847, ptr @.str10320) + %t848 = call ptr @fn_val(ptr %t847, ptr @.str10325) store ptr %t848, ptr %retval br label %ret ifend207: %t852 = load ptr, ptr %t48 - %t853 = call i32 @lp_str_eq(ptr %t852, ptr @.str10321) + %t853 = call i32 @lp_str_eq(ptr %t852, ptr @.str10326) %t854 = icmp ne i32 %t853, 0 %t855 = zext i1 %t854 to i32 store i32 %t855, ptr %t851 br i1 %t854, label %scend217, label %sc216 sc216: %t856 = load ptr, ptr %t48 - %t857 = call i32 @lp_str_eq(ptr %t856, ptr @.str10322) + %t857 = call i32 @lp_str_eq(ptr %t856, ptr @.str10327) %t858 = icmp ne i32 %t857, 0 %t859 = zext i1 %t858 to i32 store i32 %t859, ptr %t851 @@ -135715,7 +135877,7 @@ then222: br i1 %t891, label %ixok225, label %ixbad226 ixbad226: %t892 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t892, ptr @.fmt_bounds, ptr @.str10323, i32 0, i32 %t890) + call i32 (ptr, ptr, ...) @fprintf(ptr %t892, ptr @.fmt_bounds, ptr @.str10328, i32 0, i32 %t890) call void @exit(i32 1) unreachable ixok225: @@ -135727,7 +135889,7 @@ ixok225: br label %ret ifend224: %t899 = load ptr, ptr %t48 - %t900 = call i32 @lp_str_eq(ptr %t899, ptr @.str10324) + %t900 = call i32 @lp_str_eq(ptr %t899, ptr @.str10329) %t901 = icmp ne i32 %t900, 0 %t902 = zext i1 %t901 to i32 store i32 %t902, ptr %t898 @@ -135775,7 +135937,7 @@ then231: br i1 %t930, label %ixok234, label %ixbad235 ixbad235: %t931 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t931, ptr @.fmt_bounds, ptr @.str10325, i32 0, i32 %t929) + call i32 (ptr, ptr, ...) @fprintf(ptr %t931, ptr @.fmt_bounds, ptr @.str10330, i32 0, i32 %t929) call void @exit(i32 1) unreachable ixok234: @@ -135798,17 +135960,17 @@ ifend238: %t943 = load ptr, ptr %t935 %t944 = getelementptr inbounds %Cmp_Val, ptr %t943, i32 0, i32 1 %t945 = load ptr, ptr %t944 - %t946 = call i32 @lp_str_eq(ptr %t945, ptr @.str10326) + %t946 = call i32 @lp_str_eq(ptr %t945, ptr @.str10331) %t947 = icmp ne i32 %t946, 0 br i1 %t947, label %then239, label %ifend241 then239: %t948 = load ptr, ptr %t935 %t949 = getelementptr inbounds %Cmp_Val, ptr %t948, i32 0, i32 0 %t950 = load ptr, ptr %t949 - %t951 = call ptr @lp_str_concat(ptr @.str10327, ptr %t950) - %t952 = call ptr @lp_str_concat(ptr %t951, ptr @.str10328) + %t951 = call ptr @lp_str_concat(ptr @.str10332, ptr %t950) + %t952 = call ptr @lp_str_concat(ptr %t951, ptr @.str10333) %t953 = call ptr @fn_emit_bind(ptr %t952) - %t954 = call ptr @fn_val(ptr %t953, ptr @.str10329) + %t954 = call ptr @fn_val(ptr %t953, ptr @.str10334) store ptr %t954, ptr %retval br label %ret ifend241: @@ -135816,29 +135978,29 @@ ifend241: %t956 = getelementptr inbounds %Cmp_Val, ptr %t955, i32 0, i32 1 %t957 = load ptr, ptr %t956 %t958 = call ptr @fn_llty(ptr %t957) - %t959 = call i32 @lp_str_eq(ptr %t958, ptr @.str10330) + %t959 = call i32 @lp_str_eq(ptr %t958, ptr @.str10335) %t960 = icmp ne i32 %t959, 0 br i1 %t960, label %then242, label %ifend244 then242: %t961 = load ptr, ptr %t935 %t962 = getelementptr inbounds %Cmp_Val, ptr %t961, i32 0, i32 0 %t963 = load ptr, ptr %t962 - %t964 = call ptr @lp_str_concat(ptr @.str10331, ptr %t963) - %t965 = call ptr @lp_str_concat(ptr %t964, ptr @.str10332) + %t964 = call ptr @lp_str_concat(ptr @.str10336, ptr %t963) + %t965 = call ptr @lp_str_concat(ptr %t964, ptr @.str10337) %t966 = call ptr @fn_emit_bind(ptr %t965) - %t967 = call ptr @fn_val(ptr %t966, ptr @.str10333) + %t967 = call ptr @fn_val(ptr %t966, ptr @.str10338) store ptr %t967, ptr %retval br label %ret ifend244: %t968 = load ptr, ptr %t935 %t969 = getelementptr inbounds %Cmp_Val, ptr %t968, i32 0, i32 0 %t970 = load ptr, ptr %t969 - %t971 = call ptr @fn_val(ptr %t970, ptr @.str10334) + %t971 = call ptr @fn_val(ptr %t970, ptr @.str10339) store ptr %t971, ptr %retval br label %ret ifend233: %t974 = load ptr, ptr %t48 - %t975 = call i32 @lp_str_eq(ptr %t974, ptr @.str10335) + %t975 = call i32 @lp_str_eq(ptr %t974, ptr @.str10340) %t976 = icmp ne i32 %t975, 0 %t977 = zext i1 %t976 to i32 store i32 %t977, ptr %t973 @@ -135886,7 +136048,7 @@ then249: br i1 %t1005, label %ixok252, label %ixbad253 ixbad253: %t1006 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1006, ptr @.fmt_bounds, ptr @.str10336, i32 0, i32 %t1004) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1006, ptr @.fmt_bounds, ptr @.str10341, i32 0, i32 %t1004) call void @exit(i32 1) unreachable ixok252: @@ -135908,12 +136070,12 @@ then254: ifend256: %t1018 = load ptr, ptr %t1010 %t1019 = call ptr @fn_to_long(ptr %t1018) - %t1020 = call ptr @fn_val(ptr %t1019, ptr @.str10337) + %t1020 = call ptr @fn_val(ptr %t1019, ptr @.str10342) store ptr %t1020, ptr %retval br label %ret ifend251: %t1022 = load ptr, ptr %t48 - %t1023 = call i32 @lp_str_eq(ptr %t1022, ptr @.str10338) + %t1023 = call i32 @lp_str_eq(ptr %t1022, ptr @.str10343) %t1024 = icmp ne i32 %t1023, 0 %t1025 = zext i1 %t1024 to i32 store i32 %t1025, ptr %t1021 @@ -135943,7 +136105,7 @@ then259: br i1 %t1041, label %ixok262, label %ixbad263 ixbad263: %t1042 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1042, ptr @.fmt_bounds, ptr @.str10339, i32 0, i32 %t1040) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1042, ptr @.fmt_bounds, ptr @.str10344, i32 0, i32 %t1040) call void @exit(i32 1) unreachable ixok262: @@ -135955,7 +136117,7 @@ ixok262: br label %ret ifend261: %t1048 = load ptr, ptr %t48 - %t1049 = call i32 @lp_str_eq(ptr %t1048, ptr @.str10340) + %t1049 = call i32 @lp_str_eq(ptr %t1048, ptr @.str10345) %t1050 = icmp ne i32 %t1049, 0 %t1051 = zext i1 %t1050 to i32 store i32 %t1051, ptr %t1047 @@ -135985,7 +136147,7 @@ then266: br i1 %t1067, label %ixok269, label %ixbad270 ixbad270: %t1068 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1068, ptr @.fmt_bounds, ptr @.str10341, i32 0, i32 %t1066) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1068, ptr @.fmt_bounds, ptr @.str10346, i32 0, i32 %t1066) call void @exit(i32 1) unreachable ixok269: @@ -135997,7 +136159,7 @@ ixok269: br label %ret ifend268: %t1074 = load ptr, ptr %t48 - %t1075 = call i32 @lp_str_eq(ptr %t1074, ptr @.str10342) + %t1075 = call i32 @lp_str_eq(ptr %t1074, ptr @.str10347) %t1076 = icmp ne i32 %t1075, 0 %t1077 = zext i1 %t1076 to i32 store i32 %t1077, ptr %t1073 @@ -136027,7 +136189,7 @@ then273: br i1 %t1093, label %ixok276, label %ixbad277 ixbad277: %t1094 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1094, ptr @.fmt_bounds, ptr @.str10343, i32 0, i32 %t1092) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1094, ptr @.fmt_bounds, ptr @.str10348, i32 0, i32 %t1092) call void @exit(i32 1) unreachable ixok276: @@ -136039,7 +136201,7 @@ ixok276: br label %ret ifend275: %t1100 = load ptr, ptr %t48 - %t1101 = call i32 @lp_str_eq(ptr %t1100, ptr @.str10344) + %t1101 = call i32 @lp_str_eq(ptr %t1100, ptr @.str10349) %t1102 = icmp ne i32 %t1101, 0 %t1103 = zext i1 %t1102 to i32 store i32 %t1103, ptr %t1099 @@ -136069,7 +136231,7 @@ then280: br i1 %t1119, label %ixok283, label %ixbad284 ixbad284: %t1120 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1120, ptr @.fmt_bounds, ptr @.str10345, i32 0, i32 %t1118) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1120, ptr @.fmt_bounds, ptr @.str10350, i32 0, i32 %t1118) call void @exit(i32 1) unreachable ixok283: @@ -136081,14 +136243,14 @@ ixok283: br label %ret ifend282: %t1127 = load ptr, ptr %t48 - %t1128 = call i32 @lp_str_eq(ptr %t1127, ptr @.str10346) + %t1128 = call i32 @lp_str_eq(ptr %t1127, ptr @.str10351) %t1129 = icmp ne i32 %t1128, 0 %t1130 = zext i1 %t1129 to i32 store i32 %t1130, ptr %t1126 br i1 %t1129, label %scend286, label %sc285 sc285: %t1131 = load ptr, ptr %t48 - %t1132 = call i32 @lp_str_eq(ptr %t1131, ptr @.str10347) + %t1132 = call i32 @lp_str_eq(ptr %t1131, ptr @.str10352) %t1133 = icmp ne i32 %t1132, 0 %t1134 = zext i1 %t1133 to i32 store i32 %t1134, ptr %t1126 @@ -136113,13 +136275,13 @@ scend288: %t1145 = icmp ne i32 %t1144, 0 br i1 %t1145, label %then289, label %ifend291 then289: - store ptr @.str10348, ptr %t1146 + store ptr @.str10353, ptr %t1146 %t1147 = load ptr, ptr %t48 - %t1148 = call i32 @lp_str_eq(ptr %t1147, ptr @.str10349) + %t1148 = call i32 @lp_str_eq(ptr %t1147, ptr @.str10354) %t1149 = icmp ne i32 %t1148, 0 br i1 %t1149, label %then292, label %ifend294 then292: - store ptr @.str10350, ptr %t1146 + store ptr @.str10355, ptr %t1146 br label %ifend294 ifend294: %t1150 = load ptr, ptr %t1146 @@ -136134,7 +136296,7 @@ ifend294: br i1 %t1158, label %ixok295, label %ixbad296 ixbad296: %t1159 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1159, ptr @.fmt_bounds, ptr @.str10351, i32 0, i32 %t1157) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1159, ptr @.fmt_bounds, ptr @.str10356, i32 0, i32 %t1157) call void @exit(i32 1) unreachable ixok295: @@ -136146,7 +136308,7 @@ ixok295: br label %ret ifend291: %t1164 = load ptr, ptr %t48 - %t1165 = call i32 @lp_str_eq(ptr %t1164, ptr @.str10352) + %t1165 = call i32 @lp_str_eq(ptr %t1164, ptr @.str10357) %t1166 = icmp ne i32 %t1165, 0 br i1 %t1166, label %then297, label %ifend299 then297: @@ -136161,7 +136323,7 @@ then297: br i1 %t1174, label %ixok300, label %ixbad301 ixbad301: %t1175 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1175, ptr @.fmt_bounds, ptr @.str10353, i32 0, i32 %t1173) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1175, ptr @.fmt_bounds, ptr @.str10358, i32 0, i32 %t1173) call void @exit(i32 1) unreachable ixok300: @@ -136172,15 +136334,15 @@ ixok300: %t1180 = load ptr, ptr %t1179 %t1181 = getelementptr inbounds %Cmp_Val, ptr %t1180, i32 0, i32 0 %t1182 = load ptr, ptr %t1181 - %t1183 = call ptr @lp_str_concat(ptr @.str10354, ptr %t1182) - %t1184 = call ptr @lp_str_concat(ptr %t1183, ptr @.str10355) + %t1183 = call ptr @lp_str_concat(ptr @.str10359, ptr %t1182) + %t1184 = call ptr @lp_str_concat(ptr %t1183, ptr @.str10360) %t1185 = call ptr @fn_emit_bind(ptr %t1184) - %t1186 = call ptr @fn_val(ptr %t1185, ptr @.str10356) + %t1186 = call ptr @fn_val(ptr %t1185, ptr @.str10361) store ptr %t1186, ptr %retval br label %ret ifend299: %t1187 = load ptr, ptr %t48 - %t1188 = call i32 @lp_str_eq(ptr %t1187, ptr @.str10357) + %t1188 = call i32 @lp_str_eq(ptr %t1187, ptr @.str10362) %t1189 = icmp ne i32 %t1188, 0 br i1 %t1189, label %then302, label %ifend304 then302: @@ -136196,7 +136358,7 @@ then302: br i1 %t1197, label %ixok305, label %ixbad306 ixbad306: %t1198 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1198, ptr @.fmt_bounds, ptr @.str10358, i32 0, i32 %t1196) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1198, ptr @.fmt_bounds, ptr @.str10363, i32 0, i32 %t1196) call void @exit(i32 1) unreachable ixok305: @@ -136207,24 +136369,24 @@ ixok305: %t1203 = load ptr, ptr %t1202 %t1204 = getelementptr inbounds %Cmp_Val, ptr %t1203, i32 0, i32 0 %t1205 = load ptr, ptr %t1204 - %t1206 = call ptr @lp_str_concat(ptr @.str10359, ptr %t1205) - %t1207 = call ptr @lp_str_concat(ptr %t1206, ptr @.str10360) + %t1206 = call ptr @lp_str_concat(ptr @.str10364, ptr %t1205) + %t1207 = call ptr @lp_str_concat(ptr %t1206, ptr @.str10365) %t1208 = call ptr @fn_emit_bind(ptr %t1207) store ptr %t1208, ptr %t1209 %t1210 = load ptr, ptr %t0 %t1211 = call ptr @fn_expect_where(ptr %t1210) - %t1212 = call ptr @lp_str_concat(ptr %t1211, ptr @.str10361) + %t1212 = call ptr @lp_str_concat(ptr %t1211, ptr @.str10366) %t1213 = call ptr @fn_emit_str_const(ptr %t1212) store ptr %t1213, ptr %t1214 %t1215 = load ptr, ptr %t1209 %t1216 = load ptr, ptr %t1214 - call void @fn_emit_expect_fail(ptr %t1215, ptr %t1216, ptr @.str10362, ptr @.str10363) - %t1217 = call ptr @fn_val(ptr @.str10364, ptr @.str10365) + call void @fn_emit_expect_fail(ptr %t1215, ptr %t1216, ptr @.str10367, ptr @.str10368) + %t1217 = call ptr @fn_val(ptr @.str10369, ptr @.str10370) store ptr %t1217, ptr %retval br label %ret ifend304: %t1218 = load ptr, ptr %t48 - %t1219 = call i32 @lp_str_eq(ptr %t1218, ptr @.str10366) + %t1219 = call i32 @lp_str_eq(ptr %t1218, ptr @.str10371) %t1220 = icmp ne i32 %t1219, 0 br i1 %t1220, label %then307, label %ifend309 then307: @@ -136240,7 +136402,7 @@ then307: br i1 %t1228, label %ixok310, label %ixbad311 ixbad311: %t1229 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1229, ptr @.fmt_bounds, ptr @.str10367, i32 0, i32 %t1227) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1229, ptr @.fmt_bounds, ptr @.str10372, i32 0, i32 %t1227) call void @exit(i32 1) unreachable ixok310: @@ -136259,7 +136421,7 @@ ixok310: br i1 %t1241, label %ixok312, label %ixbad313 ixbad313: %t1242 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1242, ptr @.fmt_bounds, ptr @.str10368, i32 1, i32 %t1240) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1242, ptr @.fmt_bounds, ptr @.str10373, i32 1, i32 %t1240) call void @exit(i32 1) unreachable ixok312: @@ -136299,7 +136461,7 @@ ifend318: %t1267 = load ptr, ptr %t1233 %t1268 = getelementptr inbounds %Cmp_Val, ptr %t1267, i32 0, i32 1 %t1269 = load ptr, ptr %t1268 - %t1270 = call i32 @lp_str_eq(ptr %t1269, ptr @.str10369) + %t1270 = call i32 @lp_str_eq(ptr %t1269, ptr @.str10374) %t1271 = icmp ne i32 %t1270, 0 %t1272 = zext i1 %t1271 to i32 store i32 %t1272, ptr %t1266 @@ -136308,7 +136470,7 @@ sc319: %t1273 = load ptr, ptr %t1246 %t1274 = getelementptr inbounds %Cmp_Val, ptr %t1273, i32 0, i32 1 %t1275 = load ptr, ptr %t1274 - %t1276 = call i32 @lp_str_eq(ptr %t1275, ptr @.str10370) + %t1276 = call i32 @lp_str_eq(ptr %t1275, ptr @.str10375) %t1277 = icmp ne i32 %t1276, 0 %t1278 = zext i1 %t1277 to i32 store i32 %t1278, ptr %t1266 @@ -136328,8 +136490,8 @@ ifend323: %t1285 = load ptr, ptr %t1233 %t1286 = getelementptr inbounds %Cmp_Val, ptr %t1285, i32 0, i32 0 %t1287 = load ptr, ptr %t1286 - %t1288 = call ptr @lp_str_concat(ptr @.str10371, ptr %t1287) - %t1289 = call ptr @lp_str_concat(ptr %t1288, ptr @.str10372) + %t1288 = call ptr @lp_str_concat(ptr @.str10376, ptr %t1287) + %t1289 = call ptr @lp_str_concat(ptr %t1288, ptr @.str10377) %t1290 = load ptr, ptr %t1246 %t1291 = getelementptr inbounds %Cmp_Val, ptr %t1290, i32 0, i32 0 %t1292 = load ptr, ptr %t1291 @@ -136338,7 +136500,7 @@ ifend323: store ptr %t1294, ptr %t1295 %t1296 = load ptr, ptr %t0 %t1297 = call ptr @fn_expect_where(ptr %t1296) - %t1298 = call ptr @lp_str_concat(ptr %t1297, ptr @.str10373) + %t1298 = call ptr @lp_str_concat(ptr %t1297, ptr @.str10378) %t1299 = call ptr @fn_emit_str_const(ptr %t1298) store ptr %t1299, ptr %t1300 %t1301 = load ptr, ptr %t1295 @@ -136350,12 +136512,12 @@ ifend323: %t1307 = getelementptr inbounds %Cmp_Val, ptr %t1306, i32 0, i32 0 %t1308 = load ptr, ptr %t1307 call void @fn_emit_expect_fail(ptr %t1301, ptr %t1302, ptr %t1305, ptr %t1308) - %t1309 = call ptr @fn_val(ptr @.str10374, ptr @.str10375) + %t1309 = call ptr @fn_val(ptr @.str10379, ptr @.str10380) store ptr %t1309, ptr %retval br label %ret ifend309: %t1310 = load ptr, ptr %t48 - %t1311 = call i32 @lp_str_eq(ptr %t1310, ptr @.str10376) + %t1311 = call i32 @lp_str_eq(ptr %t1310, ptr @.str10381) %t1312 = icmp ne i32 %t1311, 0 br i1 %t1312, label %then324, label %ifend326 then324: @@ -136371,7 +136533,7 @@ then324: br i1 %t1320, label %ixok327, label %ixbad328 ixbad328: %t1321 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1321, ptr @.fmt_bounds, ptr @.str10377, i32 0, i32 %t1319) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1321, ptr @.fmt_bounds, ptr @.str10382, i32 0, i32 %t1319) call void @exit(i32 1) unreachable ixok327: @@ -136390,7 +136552,7 @@ ixok327: br i1 %t1333, label %ixok329, label %ixbad330 ixbad330: %t1334 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1334, ptr @.fmt_bounds, ptr @.str10378, i32 1, i32 %t1332) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1334, ptr @.fmt_bounds, ptr @.str10383, i32 1, i32 %t1332) call void @exit(i32 1) unreachable ixok329: @@ -136409,7 +136571,7 @@ ixok329: br i1 %t1346, label %ixok331, label %ixbad332 ixbad332: %t1347 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1347, ptr @.fmt_bounds, ptr @.str10379, i32 2, i32 %t1345) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1347, ptr @.fmt_bounds, ptr @.str10384, i32 2, i32 %t1345) call void @exit(i32 1) unreachable ixok331: @@ -136465,8 +136627,8 @@ ifend339: %t1382 = load ptr, ptr %t1325 %t1383 = getelementptr inbounds %Cmp_Val, ptr %t1382, i32 0, i32 0 %t1384 = load ptr, ptr %t1383 - %t1385 = call ptr @lp_str_concat(ptr @.str10380, ptr %t1384) - %t1386 = call ptr @lp_str_concat(ptr %t1385, ptr @.str10381) + %t1385 = call ptr @lp_str_concat(ptr @.str10385, ptr %t1384) + %t1386 = call ptr @lp_str_concat(ptr %t1385, ptr @.str10386) %t1387 = load ptr, ptr %t1338 %t1388 = getelementptr inbounds %Cmp_Val, ptr %t1387, i32 0, i32 0 %t1389 = load ptr, ptr %t1388 @@ -136474,27 +136636,27 @@ ifend339: %t1391 = call ptr @fn_emit_bind(ptr %t1390) store ptr %t1391, ptr %t1392 %t1393 = load ptr, ptr %t1392 - %t1394 = call ptr @lp_str_concat(ptr @.str10382, ptr %t1393) + %t1394 = call ptr @lp_str_concat(ptr @.str10387, ptr %t1393) %t1395 = call ptr @fn_emit_bind(ptr %t1394) store ptr %t1395, ptr %t1396 %t1397 = load ptr, ptr %t1392 - %t1398 = call ptr @lp_str_concat(ptr @.str10383, ptr %t1397) - %t1399 = call ptr @lp_str_concat(ptr %t1398, ptr @.str10384) + %t1398 = call ptr @lp_str_concat(ptr @.str10388, ptr %t1397) + %t1399 = call ptr @lp_str_concat(ptr %t1398, ptr @.str10389) %t1400 = call ptr @fn_emit_bind(ptr %t1399) store ptr %t1400, ptr %t1401 %t1402 = load ptr, ptr %t1401 - %t1403 = call ptr @lp_str_concat(ptr @.str10385, ptr %t1402) - %t1404 = call ptr @lp_str_concat(ptr %t1403, ptr @.str10386) + %t1403 = call ptr @lp_str_concat(ptr @.str10390, ptr %t1402) + %t1404 = call ptr @lp_str_concat(ptr %t1403, ptr @.str10391) %t1405 = load ptr, ptr %t1396 %t1406 = call ptr @lp_str_concat(ptr %t1404, ptr %t1405) - %t1407 = call ptr @lp_str_concat(ptr %t1406, ptr @.str10387) + %t1407 = call ptr @lp_str_concat(ptr %t1406, ptr @.str10392) %t1408 = load ptr, ptr %t1392 %t1409 = call ptr @lp_str_concat(ptr %t1407, ptr %t1408) %t1410 = call ptr @fn_emit_bind(ptr %t1409) store ptr %t1410, ptr %t1411 %t1412 = load ptr, ptr %t1411 - %t1413 = call ptr @lp_str_concat(ptr @.str10388, ptr %t1412) - %t1414 = call ptr @lp_str_concat(ptr %t1413, ptr @.str10389) + %t1413 = call ptr @lp_str_concat(ptr @.str10393, ptr %t1412) + %t1414 = call ptr @lp_str_concat(ptr %t1413, ptr @.str10394) %t1415 = load ptr, ptr %t1351 %t1416 = getelementptr inbounds %Cmp_Val, ptr %t1415, i32 0, i32 0 %t1417 = load ptr, ptr %t1416 @@ -136503,7 +136665,7 @@ ifend339: store ptr %t1419, ptr %t1420 %t1421 = load ptr, ptr %t0 %t1422 = call ptr @fn_expect_where(ptr %t1421) - %t1423 = call ptr @lp_str_concat(ptr %t1422, ptr @.str10390) + %t1423 = call ptr @lp_str_concat(ptr %t1422, ptr @.str10395) %t1424 = call ptr @fn_emit_str_const(ptr %t1423) store ptr %t1424, ptr %t1425 %t1426 = load ptr, ptr %t1420 @@ -136515,12 +136677,12 @@ ifend339: %t1432 = getelementptr inbounds %Cmp_Val, ptr %t1431, i32 0, i32 0 %t1433 = load ptr, ptr %t1432 call void @fn_emit_expect_fail(ptr %t1426, ptr %t1427, ptr %t1430, ptr %t1433) - %t1434 = call ptr @fn_val(ptr @.str10391, ptr @.str10392) + %t1434 = call ptr @fn_val(ptr @.str10396, ptr @.str10397) store ptr %t1434, ptr %retval br label %ret ifend326: %t1435 = load ptr, ptr %t48 - %t1436 = call i32 @lp_str_eq(ptr %t1435, ptr @.str10393) + %t1436 = call i32 @lp_str_eq(ptr %t1435, ptr @.str10398) %t1437 = icmp ne i32 %t1436, 0 br i1 %t1437, label %then340, label %ifend342 then340: @@ -136536,7 +136698,7 @@ then340: br i1 %t1445, label %ixok343, label %ixbad344 ixbad344: %t1446 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1446, ptr @.fmt_bounds, ptr @.str10394, i32 0, i32 %t1444) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1446, ptr @.fmt_bounds, ptr @.str10399, i32 0, i32 %t1444) call void @exit(i32 1) unreachable ixok343: @@ -136545,38 +136707,38 @@ ixok343: %t1449 = call ptr @fn_emit_expr(ptr %t1448) store ptr %t1449, ptr %t1450 %t1451 = load ptr, ptr @g_g_src_name - %t1452 = call ptr @lp_str_concat(ptr %t1451, ptr @.str10395) + %t1452 = call ptr @lp_str_concat(ptr %t1451, ptr @.str10400) %t1453 = load ptr, ptr %t0 %t1454 = getelementptr inbounds %Cmp_Node, ptr %t1453, i32 0, i32 8 %t1455 = load i32, ptr %t1454 %t1456 = call ptr @fn_itoa(i32 %t1455) %t1457 = call ptr @lp_str_concat(ptr %t1452, ptr %t1456) - %t1458 = call ptr @lp_str_concat(ptr %t1457, ptr @.str10396) + %t1458 = call ptr @lp_str_concat(ptr %t1457, ptr @.str10401) %t1459 = call ptr @fn_emit_str_const(ptr %t1458) store ptr %t1459, ptr %t1460 %t1461 = call ptr @fn_stdstream_rhs(i32 2) %t1462 = call ptr @fn_emit_bind(ptr %t1461) store ptr %t1462, ptr %t1463 %t1464 = load ptr, ptr %t1463 - %t1465 = call ptr @lp_str_concat(ptr @.str10397, ptr %t1464) - %t1466 = call ptr @lp_str_concat(ptr %t1465, ptr @.str10398) + %t1465 = call ptr @lp_str_concat(ptr @.str10402, ptr %t1464) + %t1466 = call ptr @lp_str_concat(ptr %t1465, ptr @.str10403) %t1467 = load ptr, ptr %t1460 %t1468 = call ptr @lp_str_concat(ptr %t1466, ptr %t1467) - %t1469 = call ptr @lp_str_concat(ptr %t1468, ptr @.str10399) + %t1469 = call ptr @lp_str_concat(ptr %t1468, ptr @.str10404) %t1470 = load ptr, ptr %t1450 %t1471 = getelementptr inbounds %Cmp_Val, ptr %t1470, i32 0, i32 0 %t1472 = load ptr, ptr %t1471 %t1473 = call ptr @lp_str_concat(ptr %t1469, ptr %t1472) - %t1474 = call ptr @lp_str_concat(ptr %t1473, ptr @.str10400) + %t1474 = call ptr @lp_str_concat(ptr %t1473, ptr @.str10405) call void @fn_emit(ptr %t1474) - call void @fn_emit(ptr @.str10401) + call void @fn_emit(ptr @.str10406) store i32 1, ptr @g_g_term - %t1475 = call ptr @fn_val(ptr @.str10402, ptr @.str10403) + %t1475 = call ptr @fn_val(ptr @.str10407, ptr @.str10408) store ptr %t1475, ptr %retval br label %ret ifend342: %t1476 = load ptr, ptr %t48 - %t1477 = call i32 @lp_str_eq(ptr %t1476, ptr @.str10404) + %t1477 = call i32 @lp_str_eq(ptr %t1476, ptr @.str10409) %t1478 = icmp ne i32 %t1477, 0 br i1 %t1478, label %then345, label %ifend347 then345: @@ -136592,7 +136754,7 @@ then345: br i1 %t1486, label %ixok348, label %ixbad349 ixbad349: %t1487 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1487, ptr @.fmt_bounds, ptr @.str10405, i32 0, i32 %t1485) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1487, ptr @.fmt_bounds, ptr @.str10410, i32 0, i32 %t1485) call void @exit(i32 1) unreachable ixok348: @@ -136603,26 +136765,26 @@ ixok348: %t1492 = load ptr, ptr %t1491 %t1493 = getelementptr inbounds %Cmp_Val, ptr %t1492, i32 0, i32 0 %t1494 = load ptr, ptr %t1493 - %t1495 = call ptr @lp_str_concat(ptr @.str10406, ptr %t1494) - %t1496 = call ptr @lp_str_concat(ptr %t1495, ptr @.str10407) + %t1495 = call ptr @lp_str_concat(ptr @.str10411, ptr %t1494) + %t1496 = call ptr @lp_str_concat(ptr %t1495, ptr @.str10412) %t1497 = call ptr @fn_emit_bind(ptr %t1496) store ptr %t1497, ptr %t1498 - %t1499 = call ptr @fn_lbl(ptr @.str10408) + %t1499 = call ptr @fn_lbl(ptr @.str10413) store ptr %t1499, ptr %t1500 - %t1501 = call ptr @fn_lbl(ptr @.str10409) + %t1501 = call ptr @fn_lbl(ptr @.str10414) store ptr %t1501, ptr %t1502 %t1503 = load ptr, ptr %t1498 - %t1504 = call ptr @lp_str_concat(ptr @.str10410, ptr %t1503) - %t1505 = call ptr @lp_str_concat(ptr %t1504, ptr @.str10411) + %t1504 = call ptr @lp_str_concat(ptr @.str10415, ptr %t1503) + %t1505 = call ptr @lp_str_concat(ptr %t1504, ptr @.str10416) %t1506 = load ptr, ptr %t1500 %t1507 = call ptr @lp_str_concat(ptr %t1505, ptr %t1506) - %t1508 = call ptr @lp_str_concat(ptr %t1507, ptr @.str10412) + %t1508 = call ptr @lp_str_concat(ptr %t1507, ptr @.str10417) %t1509 = load ptr, ptr %t1502 %t1510 = call ptr @lp_str_concat(ptr %t1508, ptr %t1509) - %t1511 = call ptr @lp_str_concat(ptr %t1510, ptr @.str10413) + %t1511 = call ptr @lp_str_concat(ptr %t1510, ptr @.str10418) call void @fn_emit(ptr %t1511) %t1512 = load ptr, ptr %t1502 - %t1513 = call ptr @lp_str_concat(ptr %t1512, ptr @.str10414) + %t1513 = call ptr @lp_str_concat(ptr %t1512, ptr @.str10419) call void @fn_emit(ptr %t1513) %t1514 = load ptr, ptr %t0 %t1515 = getelementptr inbounds %Cmp_Node, ptr %t1514, i32 0, i32 7 @@ -136635,7 +136797,7 @@ ixok348: br i1 %t1521, label %ixok350, label %ixbad351 ixbad351: %t1522 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1522, ptr @.fmt_bounds, ptr @.str10415, i32 1, i32 %t1520) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1522, ptr @.fmt_bounds, ptr @.str10420, i32 1, i32 %t1520) call void @exit(i32 1) unreachable ixok350: @@ -136644,46 +136806,46 @@ ixok350: %t1525 = call ptr @fn_emit_expr(ptr %t1524) store ptr %t1525, ptr %t1526 %t1527 = load ptr, ptr @g_g_src_name - %t1528 = call ptr @lp_str_concat(ptr %t1527, ptr @.str10416) + %t1528 = call ptr @lp_str_concat(ptr %t1527, ptr @.str10421) %t1529 = load ptr, ptr %t0 %t1530 = getelementptr inbounds %Cmp_Node, ptr %t1529, i32 0, i32 8 %t1531 = load i32, ptr %t1530 %t1532 = call ptr @fn_itoa(i32 %t1531) %t1533 = call ptr @lp_str_concat(ptr %t1528, ptr %t1532) - %t1534 = call ptr @lp_str_concat(ptr %t1533, ptr @.str10417) + %t1534 = call ptr @lp_str_concat(ptr %t1533, ptr @.str10422) %t1535 = call ptr @fn_emit_str_const(ptr %t1534) store ptr %t1535, ptr %t1536 %t1537 = call ptr @fn_stdstream_rhs(i32 2) %t1538 = call ptr @fn_emit_bind(ptr %t1537) store ptr %t1538, ptr %t1539 %t1540 = load ptr, ptr %t1539 - %t1541 = call ptr @lp_str_concat(ptr @.str10418, ptr %t1540) - %t1542 = call ptr @lp_str_concat(ptr %t1541, ptr @.str10419) + %t1541 = call ptr @lp_str_concat(ptr @.str10423, ptr %t1540) + %t1542 = call ptr @lp_str_concat(ptr %t1541, ptr @.str10424) %t1543 = load ptr, ptr %t1536 %t1544 = call ptr @lp_str_concat(ptr %t1542, ptr %t1543) - %t1545 = call ptr @lp_str_concat(ptr %t1544, ptr @.str10420) + %t1545 = call ptr @lp_str_concat(ptr %t1544, ptr @.str10425) %t1546 = load ptr, ptr %t1526 %t1547 = getelementptr inbounds %Cmp_Val, ptr %t1546, i32 0, i32 0 %t1548 = load ptr, ptr %t1547 %t1549 = call ptr @lp_str_concat(ptr %t1545, ptr %t1548) - %t1550 = call ptr @lp_str_concat(ptr %t1549, ptr @.str10421) + %t1550 = call ptr @lp_str_concat(ptr %t1549, ptr @.str10426) call void @fn_emit(ptr %t1550) - call void @fn_emit(ptr @.str10422) + call void @fn_emit(ptr @.str10427) %t1551 = load ptr, ptr %t1500 - %t1552 = call ptr @lp_str_concat(ptr %t1551, ptr @.str10423) + %t1552 = call ptr @lp_str_concat(ptr %t1551, ptr @.str10428) call void @fn_emit(ptr %t1552) - %t1553 = call ptr @fn_val(ptr @.str10424, ptr @.str10425) + %t1553 = call ptr @fn_val(ptr @.str10429, ptr @.str10430) store ptr %t1553, ptr %retval br label %ret ifend347: %t1555 = load ptr, ptr %t48 - %t1556 = call i32 @lp_str_eq(ptr %t1555, ptr @.str10426) + %t1556 = call i32 @lp_str_eq(ptr %t1555, ptr @.str10431) %t1557 = icmp ne i32 %t1556, 0 %t1558 = zext i1 %t1557 to i32 store i32 %t1558, ptr %t1554 br i1 %t1557, label %sc352, label %scend353 sc352: - %t1559 = call ptr @fn_find_fn(ptr @.str10427) + %t1559 = call ptr @fn_find_fn(ptr @.str10432) %t1560 = icmp eq ptr %t1559, null %t1561 = zext i1 %t1560 to i32 %t1562 = icmp ne i32 %t1561, 0 @@ -136707,7 +136869,7 @@ then354: br i1 %t1573, label %ixok357, label %ixbad358 ixbad358: %t1574 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1574, ptr @.fmt_bounds, ptr @.str10428, i32 0, i32 %t1572) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1574, ptr @.fmt_bounds, ptr @.str10433, i32 0, i32 %t1572) call void @exit(i32 1) unreachable ixok357: @@ -136715,52 +136877,52 @@ ixok357: %t1576 = load ptr, ptr %t1575 %t1577 = call ptr @fn_emit_expr(ptr %t1576) store ptr %t1577, ptr %t1578 - %t1579 = call ptr @fn_emit_bind(ptr @.str10429) + %t1579 = call ptr @fn_emit_bind(ptr @.str10434) store ptr %t1579, ptr %t1580 %t1581 = load ptr, ptr %t1580 - %t1582 = call ptr @lp_str_concat(ptr @.str10430, ptr %t1581) - %t1583 = call ptr @lp_str_concat(ptr %t1582, ptr @.str10431) + %t1582 = call ptr @lp_str_concat(ptr @.str10435, ptr %t1581) + %t1583 = call ptr @lp_str_concat(ptr %t1582, ptr @.str10436) %t1584 = call ptr @fn_emit_bind(ptr %t1583) store ptr %t1584, ptr %t1585 %t1586 = load ptr, ptr %t1585 - %t1587 = call ptr @lp_str_concat(ptr @.str10432, ptr %t1586) - %t1588 = call ptr @lp_str_concat(ptr %t1587, ptr @.str10433) + %t1587 = call ptr @lp_str_concat(ptr @.str10437, ptr %t1586) + %t1588 = call ptr @lp_str_concat(ptr %t1587, ptr @.str10438) call void @fn_emit(ptr %t1588) %t1589 = load ptr, ptr %t1580 - %t1590 = call ptr @lp_str_concat(ptr @.str10434, ptr %t1589) - %t1591 = call ptr @lp_str_concat(ptr %t1590, ptr @.str10435) + %t1590 = call ptr @lp_str_concat(ptr @.str10439, ptr %t1589) + %t1591 = call ptr @lp_str_concat(ptr %t1590, ptr @.str10440) %t1592 = call ptr @fn_emit_bind(ptr %t1591) store ptr %t1592, ptr %t1593 %t1594 = load ptr, ptr %t1578 - %t1595 = call ptr @fn_coerce_code(ptr %t1594, ptr @.str10437) - %t1596 = call ptr @lp_str_concat(ptr @.str10436, ptr %t1595) - %t1597 = call ptr @lp_str_concat(ptr %t1596, ptr @.str10438) + %t1595 = call ptr @fn_coerce_code(ptr %t1594, ptr @.str10442) + %t1596 = call ptr @lp_str_concat(ptr @.str10441, ptr %t1595) + %t1597 = call ptr @lp_str_concat(ptr %t1596, ptr @.str10443) %t1598 = load ptr, ptr %t1593 %t1599 = call ptr @lp_str_concat(ptr %t1597, ptr %t1598) - %t1600 = call ptr @lp_str_concat(ptr %t1599, ptr @.str10439) + %t1600 = call ptr @lp_str_concat(ptr %t1599, ptr @.str10444) call void @fn_emit(ptr %t1600) %t1601 = load ptr, ptr %t1580 - %t1602 = call ptr @lp_str_concat(ptr @.str10440, ptr %t1601) - %t1603 = call ptr @lp_str_concat(ptr %t1602, ptr @.str10441) + %t1602 = call ptr @lp_str_concat(ptr @.str10445, ptr %t1601) + %t1603 = call ptr @lp_str_concat(ptr %t1602, ptr @.str10446) %t1604 = call ptr @fn_emit_bind(ptr %t1603) store ptr %t1604, ptr %t1605 %t1606 = load ptr, ptr %t1605 - %t1607 = call ptr @lp_str_concat(ptr @.str10442, ptr %t1606) - %t1608 = call ptr @lp_str_concat(ptr %t1607, ptr @.str10443) + %t1607 = call ptr @lp_str_concat(ptr @.str10447, ptr %t1606) + %t1608 = call ptr @lp_str_concat(ptr %t1607, ptr @.str10448) call void @fn_emit(ptr %t1608) %t1609 = load ptr, ptr %t1580 - %t1610 = call ptr @fn_val(ptr %t1609, ptr @.str10444) + %t1610 = call ptr @fn_val(ptr %t1609, ptr @.str10449) store ptr %t1610, ptr %retval br label %ret ifend356: %t1612 = load ptr, ptr %t48 - %t1613 = call i32 @lp_str_eq(ptr %t1612, ptr @.str10445) + %t1613 = call i32 @lp_str_eq(ptr %t1612, ptr @.str10450) %t1614 = icmp ne i32 %t1613, 0 %t1615 = zext i1 %t1614 to i32 store i32 %t1615, ptr %t1611 br i1 %t1614, label %sc359, label %scend360 sc359: - %t1616 = call ptr @fn_find_fn(ptr @.str10446) + %t1616 = call ptr @fn_find_fn(ptr @.str10451) %t1617 = icmp eq ptr %t1616, null %t1618 = zext i1 %t1617 to i32 %t1619 = icmp ne i32 %t1618, 0 @@ -136784,7 +136946,7 @@ then361: br i1 %t1630, label %ixok364, label %ixbad365 ixbad365: %t1631 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1631, ptr @.fmt_bounds, ptr @.str10447, i32 0, i32 %t1629) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1631, ptr @.fmt_bounds, ptr @.str10452, i32 0, i32 %t1629) call void @exit(i32 1) unreachable ixok364: @@ -136792,53 +136954,53 @@ ixok364: %t1633 = load ptr, ptr %t1632 %t1634 = call ptr @fn_emit_expr(ptr %t1633) store ptr %t1634, ptr %t1635 - %t1636 = call ptr @fn_emit_bind(ptr @.str10448) + %t1636 = call ptr @fn_emit_bind(ptr @.str10453) store ptr %t1636, ptr %t1637 %t1638 = load ptr, ptr %t1637 - %t1639 = call ptr @lp_str_concat(ptr @.str10449, ptr %t1638) - %t1640 = call ptr @lp_str_concat(ptr %t1639, ptr @.str10450) + %t1639 = call ptr @lp_str_concat(ptr @.str10454, ptr %t1638) + %t1640 = call ptr @lp_str_concat(ptr %t1639, ptr @.str10455) %t1641 = call ptr @fn_emit_bind(ptr %t1640) store ptr %t1641, ptr %t1642 %t1643 = load ptr, ptr %t1642 - %t1644 = call ptr @lp_str_concat(ptr @.str10451, ptr %t1643) - %t1645 = call ptr @lp_str_concat(ptr %t1644, ptr @.str10452) + %t1644 = call ptr @lp_str_concat(ptr @.str10456, ptr %t1643) + %t1645 = call ptr @lp_str_concat(ptr %t1644, ptr @.str10457) call void @fn_emit(ptr %t1645) %t1646 = load ptr, ptr %t1637 - %t1647 = call ptr @lp_str_concat(ptr @.str10453, ptr %t1646) - %t1648 = call ptr @lp_str_concat(ptr %t1647, ptr @.str10454) + %t1647 = call ptr @lp_str_concat(ptr @.str10458, ptr %t1646) + %t1648 = call ptr @lp_str_concat(ptr %t1647, ptr @.str10459) %t1649 = call ptr @fn_emit_bind(ptr %t1648) store ptr %t1649, ptr %t1650 %t1651 = load ptr, ptr %t1650 - %t1652 = call ptr @lp_str_concat(ptr @.str10455, ptr %t1651) - %t1653 = call ptr @lp_str_concat(ptr %t1652, ptr @.str10456) + %t1652 = call ptr @lp_str_concat(ptr @.str10460, ptr %t1651) + %t1653 = call ptr @lp_str_concat(ptr %t1652, ptr @.str10461) call void @fn_emit(ptr %t1653) %t1654 = load ptr, ptr %t1637 - %t1655 = call ptr @lp_str_concat(ptr @.str10457, ptr %t1654) - %t1656 = call ptr @lp_str_concat(ptr %t1655, ptr @.str10458) + %t1655 = call ptr @lp_str_concat(ptr @.str10462, ptr %t1654) + %t1656 = call ptr @lp_str_concat(ptr %t1655, ptr @.str10463) %t1657 = call ptr @fn_emit_bind(ptr %t1656) store ptr %t1657, ptr %t1658 %t1659 = load ptr, ptr %t1635 %t1660 = getelementptr inbounds %Cmp_Val, ptr %t1659, i32 0, i32 0 %t1661 = load ptr, ptr %t1660 - %t1662 = call ptr @lp_str_concat(ptr @.str10459, ptr %t1661) - %t1663 = call ptr @lp_str_concat(ptr %t1662, ptr @.str10460) + %t1662 = call ptr @lp_str_concat(ptr @.str10464, ptr %t1661) + %t1663 = call ptr @lp_str_concat(ptr %t1662, ptr @.str10465) %t1664 = load ptr, ptr %t1658 %t1665 = call ptr @lp_str_concat(ptr %t1663, ptr %t1664) - %t1666 = call ptr @lp_str_concat(ptr %t1665, ptr @.str10461) + %t1666 = call ptr @lp_str_concat(ptr %t1665, ptr @.str10466) call void @fn_emit(ptr %t1666) %t1667 = load ptr, ptr %t1637 - %t1668 = call ptr @fn_val(ptr %t1667, ptr @.str10462) + %t1668 = call ptr @fn_val(ptr %t1667, ptr @.str10467) store ptr %t1668, ptr %retval br label %ret ifend363: %t1670 = load ptr, ptr %t48 - %t1671 = call i32 @lp_str_eq(ptr %t1670, ptr @.str10463) + %t1671 = call i32 @lp_str_eq(ptr %t1670, ptr @.str10468) %t1672 = icmp ne i32 %t1671, 0 %t1673 = zext i1 %t1672 to i32 store i32 %t1673, ptr %t1669 br i1 %t1672, label %sc366, label %scend367 sc366: - %t1674 = call ptr @fn_find_fn(ptr @.str10464) + %t1674 = call ptr @fn_find_fn(ptr @.str10469) %t1675 = icmp eq ptr %t1674, null %t1676 = zext i1 %t1675 to i32 %t1677 = icmp ne i32 %t1676, 0 @@ -136861,7 +137023,7 @@ then368: br i1 %t1688, label %ixok371, label %ixbad372 ixbad372: %t1689 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1689, ptr @.fmt_bounds, ptr @.str10465, i32 0, i32 %t1687) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1689, ptr @.fmt_bounds, ptr @.str10470, i32 0, i32 %t1687) call void @exit(i32 1) unreachable ixok371: @@ -136872,35 +137034,35 @@ ixok371: %t1694 = load ptr, ptr %t1693 %t1695 = getelementptr inbounds %Cmp_Val, ptr %t1694, i32 0, i32 0 %t1696 = load ptr, ptr %t1695 - %t1697 = call ptr @lp_str_concat(ptr @.str10466, ptr %t1696) - %t1698 = call ptr @lp_str_concat(ptr %t1697, ptr @.str10467) + %t1697 = call ptr @lp_str_concat(ptr @.str10471, ptr %t1696) + %t1698 = call ptr @lp_str_concat(ptr %t1697, ptr @.str10472) %t1699 = call ptr @fn_emit_bind(ptr %t1698) store ptr %t1699, ptr %t1700 %t1701 = load ptr, ptr %t1700 - %t1702 = call ptr @lp_str_concat(ptr @.str10468, ptr %t1701) + %t1702 = call ptr @lp_str_concat(ptr @.str10473, ptr %t1701) %t1703 = call ptr @fn_emit_bind(ptr %t1702) store ptr %t1703, ptr %t1704 %t1705 = load ptr, ptr %t1704 - %t1706 = call ptr @lp_str_concat(ptr @.str10469, ptr %t1705) - %t1707 = call ptr @lp_str_concat(ptr %t1706, ptr @.str10470) + %t1706 = call ptr @lp_str_concat(ptr @.str10474, ptr %t1705) + %t1707 = call ptr @lp_str_concat(ptr %t1706, ptr @.str10475) %t1708 = call ptr @fn_emit_bind(ptr %t1707) store ptr %t1708, ptr %t1709 %t1710 = load ptr, ptr %t1709 - %t1711 = call ptr @lp_str_concat(ptr @.str10471, ptr %t1710) - %t1712 = call ptr @lp_str_concat(ptr %t1711, ptr @.str10472) + %t1711 = call ptr @lp_str_concat(ptr @.str10476, ptr %t1710) + %t1712 = call ptr @lp_str_concat(ptr %t1711, ptr @.str10477) %t1713 = call ptr @fn_emit_bind(ptr %t1712) - %t1714 = call ptr @fn_val(ptr %t1713, ptr @.str10473) + %t1714 = call ptr @fn_val(ptr %t1713, ptr @.str10478) store ptr %t1714, ptr %retval br label %ret ifend370: %t1716 = load ptr, ptr %t48 - %t1717 = call i32 @lp_str_eq(ptr %t1716, ptr @.str10474) + %t1717 = call i32 @lp_str_eq(ptr %t1716, ptr @.str10479) %t1718 = icmp ne i32 %t1717, 0 %t1719 = zext i1 %t1718 to i32 store i32 %t1719, ptr %t1715 br i1 %t1718, label %sc373, label %scend374 sc373: - %t1720 = call ptr @fn_find_fn(ptr @.str10475) + %t1720 = call ptr @fn_find_fn(ptr @.str10480) %t1721 = icmp eq ptr %t1720, null %t1722 = zext i1 %t1721 to i32 %t1723 = icmp ne i32 %t1722, 0 @@ -136923,7 +137085,7 @@ then375: br i1 %t1734, label %ixok378, label %ixbad379 ixbad379: %t1735 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1735, ptr @.fmt_bounds, ptr @.str10476, i32 0, i32 %t1733) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1735, ptr @.fmt_bounds, ptr @.str10481, i32 0, i32 %t1733) call void @exit(i32 1) unreachable ixok378: @@ -136934,35 +137096,35 @@ ixok378: %t1740 = load ptr, ptr %t1739 %t1741 = getelementptr inbounds %Cmp_Val, ptr %t1740, i32 0, i32 0 %t1742 = load ptr, ptr %t1741 - %t1743 = call ptr @lp_str_concat(ptr @.str10477, ptr %t1742) - %t1744 = call ptr @lp_str_concat(ptr %t1743, ptr @.str10478) + %t1743 = call ptr @lp_str_concat(ptr @.str10482, ptr %t1742) + %t1744 = call ptr @lp_str_concat(ptr %t1743, ptr @.str10483) %t1745 = call ptr @fn_emit_bind(ptr %t1744) store ptr %t1745, ptr %t1746 %t1747 = load ptr, ptr %t1746 - %t1748 = call ptr @lp_str_concat(ptr @.str10479, ptr %t1747) + %t1748 = call ptr @lp_str_concat(ptr @.str10484, ptr %t1747) %t1749 = call ptr @fn_emit_bind(ptr %t1748) store ptr %t1749, ptr %t1750 %t1751 = load ptr, ptr %t1750 - %t1752 = call ptr @lp_str_concat(ptr @.str10480, ptr %t1751) - %t1753 = call ptr @lp_str_concat(ptr %t1752, ptr @.str10481) + %t1752 = call ptr @lp_str_concat(ptr @.str10485, ptr %t1751) + %t1753 = call ptr @lp_str_concat(ptr %t1752, ptr @.str10486) %t1754 = call ptr @fn_emit_bind(ptr %t1753) store ptr %t1754, ptr %t1755 %t1756 = load ptr, ptr %t1755 - %t1757 = call ptr @lp_str_concat(ptr @.str10482, ptr %t1756) - %t1758 = call ptr @lp_str_concat(ptr %t1757, ptr @.str10483) + %t1757 = call ptr @lp_str_concat(ptr @.str10487, ptr %t1756) + %t1758 = call ptr @lp_str_concat(ptr %t1757, ptr @.str10488) %t1759 = call ptr @fn_emit_bind(ptr %t1758) - %t1760 = call ptr @fn_val(ptr %t1759, ptr @.str10484) + %t1760 = call ptr @fn_val(ptr %t1759, ptr @.str10489) store ptr %t1760, ptr %retval br label %ret ifend377: %t1762 = load ptr, ptr %t48 - %t1763 = call i32 @lp_str_eq(ptr %t1762, ptr @.str10485) + %t1763 = call i32 @lp_str_eq(ptr %t1762, ptr @.str10490) %t1764 = icmp ne i32 %t1763, 0 %t1765 = zext i1 %t1764 to i32 store i32 %t1765, ptr %t1761 br i1 %t1764, label %sc380, label %scend381 sc380: - %t1766 = call ptr @fn_find_fn(ptr @.str10486) + %t1766 = call ptr @fn_find_fn(ptr @.str10491) %t1767 = icmp eq ptr %t1766, null %t1768 = zext i1 %t1767 to i32 %t1769 = icmp ne i32 %t1768, 0 @@ -136986,7 +137148,7 @@ then382: br i1 %t1780, label %ixok385, label %ixbad386 ixbad386: %t1781 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1781, ptr @.fmt_bounds, ptr @.str10487, i32 0, i32 %t1779) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1781, ptr @.fmt_bounds, ptr @.str10492, i32 0, i32 %t1779) call void @exit(i32 1) unreachable ixok385: @@ -136994,43 +137156,43 @@ ixok385: %t1783 = load ptr, ptr %t1782 %t1784 = call ptr @fn_emit_expr(ptr %t1783) store ptr %t1784, ptr %t1785 - %t1786 = call ptr @fn_emit_bind(ptr @.str10488) + %t1786 = call ptr @fn_emit_bind(ptr @.str10493) store ptr %t1786, ptr %t1787 %t1788 = load ptr, ptr %t1787 - %t1789 = call ptr @lp_str_concat(ptr @.str10489, ptr %t1788) - %t1790 = call ptr @lp_str_concat(ptr %t1789, ptr @.str10490) + %t1789 = call ptr @lp_str_concat(ptr @.str10494, ptr %t1788) + %t1790 = call ptr @lp_str_concat(ptr %t1789, ptr @.str10495) %t1791 = call ptr @fn_emit_bind(ptr %t1790) store ptr %t1791, ptr %t1792 %t1793 = load ptr, ptr %t1792 - %t1794 = call ptr @lp_str_concat(ptr @.str10491, ptr %t1793) - %t1795 = call ptr @lp_str_concat(ptr %t1794, ptr @.str10492) + %t1794 = call ptr @lp_str_concat(ptr @.str10496, ptr %t1793) + %t1795 = call ptr @lp_str_concat(ptr %t1794, ptr @.str10497) call void @fn_emit(ptr %t1795) %t1796 = load ptr, ptr %t1787 - %t1797 = call ptr @lp_str_concat(ptr @.str10493, ptr %t1796) - %t1798 = call ptr @lp_str_concat(ptr %t1797, ptr @.str10494) + %t1797 = call ptr @lp_str_concat(ptr @.str10498, ptr %t1796) + %t1798 = call ptr @lp_str_concat(ptr %t1797, ptr @.str10499) %t1799 = call ptr @fn_emit_bind(ptr %t1798) store ptr %t1799, ptr %t1800 %t1801 = load ptr, ptr %t1785 - %t1802 = call ptr @fn_coerce_code(ptr %t1801, ptr @.str10496) - %t1803 = call ptr @lp_str_concat(ptr @.str10495, ptr %t1802) - %t1804 = call ptr @lp_str_concat(ptr %t1803, ptr @.str10497) + %t1802 = call ptr @fn_coerce_code(ptr %t1801, ptr @.str10501) + %t1803 = call ptr @lp_str_concat(ptr @.str10500, ptr %t1802) + %t1804 = call ptr @lp_str_concat(ptr %t1803, ptr @.str10502) %t1805 = load ptr, ptr %t1800 %t1806 = call ptr @lp_str_concat(ptr %t1804, ptr %t1805) - %t1807 = call ptr @lp_str_concat(ptr %t1806, ptr @.str10498) + %t1807 = call ptr @lp_str_concat(ptr %t1806, ptr @.str10503) call void @fn_emit(ptr %t1807) %t1808 = load ptr, ptr %t1787 - %t1809 = call ptr @fn_val(ptr %t1808, ptr @.str10499) + %t1809 = call ptr @fn_val(ptr %t1808, ptr @.str10504) store ptr %t1809, ptr %retval br label %ret ifend384: %t1811 = load ptr, ptr %t48 - %t1812 = call i32 @lp_str_eq(ptr %t1811, ptr @.str10500) + %t1812 = call i32 @lp_str_eq(ptr %t1811, ptr @.str10505) %t1813 = icmp ne i32 %t1812, 0 %t1814 = zext i1 %t1813 to i32 store i32 %t1814, ptr %t1810 br i1 %t1813, label %sc387, label %scend388 sc387: - %t1815 = call ptr @fn_find_fn(ptr @.str10501) + %t1815 = call ptr @fn_find_fn(ptr @.str10506) %t1816 = icmp eq ptr %t1815, null %t1817 = zext i1 %t1816 to i32 %t1818 = icmp ne i32 %t1817, 0 @@ -137043,39 +137205,39 @@ scend388: br i1 %t1821, label %then389, label %ifend391 then389: store i32 1, ptr @g_g_uses_option - %t1822 = call ptr @fn_emit_bind(ptr @.str10502) + %t1822 = call ptr @fn_emit_bind(ptr @.str10507) store ptr %t1822, ptr %t1823 %t1824 = load ptr, ptr %t1823 - %t1825 = call ptr @lp_str_concat(ptr @.str10503, ptr %t1824) - %t1826 = call ptr @lp_str_concat(ptr %t1825, ptr @.str10504) + %t1825 = call ptr @lp_str_concat(ptr @.str10508, ptr %t1824) + %t1826 = call ptr @lp_str_concat(ptr %t1825, ptr @.str10509) %t1827 = call ptr @fn_emit_bind(ptr %t1826) store ptr %t1827, ptr %t1828 %t1829 = load ptr, ptr %t1828 - %t1830 = call ptr @lp_str_concat(ptr @.str10505, ptr %t1829) - %t1831 = call ptr @lp_str_concat(ptr %t1830, ptr @.str10506) + %t1830 = call ptr @lp_str_concat(ptr @.str10510, ptr %t1829) + %t1831 = call ptr @lp_str_concat(ptr %t1830, ptr @.str10511) call void @fn_emit(ptr %t1831) %t1832 = load ptr, ptr %t1823 - %t1833 = call ptr @lp_str_concat(ptr @.str10507, ptr %t1832) - %t1834 = call ptr @lp_str_concat(ptr %t1833, ptr @.str10508) + %t1833 = call ptr @lp_str_concat(ptr @.str10512, ptr %t1832) + %t1834 = call ptr @lp_str_concat(ptr %t1833, ptr @.str10513) %t1835 = call ptr @fn_emit_bind(ptr %t1834) store ptr %t1835, ptr %t1836 %t1837 = load ptr, ptr %t1836 - %t1838 = call ptr @lp_str_concat(ptr @.str10509, ptr %t1837) - %t1839 = call ptr @lp_str_concat(ptr %t1838, ptr @.str10510) + %t1838 = call ptr @lp_str_concat(ptr @.str10514, ptr %t1837) + %t1839 = call ptr @lp_str_concat(ptr %t1838, ptr @.str10515) call void @fn_emit(ptr %t1839) %t1840 = load ptr, ptr %t1823 - %t1841 = call ptr @fn_val(ptr %t1840, ptr @.str10511) + %t1841 = call ptr @fn_val(ptr %t1840, ptr @.str10516) store ptr %t1841, ptr %retval br label %ret ifend391: %t1843 = load ptr, ptr %t48 - %t1844 = call i32 @lp_str_eq(ptr %t1843, ptr @.str10512) + %t1844 = call i32 @lp_str_eq(ptr %t1843, ptr @.str10517) %t1845 = icmp ne i32 %t1844, 0 %t1846 = zext i1 %t1845 to i32 store i32 %t1846, ptr %t1842 br i1 %t1845, label %sc392, label %scend393 sc392: - %t1847 = call ptr @fn_find_fn(ptr @.str10513) + %t1847 = call ptr @fn_find_fn(ptr @.str10518) %t1848 = icmp eq ptr %t1847, null %t1849 = zext i1 %t1848 to i32 %t1850 = icmp ne i32 %t1849, 0 @@ -137098,7 +137260,7 @@ then394: br i1 %t1861, label %ixok397, label %ixbad398 ixbad398: %t1862 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1862, ptr @.fmt_bounds, ptr @.str10514, i32 0, i32 %t1860) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1862, ptr @.fmt_bounds, ptr @.str10519, i32 0, i32 %t1860) call void @exit(i32 1) unreachable ixok397: @@ -137109,35 +137271,35 @@ ixok397: %t1867 = load ptr, ptr %t1866 %t1868 = getelementptr inbounds %Cmp_Val, ptr %t1867, i32 0, i32 0 %t1869 = load ptr, ptr %t1868 - %t1870 = call ptr @lp_str_concat(ptr @.str10515, ptr %t1869) - %t1871 = call ptr @lp_str_concat(ptr %t1870, ptr @.str10516) + %t1870 = call ptr @lp_str_concat(ptr @.str10520, ptr %t1869) + %t1871 = call ptr @lp_str_concat(ptr %t1870, ptr @.str10521) %t1872 = call ptr @fn_emit_bind(ptr %t1871) store ptr %t1872, ptr %t1873 %t1874 = load ptr, ptr %t1873 - %t1875 = call ptr @lp_str_concat(ptr @.str10517, ptr %t1874) + %t1875 = call ptr @lp_str_concat(ptr @.str10522, ptr %t1874) %t1876 = call ptr @fn_emit_bind(ptr %t1875) store ptr %t1876, ptr %t1877 %t1878 = load ptr, ptr %t1877 - %t1879 = call ptr @lp_str_concat(ptr @.str10518, ptr %t1878) - %t1880 = call ptr @lp_str_concat(ptr %t1879, ptr @.str10519) + %t1879 = call ptr @lp_str_concat(ptr @.str10523, ptr %t1878) + %t1880 = call ptr @lp_str_concat(ptr %t1879, ptr @.str10524) %t1881 = call ptr @fn_emit_bind(ptr %t1880) store ptr %t1881, ptr %t1882 %t1883 = load ptr, ptr %t1882 - %t1884 = call ptr @lp_str_concat(ptr @.str10520, ptr %t1883) - %t1885 = call ptr @lp_str_concat(ptr %t1884, ptr @.str10521) + %t1884 = call ptr @lp_str_concat(ptr @.str10525, ptr %t1883) + %t1885 = call ptr @lp_str_concat(ptr %t1884, ptr @.str10526) %t1886 = call ptr @fn_emit_bind(ptr %t1885) - %t1887 = call ptr @fn_val(ptr %t1886, ptr @.str10522) + %t1887 = call ptr @fn_val(ptr %t1886, ptr @.str10527) store ptr %t1887, ptr %retval br label %ret ifend396: %t1889 = load ptr, ptr %t48 - %t1890 = call i32 @lp_str_eq(ptr %t1889, ptr @.str10523) + %t1890 = call i32 @lp_str_eq(ptr %t1889, ptr @.str10528) %t1891 = icmp ne i32 %t1890, 0 %t1892 = zext i1 %t1891 to i32 store i32 %t1892, ptr %t1888 br i1 %t1891, label %sc399, label %scend400 sc399: - %t1893 = call ptr @fn_find_fn(ptr @.str10524) + %t1893 = call ptr @fn_find_fn(ptr @.str10529) %t1894 = icmp eq ptr %t1893, null %t1895 = zext i1 %t1894 to i32 %t1896 = icmp ne i32 %t1895, 0 @@ -137160,7 +137322,7 @@ then401: br i1 %t1907, label %ixok404, label %ixbad405 ixbad405: %t1908 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1908, ptr @.fmt_bounds, ptr @.str10525, i32 0, i32 %t1906) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1908, ptr @.fmt_bounds, ptr @.str10530, i32 0, i32 %t1906) call void @exit(i32 1) unreachable ixok404: @@ -137171,35 +137333,35 @@ ixok404: %t1913 = load ptr, ptr %t1912 %t1914 = getelementptr inbounds %Cmp_Val, ptr %t1913, i32 0, i32 0 %t1915 = load ptr, ptr %t1914 - %t1916 = call ptr @lp_str_concat(ptr @.str10526, ptr %t1915) - %t1917 = call ptr @lp_str_concat(ptr %t1916, ptr @.str10527) + %t1916 = call ptr @lp_str_concat(ptr @.str10531, ptr %t1915) + %t1917 = call ptr @lp_str_concat(ptr %t1916, ptr @.str10532) %t1918 = call ptr @fn_emit_bind(ptr %t1917) store ptr %t1918, ptr %t1919 %t1920 = load ptr, ptr %t1919 - %t1921 = call ptr @lp_str_concat(ptr @.str10528, ptr %t1920) + %t1921 = call ptr @lp_str_concat(ptr @.str10533, ptr %t1920) %t1922 = call ptr @fn_emit_bind(ptr %t1921) store ptr %t1922, ptr %t1923 %t1924 = load ptr, ptr %t1923 - %t1925 = call ptr @lp_str_concat(ptr @.str10529, ptr %t1924) - %t1926 = call ptr @lp_str_concat(ptr %t1925, ptr @.str10530) + %t1925 = call ptr @lp_str_concat(ptr @.str10534, ptr %t1924) + %t1926 = call ptr @lp_str_concat(ptr %t1925, ptr @.str10535) %t1927 = call ptr @fn_emit_bind(ptr %t1926) store ptr %t1927, ptr %t1928 %t1929 = load ptr, ptr %t1928 - %t1930 = call ptr @lp_str_concat(ptr @.str10531, ptr %t1929) - %t1931 = call ptr @lp_str_concat(ptr %t1930, ptr @.str10532) + %t1930 = call ptr @lp_str_concat(ptr @.str10536, ptr %t1929) + %t1931 = call ptr @lp_str_concat(ptr %t1930, ptr @.str10537) %t1932 = call ptr @fn_emit_bind(ptr %t1931) - %t1933 = call ptr @fn_val(ptr %t1932, ptr @.str10533) + %t1933 = call ptr @fn_val(ptr %t1932, ptr @.str10538) store ptr %t1933, ptr %retval br label %ret ifend403: %t1935 = load ptr, ptr %t48 - %t1936 = call i32 @lp_str_eq(ptr %t1935, ptr @.str10534) + %t1936 = call i32 @lp_str_eq(ptr %t1935, ptr @.str10539) %t1937 = icmp ne i32 %t1936, 0 %t1938 = zext i1 %t1937 to i32 store i32 %t1938, ptr %t1934 br i1 %t1937, label %sc406, label %scend407 sc406: - %t1939 = call ptr @fn_find_fn(ptr @.str10535) + %t1939 = call ptr @fn_find_fn(ptr @.str10540) %t1940 = icmp eq ptr %t1939, null %t1941 = zext i1 %t1940 to i32 %t1942 = icmp ne i32 %t1941, 0 @@ -137222,7 +137384,7 @@ then408: br i1 %t1953, label %ixok411, label %ixbad412 ixbad412: %t1954 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1954, ptr @.fmt_bounds, ptr @.str10536, i32 0, i32 %t1952) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1954, ptr @.fmt_bounds, ptr @.str10541, i32 0, i32 %t1952) call void @exit(i32 1) unreachable ixok411: @@ -137241,7 +137403,7 @@ ixok411: br i1 %t1966, label %ixok413, label %ixbad414 ixbad414: %t1967 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t1967, ptr @.fmt_bounds, ptr @.str10537, i32 1, i32 %t1965) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1967, ptr @.fmt_bounds, ptr @.str10542, i32 1, i32 %t1965) call void @exit(i32 1) unreachable ixok413: @@ -137252,46 +137414,46 @@ ixok413: %t1972 = load ptr, ptr %t1958 %t1973 = getelementptr inbounds %Cmp_Val, ptr %t1972, i32 0, i32 0 %t1974 = load ptr, ptr %t1973 - %t1975 = call ptr @lp_str_concat(ptr @.str10538, ptr %t1974) - %t1976 = call ptr @lp_str_concat(ptr %t1975, ptr @.str10539) + %t1975 = call ptr @lp_str_concat(ptr @.str10543, ptr %t1974) + %t1976 = call ptr @lp_str_concat(ptr %t1975, ptr @.str10544) %t1977 = call ptr @fn_emit_bind(ptr %t1976) store ptr %t1977, ptr %t1978 %t1979 = load ptr, ptr %t1978 - %t1980 = call ptr @lp_str_concat(ptr @.str10540, ptr %t1979) + %t1980 = call ptr @lp_str_concat(ptr @.str10545, ptr %t1979) %t1981 = call ptr @fn_emit_bind(ptr %t1980) store ptr %t1981, ptr %t1982 %t1983 = load ptr, ptr %t1958 %t1984 = getelementptr inbounds %Cmp_Val, ptr %t1983, i32 0, i32 0 %t1985 = load ptr, ptr %t1984 - %t1986 = call ptr @lp_str_concat(ptr @.str10541, ptr %t1985) - %t1987 = call ptr @lp_str_concat(ptr %t1986, ptr @.str10542) + %t1986 = call ptr @lp_str_concat(ptr @.str10546, ptr %t1985) + %t1987 = call ptr @lp_str_concat(ptr %t1986, ptr @.str10547) %t1988 = call ptr @fn_emit_bind(ptr %t1987) store ptr %t1988, ptr %t1989 %t1990 = load ptr, ptr %t1989 - %t1991 = call ptr @lp_str_concat(ptr @.str10543, ptr %t1990) + %t1991 = call ptr @lp_str_concat(ptr @.str10548, ptr %t1990) %t1992 = call ptr @fn_emit_bind(ptr %t1991) store ptr %t1992, ptr %t1993 %t1994 = load ptr, ptr %t1982 - %t1995 = call ptr @lp_str_concat(ptr @.str10544, ptr %t1994) - %t1996 = call ptr @lp_str_concat(ptr %t1995, ptr @.str10545) + %t1995 = call ptr @lp_str_concat(ptr @.str10549, ptr %t1994) + %t1996 = call ptr @lp_str_concat(ptr %t1995, ptr @.str10550) %t1997 = call ptr @fn_emit_bind(ptr %t1996) store ptr %t1997, ptr %t1998 %t1999 = load ptr, ptr %t1998 - %t2000 = call ptr @lp_str_concat(ptr @.str10546, ptr %t1999) - %t2001 = call ptr @lp_str_concat(ptr %t2000, ptr @.str10547) + %t2000 = call ptr @lp_str_concat(ptr @.str10551, ptr %t1999) + %t2001 = call ptr @lp_str_concat(ptr %t2000, ptr @.str10552) %t2002 = load ptr, ptr %t1993 %t2003 = call ptr @lp_str_concat(ptr %t2001, ptr %t2002) - %t2004 = call ptr @lp_str_concat(ptr %t2003, ptr @.str10548) + %t2004 = call ptr @lp_str_concat(ptr %t2003, ptr @.str10553) %t2005 = load ptr, ptr %t1971 - %t2006 = call ptr @fn_coerce_code(ptr %t2005, ptr @.str10549) + %t2006 = call ptr @fn_coerce_code(ptr %t2005, ptr @.str10554) %t2007 = call ptr @lp_str_concat(ptr %t2004, ptr %t2006) %t2008 = call ptr @fn_emit_bind(ptr %t2007) - %t2009 = call ptr @fn_val(ptr %t2008, ptr @.str10550) + %t2009 = call ptr @fn_val(ptr %t2008, ptr @.str10555) store ptr %t2009, ptr %retval br label %ret ifend410: %t2010 = load ptr, ptr %t48 - %t2011 = call i32 @lp_str_eq(ptr %t2010, ptr @.str10551) + %t2011 = call i32 @lp_str_eq(ptr %t2010, ptr @.str10556) %t2012 = icmp ne i32 %t2011, 0 br i1 %t2012, label %then415, label %ifend417 then415: @@ -137306,7 +137468,7 @@ then415: br i1 %t2020, label %ixok418, label %ixbad419 ixbad419: %t2021 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2021, ptr @.fmt_bounds, ptr @.str10552, i32 0, i32 %t2019) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2021, ptr @.fmt_bounds, ptr @.str10557, i32 0, i32 %t2019) call void @exit(i32 1) unreachable ixok418: @@ -137317,15 +137479,15 @@ ixok418: %t2026 = load ptr, ptr %t2025 %t2027 = getelementptr inbounds %Cmp_Val, ptr %t2026, i32 0, i32 0 %t2028 = load ptr, ptr %t2027 - %t2029 = call ptr @lp_str_concat(ptr @.str10553, ptr %t2028) - %t2030 = call ptr @lp_str_concat(ptr %t2029, ptr @.str10554) + %t2029 = call ptr @lp_str_concat(ptr @.str10558, ptr %t2028) + %t2030 = call ptr @lp_str_concat(ptr %t2029, ptr @.str10559) %t2031 = call ptr @fn_emit_bind(ptr %t2030) - %t2032 = call ptr @fn_val(ptr %t2031, ptr @.str10555) + %t2032 = call ptr @fn_val(ptr %t2031, ptr @.str10560) store ptr %t2032, ptr %retval br label %ret ifend417: %t2033 = load ptr, ptr %t48 - %t2034 = call i32 @lp_str_eq(ptr %t2033, ptr @.str10556) + %t2034 = call i32 @lp_str_eq(ptr %t2033, ptr @.str10561) %t2035 = icmp ne i32 %t2034, 0 br i1 %t2035, label %then420, label %ifend422 then420: @@ -137340,7 +137502,7 @@ then420: br i1 %t2043, label %ixok423, label %ixbad424 ixbad424: %t2044 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2044, ptr @.fmt_bounds, ptr @.str10557, i32 0, i32 %t2042) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2044, ptr @.fmt_bounds, ptr @.str10562, i32 0, i32 %t2042) call void @exit(i32 1) unreachable ixok423: @@ -137359,7 +137521,7 @@ ixok423: br i1 %t2056, label %ixok425, label %ixbad426 ixbad426: %t2057 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2057, ptr @.fmt_bounds, ptr @.str10558, i32 1, i32 %t2055) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2057, ptr @.fmt_bounds, ptr @.str10563, i32 1, i32 %t2055) call void @exit(i32 1) unreachable ixok425: @@ -137370,20 +137532,20 @@ ixok425: %t2062 = load ptr, ptr %t2048 %t2063 = getelementptr inbounds %Cmp_Val, ptr %t2062, i32 0, i32 0 %t2064 = load ptr, ptr %t2063 - %t2065 = call ptr @lp_str_concat(ptr @.str10559, ptr %t2064) - %t2066 = call ptr @lp_str_concat(ptr %t2065, ptr @.str10560) + %t2065 = call ptr @lp_str_concat(ptr @.str10564, ptr %t2064) + %t2066 = call ptr @lp_str_concat(ptr %t2065, ptr @.str10565) %t2067 = load ptr, ptr %t2061 %t2068 = getelementptr inbounds %Cmp_Val, ptr %t2067, i32 0, i32 0 %t2069 = load ptr, ptr %t2068 %t2070 = call ptr @lp_str_concat(ptr %t2066, ptr %t2069) - %t2071 = call ptr @lp_str_concat(ptr %t2070, ptr @.str10561) + %t2071 = call ptr @lp_str_concat(ptr %t2070, ptr @.str10566) %t2072 = call ptr @fn_emit_bind(ptr %t2071) - %t2073 = call ptr @fn_val(ptr %t2072, ptr @.str10562) + %t2073 = call ptr @fn_val(ptr %t2072, ptr @.str10567) store ptr %t2073, ptr %retval br label %ret ifend422: %t2074 = load ptr, ptr %t48 - %t2075 = call i32 @lp_str_eq(ptr %t2074, ptr @.str10563) + %t2075 = call i32 @lp_str_eq(ptr %t2074, ptr @.str10568) %t2076 = icmp ne i32 %t2075, 0 br i1 %t2076, label %then427, label %ifend429 then427: @@ -137398,7 +137560,7 @@ then427: br i1 %t2084, label %ixok430, label %ixbad431 ixbad431: %t2085 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2085, ptr @.fmt_bounds, ptr @.str10564, i32 0, i32 %t2083) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2085, ptr @.fmt_bounds, ptr @.str10569, i32 0, i32 %t2083) call void @exit(i32 1) unreachable ixok430: @@ -137417,7 +137579,7 @@ ixok430: br i1 %t2097, label %ixok432, label %ixbad433 ixbad433: %t2098 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2098, ptr @.fmt_bounds, ptr @.str10565, i32 1, i32 %t2096) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2098, ptr @.fmt_bounds, ptr @.str10570, i32 1, i32 %t2096) call void @exit(i32 1) unreachable ixok432: @@ -137436,7 +137598,7 @@ ixok432: br i1 %t2110, label %ixok434, label %ixbad435 ixbad435: %t2111 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2111, ptr @.fmt_bounds, ptr @.str10566, i32 2, i32 %t2109) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2111, ptr @.fmt_bounds, ptr @.str10571, i32 2, i32 %t2109) call void @exit(i32 1) unreachable ixok434: @@ -137447,30 +137609,30 @@ ixok434: %t2116 = load ptr, ptr %t2089 %t2117 = getelementptr inbounds %Cmp_Val, ptr %t2116, i32 0, i32 0 %t2118 = load ptr, ptr %t2117 - %t2119 = call ptr @lp_str_concat(ptr @.str10567, ptr %t2118) - %t2120 = call ptr @lp_str_concat(ptr %t2119, ptr @.str10568) + %t2119 = call ptr @lp_str_concat(ptr @.str10572, ptr %t2118) + %t2120 = call ptr @lp_str_concat(ptr %t2119, ptr @.str10573) %t2121 = load ptr, ptr %t2102 %t2122 = getelementptr inbounds %Cmp_Val, ptr %t2121, i32 0, i32 0 %t2123 = load ptr, ptr %t2122 %t2124 = call ptr @lp_str_concat(ptr %t2120, ptr %t2123) - %t2125 = call ptr @lp_str_concat(ptr %t2124, ptr @.str10569) + %t2125 = call ptr @lp_str_concat(ptr %t2124, ptr @.str10574) %t2126 = load ptr, ptr %t2115 %t2127 = getelementptr inbounds %Cmp_Val, ptr %t2126, i32 0, i32 0 %t2128 = load ptr, ptr %t2127 %t2129 = call ptr @lp_str_concat(ptr %t2125, ptr %t2128) - %t2130 = call ptr @lp_str_concat(ptr %t2129, ptr @.str10570) + %t2130 = call ptr @lp_str_concat(ptr %t2129, ptr @.str10575) %t2131 = call ptr @fn_emit_bind(ptr %t2130) store ptr %t2131, ptr %t2132 %t2133 = load ptr, ptr %t2132 - %t2134 = call ptr @lp_str_concat(ptr @.str10571, ptr %t2133) - %t2135 = call ptr @lp_str_concat(ptr %t2134, ptr @.str10572) + %t2134 = call ptr @lp_str_concat(ptr @.str10576, ptr %t2133) + %t2135 = call ptr @lp_str_concat(ptr %t2134, ptr @.str10577) %t2136 = call ptr @fn_emit_bind(ptr %t2135) - %t2137 = call ptr @fn_val(ptr %t2136, ptr @.str10573) + %t2137 = call ptr @fn_val(ptr %t2136, ptr @.str10578) store ptr %t2137, ptr %retval br label %ret ifend429: %t2138 = load ptr, ptr %t48 - %t2139 = call i32 @lp_str_eq(ptr %t2138, ptr @.str10574) + %t2139 = call i32 @lp_str_eq(ptr %t2138, ptr @.str10579) %t2140 = icmp ne i32 %t2139, 0 br i1 %t2140, label %then436, label %ifend438 then436: @@ -137485,7 +137647,7 @@ then436: br i1 %t2148, label %ixok439, label %ixbad440 ixbad440: %t2149 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2149, ptr @.fmt_bounds, ptr @.str10575, i32 0, i32 %t2147) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2149, ptr @.fmt_bounds, ptr @.str10580, i32 0, i32 %t2147) call void @exit(i32 1) unreachable ixok439: @@ -137504,7 +137666,7 @@ ixok439: br i1 %t2161, label %ixok441, label %ixbad442 ixbad442: %t2162 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2162, ptr @.fmt_bounds, ptr @.str10576, i32 1, i32 %t2160) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2162, ptr @.fmt_bounds, ptr @.str10581, i32 1, i32 %t2160) call void @exit(i32 1) unreachable ixok441: @@ -137523,7 +137685,7 @@ ixok441: br i1 %t2174, label %ixok443, label %ixbad444 ixbad444: %t2175 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2175, ptr @.fmt_bounds, ptr @.str10577, i32 2, i32 %t2173) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2175, ptr @.fmt_bounds, ptr @.str10582, i32 2, i32 %t2173) call void @exit(i32 1) unreachable ixok443: @@ -137542,7 +137704,7 @@ ixok443: br i1 %t2187, label %ixok445, label %ixbad446 ixbad446: %t2188 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2188, ptr @.fmt_bounds, ptr @.str10578, i32 3, i32 %t2186) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2188, ptr @.fmt_bounds, ptr @.str10583, i32 3, i32 %t2186) call void @exit(i32 1) unreachable ixok445: @@ -137553,35 +137715,35 @@ ixok445: %t2193 = load ptr, ptr %t2192 %t2194 = getelementptr inbounds %Cmp_Val, ptr %t2193, i32 0, i32 0 %t2195 = load ptr, ptr %t2194 - %t2196 = call ptr @lp_str_concat(ptr @.str10579, ptr %t2195) - %t2197 = call ptr @lp_str_concat(ptr %t2196, ptr @.str10580) + %t2196 = call ptr @lp_str_concat(ptr @.str10584, ptr %t2195) + %t2197 = call ptr @lp_str_concat(ptr %t2196, ptr @.str10585) %t2198 = call ptr @fn_emit_bind(ptr %t2197) store ptr %t2198, ptr %t2199 - call void @fn_emit(ptr @.str10581) + call void @fn_emit(ptr @.str10586) %t2200 = load ptr, ptr %t2153 %t2201 = getelementptr inbounds %Cmp_Val, ptr %t2200, i32 0, i32 0 %t2202 = load ptr, ptr %t2201 call void @fn_emit(ptr %t2202) - call void @fn_emit(ptr @.str10582) + call void @fn_emit(ptr @.str10587) %t2203 = load ptr, ptr %t2166 %t2204 = getelementptr inbounds %Cmp_Val, ptr %t2203, i32 0, i32 0 %t2205 = load ptr, ptr %t2204 call void @fn_emit(ptr %t2205) - call void @fn_emit(ptr @.str10583) + call void @fn_emit(ptr @.str10588) %t2206 = load ptr, ptr %t2179 %t2207 = getelementptr inbounds %Cmp_Val, ptr %t2206, i32 0, i32 0 %t2208 = load ptr, ptr %t2207 call void @fn_emit(ptr %t2208) - call void @fn_emit(ptr @.str10584) + call void @fn_emit(ptr @.str10589) %t2209 = load ptr, ptr %t2199 call void @fn_emit(ptr %t2209) - call void @fn_emit(ptr @.str10585) - %t2210 = call ptr @fn_val(ptr @.str10586, ptr @.str10587) + call void @fn_emit(ptr @.str10590) + %t2210 = call ptr @fn_val(ptr @.str10591, ptr @.str10592) store ptr %t2210, ptr %retval br label %ret ifend438: %t2211 = load ptr, ptr %t48 - %t2212 = call i32 @lp_str_eq(ptr %t2211, ptr @.str10588) + %t2212 = call i32 @lp_str_eq(ptr %t2211, ptr @.str10593) %t2213 = icmp ne i32 %t2212, 0 br i1 %t2213, label %then447, label %ifend449 then447: @@ -137596,7 +137758,7 @@ then447: br i1 %t2221, label %ixok450, label %ixbad451 ixbad451: %t2222 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2222, ptr @.fmt_bounds, ptr @.str10589, i32 0, i32 %t2220) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2222, ptr @.fmt_bounds, ptr @.str10594, i32 0, i32 %t2220) call void @exit(i32 1) unreachable ixok450: @@ -137615,7 +137777,7 @@ ixok450: br i1 %t2234, label %ixok452, label %ixbad453 ixbad453: %t2235 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2235, ptr @.fmt_bounds, ptr @.str10590, i32 1, i32 %t2233) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2235, ptr @.fmt_bounds, ptr @.str10595, i32 1, i32 %t2233) call void @exit(i32 1) unreachable ixok452: @@ -137626,30 +137788,30 @@ ixok452: %t2240 = load ptr, ptr %t2226 %t2241 = getelementptr inbounds %Cmp_Val, ptr %t2240, i32 0, i32 0 %t2242 = load ptr, ptr %t2241 - %t2243 = call ptr @lp_str_concat(ptr @.str10591, ptr %t2242) - %t2244 = call ptr @lp_str_concat(ptr %t2243, ptr @.str10592) + %t2243 = call ptr @lp_str_concat(ptr @.str10596, ptr %t2242) + %t2244 = call ptr @lp_str_concat(ptr %t2243, ptr @.str10597) %t2245 = load ptr, ptr %t2239 %t2246 = getelementptr inbounds %Cmp_Val, ptr %t2245, i32 0, i32 0 %t2247 = load ptr, ptr %t2246 %t2248 = call ptr @lp_str_concat(ptr %t2244, ptr %t2247) - %t2249 = call ptr @lp_str_concat(ptr %t2248, ptr @.str10593) + %t2249 = call ptr @lp_str_concat(ptr %t2248, ptr @.str10598) %t2250 = call ptr @fn_emit_bind(ptr %t2249) - %t2251 = call ptr @fn_val(ptr %t2250, ptr @.str10594) + %t2251 = call ptr @fn_val(ptr %t2250, ptr @.str10599) store ptr %t2251, ptr %retval br label %ret ifend449: %t2252 = load ptr, ptr %t48 - %t2253 = call i32 @lp_str_eq(ptr %t2252, ptr @.str10595) + %t2253 = call i32 @lp_str_eq(ptr %t2252, ptr @.str10600) %t2254 = icmp ne i32 %t2253, 0 br i1 %t2254, label %then454, label %ifend456 then454: - %t2255 = call ptr @fn_emit_bind(ptr @.str10596) - %t2256 = call ptr @fn_val(ptr %t2255, ptr @.str10597) + %t2255 = call ptr @fn_emit_bind(ptr @.str10601) + %t2256 = call ptr @fn_val(ptr %t2255, ptr @.str10602) store ptr %t2256, ptr %retval br label %ret ifend456: %t2257 = load ptr, ptr %t48 - %t2258 = call i32 @lp_str_eq(ptr %t2257, ptr @.str10598) + %t2258 = call i32 @lp_str_eq(ptr %t2257, ptr @.str10603) %t2259 = icmp ne i32 %t2258, 0 br i1 %t2259, label %then457, label %ifend459 then457: @@ -137664,7 +137826,7 @@ then457: br i1 %t2267, label %ixok460, label %ixbad461 ixbad461: %t2268 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2268, ptr @.fmt_bounds, ptr @.str10599, i32 0, i32 %t2266) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2268, ptr @.fmt_bounds, ptr @.str10604, i32 0, i32 %t2266) call void @exit(i32 1) unreachable ixok460: @@ -137675,15 +137837,15 @@ ixok460: %t2273 = load ptr, ptr %t2272 %t2274 = getelementptr inbounds %Cmp_Val, ptr %t2273, i32 0, i32 0 %t2275 = load ptr, ptr %t2274 - %t2276 = call ptr @lp_str_concat(ptr @.str10600, ptr %t2275) - %t2277 = call ptr @lp_str_concat(ptr %t2276, ptr @.str10601) + %t2276 = call ptr @lp_str_concat(ptr @.str10605, ptr %t2275) + %t2277 = call ptr @lp_str_concat(ptr %t2276, ptr @.str10606) %t2278 = call ptr @fn_emit_bind(ptr %t2277) - %t2279 = call ptr @fn_val(ptr %t2278, ptr @.str10602) + %t2279 = call ptr @fn_val(ptr %t2278, ptr @.str10607) store ptr %t2279, ptr %retval br label %ret ifend459: %t2280 = load ptr, ptr %t48 - %t2281 = call i32 @lp_str_eq(ptr %t2280, ptr @.str10603) + %t2281 = call i32 @lp_str_eq(ptr %t2280, ptr @.str10608) %t2282 = icmp ne i32 %t2281, 0 br i1 %t2282, label %then462, label %ifend464 then462: @@ -137698,7 +137860,7 @@ then462: br i1 %t2290, label %ixok465, label %ixbad466 ixbad466: %t2291 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2291, ptr @.fmt_bounds, ptr @.str10604, i32 0, i32 %t2289) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2291, ptr @.fmt_bounds, ptr @.str10609, i32 0, i32 %t2289) call void @exit(i32 1) unreachable ixok465: @@ -137709,15 +137871,15 @@ ixok465: %t2296 = load ptr, ptr %t2295 %t2297 = getelementptr inbounds %Cmp_Val, ptr %t2296, i32 0, i32 0 %t2298 = load ptr, ptr %t2297 - %t2299 = call ptr @lp_str_concat(ptr @.str10605, ptr %t2298) - %t2300 = call ptr @lp_str_concat(ptr %t2299, ptr @.str10606) + %t2299 = call ptr @lp_str_concat(ptr @.str10610, ptr %t2298) + %t2300 = call ptr @lp_str_concat(ptr %t2299, ptr @.str10611) %t2301 = call ptr @fn_emit_bind(ptr %t2300) - %t2302 = call ptr @fn_val(ptr %t2301, ptr @.str10607) + %t2302 = call ptr @fn_val(ptr %t2301, ptr @.str10612) store ptr %t2302, ptr %retval br label %ret ifend464: %t2303 = load ptr, ptr %t48 - %t2304 = call i32 @lp_str_eq(ptr %t2303, ptr @.str10608) + %t2304 = call i32 @lp_str_eq(ptr %t2303, ptr @.str10613) %t2305 = icmp ne i32 %t2304, 0 br i1 %t2305, label %then467, label %ifend469 then467: @@ -137732,7 +137894,7 @@ then467: br i1 %t2313, label %ixok470, label %ixbad471 ixbad471: %t2314 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2314, ptr @.fmt_bounds, ptr @.str10609, i32 0, i32 %t2312) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2314, ptr @.fmt_bounds, ptr @.str10614, i32 0, i32 %t2312) call void @exit(i32 1) unreachable ixok470: @@ -137751,7 +137913,7 @@ ixok470: br i1 %t2326, label %ixok472, label %ixbad473 ixbad473: %t2327 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2327, ptr @.fmt_bounds, ptr @.str10610, i32 1, i32 %t2325) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2327, ptr @.fmt_bounds, ptr @.str10615, i32 1, i32 %t2325) call void @exit(i32 1) unreachable ixok472: @@ -137762,20 +137924,20 @@ ixok472: %t2332 = load ptr, ptr %t2318 %t2333 = getelementptr inbounds %Cmp_Val, ptr %t2332, i32 0, i32 0 %t2334 = load ptr, ptr %t2333 - %t2335 = call ptr @lp_str_concat(ptr @.str10611, ptr %t2334) - %t2336 = call ptr @lp_str_concat(ptr %t2335, ptr @.str10612) + %t2335 = call ptr @lp_str_concat(ptr @.str10616, ptr %t2334) + %t2336 = call ptr @lp_str_concat(ptr %t2335, ptr @.str10617) %t2337 = load ptr, ptr %t2331 %t2338 = getelementptr inbounds %Cmp_Val, ptr %t2337, i32 0, i32 0 %t2339 = load ptr, ptr %t2338 %t2340 = call ptr @lp_str_concat(ptr %t2336, ptr %t2339) - %t2341 = call ptr @lp_str_concat(ptr %t2340, ptr @.str10613) + %t2341 = call ptr @lp_str_concat(ptr %t2340, ptr @.str10618) %t2342 = call ptr @fn_emit_bind(ptr %t2341) - %t2343 = call ptr @fn_val(ptr %t2342, ptr @.str10614) + %t2343 = call ptr @fn_val(ptr %t2342, ptr @.str10619) store ptr %t2343, ptr %retval br label %ret ifend469: %t2344 = load ptr, ptr %t48 - %t2345 = call i32 @lp_str_eq(ptr %t2344, ptr @.str10615) + %t2345 = call i32 @lp_str_eq(ptr %t2344, ptr @.str10620) %t2346 = icmp ne i32 %t2345, 0 br i1 %t2346, label %then474, label %ifend476 then474: @@ -137790,7 +137952,7 @@ then474: br i1 %t2354, label %ixok477, label %ixbad478 ixbad478: %t2355 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2355, ptr @.fmt_bounds, ptr @.str10616, i32 0, i32 %t2353) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2355, ptr @.fmt_bounds, ptr @.str10621, i32 0, i32 %t2353) call void @exit(i32 1) unreachable ixok477: @@ -137809,7 +137971,7 @@ ixok477: br i1 %t2367, label %ixok479, label %ixbad480 ixbad480: %t2368 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2368, ptr @.fmt_bounds, ptr @.str10617, i32 1, i32 %t2366) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2368, ptr @.fmt_bounds, ptr @.str10622, i32 1, i32 %t2366) call void @exit(i32 1) unreachable ixok479: @@ -137820,20 +137982,20 @@ ixok479: %t2373 = load ptr, ptr %t2359 %t2374 = getelementptr inbounds %Cmp_Val, ptr %t2373, i32 0, i32 0 %t2375 = load ptr, ptr %t2374 - %t2376 = call ptr @lp_str_concat(ptr @.str10618, ptr %t2375) - %t2377 = call ptr @lp_str_concat(ptr %t2376, ptr @.str10619) + %t2376 = call ptr @lp_str_concat(ptr @.str10623, ptr %t2375) + %t2377 = call ptr @lp_str_concat(ptr %t2376, ptr @.str10624) %t2378 = load ptr, ptr %t2372 %t2379 = getelementptr inbounds %Cmp_Val, ptr %t2378, i32 0, i32 0 %t2380 = load ptr, ptr %t2379 %t2381 = call ptr @lp_str_concat(ptr %t2377, ptr %t2380) - %t2382 = call ptr @lp_str_concat(ptr %t2381, ptr @.str10620) + %t2382 = call ptr @lp_str_concat(ptr %t2381, ptr @.str10625) %t2383 = call ptr @fn_emit_bind(ptr %t2382) - %t2384 = call ptr @fn_val(ptr %t2383, ptr @.str10621) + %t2384 = call ptr @fn_val(ptr %t2383, ptr @.str10626) store ptr %t2384, ptr %retval br label %ret ifend476: %t2385 = load ptr, ptr %t48 - %t2386 = call i32 @lp_str_eq(ptr %t2385, ptr @.str10622) + %t2386 = call i32 @lp_str_eq(ptr %t2385, ptr @.str10627) %t2387 = icmp ne i32 %t2386, 0 br i1 %t2387, label %then481, label %ifend483 then481: @@ -137848,7 +138010,7 @@ then481: br i1 %t2395, label %ixok484, label %ixbad485 ixbad485: %t2396 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2396, ptr @.fmt_bounds, ptr @.str10623, i32 0, i32 %t2394) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2396, ptr @.fmt_bounds, ptr @.str10628, i32 0, i32 %t2394) call void @exit(i32 1) unreachable ixok484: @@ -137867,7 +138029,7 @@ ixok484: br i1 %t2408, label %ixok486, label %ixbad487 ixbad487: %t2409 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2409, ptr @.fmt_bounds, ptr @.str10624, i32 1, i32 %t2407) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2409, ptr @.fmt_bounds, ptr @.str10629, i32 1, i32 %t2407) call void @exit(i32 1) unreachable ixok486: @@ -137875,23 +138037,23 @@ ixok486: %t2411 = load ptr, ptr %t2410 %t2412 = call ptr @fn_emit_expr(ptr %t2411) store ptr %t2412, ptr %t2413 - call void @fn_emit(ptr @.str10625) + call void @fn_emit(ptr @.str10630) %t2414 = load ptr, ptr %t2400 %t2415 = getelementptr inbounds %Cmp_Val, ptr %t2414, i32 0, i32 0 %t2416 = load ptr, ptr %t2415 call void @fn_emit(ptr %t2416) - call void @fn_emit(ptr @.str10626) + call void @fn_emit(ptr @.str10631) %t2417 = load ptr, ptr %t2413 %t2418 = getelementptr inbounds %Cmp_Val, ptr %t2417, i32 0, i32 0 %t2419 = load ptr, ptr %t2418 call void @fn_emit(ptr %t2419) - call void @fn_emit(ptr @.str10627) - %t2420 = call ptr @fn_val(ptr @.str10628, ptr @.str10629) + call void @fn_emit(ptr @.str10632) + %t2420 = call ptr @fn_val(ptr @.str10633, ptr @.str10634) store ptr %t2420, ptr %retval br label %ret ifend483: %t2421 = load ptr, ptr %t48 - %t2422 = call i32 @lp_str_eq(ptr %t2421, ptr @.str10630) + %t2422 = call i32 @lp_str_eq(ptr %t2421, ptr @.str10635) %t2423 = icmp ne i32 %t2422, 0 br i1 %t2423, label %then488, label %ifend490 then488: @@ -137906,7 +138068,7 @@ then488: br i1 %t2431, label %ixok491, label %ixbad492 ixbad492: %t2432 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2432, ptr @.fmt_bounds, ptr @.str10631, i32 0, i32 %t2430) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2432, ptr @.fmt_bounds, ptr @.str10636, i32 0, i32 %t2430) call void @exit(i32 1) unreachable ixok491: @@ -137925,7 +138087,7 @@ ixok491: br i1 %t2444, label %ixok493, label %ixbad494 ixbad494: %t2445 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2445, ptr @.fmt_bounds, ptr @.str10632, i32 1, i32 %t2443) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2445, ptr @.fmt_bounds, ptr @.str10637, i32 1, i32 %t2443) call void @exit(i32 1) unreachable ixok493: @@ -137933,23 +138095,23 @@ ixok493: %t2447 = load ptr, ptr %t2446 %t2448 = call ptr @fn_emit_expr(ptr %t2447) store ptr %t2448, ptr %t2449 - call void @fn_emit(ptr @.str10633) + call void @fn_emit(ptr @.str10638) %t2450 = load ptr, ptr %t2436 %t2451 = getelementptr inbounds %Cmp_Val, ptr %t2450, i32 0, i32 0 %t2452 = load ptr, ptr %t2451 call void @fn_emit(ptr %t2452) - call void @fn_emit(ptr @.str10634) + call void @fn_emit(ptr @.str10639) %t2453 = load ptr, ptr %t2449 %t2454 = getelementptr inbounds %Cmp_Val, ptr %t2453, i32 0, i32 0 %t2455 = load ptr, ptr %t2454 call void @fn_emit(ptr %t2455) - call void @fn_emit(ptr @.str10635) - %t2456 = call ptr @fn_val(ptr @.str10636, ptr @.str10637) + call void @fn_emit(ptr @.str10640) + %t2456 = call ptr @fn_val(ptr @.str10641, ptr @.str10642) store ptr %t2456, ptr %retval br label %ret ifend490: %t2457 = load ptr, ptr %t48 - %t2458 = call i32 @lp_str_eq(ptr %t2457, ptr @.str10638) + %t2458 = call i32 @lp_str_eq(ptr %t2457, ptr @.str10643) %t2459 = icmp ne i32 %t2458, 0 br i1 %t2459, label %then495, label %ifend497 then495: @@ -137964,7 +138126,7 @@ then495: br i1 %t2467, label %ixok498, label %ixbad499 ixbad499: %t2468 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2468, ptr @.fmt_bounds, ptr @.str10639, i32 0, i32 %t2466) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2468, ptr @.fmt_bounds, ptr @.str10644, i32 0, i32 %t2466) call void @exit(i32 1) unreachable ixok498: @@ -137975,25 +138137,25 @@ ixok498: %t2473 = load ptr, ptr %t2472 %t2474 = getelementptr inbounds %Cmp_Val, ptr %t2473, i32 0, i32 0 %t2475 = load ptr, ptr %t2474 - %t2476 = call ptr @lp_str_concat(ptr @.str10640, ptr %t2475) - %t2477 = call ptr @lp_str_concat(ptr %t2476, ptr @.str10641) + %t2476 = call ptr @lp_str_concat(ptr @.str10645, ptr %t2475) + %t2477 = call ptr @lp_str_concat(ptr %t2476, ptr @.str10646) %t2478 = call ptr @fn_emit_bind(ptr %t2477) - %t2479 = call ptr @fn_val(ptr %t2478, ptr @.str10642) + %t2479 = call ptr @fn_val(ptr %t2478, ptr @.str10647) store ptr %t2479, ptr %retval br label %ret ifend497: %t2480 = load ptr, ptr %t48 - %t2481 = call i32 @lp_str_eq(ptr %t2480, ptr @.str10643) + %t2481 = call i32 @lp_str_eq(ptr %t2480, ptr @.str10648) %t2482 = icmp ne i32 %t2481, 0 br i1 %t2482, label %then500, label %ifend502 then500: - %t2483 = call ptr @fn_emit_bind(ptr @.str10644) - %t2484 = call ptr @fn_val(ptr %t2483, ptr @.str10645) + %t2483 = call ptr @fn_emit_bind(ptr @.str10649) + %t2484 = call ptr @fn_val(ptr %t2483, ptr @.str10650) store ptr %t2484, ptr %retval br label %ret ifend502: %t2485 = load ptr, ptr %t48 - %t2486 = call i32 @lp_str_eq(ptr %t2485, ptr @.str10646) + %t2486 = call i32 @lp_str_eq(ptr %t2485, ptr @.str10651) %t2487 = icmp ne i32 %t2486, 0 br i1 %t2487, label %then503, label %ifend505 then503: @@ -138008,7 +138170,7 @@ then503: br i1 %t2495, label %ixok506, label %ixbad507 ixbad507: %t2496 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2496, ptr @.fmt_bounds, ptr @.str10647, i32 0, i32 %t2494) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2496, ptr @.fmt_bounds, ptr @.str10652, i32 0, i32 %t2494) call void @exit(i32 1) unreachable ixok506: @@ -138019,15 +138181,15 @@ ixok506: %t2501 = load ptr, ptr %t2500 %t2502 = getelementptr inbounds %Cmp_Val, ptr %t2501, i32 0, i32 0 %t2503 = load ptr, ptr %t2502 - %t2504 = call ptr @lp_str_concat(ptr @.str10648, ptr %t2503) - %t2505 = call ptr @lp_str_concat(ptr %t2504, ptr @.str10649) + %t2504 = call ptr @lp_str_concat(ptr @.str10653, ptr %t2503) + %t2505 = call ptr @lp_str_concat(ptr %t2504, ptr @.str10654) %t2506 = call ptr @fn_emit_bind(ptr %t2505) - %t2507 = call ptr @fn_val(ptr %t2506, ptr @.str10650) + %t2507 = call ptr @fn_val(ptr %t2506, ptr @.str10655) store ptr %t2507, ptr %retval br label %ret ifend505: %t2508 = load ptr, ptr %t48 - %t2509 = call i32 @lp_str_eq(ptr %t2508, ptr @.str10651) + %t2509 = call i32 @lp_str_eq(ptr %t2508, ptr @.str10656) %t2510 = icmp ne i32 %t2509, 0 br i1 %t2510, label %then508, label %ifend510 then508: @@ -138042,7 +138204,7 @@ then508: br i1 %t2518, label %ixok511, label %ixbad512 ixbad512: %t2519 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2519, ptr @.fmt_bounds, ptr @.str10652, i32 0, i32 %t2517) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2519, ptr @.fmt_bounds, ptr @.str10657, i32 0, i32 %t2517) call void @exit(i32 1) unreachable ixok511: @@ -138053,15 +138215,15 @@ ixok511: %t2524 = load ptr, ptr %t2523 %t2525 = getelementptr inbounds %Cmp_Val, ptr %t2524, i32 0, i32 0 %t2526 = load ptr, ptr %t2525 - %t2527 = call ptr @lp_str_concat(ptr @.str10653, ptr %t2526) - %t2528 = call ptr @lp_str_concat(ptr %t2527, ptr @.str10654) + %t2527 = call ptr @lp_str_concat(ptr @.str10658, ptr %t2526) + %t2528 = call ptr @lp_str_concat(ptr %t2527, ptr @.str10659) %t2529 = call ptr @fn_emit_bind(ptr %t2528) - %t2530 = call ptr @fn_val(ptr %t2529, ptr @.str10655) + %t2530 = call ptr @fn_val(ptr %t2529, ptr @.str10660) store ptr %t2530, ptr %retval br label %ret ifend510: %t2531 = load ptr, ptr %t48 - %t2532 = call i32 @lp_str_eq(ptr %t2531, ptr @.str10656) + %t2532 = call i32 @lp_str_eq(ptr %t2531, ptr @.str10661) %t2533 = icmp ne i32 %t2532, 0 br i1 %t2533, label %then513, label %ifend515 then513: @@ -138076,7 +138238,7 @@ then513: br i1 %t2541, label %ixok516, label %ixbad517 ixbad517: %t2542 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2542, ptr @.fmt_bounds, ptr @.str10657, i32 0, i32 %t2540) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2542, ptr @.fmt_bounds, ptr @.str10662, i32 0, i32 %t2540) call void @exit(i32 1) unreachable ixok516: @@ -138095,7 +138257,7 @@ ixok516: br i1 %t2554, label %ixok518, label %ixbad519 ixbad519: %t2555 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2555, ptr @.fmt_bounds, ptr @.str10658, i32 1, i32 %t2553) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2555, ptr @.fmt_bounds, ptr @.str10663, i32 1, i32 %t2553) call void @exit(i32 1) unreachable ixok518: @@ -138106,20 +138268,20 @@ ixok518: %t2560 = load ptr, ptr %t2546 %t2561 = getelementptr inbounds %Cmp_Val, ptr %t2560, i32 0, i32 0 %t2562 = load ptr, ptr %t2561 - %t2563 = call ptr @lp_str_concat(ptr @.str10659, ptr %t2562) - %t2564 = call ptr @lp_str_concat(ptr %t2563, ptr @.str10660) + %t2563 = call ptr @lp_str_concat(ptr @.str10664, ptr %t2562) + %t2564 = call ptr @lp_str_concat(ptr %t2563, ptr @.str10665) %t2565 = load ptr, ptr %t2559 %t2566 = getelementptr inbounds %Cmp_Val, ptr %t2565, i32 0, i32 0 %t2567 = load ptr, ptr %t2566 %t2568 = call ptr @lp_str_concat(ptr %t2564, ptr %t2567) - %t2569 = call ptr @lp_str_concat(ptr %t2568, ptr @.str10661) + %t2569 = call ptr @lp_str_concat(ptr %t2568, ptr @.str10666) %t2570 = call ptr @fn_emit_bind(ptr %t2569) - %t2571 = call ptr @fn_val(ptr %t2570, ptr @.str10662) + %t2571 = call ptr @fn_val(ptr %t2570, ptr @.str10667) store ptr %t2571, ptr %retval br label %ret ifend515: %t2572 = load ptr, ptr %t48 - %t2573 = call i32 @lp_str_eq(ptr %t2572, ptr @.str10663) + %t2573 = call i32 @lp_str_eq(ptr %t2572, ptr @.str10668) %t2574 = icmp ne i32 %t2573, 0 br i1 %t2574, label %then520, label %ifend522 then520: @@ -138134,7 +138296,7 @@ then520: br i1 %t2582, label %ixok523, label %ixbad524 ixbad524: %t2583 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2583, ptr @.fmt_bounds, ptr @.str10664, i32 0, i32 %t2581) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2583, ptr @.fmt_bounds, ptr @.str10669, i32 0, i32 %t2581) call void @exit(i32 1) unreachable ixok523: @@ -138153,7 +138315,7 @@ ixok523: br i1 %t2595, label %ixok525, label %ixbad526 ixbad526: %t2596 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2596, ptr @.fmt_bounds, ptr @.str10665, i32 1, i32 %t2594) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2596, ptr @.fmt_bounds, ptr @.str10670, i32 1, i32 %t2594) call void @exit(i32 1) unreachable ixok525: @@ -138164,15 +138326,15 @@ ixok525: %t2601 = load ptr, ptr %t2587 %t2602 = getelementptr inbounds %Cmp_Val, ptr %t2601, i32 0, i32 0 %t2603 = load ptr, ptr %t2602 - %t2604 = call ptr @lp_str_concat(ptr @.str10666, ptr %t2603) - %t2605 = call ptr @lp_str_concat(ptr %t2604, ptr @.str10667) + %t2604 = call ptr @lp_str_concat(ptr @.str10671, ptr %t2603) + %t2605 = call ptr @lp_str_concat(ptr %t2604, ptr @.str10672) %t2606 = load ptr, ptr %t2600 %t2607 = getelementptr inbounds %Cmp_Val, ptr %t2606, i32 0, i32 0 %t2608 = load ptr, ptr %t2607 %t2609 = call ptr @lp_str_concat(ptr %t2605, ptr %t2608) - %t2610 = call ptr @lp_str_concat(ptr %t2609, ptr @.str10668) + %t2610 = call ptr @lp_str_concat(ptr %t2609, ptr @.str10673) %t2611 = call ptr @fn_emit_bind(ptr %t2610) - %t2612 = call ptr @fn_val(ptr %t2611, ptr @.str10669) + %t2612 = call ptr @fn_val(ptr %t2611, ptr @.str10674) store ptr %t2612, ptr %retval br label %ret ifend522: @@ -138271,7 +138433,7 @@ wbody540: br i1 %t2676, label %ixok542, label %ixbad543 ixbad543: %t2677 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2677, ptr @.fmt_bounds, ptr @.str10670, i32 %t2671, i32 %t2675) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2677, ptr @.fmt_bounds, ptr @.str10675, i32 %t2671, i32 %t2675) call void @exit(i32 1) unreachable ixok542: @@ -138290,9 +138452,9 @@ then544: %t2688 = getelementptr inbounds %Cmp_Val, ptr %t2687, i32 0, i32 0 %t2689 = load ptr, ptr %t2688 %t2690 = call ptr @fn_slice_field(ptr %t2689, i32 0) - %t2691 = call ptr @lp_str_concat(ptr @.str10671, ptr %t2690) + %t2691 = call ptr @lp_str_concat(ptr @.str10676, ptr %t2690) %t2692 = call ptr @fn_emit_bind(ptr %t2691) - %t2693 = call ptr @fn_val(ptr %t2692, ptr @.str10672) + %t2693 = call ptr @fn_val(ptr %t2692, ptr @.str10677) store ptr %t2693, ptr %t2681 br label %ifend546 ifend546: @@ -138319,7 +138481,7 @@ then547: br i1 %t2711, label %ixok550, label %ixbad551 ixbad551: %t2712 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2712, ptr @.fmt_bounds, ptr @.str10673, i32 %t2706, i32 %t2710) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2712, ptr @.fmt_bounds, ptr @.str10678, i32 %t2706, i32 %t2710) call void @exit(i32 1) unreachable ixok550: @@ -138333,7 +138495,7 @@ ifend549: %t2717 = icmp ne i32 %t2716, 0 br i1 %t2717, label %then552, label %ifend554 then552: - store ptr @.str10674, ptr %t2697 + store ptr @.str10679, ptr %t2697 br label %ifend554 ifend554: %t2718 = load ptr, ptr %t2650 @@ -138404,10 +138566,10 @@ wend541: %t2764 = load ptr, ptr %t2763 %t2765 = call ptr @fn_llty(ptr %t2764) store ptr %t2765, ptr %t2766 - call void @fn_emit(ptr @.str10675) - store ptr @.str10676, ptr %t2767 + call void @fn_emit(ptr @.str10680) + store ptr @.str10681, ptr %t2767 %t2768 = load ptr, ptr %t2766 - %t2769 = call i32 @lp_str_eq(ptr %t2768, ptr @.str10677) + %t2769 = call i32 @lp_str_eq(ptr %t2768, ptr @.str10682) %t2770 = icmp eq i32 %t2769, 0 %t2771 = zext i1 %t2770 to i32 %t2772 = icmp ne i32 %t2771, 0 @@ -138417,20 +138579,20 @@ then559: store ptr %t2773, ptr %t2767 %t2774 = load ptr, ptr %t2767 call void @fn_emit(ptr %t2774) - call void @fn_emit(ptr @.str10678) + call void @fn_emit(ptr @.str10683) br label %ifend561 ifend561: - call void @fn_emit(ptr @.str10679) + call void @fn_emit(ptr @.str10684) %t2775 = load ptr, ptr %t2766 call void @fn_emit(ptr %t2775) - call void @fn_emit(ptr @.str10680) + call void @fn_emit(ptr @.str10685) %t2776 = load ptr, ptr %t2633 %t2777 = getelementptr inbounds %Cmp_Node, ptr %t2776, i32 0, i32 4 %t2778 = load ptr, ptr %t2777 %t2779 = getelementptr inbounds %Cmp_Node, ptr %t2778, i32 0, i32 1 %t2780 = load ptr, ptr %t2779 call void @fn_emit(ptr %t2780) - call void @fn_emit(ptr @.str10681) + call void @fn_emit(ptr @.str10686) store i32 0, ptr %t2658 br label %wcond562 wcond562: @@ -138449,7 +138611,7 @@ wbody563: %t2791 = icmp ne i32 %t2790, 0 br i1 %t2791, label %then565, label %ifend567 then565: - call void @fn_emit(ptr @.str10682) + call void @fn_emit(ptr @.str10687) br label %ifend567 ifend567: %t2792 = load ptr, ptr %t2657 @@ -138462,7 +138624,7 @@ ifend567: br i1 %t2798, label %ixok568, label %ixbad569 ixbad569: %t2799 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2799, ptr @.fmt_bounds, ptr @.str10683, i32 %t2793, i32 %t2797) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2799, ptr @.fmt_bounds, ptr @.str10688, i32 %t2793, i32 %t2797) call void @exit(i32 1) unreachable ixok568: @@ -138470,7 +138632,7 @@ ixok568: %t2801 = load ptr, ptr %t2800 %t2802 = call ptr @fn_llty(ptr %t2801) call void @fn_emit(ptr %t2802) - call void @fn_emit(ptr @.str10684) + call void @fn_emit(ptr @.str10689) %t2803 = load ptr, ptr %t2650 %t2804 = load i32, ptr %t2658 %t2805 = getelementptr inbounds %LSlice, ptr %t2803, i32 0, i32 0 @@ -138481,7 +138643,7 @@ ixok568: br i1 %t2809, label %ixok570, label %ixbad571 ixbad571: %t2810 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2810, ptr @.fmt_bounds, ptr @.str10685, i32 %t2804, i32 %t2808) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2810, ptr @.fmt_bounds, ptr @.str10690, i32 %t2804, i32 %t2808) call void @exit(i32 1) unreachable ixok570: @@ -138493,7 +138655,7 @@ ixok570: store i32 %t2814, ptr %t2658 br label %wcond562 wend564: - call void @fn_emit(ptr @.str10686) + call void @fn_emit(ptr @.str10691) %t2815 = load ptr, ptr %t2767 %t2816 = load ptr, ptr %t2633 %t2817 = getelementptr inbounds %Cmp_Node, ptr %t2816, i32 0, i32 3 @@ -138532,7 +138694,7 @@ ifend574: br i1 %t2841, label %then575, label %ifend577 then575: %t2842 = load ptr, ptr %t48 - %t2843 = call ptr @lp_str_concat(ptr @.str10687, ptr %t2842) + %t2843 = call ptr @lp_str_concat(ptr @.str10692, ptr %t2842) store ptr %t2843, ptr %t2844 %t2845 = load ptr, ptr %t2844 %t2846 = call ptr @fn_find_fn(ptr %t2845) @@ -138544,7 +138706,7 @@ then575: br i1 %t2850, label %then578, label %ifend580 then578: %t2851 = load ptr, ptr %t48 - %t2852 = call ptr @lp_str_concat(ptr @.str10688, ptr %t2851) + %t2852 = call ptr @lp_str_concat(ptr @.str10693, ptr %t2851) call void @fn_perr(ptr %t2852) br label %ifend580 ifend580: @@ -138632,7 +138794,7 @@ wbody585: br i1 %t2909, label %ixok587, label %ixbad588 ixbad588: %t2910 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2910, ptr @.fmt_bounds, ptr @.str10689, i32 %t2904, i32 %t2908) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2910, ptr @.fmt_bounds, ptr @.str10694, i32 %t2904, i32 %t2908) call void @exit(i32 1) unreachable ixok587: @@ -138663,7 +138825,7 @@ then589: br i1 %t2932, label %ixok592, label %ixbad593 ixbad593: %t2933 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t2933, ptr @.fmt_bounds, ptr @.str10690, i32 %t2927, i32 %t2931) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2933, ptr @.fmt_bounds, ptr @.str10695, i32 %t2927, i32 %t2931) call void @exit(i32 1) unreachable ixok592: @@ -138740,10 +138902,10 @@ wend586: %t2982 = load ptr, ptr %t2981 %t2983 = call ptr @fn_llty(ptr %t2982) store ptr %t2983, ptr %t2984 - call void @fn_emit(ptr @.str10691) - store ptr @.str10692, ptr %t2985 + call void @fn_emit(ptr @.str10696) + store ptr @.str10697, ptr %t2985 %t2986 = load ptr, ptr %t2984 - %t2987 = call i32 @lp_str_eq(ptr %t2986, ptr @.str10693) + %t2987 = call i32 @lp_str_eq(ptr %t2986, ptr @.str10698) %t2988 = icmp eq i32 %t2987, 0 %t2989 = zext i1 %t2988 to i32 %t2990 = icmp ne i32 %t2989, 0 @@ -138753,16 +138915,16 @@ then598: store ptr %t2991, ptr %t2985 %t2992 = load ptr, ptr %t2985 call void @fn_emit(ptr %t2992) - call void @fn_emit(ptr @.str10694) + call void @fn_emit(ptr @.str10699) br label %ifend600 ifend600: - call void @fn_emit(ptr @.str10695) + call void @fn_emit(ptr @.str10700) %t2993 = load ptr, ptr %t2984 call void @fn_emit(ptr %t2993) - call void @fn_emit(ptr @.str10696) + call void @fn_emit(ptr @.str10701) %t2994 = load ptr, ptr %t2837 call void @fn_emit(ptr %t2994) - call void @fn_emit(ptr @.str10697) + call void @fn_emit(ptr @.str10702) store i32 0, ptr %t2891 br label %wcond601 wcond601: @@ -138781,7 +138943,7 @@ wbody602: %t3005 = icmp ne i32 %t3004, 0 br i1 %t3005, label %then604, label %ifend606 then604: - call void @fn_emit(ptr @.str10698) + call void @fn_emit(ptr @.str10703) br label %ifend606 ifend606: %t3006 = load ptr, ptr %t2890 @@ -138794,7 +138956,7 @@ ifend606: br i1 %t3012, label %ixok607, label %ixbad608 ixbad608: %t3013 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t3013, ptr @.fmt_bounds, ptr @.str10699, i32 %t3007, i32 %t3011) + call i32 (ptr, ptr, ...) @fprintf(ptr %t3013, ptr @.fmt_bounds, ptr @.str10704, i32 %t3007, i32 %t3011) call void @exit(i32 1) unreachable ixok607: @@ -138802,7 +138964,7 @@ ixok607: %t3015 = load ptr, ptr %t3014 %t3016 = call ptr @fn_llty(ptr %t3015) call void @fn_emit(ptr %t3016) - call void @fn_emit(ptr @.str10700) + call void @fn_emit(ptr @.str10705) %t3017 = load ptr, ptr %t2883 %t3018 = load i32, ptr %t2891 %t3019 = getelementptr inbounds %LSlice, ptr %t3017, i32 0, i32 0 @@ -138813,7 +138975,7 @@ ixok607: br i1 %t3023, label %ixok609, label %ixbad610 ixbad610: %t3024 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t3024, ptr @.fmt_bounds, ptr @.str10701, i32 %t3018, i32 %t3022) + call i32 (ptr, ptr, ...) @fprintf(ptr %t3024, ptr @.fmt_bounds, ptr @.str10706, i32 %t3018, i32 %t3022) call void @exit(i32 1) unreachable ixok609: @@ -138825,7 +138987,7 @@ ixok609: store i32 %t3028, ptr %t2891 br label %wcond601 wend603: - call void @fn_emit(ptr @.str10702) + call void @fn_emit(ptr @.str10707) %t3029 = load ptr, ptr %t2985 %t3030 = load ptr, ptr %t2835 %t3031 = getelementptr inbounds %Cmp_Node, ptr %t3030, i32 0, i32 3 @@ -138876,7 +139038,7 @@ entry: %t4 = icmp ne i32 %t3, 0 br i1 %t4, label %then0, label %ifend2 then0: - %t5 = call ptr @fn_val(ptr @.str10703, ptr @.str10704) + %t5 = call ptr @fn_val(ptr @.str10708, ptr @.str10709) store ptr %t5, ptr %retval br label %ret ifend2: @@ -138899,7 +139061,7 @@ then6: %t18 = load ptr, ptr %t0 %t19 = getelementptr inbounds %Cmp_Node, ptr %t18, i32 0, i32 1 %t20 = load ptr, ptr %t19 - %t21 = call ptr @fn_val(ptr %t20, ptr @.str10705) + %t21 = call ptr @fn_val(ptr %t20, ptr @.str10710) store ptr %t21, ptr %retval br label %ret ifend8: @@ -138907,7 +139069,7 @@ ifend8: %t23 = getelementptr inbounds %Cmp_Node, ptr %t22, i32 0, i32 2 %t24 = load i32, ptr %t23 %t25 = call ptr @fn_itoa(i32 %t24) - %t26 = call ptr @fn_val(ptr %t25, ptr @.str10706) + %t26 = call ptr @fn_val(ptr %t25, ptr @.str10711) store ptr %t26, ptr %retval br label %ret ifend5: @@ -138937,8 +139099,8 @@ then11: %t43 = load ptr, ptr %t0 %t44 = getelementptr inbounds %Cmp_Node, ptr %t43, i32 0, i32 1 %t45 = load ptr, ptr %t44 - %t46 = call ptr @fn_fp_lit_code(ptr %t45, ptr @.str10707) - %t47 = call ptr @fn_val(ptr %t46, ptr @.str10708) + %t46 = call ptr @fn_fp_lit_code(ptr %t45, ptr @.str10712) + %t47 = call ptr @fn_val(ptr %t46, ptr @.str10713) store ptr %t47, ptr %t48 %t49 = load ptr, ptr %t48 %t50 = getelementptr inbounds %Cmp_Val, ptr %t49, i32 0, i32 2 @@ -138960,7 +139122,7 @@ then14: %t60 = getelementptr inbounds %Cmp_Node, ptr %t59, i32 0, i32 2 %t61 = load i32, ptr %t60 %t62 = call ptr @fn_itoa(i32 %t61) - %t63 = call ptr @fn_val(ptr %t62, ptr @.str10709) + %t63 = call ptr @fn_val(ptr %t62, ptr @.str10714) store ptr %t63, ptr %t64 %t65 = load ptr, ptr %t64 %t66 = getelementptr inbounds %Cmp_Val, ptr %t65, i32 0, i32 2 @@ -138990,7 +139152,7 @@ then17: br i1 %t83, label %ixok20, label %ixbad21 ixbad21: %t84 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str10710, i32 %t78, i32 %t82) + call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str10715, i32 %t78, i32 %t82) call void @exit(i32 1) unreachable ixok20: @@ -139011,7 +139173,7 @@ then22: %t94 = getelementptr inbounds %Cmp_Node, ptr %t93, i32 0, i32 2 %t95 = load i32, ptr %t94 %t96 = call ptr @fn_itoa(i32 %t95) - %t97 = call ptr @fn_val(ptr %t96, ptr @.str10711) + %t97 = call ptr @fn_val(ptr %t96, ptr @.str10716) store ptr %t97, ptr %retval br label %ret ifend24: @@ -139023,7 +139185,7 @@ ifend24: %t103 = icmp ne i32 %t102, 0 br i1 %t103, label %then25, label %ifend27 then25: - %t104 = call ptr @fn_val(ptr @.str10712, ptr @.str10713) + %t104 = call ptr @fn_val(ptr @.str10717, ptr @.str10718) store ptr %t104, ptr %retval br label %ret ifend27: @@ -139037,7 +139199,7 @@ ifend27: then28: %t111 = load ptr, ptr %t0 %t112 = call ptr @fn_emit_spawn(ptr %t111) - %t113 = call ptr @fn_val(ptr %t112, ptr @.str10714) + %t113 = call ptr @fn_val(ptr %t112, ptr @.str10719) store ptr %t113, ptr %retval br label %ret ifend30: @@ -139068,20 +139230,20 @@ then31: %t135 = load ptr, ptr %t124 %t136 = getelementptr inbounds %Cmp_Val, ptr %t135, i32 0, i32 0 %t137 = load ptr, ptr %t136 - %t138 = call ptr @lp_str_concat(ptr @.str10715, ptr %t137) - %t139 = call ptr @lp_str_concat(ptr %t138, ptr @.str10716) + %t138 = call ptr @lp_str_concat(ptr @.str10720, ptr %t137) + %t139 = call ptr @lp_str_concat(ptr %t138, ptr @.str10721) %t140 = load ptr, ptr %t129 %t141 = getelementptr inbounds %Cmp_Val, ptr %t140, i32 0, i32 0 %t142 = load ptr, ptr %t141 %t143 = call ptr @lp_str_concat(ptr %t139, ptr %t142) - %t144 = call ptr @lp_str_concat(ptr %t143, ptr @.str10717) + %t144 = call ptr @lp_str_concat(ptr %t143, ptr @.str10722) %t145 = load ptr, ptr %t134 %t146 = getelementptr inbounds %Cmp_Val, ptr %t145, i32 0, i32 0 %t147 = load ptr, ptr %t146 %t148 = call ptr @lp_str_concat(ptr %t144, ptr %t147) - %t149 = call ptr @lp_str_concat(ptr %t148, ptr @.str10718) + %t149 = call ptr @lp_str_concat(ptr %t148, ptr @.str10723) %t150 = call ptr @fn_emit_bind(ptr %t149) - %t151 = call ptr @fn_val(ptr %t150, ptr @.str10719) + %t151 = call ptr @fn_val(ptr %t150, ptr @.str10724) store ptr %t151, ptr %retval br label %ret ifend33: @@ -139097,7 +139259,7 @@ then34: %t159 = getelementptr inbounds %Cmp_Node, ptr %t158, i32 0, i32 1 %t160 = load ptr, ptr %t159 %t161 = call ptr @fn_emit_str_const(ptr %t160) - %t162 = call ptr @fn_val(ptr %t161, ptr @.str10720) + %t162 = call ptr @fn_val(ptr %t161, ptr @.str10725) store ptr %t162, ptr %retval br label %ret ifend36: @@ -139188,7 +139350,7 @@ then52: br i1 %t222, label %ixok55, label %ixbad56 ixbad56: %t223 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t223, ptr @.fmt_bounds, ptr @.str10721, i32 %t217, i32 %t221) + call i32 (ptr, ptr, ...) @fprintf(ptr %t223, ptr @.fmt_bounds, ptr @.str10726, i32 %t217, i32 %t221) call void @exit(i32 1) unreachable ixok55: @@ -139204,7 +139366,7 @@ ixok55: br i1 %t232, label %ixok57, label %ixbad58 ixbad58: %t233 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t233, ptr @.fmt_bounds, ptr @.str10722, i32 %t227, i32 %t231) + call i32 (ptr, ptr, ...) @fprintf(ptr %t233, ptr @.fmt_bounds, ptr @.str10727, i32 %t227, i32 %t231) call void @exit(i32 1) unreachable ixok57: @@ -139257,7 +139419,7 @@ then65: %t270 = load ptr, ptr %t0 %t271 = getelementptr inbounds %Cmp_Node, ptr %t270, i32 0, i32 1 %t272 = load ptr, ptr %t271 - %t273 = call ptr @lp_str_concat(ptr @.str10723, ptr %t272) + %t273 = call ptr @lp_str_concat(ptr @.str10728, ptr %t272) %t274 = call ptr @fn_to_fp(ptr %t266, ptr %t269, ptr %t273) %t275 = load ptr, ptr %t241 %t276 = getelementptr inbounds %Cmp_Node, ptr %t275, i32 0, i32 3 @@ -139274,8 +139436,8 @@ ifend64: %t281 = getelementptr inbounds %Cmp_Node, ptr %t280, i32 0, i32 3 %t282 = load ptr, ptr %t281 %t283 = call ptr @fn_llty(ptr %t282) - %t284 = call ptr @lp_str_concat(ptr @.str10724, ptr %t283) - %t285 = call ptr @lp_str_concat(ptr %t284, ptr @.str10725) + %t284 = call ptr @lp_str_concat(ptr @.str10729, ptr %t283) + %t285 = call ptr @lp_str_concat(ptr %t284, ptr @.str10730) %t286 = load ptr, ptr %t0 %t287 = getelementptr inbounds %Cmp_Node, ptr %t286, i32 0, i32 1 %t288 = load ptr, ptr %t287 @@ -139302,7 +139464,7 @@ then68: %t304 = load ptr, ptr %t303 %t305 = call i32 @fn_ui_index_of(ptr %t304) %t306 = call ptr @fn_itoa(i32 %t305) - %t307 = call ptr @fn_val(ptr %t306, ptr @.str10726) + %t307 = call ptr @fn_val(ptr %t306, ptr @.str10731) store ptr %t307, ptr %retval br label %ret ifend70: @@ -139335,7 +139497,7 @@ ifend73: %t326 = load ptr, ptr %t0 %t327 = getelementptr inbounds %Cmp_Node, ptr %t326, i32 0, i32 1 %t328 = load ptr, ptr %t327 - %t329 = call ptr @lp_str_concat(ptr @.str10727, ptr %t328) + %t329 = call ptr @lp_str_concat(ptr @.str10732, ptr %t328) call void @fn_perr(ptr %t329) br label %ifend51 ifend51: @@ -139362,7 +139524,7 @@ then77: %t346 = load ptr, ptr %t345 %t347 = getelementptr inbounds %Cmp_Node, ptr %t346, i32 0, i32 1 %t348 = load ptr, ptr %t347 - %t349 = call i32 @lp_str_eq(ptr %t348, ptr @.str10728) + %t349 = call i32 @lp_str_eq(ptr %t348, ptr @.str10733) %t350 = icmp ne i32 %t349, 0 br i1 %t350, label %then80, label %ifend82 then80: @@ -139380,13 +139542,13 @@ then83: %t360 = load ptr, ptr %t0 %t361 = getelementptr inbounds %Cmp_Node, ptr %t360, i32 0, i32 1 %t362 = load ptr, ptr %t361 - %t363 = call ptr @lp_str_concat(ptr @.str10729, ptr %t362) + %t363 = call ptr @lp_str_concat(ptr @.str10734, ptr %t362) call void @fn_perr(ptr %t363) br label %ifend85 ifend85: %t364 = load i32, ptr %t355 %t365 = call ptr @fn_itoa(i32 %t364) - %t366 = call ptr @fn_val(ptr %t365, ptr @.str10730) + %t366 = call ptr @fn_val(ptr %t365, ptr @.str10735) store ptr %t366, ptr %retval br label %ret ifend82: @@ -139395,7 +139557,7 @@ ifend82: %t369 = load ptr, ptr %t368 %t370 = getelementptr inbounds %Cmp_Node, ptr %t369, i32 0, i32 1 %t371 = load ptr, ptr %t370 - %t372 = call i32 @lp_str_eq(ptr %t371, ptr @.str10731) + %t372 = call i32 @lp_str_eq(ptr %t371, ptr @.str10736) %t373 = icmp ne i32 %t372, 0 br i1 %t373, label %then86, label %ifend88 then86: @@ -139413,13 +139575,13 @@ then89: %t383 = load ptr, ptr %t0 %t384 = getelementptr inbounds %Cmp_Node, ptr %t383, i32 0, i32 1 %t385 = load ptr, ptr %t384 - %t386 = call ptr @lp_str_concat(ptr @.str10732, ptr %t385) + %t386 = call ptr @lp_str_concat(ptr @.str10737, ptr %t385) call void @fn_perr(ptr %t386) br label %ifend91 ifend91: %t387 = load i32, ptr %t378 %t388 = call ptr @fn_itoa(i32 %t387) - %t389 = call ptr @fn_val(ptr %t388, ptr @.str10733) + %t389 = call ptr @fn_val(ptr %t388, ptr @.str10738) store ptr %t389, ptr %retval br label %ret ifend88: @@ -139441,7 +139603,7 @@ ifend88: then92: %t404 = load i32, ptr %t399 %t405 = call ptr @fn_itoa(i32 %t404) - %t406 = call ptr @fn_val(ptr %t405, ptr @.str10734) + %t406 = call ptr @fn_val(ptr %t405, ptr @.str10739) store ptr %t406, ptr %retval br label %ret ifend94: @@ -139459,7 +139621,7 @@ ifend79: br i1 %t415, label %then95, label %ifend97 then95: %t417 = load ptr, ptr %t411 - %t418 = call i32 @lp_str_eq(ptr %t417, ptr @.str10735) + %t418 = call i32 @lp_str_eq(ptr %t417, ptr @.str10740) %t419 = icmp ne i32 %t418, 0 %t420 = zext i1 %t419 to i32 store i32 %t420, ptr %t416 @@ -139468,7 +139630,7 @@ sc98: %t422 = load ptr, ptr %t0 %t423 = getelementptr inbounds %Cmp_Node, ptr %t422, i32 0, i32 1 %t424 = load ptr, ptr %t423 - %t425 = call i32 @lp_str_eq(ptr %t424, ptr @.str10736) + %t425 = call i32 @lp_str_eq(ptr %t424, ptr @.str10741) %t426 = icmp ne i32 %t425, 0 %t427 = zext i1 %t426 to i32 store i32 %t427, ptr %t421 @@ -139477,7 +139639,7 @@ sc100: %t428 = load ptr, ptr %t0 %t429 = getelementptr inbounds %Cmp_Node, ptr %t428, i32 0, i32 1 %t430 = load ptr, ptr %t429 - %t431 = call i32 @lp_str_eq(ptr %t430, ptr @.str10737) + %t431 = call i32 @lp_str_eq(ptr %t430, ptr @.str10742) %t432 = icmp ne i32 %t431, 0 %t433 = zext i1 %t432 to i32 store i32 %t433, ptr %t421 @@ -139501,7 +139663,7 @@ then102: %t444 = load ptr, ptr %t0 %t445 = getelementptr inbounds %Cmp_Node, ptr %t444, i32 0, i32 1 %t446 = load ptr, ptr %t445 - %t447 = call i32 @lp_str_eq(ptr %t446, ptr @.str10738) + %t447 = call i32 @lp_str_eq(ptr %t446, ptr @.str10743) %t448 = icmp ne i32 %t447, 0 br i1 %t448, label %then105, label %ifend107 then105: @@ -139509,7 +139671,7 @@ then105: %t450 = getelementptr inbounds %Cmp_Val, ptr %t449, i32 0, i32 0 %t451 = load ptr, ptr %t450 %t452 = call ptr @fn_vec_x(ptr %t451) - %t453 = call ptr @fn_val(ptr %t452, ptr @.str10739) + %t453 = call ptr @fn_val(ptr %t452, ptr @.str10744) store ptr %t453, ptr %retval br label %ret ifend107: @@ -139517,7 +139679,7 @@ ifend107: %t455 = getelementptr inbounds %Cmp_Val, ptr %t454, i32 0, i32 0 %t456 = load ptr, ptr %t455 %t457 = call ptr @fn_vec_y(ptr %t456) - %t458 = call ptr @fn_val(ptr %t457, ptr @.str10740) + %t458 = call ptr @fn_val(ptr %t457, ptr @.str10745) store ptr %t458, ptr %retval br label %ret ifend104: @@ -139565,19 +139727,19 @@ then111: %t488 = call ptr @fn_emit_index_addr(ptr %t487) store ptr %t488, ptr %t489 %t490 = load ptr, ptr @g_g_addr_ty - %t491 = call i32 @lp_str_eq(ptr %t490, ptr @.str10741) + %t491 = call i32 @lp_str_eq(ptr %t490, ptr @.str10746) %t492 = icmp ne i32 %t491, 0 br i1 %t492, label %then114, label %ifend116 then114: %t493 = load ptr, ptr %t489 - %t494 = call ptr @lp_str_concat(ptr @.str10742, ptr %t493) + %t494 = call ptr @lp_str_concat(ptr @.str10747, ptr %t493) %t495 = call ptr @fn_emit_bind(ptr %t494) store ptr %t495, ptr %t496 %t497 = load ptr, ptr %t496 - %t498 = call ptr @lp_str_concat(ptr @.str10743, ptr %t497) - %t499 = call ptr @lp_str_concat(ptr %t498, ptr @.str10744) + %t498 = call ptr @lp_str_concat(ptr @.str10748, ptr %t497) + %t499 = call ptr @lp_str_concat(ptr %t498, ptr @.str10749) %t500 = call ptr @fn_emit_bind(ptr %t499) - %t501 = call ptr @fn_val(ptr %t500, ptr @.str10745) + %t501 = call ptr @fn_val(ptr %t500, ptr @.str10750) store ptr %t501, ptr %retval br label %ret ifend116: @@ -139662,15 +139824,15 @@ then132: %t553 = load ptr, ptr %t0 %t554 = getelementptr inbounds %Cmp_Node, ptr %t553, i32 0, i32 1 %t555 = load ptr, ptr %t554 - %t556 = call i32 @lp_str_eq(ptr %t555, ptr @.str10746) + %t556 = call i32 @lp_str_eq(ptr %t555, ptr @.str10751) %t557 = icmp ne i32 %t556, 0 br i1 %t557, label %then135, label %ifend137 then135: %t558 = load ptr, ptr %t547 %t559 = getelementptr inbounds %Cmp_Val, ptr %t558, i32 0, i32 1 %t560 = load ptr, ptr %t559 - %t561 = call ptr @lp_str_concat(ptr @.str10747, ptr %t560) - %t562 = call ptr @lp_str_concat(ptr %t561, ptr @.str10748) + %t561 = call ptr @lp_str_concat(ptr @.str10752, ptr %t560) + %t562 = call ptr @lp_str_concat(ptr %t561, ptr @.str10753) %t563 = load ptr, ptr %t547 %t564 = getelementptr inbounds %Cmp_Val, ptr %t563, i32 0, i32 0 %t565 = load ptr, ptr %t564 @@ -139702,8 +139864,8 @@ ifend137: %t583 = load ptr, ptr %t0 %t584 = getelementptr inbounds %Cmp_Node, ptr %t583, i32 0, i32 1 %t585 = load ptr, ptr %t584 - %t586 = call ptr @lp_str_concat(ptr @.str10749, ptr %t585) - %t587 = call ptr @lp_str_concat(ptr %t586, ptr @.str10750) + %t586 = call ptr @lp_str_concat(ptr @.str10754, ptr %t585) + %t587 = call ptr @lp_str_concat(ptr %t586, ptr @.str10755) %t588 = load ptr, ptr %t547 %t589 = getelementptr inbounds %Cmp_Val, ptr %t588, i32 0, i32 1 %t590 = load ptr, ptr %t589 @@ -139714,7 +139876,7 @@ ifend134: %t593 = load ptr, ptr %t0 %t594 = getelementptr inbounds %Cmp_Node, ptr %t593, i32 0, i32 1 %t595 = load ptr, ptr %t594 - %t596 = call i32 @lp_str_eq(ptr %t595, ptr @.str10751) + %t596 = call i32 @lp_str_eq(ptr %t595, ptr @.str10756) %t597 = icmp ne i32 %t596, 0 %t598 = zext i1 %t597 to i32 store i32 %t598, ptr %t592 @@ -139737,9 +139899,9 @@ then143: %t608 = load ptr, ptr %t547 %t609 = getelementptr inbounds %Cmp_Val, ptr %t608, i32 0, i32 0 %t610 = load ptr, ptr %t609 - %t611 = call ptr @lp_str_concat(ptr @.str10752, ptr %t610) + %t611 = call ptr @lp_str_concat(ptr @.str10757, ptr %t610) %t612 = call ptr @fn_emit_bind(ptr %t611) - %t613 = call ptr @fn_val(ptr %t612, ptr @.str10753) + %t613 = call ptr @fn_val(ptr %t612, ptr @.str10758) store ptr %t613, ptr %t614 %t615 = load ptr, ptr %t614 %t616 = getelementptr inbounds %Cmp_Val, ptr %t615, i32 0, i32 2 @@ -139753,40 +139915,40 @@ ifend145: %t620 = getelementptr inbounds %Cmp_Val, ptr %t619, i32 0, i32 1 %t621 = load ptr, ptr %t620 %t622 = call ptr @fn_llty(ptr %t621) - %t623 = call i32 @lp_str_eq(ptr %t622, ptr @.str10754) + %t623 = call i32 @lp_str_eq(ptr %t622, ptr @.str10759) %t624 = icmp ne i32 %t623, 0 br i1 %t624, label %then146, label %ifend148 then146: %t625 = load ptr, ptr %t0 %t626 = getelementptr inbounds %Cmp_Node, ptr %t625, i32 0, i32 1 %t627 = load ptr, ptr %t626 - %t628 = call i32 @lp_str_eq(ptr %t627, ptr @.str10755) + %t628 = call i32 @lp_str_eq(ptr %t627, ptr @.str10760) %t629 = icmp ne i32 %t628, 0 br i1 %t629, label %then149, label %ifend151 then149: %t630 = load ptr, ptr %t547 %t631 = getelementptr inbounds %Cmp_Val, ptr %t630, i32 0, i32 0 %t632 = load ptr, ptr %t631 - %t633 = call ptr @lp_str_concat(ptr @.str10756, ptr %t632) + %t633 = call ptr @lp_str_concat(ptr @.str10761, ptr %t632) %t634 = call ptr @fn_emit_bind(ptr %t633) - %t635 = call ptr @fn_val(ptr %t634, ptr @.str10757) + %t635 = call ptr @fn_val(ptr %t634, ptr @.str10762) store ptr %t635, ptr %retval br label %ret ifend151: %t636 = load ptr, ptr %t0 %t637 = getelementptr inbounds %Cmp_Node, ptr %t636, i32 0, i32 1 %t638 = load ptr, ptr %t637 - %t639 = call i32 @lp_str_eq(ptr %t638, ptr @.str10758) + %t639 = call i32 @lp_str_eq(ptr %t638, ptr @.str10763) %t640 = icmp ne i32 %t639, 0 br i1 %t640, label %then152, label %ifend154 then152: %t641 = load ptr, ptr %t547 %t642 = getelementptr inbounds %Cmp_Val, ptr %t641, i32 0, i32 0 %t643 = load ptr, ptr %t642 - %t644 = call ptr @lp_str_concat(ptr @.str10759, ptr %t643) - %t645 = call ptr @lp_str_concat(ptr %t644, ptr @.str10760) + %t644 = call ptr @lp_str_concat(ptr @.str10764, ptr %t643) + %t645 = call ptr @lp_str_concat(ptr %t644, ptr @.str10765) %t646 = call ptr @fn_emit_bind(ptr %t645) - %t647 = call ptr @fn_val(ptr %t646, ptr @.str10761) + %t647 = call ptr @fn_val(ptr %t646, ptr @.str10766) store ptr %t647, ptr %retval br label %ret ifend154: @@ -139795,14 +139957,14 @@ ifend148: %t648 = load ptr, ptr %t0 %t649 = getelementptr inbounds %Cmp_Node, ptr %t648, i32 0, i32 1 %t650 = load ptr, ptr %t649 - %t651 = call i32 @lp_str_eq(ptr %t650, ptr @.str10762) + %t651 = call i32 @lp_str_eq(ptr %t650, ptr @.str10767) %t652 = icmp ne i32 %t651, 0 br i1 %t652, label %then155, label %ifend157 then155: %t653 = load ptr, ptr %t547 %t654 = getelementptr inbounds %Cmp_Val, ptr %t653, i32 0, i32 0 %t655 = load ptr, ptr %t654 - %t656 = call ptr @lp_str_concat(ptr @.str10763, ptr %t655) + %t656 = call ptr @lp_str_concat(ptr @.str10768, ptr %t655) %t657 = call ptr @fn_emit_bind(ptr %t656) %t658 = load ptr, ptr %t547 %t659 = getelementptr inbounds %Cmp_Val, ptr %t658, i32 0, i32 1 @@ -139815,15 +139977,15 @@ ifend157: %t663 = load ptr, ptr %t0 %t664 = getelementptr inbounds %Cmp_Node, ptr %t663, i32 0, i32 1 %t665 = load ptr, ptr %t664 - %t666 = call i32 @lp_str_eq(ptr %t665, ptr @.str10764) + %t666 = call i32 @lp_str_eq(ptr %t665, ptr @.str10769) %t667 = icmp ne i32 %t666, 0 br i1 %t667, label %then158, label %ifend160 then158: %t668 = load ptr, ptr %t547 %t669 = getelementptr inbounds %Cmp_Val, ptr %t668, i32 0, i32 0 %t670 = load ptr, ptr %t669 - %t671 = call ptr @lp_str_concat(ptr @.str10765, ptr %t670) - %t672 = call ptr @lp_str_concat(ptr %t671, ptr @.str10766) + %t671 = call ptr @lp_str_concat(ptr @.str10770, ptr %t670) + %t672 = call ptr @lp_str_concat(ptr %t671, ptr @.str10771) %t673 = call ptr @fn_emit_bind(ptr %t672) %t674 = load ptr, ptr %t547 %t675 = getelementptr inbounds %Cmp_Val, ptr %t674, i32 0, i32 1 @@ -139836,15 +139998,15 @@ ifend160: %t679 = load ptr, ptr %t547 %t680 = getelementptr inbounds %Cmp_Val, ptr %t679, i32 0, i32 0 %t681 = load ptr, ptr %t680 - %t682 = call ptr @lp_str_concat(ptr @.str10767, ptr %t681) - %t683 = call ptr @lp_str_concat(ptr %t682, ptr @.str10768) + %t682 = call ptr @lp_str_concat(ptr @.str10772, ptr %t681) + %t683 = call ptr @lp_str_concat(ptr %t682, ptr @.str10773) %t684 = call ptr @fn_emit_bind(ptr %t683) store ptr %t684, ptr %t685 %t686 = load ptr, ptr %t685 - %t687 = call ptr @lp_str_concat(ptr @.str10769, ptr %t686) - %t688 = call ptr @lp_str_concat(ptr %t687, ptr @.str10770) + %t687 = call ptr @lp_str_concat(ptr @.str10774, ptr %t686) + %t688 = call ptr @lp_str_concat(ptr %t687, ptr @.str10775) %t689 = call ptr @fn_emit_bind(ptr %t688) - %t690 = call ptr @fn_val(ptr %t689, ptr @.str10771) + %t690 = call ptr @fn_val(ptr %t689, ptr @.str10776) store ptr %t690, ptr %retval br label %ret ifend131: @@ -139852,10 +140014,10 @@ ifend131: %t692 = getelementptr inbounds %Cmp_Node, ptr %t691, i32 0, i32 0 %t693 = load i32, ptr %t692 %t694 = call ptr @fn_itoa(i32 %t693) - %t695 = call ptr @lp_str_concat(ptr @.str10772, ptr %t694) - %t696 = call ptr @lp_str_concat(ptr %t695, ptr @.str10773) + %t695 = call ptr @lp_str_concat(ptr @.str10777, ptr %t694) + %t696 = call ptr @lp_str_concat(ptr %t695, ptr @.str10778) call void @fn_perr(ptr %t696) - %t697 = call ptr @fn_val(ptr @.str10774, ptr @.str10775) + %t697 = call ptr @fn_val(ptr @.str10779, ptr @.str10780) store ptr %t697, ptr %retval br label %ret ret: @@ -139952,7 +140114,7 @@ entry: %t6 = alloca i32 %t44 = alloca ptr store ptr %arg_d, ptr %t0 - store ptr @.str10776, ptr %t1 + store ptr @.str10781, ptr %t1 %t2 = load ptr, ptr %t0 %t3 = call i32 @fn_state_lead(ptr %t2) store i32 %t3, ptr %t4 @@ -139979,7 +140141,7 @@ wbody1: br i1 %t20, label %then3, label %ifend5 then3: %t21 = load ptr, ptr %t1 - %t22 = call ptr @lp_str_concat(ptr %t21, ptr @.str10777) + %t22 = call ptr @lp_str_concat(ptr %t21, ptr @.str10782) store ptr %t22, ptr %t1 br label %ifend5 ifend5: @@ -139996,7 +140158,7 @@ ifend5: br i1 %t32, label %ixok6, label %ixbad7 ixbad7: %t33 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str10778, i32 %t27, i32 %t31) + call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str10783, i32 %t27, i32 %t31) call void @exit(i32 1) unreachable ixok6: @@ -140021,11 +140183,11 @@ wend2: %t48 = icmp ne i32 %t47, 0 br i1 %t48, label %then8, label %ifend10 then8: - store ptr @.str10779, ptr %t44 + store ptr @.str10784, ptr %t44 br label %ifend10 ifend10: %t49 = load ptr, ptr %t1 - %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str10780) + %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str10785) %t51 = load ptr, ptr %t44 %t52 = call ptr @lp_str_concat(ptr %t50, ptr %t51) store ptr %t52, ptr %retval @@ -140290,7 +140452,7 @@ ifend8: store i32 %t43, ptr %t2 br label %wcond0 wend2: - store ptr @.str10781, ptr %retval + store ptr @.str10786, ptr %retval br label %ret ret: %t44 = load ptr, ptr %retval @@ -140317,8 +140479,8 @@ then0: %t10 = load ptr, ptr %t0 %t11 = getelementptr inbounds %Cmp_Node, ptr %t10, i32 0, i32 1 %t12 = load ptr, ptr %t11 - %t13 = call ptr @lp_str_concat(ptr @.str10782, ptr %t12) - %t14 = call ptr @lp_str_concat(ptr %t13, ptr @.str10783) + %t13 = call ptr @lp_str_concat(ptr @.str10787, ptr %t12) + %t14 = call ptr @lp_str_concat(ptr %t13, ptr @.str10788) %t15 = load ptr, ptr %t0 %t16 = getelementptr inbounds %Cmp_Node, ptr %t15, i32 0, i32 1 %t17 = load ptr, ptr %t16 @@ -140349,7 +140511,7 @@ ifend5: %t33 = load ptr, ptr %t0 %t34 = getelementptr inbounds %Cmp_Node, ptr %t33, i32 0, i32 1 %t35 = load ptr, ptr %t34 - %t36 = call ptr @lp_str_concat(ptr @.str10784, ptr %t35) + %t36 = call ptr @lp_str_concat(ptr @.str10789, ptr %t35) %t37 = load ptr, ptr %t5 %t38 = call ptr @fn_fn_sig_of(ptr %t37) %t39 = call ptr @fn_val(ptr %t36, ptr %t38) @@ -140396,7 +140558,7 @@ sc3: br i1 %t22, label %ixok5, label %ixbad6 ixbad6: %t23 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str10785, i32 %t17, i32 %t21) + call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str10790, i32 %t17, i32 %t21) call void @exit(i32 1) unreachable ixok5: @@ -140429,7 +140591,7 @@ sc7: br i1 %t43, label %ixok9, label %ixbad10 ixbad10: %t44 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str10786, i32 %t38, i32 %t42) + call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str10791, i32 %t38, i32 %t42) call void @exit(i32 1) unreachable ixok9: @@ -140477,8 +140639,8 @@ entry: %t1 = load ptr, ptr %t0 %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 1 %t3 = load ptr, ptr %t2 - %t4 = call ptr @lp_str_concat(ptr @.str10787, ptr %t3) - %t5 = call ptr @lp_str_concat(ptr %t4, ptr @.str10788) + %t4 = call ptr @lp_str_concat(ptr @.str10792, ptr %t3) + %t5 = call ptr @lp_str_concat(ptr %t4, ptr @.str10793) store ptr %t5, ptr %t6 store i32 0, ptr %t7 br label %wcond0 @@ -140502,7 +140664,7 @@ wbody1: br i1 %t21, label %ixok3, label %ixbad4 ixbad4: %t22 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str10789, i32 %t16, i32 %t20) + call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str10794, i32 %t16, i32 %t20) call void @exit(i32 1) unreachable ixok3: @@ -140557,7 +140719,7 @@ put9: %t55 = load ptr, ptr %t0 %t56 = call i32 @fn_state_lead(ptr %t55) store i32 %t56, ptr %t57 - store ptr @.str10790, ptr %t58 + store ptr @.str10795, ptr %t58 %t59 = load ptr, ptr %t0 %t60 = getelementptr inbounds %Cmp_Node, ptr %t59, i32 0, i32 3 %t61 = load ptr, ptr %t60 @@ -140573,9 +140735,9 @@ then10: store ptr %t68, ptr %t58 br label %ifend12 ifend12: - store ptr @.str10791, ptr %t69 - store ptr @.str10792, ptr %t70 - store ptr @.str10793, ptr %t71 + store ptr @.str10796, ptr %t69 + store ptr @.str10797, ptr %t70 + store ptr @.str10798, ptr %t71 store i32 0, ptr %t7 br label %wcond13 wcond13: @@ -140602,7 +140764,7 @@ wbody14: br i1 %t89, label %ixok16, label %ixbad17 ixbad17: %t90 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t90, ptr @.fmt_bounds, ptr @.str10794, i32 %t84, i32 %t88) + call i32 (ptr, ptr, ...) @fprintf(ptr %t90, ptr @.fmt_bounds, ptr @.str10799, i32 %t84, i32 %t88) call void @exit(i32 1) unreachable ixok16: @@ -140619,13 +140781,13 @@ then18: %t99 = load ptr, ptr %t71 %t100 = load i32, ptr %t7 %t101 = call ptr @fn_itoa(i32 %t100) - %t102 = call ptr @lp_str_concat(ptr @.str10795, ptr %t101) - %t103 = call ptr @lp_str_concat(ptr %t102, ptr @.str10796) + %t102 = call ptr @lp_str_concat(ptr @.str10800, ptr %t101) + %t103 = call ptr @lp_str_concat(ptr %t102, ptr @.str10801) %t104 = load ptr, ptr %t93 %t105 = getelementptr inbounds %Cmp_Node, ptr %t104, i32 0, i32 3 %t106 = load ptr, ptr %t105 %t107 = call ptr @lp_str_concat(ptr %t103, ptr %t106) - %t108 = call ptr @lp_str_concat(ptr %t107, ptr @.str10797) + %t108 = call ptr @lp_str_concat(ptr %t107, ptr @.str10802) %t109 = call ptr @lp_str_concat(ptr %t99, ptr %t108) store ptr %t109, ptr %t71 %t110 = load ptr, ptr %t70 @@ -140637,14 +140799,14 @@ then18: br i1 %t115, label %then21, label %ifend23 then21: %t116 = load ptr, ptr %t70 - %t117 = call ptr @lp_str_concat(ptr %t116, ptr @.str10798) + %t117 = call ptr @lp_str_concat(ptr %t116, ptr @.str10803) store ptr %t117, ptr %t70 br label %ifend23 ifend23: %t118 = load ptr, ptr %t70 %t119 = load i32, ptr %t7 %t120 = call ptr @fn_itoa(i32 %t119) - %t121 = call ptr @lp_str_concat(ptr @.str10799, ptr %t120) + %t121 = call ptr @lp_str_concat(ptr @.str10804, ptr %t120) %t122 = call ptr @lp_str_concat(ptr %t118, ptr %t121) store ptr %t122, ptr %t70 br label %ifend20 @@ -140658,7 +140820,7 @@ else19: br i1 %t128, label %then24, label %ifend26 then24: %t129 = load ptr, ptr %t69 - %t130 = call ptr @lp_str_concat(ptr %t129, ptr @.str10800) + %t130 = call ptr @lp_str_concat(ptr %t129, ptr @.str10805) store ptr %t130, ptr %t69 br label %ifend26 ifend26: @@ -140667,7 +140829,7 @@ ifend26: %t133 = getelementptr inbounds %Cmp_Node, ptr %t132, i32 0, i32 3 %t134 = load ptr, ptr %t133 %t135 = call ptr @fn_llty(ptr %t134) - %t136 = call ptr @lp_str_concat(ptr %t135, ptr @.str10801) + %t136 = call ptr @lp_str_concat(ptr %t135, ptr @.str10806) %t137 = load i32, ptr %t7 %t138 = call ptr @fn_itoa(i32 %t137) %t139 = call ptr @lp_str_concat(ptr %t136, ptr %t138) @@ -140682,7 +140844,7 @@ ifend26: br i1 %t146, label %then27, label %ifend29 then27: %t147 = load ptr, ptr %t70 - %t148 = call ptr @lp_str_concat(ptr %t147, ptr @.str10802) + %t148 = call ptr @lp_str_concat(ptr %t147, ptr @.str10807) store ptr %t148, ptr %t70 br label %ifend29 ifend29: @@ -140691,7 +140853,7 @@ ifend29: %t151 = getelementptr inbounds %Cmp_Node, ptr %t150, i32 0, i32 3 %t152 = load ptr, ptr %t151 %t153 = call ptr @fn_llty(ptr %t152) - %t154 = call ptr @lp_str_concat(ptr %t153, ptr @.str10803) + %t154 = call ptr @lp_str_concat(ptr %t153, ptr @.str10808) %t155 = load i32, ptr %t7 %t156 = call ptr @fn_itoa(i32 %t155) %t157 = call ptr @lp_str_concat(ptr %t154, ptr %t156) @@ -140705,55 +140867,55 @@ ifend20: br label %wcond13 wend15: %t161 = load ptr, ptr %t58 - %t162 = call ptr @lp_str_concat(ptr @.str10804, ptr %t161) - %t163 = call ptr @lp_str_concat(ptr %t162, ptr @.str10805) + %t162 = call ptr @lp_str_concat(ptr @.str10809, ptr %t161) + %t163 = call ptr @lp_str_concat(ptr %t162, ptr @.str10810) %t164 = load ptr, ptr %t0 %t165 = getelementptr inbounds %Cmp_Node, ptr %t164, i32 0, i32 1 %t166 = load ptr, ptr %t165 %t167 = call ptr @lp_str_concat(ptr %t163, ptr %t166) - %t168 = call ptr @lp_str_concat(ptr %t167, ptr @.str10806) + %t168 = call ptr @lp_str_concat(ptr %t167, ptr @.str10811) %t169 = load ptr, ptr %t70 %t170 = call ptr @lp_str_concat(ptr %t168, ptr %t169) - %t171 = call ptr @lp_str_concat(ptr %t170, ptr @.str10807) + %t171 = call ptr @lp_str_concat(ptr %t170, ptr @.str10812) store ptr %t171, ptr %t172 %t173 = load ptr, ptr %t58 - %t174 = call i32 @lp_str_eq(ptr %t173, ptr @.str10808) + %t174 = call i32 @lp_str_eq(ptr %t173, ptr @.str10813) %t175 = icmp eq i32 %t174, 0 %t176 = zext i1 %t175 to i32 %t177 = icmp ne i32 %t176, 0 br i1 %t177, label %then30, label %ifend32 then30: %t178 = load ptr, ptr %t58 - %t179 = call ptr @lp_str_concat(ptr @.str10809, ptr %t178) - %t180 = call ptr @lp_str_concat(ptr %t179, ptr @.str10810) + %t179 = call ptr @lp_str_concat(ptr @.str10814, ptr %t178) + %t180 = call ptr @lp_str_concat(ptr %t179, ptr @.str10815) %t181 = load ptr, ptr %t0 %t182 = getelementptr inbounds %Cmp_Node, ptr %t181, i32 0, i32 1 %t183 = load ptr, ptr %t182 %t184 = call ptr @lp_str_concat(ptr %t180, ptr %t183) - %t185 = call ptr @lp_str_concat(ptr %t184, ptr @.str10811) + %t185 = call ptr @lp_str_concat(ptr %t184, ptr @.str10816) %t186 = load ptr, ptr %t70 %t187 = call ptr @lp_str_concat(ptr %t185, ptr %t186) - %t188 = call ptr @lp_str_concat(ptr %t187, ptr @.str10812) + %t188 = call ptr @lp_str_concat(ptr %t187, ptr @.str10817) %t189 = load ptr, ptr %t58 %t190 = call ptr @lp_str_concat(ptr %t188, ptr %t189) - %t191 = call ptr @lp_str_concat(ptr %t190, ptr @.str10813) + %t191 = call ptr @lp_str_concat(ptr %t190, ptr @.str10818) store ptr %t191, ptr %t172 br label %ifend32 ifend32: %t192 = load ptr, ptr %t58 - %t193 = call ptr @lp_str_concat(ptr @.str10814, ptr %t192) - %t194 = call ptr @lp_str_concat(ptr %t193, ptr @.str10815) + %t193 = call ptr @lp_str_concat(ptr @.str10819, ptr %t192) + %t194 = call ptr @lp_str_concat(ptr %t193, ptr @.str10820) %t195 = load ptr, ptr %t6 %t196 = call ptr @lp_str_concat(ptr %t194, ptr %t195) - %t197 = call ptr @lp_str_concat(ptr %t196, ptr @.str10816) + %t197 = call ptr @lp_str_concat(ptr %t196, ptr @.str10821) %t198 = load ptr, ptr %t69 %t199 = call ptr @lp_str_concat(ptr %t197, ptr %t198) - %t200 = call ptr @lp_str_concat(ptr %t199, ptr @.str10817) + %t200 = call ptr @lp_str_concat(ptr %t199, ptr @.str10822) %t201 = load ptr, ptr %t71 %t202 = call ptr @lp_str_concat(ptr %t200, ptr %t201) %t203 = load ptr, ptr %t172 %t204 = call ptr @lp_str_concat(ptr %t202, ptr %t203) - %t205 = call ptr @lp_str_concat(ptr %t204, ptr @.str10818) + %t205 = call ptr @lp_str_concat(ptr %t204, ptr @.str10823) call void @fn_emith(ptr %t205) %t206 = load ptr, ptr %t6 store ptr %t206, ptr %retval @@ -140800,7 +140962,7 @@ then2: br label %ret ifend4: %t20 = load ptr, ptr %t0 - %t21 = call ptr @lp_str_concat(ptr @.str10819, ptr %t20) + %t21 = call ptr @lp_str_concat(ptr @.str10824, ptr %t20) store ptr %t21, ptr %retval br label %ret ret: @@ -140848,14 +141010,14 @@ then0: %t23 = load ptr, ptr %t0 %t24 = getelementptr inbounds %Cmp_Val, ptr %t23, i32 0, i32 1 %t25 = load ptr, ptr %t24 - %t26 = call ptr @lp_str_concat(ptr @.str10820, ptr %t25) - %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str10821) + %t26 = call ptr @lp_str_concat(ptr @.str10825, ptr %t25) + %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str10826) %t28 = load ptr, ptr %t6 %t29 = getelementptr inbounds %LSlice, ptr %t28, i32 0, i32 1 %t30 = load i32, ptr %t29 %t31 = call ptr @fn_itoa(i32 %t30) %t32 = call ptr @lp_str_concat(ptr %t27, ptr %t31) - %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str10822) + %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str10827) %t34 = load ptr, ptr %t1 %t35 = getelementptr inbounds %Cmp_Node, ptr %t34, i32 0, i32 7 %t36 = load ptr, ptr %t35 @@ -140902,7 +141064,7 @@ wbody4: br i1 %t66, label %ixok6, label %ixbad7 ixbad7: %t67 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t67, ptr @.fmt_bounds, ptr @.str10823, i32 %t61, i32 %t65) + call i32 (ptr, ptr, ...) @fprintf(ptr %t67, ptr @.fmt_bounds, ptr @.str10828, i32 %t61, i32 %t65) call void @exit(i32 1) unreachable ixok6: @@ -140922,7 +141084,7 @@ ixok6: br i1 %t80, label %ixok8, label %ixbad9 ixbad9: %t81 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t81, ptr @.fmt_bounds, ptr @.str10824, i32 %t75, i32 %t79) + call i32 (ptr, ptr, ...) @fprintf(ptr %t81, ptr @.fmt_bounds, ptr @.str10829, i32 %t75, i32 %t79) call void @exit(i32 1) unreachable ixok8: @@ -140963,10 +141125,10 @@ wend5: %t105 = load ptr, ptr %t11 %t106 = call ptr @fn_llty(ptr %t105) store ptr %t106, ptr %t107 - call void @fn_emit(ptr @.str10825) - store ptr @.str10826, ptr %t108 + call void @fn_emit(ptr @.str10830) + store ptr @.str10831, ptr %t108 %t109 = load ptr, ptr %t107 - %t110 = call i32 @lp_str_eq(ptr %t109, ptr @.str10827) + %t110 = call i32 @lp_str_eq(ptr %t109, ptr @.str10832) %t111 = icmp eq i32 %t110, 0 %t112 = zext i1 %t111 to i32 %t113 = icmp ne i32 %t112, 0 @@ -140976,17 +141138,17 @@ then12: store ptr %t114, ptr %t108 %t115 = load ptr, ptr %t108 call void @fn_emit(ptr %t115) - call void @fn_emit(ptr @.str10828) + call void @fn_emit(ptr @.str10833) br label %ifend14 ifend14: %t116 = load ptr, ptr %t107 - %t117 = call ptr @lp_str_concat(ptr @.str10829, ptr %t116) - %t118 = call ptr @lp_str_concat(ptr %t117, ptr @.str10830) + %t117 = call ptr @lp_str_concat(ptr @.str10834, ptr %t116) + %t118 = call ptr @lp_str_concat(ptr %t117, ptr @.str10835) %t119 = load ptr, ptr %t0 %t120 = getelementptr inbounds %Cmp_Val, ptr %t119, i32 0, i32 0 %t121 = load ptr, ptr %t120 %t122 = call ptr @lp_str_concat(ptr %t118, ptr %t121) - %t123 = call ptr @lp_str_concat(ptr %t122, ptr @.str10831) + %t123 = call ptr @lp_str_concat(ptr %t122, ptr @.str10836) call void @fn_emit(ptr %t123) store i32 0, ptr %t48 br label %wcond15 @@ -141006,7 +141168,7 @@ wbody16: %t134 = icmp ne i32 %t133, 0 br i1 %t134, label %then18, label %ifend20 then18: - call void @fn_emit(ptr @.str10832) + call void @fn_emit(ptr @.str10837) br label %ifend20 ifend20: %t135 = load ptr, ptr %t6 @@ -141019,14 +141181,14 @@ ifend20: br i1 %t141, label %ixok21, label %ixbad22 ixbad22: %t142 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t142, ptr @.fmt_bounds, ptr @.str10833, i32 %t136, i32 %t140) + call i32 (ptr, ptr, ...) @fprintf(ptr %t142, ptr @.fmt_bounds, ptr @.str10838, i32 %t136, i32 %t140) call void @exit(i32 1) unreachable ixok21: %t143 = getelementptr inbounds ptr, ptr %t138, i32 %t136 %t144 = load ptr, ptr %t143 %t145 = call ptr @fn_llty(ptr %t144) - %t146 = call ptr @lp_str_concat(ptr %t145, ptr @.str10834) + %t146 = call ptr @lp_str_concat(ptr %t145, ptr @.str10839) %t147 = load ptr, ptr %t47 %t148 = load i32, ptr %t48 %t149 = getelementptr inbounds %LSlice, ptr %t147, i32 0, i32 0 @@ -141037,7 +141199,7 @@ ixok21: br i1 %t153, label %ixok23, label %ixbad24 ixbad24: %t154 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t154, ptr @.fmt_bounds, ptr @.str10835, i32 %t148, i32 %t152) + call i32 (ptr, ptr, ...) @fprintf(ptr %t154, ptr @.fmt_bounds, ptr @.str10840, i32 %t148, i32 %t152) call void @exit(i32 1) unreachable ixok23: @@ -141050,7 +141212,7 @@ ixok23: store i32 %t159, ptr %t48 br label %wcond15 wend17: - call void @fn_emit(ptr @.str10836) + call void @fn_emit(ptr @.str10841) %t160 = load ptr, ptr %t108 %t161 = load ptr, ptr %t11 %t162 = call ptr @fn_val(ptr %t160, ptr %t161) @@ -141110,7 +141272,7 @@ sc3: br i1 %t28, label %ixok5, label %ixbad6 ixbad6: %t29 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str10837, i32 %t23, i32 %t27) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str10842, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok5: @@ -141264,8 +141426,8 @@ then31: %t125 = load ptr, ptr %t117 %t126 = getelementptr inbounds %Cmp_Val, ptr %t125, i32 0, i32 1 %t127 = load ptr, ptr %t126 - %t128 = call ptr @lp_str_concat(ptr @.str10838, ptr %t127) - %t129 = call ptr @lp_str_concat(ptr %t128, ptr @.str10839) + %t128 = call ptr @lp_str_concat(ptr @.str10843, ptr %t127) + %t129 = call ptr @lp_str_concat(ptr %t128, ptr @.str10844) call void @fn_perr(ptr %t129) br label %ifend33 ifend33: @@ -141285,6 +141447,8 @@ entry: %t19 = alloca i32 %t39 = alloca i32 %t42 = alloca i32 + %t90 = alloca i32 + %t108 = alloca ptr store ptr %arg_e, ptr %t0 %t1 = load ptr, ptr %t0 %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 0 @@ -141330,7 +141494,7 @@ sc6: %t32 = getelementptr inbounds %Cmp_Node, ptr %t31, i32 0, i32 3 %t33 = load ptr, ptr %t32 %t34 = call ptr @fn_llty(ptr %t33) - %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str10840) + %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str10845) %t36 = icmp ne i32 %t35, 0 %t37 = zext i1 %t36 to i32 store i32 %t37, ptr %t19 @@ -141354,7 +141518,7 @@ then8: br i1 %t51, label %ixok11, label %ixbad12 ixbad12: %t52 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t52, ptr @.fmt_bounds, ptr @.str10841, i32 %t46, i32 %t50) + call i32 (ptr, ptr, ...) @fprintf(ptr %t52, ptr @.fmt_bounds, ptr @.str10846, i32 %t46, i32 %t50) call void @exit(i32 1) unreachable ixok11: @@ -141363,7 +141527,7 @@ ixok11: %t55 = getelementptr inbounds %Cmp_Node, ptr %t54, i32 0, i32 3 %t56 = load ptr, ptr %t55 %t57 = call ptr @fn_llty(ptr %t56) - %t58 = call i32 @lp_str_eq(ptr %t57, ptr @.str10842) + %t58 = call i32 @lp_str_eq(ptr %t57, ptr @.str10847) %t59 = icmp ne i32 %t58, 0 %t60 = zext i1 %t59 to i32 store i32 %t60, ptr %t42 @@ -141382,7 +141546,7 @@ sc13: br i1 %t70, label %ixok15, label %ixbad16 ixbad16: %t71 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t71, ptr @.fmt_bounds, ptr @.str10843, i32 %t65, i32 %t69) + call i32 (ptr, ptr, ...) @fprintf(ptr %t71, ptr @.fmt_bounds, ptr @.str10848, i32 %t65, i32 %t69) call void @exit(i32 1) unreachable ixok15: @@ -141391,7 +141555,7 @@ ixok15: %t74 = getelementptr inbounds %Cmp_Node, ptr %t73, i32 0, i32 3 %t75 = load ptr, ptr %t74 %t76 = call ptr @fn_llty(ptr %t75) - %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str10844) + %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str10849) %t78 = icmp ne i32 %t77, 0 %t79 = zext i1 %t78 to i32 store i32 %t79, ptr %t42 @@ -141410,11 +141574,76 @@ then17: %t85 = load ptr, ptr %t0 %t86 = getelementptr inbounds %Cmp_Node, ptr %t85, i32 0, i32 1 %t87 = load ptr, ptr %t86 - %t88 = call ptr @lp_str_concat(ptr @.str10845, ptr %t87) - %t89 = call ptr @lp_str_concat(ptr %t88, ptr @.str10846) + %t88 = call ptr @lp_str_concat(ptr @.str10850, ptr %t87) + %t89 = call ptr @lp_str_concat(ptr %t88, ptr @.str10851) call void @fn_perr(ptr %t89) br label %ifend19 ifend19: + store i32 0, ptr %t90 + br label %wcond20 +wcond20: + %t91 = load i32, ptr %t90 + %t92 = load i32, ptr %t18 + %t93 = icmp slt i32 %t91, %t92 + %t94 = zext i1 %t93 to i32 + %t95 = icmp ne i32 %t94, 0 + br i1 %t95, label %wbody21, label %wend22 +wbody21: + %t96 = load ptr, ptr %t11 + %t97 = getelementptr inbounds %Cmp_Node, ptr %t96, i32 0, i32 7 + %t98 = load ptr, ptr %t97 + %t99 = load i32, ptr %t90 + %t100 = getelementptr inbounds %LSlice, ptr %t98, i32 0, i32 0 + %t101 = load ptr, ptr %t100 + %t102 = getelementptr inbounds %LSlice, ptr %t98, i32 0, i32 1 + %t103 = load i32, ptr %t102 + %t104 = icmp ult i32 %t99, %t103 + br i1 %t104, label %ixok23, label %ixbad24 +ixbad24: + %t105 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t105, ptr @.fmt_bounds, ptr @.str10852, i32 %t99, i32 %t103) + call void @exit(i32 1) + unreachable +ixok23: + %t106 = getelementptr inbounds ptr, ptr %t101, i32 %t99 + %t107 = load ptr, ptr %t106 + store ptr %t107, ptr %t108 + %t109 = load ptr, ptr %t108 + %t110 = getelementptr inbounds %Cmp_Node, ptr %t109, i32 0, i32 12 + %t111 = load i32, ptr %t110 + %t112 = icmp eq i32 %t111, 1 + %t113 = zext i1 %t112 to i32 + %t114 = icmp ne i32 %t113, 0 + br i1 %t114, label %then25, label %ifend27 +then25: + %t115 = load ptr, ptr %t0 + %t116 = getelementptr inbounds %Cmp_Node, ptr %t115, i32 0, i32 1 + %t117 = load ptr, ptr %t116 + %t118 = call ptr @lp_str_concat(ptr @.str10853, ptr %t117) + %t119 = call ptr @lp_str_concat(ptr %t118, ptr @.str10854) + %t120 = load ptr, ptr %t108 + %t121 = getelementptr inbounds %Cmp_Node, ptr %t120, i32 0, i32 3 + %t122 = load ptr, ptr %t121 + %t123 = call ptr @lp_str_concat(ptr %t119, ptr %t122) + %t124 = call ptr @lp_str_concat(ptr %t123, ptr @.str10855) + %t125 = load ptr, ptr %t108 + %t126 = getelementptr inbounds %Cmp_Node, ptr %t125, i32 0, i32 1 + %t127 = load ptr, ptr %t126 + %t128 = call ptr @lp_str_concat(ptr %t124, ptr %t127) + %t129 = call ptr @lp_str_concat(ptr %t128, ptr @.str10856) + %t130 = load ptr, ptr %t108 + %t131 = getelementptr inbounds %Cmp_Node, ptr %t130, i32 0, i32 3 + %t132 = load ptr, ptr %t131 + %t133 = call ptr @lp_str_concat(ptr %t129, ptr %t132) + %t134 = call ptr @lp_str_concat(ptr %t133, ptr @.str10857) + call void @fn_perr(ptr %t134) + br label %ifend27 +ifend27: + %t135 = load i32, ptr %t90 + %t136 = add i32 %t135, 1 + store i32 %t136, ptr %t90 + br label %wcond20 +wend22: br label %ret ret: ret void @@ -141430,7 +141659,7 @@ entry: br i1 %t3, label %then0, label %ifend2 then0: store i32 0, ptr @g_g_vis_report - %t4 = call ptr @getenv(ptr @.str10847) + %t4 = call ptr @getenv(ptr @.str10858) %t5 = icmp ne ptr %t4, null %t6 = zext i1 %t5 to i32 %t7 = icmp ne i32 %t6, 0 @@ -141648,7 +141877,7 @@ sc5: %t27 = load ptr, ptr %t0 %t28 = getelementptr inbounds %Cmp_Node, ptr %t27, i32 0, i32 1 %t29 = load ptr, ptr %t28 - %t30 = call i32 @fn_str_prefix(ptr %t29, ptr @.str10848) + %t30 = call i32 @fn_str_prefix(ptr %t29, ptr @.str10859) %t31 = icmp ne i32 %t30, 0 %t32 = zext i1 %t31 to i32 store i32 %t32, ptr %t8 @@ -141688,7 +141917,7 @@ sc12: %t53 = load ptr, ptr %t0 %t54 = getelementptr inbounds %Cmp_Node, ptr %t53, i32 0, i32 1 %t55 = load ptr, ptr %t54 - %t56 = call i32 @fn_str_prefix(ptr %t55, ptr @.str10849) + %t56 = call i32 @fn_str_prefix(ptr %t55, ptr @.str10860) %t57 = icmp ne i32 %t56, 0 %t58 = zext i1 %t57 to i32 store i32 %t58, ptr %t52 @@ -141756,7 +141985,7 @@ ifend27: %t95 = call ptr @fn_module_for_uses(ptr %t94) store ptr %t95, ptr %t96 %t100 = load ptr, ptr %t96 - %t101 = call i32 @lp_str_eq(ptr %t100, ptr @.str10850) + %t101 = call i32 @lp_str_eq(ptr %t100, ptr @.str10861) %t102 = icmp eq i32 %t101, 0 %t103 = zext i1 %t102 to i32 %t104 = icmp ne i32 %t103, 0 @@ -141817,54 +142046,54 @@ then37: %t137 = load ptr, ptr %t0 %t138 = getelementptr inbounds %Cmp_Node, ptr %t137, i32 0, i32 9 %t139 = load ptr, ptr %t138 - %t140 = call ptr @lp_str_concat(ptr @.str10851, ptr %t139) - %t141 = call ptr @lp_str_concat(ptr %t140, ptr @.str10852) + %t140 = call ptr @lp_str_concat(ptr @.str10862, ptr %t139) + %t141 = call ptr @lp_str_concat(ptr %t140, ptr @.str10863) %t142 = load ptr, ptr %t0 %t143 = getelementptr inbounds %Cmp_Node, ptr %t142, i32 0, i32 8 %t144 = load i32, ptr %t143 %t145 = call ptr @fn_itoa(i32 %t144) %t146 = call ptr @lp_str_concat(ptr %t141, ptr %t145) - %t147 = call ptr @lp_str_concat(ptr %t146, ptr @.str10853) + %t147 = call ptr @lp_str_concat(ptr %t146, ptr @.str10864) %t148 = load ptr, ptr %t96 %t149 = call ptr @lp_str_concat(ptr %t147, ptr %t148) - %t150 = call ptr @lp_str_concat(ptr %t149, ptr @.str10854) + %t150 = call ptr @lp_str_concat(ptr %t149, ptr @.str10865) %t151 = load ptr, ptr %t82 %t152 = call ptr @lp_str_concat(ptr %t150, ptr %t151) - %t153 = call ptr @lp_str_concat(ptr %t152, ptr @.str10855) + %t153 = call ptr @lp_str_concat(ptr %t152, ptr @.str10866) %t154 = load ptr, ptr %t84 %t155 = call ptr @lp_str_concat(ptr %t153, ptr %t154) - %t156 = call ptr @lp_str_concat(ptr %t155, ptr @.str10856) + %t156 = call ptr @lp_str_concat(ptr %t155, ptr @.str10867) %t157 = load ptr, ptr %t91 %t158 = call ptr @lp_str_concat(ptr %t156, ptr %t157) - %t159 = call ptr @lp_str_concat(ptr %t158, ptr @.str10857) + %t159 = call ptr @lp_str_concat(ptr %t158, ptr @.str10868) call void @fn_vis_say(ptr %t159) br label %ifend39 else38: %t160 = load ptr, ptr %t91 - %t161 = call ptr @lp_str_concat(ptr %t160, ptr @.str10858) + %t161 = call ptr @lp_str_concat(ptr %t160, ptr @.str10869) %t162 = load ptr, ptr %t96 %t163 = call ptr @lp_str_concat(ptr %t161, ptr %t162) - %t164 = call ptr @lp_str_concat(ptr %t163, ptr @.str10859) + %t164 = call ptr @lp_str_concat(ptr %t163, ptr @.str10870) %t165 = load ptr, ptr %t82 %t166 = call ptr @lp_str_concat(ptr %t164, ptr %t165) - %t167 = call ptr @lp_str_concat(ptr %t166, ptr @.str10860) + %t167 = call ptr @lp_str_concat(ptr %t166, ptr @.str10871) %t168 = load ptr, ptr %t0 %t169 = getelementptr inbounds %Cmp_Node, ptr %t168, i32 0, i32 9 %t170 = load ptr, ptr %t169 %t171 = call ptr @lp_str_concat(ptr %t167, ptr %t170) - %t172 = call ptr @lp_str_concat(ptr %t171, ptr @.str10861) + %t172 = call ptr @lp_str_concat(ptr %t171, ptr @.str10872) %t173 = load ptr, ptr %t0 %t174 = getelementptr inbounds %Cmp_Node, ptr %t173, i32 0, i32 8 %t175 = load i32, ptr %t174 %t176 = call ptr @fn_itoa(i32 %t175) %t177 = call ptr @lp_str_concat(ptr %t172, ptr %t176) - %t178 = call ptr @lp_str_concat(ptr %t177, ptr @.str10862) + %t178 = call ptr @lp_str_concat(ptr %t177, ptr @.str10873) %t179 = load ptr, ptr %t96 %t180 = call ptr @lp_str_concat(ptr %t178, ptr %t179) - %t181 = call ptr @lp_str_concat(ptr %t180, ptr @.str10863) + %t181 = call ptr @lp_str_concat(ptr %t180, ptr @.str10874) %t182 = load ptr, ptr %t91 %t183 = call ptr @lp_str_concat(ptr %t181, ptr %t182) - %t184 = call ptr @lp_str_concat(ptr %t183, ptr @.str10864) + %t184 = call ptr @lp_str_concat(ptr %t183, ptr @.str10875) call void @fn_perr(ptr %t184) br label %ifend39 ifend39: @@ -141876,7 +142105,7 @@ ifend36: %t188 = call ptr @fn_module_of(ptr %t187) store ptr %t188, ptr %t189 %t191 = load ptr, ptr %t189 - %t192 = call i32 @lp_str_eq(ptr %t191, ptr @.str10865) + %t192 = call i32 @lp_str_eq(ptr %t191, ptr @.str10876) %t193 = icmp ne i32 %t192, 0 %t194 = zext i1 %t193 to i32 store i32 %t194, ptr %t190 @@ -141921,36 +142150,36 @@ then51: %t214 = load ptr, ptr %t0 %t215 = getelementptr inbounds %Cmp_Node, ptr %t214, i32 0, i32 9 %t216 = load ptr, ptr %t215 - %t217 = call ptr @lp_str_concat(ptr @.str10866, ptr %t216) - %t218 = call ptr @lp_str_concat(ptr %t217, ptr @.str10867) + %t217 = call ptr @lp_str_concat(ptr @.str10877, ptr %t216) + %t218 = call ptr @lp_str_concat(ptr %t217, ptr @.str10878) %t219 = load ptr, ptr %t0 %t220 = getelementptr inbounds %Cmp_Node, ptr %t219, i32 0, i32 8 %t221 = load i32, ptr %t220 %t222 = call ptr @fn_itoa(i32 %t221) %t223 = call ptr @lp_str_concat(ptr %t218, ptr %t222) - %t224 = call ptr @lp_str_concat(ptr %t223, ptr @.str10868) + %t224 = call ptr @lp_str_concat(ptr %t223, ptr @.str10879) %t225 = load ptr, ptr %t189 %t226 = call ptr @lp_str_concat(ptr %t224, ptr %t225) - %t227 = call ptr @lp_str_concat(ptr %t226, ptr @.str10869) + %t227 = call ptr @lp_str_concat(ptr %t226, ptr @.str10880) %t228 = load ptr, ptr %t82 %t229 = call ptr @lp_str_concat(ptr %t227, ptr %t228) - %t230 = call ptr @lp_str_concat(ptr %t229, ptr @.str10870) + %t230 = call ptr @lp_str_concat(ptr %t229, ptr @.str10881) %t231 = load ptr, ptr %t84 %t232 = call ptr @lp_str_concat(ptr %t230, ptr %t231) - %t233 = call ptr @lp_str_concat(ptr %t232, ptr @.str10871) + %t233 = call ptr @lp_str_concat(ptr %t232, ptr @.str10882) call void @fn_vis_say(ptr %t233) br label %ret ifend53: %t234 = load ptr, ptr %t82 - %t235 = call ptr @lp_str_concat(ptr %t234, ptr @.str10872) + %t235 = call ptr @lp_str_concat(ptr %t234, ptr @.str10883) %t236 = load ptr, ptr %t189 %t237 = call ptr @lp_str_concat(ptr %t235, ptr %t236) - %t238 = call ptr @lp_str_concat(ptr %t237, ptr @.str10873) + %t238 = call ptr @lp_str_concat(ptr %t237, ptr @.str10884) %t239 = load ptr, ptr %t0 %t240 = getelementptr inbounds %Cmp_Node, ptr %t239, i32 0, i32 9 %t241 = load ptr, ptr %t240 %t242 = call ptr @lp_str_concat(ptr %t238, ptr %t241) - %t243 = call ptr @lp_str_concat(ptr %t242, ptr @.str10874) + %t243 = call ptr @lp_str_concat(ptr %t242, ptr @.str10885) call void @fn_perr(ptr %t243) br label %ret ret: @@ -142147,7 +142376,7 @@ then20: br i1 %t124, label %ixok23, label %ixbad24 ixbad24: %t125 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t125, ptr @.fmt_bounds, ptr @.str10875, i32 %t119, i32 %t123) + call i32 (ptr, ptr, ...) @fprintf(ptr %t125, ptr @.fmt_bounds, ptr @.str10886, i32 %t119, i32 %t123) call void @exit(i32 1) unreachable ixok23: @@ -142165,7 +142394,7 @@ else21: br i1 %t133, label %ixok25, label %ixbad26 ixbad26: %t134 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t134, ptr @.fmt_bounds, ptr @.str10876, i32 %t128, i32 %t132) + call i32 (ptr, ptr, ...) @fprintf(ptr %t134, ptr @.fmt_bounds, ptr @.str10887, i32 %t128, i32 %t132) call void @exit(i32 1) unreachable ixok25: @@ -142183,7 +142412,7 @@ ifend22: br i1 %t142, label %ixok27, label %ixbad28 ixbad28: %t143 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t143, ptr @.fmt_bounds, ptr @.str10877, i32 %t137, i32 %t141) + call i32 (ptr, ptr, ...) @fprintf(ptr %t143, ptr @.fmt_bounds, ptr @.str10888, i32 %t137, i32 %t141) call void @exit(i32 1) unreachable ixok27: @@ -142199,7 +142428,7 @@ ixok27: br i1 %t151, label %ixok29, label %ixbad30 ixbad30: %t152 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t152, ptr @.fmt_bounds, ptr @.str10878, i32 %t146, i32 %t150) + call i32 (ptr, ptr, ...) @fprintf(ptr %t152, ptr @.fmt_bounds, ptr @.str10889, i32 %t146, i32 %t150) call void @exit(i32 1) unreachable ixok29: @@ -142215,7 +142444,7 @@ ixok29: br i1 %t160, label %ixok31, label %ixbad32 ixbad32: %t161 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t161, ptr @.fmt_bounds, ptr @.str10879, i32 %t155, i32 %t159) + call i32 (ptr, ptr, ...) @fprintf(ptr %t161, ptr @.fmt_bounds, ptr @.str10890, i32 %t155, i32 %t159) call void @exit(i32 1) unreachable ixok31: @@ -142231,7 +142460,7 @@ ixok31: br i1 %t169, label %ixok33, label %ixbad34 ixbad34: %t170 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t170, ptr @.fmt_bounds, ptr @.str10880, i32 %t164, i32 %t168) + call i32 (ptr, ptr, ...) @fprintf(ptr %t170, ptr @.fmt_bounds, ptr @.str10891, i32 %t164, i32 %t168) call void @exit(i32 1) unreachable ixok33: @@ -142251,7 +142480,7 @@ then35: br i1 %t181, label %ixok38, label %ixbad39 ixbad39: %t182 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t182, ptr @.fmt_bounds, ptr @.str10881, i32 %t176, i32 %t180) + call i32 (ptr, ptr, ...) @fprintf(ptr %t182, ptr @.fmt_bounds, ptr @.str10892, i32 %t176, i32 %t180) call void @exit(i32 1) unreachable ixok38: @@ -142266,7 +142495,7 @@ ixok38: br i1 %t190, label %ixok40, label %ixbad41 ixbad41: %t191 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t191, ptr @.fmt_bounds, ptr @.str10882, i32 %t185, i32 %t189) + call i32 (ptr, ptr, ...) @fprintf(ptr %t191, ptr @.fmt_bounds, ptr @.str10893, i32 %t185, i32 %t189) call void @exit(i32 1) unreachable ixok40: @@ -142289,7 +142518,7 @@ then42: br i1 %t202, label %ixok45, label %ixbad46 ixbad46: %t203 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t203, ptr @.fmt_bounds, ptr @.str10883, i32 %t197, i32 %t201) + call i32 (ptr, ptr, ...) @fprintf(ptr %t203, ptr @.fmt_bounds, ptr @.str10894, i32 %t197, i32 %t201) call void @exit(i32 1) unreachable ixok45: @@ -142304,7 +142533,7 @@ ixok45: br i1 %t211, label %ixok47, label %ixbad48 ixbad48: %t212 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t212, ptr @.fmt_bounds, ptr @.str10884, i32 %t206, i32 %t210) + call i32 (ptr, ptr, ...) @fprintf(ptr %t212, ptr @.fmt_bounds, ptr @.str10895, i32 %t206, i32 %t210) call void @exit(i32 1) unreachable ixok47: @@ -142336,7 +142565,7 @@ entry: br i1 %t10, label %ixok0, label %ixbad1 ixbad1: %t11 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t11, ptr @.fmt_bounds, ptr @.str10885, i32 %t5, i32 %t9) + call i32 (ptr, ptr, ...) @fprintf(ptr %t11, ptr @.fmt_bounds, ptr @.str10896, i32 %t5, i32 %t9) call void @exit(i32 1) unreachable ixok0: @@ -142352,7 +142581,7 @@ ixok0: br i1 %t19, label %ixok2, label %ixbad3 ixbad3: %t20 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str10886, i32 %t14, i32 %t18) + call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str10897, i32 %t14, i32 %t18) call void @exit(i32 1) unreachable ixok2: @@ -142367,7 +142596,7 @@ ixok2: br i1 %t28, label %ixok4, label %ixbad5 ixbad5: %t29 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str10887, i32 %t23, i32 %t27) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str10898, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok4: @@ -142401,7 +142630,7 @@ entry: br i1 %t9, label %scend1, label %sc0 sc0: %t11 = load ptr, ptr %t0 - %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str10888) + %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str10899) %t13 = icmp ne i32 %t12, 0 %t14 = zext i1 %t13 to i32 store i32 %t14, ptr %t5 @@ -142414,7 +142643,7 @@ scend1: br i1 %t16, label %scend3, label %sc2 sc2: %t18 = load ptr, ptr %t0 - %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str10889) + %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str10900) %t20 = icmp ne i32 %t19, 0 %t21 = zext i1 %t20 to i32 store i32 %t21, ptr %t4 @@ -142427,7 +142656,7 @@ scend3: br i1 %t23, label %scend5, label %sc4 sc4: %t25 = load ptr, ptr %t0 - %t26 = call i32 @lp_str_eq(ptr %t25, ptr @.str10890) + %t26 = call i32 @lp_str_eq(ptr %t25, ptr @.str10901) %t27 = icmp ne i32 %t26, 0 %t28 = zext i1 %t27 to i32 store i32 %t28, ptr %t3 @@ -142440,7 +142669,7 @@ scend5: br i1 %t30, label %scend7, label %sc6 sc6: %t32 = load ptr, ptr %t0 - %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str10891) + %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str10902) %t34 = icmp ne i32 %t33, 0 %t35 = zext i1 %t34 to i32 store i32 %t35, ptr %t2 @@ -142453,7 +142682,7 @@ scend7: br i1 %t37, label %scend9, label %sc8 sc8: %t39 = load ptr, ptr %t0 - %t40 = call i32 @lp_str_eq(ptr %t39, ptr @.str10892) + %t40 = call i32 @lp_str_eq(ptr %t39, ptr @.str10903) %t41 = icmp ne i32 %t40, 0 %t42 = zext i1 %t41 to i32 store i32 %t42, ptr %t1 @@ -142467,14 +142696,14 @@ then10: br label %ret ifend12: %t48 = load ptr, ptr %t0 - %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str10893) + %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str10904) %t50 = icmp ne i32 %t49, 0 %t51 = zext i1 %t50 to i32 store i32 %t51, ptr %t47 br i1 %t50, label %scend14, label %sc13 sc13: %t52 = load ptr, ptr %t0 - %t53 = call i32 @lp_str_eq(ptr %t52, ptr @.str10894) + %t53 = call i32 @lp_str_eq(ptr %t52, ptr @.str10905) %t54 = icmp ne i32 %t53, 0 %t55 = zext i1 %t54 to i32 store i32 %t55, ptr %t47 @@ -142487,7 +142716,7 @@ scend14: br i1 %t57, label %scend16, label %sc15 sc15: %t59 = load ptr, ptr %t0 - %t60 = call i32 @lp_str_eq(ptr %t59, ptr @.str10895) + %t60 = call i32 @lp_str_eq(ptr %t59, ptr @.str10906) %t61 = icmp ne i32 %t60, 0 %t62 = zext i1 %t61 to i32 store i32 %t62, ptr %t46 @@ -142500,7 +142729,7 @@ scend16: br i1 %t64, label %scend18, label %sc17 sc17: %t66 = load ptr, ptr %t0 - %t67 = call i32 @lp_str_eq(ptr %t66, ptr @.str10896) + %t67 = call i32 @lp_str_eq(ptr %t66, ptr @.str10907) %t68 = icmp ne i32 %t67, 0 %t69 = zext i1 %t68 to i32 store i32 %t69, ptr %t45 @@ -142635,7 +142864,7 @@ then16: br i1 %t60, label %ixok19, label %ixbad20 ixbad20: %t61 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t61, ptr @.fmt_bounds, ptr @.str10897, i32 %t55, i32 %t59) + call i32 (ptr, ptr, ...) @fprintf(ptr %t61, ptr @.fmt_bounds, ptr @.str10908, i32 %t55, i32 %t59) call void @exit(i32 1) unreachable ixok19: @@ -142650,7 +142879,7 @@ ixok19: br i1 %t69, label %ixok21, label %ixbad22 ixbad22: %t70 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t70, ptr @.fmt_bounds, ptr @.str10898, i32 %t64, i32 %t68) + call i32 (ptr, ptr, ...) @fprintf(ptr %t70, ptr @.fmt_bounds, ptr @.str10909, i32 %t64, i32 %t68) call void @exit(i32 1) unreachable ixok21: @@ -142695,7 +142924,7 @@ then25: br i1 %t98, label %ixok28, label %ixbad29 ixbad29: %t99 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t99, ptr @.fmt_bounds, ptr @.str10899, i32 %t93, i32 %t97) + call i32 (ptr, ptr, ...) @fprintf(ptr %t99, ptr @.fmt_bounds, ptr @.str10910, i32 %t93, i32 %t97) call void @exit(i32 1) unreachable ixok28: @@ -142710,7 +142939,7 @@ ixok28: br i1 %t107, label %ixok30, label %ixbad31 ixbad31: %t108 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t108, ptr @.fmt_bounds, ptr @.str10900, i32 %t102, i32 %t106) + call i32 (ptr, ptr, ...) @fprintf(ptr %t108, ptr @.fmt_bounds, ptr @.str10911, i32 %t102, i32 %t106) call void @exit(i32 1) unreachable ixok30: @@ -142779,7 +143008,7 @@ then40: br i1 %t149, label %ixok43, label %ixbad44 ixbad44: %t150 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t150, ptr @.fmt_bounds, ptr @.str10901, i32 %t144, i32 %t148) + call i32 (ptr, ptr, ...) @fprintf(ptr %t150, ptr @.fmt_bounds, ptr @.str10912, i32 %t144, i32 %t148) call void @exit(i32 1) unreachable ixok43: @@ -142835,7 +143064,7 @@ ifend4: br i1 %t23, label %ixok5, label %ixbad6 ixbad6: %t24 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str10902, i32 %t18, i32 %t22) + call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str10913, i32 %t18, i32 %t22) call void @exit(i32 1) unreachable ixok5: @@ -143052,7 +143281,7 @@ then3: br i1 %t24, label %ixok6, label %ixbad7 ixbad7: %t25 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str10903, i32 %t19, i32 %t23) + call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str10914, i32 %t19, i32 %t23) call void @exit(i32 1) unreachable ixok6: @@ -143078,7 +143307,7 @@ then8: br i1 %t41, label %ixok11, label %ixbad12 ixbad12: %t42 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str10904, i32 %t36, i32 %t40) + call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str10915, i32 %t36, i32 %t40) call void @exit(i32 1) unreachable ixok11: @@ -143108,7 +143337,7 @@ sc13: br i1 %t60, label %ixok15, label %ixbad16 ixbad16: %t61 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t61, ptr @.fmt_bounds, ptr @.str10905, i32 %t55, i32 %t59) + call i32 (ptr, ptr, ...) @fprintf(ptr %t61, ptr @.fmt_bounds, ptr @.str10916, i32 %t55, i32 %t59) call void @exit(i32 1) unreachable ixok15: @@ -143135,7 +143364,7 @@ then17: br i1 %t76, label %ixok20, label %ixbad21 ixbad21: %t77 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t77, ptr @.fmt_bounds, ptr @.str10906, i32 %t71, i32 %t75) + call i32 (ptr, ptr, ...) @fprintf(ptr %t77, ptr @.fmt_bounds, ptr @.str10917, i32 %t71, i32 %t75) call void @exit(i32 1) unreachable ixok20: @@ -143165,7 +143394,7 @@ sc22: br i1 %t95, label %ixok24, label %ixbad25 ixbad25: %t96 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t96, ptr @.fmt_bounds, ptr @.str10907, i32 %t90, i32 %t94) + call i32 (ptr, ptr, ...) @fprintf(ptr %t96, ptr @.fmt_bounds, ptr @.str10918, i32 %t90, i32 %t94) call void @exit(i32 1) unreachable ixok24: @@ -143192,7 +143421,7 @@ then26: br i1 %t111, label %ixok29, label %ixbad30 ixbad30: %t112 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t112, ptr @.fmt_bounds, ptr @.str10908, i32 %t106, i32 %t110) + call i32 (ptr, ptr, ...) @fprintf(ptr %t112, ptr @.fmt_bounds, ptr @.str10919, i32 %t106, i32 %t110) call void @exit(i32 1) unreachable ixok29: @@ -143209,19 +143438,19 @@ ixok29: then31: %t121 = load ptr, ptr %t0 %t122 = load ptr, ptr %t1 - %t123 = call ptr @lp_str_concat(ptr %t122, ptr @.str10910) + %t123 = call ptr @lp_str_concat(ptr %t122, ptr @.str10921) %t124 = load ptr, ptr %t4 %t125 = getelementptr inbounds %Cmp_Node, ptr %t124, i32 0, i32 1 %t126 = load ptr, ptr %t125 %t127 = call ptr @lp_str_concat(ptr %t123, ptr %t126) - %t128 = call ptr @lp_str_concat(ptr %t127, ptr @.str10911) + %t128 = call ptr @lp_str_concat(ptr %t127, ptr @.str10922) %t129 = load ptr, ptr %t115 %t130 = getelementptr inbounds %Cmp_Node, ptr %t129, i32 0, i32 1 %t131 = load ptr, ptr %t130 %t132 = call ptr @fn_mg_src_name(ptr %t131) %t133 = call ptr @lp_str_concat(ptr %t128, ptr %t132) - %t134 = call ptr @lp_str_concat(ptr %t133, ptr @.str10912) - call void @fn_ck_err(ptr @.str10909, ptr %t121, ptr %t134) + %t134 = call ptr @lp_str_concat(ptr %t133, ptr @.str10923) + call void @fn_ck_err(ptr @.str10920, ptr %t121, ptr %t134) br label %ifend33 ifend33: br label %ifend28 @@ -143269,7 +143498,7 @@ sc38: br i1 %t162, label %ixok40, label %ixbad41 ixbad41: %t163 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t163, ptr @.fmt_bounds, ptr @.str10913, i32 %t157, i32 %t161) + call i32 (ptr, ptr, ...) @fprintf(ptr %t163, ptr @.fmt_bounds, ptr @.str10924, i32 %t157, i32 %t161) call void @exit(i32 1) unreachable ixok40: @@ -143297,7 +143526,7 @@ then42: br i1 %t179, label %ixok45, label %ixbad46 ixbad46: %t180 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t180, ptr @.fmt_bounds, ptr @.str10914, i32 %t174, i32 %t178) + call i32 (ptr, ptr, ...) @fprintf(ptr %t180, ptr @.fmt_bounds, ptr @.str10925, i32 %t174, i32 %t178) call void @exit(i32 1) unreachable ixok45: @@ -143341,7 +143570,7 @@ sc49: br i1 %t209, label %ixok51, label %ixbad52 ixbad52: %t210 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t210, ptr @.fmt_bounds, ptr @.str10915, i32 %t204, i32 %t208) + call i32 (ptr, ptr, ...) @fprintf(ptr %t210, ptr @.fmt_bounds, ptr @.str10926, i32 %t204, i32 %t208) call void @exit(i32 1) unreachable ixok51: @@ -143370,7 +143599,7 @@ sc53: br i1 %t226, label %ixok55, label %ixbad56 ixbad56: %t227 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t227, ptr @.fmt_bounds, ptr @.str10916, i32 %t221, i32 %t225) + call i32 (ptr, ptr, ...) @fprintf(ptr %t227, ptr @.fmt_bounds, ptr @.str10927, i32 %t221, i32 %t225) call void @exit(i32 1) unreachable ixok55: @@ -143386,7 +143615,7 @@ ixok55: br i1 %t236, label %ixok57, label %ixbad58 ixbad58: %t237 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t237, ptr @.fmt_bounds, ptr @.str10917, i32 %t231, i32 %t235) + call i32 (ptr, ptr, ...) @fprintf(ptr %t237, ptr @.fmt_bounds, ptr @.str10928, i32 %t231, i32 %t235) call void @exit(i32 1) unreachable ixok57: @@ -143406,12 +143635,12 @@ scend54: then59: %t247 = load ptr, ptr %t0 %t248 = load ptr, ptr %t1 - %t249 = call ptr @lp_str_concat(ptr %t248, ptr @.str10919) + %t249 = call ptr @lp_str_concat(ptr %t248, ptr @.str10930) %t250 = load ptr, ptr %t4 %t251 = getelementptr inbounds %Cmp_Node, ptr %t250, i32 0, i32 1 %t252 = load ptr, ptr %t251 %t253 = call ptr @lp_str_concat(ptr %t249, ptr %t252) - %t254 = call ptr @lp_str_concat(ptr %t253, ptr @.str10920) + %t254 = call ptr @lp_str_concat(ptr %t253, ptr @.str10931) %t255 = load ptr, ptr @g_ck_ro_st %t256 = load i32, ptr %t13 %t257 = getelementptr inbounds %LSlice, ptr %t255, i32 0, i32 0 @@ -143422,14 +143651,14 @@ then59: br i1 %t261, label %ixok62, label %ixbad63 ixbad63: %t262 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t262, ptr @.fmt_bounds, ptr @.str10921, i32 %t256, i32 %t260) + call i32 (ptr, ptr, ...) @fprintf(ptr %t262, ptr @.fmt_bounds, ptr @.str10932, i32 %t256, i32 %t260) call void @exit(i32 1) unreachable ixok62: %t263 = getelementptr inbounds ptr, ptr %t258, i32 %t256 %t264 = load ptr, ptr %t263 %t265 = call ptr @lp_str_concat(ptr %t254, ptr %t264) - %t266 = call ptr @lp_str_concat(ptr %t265, ptr @.str10922) + %t266 = call ptr @lp_str_concat(ptr %t265, ptr @.str10933) %t267 = load ptr, ptr @g_ck_ro_st %t268 = load i32, ptr %t13 %t269 = getelementptr inbounds %LSlice, ptr %t267, i32 0, i32 0 @@ -143440,15 +143669,15 @@ ixok62: br i1 %t273, label %ixok64, label %ixbad65 ixbad65: %t274 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t274, ptr @.fmt_bounds, ptr @.str10923, i32 %t268, i32 %t272) + call i32 (ptr, ptr, ...) @fprintf(ptr %t274, ptr @.fmt_bounds, ptr @.str10934, i32 %t268, i32 %t272) call void @exit(i32 1) unreachable ixok64: %t275 = getelementptr inbounds ptr, ptr %t270, i32 %t268 %t276 = load ptr, ptr %t275 %t277 = call ptr @lp_str_concat(ptr %t266, ptr %t276) - %t278 = call ptr @lp_str_concat(ptr %t277, ptr @.str10924) - call void @fn_ck_err(ptr @.str10918, ptr %t247, ptr %t278) + %t278 = call ptr @lp_str_concat(ptr %t277, ptr @.str10935) + call void @fn_ck_err(ptr @.str10929, ptr %t247, ptr %t278) br label %ret ifend61: %t279 = load i32, ptr %t13 @@ -143458,17 +143687,17 @@ ifend61: then66: %t282 = load ptr, ptr %t0 %t283 = load ptr, ptr %t1 - %t284 = call ptr @lp_str_concat(ptr %t283, ptr @.str10926) + %t284 = call ptr @lp_str_concat(ptr %t283, ptr @.str10937) %t285 = load ptr, ptr %t4 %t286 = getelementptr inbounds %Cmp_Node, ptr %t285, i32 0, i32 1 %t287 = load ptr, ptr %t286 %t288 = call ptr @lp_str_concat(ptr %t284, ptr %t287) - %t289 = call ptr @lp_str_concat(ptr %t288, ptr @.str10927) + %t289 = call ptr @lp_str_concat(ptr %t288, ptr @.str10938) %t290 = load ptr, ptr %t4 %t291 = getelementptr inbounds %Cmp_Node, ptr %t290, i32 0, i32 1 %t292 = load ptr, ptr %t291 %t293 = call ptr @lp_str_concat(ptr %t289, ptr %t292) - %t294 = call ptr @lp_str_concat(ptr %t293, ptr @.str10928) + %t294 = call ptr @lp_str_concat(ptr %t293, ptr @.str10939) %t295 = load ptr, ptr @g_ck_tys %t296 = load i32, ptr %t13 %t297 = getelementptr inbounds %LSlice, ptr %t295, i32 0, i32 0 @@ -143479,19 +143708,19 @@ then66: br i1 %t301, label %ixok69, label %ixbad70 ixbad70: %t302 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t302, ptr @.fmt_bounds, ptr @.str10929, i32 %t296, i32 %t300) + call i32 (ptr, ptr, ...) @fprintf(ptr %t302, ptr @.fmt_bounds, ptr @.str10940, i32 %t296, i32 %t300) call void @exit(i32 1) unreachable ixok69: %t303 = getelementptr inbounds ptr, ptr %t298, i32 %t296 %t304 = load ptr, ptr %t303 %t305 = call ptr @lp_str_concat(ptr %t294, ptr %t304) - %t306 = call ptr @lp_str_concat(ptr %t305, ptr @.str10930) + %t306 = call ptr @lp_str_concat(ptr %t305, ptr @.str10941) %t307 = load ptr, ptr %t4 %t308 = getelementptr inbounds %Cmp_Node, ptr %t307, i32 0, i32 1 %t309 = load ptr, ptr %t308 %t310 = call ptr @lp_str_concat(ptr %t306, ptr %t309) - %t311 = call ptr @lp_str_concat(ptr %t310, ptr @.str10931) + %t311 = call ptr @lp_str_concat(ptr %t310, ptr @.str10942) %t312 = load ptr, ptr @g_ck_tys %t313 = load i32, ptr %t13 %t314 = getelementptr inbounds %LSlice, ptr %t312, i32 0, i32 0 @@ -143502,15 +143731,15 @@ ixok69: br i1 %t318, label %ixok71, label %ixbad72 ixbad72: %t319 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t319, ptr @.fmt_bounds, ptr @.str10932, i32 %t313, i32 %t317) + call i32 (ptr, ptr, ...) @fprintf(ptr %t319, ptr @.fmt_bounds, ptr @.str10943, i32 %t313, i32 %t317) call void @exit(i32 1) unreachable ixok71: %t320 = getelementptr inbounds ptr, ptr %t315, i32 %t313 %t321 = load ptr, ptr %t320 %t322 = call ptr @lp_str_concat(ptr %t311, ptr %t321) - %t323 = call ptr @lp_str_concat(ptr %t322, ptr @.str10933) - call void @fn_ck_err(ptr @.str10925, ptr %t282, ptr %t323) + %t323 = call ptr @lp_str_concat(ptr %t322, ptr @.str10944) + call void @fn_ck_err(ptr @.str10936, ptr %t282, ptr %t323) br label %ifend68 ifend68: br label %ret @@ -143571,17 +143800,17 @@ then81: %t362 = load ptr, ptr %t328 %t363 = getelementptr inbounds %Cmp_Node, ptr %t362, i32 0, i32 3 %t364 = load ptr, ptr %t363 - %t365 = call ptr @lp_str_concat(ptr @.str10934, ptr %t364) + %t365 = call ptr @lp_str_concat(ptr @.str10945, ptr %t364) store ptr %t365, ptr %t345 br label %ifend83 ifend83: %t366 = load ptr, ptr %t0 %t367 = load ptr, ptr %t1 - %t368 = call ptr @lp_str_concat(ptr %t367, ptr @.str10936) + %t368 = call ptr @lp_str_concat(ptr %t367, ptr @.str10947) %t369 = load ptr, ptr %t345 %t370 = call ptr @lp_str_concat(ptr %t368, ptr %t369) - %t371 = call ptr @lp_str_concat(ptr %t370, ptr @.str10937) - call void @fn_ck_err(ptr @.str10935, ptr %t366, ptr %t371) + %t371 = call ptr @lp_str_concat(ptr %t370, ptr @.str10948) + call void @fn_ck_err(ptr @.str10946, ptr %t366, ptr %t371) br label %ifend78 ifend78: br label %ret @@ -143631,18 +143860,18 @@ then2: %t26 = load ptr, ptr %t0 %t27 = getelementptr inbounds %Cmp_Node, ptr %t26, i32 0, i32 1 %t28 = load ptr, ptr %t27 - %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str10939) + %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str10950) %t30 = load ptr, ptr %t0 %t31 = getelementptr inbounds %Cmp_Node, ptr %t30, i32 0, i32 3 %t32 = load ptr, ptr %t31 %t33 = call ptr @lp_str_concat(ptr %t29, ptr %t32) - %t34 = call ptr @lp_str_concat(ptr %t33, ptr @.str10940) + %t34 = call ptr @lp_str_concat(ptr %t33, ptr @.str10951) %t35 = load ptr, ptr %t0 %t36 = getelementptr inbounds %Cmp_Node, ptr %t35, i32 0, i32 3 %t37 = load ptr, ptr %t36 %t38 = call ptr @lp_str_concat(ptr %t34, ptr %t37) - %t39 = call ptr @lp_str_concat(ptr %t38, ptr @.str10941) - call void @fn_ck_err(ptr @.str10938, ptr %t25, ptr %t39) + %t39 = call ptr @lp_str_concat(ptr %t38, ptr @.str10952) + call void @fn_ck_err(ptr @.str10949, ptr %t25, ptr %t39) br label %ifend4 ifend4: %t41 = load ptr, ptr %t0 @@ -143712,7 +143941,7 @@ wbody1: br i1 %t21, label %ixok3, label %ixbad4 ixbad4: %t22 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str10942, i32 %t16, i32 %t20) + call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str10953, i32 %t16, i32 %t20) call void @exit(i32 1) unreachable ixok3: @@ -143781,7 +144010,7 @@ then12: br i1 %t70, label %ixok15, label %ixbad16 ixbad16: %t71 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t71, ptr @.fmt_bounds, ptr @.str10943, i32 %t65, i32 %t69) + call i32 (ptr, ptr, ...) @fprintf(ptr %t71, ptr @.fmt_bounds, ptr @.str10954, i32 %t65, i32 %t69) call void @exit(i32 1) unreachable ixok15: @@ -143824,28 +144053,28 @@ then22: %t99 = load ptr, ptr %t1 %t100 = getelementptr inbounds %Cmp_Node, ptr %t99, i32 0, i32 1 %t101 = load ptr, ptr %t100 - %t102 = call ptr @lp_str_concat(ptr %t101, ptr @.str10945) + %t102 = call ptr @lp_str_concat(ptr %t101, ptr @.str10956) %t103 = load ptr, ptr %t25 %t104 = getelementptr inbounds %Cmp_Node, ptr %t103, i32 0, i32 3 %t105 = load ptr, ptr %t104 %t106 = call ptr @lp_str_concat(ptr %t102, ptr %t105) - %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str10946) + %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str10957) %t108 = load ptr, ptr %t25 %t109 = getelementptr inbounds %Cmp_Node, ptr %t108, i32 0, i32 1 %t110 = load ptr, ptr %t109 %t111 = call ptr @lp_str_concat(ptr %t107, ptr %t110) - %t112 = call ptr @lp_str_concat(ptr %t111, ptr @.str10947) + %t112 = call ptr @lp_str_concat(ptr %t111, ptr @.str10958) %t113 = load ptr, ptr %t25 %t114 = getelementptr inbounds %Cmp_Node, ptr %t113, i32 0, i32 3 %t115 = load ptr, ptr %t114 %t116 = call ptr @lp_str_concat(ptr %t112, ptr %t115) - %t117 = call ptr @lp_str_concat(ptr %t116, ptr @.str10948) + %t117 = call ptr @lp_str_concat(ptr %t116, ptr @.str10959) %t118 = load ptr, ptr %t74 %t119 = getelementptr inbounds %Cmp_Node, ptr %t118, i32 0, i32 1 %t120 = load ptr, ptr %t119 %t121 = call ptr @lp_str_concat(ptr %t117, ptr %t120) - %t122 = call ptr @lp_str_concat(ptr %t121, ptr @.str10949) - call void @fn_ck_err(ptr @.str10944, ptr %t98, ptr %t122) + %t122 = call ptr @lp_str_concat(ptr %t121, ptr @.str10960) + call void @fn_ck_err(ptr @.str10955, ptr %t98, ptr %t122) br label %ifend24 ifend24: br label %ifend19 @@ -143904,7 +144133,7 @@ wbody1: br i1 %t19, label %ixok3, label %ixbad4 ixbad4: %t20 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str10950, i32 %t14, i32 %t18) + call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str10961, i32 %t14, i32 %t18) call void @exit(i32 1) unreachable ixok3: @@ -143974,7 +144203,7 @@ sc13: br i1 %t70, label %ixok15, label %ixbad16 ixbad16: %t71 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t71, ptr @.fmt_bounds, ptr @.str10951, i32 %t65, i32 %t69) + call i32 (ptr, ptr, ...) @fprintf(ptr %t71, ptr @.fmt_bounds, ptr @.str10962, i32 %t65, i32 %t69) call void @exit(i32 1) unreachable ixok15: @@ -144016,7 +144245,7 @@ then19: br i1 %t95, label %ixok22, label %ixbad23 ixbad23: %t96 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t96, ptr @.fmt_bounds, ptr @.str10952, i32 %t90, i32 %t94) + call i32 (ptr, ptr, ...) @fprintf(ptr %t96, ptr @.fmt_bounds, ptr @.str10963, i32 %t90, i32 %t94) call void @exit(i32 1) unreachable ixok22: @@ -144190,7 +144419,7 @@ wcond0: br i1 %t13, label %ixok3, label %ixbad4 ixbad4: %t14 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t14, ptr @.fmt_bounds, ptr @.str10953, i32 %t8, i32 %t12) + call i32 (ptr, ptr, ...) @fprintf(ptr %t14, ptr @.fmt_bounds, ptr @.str10964, i32 %t8, i32 %t12) call void @exit(i32 1) unreachable ixok3: @@ -144211,7 +144440,7 @@ wbody1: br i1 %t26, label %ixok5, label %ixbad6 ixbad6: %t27 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t27, ptr @.fmt_bounds, ptr @.str10954, i32 %t21, i32 %t25) + call i32 (ptr, ptr, ...) @fprintf(ptr %t27, ptr @.fmt_bounds, ptr @.str10965, i32 %t21, i32 %t25) call void @exit(i32 1) unreachable ixok5: @@ -144240,7 +144469,7 @@ wend2: br i1 %t42, label %ixok10, label %ixbad11 ixbad11: %t43 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str10955, i32 %t37, i32 %t41) + call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str10966, i32 %t37, i32 %t41) call void @exit(i32 1) unreachable ixok10: @@ -144257,7 +144486,7 @@ ixok10: br i1 %t52, label %ixok12, label %ixbad13 ixbad13: %t53 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t53, ptr @.fmt_bounds, ptr @.str10956, i32 %t47, i32 %t51) + call i32 (ptr, ptr, ...) @fprintf(ptr %t53, ptr @.fmt_bounds, ptr @.str10967, i32 %t47, i32 %t51) call void @exit(i32 1) unreachable ixok12: @@ -144303,7 +144532,7 @@ wcond3: br i1 %t16, label %ixok6, label %ixbad7 ixbad7: %t17 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str10957, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str10968, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok6: @@ -144324,7 +144553,7 @@ wbody4: br i1 %t29, label %ixok8, label %ixbad9 ixbad9: %t30 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str10958, i32 %t24, i32 %t28) + call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str10969, i32 %t24, i32 %t28) call void @exit(i32 1) unreachable ixok8: @@ -144345,7 +144574,7 @@ then10: br i1 %t42, label %ixok13, label %ixbad14 ixbad14: %t43 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str10959, i32 %t37, i32 %t41) + call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str10970, i32 %t37, i32 %t41) call void @exit(i32 1) unreachable ixok13: @@ -144409,7 +144638,7 @@ wbody1: br i1 %t24, label %ixok3, label %ixbad4 ixbad4: %t25 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str10960, i32 %t19, i32 %t23) + call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str10971, i32 %t19, i32 %t23) call void @exit(i32 1) unreachable ixok3: @@ -144636,7 +144865,7 @@ entry: br i1 %t5, label %scend1, label %sc0 sc0: %t7 = load ptr, ptr %t0 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str10961) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str10972) %t9 = icmp ne i32 %t8, 0 %t10 = zext i1 %t9 to i32 store i32 %t10, ptr %t1 @@ -144661,14 +144890,14 @@ entry: %t38 = alloca ptr store ptr %arg_t, ptr %t0 %t5 = load ptr, ptr %t0 - %t6 = call i32 @lp_str_eq(ptr %t5, ptr @.str10962) + %t6 = call i32 @lp_str_eq(ptr %t5, ptr @.str10973) %t7 = icmp ne i32 %t6, 0 %t8 = zext i1 %t7 to i32 store i32 %t8, ptr %t4 br i1 %t7, label %scend1, label %sc0 sc0: %t9 = load ptr, ptr %t0 - %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str10963) + %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str10974) %t11 = icmp ne i32 %t10, 0 %t12 = zext i1 %t11 to i32 store i32 %t12, ptr %t4 @@ -144681,7 +144910,7 @@ scend1: br i1 %t14, label %scend3, label %sc2 sc2: %t16 = load ptr, ptr %t0 - %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str10964) + %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str10975) %t18 = icmp ne i32 %t17, 0 %t19 = zext i1 %t18 to i32 store i32 %t19, ptr %t3 @@ -144694,7 +144923,7 @@ scend3: br i1 %t21, label %scend5, label %sc4 sc4: %t23 = load ptr, ptr %t0 - %t24 = call i32 @lp_str_eq(ptr %t23, ptr @.str10965) + %t24 = call i32 @lp_str_eq(ptr %t23, ptr @.str10976) %t25 = icmp ne i32 %t24, 0 %t26 = zext i1 %t25 to i32 store i32 %t26, ptr %t2 @@ -144707,7 +144936,7 @@ scend5: br i1 %t28, label %scend7, label %sc6 sc6: %t30 = load ptr, ptr %t0 - %t31 = call i32 @lp_str_eq(ptr %t30, ptr @.str10966) + %t31 = call i32 @lp_str_eq(ptr %t30, ptr @.str10977) %t32 = icmp ne i32 %t31, 0 %t33 = zext i1 %t32 to i32 store i32 %t33, ptr %t1 @@ -144900,12 +145129,12 @@ scend17: br i1 %t93, label %then18, label %ifend20 then18: %t94 = load ptr, ptr %t3 - %t95 = call ptr @lp_str_concat(ptr @.str10967, ptr %t94) + %t95 = call ptr @lp_str_concat(ptr @.str10978, ptr %t94) store ptr %t95, ptr %retval br label %ret ifend20: %t96 = load ptr, ptr %t3 - %t97 = call ptr @lp_str_concat(ptr @.str10968, ptr %t96) + %t97 = call ptr @lp_str_concat(ptr @.str10979, ptr %t96) store ptr %t97, ptr %retval br label %ret ret: @@ -144920,14 +145149,14 @@ entry: %t1 = alloca i32 store ptr %arg_t, ptr %t0 %t2 = load ptr, ptr %t0 - %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str10969) + %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str10980) %t4 = icmp ne i32 %t3, 0 %t5 = zext i1 %t4 to i32 store i32 %t5, ptr %t1 br i1 %t4, label %scend1, label %sc0 sc0: %t6 = load ptr, ptr %t0 - %t7 = call i32 @lp_str_eq(ptr %t6, ptr @.str10970) + %t7 = call i32 @lp_str_eq(ptr %t6, ptr @.str10981) %t8 = icmp ne i32 %t7, 0 %t9 = zext i1 %t8 to i32 store i32 %t9, ptr %t1 @@ -144969,7 +145198,7 @@ scend1: br i1 %t12, label %scend3, label %sc2 sc2: %t14 = load ptr, ptr %t0 - %t15 = call i32 @lp_str_eq(ptr %t14, ptr @.str10971) + %t15 = call i32 @lp_str_eq(ptr %t14, ptr @.str10982) %t16 = icmp ne i32 %t15, 0 %t17 = zext i1 %t16 to i32 store i32 %t17, ptr %t1 @@ -145015,7 +145244,7 @@ entry: br i1 %t6, label %scend1, label %sc0 sc0: %t8 = load ptr, ptr %t0 - %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str10972) + %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str10983) %t10 = icmp ne i32 %t9, 0 %t11 = zext i1 %t10 to i32 store i32 %t11, ptr %t3 @@ -145028,7 +145257,7 @@ scend1: br i1 %t13, label %scend3, label %sc2 sc2: %t15 = load ptr, ptr %t0 - %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str10973) + %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str10984) %t17 = icmp ne i32 %t16, 0 %t18 = zext i1 %t17 to i32 store i32 %t18, ptr %t2 @@ -145041,7 +145270,7 @@ scend3: br i1 %t20, label %scend5, label %sc4 sc4: %t22 = load ptr, ptr %t0 - %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str10974) + %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str10985) %t24 = icmp ne i32 %t23, 0 %t25 = zext i1 %t24 to i32 store i32 %t25, ptr %t1 @@ -145117,7 +145346,7 @@ sc8: %t30 = load ptr, ptr %t0 %t31 = getelementptr inbounds %Cmp_Node, ptr %t30, i32 0, i32 1 %t32 = load ptr, ptr %t31 - %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str10975) + %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str10986) %t34 = icmp ne i32 %t33, 0 %t35 = zext i1 %t34 to i32 store i32 %t35, ptr %t22 @@ -145151,26 +145380,26 @@ entry: %t3 = icmp ne i32 %t2, 0 br i1 %t3, label %then0, label %ifend2 then0: - store ptr @.str10976, ptr %retval + store ptr @.str10987, ptr %retval br label %ret ifend2: %t4 = load ptr, ptr %t0 - %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str10977) + %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str10988) %t6 = icmp ne i32 %t5, 0 br i1 %t6, label %then3, label %ifend5 then3: - store ptr @.str10978, ptr %retval + store ptr @.str10989, ptr %retval br label %ret ifend5: %t7 = load ptr, ptr %t0 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str10979) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str10990) %t9 = icmp ne i32 %t8, 0 br i1 %t9, label %then6, label %ifend8 then6: - store ptr @.str10980, ptr %retval + store ptr @.str10991, ptr %retval br label %ret ifend8: - store ptr @.str10981, ptr %retval + store ptr @.str10992, ptr %retval br label %ret ret: %t10 = load ptr, ptr %retval @@ -145239,7 +145468,7 @@ ifend4: br i1 %t18, label %scend6, label %sc5 sc5: %t20 = load ptr, ptr %t0 - %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str10982) + %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str10993) %t22 = icmp ne i32 %t21, 0 %t23 = zext i1 %t22 to i32 store i32 %t23, ptr %t14 @@ -145253,7 +145482,7 @@ then7: br label %ret ifend9: %t26 = load ptr, ptr %t1 - %t27 = call i32 @lp_str_eq(ptr %t26, ptr @.str10983) + %t27 = call i32 @lp_str_eq(ptr %t26, ptr @.str10994) %t28 = icmp ne i32 %t27, 0 br i1 %t28, label %then10, label %ifend12 then10: @@ -145265,18 +145494,18 @@ then13: store ptr null, ptr %retval br label %ret ifend15: - store ptr @.str10984, ptr %retval + store ptr @.str10995, ptr %retval br label %ret ifend12: %t33 = load ptr, ptr %t0 - %t34 = call i32 @lp_str_eq(ptr %t33, ptr @.str10985) + %t34 = call i32 @lp_str_eq(ptr %t33, ptr @.str10996) %t35 = icmp ne i32 %t34, 0 %t36 = zext i1 %t35 to i32 store i32 %t36, ptr %t32 br i1 %t35, label %scend17, label %sc16 sc16: %t37 = load ptr, ptr %t1 - %t38 = call i32 @lp_str_eq(ptr %t37, ptr @.str10986) + %t38 = call i32 @lp_str_eq(ptr %t37, ptr @.str10997) %t39 = icmp ne i32 %t38, 0 %t40 = zext i1 %t39 to i32 store i32 %t40, ptr %t32 @@ -145286,7 +145515,7 @@ scend17: %t42 = icmp ne i32 %t41, 0 br i1 %t42, label %then18, label %ifend20 then18: - store ptr @.str10987, ptr %retval + store ptr @.str10998, ptr %retval br label %ret ifend20: %t45 = load ptr, ptr %t2 @@ -145297,7 +145526,7 @@ ifend20: br i1 %t47, label %sc21, label %scend22 sc21: %t50 = load ptr, ptr %t1 - %t51 = call i32 @lp_str_eq(ptr %t50, ptr @.str10988) + %t51 = call i32 @lp_str_eq(ptr %t50, ptr @.str10999) %t52 = icmp ne i32 %t51, 0 %t53 = zext i1 %t52 to i32 store i32 %t53, ptr %t49 @@ -145323,7 +145552,7 @@ scend22: br i1 %t62, label %sc25, label %scend26 sc25: %t65 = load ptr, ptr %t0 - %t66 = call i32 @lp_str_eq(ptr %t65, ptr @.str10989) + %t66 = call i32 @lp_str_eq(ptr %t65, ptr @.str11000) %t67 = icmp ne i32 %t66, 0 %t68 = zext i1 %t67 to i32 store i32 %t68, ptr %t64 @@ -145367,10 +145596,10 @@ ifend37: %t86 = icmp ne i32 %t85, 0 br i1 %t86, label %then38, label %ifend40 then38: - store ptr @.str10990, ptr %retval + store ptr @.str11001, ptr %retval br label %ret ifend40: - store ptr @.str10991, ptr %retval + store ptr @.str11002, ptr %retval br label %ret ifend34: %t87 = load ptr, ptr %t0 @@ -145400,18 +145629,18 @@ then46: br label %ret ifend48: %t101 = load ptr, ptr %t1 - %t102 = call i32 @lp_str_eq(ptr %t101, ptr @.str10992) + %t102 = call i32 @lp_str_eq(ptr %t101, ptr @.str11003) %t103 = icmp ne i32 %t102, 0 br i1 %t103, label %then49, label %ifend51 then49: - store ptr @.str10993, ptr %retval + store ptr @.str11004, ptr %retval br label %ret ifend51: - store ptr @.str10994, ptr %retval + store ptr @.str11005, ptr %retval br label %ret ifend43: %t104 = load ptr, ptr %t0 - %t105 = call i32 @lp_str_eq(ptr %t104, ptr @.str10995) + %t105 = call i32 @lp_str_eq(ptr %t104, ptr @.str11006) %t106 = icmp ne i32 %t105, 0 br i1 %t106, label %then52, label %ifend54 then52: @@ -145449,10 +145678,10 @@ ifend62: %t123 = icmp ne i32 %t122, 0 br i1 %t123, label %then63, label %ifend65 then63: - store ptr @.str10996, ptr %retval + store ptr @.str11007, ptr %retval br label %ret ifend65: - store ptr @.str10997, ptr %retval + store ptr @.str11008, ptr %retval br label %ret ifend54: %t124 = load ptr, ptr %t1 @@ -145460,11 +145689,11 @@ ifend54: %t126 = icmp ne i32 %t125, 0 br i1 %t126, label %then66, label %ifend68 then66: - store ptr @.str10998, ptr %retval + store ptr @.str11009, ptr %retval br label %ret ifend68: %t128 = load ptr, ptr %t0 - %t129 = call i32 @lp_str_eq(ptr %t128, ptr @.str10999) + %t129 = call i32 @lp_str_eq(ptr %t128, ptr @.str11010) %t130 = icmp ne i32 %t129, 0 %t131 = zext i1 %t130 to i32 store i32 %t131, ptr %t127 @@ -145488,11 +145717,11 @@ then74: store ptr null, ptr %retval br label %ret ifend76: - store ptr @.str11000, ptr %retval + store ptr @.str11011, ptr %retval br label %ret ifend73: %t141 = load ptr, ptr %t1 - %t142 = call i32 @lp_str_eq(ptr %t141, ptr @.str11001) + %t142 = call i32 @lp_str_eq(ptr %t141, ptr @.str11012) %t143 = icmp ne i32 %t142, 0 %t144 = zext i1 %t143 to i32 store i32 %t144, ptr %t140 @@ -145509,11 +145738,11 @@ scend78: %t150 = icmp ne i32 %t149, 0 br i1 %t150, label %then79, label %ifend81 then79: - store ptr @.str11002, ptr %retval + store ptr @.str11013, ptr %retval br label %ret ifend81: %t152 = load ptr, ptr %t0 - %t153 = call i32 @lp_str_eq(ptr %t152, ptr @.str11003) + %t153 = call i32 @lp_str_eq(ptr %t152, ptr @.str11014) %t154 = icmp ne i32 %t153, 0 %t155 = zext i1 %t154 to i32 store i32 %t155, ptr %t151 @@ -145537,11 +145766,11 @@ then87: store ptr null, ptr %retval br label %ret ifend89: - store ptr @.str11004, ptr %retval + store ptr @.str11015, ptr %retval br label %ret ifend86: %t165 = load ptr, ptr %t1 - %t166 = call i32 @lp_str_eq(ptr %t165, ptr @.str11005) + %t166 = call i32 @lp_str_eq(ptr %t165, ptr @.str11016) %t167 = icmp ne i32 %t166, 0 %t168 = zext i1 %t167 to i32 store i32 %t168, ptr %t164 @@ -145558,18 +145787,18 @@ scend91: %t174 = icmp ne i32 %t173, 0 br i1 %t174, label %then92, label %ifend94 then92: - store ptr @.str11006, ptr %retval + store ptr @.str11017, ptr %retval br label %ret ifend94: %t176 = load ptr, ptr %t0 - %t177 = call i32 @lp_str_eq(ptr %t176, ptr @.str11007) + %t177 = call i32 @lp_str_eq(ptr %t176, ptr @.str11018) %t178 = icmp ne i32 %t177, 0 %t179 = zext i1 %t178 to i32 store i32 %t179, ptr %t175 br i1 %t178, label %scend96, label %sc95 sc95: %t180 = load ptr, ptr %t1 - %t181 = call i32 @lp_str_eq(ptr %t180, ptr @.str11008) + %t181 = call i32 @lp_str_eq(ptr %t180, ptr @.str11019) %t182 = icmp ne i32 %t181, 0 %t183 = zext i1 %t182 to i32 store i32 %t183, ptr %t175 @@ -145583,11 +145812,11 @@ then97: br label %ret ifend99: %t186 = load ptr, ptr %t0 - %t187 = call i32 @lp_str_eq(ptr %t186, ptr @.str11009) + %t187 = call i32 @lp_str_eq(ptr %t186, ptr @.str11020) %t188 = icmp ne i32 %t187, 0 br i1 %t188, label %then100, label %ifend102 then100: - store ptr @.str11010, ptr %retval + store ptr @.str11021, ptr %retval br label %ret ifend102: %t190 = load ptr, ptr %t0 @@ -145608,7 +145837,7 @@ scend104: %t199 = icmp ne i32 %t198, 0 br i1 %t199, label %then105, label %ifend107 then105: - store ptr @.str11011, ptr %retval + store ptr @.str11022, ptr %retval br label %ret ifend107: %t201 = load ptr, ptr %t0 @@ -145619,7 +145848,7 @@ ifend107: br i1 %t203, label %sc108, label %scend109 sc108: %t206 = load ptr, ptr %t1 - %t207 = call i32 @lp_str_eq(ptr %t206, ptr @.str11012) + %t207 = call i32 @lp_str_eq(ptr %t206, ptr @.str11023) %t208 = icmp ne i32 %t207, 0 %t209 = zext i1 %t208 to i32 store i32 %t209, ptr %t205 @@ -145642,18 +145871,18 @@ scend109: %t218 = icmp ne i32 %t217, 0 br i1 %t218, label %then112, label %ifend114 then112: - store ptr @.str11013, ptr %retval + store ptr @.str11024, ptr %retval br label %ret ifend114: %t220 = load ptr, ptr %t0 - %t221 = call i32 @lp_str_eq(ptr %t220, ptr @.str11014) + %t221 = call i32 @lp_str_eq(ptr %t220, ptr @.str11025) %t222 = icmp ne i32 %t221, 0 %t223 = zext i1 %t222 to i32 store i32 %t223, ptr %t219 br i1 %t222, label %scend116, label %sc115 sc115: %t224 = load ptr, ptr %t1 - %t225 = call i32 @lp_str_eq(ptr %t224, ptr @.str11015) + %t225 = call i32 @lp_str_eq(ptr %t224, ptr @.str11026) %t226 = icmp ne i32 %t225, 0 %t227 = zext i1 %t226 to i32 store i32 %t227, ptr %t219 @@ -145684,7 +145913,7 @@ scend121: %t240 = icmp ne i32 %t239, 0 br i1 %t240, label %then122, label %ifend124 then122: - store ptr @.str11016, ptr %retval + store ptr @.str11027, ptr %retval br label %ret ifend124: %t242 = load ptr, ptr %t0 @@ -145705,11 +145934,11 @@ scend126: %t251 = icmp ne i32 %t250, 0 br i1 %t251, label %then127, label %ifend129 then127: - store ptr @.str11017, ptr %retval + store ptr @.str11028, ptr %retval br label %ret ifend129: %t253 = load ptr, ptr %t1 - %t254 = call i32 @lp_str_eq(ptr %t253, ptr @.str11018) + %t254 = call i32 @lp_str_eq(ptr %t253, ptr @.str11029) %t255 = icmp ne i32 %t254, 0 %t256 = zext i1 %t255 to i32 store i32 %t256, ptr %t252 @@ -145752,7 +145981,7 @@ scend131: %t278 = icmp ne i32 %t277, 0 br i1 %t278, label %then136, label %ifend138 then136: - store ptr @.str11019, ptr %retval + store ptr @.str11030, ptr %retval br label %ret ifend138: store ptr null, ptr %retval @@ -145773,7 +146002,7 @@ entry: %t2 = load ptr, ptr %t1 store ptr %t2, ptr %t3 %t5 = load ptr, ptr %t3 - %t6 = call i32 @lp_str_eq(ptr %t5, ptr @.str11020) + %t6 = call i32 @lp_str_eq(ptr %t5, ptr @.str11031) %t7 = icmp ne i32 %t6, 0 %t8 = zext i1 %t7 to i32 store i32 %t8, ptr %t4 @@ -145791,7 +146020,7 @@ scend1: %t15 = icmp ne i32 %t14, 0 br i1 %t15, label %then2, label %ifend4 then2: - store ptr @.str11021, ptr %t3 + store ptr @.str11032, ptr %t3 br label %ifend4 ifend4: %t16 = load i32, ptr @g_ck_top @@ -145813,7 +146042,7 @@ then5: br i1 %t29, label %ixok8, label %ixbad9 ixbad9: %t30 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str11022, i32 %t24, i32 %t28) + call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str11033, i32 %t24, i32 %t28) call void @exit(i32 1) unreachable ixok8: @@ -145830,7 +146059,7 @@ ixok8: br i1 %t39, label %ixok10, label %ixbad11 ixbad11: %t40 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11023, i32 %t34, i32 %t38) + call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11034, i32 %t34, i32 %t38) call void @exit(i32 1) unreachable ixok10: @@ -145955,7 +146184,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11024, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11035, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -145993,7 +146222,7 @@ entry: br i1 %t3, label %then0, label %ifend2 then0: store i32 0, ptr @g_ck_report - %t4 = call ptr @getenv(ptr @.str11025) + %t4 = call ptr @getenv(ptr @.str11036) %t5 = icmp ne ptr %t4, null %t6 = zext i1 %t5 to i32 %t7 = icmp ne i32 %t6, 0 @@ -146025,7 +146254,7 @@ entry: store ptr %arg_cat, ptr %t0 store ptr %arg_n, ptr %t1 store ptr %arg_msg, ptr %t2 - store ptr @.str11026, ptr %t3 + store ptr @.str11037, ptr %t3 store i32 0, ptr %t4 %t5 = load ptr, ptr %t1 %t6 = icmp ne ptr %t5, null @@ -146054,32 +146283,32 @@ ifend5: br label %ifend2 ifend2: %t21 = load ptr, ptr %t3 - %t22 = call ptr @lp_str_concat(ptr %t21, ptr @.str11027) + %t22 = call ptr @lp_str_concat(ptr %t21, ptr @.str11038) %t23 = load i32, ptr %t4 %t24 = call ptr @fn_itoa(i32 %t23) %t25 = call ptr @lp_str_concat(ptr %t22, ptr %t24) - %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str11028) + %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str11039) %t27 = load ptr, ptr %t2 %t28 = call ptr @lp_str_concat(ptr %t26, ptr %t27) - %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str11029) + %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str11040) store ptr %t29, ptr %t30 %t31 = call i32 @fn_ck_reporting() %t32 = icmp ne i32 %t31, 0 br i1 %t32, label %then6, label %ifend8 then6: %t33 = load ptr, ptr %t0 - %t34 = call ptr @lp_str_concat(ptr @.str11030, ptr %t33) - %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str11031) + %t34 = call ptr @lp_str_concat(ptr @.str11041, ptr %t33) + %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str11042) %t36 = load ptr, ptr %t3 %t37 = call ptr @lp_str_concat(ptr %t35, ptr %t36) - %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str11032) + %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str11043) %t39 = load i32, ptr %t4 %t40 = call ptr @fn_itoa(i32 %t39) %t41 = call ptr @lp_str_concat(ptr %t38, ptr %t40) - %t42 = call ptr @lp_str_concat(ptr %t41, ptr @.str11033) + %t42 = call ptr @lp_str_concat(ptr %t41, ptr @.str11044) %t43 = load ptr, ptr %t2 %t44 = call ptr @lp_str_concat(ptr %t42, ptr %t43) - %t45 = call ptr @lp_str_concat(ptr %t44, ptr @.str11034) + %t45 = call ptr @lp_str_concat(ptr %t44, ptr @.str11045) store ptr %t45, ptr %t30 br label %ifend8 ifend8: @@ -146156,14 +146385,14 @@ scend3: br i1 %t30, label %sc4, label %scend5 sc4: %t34 = load ptr, ptr %t0 - %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str11035) + %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str11046) %t36 = icmp ne i32 %t35, 0 %t37 = zext i1 %t36 to i32 store i32 %t37, ptr %t33 br i1 %t36, label %scend7, label %sc6 sc6: %t38 = load ptr, ptr %t0 - %t39 = call i32 @lp_str_eq(ptr %t38, ptr @.str11036) + %t39 = call i32 @lp_str_eq(ptr %t38, ptr @.str11047) %t40 = icmp ne i32 %t39, 0 %t41 = zext i1 %t40 to i32 store i32 %t41, ptr %t33 @@ -146176,7 +146405,7 @@ scend7: br i1 %t43, label %scend9, label %sc8 sc8: %t45 = load ptr, ptr %t0 - %t46 = call i32 @lp_str_eq(ptr %t45, ptr @.str11037) + %t46 = call i32 @lp_str_eq(ptr %t45, ptr @.str11048) %t47 = icmp ne i32 %t46, 0 %t48 = zext i1 %t47 to i32 store i32 %t48, ptr %t32 @@ -146194,17 +146423,17 @@ scend5: then10: %t54 = load ptr, ptr %t2 %t55 = load ptr, ptr %t3 - %t56 = call ptr @lp_str_concat(ptr %t55, ptr @.str11039) + %t56 = call ptr @lp_str_concat(ptr %t55, ptr @.str11050) %t57 = load ptr, ptr %t0 %t58 = call ptr @fn_ck_a(ptr %t57) %t59 = call ptr @lp_str_concat(ptr %t56, ptr %t58) - %t60 = call ptr @lp_str_concat(ptr %t59, ptr @.str11040) + %t60 = call ptr @lp_str_concat(ptr %t59, ptr @.str11051) %t61 = load ptr, ptr %t2 %t62 = getelementptr inbounds %Cmp_Node, ptr %t61, i32 0, i32 1 %t63 = load ptr, ptr %t62 %t64 = call ptr @lp_str_concat(ptr %t60, ptr %t63) - %t65 = call ptr @lp_str_concat(ptr %t64, ptr @.str11041) - call void @fn_ck_err(ptr @.str11038, ptr %t54, ptr %t65) + %t65 = call ptr @lp_str_concat(ptr %t64, ptr @.str11052) + call void @fn_ck_err(ptr @.str11049, ptr %t54, ptr %t65) br label %ret ifend12: %t66 = load ptr, ptr %t0 @@ -146221,45 +146450,45 @@ then13: br label %ret ifend15: %t75 = load ptr, ptr %t70 - %t76 = call i32 @lp_str_eq(ptr %t75, ptr @.str11042) + %t76 = call i32 @lp_str_eq(ptr %t75, ptr @.str11053) %t77 = icmp ne i32 %t76, 0 br i1 %t77, label %then16, label %ifend18 then16: %t78 = load ptr, ptr %t70 %t79 = load ptr, ptr %t2 %t80 = load ptr, ptr %t3 - %t81 = call ptr @lp_str_concat(ptr %t80, ptr @.str11043) + %t81 = call ptr @lp_str_concat(ptr %t80, ptr @.str11054) %t82 = load ptr, ptr %t1 %t83 = call ptr @fn_ck_a(ptr %t82) %t84 = call ptr @lp_str_concat(ptr %t81, ptr %t83) - %t85 = call ptr @lp_str_concat(ptr %t84, ptr @.str11044) + %t85 = call ptr @lp_str_concat(ptr %t84, ptr @.str11055) call void @fn_ck_err(ptr %t78, ptr %t79, ptr %t85) br label %ret ifend18: %t86 = load ptr, ptr %t70 - %t87 = call i32 @lp_str_eq(ptr %t86, ptr @.str11045) + %t87 = call i32 @lp_str_eq(ptr %t86, ptr @.str11056) %t88 = icmp ne i32 %t87, 0 br i1 %t88, label %then19, label %ifend21 then19: %t89 = load ptr, ptr %t70 %t90 = load ptr, ptr %t2 %t91 = load ptr, ptr %t3 - %t92 = call ptr @lp_str_concat(ptr %t91, ptr @.str11046) + %t92 = call ptr @lp_str_concat(ptr %t91, ptr @.str11057) %t93 = load ptr, ptr %t0 %t94 = call ptr @fn_ck_a(ptr %t93) %t95 = call ptr @lp_str_concat(ptr %t92, ptr %t94) - %t96 = call ptr @lp_str_concat(ptr %t95, ptr @.str11047) + %t96 = call ptr @lp_str_concat(ptr %t95, ptr @.str11058) call void @fn_ck_err(ptr %t89, ptr %t90, ptr %t96) br label %ret ifend21: %t97 = load ptr, ptr %t70 %t98 = load ptr, ptr %t2 %t99 = load ptr, ptr %t3 - %t100 = call ptr @lp_str_concat(ptr %t99, ptr @.str11048) + %t100 = call ptr @lp_str_concat(ptr %t99, ptr @.str11059) %t101 = load ptr, ptr %t0 %t102 = call ptr @fn_ck_a(ptr %t101) %t103 = call ptr @lp_str_concat(ptr %t100, ptr %t102) - %t104 = call ptr @lp_str_concat(ptr %t103, ptr @.str11049) + %t104 = call ptr @lp_str_concat(ptr %t103, ptr @.str11060) %t105 = load ptr, ptr %t1 %t106 = call ptr @fn_ck_a(ptr %t105) %t107 = call ptr @lp_str_concat(ptr %t104, ptr %t106) @@ -146303,7 +146532,7 @@ wbody1: br i1 %t20, label %ixok3, label %ixbad4 ixbad4: %t21 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11050, i32 %t15, i32 %t19) + call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11061, i32 %t15, i32 %t19) call void @exit(i32 1) unreachable ixok3: @@ -146328,7 +146557,7 @@ then5: br i1 %t37, label %ixok8, label %ixbad9 ixbad9: %t38 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t38, ptr @.fmt_bounds, ptr @.str11051, i32 %t32, i32 %t36) + call i32 (ptr, ptr, ...) @fprintf(ptr %t38, ptr @.fmt_bounds, ptr @.str11062, i32 %t32, i32 %t36) call void @exit(i32 1) unreachable ixok8: @@ -146402,7 +146631,7 @@ wbody4: br i1 %t32, label %ixok6, label %ixbad7 ixbad7: %t33 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str11052, i32 %t27, i32 %t31) + call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str11063, i32 %t27, i32 %t31) call void @exit(i32 1) unreachable ixok6: @@ -146541,7 +146770,7 @@ entry: %t4 = icmp ne i32 %t3, 0 br i1 %t4, label %then0, label %ifend2 then0: - store ptr @.str11053, ptr %retval + store ptr @.str11064, ptr %retval br label %ret ifend2: %t5 = load ptr, ptr @g_ck_expect @@ -146565,10 +146794,10 @@ then3: %t20 = icmp ne i32 %t19, 0 br i1 %t20, label %then6, label %ifend8 then6: - store ptr @.str11054, ptr %retval + store ptr @.str11065, ptr %retval br label %ret ifend8: - store ptr @.str11055, ptr %retval + store ptr @.str11066, ptr %retval br label %ret ifend5: %t21 = load i32, ptr %t10 @@ -146584,10 +146813,10 @@ then9: %t29 = icmp ne i32 %t28, 0 br i1 %t29, label %then12, label %ifend14 then12: - store ptr @.str11056, ptr %retval + store ptr @.str11067, ptr %retval br label %ret ifend14: - store ptr @.str11057, ptr %retval + store ptr @.str11068, ptr %retval br label %ret ifend11: %t30 = load i32, ptr %t10 @@ -146596,7 +146825,7 @@ ifend11: %t33 = icmp ne i32 %t32, 0 br i1 %t33, label %then15, label %ifend17 then15: - store ptr @.str11058, ptr %retval + store ptr @.str11069, ptr %retval br label %ret ifend17: %t34 = load i32, ptr %t10 @@ -146607,7 +146836,7 @@ ifend17: then18: %t38 = load ptr, ptr %t0 call void @fn_ck_walk(ptr %t38) - store ptr @.str11059, ptr %retval + store ptr @.str11070, ptr %retval br label %ret ifend20: %t39 = load i32, ptr %t10 @@ -146616,7 +146845,7 @@ ifend20: %t42 = icmp ne i32 %t41, 0 br i1 %t42, label %then21, label %ifend23 then21: - store ptr @.str11060, ptr %retval + store ptr @.str11071, ptr %retval br label %ret ifend23: %t43 = load i32, ptr %t10 @@ -146625,7 +146854,7 @@ ifend23: %t46 = icmp ne i32 %t45, 0 br i1 %t46, label %then24, label %ifend26 then24: - store ptr @.str11061, ptr %retval + store ptr @.str11072, ptr %retval br label %ret ifend26: %t47 = load i32, ptr %t10 @@ -146680,16 +146909,16 @@ then36: %t81 = load ptr, ptr %t0 %t82 = getelementptr inbounds %Cmp_Node, ptr %t81, i32 0, i32 1 %t83 = load ptr, ptr %t82 - %t84 = call ptr @lp_str_concat(ptr @.str11063, ptr %t83) - %t85 = call ptr @lp_str_concat(ptr %t84, ptr @.str11064) + %t84 = call ptr @lp_str_concat(ptr @.str11074, ptr %t83) + %t85 = call ptr @lp_str_concat(ptr %t84, ptr @.str11075) %t86 = load ptr, ptr %t0 %t87 = getelementptr inbounds %Cmp_Node, ptr %t86, i32 0, i32 1 %t88 = load ptr, ptr %t87 %t89 = call ptr @lp_str_concat(ptr %t85, ptr %t88) - call void @fn_ck_err(ptr @.str11062, ptr %t80, ptr %t89) + call void @fn_ck_err(ptr @.str11073, ptr %t80, ptr %t89) br label %ifend38 ifend38: - store ptr @.str11065, ptr %retval + store ptr @.str11076, ptr %retval br label %ret ifend32: %t90 = load i32, ptr %t10 @@ -146779,12 +147008,12 @@ ifend59: then60: %t137 = load ptr, ptr %t0 call void @fn_ck_emit(ptr %t137) - store ptr @.str11066, ptr %retval + store ptr @.str11077, ptr %retval br label %ret ifend62: %t138 = load ptr, ptr %t0 call void @fn_ck_walk(ptr %t138) - store ptr @.str11067, ptr %retval + store ptr @.str11078, ptr %retval br label %ret ret: %t139 = load ptr, ptr %retval @@ -146821,7 +147050,7 @@ then0: br i1 %t17, label %ixok3, label %ixbad4 ixbad4: %t18 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str11068, i32 %t12, i32 %t16) + call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str11079, i32 %t12, i32 %t16) call void @exit(i32 1) unreachable ixok3: @@ -146838,7 +147067,7 @@ ixok3: br i1 %t27, label %ixok5, label %ixbad6 ixbad6: %t28 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t28, ptr @.fmt_bounds, ptr @.str11069, i32 %t22, i32 %t26) + call i32 (ptr, ptr, ...) @fprintf(ptr %t28, ptr @.fmt_bounds, ptr @.str11080, i32 %t22, i32 %t26) call void @exit(i32 1) unreachable ixok5: @@ -146893,7 +147122,7 @@ then10: store ptr %t63, ptr %retval br label %ret ifend12: - store ptr @.str11070, ptr %retval + store ptr @.str11081, ptr %retval br label %ret ret: %t64 = load ptr, ptr %retval @@ -147065,13 +147294,13 @@ then4: %t35 = load ptr, ptr %t0 %t36 = getelementptr inbounds %Cmp_Node, ptr %t35, i32 0, i32 1 %t37 = load ptr, ptr %t36 - %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str11072) + %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str11083) %t39 = load ptr, ptr %t0 %t40 = getelementptr inbounds %Cmp_Node, ptr %t39, i32 0, i32 1 %t41 = load ptr, ptr %t40 %t42 = call ptr @lp_str_concat(ptr %t38, ptr %t41) - %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str11073) - call void @fn_ck_err(ptr @.str11071, ptr %t34, ptr %t43) + %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str11084) + call void @fn_ck_err(ptr @.str11082, ptr %t34, ptr %t43) br label %ifend6 ifend6: %t44 = load ptr, ptr %t0 @@ -147112,7 +147341,7 @@ wbody11: br i1 %t72, label %ixok13, label %ixbad14 ixbad14: %t73 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t73, ptr @.fmt_bounds, ptr @.str11074, i32 %t67, i32 %t71) + call i32 (ptr, ptr, ...) @fprintf(ptr %t73, ptr @.fmt_bounds, ptr @.str11085, i32 %t67, i32 %t71) call void @exit(i32 1) unreachable ixok13: @@ -147166,8 +147395,8 @@ then20: %t112 = load ptr, ptr %t76 %t113 = getelementptr inbounds %Cmp_Node, ptr %t112, i32 0, i32 1 %t114 = load ptr, ptr %t113 - %t115 = call ptr @lp_str_concat(ptr @.str11075, ptr %t114) - %t116 = call ptr @lp_str_concat(ptr %t115, ptr @.str11076) + %t115 = call ptr @lp_str_concat(ptr @.str11086, ptr %t114) + %t116 = call ptr @lp_str_concat(ptr %t115, ptr @.str11087) %t117 = load ptr, ptr %t0 %t118 = getelementptr inbounds %Cmp_Node, ptr %t117, i32 0, i32 1 %t119 = load ptr, ptr %t118 @@ -147188,12 +147417,12 @@ then23: %t129 = getelementptr inbounds %Cmp_Node, ptr %t128, i32 0, i32 1 %t130 = load ptr, ptr %t129 %t131 = call ptr @fn_gen_show(ptr %t130) - %t132 = call ptr @lp_str_concat(ptr %t131, ptr @.str11078) + %t132 = call ptr @lp_str_concat(ptr %t131, ptr @.str11089) %t133 = load ptr, ptr %t76 %t134 = getelementptr inbounds %Cmp_Node, ptr %t133, i32 0, i32 1 %t135 = load ptr, ptr %t134 %t136 = call ptr @lp_str_concat(ptr %t132, ptr %t135) - call void @fn_ck_err(ptr @.str11077, ptr %t127, ptr %t136) + call void @fn_ck_err(ptr @.str11088, ptr %t127, ptr %t136) br label %ifend25 ifend25: br label %ifend19 @@ -147226,7 +147455,7 @@ entry: %t67 = alloca ptr %t91 = alloca i32 store ptr %arg_e, ptr %t0 - store ptr @.str11079, ptr %t1 + store ptr @.str11090, ptr %t1 store i32 0, ptr %t2 %t3 = load ptr, ptr @g_ck_vis_file store ptr %t3, ptr %t4 @@ -147263,7 +147492,7 @@ sc3: br i1 %t28, label %ixok5, label %ixbad6 ixbad6: %t29 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str11080, i32 %t23, i32 %t27) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str11091, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok5: @@ -147294,7 +147523,7 @@ then7: br i1 %t48, label %ixok10, label %ixbad11 ixbad11: %t49 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str11081, i32 %t43, i32 %t47) + call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str11092, i32 %t43, i32 %t47) call void @exit(i32 1) unreachable ixok10: @@ -147317,7 +147546,7 @@ ifend9: br i1 %t62, label %ixok12, label %ixbad13 ixbad13: %t63 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t63, ptr @.fmt_bounds, ptr @.str11082, i32 %t57, i32 %t61) + call i32 (ptr, ptr, ...) @fprintf(ptr %t63, ptr @.fmt_bounds, ptr @.str11093, i32 %t57, i32 %t61) call void @exit(i32 1) unreachable ixok12: @@ -147350,14 +147579,14 @@ else15: br i1 %t83, label %ixok17, label %ixbad18 ixbad18: %t84 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str11083, i32 %t78, i32 %t82) + call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str11094, i32 %t78, i32 %t82) call void @exit(i32 1) unreachable ixok17: %t85 = getelementptr inbounds ptr, ptr %t80, i32 %t78 %t86 = load ptr, ptr %t85 %t87 = load ptr, ptr %t1 - %t88 = call ptr @lp_str_concat(ptr @.str11084, ptr %t87) + %t88 = call ptr @lp_str_concat(ptr @.str11095, ptr %t87) call void @fn_ck_give(ptr %t73, ptr %t74, ptr %t86, ptr %t88) br label %ifend16 ifend16: @@ -147374,7 +147603,7 @@ wend2: br i1 %t94, label %scend20, label %sc19 sc19: %t96 = load ptr, ptr %t1 - %t97 = call i32 @lp_str_eq(ptr %t96, ptr @.str11085) + %t97 = call i32 @lp_str_eq(ptr %t96, ptr @.str11096) %t98 = icmp ne i32 %t97, 0 %t99 = zext i1 %t98 to i32 store i32 %t99, ptr %t91 @@ -147384,11 +147613,11 @@ scend20: %t101 = icmp ne i32 %t100, 0 br i1 %t101, label %then21, label %ifend23 then21: - store ptr @.str11086, ptr %retval + store ptr @.str11097, ptr %retval br label %ret ifend23: %t102 = load ptr, ptr %t1 - %t103 = call ptr @lp_str_concat(ptr @.str11087, ptr %t102) + %t103 = call ptr @lp_str_concat(ptr @.str11098, ptr %t102) store ptr %t103, ptr %retval br label %ret ret: @@ -147412,7 +147641,7 @@ entry: %t7 = load ptr, ptr %t0 %t8 = getelementptr inbounds %Cmp_Node, ptr %t7, i32 0, i32 1 %t9 = load ptr, ptr %t8 - %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str11088) + %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str11099) %t11 = icmp ne i32 %t10, 0 %t12 = zext i1 %t11 to i32 store i32 %t12, ptr %t6 @@ -147421,7 +147650,7 @@ sc0: %t13 = load ptr, ptr %t0 %t14 = getelementptr inbounds %Cmp_Node, ptr %t13, i32 0, i32 1 %t15 = load ptr, ptr %t14 - %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str11089) + %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str11100) %t17 = icmp ne i32 %t16, 0 %t18 = zext i1 %t17 to i32 store i32 %t18, ptr %t6 @@ -147436,20 +147665,20 @@ then2: %t23 = load ptr, ptr %t22 %t24 = load ptr, ptr %t5 call void @fn_ck_cond(ptr %t23, ptr %t24) - store ptr @.str11090, ptr %retval + store ptr @.str11101, ptr %retval br label %ret ifend4: %t26 = load ptr, ptr %t0 %t27 = getelementptr inbounds %Cmp_Node, ptr %t26, i32 0, i32 1 %t28 = load ptr, ptr %t27 - %t29 = call i32 @lp_str_eq(ptr %t28, ptr @.str11091) + %t29 = call i32 @lp_str_eq(ptr %t28, ptr @.str11102) %t30 = icmp ne i32 %t29, 0 %t31 = zext i1 %t30 to i32 store i32 %t31, ptr %t25 br i1 %t30, label %sc5, label %scend6 sc5: %t32 = load ptr, ptr %t5 - %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str11092) + %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str11103) %t34 = icmp ne i32 %t33, 0 %t35 = zext i1 %t34 to i32 store i32 %t35, ptr %t25 @@ -147460,7 +147689,7 @@ scend6: br i1 %t37, label %then7, label %ifend9 then7: %t38 = load ptr, ptr %t0 - call void @fn_ck_err(ptr @.str11093, ptr %t38, ptr @.str11094) + call void @fn_ck_err(ptr @.str11104, ptr %t38, ptr @.str11105) br label %ifend9 ifend9: %t39 = load ptr, ptr %t5 @@ -147562,7 +147791,7 @@ then9: store ptr %t56, ptr %retval br label %ret ifend11: - store ptr @.str11095, ptr %retval + store ptr @.str11106, ptr %retval br label %ret ifend6: %t57 = load ptr, ptr %t4 @@ -147573,7 +147802,7 @@ ifend6: %t62 = icmp ne i32 %t61, 0 br i1 %t62, label %then12, label %ifend14 then12: - store ptr @.str11096, ptr %retval + store ptr @.str11107, ptr %retval br label %ret ifend14: %t63 = load ptr, ptr %t59 @@ -147603,7 +147832,7 @@ then18: ifend20: br label %ifend17 ifend17: - store ptr @.str11097, ptr %retval + store ptr @.str11108, ptr %retval br label %ret ret: %t81 = load ptr, ptr %retval @@ -147637,7 +147866,7 @@ then0: %t14 = load ptr, ptr %t0 %t15 = load ptr, ptr %t5 %t16 = call ptr @fn_ck_a(ptr %t15) - %t17 = call ptr @lp_str_concat(ptr @.str11098, ptr %t16) + %t17 = call ptr @lp_str_concat(ptr @.str11109, ptr %t16) call void @fn_ck_raw(ptr %t14, ptr %t17) br label %ifend2 ifend2: @@ -147668,8 +147897,8 @@ then5: %t35 = load ptr, ptr %t34 %t36 = load ptr, ptr %t10 %t37 = call ptr @fn_ck_a(ptr %t36) - %t38 = call ptr @lp_str_concat(ptr @.str11100, ptr %t37) - call void @fn_ck_err(ptr @.str11099, ptr %t35, ptr %t38) + %t38 = call ptr @lp_str_concat(ptr @.str11111, ptr %t37) + call void @fn_ck_err(ptr @.str11110, ptr %t35, ptr %t38) br label %ifend7 ifend7: %t39 = load ptr, ptr %t5 @@ -147677,7 +147906,7 @@ ifend7: %t41 = icmp ne i32 %t40, 0 br i1 %t41, label %then8, label %ifend10 then8: - store ptr @.str11101, ptr %retval + store ptr @.str11112, ptr %retval br label %ret ifend10: %t42 = load ptr, ptr %t5 @@ -147691,14 +147920,14 @@ then11: br label %ret ifend13: %t48 = load ptr, ptr %t5 - %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str11102) + %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str11113) %t50 = icmp ne i32 %t49, 0 %t51 = zext i1 %t50 to i32 store i32 %t51, ptr %t47 br i1 %t50, label %scend15, label %sc14 sc14: %t52 = load ptr, ptr %t5 - %t53 = call i32 @lp_str_eq(ptr %t52, ptr @.str11103) + %t53 = call i32 @lp_str_eq(ptr %t52, ptr @.str11114) %t54 = icmp ne i32 %t53, 0 %t55 = zext i1 %t54 to i32 store i32 %t55, ptr %t47 @@ -147708,42 +147937,42 @@ scend15: %t57 = icmp ne i32 %t56, 0 br i1 %t57, label %then16, label %ifend18 then16: - store ptr @.str11104, ptr %retval + store ptr @.str11115, ptr %retval br label %ret ifend18: %t58 = load ptr, ptr %t5 - %t59 = call i32 @lp_str_eq(ptr %t58, ptr @.str11105) + %t59 = call i32 @lp_str_eq(ptr %t58, ptr @.str11116) %t60 = icmp ne i32 %t59, 0 br i1 %t60, label %then19, label %ifend21 then19: - store ptr @.str11106, ptr %retval + store ptr @.str11117, ptr %retval br label %ret ifend21: %t61 = load ptr, ptr %t5 - %t62 = call i32 @lp_str_eq(ptr %t61, ptr @.str11107) + %t62 = call i32 @lp_str_eq(ptr %t61, ptr @.str11118) %t63 = icmp ne i32 %t62, 0 br i1 %t63, label %then22, label %ifend24 then22: - store ptr @.str11108, ptr %retval + store ptr @.str11119, ptr %retval br label %ret ifend24: %t64 = load ptr, ptr %t5 - %t65 = call i32 @lp_str_eq(ptr %t64, ptr @.str11109) + %t65 = call i32 @lp_str_eq(ptr %t64, ptr @.str11120) %t66 = icmp ne i32 %t65, 0 br i1 %t66, label %then25, label %ifend27 then25: - store ptr @.str11110, ptr %retval + store ptr @.str11121, ptr %retval br label %ret ifend27: %t67 = load ptr, ptr %t5 - %t68 = call i32 @lp_str_eq(ptr %t67, ptr @.str11111) + %t68 = call i32 @lp_str_eq(ptr %t67, ptr @.str11122) %t69 = icmp ne i32 %t68, 0 br i1 %t69, label %then28, label %ifend30 then28: - store ptr @.str11112, ptr %retval + store ptr @.str11123, ptr %retval br label %ret ifend30: - store ptr @.str11113, ptr %retval + store ptr @.str11124, ptr %retval br label %ret ret: %t70 = load ptr, ptr %retval @@ -147765,7 +147994,7 @@ entry: br i1 %t5, label %scend1, label %sc0 sc0: %t7 = load ptr, ptr %t1 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str11114) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str11125) %t9 = icmp ne i32 %t8, 0 %t10 = zext i1 %t9 to i32 store i32 %t10, ptr %t2 @@ -147780,8 +148009,8 @@ ifend4: %t13 = load ptr, ptr %t0 %t14 = load ptr, ptr %t1 %t15 = call ptr @fn_ck_a(ptr %t14) - %t16 = call ptr @lp_str_concat(ptr @.str11116, ptr %t15) - call void @fn_ck_err(ptr @.str11115, ptr %t13, ptr %t16) + %t16 = call ptr @lp_str_concat(ptr @.str11127, ptr %t15) + call void @fn_ck_err(ptr @.str11126, ptr %t13, ptr %t16) br label %ret ret: ret void @@ -147860,14 +148089,14 @@ entry: store ptr %arg_a, ptr %t4 store ptr %arg_b, ptr %t5 %t9 = load ptr, ptr %t1 - %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str11117) + %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str11128) %t11 = icmp ne i32 %t10, 0 %t12 = zext i1 %t11 to i32 store i32 %t12, ptr %t8 br i1 %t11, label %scend1, label %sc0 sc0: %t13 = load ptr, ptr %t1 - %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str11118) + %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str11129) %t15 = icmp ne i32 %t14, 0 %t16 = zext i1 %t15 to i32 store i32 %t16, ptr %t8 @@ -147880,7 +148109,7 @@ scend1: br i1 %t18, label %scend3, label %sc2 sc2: %t20 = load ptr, ptr %t1 - %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str11119) + %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str11130) %t22 = icmp ne i32 %t21, 0 %t23 = zext i1 %t22 to i32 store i32 %t23, ptr %t7 @@ -147893,7 +148122,7 @@ scend3: br i1 %t25, label %scend5, label %sc4 sc4: %t27 = load ptr, ptr %t1 - %t28 = call i32 @lp_str_eq(ptr %t27, ptr @.str11120) + %t28 = call i32 @lp_str_eq(ptr %t27, ptr @.str11131) %t29 = icmp ne i32 %t28, 0 %t30 = zext i1 %t29 to i32 store i32 %t30, ptr %t6 @@ -147909,18 +148138,18 @@ then6: %t35 = load ptr, ptr %t5 %t36 = load ptr, ptr %t3 call void @fn_ck_cond(ptr %t35, ptr %t36) - store ptr @.str11121, ptr %retval + store ptr @.str11132, ptr %retval br label %ret ifend8: %t42 = load ptr, ptr %t1 - %t43 = call i32 @lp_str_eq(ptr %t42, ptr @.str11122) + %t43 = call i32 @lp_str_eq(ptr %t42, ptr @.str11133) %t44 = icmp ne i32 %t43, 0 %t45 = zext i1 %t44 to i32 store i32 %t45, ptr %t41 br i1 %t44, label %scend10, label %sc9 sc9: %t46 = load ptr, ptr %t1 - %t47 = call i32 @lp_str_eq(ptr %t46, ptr @.str11123) + %t47 = call i32 @lp_str_eq(ptr %t46, ptr @.str11134) %t48 = icmp ne i32 %t47, 0 %t49 = zext i1 %t48 to i32 store i32 %t49, ptr %t41 @@ -147933,7 +148162,7 @@ scend10: br i1 %t51, label %scend12, label %sc11 sc11: %t53 = load ptr, ptr %t1 - %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str11124) + %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str11135) %t55 = icmp ne i32 %t54, 0 %t56 = zext i1 %t55 to i32 store i32 %t56, ptr %t40 @@ -147946,7 +148175,7 @@ scend12: br i1 %t58, label %scend14, label %sc13 sc13: %t60 = load ptr, ptr %t1 - %t61 = call i32 @lp_str_eq(ptr %t60, ptr @.str11125) + %t61 = call i32 @lp_str_eq(ptr %t60, ptr @.str11136) %t62 = icmp ne i32 %t61, 0 %t63 = zext i1 %t62 to i32 store i32 %t63, ptr %t39 @@ -147959,7 +148188,7 @@ scend14: br i1 %t65, label %scend16, label %sc15 sc15: %t67 = load ptr, ptr %t1 - %t68 = call i32 @lp_str_eq(ptr %t67, ptr @.str11126) + %t68 = call i32 @lp_str_eq(ptr %t67, ptr @.str11137) %t69 = icmp ne i32 %t68, 0 %t70 = zext i1 %t69 to i32 store i32 %t70, ptr %t38 @@ -147972,7 +148201,7 @@ scend16: br i1 %t72, label %scend18, label %sc17 sc17: %t74 = load ptr, ptr %t1 - %t75 = call i32 @lp_str_eq(ptr %t74, ptr @.str11127) + %t75 = call i32 @lp_str_eq(ptr %t74, ptr @.str11138) %t76 = icmp ne i32 %t75, 0 %t77 = zext i1 %t76 to i32 store i32 %t77, ptr %t37 @@ -147989,18 +148218,18 @@ then19: %t84 = load ptr, ptr %t4 %t85 = load ptr, ptr %t5 call void @fn_ck_compare(ptr %t80, ptr %t81, ptr %t82, ptr %t83, ptr %t84, ptr %t85) - store ptr @.str11128, ptr %retval + store ptr @.str11139, ptr %retval br label %ret ifend21: %t90 = load ptr, ptr %t1 - %t91 = call i32 @lp_str_eq(ptr %t90, ptr @.str11129) + %t91 = call i32 @lp_str_eq(ptr %t90, ptr @.str11140) %t92 = icmp ne i32 %t91, 0 %t93 = zext i1 %t92 to i32 store i32 %t93, ptr %t89 br i1 %t92, label %scend23, label %sc22 sc22: %t94 = load ptr, ptr %t1 - %t95 = call i32 @lp_str_eq(ptr %t94, ptr @.str11130) + %t95 = call i32 @lp_str_eq(ptr %t94, ptr @.str11141) %t96 = icmp ne i32 %t95, 0 %t97 = zext i1 %t96 to i32 store i32 %t97, ptr %t89 @@ -148013,7 +148242,7 @@ scend23: br i1 %t99, label %scend25, label %sc24 sc24: %t101 = load ptr, ptr %t1 - %t102 = call i32 @lp_str_eq(ptr %t101, ptr @.str11131) + %t102 = call i32 @lp_str_eq(ptr %t101, ptr @.str11142) %t103 = icmp ne i32 %t102, 0 %t104 = zext i1 %t103 to i32 store i32 %t104, ptr %t88 @@ -148026,7 +148255,7 @@ scend25: br i1 %t106, label %scend27, label %sc26 sc26: %t108 = load ptr, ptr %t1 - %t109 = call i32 @lp_str_eq(ptr %t108, ptr @.str11132) + %t109 = call i32 @lp_str_eq(ptr %t108, ptr @.str11143) %t110 = icmp ne i32 %t109, 0 %t111 = zext i1 %t110 to i32 store i32 %t111, ptr %t87 @@ -148039,7 +148268,7 @@ scend27: br i1 %t113, label %scend29, label %sc28 sc28: %t115 = load ptr, ptr %t1 - %t116 = call i32 @lp_str_eq(ptr %t115, ptr @.str11133) + %t116 = call i32 @lp_str_eq(ptr %t115, ptr @.str11144) %t117 = icmp ne i32 %t116, 0 %t118 = zext i1 %t117 to i32 store i32 %t118, ptr %t86 @@ -148060,14 +148289,14 @@ then30: br label %ret ifend32: %t132 = load ptr, ptr %t1 - %t133 = call i32 @lp_str_eq(ptr %t132, ptr @.str11134) + %t133 = call i32 @lp_str_eq(ptr %t132, ptr @.str11145) %t134 = icmp ne i32 %t133, 0 %t135 = zext i1 %t134 to i32 store i32 %t135, ptr %t131 br i1 %t134, label %scend34, label %sc33 sc33: %t136 = load ptr, ptr %t1 - %t137 = call i32 @lp_str_eq(ptr %t136, ptr @.str11135) + %t137 = call i32 @lp_str_eq(ptr %t136, ptr @.str11146) %t138 = icmp ne i32 %t137, 0 %t139 = zext i1 %t138 to i32 store i32 %t139, ptr %t131 @@ -148080,7 +148309,7 @@ scend34: br i1 %t141, label %scend36, label %sc35 sc35: %t143 = load ptr, ptr %t1 - %t144 = call i32 @lp_str_eq(ptr %t143, ptr @.str11136) + %t144 = call i32 @lp_str_eq(ptr %t143, ptr @.str11147) %t145 = icmp ne i32 %t144, 0 %t146 = zext i1 %t145 to i32 store i32 %t146, ptr %t130 @@ -148093,7 +148322,7 @@ scend36: br i1 %t148, label %scend38, label %sc37 sc37: %t150 = load ptr, ptr %t1 - %t151 = call i32 @lp_str_eq(ptr %t150, ptr @.str11137) + %t151 = call i32 @lp_str_eq(ptr %t150, ptr @.str11148) %t152 = icmp ne i32 %t151, 0 %t153 = zext i1 %t152 to i32 store i32 %t153, ptr %t129 @@ -148106,7 +148335,7 @@ scend38: br i1 %t155, label %scend40, label %sc39 sc39: %t157 = load ptr, ptr %t1 - %t158 = call i32 @lp_str_eq(ptr %t157, ptr @.str11138) + %t158 = call i32 @lp_str_eq(ptr %t157, ptr @.str11149) %t159 = icmp ne i32 %t158, 0 %t160 = zext i1 %t159 to i32 store i32 %t160, ptr %t128 @@ -148117,14 +148346,14 @@ scend40: br i1 %t162, label %then41, label %ifend43 then41: %t164 = load ptr, ptr %t2 - %t165 = call i32 @lp_str_eq(ptr %t164, ptr @.str11139) + %t165 = call i32 @lp_str_eq(ptr %t164, ptr @.str11150) %t166 = icmp ne i32 %t165, 0 %t167 = zext i1 %t166 to i32 store i32 %t167, ptr %t163 br i1 %t166, label %scend45, label %sc44 sc44: %t168 = load ptr, ptr %t3 - %t169 = call i32 @lp_str_eq(ptr %t168, ptr @.str11140) + %t169 = call i32 @lp_str_eq(ptr %t168, ptr @.str11151) %t170 = icmp ne i32 %t169, 0 %t171 = zext i1 %t170 to i32 store i32 %t171, ptr %t163 @@ -148134,13 +148363,13 @@ scend45: %t173 = icmp ne i32 %t172, 0 br i1 %t173, label %then46, label %ifend48 then46: - store ptr @.str11141, ptr %retval + store ptr @.str11152, ptr %retval br label %ret ifend48: - store ptr @.str11142, ptr %retval + store ptr @.str11153, ptr %retval br label %ret ifend43: - store ptr @.str11143, ptr %retval + store ptr @.str11154, ptr %retval br label %ret ret: %t174 = load ptr, ptr %retval @@ -148195,7 +148424,7 @@ scend1: br i1 %t18, label %scend3, label %sc2 sc2: %t20 = load ptr, ptr %t2 - %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str11144) + %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str11155) %t22 = icmp ne i32 %t21, 0 %t23 = zext i1 %t22 to i32 store i32 %t23, ptr %t7 @@ -148208,7 +148437,7 @@ scend3: br i1 %t25, label %scend5, label %sc4 sc4: %t27 = load ptr, ptr %t3 - %t28 = call i32 @lp_str_eq(ptr %t27, ptr @.str11145) + %t28 = call i32 @lp_str_eq(ptr %t27, ptr @.str11156) %t29 = icmp ne i32 %t28, 0 %t30 = zext i1 %t29 to i32 store i32 %t30, ptr %t6 @@ -148227,14 +148456,14 @@ ifend8: %t37 = call ptr @fn_ck_class(ptr %t36) store ptr %t37, ptr %t38 %t41 = load ptr, ptr %t2 - %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str11146) + %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str11157) %t43 = icmp ne i32 %t42, 0 %t44 = zext i1 %t43 to i32 store i32 %t44, ptr %t40 br i1 %t43, label %sc9, label %scend10 sc9: %t45 = load ptr, ptr %t38 - %t46 = call i32 @lp_str_eq(ptr %t45, ptr @.str11147) + %t46 = call i32 @lp_str_eq(ptr %t45, ptr @.str11158) %t47 = icmp ne i32 %t46, 0 %t48 = zext i1 %t47 to i32 store i32 %t48, ptr %t40 @@ -148247,14 +148476,14 @@ scend10: br i1 %t50, label %scend12, label %sc11 sc11: %t53 = load ptr, ptr %t3 - %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str11148) + %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str11159) %t55 = icmp ne i32 %t54, 0 %t56 = zext i1 %t55 to i32 store i32 %t56, ptr %t52 br i1 %t55, label %sc13, label %scend14 sc13: %t57 = load ptr, ptr %t35 - %t58 = call i32 @lp_str_eq(ptr %t57, ptr @.str11149) + %t58 = call i32 @lp_str_eq(ptr %t57, ptr @.str11160) %t59 = icmp ne i32 %t58, 0 %t60 = zext i1 %t59 to i32 store i32 %t60, ptr %t52 @@ -148282,15 +148511,15 @@ ifend17: then18: %t72 = load ptr, ptr %t0 %t73 = load ptr, ptr %t1 - %t74 = call ptr @lp_str_concat(ptr %t73, ptr @.str11151) + %t74 = call ptr @lp_str_concat(ptr %t73, ptr @.str11162) %t75 = load ptr, ptr %t2 %t76 = call ptr @fn_ck_a(ptr %t75) %t77 = call ptr @lp_str_concat(ptr %t74, ptr %t76) - %t78 = call ptr @lp_str_concat(ptr %t77, ptr @.str11152) + %t78 = call ptr @lp_str_concat(ptr %t77, ptr @.str11163) %t79 = load ptr, ptr %t3 %t80 = call ptr @fn_ck_a(ptr %t79) %t81 = call ptr @lp_str_concat(ptr %t78, ptr %t80) - call void @fn_ck_err(ptr @.str11150, ptr %t72, ptr %t81) + call void @fn_ck_err(ptr @.str11161, ptr %t72, ptr %t81) br label %ret ifend20: %t84 = load ptr, ptr %t2 @@ -148329,16 +148558,16 @@ scend24: then25: %t104 = load ptr, ptr %t0 %t105 = load ptr, ptr %t1 - %t106 = call ptr @lp_str_concat(ptr %t105, ptr @.str11154) + %t106 = call ptr @lp_str_concat(ptr %t105, ptr @.str11165) %t107 = load ptr, ptr %t2 %t108 = call ptr @fn_ck_a(ptr %t107) %t109 = call ptr @lp_str_concat(ptr %t106, ptr %t108) - %t110 = call ptr @lp_str_concat(ptr %t109, ptr @.str11155) + %t110 = call ptr @lp_str_concat(ptr %t109, ptr @.str11166) %t111 = load ptr, ptr %t3 %t112 = call ptr @fn_ck_a(ptr %t111) %t113 = call ptr @lp_str_concat(ptr %t110, ptr %t112) - %t114 = call ptr @lp_str_concat(ptr %t113, ptr @.str11156) - call void @fn_ck_err(ptr @.str11153, ptr %t104, ptr %t114) + %t114 = call ptr @lp_str_concat(ptr %t113, ptr @.str11167) + call void @fn_ck_err(ptr @.str11164, ptr %t104, ptr %t114) br label %ifend27 ifend27: %t116 = load ptr, ptr %t4 @@ -148362,7 +148591,7 @@ then30: br label %ret ifend32: %t127 = load ptr, ptr %t2 - %t128 = call i32 @lp_str_eq(ptr %t127, ptr @.str11157) + %t128 = call i32 @lp_str_eq(ptr %t127, ptr @.str11168) %t129 = icmp ne i32 %t128, 0 %t130 = zext i1 %t129 to i32 store i32 %t130, ptr %t126 @@ -148381,15 +148610,15 @@ scend34: then35: %t137 = load ptr, ptr %t0 %t138 = load ptr, ptr %t1 - %t139 = call ptr @lp_str_concat(ptr %t138, ptr @.str11159) + %t139 = call ptr @lp_str_concat(ptr %t138, ptr @.str11170) %t140 = load ptr, ptr %t3 %t141 = call ptr @fn_ck_a(ptr %t140) %t142 = call ptr @lp_str_concat(ptr %t139, ptr %t141) - call void @fn_ck_err(ptr @.str11158, ptr %t137, ptr %t142) + call void @fn_ck_err(ptr @.str11169, ptr %t137, ptr %t142) br label %ifend37 ifend37: %t144 = load ptr, ptr %t3 - %t145 = call i32 @lp_str_eq(ptr %t144, ptr @.str11160) + %t145 = call i32 @lp_str_eq(ptr %t144, ptr @.str11171) %t146 = icmp ne i32 %t145, 0 %t147 = zext i1 %t146 to i32 store i32 %t147, ptr %t143 @@ -148408,12 +148637,12 @@ scend39: then40: %t154 = load ptr, ptr %t0 %t155 = load ptr, ptr %t1 - %t156 = call ptr @lp_str_concat(ptr %t155, ptr @.str11162) + %t156 = call ptr @lp_str_concat(ptr %t155, ptr @.str11173) %t157 = load ptr, ptr %t2 %t158 = call ptr @fn_ck_a(ptr %t157) %t159 = call ptr @lp_str_concat(ptr %t156, ptr %t158) - %t160 = call ptr @lp_str_concat(ptr %t159, ptr @.str11163) - call void @fn_ck_err(ptr @.str11161, ptr %t154, ptr %t160) + %t160 = call ptr @lp_str_concat(ptr %t159, ptr @.str11174) + call void @fn_ck_err(ptr @.str11172, ptr %t154, ptr %t160) br label %ifend42 ifend42: br label %ret @@ -148428,14 +148657,14 @@ entry: %t1 = alloca i32 store ptr %arg_t, ptr %t0 %t2 = load ptr, ptr %t0 - %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str11164) + %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str11175) %t4 = icmp ne i32 %t3, 0 %t5 = zext i1 %t4 to i32 store i32 %t5, ptr %t1 br i1 %t4, label %scend1, label %sc0 sc0: %t6 = load ptr, ptr %t0 - %t7 = call i32 @lp_str_eq(ptr %t6, ptr @.str11165) + %t7 = call i32 @lp_str_eq(ptr %t6, ptr @.str11176) %t8 = icmp ne i32 %t7, 0 %t9 = zext i1 %t8 to i32 store i32 %t9, ptr %t1 @@ -148507,7 +148736,7 @@ scend6: %t27 = icmp ne i32 %t26, 0 br i1 %t27, label %then7, label %ifend9 then7: - store ptr @.str11166, ptr %retval + store ptr @.str11177, ptr %retval br label %ret ifend9: %t30 = load ptr, ptr %t2 @@ -148531,7 +148760,7 @@ scend11: br i1 %t39, label %sc12, label %scend13 sc12: %t41 = load ptr, ptr %t1 - %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str11167) + %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str11178) %t43 = icmp ne i32 %t42, 0 %t44 = zext i1 %t43 to i32 store i32 %t44, ptr %t28 @@ -148541,22 +148770,22 @@ scend13: %t46 = icmp ne i32 %t45, 0 br i1 %t46, label %then14, label %ifend16 then14: - store ptr @.str11168, ptr %retval + store ptr @.str11179, ptr %retval br label %ret ifend16: %t47 = load ptr, ptr %t0 %t48 = load ptr, ptr %t1 - %t49 = call ptr @lp_str_concat(ptr %t48, ptr @.str11170) + %t49 = call ptr @lp_str_concat(ptr %t48, ptr @.str11181) %t50 = load ptr, ptr %t2 %t51 = call ptr @fn_ck_a(ptr %t50) %t52 = call ptr @lp_str_concat(ptr %t49, ptr %t51) - %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str11171) + %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str11182) %t54 = load ptr, ptr %t3 %t55 = call ptr @fn_ck_a(ptr %t54) %t56 = call ptr @lp_str_concat(ptr %t53, ptr %t55) - %t57 = call ptr @lp_str_concat(ptr %t56, ptr @.str11172) - call void @fn_ck_err(ptr @.str11169, ptr %t47, ptr %t57) - store ptr @.str11173, ptr %retval + %t57 = call ptr @lp_str_concat(ptr %t56, ptr @.str11183) + call void @fn_ck_err(ptr @.str11180, ptr %t47, ptr %t57) + store ptr @.str11184, ptr %retval br label %ret ifend4: %t59 = load ptr, ptr %t2 @@ -148577,18 +148806,18 @@ scend18: %t68 = icmp ne i32 %t67, 0 br i1 %t68, label %then19, label %ifend21 then19: - store ptr @.str11174, ptr %retval + store ptr @.str11185, ptr %retval br label %ret ifend21: %t70 = load ptr, ptr %t2 - %t71 = call i32 @lp_str_eq(ptr %t70, ptr @.str11175) + %t71 = call i32 @lp_str_eq(ptr %t70, ptr @.str11186) %t72 = icmp ne i32 %t71, 0 %t73 = zext i1 %t72 to i32 store i32 %t73, ptr %t69 br i1 %t72, label %scend23, label %sc22 sc22: %t74 = load ptr, ptr %t3 - %t75 = call i32 @lp_str_eq(ptr %t74, ptr @.str11176) + %t75 = call i32 @lp_str_eq(ptr %t74, ptr @.str11187) %t76 = icmp ne i32 %t75, 0 %t77 = zext i1 %t76 to i32 store i32 %t77, ptr %t69 @@ -148600,9 +148829,9 @@ scend23: then24: %t80 = load ptr, ptr %t0 %t81 = load ptr, ptr %t1 - %t82 = call ptr @lp_str_concat(ptr %t81, ptr @.str11178) - call void @fn_ck_err(ptr @.str11177, ptr %t80, ptr %t82) - store ptr @.str11179, ptr %retval + %t82 = call ptr @lp_str_concat(ptr %t81, ptr @.str11189) + call void @fn_ck_err(ptr @.str11188, ptr %t80, ptr %t82) + store ptr @.str11190, ptr %retval br label %ret ifend26: %t84 = load ptr, ptr %t2 @@ -148635,16 +148864,16 @@ then29: ifend31: %t101 = load ptr, ptr %t0 %t102 = load ptr, ptr %t1 - %t103 = call ptr @lp_str_concat(ptr %t102, ptr @.str11181) + %t103 = call ptr @lp_str_concat(ptr %t102, ptr @.str11192) %t104 = load ptr, ptr %t2 %t105 = call ptr @fn_ck_a(ptr %t104) %t106 = call ptr @lp_str_concat(ptr %t103, ptr %t105) - %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str11182) + %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str11193) %t108 = load ptr, ptr %t3 %t109 = call ptr @fn_ck_a(ptr %t108) %t110 = call ptr @lp_str_concat(ptr %t107, ptr %t109) - call void @fn_ck_err(ptr @.str11180, ptr %t101, ptr %t110) - store ptr @.str11183, ptr %retval + call void @fn_ck_err(ptr @.str11191, ptr %t101, ptr %t110) + store ptr @.str11194, ptr %retval br label %ret ret: %t111 = load ptr, ptr %retval @@ -148672,7 +148901,7 @@ entry: store ptr %arg_a, ptr %t4 store ptr %arg_b, ptr %t5 %t7 = load ptr, ptr %t2 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str11184) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str11195) %t9 = icmp ne i32 %t8, 0 %t10 = zext i1 %t9 to i32 store i32 %t10, ptr %t6 @@ -148694,7 +148923,7 @@ then2: %t19 = icmp ne i32 %t18, 0 br i1 %t19, label %then5, label %ifend7 then5: - store ptr @.str11185, ptr %retval + store ptr @.str11196, ptr %retval br label %ret ifend7: %t20 = load ptr, ptr %t4 @@ -148708,17 +148937,17 @@ then8: ifend10: %t24 = load ptr, ptr %t0 %t25 = load ptr, ptr %t1 - %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str11187) + %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str11198) %t27 = load ptr, ptr %t3 %t28 = call ptr @fn_ck_a(ptr %t27) %t29 = call ptr @lp_str_concat(ptr %t26, ptr %t28) - %t30 = call ptr @lp_str_concat(ptr %t29, ptr @.str11188) - call void @fn_ck_err(ptr @.str11186, ptr %t24, ptr %t30) - store ptr @.str11189, ptr %retval + %t30 = call ptr @lp_str_concat(ptr %t29, ptr @.str11199) + call void @fn_ck_err(ptr @.str11197, ptr %t24, ptr %t30) + store ptr @.str11200, ptr %retval br label %ret ifend4: %t32 = load ptr, ptr %t3 - %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str11190) + %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str11201) %t34 = icmp ne i32 %t33, 0 %t35 = zext i1 %t34 to i32 store i32 %t35, ptr %t31 @@ -148740,7 +148969,7 @@ then13: %t44 = icmp ne i32 %t43, 0 br i1 %t44, label %then16, label %ifend18 then16: - store ptr @.str11191, ptr %retval + store ptr @.str11202, ptr %retval br label %ret ifend18: %t45 = load ptr, ptr %t5 @@ -148754,24 +148983,24 @@ then19: ifend21: %t49 = load ptr, ptr %t0 %t50 = load ptr, ptr %t1 - %t51 = call ptr @lp_str_concat(ptr %t50, ptr @.str11193) + %t51 = call ptr @lp_str_concat(ptr %t50, ptr @.str11204) %t52 = load ptr, ptr %t2 %t53 = call ptr @fn_ck_a(ptr %t52) %t54 = call ptr @lp_str_concat(ptr %t51, ptr %t53) - %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str11194) - call void @fn_ck_err(ptr @.str11192, ptr %t49, ptr %t55) - store ptr @.str11195, ptr %retval + %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str11205) + call void @fn_ck_err(ptr @.str11203, ptr %t49, ptr %t55) + store ptr @.str11206, ptr %retval br label %ret ifend15: %t57 = load ptr, ptr %t2 - %t58 = call i32 @lp_str_eq(ptr %t57, ptr @.str11196) + %t58 = call i32 @lp_str_eq(ptr %t57, ptr @.str11207) %t59 = icmp ne i32 %t58, 0 %t60 = zext i1 %t59 to i32 store i32 %t60, ptr %t56 br i1 %t59, label %scend23, label %sc22 sc22: %t61 = load ptr, ptr %t3 - %t62 = call i32 @lp_str_eq(ptr %t61, ptr @.str11197) + %t62 = call i32 @lp_str_eq(ptr %t61, ptr @.str11208) %t63 = icmp ne i32 %t62, 0 %t64 = zext i1 %t63 to i32 store i32 %t64, ptr %t56 @@ -148781,7 +149010,7 @@ scend23: %t66 = icmp ne i32 %t65, 0 br i1 %t66, label %then24, label %ifend26 then24: - store ptr @.str11198, ptr %retval + store ptr @.str11209, ptr %retval br label %ret ifend26: %t67 = load ptr, ptr %t2 @@ -148803,14 +149032,14 @@ then30: br label %ret ifend32: %t76 = load ptr, ptr %t2 - %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str11199) + %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str11210) %t78 = icmp ne i32 %t77, 0 %t79 = zext i1 %t78 to i32 store i32 %t79, ptr %t75 br i1 %t78, label %scend34, label %sc33 sc33: %t80 = load ptr, ptr %t3 - %t81 = call i32 @lp_str_eq(ptr %t80, ptr @.str11200) + %t81 = call i32 @lp_str_eq(ptr %t80, ptr @.str11211) %t82 = icmp ne i32 %t81, 0 %t83 = zext i1 %t82 to i32 store i32 %t83, ptr %t75 @@ -148820,18 +149049,18 @@ scend34: %t85 = icmp ne i32 %t84, 0 br i1 %t85, label %then35, label %ifend37 then35: - store ptr @.str11201, ptr %retval + store ptr @.str11212, ptr %retval br label %ret ifend37: %t87 = load ptr, ptr %t2 - %t88 = call i32 @lp_str_eq(ptr %t87, ptr @.str11202) + %t88 = call i32 @lp_str_eq(ptr %t87, ptr @.str11213) %t89 = icmp ne i32 %t88, 0 %t90 = zext i1 %t89 to i32 store i32 %t90, ptr %t86 br i1 %t89, label %scend39, label %sc38 sc38: %t91 = load ptr, ptr %t3 - %t92 = call i32 @lp_str_eq(ptr %t91, ptr @.str11203) + %t92 = call i32 @lp_str_eq(ptr %t91, ptr @.str11214) %t93 = icmp ne i32 %t92, 0 %t94 = zext i1 %t93 to i32 store i32 %t94, ptr %t86 @@ -148841,10 +149070,10 @@ scend39: %t96 = icmp ne i32 %t95, 0 br i1 %t96, label %then40, label %ifend42 then40: - store ptr @.str11204, ptr %retval + store ptr @.str11215, ptr %retval br label %ret ifend42: - store ptr @.str11205, ptr %retval + store ptr @.str11216, ptr %retval br label %ret ret: %t97 = load ptr, ptr %retval @@ -148886,7 +149115,7 @@ wbody1: br i1 %t21, label %ixok3, label %ixbad4 ixbad4: %t22 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str11206, i32 %t16, i32 %t20) + call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str11217, i32 %t16, i32 %t20) call void @exit(i32 1) unreachable ixok3: @@ -148912,7 +149141,7 @@ then5: br i1 %t39, label %ixok8, label %ixbad9 ixbad9: %t40 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11207, i32 %t34, i32 %t38) + call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11218, i32 %t34, i32 %t38) call void @exit(i32 1) unreachable ixok8: @@ -148959,7 +149188,7 @@ put11: br i1 %t72, label %ixok12, label %ixbad13 ixbad13: %t73 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t73, ptr @.fmt_bounds, ptr @.str11208, i32 %t67, i32 %t71) + call i32 (ptr, ptr, ...) @fprintf(ptr %t73, ptr @.fmt_bounds, ptr @.str11219, i32 %t67, i32 %t71) call void @exit(i32 1) unreachable ixok12: @@ -149080,7 +149309,7 @@ ifend2: %t46 = icmp ne i32 %t45, 0 br i1 %t46, label %then3, label %ifend5 then3: - store ptr @.str11209, ptr %retval + store ptr @.str11220, ptr %retval br label %ret ifend5: %t47 = load ptr, ptr %t2 @@ -149120,7 +149349,7 @@ entry: br i1 %t12, label %ixok0, label %ixbad1 ixbad1: %t13 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t13, ptr @.fmt_bounds, ptr @.str11210, i32 %t7, i32 %t11) + call i32 (ptr, ptr, ...) @fprintf(ptr %t13, ptr @.fmt_bounds, ptr @.str11221, i32 %t7, i32 %t11) call void @exit(i32 1) unreachable ixok0: @@ -149202,7 +149431,7 @@ ifend7: %t66 = icmp ne i32 %t65, 0 br i1 %t66, label %then8, label %ifend10 then8: - store ptr @.str11211, ptr %retval + store ptr @.str11222, ptr %retval br label %ret ifend10: %t67 = load ptr, ptr %t3 @@ -149277,7 +149506,7 @@ wbody1: br i1 %t16, label %ixok3, label %ixbad4 ixbad4: %t17 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11212, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11223, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok3: @@ -149351,7 +149580,7 @@ sc0: br i1 %t23, label %ixok2, label %ixbad3 ixbad3: %t24 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str11213, i32 0, i32 %t22) + call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str11224, i32 0, i32 %t22) call void @exit(i32 1) unreachable ixok2: @@ -149392,7 +149621,7 @@ wbody8: br i1 %t49, label %ixok10, label %ixbad11 ixbad11: %t50 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str11214, i32 %t44, i32 %t48) + call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str11225, i32 %t44, i32 %t48) call void @exit(i32 1) unreachable ixok10: @@ -149426,7 +149655,7 @@ then12: br i1 %t75, label %ixok15, label %ixbad16 ixbad16: %t76 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t76, ptr @.fmt_bounds, ptr @.str11215, i32 %t70, i32 %t74) + call i32 (ptr, ptr, ...) @fprintf(ptr %t76, ptr @.fmt_bounds, ptr @.str11226, i32 %t70, i32 %t74) call void @exit(i32 1) unreachable ixok15: @@ -149439,8 +149668,8 @@ ixok15: %t83 = load ptr, ptr %t53 %t84 = getelementptr inbounds %Cmp_Node, ptr %t83, i32 0, i32 1 %t85 = load ptr, ptr %t84 - %t86 = call ptr @lp_str_concat(ptr @.str11216, ptr %t85) - %t87 = call ptr @lp_str_concat(ptr %t86, ptr @.str11217) + %t86 = call ptr @lp_str_concat(ptr @.str11227, ptr %t85) + %t87 = call ptr @lp_str_concat(ptr %t86, ptr @.str11228) %t88 = load ptr, ptr %t1 %t89 = call ptr @lp_str_concat(ptr %t87, ptr %t88) call void @fn_ck_give(ptr %t78, ptr %t79, ptr %t82, ptr %t89) @@ -149472,12 +149701,12 @@ then19: %t106 = getelementptr inbounds %Cmp_Node, ptr %t105, i32 0, i32 4 %t107 = load ptr, ptr %t106 %t108 = load ptr, ptr %t1 - %t109 = call ptr @lp_str_concat(ptr %t108, ptr @.str11219) + %t109 = call ptr @lp_str_concat(ptr %t108, ptr @.str11230) %t110 = load ptr, ptr %t53 %t111 = getelementptr inbounds %Cmp_Node, ptr %t110, i32 0, i32 1 %t112 = load ptr, ptr %t111 %t113 = call ptr @lp_str_concat(ptr %t109, ptr %t112) - call void @fn_ck_err(ptr @.str11218, ptr %t107, ptr %t113) + call void @fn_ck_err(ptr @.str11229, ptr %t107, ptr %t113) br label %ifend21 ifend21: %t114 = load i32, ptr %t35 @@ -149508,7 +149737,7 @@ wbody23: br i1 %t131, label %ixok25, label %ixbad26 ixbad26: %t132 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t132, ptr @.fmt_bounds, ptr @.str11220, i32 %t126, i32 %t130) + call i32 (ptr, ptr, ...) @fprintf(ptr %t132, ptr @.fmt_bounds, ptr @.str11231, i32 %t126, i32 %t130) call void @exit(i32 1) unreachable ixok25: @@ -149522,8 +149751,8 @@ ixok25: then27: %t139 = load ptr, ptr %t0 %t140 = load ptr, ptr %t1 - %t141 = call ptr @lp_str_concat(ptr @.str11222, ptr %t140) - %t142 = call ptr @lp_str_concat(ptr %t141, ptr @.str11223) + %t141 = call ptr @lp_str_concat(ptr @.str11233, ptr %t140) + %t142 = call ptr @lp_str_concat(ptr %t141, ptr @.str11234) %t143 = load ptr, ptr %t2 %t144 = load i32, ptr %t116 %t145 = getelementptr inbounds %LSlice, ptr %t143, i32 0, i32 0 @@ -149534,15 +149763,15 @@ then27: br i1 %t149, label %ixok30, label %ixbad31 ixbad31: %t150 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t150, ptr @.fmt_bounds, ptr @.str11224, i32 %t144, i32 %t148) + call i32 (ptr, ptr, ...) @fprintf(ptr %t150, ptr @.fmt_bounds, ptr @.str11235, i32 %t144, i32 %t148) call void @exit(i32 1) unreachable ixok30: %t151 = getelementptr inbounds ptr, ptr %t146, i32 %t144 %t152 = load ptr, ptr %t151 %t153 = call ptr @lp_str_concat(ptr %t142, ptr %t152) - %t154 = call ptr @lp_str_concat(ptr %t153, ptr @.str11225) - call void @fn_ck_err(ptr @.str11221, ptr %t139, ptr %t154) + %t154 = call ptr @lp_str_concat(ptr %t153, ptr @.str11236) + call void @fn_ck_err(ptr @.str11232, ptr %t139, ptr %t154) br label %ifend29 ifend29: %t155 = load i32, ptr %t116 @@ -149582,8 +149811,8 @@ scend33: then34: %t178 = load ptr, ptr %t0 %t179 = load ptr, ptr %t1 - %t180 = call ptr @lp_str_concat(ptr @.str11227, ptr %t179) - %t181 = call ptr @lp_str_concat(ptr %t180, ptr @.str11228) + %t180 = call ptr @lp_str_concat(ptr @.str11238, ptr %t179) + %t181 = call ptr @lp_str_concat(ptr %t180, ptr @.str11239) %t182 = load ptr, ptr %t2 %t183 = load i32, ptr %t9 %t184 = getelementptr inbounds %LSlice, ptr %t182, i32 0, i32 0 @@ -149594,15 +149823,15 @@ then34: br i1 %t188, label %ixok37, label %ixbad38 ixbad38: %t189 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t189, ptr @.fmt_bounds, ptr @.str11229, i32 %t183, i32 %t187) + call i32 (ptr, ptr, ...) @fprintf(ptr %t189, ptr @.fmt_bounds, ptr @.str11240, i32 %t183, i32 %t187) call void @exit(i32 1) unreachable ixok37: %t190 = getelementptr inbounds ptr, ptr %t185, i32 %t183 %t191 = load ptr, ptr %t190 %t192 = call ptr @lp_str_concat(ptr %t181, ptr %t191) - %t193 = call ptr @lp_str_concat(ptr %t192, ptr @.str11230) - call void @fn_ck_err(ptr @.str11226, ptr %t178, ptr %t193) + %t193 = call ptr @lp_str_concat(ptr %t192, ptr @.str11241) + call void @fn_ck_err(ptr @.str11237, ptr %t178, ptr %t193) br label %ifend36 else35: %t194 = load i32, ptr %t9 @@ -149616,17 +149845,17 @@ else35: then39: %t201 = load ptr, ptr %t0 %t202 = load ptr, ptr %t1 - %t203 = call ptr @lp_str_concat(ptr %t202, ptr @.str11232) + %t203 = call ptr @lp_str_concat(ptr %t202, ptr @.str11243) %t204 = load ptr, ptr %t3 %t205 = getelementptr inbounds %LSlice, ptr %t204, i32 0, i32 1 %t206 = load i32, ptr %t205 %t207 = call ptr @fn_itoa(i32 %t206) %t208 = call ptr @lp_str_concat(ptr %t203, ptr %t207) - %t209 = call ptr @lp_str_concat(ptr %t208, ptr @.str11233) + %t209 = call ptr @lp_str_concat(ptr %t208, ptr @.str11244) %t210 = load i32, ptr %t9 %t211 = call ptr @fn_itoa(i32 %t210) %t212 = call ptr @lp_str_concat(ptr %t209, ptr %t211) - call void @fn_ck_err(ptr @.str11231, ptr %t201, ptr %t212) + call void @fn_ck_err(ptr @.str11242, ptr %t201, ptr %t212) br label %ifend41 ifend41: br label %ifend36 @@ -149660,7 +149889,7 @@ then45: br i1 %t232, label %ixok48, label %ixbad49 ixbad49: %t233 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t233, ptr @.fmt_bounds, ptr @.str11234, i32 %t227, i32 %t231) + call i32 (ptr, ptr, ...) @fprintf(ptr %t233, ptr @.fmt_bounds, ptr @.str11245, i32 %t227, i32 %t231) call void @exit(i32 1) unreachable ixok48: @@ -149681,7 +149910,7 @@ ifend47: br i1 %t244, label %ixok50, label %ixbad51 ixbad51: %t245 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t245, ptr @.fmt_bounds, ptr @.str11235, i32 %t239, i32 %t243) + call i32 (ptr, ptr, ...) @fprintf(ptr %t245, ptr @.fmt_bounds, ptr @.str11246, i32 %t239, i32 %t243) call void @exit(i32 1) unreachable ixok50: @@ -149708,7 +149937,7 @@ then52: br i1 %t263, label %ixok55, label %ixbad56 ixbad56: %t264 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t264, ptr @.fmt_bounds, ptr @.str11236, i32 %t258, i32 %t262) + call i32 (ptr, ptr, ...) @fprintf(ptr %t264, ptr @.fmt_bounds, ptr @.str11247, i32 %t258, i32 %t262) call void @exit(i32 1) unreachable ixok55: @@ -149727,7 +149956,7 @@ ixok55: br i1 %t276, label %ixok57, label %ixbad58 ixbad58: %t277 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t277, ptr @.fmt_bounds, ptr @.str11237, i32 %t271, i32 %t275) + call i32 (ptr, ptr, ...) @fprintf(ptr %t277, ptr @.fmt_bounds, ptr @.str11248, i32 %t271, i32 %t275) call void @exit(i32 1) unreachable ixok57: @@ -149736,8 +149965,8 @@ ixok57: %t280 = load i32, ptr %t213 %t281 = add i32 %t280, 1 %t282 = call ptr @fn_itoa(i32 %t281) - %t283 = call ptr @lp_str_concat(ptr @.str11238, ptr %t282) - %t284 = call ptr @lp_str_concat(ptr %t283, ptr @.str11239) + %t283 = call ptr @lp_str_concat(ptr @.str11249, ptr %t282) + %t284 = call ptr @lp_str_concat(ptr %t283, ptr @.str11250) %t285 = load ptr, ptr %t1 %t286 = call ptr @lp_str_concat(ptr %t284, ptr %t285) call void @fn_ck_give(ptr %t266, ptr %t267, ptr %t279, ptr %t286) @@ -149787,7 +150016,7 @@ wbody1: br i1 %t20, label %ixok3, label %ixbad4 ixbad4: %t21 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11240, i32 %t15, i32 %t19) + call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11251, i32 %t15, i32 %t19) call void @exit(i32 1) unreachable ixok3: @@ -149846,7 +150075,7 @@ wbody1: br i1 %t19, label %ixok3, label %ixbad4 ixbad4: %t20 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str11241, i32 %t14, i32 %t18) + call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str11252, i32 %t14, i32 %t18) call void @exit(i32 1) unreachable ixok3: @@ -149888,14 +150117,14 @@ entry: store ptr %arg_e, ptr %t0 store ptr %arg_name, ptr %t1 %t7 = load ptr, ptr %t1 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str11242) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str11253) %t9 = icmp ne i32 %t8, 0 %t10 = zext i1 %t9 to i32 store i32 %t10, ptr %t6 br i1 %t9, label %scend1, label %sc0 sc0: %t11 = load ptr, ptr %t1 - %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str11243) + %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str11254) %t13 = icmp ne i32 %t12, 0 %t14 = zext i1 %t13 to i32 store i32 %t14, ptr %t6 @@ -149908,7 +150137,7 @@ scend1: br i1 %t16, label %scend3, label %sc2 sc2: %t18 = load ptr, ptr %t1 - %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str11244) + %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str11255) %t20 = icmp ne i32 %t19, 0 %t21 = zext i1 %t20 to i32 store i32 %t21, ptr %t5 @@ -149921,7 +150150,7 @@ scend3: br i1 %t23, label %scend5, label %sc4 sc4: %t25 = load ptr, ptr %t1 - %t26 = call i32 @lp_str_eq(ptr %t25, ptr @.str11245) + %t26 = call i32 @lp_str_eq(ptr %t25, ptr @.str11256) %t27 = icmp ne i32 %t26, 0 %t28 = zext i1 %t27 to i32 store i32 %t28, ptr %t4 @@ -149934,7 +150163,7 @@ scend5: br i1 %t30, label %scend7, label %sc6 sc6: %t32 = load ptr, ptr %t1 - %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str11246) + %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str11257) %t34 = icmp ne i32 %t33, 0 %t35 = zext i1 %t34 to i32 store i32 %t35, ptr %t3 @@ -149947,7 +150176,7 @@ scend7: br i1 %t37, label %scend9, label %sc8 sc8: %t39 = load ptr, ptr %t1 - %t40 = call i32 @lp_str_eq(ptr %t39, ptr @.str11247) + %t40 = call i32 @lp_str_eq(ptr %t39, ptr @.str11258) %t41 = icmp ne i32 %t40, 0 %t42 = zext i1 %t41 to i32 store i32 %t42, ptr %t2 @@ -149964,14 +150193,14 @@ then10: br label %ret ifend12: %t48 = load ptr, ptr %t1 - %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str11248) + %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str11259) %t50 = icmp ne i32 %t49, 0 %t51 = zext i1 %t50 to i32 store i32 %t51, ptr %t47 br i1 %t50, label %scend14, label %sc13 sc13: %t52 = load ptr, ptr %t1 - %t53 = call i32 @lp_str_eq(ptr %t52, ptr @.str11249) + %t53 = call i32 @lp_str_eq(ptr %t52, ptr @.str11260) %t54 = icmp ne i32 %t53, 0 %t55 = zext i1 %t54 to i32 store i32 %t55, ptr %t47 @@ -149992,14 +150221,14 @@ then15: br label %ret ifend17: %t65 = load ptr, ptr %t1 - %t66 = call i32 @lp_str_eq(ptr %t65, ptr @.str11250) + %t66 = call i32 @lp_str_eq(ptr %t65, ptr @.str11261) %t67 = icmp ne i32 %t66, 0 %t68 = zext i1 %t67 to i32 store i32 %t68, ptr %t64 br i1 %t67, label %scend19, label %sc18 sc18: %t69 = load ptr, ptr %t1 - %t70 = call i32 @lp_str_eq(ptr %t69, ptr @.str11251) + %t70 = call i32 @lp_str_eq(ptr %t69, ptr @.str11262) %t71 = icmp ne i32 %t70, 0 %t72 = zext i1 %t71 to i32 store i32 %t72, ptr %t64 @@ -150011,11 +150240,11 @@ scend19: then20: %t75 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t75) - store ptr @.str11252, ptr %retval + store ptr @.str11263, ptr %retval br label %ret ifend22: %t77 = load ptr, ptr %t1 - %t78 = call i32 @lp_str_eq(ptr %t77, ptr @.str11253) + %t78 = call i32 @lp_str_eq(ptr %t77, ptr @.str11264) %t79 = icmp ne i32 %t78, 0 %t80 = zext i1 %t79 to i32 store i32 %t80, ptr %t76 @@ -150048,7 +150277,7 @@ then25: br i1 %t99, label %ixok28, label %ixbad29 ixbad29: %t100 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t100, ptr @.fmt_bounds, ptr @.str11254, i32 0, i32 %t98) + call i32 (ptr, ptr, ...) @fprintf(ptr %t100, ptr @.fmt_bounds, ptr @.str11265, i32 0, i32 %t98) call void @exit(i32 1) unreachable ixok28: @@ -150067,7 +150296,7 @@ ixok28: br i1 %t112, label %ixok30, label %ixbad31 ixbad31: %t113 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t113, ptr @.fmt_bounds, ptr @.str11256, i32 1, i32 %t111) + call i32 (ptr, ptr, ...) @fprintf(ptr %t113, ptr @.fmt_bounds, ptr @.str11267, i32 1, i32 %t111) call void @exit(i32 1) unreachable ixok30: @@ -150085,13 +150314,13 @@ ixok30: br i1 %t124, label %ixok32, label %ixbad33 ixbad33: %t125 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t125, ptr @.fmt_bounds, ptr @.str11257, i32 1, i32 %t123) + call i32 (ptr, ptr, ...) @fprintf(ptr %t125, ptr @.fmt_bounds, ptr @.str11268, i32 1, i32 %t123) call void @exit(i32 1) unreachable ixok32: %t126 = getelementptr inbounds ptr, ptr %t121, i32 1 %t127 = load ptr, ptr %t126 - call void @fn_ck_give(ptr @.str11255, ptr %t116, ptr %t127, ptr @.str11258) + call void @fn_ck_give(ptr @.str11266, ptr %t116, ptr %t127, ptr @.str11269) %t128 = load ptr, ptr %t0 %t129 = getelementptr inbounds %Cmp_Node, ptr %t128, i32 0, i32 7 %t130 = load ptr, ptr %t129 @@ -150103,7 +150332,7 @@ ixok32: br i1 %t135, label %ixok34, label %ixbad35 ixbad35: %t136 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t136, ptr @.fmt_bounds, ptr @.str11260, i32 2, i32 %t134) + call i32 (ptr, ptr, ...) @fprintf(ptr %t136, ptr @.fmt_bounds, ptr @.str11271, i32 2, i32 %t134) call void @exit(i32 1) unreachable ixok34: @@ -150121,13 +150350,13 @@ ixok34: br i1 %t147, label %ixok36, label %ixbad37 ixbad37: %t148 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t148, ptr @.fmt_bounds, ptr @.str11261, i32 2, i32 %t146) + call i32 (ptr, ptr, ...) @fprintf(ptr %t148, ptr @.fmt_bounds, ptr @.str11272, i32 2, i32 %t146) call void @exit(i32 1) unreachable ixok36: %t149 = getelementptr inbounds ptr, ptr %t144, i32 2 %t150 = load ptr, ptr %t149 - call void @fn_ck_give(ptr @.str11259, ptr %t139, ptr %t150, ptr @.str11262) + call void @fn_ck_give(ptr @.str11270, ptr %t139, ptr %t150, ptr @.str11273) %t152 = load ptr, ptr %t104 %t153 = call i32 @fn_ck_unknown(ptr %t152) %t154 = icmp eq i32 %t153, 0 @@ -150153,8 +150382,8 @@ then40: %t166 = load ptr, ptr %t0 %t167 = load ptr, ptr %t104 %t168 = call ptr @fn_ck_a(ptr %t167) - %t169 = call ptr @lp_str_concat(ptr @.str11264, ptr %t168) - call void @fn_ck_err(ptr @.str11263, ptr %t166, ptr %t169) + %t169 = call ptr @lp_str_concat(ptr @.str11275, ptr %t168) + call void @fn_ck_err(ptr @.str11274, ptr %t166, ptr %t169) br label %ifend42 ifend42: %t170 = load ptr, ptr %t104 @@ -150162,14 +150391,14 @@ ifend42: br label %ret ifend27: %t172 = load ptr, ptr %t1 - %t173 = call i32 @lp_str_eq(ptr %t172, ptr @.str11265) + %t173 = call i32 @lp_str_eq(ptr %t172, ptr @.str11276) %t174 = icmp ne i32 %t173, 0 %t175 = zext i1 %t174 to i32 store i32 %t175, ptr %t171 br i1 %t174, label %scend44, label %sc43 sc43: %t176 = load ptr, ptr %t1 - %t177 = call i32 @lp_str_eq(ptr %t176, ptr @.str11266) + %t177 = call i32 @lp_str_eq(ptr %t176, ptr @.str11277) %t178 = icmp ne i32 %t177, 0 %t179 = zext i1 %t178 to i32 store i32 %t179, ptr %t171 @@ -150181,48 +150410,48 @@ scend44: then45: %t182 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t182) - store ptr @.str11267, ptr %retval + store ptr @.str11278, ptr %retval br label %ret ifend47: %t183 = load ptr, ptr %t1 - %t184 = call i32 @lp_str_eq(ptr %t183, ptr @.str11268) + %t184 = call i32 @lp_str_eq(ptr %t183, ptr @.str11279) %t185 = icmp ne i32 %t184, 0 br i1 %t185, label %then48, label %ifend50 then48: %t186 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t186) - store ptr @.str11269, ptr %retval + store ptr @.str11280, ptr %retval br label %ret ifend50: %t187 = load ptr, ptr %t1 - %t188 = call i32 @lp_str_eq(ptr %t187, ptr @.str11270) + %t188 = call i32 @lp_str_eq(ptr %t187, ptr @.str11281) %t189 = icmp ne i32 %t188, 0 br i1 %t189, label %then51, label %ifend53 then51: %t190 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t190) - store ptr @.str11271, ptr %retval + store ptr @.str11282, ptr %retval br label %ret ifend53: %t191 = load ptr, ptr %t1 - %t192 = call i32 @lp_str_eq(ptr %t191, ptr @.str11272) + %t192 = call i32 @lp_str_eq(ptr %t191, ptr @.str11283) %t193 = icmp ne i32 %t192, 0 br i1 %t193, label %then54, label %ifend56 then54: %t194 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t194) - store ptr @.str11273, ptr %retval + store ptr @.str11284, ptr %retval br label %ret ifend56: %t196 = load ptr, ptr %t1 - %t197 = call i32 @lp_str_eq(ptr %t196, ptr @.str11274) + %t197 = call i32 @lp_str_eq(ptr %t196, ptr @.str11285) %t198 = icmp ne i32 %t197, 0 %t199 = zext i1 %t198 to i32 store i32 %t199, ptr %t195 br i1 %t198, label %scend58, label %sc57 sc57: %t200 = load ptr, ptr %t1 - %t201 = call i32 @lp_str_eq(ptr %t200, ptr @.str11275) + %t201 = call i32 @lp_str_eq(ptr %t200, ptr @.str11286) %t202 = icmp ne i32 %t201, 0 %t203 = zext i1 %t202 to i32 store i32 %t203, ptr %t195 @@ -150240,19 +150469,19 @@ then59: %t210 = trunc i64 %t209 to i32 %t211 = sub i32 %t210, 1 %t212 = call ptr @lp_str_slice(ptr %t207, i32 0, i32 %t211) - %t213 = call ptr @lp_str_concat(ptr @.str11276, ptr %t212) + %t213 = call ptr @lp_str_concat(ptr @.str11287, ptr %t212) store ptr %t213, ptr %retval br label %ret ifend61: %t215 = load ptr, ptr %t1 - %t216 = call i32 @lp_str_eq(ptr %t215, ptr @.str11277) + %t216 = call i32 @lp_str_eq(ptr %t215, ptr @.str11288) %t217 = icmp ne i32 %t216, 0 %t218 = zext i1 %t217 to i32 store i32 %t218, ptr %t214 br i1 %t217, label %scend63, label %sc62 sc62: %t219 = load ptr, ptr %t1 - %t220 = call i32 @lp_str_eq(ptr %t219, ptr @.str11278) + %t220 = call i32 @lp_str_eq(ptr %t219, ptr @.str11289) %t221 = icmp ne i32 %t220, 0 %t222 = zext i1 %t221 to i32 store i32 %t222, ptr %t214 @@ -150270,32 +150499,32 @@ then64: %t229 = trunc i64 %t228 to i32 %t230 = sub i32 %t229, 1 %t231 = call ptr @lp_str_slice(ptr %t226, i32 0, i32 %t230) - %t232 = call ptr @lp_str_concat(ptr @.str11279, ptr %t231) + %t232 = call ptr @lp_str_concat(ptr @.str11290, ptr %t231) store ptr %t232, ptr %retval br label %ret ifend66: %t233 = load ptr, ptr %t1 - %t234 = call i32 @lp_str_eq(ptr %t233, ptr @.str11280) + %t234 = call i32 @lp_str_eq(ptr %t233, ptr @.str11291) %t235 = icmp ne i32 %t234, 0 br i1 %t235, label %then67, label %ifend69 then67: %t236 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t236) - store ptr @.str11281, ptr %retval + store ptr @.str11292, ptr %retval br label %ret ifend69: %t237 = load ptr, ptr %t1 - %t238 = call i32 @lp_str_eq(ptr %t237, ptr @.str11282) + %t238 = call i32 @lp_str_eq(ptr %t237, ptr @.str11293) %t239 = icmp ne i32 %t238, 0 br i1 %t239, label %then70, label %ifend72 then70: %t240 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t240) - store ptr @.str11283, ptr %retval + store ptr @.str11294, ptr %retval br label %ret ifend72: %t242 = load ptr, ptr %t1 - %t243 = call i32 @lp_str_eq(ptr %t242, ptr @.str11284) + %t243 = call i32 @lp_str_eq(ptr %t242, ptr @.str11295) %t244 = icmp ne i32 %t243, 0 %t245 = zext i1 %t244 to i32 store i32 %t245, ptr %t241 @@ -150328,13 +150557,13 @@ then75: br i1 %t264, label %ixok78, label %ixbad79 ixbad79: %t265 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t265, ptr @.fmt_bounds, ptr @.str11285, i32 0, i32 %t263) + call i32 (ptr, ptr, ...) @fprintf(ptr %t265, ptr @.fmt_bounds, ptr @.str11296, i32 0, i32 %t263) call void @exit(i32 1) unreachable ixok78: %t266 = getelementptr inbounds ptr, ptr %t261, i32 0 %t267 = load ptr, ptr %t266 - call void @fn_ck_write_check(ptr %t267, ptr @.str11286) + call void @fn_ck_write_check(ptr %t267, ptr @.str11297) %t268 = load ptr, ptr %t0 %t269 = getelementptr inbounds %Cmp_Node, ptr %t268, i32 0, i32 7 %t270 = load ptr, ptr %t269 @@ -150346,7 +150575,7 @@ ixok78: br i1 %t275, label %ixok80, label %ixbad81 ixbad81: %t276 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t276, ptr @.fmt_bounds, ptr @.str11287, i32 0, i32 %t274) + call i32 (ptr, ptr, ...) @fprintf(ptr %t276, ptr @.fmt_bounds, ptr @.str11298, i32 0, i32 %t274) call void @exit(i32 1) unreachable ixok80: @@ -150365,7 +150594,7 @@ ixok80: br i1 %t288, label %ixok82, label %ixbad83 ixbad83: %t289 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t289, ptr @.fmt_bounds, ptr @.str11288, i32 1, i32 %t287) + call i32 (ptr, ptr, ...) @fprintf(ptr %t289, ptr @.fmt_bounds, ptr @.str11299, i32 1, i32 %t287) call void @exit(i32 1) unreachable ixok82: @@ -150407,7 +150636,7 @@ then86: br i1 %t317, label %ixok89, label %ixbad90 ixbad90: %t318 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t318, ptr @.fmt_bounds, ptr @.str11289, i32 1, i32 %t316) + call i32 (ptr, ptr, ...) @fprintf(ptr %t318, ptr @.fmt_bounds, ptr @.str11300, i32 1, i32 %t316) call void @exit(i32 1) unreachable ixok89: @@ -150415,11 +150644,11 @@ ixok89: %t320 = load ptr, ptr %t319 %t321 = load ptr, ptr %t280 %t322 = call ptr @fn_ck_a(ptr %t321) - %t323 = call ptr @lp_str_concat(ptr @.str11290, ptr %t322) + %t323 = call ptr @lp_str_concat(ptr @.str11301, ptr %t322) call void @fn_ck_give(ptr %t308, ptr %t309, ptr %t320, ptr %t323) br label %ifend88 ifend88: - store ptr @.str11291, ptr %retval + store ptr @.str11302, ptr %retval br label %ret ifend77: store ptr null, ptr %retval @@ -150449,13 +150678,13 @@ entry: br i1 %t9, label %ixok0, label %ixbad1 ixbad1: %t10 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t10, ptr @.fmt_bounds, ptr @.str11292, i32 %t4, i32 %t8) + call i32 (ptr, ptr, ...) @fprintf(ptr %t10, ptr @.fmt_bounds, ptr @.str11303, i32 %t4, i32 %t8) call void @exit(i32 1) unreachable ixok0: %t11 = getelementptr inbounds ptr, ptr %t6, i32 %t4 %t12 = load ptr, ptr %t11 - %t13 = call i32 @fn_has_sub(ptr %t12, ptr @.str11293) + %t13 = call i32 @fn_has_sub(ptr %t12, ptr @.str11304) %t14 = icmp eq i32 %t13, 0 %t15 = zext i1 %t14 to i32 %t16 = icmp ne i32 %t15, 0 @@ -150476,7 +150705,7 @@ sc5: %t25 = load ptr, ptr %t2 %t26 = getelementptr inbounds %Cmp_Node, ptr %t25, i32 0, i32 9 %t27 = load ptr, ptr %t26 - %t28 = call i32 @fn_has_sub(ptr %t27, ptr @.str11294) + %t28 = call i32 @fn_has_sub(ptr %t27, ptr @.str11305) %t29 = icmp ne i32 %t28, 0 %t30 = zext i1 %t29 to i32 store i32 %t30, ptr %t17 @@ -150510,7 +150739,7 @@ wbody11: br i1 %t47, label %ixok13, label %ixbad14 ixbad14: %t48 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t48, ptr @.fmt_bounds, ptr @.str11295, i32 %t42, i32 %t46) + call i32 (ptr, ptr, ...) @fprintf(ptr %t48, ptr @.fmt_bounds, ptr @.str11306, i32 %t42, i32 %t46) call void @exit(i32 1) unreachable ixok13: @@ -150564,7 +150793,7 @@ put19: %t81 = load ptr, ptr %t2 %t82 = getelementptr inbounds %Cmp_Node, ptr %t81, i32 0, i32 1 %t83 = load ptr, ptr %t82 - %t84 = call ptr @lp_str_concat(ptr %t83, ptr @.str11297) + %t84 = call ptr @lp_str_concat(ptr %t83, ptr @.str11308) %t85 = load ptr, ptr @g_g_al_ns %t86 = load i32, ptr %t1 %t87 = getelementptr inbounds %LSlice, ptr %t85, i32 0, i32 0 @@ -150575,14 +150804,14 @@ put19: br i1 %t91, label %ixok20, label %ixbad21 ixbad21: %t92 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t92, ptr @.fmt_bounds, ptr @.str11298, i32 %t86, i32 %t90) + call i32 (ptr, ptr, ...) @fprintf(ptr %t92, ptr @.fmt_bounds, ptr @.str11309, i32 %t86, i32 %t90) call void @exit(i32 1) unreachable ixok20: %t93 = getelementptr inbounds ptr, ptr %t88, i32 %t86 %t94 = load ptr, ptr %t93 %t95 = call ptr @lp_str_concat(ptr %t84, ptr %t94) - %t96 = call ptr @lp_str_concat(ptr %t95, ptr @.str11299) + %t96 = call ptr @lp_str_concat(ptr %t95, ptr @.str11310) %t97 = load ptr, ptr @g_g_al_meth %t98 = load i32, ptr %t1 %t99 = getelementptr inbounds %LSlice, ptr %t97, i32 0, i32 0 @@ -150593,26 +150822,26 @@ ixok20: br i1 %t103, label %ixok22, label %ixbad23 ixbad23: %t104 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t104, ptr @.fmt_bounds, ptr @.str11300, i32 %t98, i32 %t102) + call i32 (ptr, ptr, ...) @fprintf(ptr %t104, ptr @.fmt_bounds, ptr @.str11311, i32 %t98, i32 %t102) call void @exit(i32 1) unreachable ixok22: %t105 = getelementptr inbounds ptr, ptr %t100, i32 %t98 %t106 = load ptr, ptr %t105 %t107 = call ptr @lp_str_concat(ptr %t96, ptr %t106) - %t108 = call ptr @lp_str_concat(ptr %t107, ptr @.str11301) + %t108 = call ptr @lp_str_concat(ptr %t107, ptr @.str11312) %t109 = load ptr, ptr %t0 %t110 = getelementptr inbounds %Cmp_Node, ptr %t109, i32 0, i32 9 %t111 = load ptr, ptr %t110 %t112 = call ptr @lp_str_concat(ptr %t108, ptr %t111) - %t113 = call ptr @lp_str_concat(ptr %t112, ptr @.str11302) + %t113 = call ptr @lp_str_concat(ptr %t112, ptr @.str11313) %t114 = load ptr, ptr %t0 %t115 = getelementptr inbounds %Cmp_Node, ptr %t114, i32 0, i32 8 %t116 = load i32, ptr %t115 %t117 = call ptr @fn_itoa(i32 %t116) %t118 = call ptr @lp_str_concat(ptr %t113, ptr %t117) - %t119 = call ptr @lp_str_concat(ptr %t118, ptr @.str11303) - call void @fn_ck_err(ptr @.str11296, ptr %t80, ptr %t119) + %t119 = call ptr @lp_str_concat(ptr %t118, ptr @.str11314) + call void @fn_ck_err(ptr @.str11307, ptr %t80, ptr %t119) br label %ret ret: ret void @@ -150712,7 +150941,7 @@ then10: %t56 = load ptr, ptr %t25 %t57 = getelementptr inbounds %Cmp_Node, ptr %t56, i32 0, i32 1 %t58 = load ptr, ptr %t57 - %t59 = call i32 @lp_str_eq(ptr %t58, ptr @.str11304) + %t59 = call i32 @lp_str_eq(ptr %t58, ptr @.str11315) %t60 = icmp ne i32 %t59, 0 br i1 %t60, label %then13, label %ifend15 then13: @@ -150720,7 +150949,7 @@ then13: %t62 = load ptr, ptr %t4 %t63 = getelementptr inbounds %Cmp_Node, ptr %t62, i32 0, i32 1 %t64 = load ptr, ptr %t63 - %t65 = call ptr @lp_str_concat(ptr @.str11305, ptr %t64) + %t65 = call ptr @lp_str_concat(ptr @.str11316, ptr %t64) call void @fn_ck_raw(ptr %t61, ptr %t65) br label %ifend15 ifend15: @@ -150748,7 +150977,7 @@ then16: br i1 %t84, label %ixok19, label %ixbad20 ixbad20: %t85 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str11306, i32 %t79, i32 %t83) + call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str11317, i32 %t79, i32 %t83) call void @exit(i32 1) unreachable ixok19: @@ -150784,7 +151013,7 @@ then24: br i1 %t107, label %ixok27, label %ixbad28 ixbad28: %t108 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t108, ptr @.fmt_bounds, ptr @.str11307, i32 %t102, i32 %t106) + call i32 (ptr, ptr, ...) @fprintf(ptr %t108, ptr @.fmt_bounds, ptr @.str11318, i32 %t102, i32 %t106) call void @exit(i32 1) unreachable ixok27: @@ -150802,12 +151031,12 @@ then29: %t117 = load ptr, ptr %t25 %t118 = getelementptr inbounds %Cmp_Node, ptr %t117, i32 0, i32 1 %t119 = load ptr, ptr %t118 - %t120 = call ptr @lp_str_concat(ptr %t119, ptr @.str11308) + %t120 = call ptr @lp_str_concat(ptr %t119, ptr @.str11319) %t121 = load ptr, ptr %t4 %t122 = getelementptr inbounds %Cmp_Node, ptr %t121, i32 0, i32 1 %t123 = load ptr, ptr %t122 %t124 = call ptr @lp_str_concat(ptr %t120, ptr %t123) - %t125 = call ptr @lp_str_concat(ptr %t124, ptr @.str11309) + %t125 = call ptr @lp_str_concat(ptr %t124, ptr @.str11320) call void @fn_ck_raw(ptr %t116, ptr %t125) br label %ifend31 ifend31: @@ -150829,7 +151058,7 @@ then32: br i1 %t136, label %ixok35, label %ixbad36 ixbad36: %t137 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t137, ptr @.fmt_bounds, ptr @.str11310, i32 %t131, i32 %t135) + call i32 (ptr, ptr, ...) @fprintf(ptr %t137, ptr @.fmt_bounds, ptr @.str11321, i32 %t131, i32 %t135) call void @exit(i32 1) unreachable ixok35: @@ -150852,7 +151081,7 @@ then37: br i1 %t151, label %ixok40, label %ixbad41 ixbad41: %t152 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t152, ptr @.fmt_bounds, ptr @.str11311, i32 %t146, i32 %t150) + call i32 (ptr, ptr, ...) @fprintf(ptr %t152, ptr @.fmt_bounds, ptr @.str11322, i32 %t146, i32 %t150) call void @exit(i32 1) unreachable ixok40: @@ -150872,7 +151101,7 @@ ifend39: br i1 %t162, label %ixok42, label %ixbad43 ixbad43: %t163 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t163, ptr @.fmt_bounds, ptr @.str11312, i32 %t157, i32 %t161) + call i32 (ptr, ptr, ...) @fprintf(ptr %t163, ptr @.fmt_bounds, ptr @.str11323, i32 %t157, i32 %t161) call void @exit(i32 1) unreachable ixok42: @@ -150886,7 +151115,7 @@ ixok42: %t170 = load ptr, ptr %t25 %t171 = getelementptr inbounds %Cmp_Node, ptr %t170, i32 0, i32 1 %t172 = load ptr, ptr %t171 - %t173 = call ptr @lp_str_concat(ptr %t172, ptr @.str11313) + %t173 = call ptr @lp_str_concat(ptr %t172, ptr @.str11324) %t174 = load ptr, ptr %t4 %t175 = getelementptr inbounds %Cmp_Node, ptr %t174, i32 0, i32 1 %t176 = load ptr, ptr %t175 @@ -150902,7 +151131,7 @@ ixok42: ifend34: %t183 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t183) - store ptr @.str11314, ptr %retval + store ptr @.str11325, ptr %retval br label %ret ifend18: %t184 = load ptr, ptr %t0 @@ -150911,7 +151140,7 @@ ifend18: %t186 = getelementptr inbounds %Cmp_Node, ptr %t185, i32 0, i32 1 %t187 = load ptr, ptr %t186 %t188 = call ptr @fn_ns_lower(ptr %t187) - %t189 = call ptr @lp_str_concat(ptr %t188, ptr @.str11315) + %t189 = call ptr @lp_str_concat(ptr %t188, ptr @.str11326) %t190 = load ptr, ptr %t4 %t191 = getelementptr inbounds %Cmp_Node, ptr %t190, i32 0, i32 1 %t192 = load ptr, ptr %t191 @@ -150960,7 +151189,7 @@ then49: store ptr %t222, ptr %retval br label %ret ifend51: - store ptr @.str11316, ptr %retval + store ptr @.str11327, ptr %retval br label %ret ifend12: %t223 = load ptr, ptr %t25 @@ -151011,14 +151240,14 @@ ifend59: ifend54: %t255 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t255) - store ptr @.str11317, ptr %retval + store ptr @.str11328, ptr %retval br label %ret ifend5: %t256 = load ptr, ptr %t4 %t257 = call ptr @fn_ck_expr(ptr %t256) %t258 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t258) - store ptr @.str11318, ptr %retval + store ptr @.str11329, ptr %retval br label %ret ret: %t259 = load ptr, ptr %retval @@ -151059,7 +151288,7 @@ then0: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str11319, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str11330, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -151081,7 +151310,7 @@ then5: br i1 %t29, label %ixok8, label %ixbad9 ixbad9: %t30 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str11320, i32 %t24, i32 %t28) + call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str11331, i32 %t24, i32 %t28) call void @exit(i32 1) unreachable ixok8: @@ -151093,7 +151322,7 @@ ixok8: ifend7: %t34 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t34) - store ptr @.str11321, ptr %retval + store ptr @.str11332, ptr %retval br label %ret ifend2: %t35 = load ptr, ptr %t1 @@ -151103,7 +151332,7 @@ ifend2: then10: %t38 = load ptr, ptr %t0 %t39 = load ptr, ptr %t1 - %t40 = call ptr @lp_str_concat(ptr %t39, ptr @.str11322) + %t40 = call ptr @lp_str_concat(ptr %t39, ptr @.str11333) call void @fn_ck_raw(ptr %t38, ptr %t40) br label %ifend12 ifend12: @@ -151173,7 +151402,7 @@ ifend21: then22: %t86 = load ptr, ptr %t0 %t87 = load ptr, ptr %t1 - %t88 = call ptr @lp_str_concat(ptr @.str11323, ptr %t87) + %t88 = call ptr @lp_str_concat(ptr @.str11334, ptr %t87) call void @fn_ck_raw(ptr %t86, ptr %t88) %t89 = load ptr, ptr %t0 call void @fn_ck_extern_writes(ptr %t89) @@ -151228,7 +151457,7 @@ then27: ifend29: %t123 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t123) - store ptr @.str11324, ptr %retval + store ptr @.str11335, ptr %retval br label %ret ret: %t124 = load ptr, ptr %retval @@ -151295,7 +151524,7 @@ wbody4: br i1 %t39, label %ixok6, label %ixbad7 ixbad7: %t40 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11325, i32 %t34, i32 %t38) + call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11336, i32 %t34, i32 %t38) call void @exit(i32 1) unreachable ixok6: @@ -151333,8 +151562,8 @@ then11: %t68 = load ptr, ptr %t43 %t69 = getelementptr inbounds %Cmp_Node, ptr %t68, i32 0, i32 1 %t70 = load ptr, ptr %t69 - %t71 = call ptr @lp_str_concat(ptr @.str11326, ptr %t70) - %t72 = call ptr @lp_str_concat(ptr %t71, ptr @.str11327) + %t71 = call ptr @lp_str_concat(ptr @.str11337, ptr %t70) + %t72 = call ptr @lp_str_concat(ptr %t71, ptr @.str11338) %t73 = load ptr, ptr %t0 %t74 = getelementptr inbounds %Cmp_Node, ptr %t73, i32 0, i32 1 %t75 = load ptr, ptr %t74 @@ -151408,7 +151637,7 @@ wbody7: br i1 %t32, label %ixok9, label %ixbad10 ixbad10: %t33 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str11328, i32 %t27, i32 %t31) + call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str11339, i32 %t27, i32 %t31) call void @exit(i32 1) unreachable ixok9: @@ -151464,7 +151693,7 @@ entry: %t118 = alloca i32 %t119 = alloca i32 store ptr %arg_s, ptr %t0 - store ptr @.str11329, ptr %t1 + store ptr @.str11340, ptr %t1 %t2 = load ptr, ptr %t0 %t3 = getelementptr inbounds %Cmp_Node, ptr %t2, i32 0, i32 3 %t4 = load ptr, ptr %t3 @@ -151533,7 +151762,7 @@ sc9: %t51 = load ptr, ptr %t0 %t52 = getelementptr inbounds %Cmp_Node, ptr %t51, i32 0, i32 11 %t53 = load ptr, ptr %t52 - %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str11330) + %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str11341) %t55 = icmp ne i32 %t54, 0 %t56 = zext i1 %t55 to i32 store i32 %t56, ptr %t43 @@ -151556,14 +151785,14 @@ then14: %t67 = load ptr, ptr %t0 %t68 = getelementptr inbounds %Cmp_Node, ptr %t67, i32 0, i32 1 %t69 = load ptr, ptr %t68 - %t70 = call ptr @lp_str_concat(ptr @.str11332, ptr %t69) - %t71 = call ptr @lp_str_concat(ptr %t70, ptr @.str11333) + %t70 = call ptr @lp_str_concat(ptr @.str11343, ptr %t69) + %t71 = call ptr @lp_str_concat(ptr %t70, ptr @.str11344) %t72 = load ptr, ptr %t0 %t73 = getelementptr inbounds %Cmp_Node, ptr %t72, i32 0, i32 3 %t74 = load ptr, ptr %t73 %t75 = call ptr @lp_str_concat(ptr %t71, ptr %t74) - %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str11334) - call void @fn_ck_err(ptr @.str11331, ptr %t66, ptr %t76) + %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str11345) + call void @fn_ck_err(ptr @.str11342, ptr %t66, ptr %t76) br label %ifend16 ifend16: %t77 = load ptr, ptr %t0 @@ -151718,7 +151947,7 @@ then2: %t25 = load ptr, ptr %t0 %t26 = getelementptr inbounds %Cmp_Node, ptr %t25, i32 0, i32 4 %t27 = load ptr, ptr %t26 - call void @fn_ck_write_check(ptr %t27, ptr @.str11335) + call void @fn_ck_write_check(ptr %t27, ptr @.str11346) br label %ifend4 ifend4: %t28 = load ptr, ptr %t0 @@ -151729,7 +151958,7 @@ ifend4: %t33 = load ptr, ptr %t0 %t34 = getelementptr inbounds %Cmp_Node, ptr %t33, i32 0, i32 1 %t35 = load ptr, ptr %t34 - %t36 = call i32 @lp_str_eq(ptr %t35, ptr @.str11336) + %t36 = call i32 @lp_str_eq(ptr %t35, ptr @.str11347) %t37 = icmp ne i32 %t36, 0 br i1 %t37, label %then5, label %ifend7 then5: @@ -151742,7 +151971,7 @@ ifend7: %t41 = load ptr, ptr %t40 %t42 = call ptr @fn_ck_expr(ptr %t41) store ptr %t42, ptr %t43 - store ptr @.str11337, ptr %t44 + store ptr @.str11348, ptr %t44 %t45 = load ptr, ptr %t0 %t46 = getelementptr inbounds %Cmp_Node, ptr %t45, i32 0, i32 4 %t47 = load ptr, ptr %t46 @@ -151776,14 +152005,14 @@ then11: %t68 = load ptr, ptr %t67 %t69 = getelementptr inbounds %Cmp_Node, ptr %t68, i32 0, i32 1 %t70 = load ptr, ptr %t69 - %t71 = call ptr @lp_str_concat(ptr @.str11338, ptr %t70) + %t71 = call ptr @lp_str_concat(ptr @.str11349, ptr %t70) store ptr %t71, ptr %t44 br label %ifend13 ifend13: %t72 = load ptr, ptr %t0 %t73 = getelementptr inbounds %Cmp_Node, ptr %t72, i32 0, i32 1 %t74 = load ptr, ptr %t73 - %t75 = call i32 @lp_str_eq(ptr %t74, ptr @.str11339) + %t75 = call i32 @lp_str_eq(ptr %t74, ptr @.str11350) %t76 = icmp ne i32 %t75, 0 br i1 %t76, label %then14, label %ifend16 then14: @@ -151865,7 +152094,7 @@ wbody1: br i1 %t23, label %ixok3, label %ixbad4 ixbad4: %t24 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str11340, i32 %t18, i32 %t22) + call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str11351, i32 %t18, i32 %t22) call void @exit(i32 1) unreachable ixok3: @@ -151900,7 +152129,7 @@ wbody6: br i1 %t48, label %ixok8, label %ixbad9 ixbad9: %t49 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str11341, i32 %t43, i32 %t47) + call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str11352, i32 %t43, i32 %t47) call void @exit(i32 1) unreachable ixok8: @@ -151941,7 +152170,7 @@ wbody14: br i1 %t77, label %ixok16, label %ixbad17 ixbad17: %t78 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t78, ptr @.fmt_bounds, ptr @.str11342, i32 %t72, i32 %t76) + call i32 (ptr, ptr, ...) @fprintf(ptr %t78, ptr @.fmt_bounds, ptr @.str11353, i32 %t72, i32 %t76) call void @exit(i32 1) unreachable ixok16: @@ -151966,7 +152195,7 @@ then18: br i1 %t94, label %ixok21, label %ixbad22 ixbad22: %t95 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t95, ptr @.fmt_bounds, ptr @.str11343, i32 %t89, i32 %t93) + call i32 (ptr, ptr, ...) @fprintf(ptr %t95, ptr @.fmt_bounds, ptr @.str11354, i32 %t89, i32 %t93) call void @exit(i32 1) unreachable ixok21: @@ -151974,7 +152203,7 @@ ixok21: %t97 = load ptr, ptr %t96 %t98 = getelementptr inbounds %Cmp_Node, ptr %t97, i32 0, i32 1 %t99 = load ptr, ptr %t98 - call void @fn_ck_bind(ptr %t99, ptr @.str11344) + call void @fn_ck_bind(ptr %t99, ptr @.str11355) br label %ifend20 ifend20: %t100 = load i32, ptr %t59 @@ -152123,7 +152352,7 @@ then18: %t69 = load ptr, ptr %t0 %t70 = getelementptr inbounds %Cmp_Node, ptr %t69, i32 0, i32 1 %t71 = load ptr, ptr %t70 - call void @fn_ck_bind(ptr %t71, ptr @.str11345) + call void @fn_ck_bind(ptr %t71, ptr @.str11356) %t72 = load ptr, ptr %t0 %t73 = getelementptr inbounds %Cmp_Node, ptr %t72, i32 0, i32 6 %t74 = load ptr, ptr %t73 @@ -152156,7 +152385,7 @@ ifend26: %t90 = call ptr @fn_ck_expr(ptr %t89) store ptr %t90, ptr %t91 %t92 = load ptr, ptr @g_ck_ret - %t93 = call i32 @lp_str_eq(ptr %t92, ptr @.str11346) + %t93 = call i32 @lp_str_eq(ptr %t92, ptr @.str11357) %t94 = icmp eq i32 %t93, 0 %t95 = zext i1 %t94 to i32 %t96 = icmp ne i32 %t95, 0 @@ -152167,7 +152396,7 @@ then27: %t99 = load ptr, ptr %t0 %t100 = getelementptr inbounds %Cmp_Node, ptr %t99, i32 0, i32 4 %t101 = load ptr, ptr %t100 - call void @fn_ck_give(ptr %t97, ptr %t98, ptr %t101, ptr @.str11347) + call void @fn_ck_give(ptr %t97, ptr %t98, ptr %t101, ptr @.str11358) br label %ifend29 ifend29: br label %ret @@ -152261,7 +152490,7 @@ then47: %t157 = load ptr, ptr %t0 %t158 = getelementptr inbounds %Cmp_Node, ptr %t157, i32 0, i32 4 %t159 = load ptr, ptr %t158 - call void @fn_ck_write_check(ptr %t159, ptr @.str11348) + call void @fn_ck_write_check(ptr %t159, ptr @.str11359) br label %ifend49 ifend49: %t160 = load ptr, ptr %t0 @@ -152291,7 +152520,7 @@ wcond53: %t177 = icmp ne i32 %t176, 0 br i1 %t177, label %wbody54, label %wend55 wbody54: - store ptr @.str11349, ptr %t178 + store ptr @.str11360, ptr %t178 %t179 = load ptr, ptr %t0 %t180 = getelementptr inbounds %Cmp_Node, ptr %t179, i32 0, i32 6 %t181 = load ptr, ptr %t180 @@ -152331,7 +152560,7 @@ sc62: br i1 %t208, label %ixok64, label %ixbad65 ixbad65: %t209 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t209, ptr @.fmt_bounds, ptr @.str11350, i32 %t203, i32 %t207) + call i32 (ptr, ptr, ...) @fprintf(ptr %t209, ptr @.fmt_bounds, ptr @.str11361, i32 %t203, i32 %t207) call void @exit(i32 1) unreachable ixok64: @@ -152382,7 +152611,7 @@ then66: br i1 %t243, label %ixok69, label %ixbad70 ixbad70: %t244 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t244, ptr @.fmt_bounds, ptr @.str11351, i32 %t238, i32 %t242) + call i32 (ptr, ptr, ...) @fprintf(ptr %t244, ptr @.fmt_bounds, ptr @.str11362, i32 %t238, i32 %t242) call void @exit(i32 1) unreachable ixok69: @@ -152410,7 +152639,7 @@ ifend58: br i1 %t259, label %ixok71, label %ixbad72 ixbad72: %t260 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t260, ptr @.fmt_bounds, ptr @.str11352, i32 %t254, i32 %t258) + call i32 (ptr, ptr, ...) @fprintf(ptr %t260, ptr @.fmt_bounds, ptr @.str11363, i32 %t254, i32 %t258) call void @exit(i32 1) unreachable ixok71: @@ -152474,7 +152703,7 @@ wbody1: br i1 %t17, label %ixok3, label %ixbad4 ixbad4: %t18 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str11353, i32 %t12, i32 %t16) + call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str11364, i32 %t12, i32 %t16) call void @exit(i32 1) unreachable ixok3: @@ -152501,7 +152730,7 @@ sc5: br i1 %t35, label %ixok7, label %ixbad8 ixbad8: %t36 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str11354, i32 %t30, i32 %t34) + call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str11365, i32 %t30, i32 %t34) call void @exit(i32 1) unreachable ixok7: @@ -152521,7 +152750,7 @@ ixok7: br i1 %t49, label %ixok9, label %ixbad10 ixbad10: %t50 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str11355, i32 %t44, i32 %t48) + call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str11366, i32 %t44, i32 %t48) call void @exit(i32 1) unreachable ixok9: @@ -152551,7 +152780,7 @@ then11: br i1 %t68, label %ixok14, label %ixbad15 ixbad15: %t69 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t69, ptr @.fmt_bounds, ptr @.str11357, i32 %t63, i32 %t67) + call i32 (ptr, ptr, ...) @fprintf(ptr %t69, ptr @.fmt_bounds, ptr @.str11368, i32 %t63, i32 %t67) call void @exit(i32 1) unreachable ixok14: @@ -152560,7 +152789,7 @@ ixok14: %t72 = load ptr, ptr %t0 %t73 = getelementptr inbounds %Cmp_Node, ptr %t72, i32 0, i32 1 %t74 = load ptr, ptr %t73 - %t75 = call ptr @lp_str_concat(ptr %t74, ptr @.str11358) + %t75 = call ptr @lp_str_concat(ptr %t74, ptr @.str11369) %t76 = load ptr, ptr %t0 %t77 = getelementptr inbounds %Cmp_Node, ptr %t76, i32 0, i32 7 %t78 = load ptr, ptr %t77 @@ -152573,7 +152802,7 @@ ixok14: br i1 %t84, label %ixok16, label %ixbad17 ixbad17: %t85 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str11359, i32 %t79, i32 %t83) + call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str11370, i32 %t79, i32 %t83) call void @exit(i32 1) unreachable ixok16: @@ -152582,7 +152811,7 @@ ixok16: %t88 = getelementptr inbounds %Cmp_Node, ptr %t87, i32 0, i32 1 %t89 = load ptr, ptr %t88 %t90 = call ptr @lp_str_concat(ptr %t75, ptr %t89) - call void @fn_ck_err(ptr @.str11356, ptr %t71, ptr %t90) + call void @fn_ck_err(ptr @.str11367, ptr %t71, ptr %t90) br label %ret ifend13: %t91 = load i32, ptr %t2 @@ -152631,7 +152860,7 @@ wbody1: br i1 %t22, label %ixok3, label %ixbad4 ixbad4: %t23 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str11360, i32 %t17, i32 %t21) + call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str11371, i32 %t17, i32 %t21) call void @exit(i32 1) unreachable ixok3: @@ -152659,7 +152888,7 @@ then5: br i1 %t41, label %ixok8, label %ixbad9 ixbad9: %t42 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str11361, i32 %t36, i32 %t40) + call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str11372, i32 %t36, i32 %t40) call void @exit(i32 1) unreachable ixok8: @@ -152683,7 +152912,7 @@ wend2: %t53 = icmp ne i32 %t52, 0 br i1 %t53, label %then10, label %ifend12 then10: - store ptr @.str11362, ptr @g_ck_ret + store ptr @.str11373, ptr @g_ck_ret br label %ifend12 ifend12: %t54 = load ptr, ptr %t0 @@ -152718,7 +152947,7 @@ then16: store i32 %t73, ptr @g_ck_unsafe br label %ifend18 ifend18: - store ptr @.str11363, ptr @g_ck_ret + store ptr @.str11374, ptr @g_ck_ret %t74 = load i32, ptr %t3 call void @fn_ck_pop(i32 %t74) call void @fn_mg_leave() @@ -152781,7 +153010,7 @@ wbody4: br i1 %t36, label %ixok6, label %ixbad7 ixbad7: %t37 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t37, ptr @.fmt_bounds, ptr @.str11364, i32 %t31, i32 %t35) + call i32 (ptr, ptr, ...) @fprintf(ptr %t37, ptr @.fmt_bounds, ptr @.str11375, i32 %t31, i32 %t35) call void @exit(i32 1) unreachable ixok6: @@ -152801,7 +153030,7 @@ ixok6: br i1 %t50, label %ixok8, label %ixbad9 ixbad9: %t51 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str11365, i32 %t45, i32 %t49) + call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str11376, i32 %t45, i32 %t49) call void @exit(i32 1) unreachable ixok8: @@ -152817,7 +153046,7 @@ ixok8: wend5: br label %ifend2 ifend2: - store ptr @.str11366, ptr @g_ck_ret + store ptr @.str11377, ptr @g_ck_ret %t58 = load ptr, ptr %t0 %t59 = getelementptr inbounds %Cmp_Node, ptr %t58, i32 0, i32 4 %t60 = load ptr, ptr %t59 @@ -152864,7 +153093,7 @@ wbody1: br i1 %t12, label %ixok3, label %ixbad4 ixbad4: %t13 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t13, ptr @.fmt_bounds, ptr @.str11367, i32 %t7, i32 %t11) + call i32 (ptr, ptr, ...) @fprintf(ptr %t13, ptr @.fmt_bounds, ptr @.str11378, i32 %t7, i32 %t11) call void @exit(i32 1) unreachable ixok3: @@ -152913,8 +153142,8 @@ then9: %t44 = load ptr, ptr %t16 %t45 = getelementptr inbounds %Cmp_Node, ptr %t44, i32 0, i32 1 %t46 = load ptr, ptr %t45 - %t47 = call ptr @lp_str_concat(ptr %t46, ptr @.str11369) - call void @fn_ck_err(ptr @.str11368, ptr %t43, ptr %t47) + %t47 = call ptr @lp_str_concat(ptr %t46, ptr @.str11380) + call void @fn_ck_err(ptr @.str11379, ptr %t43, ptr %t47) br label %ifend11 ifend11: %t48 = load i32, ptr %t0 @@ -152945,7 +153174,7 @@ wbody13: br i1 %t65, label %ixok15, label %ixbad16 ixbad16: %t66 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str11370, i32 %t60, i32 %t64) + call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str11381, i32 %t60, i32 %t64) call void @exit(i32 1) unreachable ixok15: @@ -152990,20 +153219,20 @@ then22: %t96 = load ptr, ptr %t69 %t97 = getelementptr inbounds %Cmp_Node, ptr %t96, i32 0, i32 1 %t98 = load ptr, ptr %t97 - %t99 = call ptr @lp_str_concat(ptr %t98, ptr @.str11372) + %t99 = call ptr @lp_str_concat(ptr %t98, ptr @.str11383) %t100 = load ptr, ptr %t69 %t101 = getelementptr inbounds %Cmp_Node, ptr %t100, i32 0, i32 9 %t102 = load ptr, ptr %t101 %t103 = call ptr @lp_str_concat(ptr %t99, ptr %t102) - %t104 = call ptr @lp_str_concat(ptr %t103, ptr @.str11373) - call void @fn_ck_err(ptr @.str11371, ptr %t95, ptr %t104) + %t104 = call ptr @lp_str_concat(ptr %t103, ptr @.str11384) + call void @fn_ck_err(ptr @.str11382, ptr %t95, ptr %t104) br label %ifend24 ifend24: br label %ifend19 ifend19: %t105 = load ptr, ptr %t69 %t106 = call ptr @fn_ck_type_kind(ptr %t105) - %t107 = call i32 @lp_str_eq(ptr %t106, ptr @.str11374) + %t107 = call i32 @lp_str_eq(ptr %t106, ptr @.str11385) %t108 = icmp eq i32 %t107, 0 %t109 = zext i1 %t108 to i32 %t110 = icmp ne i32 %t109, 0 @@ -153046,7 +153275,7 @@ wbody29: br i1 %t135, label %ixok33, label %ixbad34 ixbad34: %t136 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t136, ptr @.fmt_bounds, ptr @.str11375, i32 %t130, i32 %t134) + call i32 (ptr, ptr, ...) @fprintf(ptr %t136, ptr @.fmt_bounds, ptr @.str11386, i32 %t130, i32 %t134) call void @exit(i32 1) unreachable ixok33: @@ -153055,7 +153284,7 @@ ixok33: store ptr %t138, ptr %t139 %t141 = load ptr, ptr %t139 %t142 = call ptr @fn_ck_type_kind(ptr %t141) - %t143 = call i32 @lp_str_eq(ptr %t142, ptr @.str11376) + %t143 = call i32 @lp_str_eq(ptr %t142, ptr @.str11387) %t144 = icmp eq i32 %t143, 0 %t145 = zext i1 %t144 to i32 %t146 = icmp ne i32 %t145, 0 @@ -153083,20 +153312,20 @@ then37: %t160 = load ptr, ptr %t69 %t161 = getelementptr inbounds %Cmp_Node, ptr %t160, i32 0, i32 1 %t162 = load ptr, ptr %t161 - %t163 = call ptr @lp_str_concat(ptr %t162, ptr @.str11378) + %t163 = call ptr @lp_str_concat(ptr %t162, ptr @.str11389) %t164 = load ptr, ptr %t69 %t165 = call ptr @fn_ck_type_kind(ptr %t164) %t166 = call ptr @lp_str_concat(ptr %t163, ptr %t165) - %t167 = call ptr @lp_str_concat(ptr %t166, ptr @.str11379) + %t167 = call ptr @lp_str_concat(ptr %t166, ptr @.str11390) %t168 = load ptr, ptr %t69 %t169 = getelementptr inbounds %Cmp_Node, ptr %t168, i32 0, i32 9 %t170 = load ptr, ptr %t169 %t171 = call ptr @lp_str_concat(ptr %t167, ptr %t170) - %t172 = call ptr @lp_str_concat(ptr %t171, ptr @.str11380) + %t172 = call ptr @lp_str_concat(ptr %t171, ptr @.str11391) %t173 = load ptr, ptr %t139 %t174 = call ptr @fn_ck_type_kind(ptr %t173) %t175 = call ptr @lp_str_concat(ptr %t172, ptr %t174) - call void @fn_ck_err(ptr @.str11377, ptr %t159, ptr %t175) + call void @fn_ck_err(ptr @.str11388, ptr %t159, ptr %t175) br label %ifend39 ifend39: %t176 = load i32, ptr %t111 @@ -153130,7 +153359,7 @@ entry: %t6 = icmp ne i32 %t5, 0 br i1 %t6, label %then0, label %ifend2 then0: - store ptr @.str11381, ptr %retval + store ptr @.str11392, ptr %retval br label %ret ifend2: %t8 = load ptr, ptr %t0 @@ -153157,7 +153386,7 @@ scend4: %t23 = icmp ne i32 %t22, 0 br i1 %t23, label %then5, label %ifend7 then5: - store ptr @.str11382, ptr %retval + store ptr @.str11393, ptr %retval br label %ret ifend7: %t24 = load ptr, ptr %t0 @@ -153168,7 +153397,7 @@ ifend7: %t29 = icmp ne i32 %t28, 0 br i1 %t29, label %then8, label %ifend10 then8: - store ptr @.str11383, ptr %retval + store ptr @.str11394, ptr %retval br label %ret ifend10: %t30 = load ptr, ptr %t0 @@ -153179,7 +153408,7 @@ ifend10: %t35 = icmp ne i32 %t34, 0 br i1 %t35, label %then11, label %ifend13 then11: - store ptr @.str11384, ptr %retval + store ptr @.str11395, ptr %retval br label %ret ifend13: %t36 = load ptr, ptr %t0 @@ -153190,10 +153419,10 @@ ifend13: %t41 = icmp ne i32 %t40, 0 br i1 %t41, label %then14, label %ifend16 then14: - store ptr @.str11385, ptr %retval + store ptr @.str11396, ptr %retval br label %ret ifend16: - store ptr @.str11386, ptr %retval + store ptr @.str11397, ptr %retval br label %ret ret: %t42 = load ptr, ptr %retval @@ -153227,7 +153456,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str11387, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str11398, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -153244,7 +153473,7 @@ ixok3: br i1 %t25, label %ixok5, label %ixbad6 ixbad6: %t26 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str11388, i32 %t20, i32 %t24) + call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str11399, i32 %t20, i32 %t24) call void @exit(i32 1) unreachable ixok5: @@ -153346,7 +153575,7 @@ wbody4: br i1 %t38, label %ixok8, label %ixbad9 ixbad9: %t39 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str11389, i32 %t33, i32 %t37) + call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str11400, i32 %t33, i32 %t37) call void @exit(i32 1) unreachable ixok8: @@ -153386,7 +153615,7 @@ wbody11: br i1 %t64, label %ixok13, label %ixbad14 ixbad14: %t65 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t65, ptr @.fmt_bounds, ptr @.str11390, i32 %t59, i32 %t63) + call i32 (ptr, ptr, ...) @fprintf(ptr %t65, ptr @.fmt_bounds, ptr @.str11401, i32 %t59, i32 %t63) call void @exit(i32 1) unreachable ixok13: @@ -153444,7 +153673,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11391, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11402, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -153679,7 +153908,7 @@ wbody35: br i1 %t166, label %ixok37, label %ixbad38 ixbad38: %t167 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t167, ptr @.fmt_bounds, ptr @.str11392, i32 %t161, i32 %t165) + call i32 (ptr, ptr, ...) @fprintf(ptr %t167, ptr @.fmt_bounds, ptr @.str11403, i32 %t161, i32 %t165) call void @exit(i32 1) unreachable ixok37: @@ -153729,7 +153958,7 @@ wbody43: br i1 %t193, label %ixok45, label %ixbad46 ixbad46: %t194 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t194, ptr @.fmt_bounds, ptr @.str11393, i32 %t188, i32 %t192) + call i32 (ptr, ptr, ...) @fprintf(ptr %t194, ptr @.fmt_bounds, ptr @.str11404, i32 %t188, i32 %t192) call void @exit(i32 1) unreachable ixok45: @@ -153748,7 +153977,7 @@ ixok45: br i1 %t205, label %ixok47, label %ixbad48 ixbad48: %t206 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t206, ptr @.fmt_bounds, ptr @.str11394, i32 %t200, i32 %t204) + call i32 (ptr, ptr, ...) @fprintf(ptr %t206, ptr @.fmt_bounds, ptr @.str11405, i32 %t200, i32 %t204) call void @exit(i32 1) unreachable ixok47: @@ -153786,7 +154015,7 @@ wbody50: br i1 %t226, label %ixok52, label %ixbad53 ixbad53: %t227 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t227, ptr @.fmt_bounds, ptr @.str11395, i32 %t221, i32 %t225) + call i32 (ptr, ptr, ...) @fprintf(ptr %t227, ptr @.fmt_bounds, ptr @.str11406, i32 %t221, i32 %t225) call void @exit(i32 1) unreachable ixok52: @@ -153803,7 +154032,7 @@ ixok52: br i1 %t236, label %ixok54, label %ixbad55 ixbad55: %t237 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t237, ptr @.fmt_bounds, ptr @.str11396, i32 %t231, i32 %t235) + call i32 (ptr, ptr, ...) @fprintf(ptr %t237, ptr @.fmt_bounds, ptr @.str11407, i32 %t231, i32 %t235) call void @exit(i32 1) unreachable ixok54: @@ -153855,7 +154084,7 @@ scend59: then60: %t266 = load i32, ptr @g_ck_errors %t267 = call ptr @fn_itoa(i32 %t266) - %t268 = call ptr @lp_str_concat(ptr %t267, ptr @.str11397) + %t268 = call ptr @lp_str_concat(ptr %t267, ptr @.str11408) store ptr %t268, ptr %t269 %t270 = load ptr, ptr @__stderrp %t271 = load ptr, ptr %t269 @@ -153903,7 +154132,7 @@ wbody1: br i1 %t16, label %ixok3, label %ixbad4 ixbad4: %t17 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11398, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11409, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok3: @@ -153926,7 +154155,7 @@ then5: br i1 %t31, label %ixok8, label %ixbad9 ixbad9: %t32 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str11399, i32 %t26, i32 %t30) + call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str11410, i32 %t26, i32 %t30) call void @exit(i32 1) unreachable ixok8: @@ -153988,7 +154217,7 @@ wbody1: br i1 %t22, label %ixok3, label %ixbad4 ixbad4: %t23 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str11400, i32 %t17, i32 %t21) + call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str11411, i32 %t17, i32 %t21) call void @exit(i32 1) unreachable ixok3: @@ -154193,7 +154422,7 @@ wbody1: br i1 %t16, label %ixok3, label %ixbad4 ixbad4: %t17 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11401, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11412, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok3: @@ -154268,7 +154497,7 @@ then3: br i1 %t21, label %ixok6, label %ixbad7 ixbad7: %t22 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str11402, i32 %t16, i32 %t20) + call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str11413, i32 %t16, i32 %t20) call void @exit(i32 1) unreachable ixok6: @@ -154287,7 +154516,7 @@ then8: %t30 = load ptr, ptr %t1 %t31 = load ptr, ptr %t2 %t32 = call ptr @fn_gen_subst(ptr %t29, ptr %t30, ptr %t31) - %t33 = call ptr @lp_str_concat(ptr @.str11403, ptr %t32) + %t33 = call ptr @lp_str_concat(ptr @.str11414, ptr %t32) store ptr %t33, ptr %retval br label %ret ifend10: @@ -154299,7 +154528,7 @@ then11: %t37 = load ptr, ptr %t0 %t38 = call ptr @fn_fn_ty_params(ptr %t37) store ptr %t38, ptr %t39 - store ptr @.str11404, ptr %t40 + store ptr @.str11415, ptr %t40 store i32 0, ptr %t41 br label %wcond14 wcond14: @@ -154319,7 +154548,7 @@ wbody15: br i1 %t52, label %then17, label %ifend19 then17: %t53 = load ptr, ptr %t40 - %t54 = call ptr @lp_str_concat(ptr %t53, ptr @.str11405) + %t54 = call ptr @lp_str_concat(ptr %t53, ptr @.str11416) store ptr %t54, ptr %t40 br label %ifend19 ifend19: @@ -154334,7 +154563,7 @@ ifend19: br i1 %t62, label %ixok20, label %ixbad21 ixbad21: %t63 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t63, ptr @.fmt_bounds, ptr @.str11406, i32 %t57, i32 %t61) + call i32 (ptr, ptr, ...) @fprintf(ptr %t63, ptr @.fmt_bounds, ptr @.str11417, i32 %t57, i32 %t61) call void @exit(i32 1) unreachable ixok20: @@ -154351,7 +154580,7 @@ ixok20: br label %wcond14 wend16: %t72 = load ptr, ptr %t40 - %t73 = call ptr @lp_str_concat(ptr %t72, ptr @.str11407) + %t73 = call ptr @lp_str_concat(ptr %t72, ptr @.str11418) %t74 = load ptr, ptr %t0 %t75 = call ptr @fn_fn_ty_ret(ptr %t74) %t76 = load ptr, ptr %t1 @@ -154382,7 +154611,7 @@ sc22: br i1 %t95, label %ixok24, label %ixbad25 ixbad25: %t96 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t96, ptr @.fmt_bounds, ptr @.str11408, i32 %t90, i32 %t94) + call i32 (ptr, ptr, ...) @fprintf(ptr %t96, ptr @.fmt_bounds, ptr @.str11419, i32 %t90, i32 %t94) call void @exit(i32 1) unreachable ixok24: @@ -154409,7 +154638,7 @@ then26: br i1 %t111, label %ixok29, label %ixbad30 ixbad30: %t112 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t112, ptr @.fmt_bounds, ptr @.str11409, i32 %t106, i32 %t110) + call i32 (ptr, ptr, ...) @fprintf(ptr %t112, ptr @.fmt_bounds, ptr @.str11420, i32 %t106, i32 %t110) call void @exit(i32 1) unreachable ixok29: @@ -154450,7 +154679,7 @@ wbody32: br i1 %t139, label %ixok34, label %ixbad35 ixbad35: %t140 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t140, ptr @.fmt_bounds, ptr @.str11410, i32 %t134, i32 %t138) + call i32 (ptr, ptr, ...) @fprintf(ptr %t140, ptr @.fmt_bounds, ptr @.str11421, i32 %t134, i32 %t138) call void @exit(i32 1) unreachable ixok34: @@ -154500,7 +154729,7 @@ wend33: br i1 %t172, label %ixok38, label %ixbad39 ixbad39: %t173 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t173, ptr @.fmt_bounds, ptr @.str11411, i32 %t167, i32 %t171) + call i32 (ptr, ptr, ...) @fprintf(ptr %t173, ptr @.fmt_bounds, ptr @.str11422, i32 %t167, i32 %t171) call void @exit(i32 1) unreachable ixok38: @@ -154734,7 +154963,7 @@ wbody7: br i1 %t154, label %ixok9, label %ixbad10 ixbad10: %t155 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t155, ptr @.fmt_bounds, ptr @.str11412, i32 %t149, i32 %t153) + call i32 (ptr, ptr, ...) @fprintf(ptr %t155, ptr @.fmt_bounds, ptr @.str11423, i32 %t149, i32 %t153) call void @exit(i32 1) unreachable ixok9: @@ -154815,7 +155044,7 @@ sc0: br i1 %t16, label %ixok2, label %ixbad3 ixbad3: %t17 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11413, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11424, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok2: @@ -154846,7 +155075,7 @@ ifend6: br i1 %t33, label %ixok7, label %ixbad8 ixbad8: %t34 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str11414, i32 %t28, i32 %t32) + call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str11425, i32 %t28, i32 %t32) call void @exit(i32 1) unreachable ixok7: @@ -154873,7 +155102,7 @@ ifend11: br i1 %t49, label %ixok12, label %ixbad13 ixbad13: %t50 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str11415, i32 %t44, i32 %t48) + call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str11426, i32 %t44, i32 %t48) call void @exit(i32 1) unreachable ixok12: @@ -154954,7 +155183,7 @@ then14: br i1 %t104, label %ixok17, label %ixbad18 ixbad18: %t105 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t105, ptr @.fmt_bounds, ptr @.str11416, i32 %t99, i32 %t103) + call i32 (ptr, ptr, ...) @fprintf(ptr %t105, ptr @.fmt_bounds, ptr @.str11427, i32 %t99, i32 %t103) call void @exit(i32 1) unreachable ixok17: @@ -154973,7 +155202,7 @@ ixok17: br i1 %t116, label %ixok19, label %ixbad20 ixbad20: %t117 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t117, ptr @.fmt_bounds, ptr @.str11417, i32 %t111, i32 %t115) + call i32 (ptr, ptr, ...) @fprintf(ptr %t117, ptr @.fmt_bounds, ptr @.str11428, i32 %t111, i32 %t115) call void @exit(i32 1) unreachable ixok19: @@ -154984,23 +155213,23 @@ ixok19: %t121 = load ptr, ptr %t38 %t122 = getelementptr inbounds %Cmp_Node, ptr %t121, i32 0, i32 1 %t123 = load ptr, ptr %t122 - %t124 = call ptr @lp_str_concat(ptr %t123, ptr @.str11419) + %t124 = call ptr @lp_str_concat(ptr %t123, ptr @.str11430) %t125 = load ptr, ptr %t59 %t126 = getelementptr inbounds %LSlice, ptr %t125, i32 0, i32 1 %t127 = load i32, ptr %t126 %t128 = call ptr @fn_itoa(i32 %t127) %t129 = call ptr @lp_str_concat(ptr %t124, ptr %t128) - %t130 = call ptr @lp_str_concat(ptr %t129, ptr @.str11420) + %t130 = call ptr @lp_str_concat(ptr %t129, ptr @.str11431) %t131 = load ptr, ptr %t0 %t132 = call ptr @fn_gen_show(ptr %t131) %t133 = call ptr @lp_str_concat(ptr %t130, ptr %t132) - %t134 = call ptr @lp_str_concat(ptr %t133, ptr @.str11421) + %t134 = call ptr @lp_str_concat(ptr %t133, ptr @.str11432) %t135 = load ptr, ptr %t54 %t136 = getelementptr inbounds %LSlice, ptr %t135, i32 0, i32 1 %t137 = load i32, ptr %t136 %t138 = call ptr @fn_itoa(i32 %t137) %t139 = call ptr @lp_str_concat(ptr %t134, ptr %t138) - call void @fn_ck_err(ptr @.str11418, ptr %t120, ptr %t139) + call void @fn_ck_err(ptr @.str11429, ptr %t120, ptr %t139) store ptr null, ptr %retval br label %ret ifend16: @@ -155103,7 +155332,7 @@ scend1: br i1 %t16, label %scend3, label %sc2 sc2: %t18 = load ptr, ptr %t1 - %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str11422) + %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str11433) %t20 = icmp ne i32 %t19, 0 %t21 = zext i1 %t20 to i32 store i32 %t21, ptr %t4 @@ -155135,7 +155364,7 @@ then7: br i1 %t38, label %ixok10, label %ixbad11 ixbad11: %t39 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str11423, i32 %t33, i32 %t37) + call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str11434, i32 %t33, i32 %t37) call void @exit(i32 1) unreachable ixok10: @@ -155156,7 +155385,7 @@ then12: br i1 %t51, label %ixok15, label %ixbad16 ixbad16: %t52 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t52, ptr @.fmt_bounds, ptr @.str11424, i32 %t46, i32 %t50) + call i32 (ptr, ptr, ...) @fprintf(ptr %t52, ptr @.fmt_bounds, ptr @.str11435, i32 %t46, i32 %t50) call void @exit(i32 1) unreachable ixok15: @@ -155257,7 +155486,7 @@ wbody28: br i1 %t115, label %ixok32, label %ixbad33 ixbad33: %t116 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t116, ptr @.fmt_bounds, ptr @.str11425, i32 %t110, i32 %t114) + call i32 (ptr, ptr, ...) @fprintf(ptr %t116, ptr @.fmt_bounds, ptr @.str11436, i32 %t110, i32 %t114) call void @exit(i32 1) unreachable ixok32: @@ -155273,7 +155502,7 @@ ixok32: br i1 %t125, label %ixok34, label %ixbad35 ixbad35: %t126 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t126, ptr @.fmt_bounds, ptr @.str11426, i32 %t120, i32 %t124) + call i32 (ptr, ptr, ...) @fprintf(ptr %t126, ptr @.fmt_bounds, ptr @.str11437, i32 %t120, i32 %t124) call void @exit(i32 1) unreachable ixok34: @@ -155334,7 +155563,7 @@ sc38: br i1 %t166, label %ixok40, label %ixbad41 ixbad41: %t167 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t167, ptr @.fmt_bounds, ptr @.str11427, i32 %t161, i32 %t165) + call i32 (ptr, ptr, ...) @fprintf(ptr %t167, ptr @.fmt_bounds, ptr @.str11438, i32 %t161, i32 %t165) call void @exit(i32 1) unreachable ixok40: @@ -155350,7 +155579,7 @@ ixok40: br i1 %t176, label %ixok42, label %ixbad43 ixbad43: %t177 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t177, ptr @.fmt_bounds, ptr @.str11428, i32 %t171, i32 %t175) + call i32 (ptr, ptr, ...) @fprintf(ptr %t177, ptr @.fmt_bounds, ptr @.str11439, i32 %t171, i32 %t175) call void @exit(i32 1) unreachable ixok42: @@ -155376,7 +155605,7 @@ then44: br i1 %t191, label %ixok47, label %ixbad48 ixbad48: %t192 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t192, ptr @.fmt_bounds, ptr @.str11429, i32 %t186, i32 %t190) + call i32 (ptr, ptr, ...) @fprintf(ptr %t192, ptr @.fmt_bounds, ptr @.str11440, i32 %t186, i32 %t190) call void @exit(i32 1) unreachable ixok47: @@ -155394,7 +155623,7 @@ ixok47: br i1 %t203, label %ixok49, label %ixbad50 ixbad50: %t204 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t204, ptr @.fmt_bounds, ptr @.str11430, i32 %t198, i32 %t202) + call i32 (ptr, ptr, ...) @fprintf(ptr %t204, ptr @.fmt_bounds, ptr @.str11441, i32 %t198, i32 %t202) call void @exit(i32 1) unreachable ixok49: @@ -155441,7 +155670,7 @@ wbody52: br i1 %t235, label %ixok56, label %ixbad57 ixbad57: %t236 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t236, ptr @.fmt_bounds, ptr @.str11431, i32 %t230, i32 %t234) + call i32 (ptr, ptr, ...) @fprintf(ptr %t236, ptr @.fmt_bounds, ptr @.str11442, i32 %t230, i32 %t234) call void @exit(i32 1) unreachable ixok56: @@ -155457,7 +155686,7 @@ ixok56: br i1 %t245, label %ixok58, label %ixbad59 ixbad59: %t246 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t246, ptr @.fmt_bounds, ptr @.str11432, i32 %t240, i32 %t244) + call i32 (ptr, ptr, ...) @fprintf(ptr %t246, ptr @.fmt_bounds, ptr @.str11443, i32 %t240, i32 %t244) call void @exit(i32 1) unreachable ixok58: @@ -155493,7 +155722,7 @@ entry: %t4 = icmp ne i32 %t3, 0 br i1 %t4, label %then0, label %ifend2 then0: - store ptr @.str11433, ptr %retval + store ptr @.str11444, ptr %retval br label %ret ifend2: %t5 = load ptr, ptr %t0 @@ -155504,7 +155733,7 @@ then3: %t8 = load ptr, ptr %t0 %t9 = call ptr @fn_slice_elem(ptr %t8) %t10 = call ptr @fn_gen_show(ptr %t9) - %t11 = call ptr @lp_str_concat(ptr @.str11434, ptr %t10) + %t11 = call ptr @lp_str_concat(ptr @.str11445, ptr %t10) store ptr %t11, ptr %retval br label %ret ifend5: @@ -155531,7 +155760,7 @@ ifend8: br i1 %t26, label %ixok9, label %ixbad10 ixbad10: %t27 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t27, ptr @.fmt_bounds, ptr @.str11435, i32 %t21, i32 %t25) + call i32 (ptr, ptr, ...) @fprintf(ptr %t27, ptr @.fmt_bounds, ptr @.str11446, i32 %t21, i32 %t25) call void @exit(i32 1) unreachable ixok9: @@ -155549,13 +155778,13 @@ ixok9: br i1 %t39, label %ixok11, label %ixbad12 ixbad12: %t40 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11436, i32 %t34, i32 %t38) + call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11447, i32 %t34, i32 %t38) call void @exit(i32 1) unreachable ixok11: %t41 = getelementptr inbounds ptr, ptr %t36, i32 %t34 %t42 = load ptr, ptr %t41 - %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str11437) + %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str11448) store ptr %t43, ptr %t32 store i32 0, ptr %t44 br label %wcond13 @@ -155576,7 +155805,7 @@ wbody14: br i1 %t55, label %then16, label %ifend18 then16: %t56 = load ptr, ptr %t32 - %t57 = call ptr @lp_str_concat(ptr %t56, ptr @.str11438) + %t57 = call ptr @lp_str_concat(ptr %t56, ptr @.str11449) store ptr %t57, ptr %t32 br label %ifend18 ifend18: @@ -155591,7 +155820,7 @@ ifend18: br i1 %t65, label %ixok19, label %ixbad20 ixbad20: %t66 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str11439, i32 %t60, i32 %t64) + call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str11450, i32 %t60, i32 %t64) call void @exit(i32 1) unreachable ixok19: @@ -155606,7 +155835,7 @@ ixok19: br label %wcond13 wend15: %t73 = load ptr, ptr %t32 - %t74 = call ptr @lp_str_concat(ptr %t73, ptr @.str11440) + %t74 = call ptr @lp_str_concat(ptr %t73, ptr @.str11451) store ptr %t74, ptr %retval br label %ret ret: @@ -155638,7 +155867,7 @@ wcond0: br i1 %t11, label %wbody1, label %wend2 wbody1: %t12 = load ptr, ptr %t2 - %t13 = call ptr @lp_str_concat(ptr %t12, ptr @.str11441) + %t13 = call ptr @lp_str_concat(ptr %t12, ptr @.str11452) %t14 = load ptr, ptr %t1 %t15 = load i32, ptr %t4 %t16 = getelementptr inbounds %LSlice, ptr %t14, i32 0, i32 0 @@ -155649,7 +155878,7 @@ wbody1: br i1 %t20, label %ixok3, label %ixbad4 ixbad4: %t21 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11442, i32 %t15, i32 %t19) + call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11453, i32 %t15, i32 %t19) call void @exit(i32 1) unreachable ixok3: @@ -155879,7 +156108,7 @@ wbody6: br i1 %t56, label %ixok8, label %ixbad9 ixbad9: %t57 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t57, ptr @.fmt_bounds, ptr @.str11443, i32 %t51, i32 %t55) + call i32 (ptr, ptr, ...) @fprintf(ptr %t57, ptr @.fmt_bounds, ptr @.str11454, i32 %t51, i32 %t55) call void @exit(i32 1) unreachable ixok8: @@ -155916,7 +156145,7 @@ then13: br i1 %t83, label %ixok16, label %ixbad17 ixbad17: %t84 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str11444, i32 %t78, i32 %t82) + call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str11455, i32 %t78, i32 %t82) call void @exit(i32 1) unreachable ixok16: @@ -155948,7 +156177,7 @@ then18: br i1 %t102, label %ixok21, label %ixbad22 ixbad22: %t103 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t103, ptr @.fmt_bounds, ptr @.str11445, i32 %t97, i32 %t101) + call i32 (ptr, ptr, ...) @fprintf(ptr %t103, ptr @.fmt_bounds, ptr @.str11456, i32 %t97, i32 %t101) call void @exit(i32 1) unreachable ixok21: @@ -156049,13 +156278,13 @@ entry: then0: %t42 = load ptr, ptr %t0 %t43 = load ptr, ptr %t1 - %t44 = call ptr @lp_str_concat(ptr %t43, ptr @.str11447) + %t44 = call ptr @lp_str_concat(ptr %t43, ptr @.str11458) %t45 = load ptr, ptr %t27 %t46 = getelementptr inbounds %LSlice, ptr %t45, i32 0, i32 1 %t47 = load i32, ptr %t46 %t48 = call ptr @fn_itoa(i32 %t47) %t49 = call ptr @lp_str_concat(ptr %t44, ptr %t48) - %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str11448) + %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str11459) %t51 = load ptr, ptr %t0 %t52 = getelementptr inbounds %Cmp_Node, ptr %t51, i32 0, i32 7 %t53 = load ptr, ptr %t52 @@ -156063,7 +156292,7 @@ then0: %t55 = load i32, ptr %t54 %t56 = call ptr @fn_itoa(i32 %t55) %t57 = call ptr @lp_str_concat(ptr %t50, ptr %t56) - call void @fn_ck_err(ptr @.str11446, ptr %t42, ptr %t57) + call void @fn_ck_err(ptr @.str11457, ptr %t42, ptr %t57) br label %ifend2 ifend2: %t58 = load ptr, ptr %t0 @@ -156146,7 +156375,7 @@ wcond8: %t111 = icmp ne i32 %t110, 0 br i1 %t111, label %wbody9, label %wend10 wbody9: - store ptr @.str11449, ptr %t112 + store ptr @.str11460, ptr %t112 %t113 = load ptr, ptr %t61 %t114 = load i32, ptr %t76 %t115 = getelementptr inbounds %LSlice, ptr %t113, i32 0, i32 0 @@ -156157,7 +156386,7 @@ wbody9: br i1 %t119, label %ixok11, label %ixbad12 ixbad12: %t120 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t120, ptr @.fmt_bounds, ptr @.str11450, i32 %t114, i32 %t118) + call i32 (ptr, ptr, ...) @fprintf(ptr %t120, ptr @.fmt_bounds, ptr @.str11461, i32 %t114, i32 %t118) call void @exit(i32 1) unreachable ixok11: @@ -156178,7 +156407,7 @@ then13: br i1 %t132, label %ixok16, label %ixbad17 ixbad17: %t133 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t133, ptr @.fmt_bounds, ptr @.str11451, i32 %t127, i32 %t131) + call i32 (ptr, ptr, ...) @fprintf(ptr %t133, ptr @.fmt_bounds, ptr @.str11462, i32 %t127, i32 %t131) call void @exit(i32 1) unreachable ixok16: @@ -156226,7 +156455,7 @@ put19: br i1 %t164, label %ixok20, label %ixbad21 ixbad21: %t165 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t165, ptr @.fmt_bounds, ptr @.str11452, i32 %t159, i32 %t163) + call i32 (ptr, ptr, ...) @fprintf(ptr %t165, ptr @.fmt_bounds, ptr @.str11463, i32 %t159, i32 %t163) call void @exit(i32 1) unreachable ixok20: @@ -156249,7 +156478,7 @@ sc22: br i1 %t178, label %ixok24, label %ixbad25 ixbad25: %t179 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t179, ptr @.fmt_bounds, ptr @.str11453, i32 %t173, i32 %t177) + call i32 (ptr, ptr, ...) @fprintf(ptr %t179, ptr @.fmt_bounds, ptr @.str11464, i32 %t173, i32 %t177) call void @exit(i32 1) unreachable ixok24: @@ -156277,7 +156506,7 @@ then26: br i1 %t195, label %ixok29, label %ixbad30 ixbad30: %t196 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t196, ptr @.fmt_bounds, ptr @.str11454, i32 %t190, i32 %t194) + call i32 (ptr, ptr, ...) @fprintf(ptr %t196, ptr @.fmt_bounds, ptr @.str11465, i32 %t190, i32 %t194) call void @exit(i32 1) unreachable ixok29: @@ -156323,7 +156552,7 @@ wbody32: br i1 %t224, label %ixok34, label %ixbad35 ixbad35: %t225 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t225, ptr @.fmt_bounds, ptr @.str11455, i32 %t219, i32 %t223) + call i32 (ptr, ptr, ...) @fprintf(ptr %t225, ptr @.fmt_bounds, ptr @.str11466, i32 %t219, i32 %t223) call void @exit(i32 1) unreachable ixok34: @@ -156346,7 +156575,7 @@ sc36: br i1 %t238, label %ixok38, label %ixbad39 ixbad39: %t239 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t239, ptr @.fmt_bounds, ptr @.str11456, i32 %t233, i32 %t237) + call i32 (ptr, ptr, ...) @fprintf(ptr %t239, ptr @.fmt_bounds, ptr @.str11467, i32 %t233, i32 %t237) call void @exit(i32 1) unreachable ixok38: @@ -156372,7 +156601,7 @@ then40: br i1 %t253, label %ixok43, label %ixbad44 ixbad44: %t254 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t254, ptr @.fmt_bounds, ptr @.str11457, i32 %t248, i32 %t252) + call i32 (ptr, ptr, ...) @fprintf(ptr %t254, ptr @.fmt_bounds, ptr @.str11468, i32 %t248, i32 %t252) call void @exit(i32 1) unreachable ixok43: @@ -156388,7 +156617,7 @@ ixok43: br i1 %t263, label %ixok45, label %ixbad46 ixbad46: %t264 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t264, ptr @.fmt_bounds, ptr @.str11458, i32 %t258, i32 %t262) + call i32 (ptr, ptr, ...) @fprintf(ptr %t264, ptr @.fmt_bounds, ptr @.str11469, i32 %t258, i32 %t262) call void @exit(i32 1) unreachable ixok45: @@ -156426,7 +156655,7 @@ wbody48: br i1 %t285, label %ixok50, label %ixbad51 ixbad51: %t286 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t286, ptr @.fmt_bounds, ptr @.str11459, i32 %t280, i32 %t284) + call i32 (ptr, ptr, ...) @fprintf(ptr %t286, ptr @.fmt_bounds, ptr @.str11470, i32 %t280, i32 %t284) call void @exit(i32 1) unreachable ixok50: @@ -156448,19 +156677,19 @@ then52: br i1 %t299, label %ixok55, label %ixbad56 ixbad56: %t300 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t300, ptr @.fmt_bounds, ptr @.str11462, i32 %t294, i32 %t298) + call i32 (ptr, ptr, ...) @fprintf(ptr %t300, ptr @.fmt_bounds, ptr @.str11473, i32 %t294, i32 %t298) call void @exit(i32 1) unreachable ixok55: %t301 = getelementptr inbounds ptr, ptr %t296, i32 %t294 %t302 = load ptr, ptr %t301 - %t303 = call ptr @lp_str_concat(ptr @.str11461, ptr %t302) - %t304 = call ptr @lp_str_concat(ptr %t303, ptr @.str11463) + %t303 = call ptr @lp_str_concat(ptr @.str11472, ptr %t302) + %t304 = call ptr @lp_str_concat(ptr %t303, ptr @.str11474) %t305 = load ptr, ptr %t1 %t306 = call ptr @lp_str_concat(ptr %t304, ptr %t305) - %t307 = call ptr @lp_str_concat(ptr %t306, ptr @.str11464) - call void @fn_ck_err(ptr @.str11460, ptr %t292, ptr %t307) - store ptr @.str11465, ptr %retval + %t307 = call ptr @lp_str_concat(ptr %t306, ptr @.str11475) + call void @fn_ck_err(ptr @.str11471, ptr %t292, ptr %t307) + store ptr @.str11476, ptr %retval br label %ret ifend54: %t308 = load i32, ptr %t271 @@ -156529,7 +156758,7 @@ wbody58: br i1 %t355, label %ixok60, label %ixbad61 ixbad61: %t356 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t356, ptr @.fmt_bounds, ptr @.str11466, i32 %t350, i32 %t354) + call i32 (ptr, ptr, ...) @fprintf(ptr %t356, ptr @.fmt_bounds, ptr @.str11477, i32 %t350, i32 %t354) call void @exit(i32 1) unreachable ixok60: @@ -156550,7 +156779,7 @@ then62: br i1 %t368, label %ixok65, label %ixbad66 ixbad66: %t369 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t369, ptr @.fmt_bounds, ptr @.str11467, i32 %t363, i32 %t367) + call i32 (ptr, ptr, ...) @fprintf(ptr %t369, ptr @.fmt_bounds, ptr @.str11478, i32 %t363, i32 %t367) call void @exit(i32 1) unreachable ixok65: @@ -156566,7 +156795,7 @@ ixok65: br i1 %t378, label %ixok67, label %ixbad68 ixbad68: %t379 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t379, ptr @.fmt_bounds, ptr @.str11468, i32 %t373, i32 %t377) + call i32 (ptr, ptr, ...) @fprintf(ptr %t379, ptr @.fmt_bounds, ptr @.str11479, i32 %t373, i32 %t377) call void @exit(i32 1) unreachable ixok67: @@ -156582,7 +156811,7 @@ ixok67: br i1 %t388, label %ixok69, label %ixbad70 ixbad70: %t389 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t389, ptr @.fmt_bounds, ptr @.str11469, i32 %t383, i32 %t387) + call i32 (ptr, ptr, ...) @fprintf(ptr %t389, ptr @.fmt_bounds, ptr @.str11480, i32 %t383, i32 %t387) call void @exit(i32 1) unreachable ixok69: @@ -156591,8 +156820,8 @@ ixok69: %t392 = load i32, ptr %t341 %t393 = add i32 %t392, 1 %t394 = call ptr @fn_itoa(i32 %t393) - %t395 = call ptr @lp_str_concat(ptr @.str11470, ptr %t394) - %t396 = call ptr @lp_str_concat(ptr %t395, ptr @.str11471) + %t395 = call ptr @lp_str_concat(ptr @.str11481, ptr %t394) + %t396 = call ptr @lp_str_concat(ptr %t395, ptr @.str11482) %t397 = load ptr, ptr %t1 %t398 = call ptr @lp_str_concat(ptr %t396, ptr %t397) call void @fn_ck_give(ptr %t371, ptr %t381, ptr %t391, ptr %t398) @@ -156644,7 +156873,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11472, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11483, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -156678,7 +156907,7 @@ wbody6: br i1 %t35, label %ixok8, label %ixbad9 ixbad9: %t36 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str11473, i32 %t30, i32 %t34) + call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str11484, i32 %t30, i32 %t34) call void @exit(i32 1) unreachable ixok8: @@ -156702,7 +156931,7 @@ sc10: br i1 %t50, label %ixok12, label %ixbad13 ixbad13: %t51 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str11474, i32 %t45, i32 %t49) + call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str11485, i32 %t45, i32 %t49) call void @exit(i32 1) unreachable ixok12: @@ -156730,7 +156959,7 @@ then14: br i1 %t67, label %ixok17, label %ixbad18 ixbad18: %t68 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t68, ptr @.fmt_bounds, ptr @.str11475, i32 %t62, i32 %t66) + call i32 (ptr, ptr, ...) @fprintf(ptr %t68, ptr @.fmt_bounds, ptr @.str11486, i32 %t62, i32 %t66) call void @exit(i32 1) unreachable ixok17: @@ -156806,7 +157035,7 @@ wbody29: br i1 %t115, label %ixok31, label %ixbad32 ixbad32: %t116 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t116, ptr @.fmt_bounds, ptr @.str11476, i32 %t110, i32 %t114) + call i32 (ptr, ptr, ...) @fprintf(ptr %t116, ptr @.fmt_bounds, ptr @.str11487, i32 %t110, i32 %t114) call void @exit(i32 1) unreachable ixok31: @@ -156856,7 +157085,7 @@ ifend27: br i1 %t146, label %ixok35, label %ixbad36 ixbad36: %t147 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t147, ptr @.fmt_bounds, ptr @.str11477, i32 %t141, i32 %t145) + call i32 (ptr, ptr, ...) @fprintf(ptr %t147, ptr @.fmt_bounds, ptr @.str11488, i32 %t141, i32 %t145) call void @exit(i32 1) unreachable ixok35: @@ -156925,7 +157154,7 @@ wbody43: br i1 %t192, label %ixok45, label %ixbad46 ixbad46: %t193 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t193, ptr @.fmt_bounds, ptr @.str11478, i32 %t187, i32 %t191) + call i32 (ptr, ptr, ...) @fprintf(ptr %t193, ptr @.fmt_bounds, ptr @.str11489, i32 %t187, i32 %t191) call void @exit(i32 1) unreachable ixok45: @@ -157102,7 +157331,7 @@ wbody1: br i1 %t16, label %ixok3, label %ixbad4 ixbad4: %t17 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11479, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11490, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok3: @@ -157686,14 +157915,14 @@ then0: br label %ret ifend2: %t11 = load ptr, ptr %t0 - %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str11480) + %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str11491) %t13 = icmp ne i32 %t12, 0 %t14 = zext i1 %t13 to i32 store i32 %t14, ptr %t10 br i1 %t13, label %scend4, label %sc3 sc3: %t15 = load ptr, ptr %t0 - %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str11481) + %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str11492) %t17 = icmp ne i32 %t16, 0 %t18 = zext i1 %t17 to i32 store i32 %t18, ptr %t10 @@ -157706,7 +157935,7 @@ scend4: br i1 %t20, label %scend6, label %sc5 sc5: %t22 = load ptr, ptr %t0 - %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str11482) + %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str11493) %t24 = icmp ne i32 %t23, 0 %t25 = zext i1 %t24 to i32 store i32 %t25, ptr %t9 @@ -157799,7 +158028,7 @@ wbody24: br i1 %t78, label %ixok26, label %ixbad27 ixbad27: %t79 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t79, ptr @.fmt_bounds, ptr @.str11483, i32 %t73, i32 %t77) + call i32 (ptr, ptr, ...) @fprintf(ptr %t79, ptr @.fmt_bounds, ptr @.str11494, i32 %t73, i32 %t77) call void @exit(i32 1) unreachable ixok26: @@ -157850,10 +158079,10 @@ entry: then0: %t12 = load ptr, ptr %t0 %t13 = load ptr, ptr %t3 - %t14 = call ptr @lp_str_concat(ptr %t13, ptr @.str11485) + %t14 = call ptr @lp_str_concat(ptr %t13, ptr @.str11496) %t15 = load ptr, ptr %t7 %t16 = call ptr @lp_str_concat(ptr %t14, ptr %t15) - call void @fn_ck_err(ptr @.str11484, ptr %t12, ptr %t16) + call void @fn_ck_err(ptr @.str11495, ptr %t12, ptr %t16) br label %ifend2 ifend2: br label %ret @@ -157914,7 +158143,7 @@ wbody1: br i1 %t24, label %ixok5, label %ixbad6 ixbad6: %t25 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str11486, i32 %t19, i32 %t23) + call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str11497, i32 %t19, i32 %t23) call void @exit(i32 1) unreachable ixok5: @@ -157987,7 +158216,7 @@ wbody15: br i1 %t75, label %ixok17, label %ixbad18 ixbad18: %t76 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t76, ptr @.fmt_bounds, ptr @.str11487, i32 %t70, i32 %t74) + call i32 (ptr, ptr, ...) @fprintf(ptr %t76, ptr @.fmt_bounds, ptr @.str11498, i32 %t70, i32 %t74) call void @exit(i32 1) unreachable ixok17: @@ -158012,7 +158241,7 @@ then19: %t93 = load ptr, ptr %t28 %t94 = getelementptr inbounds %Cmp_Node, ptr %t93, i32 0, i32 1 %t95 = load ptr, ptr %t94 - %t96 = call ptr @lp_str_concat(ptr %t95, ptr @.str11488) + %t96 = call ptr @lp_str_concat(ptr %t95, ptr @.str11499) %t97 = load ptr, ptr %t79 %t98 = getelementptr inbounds %Cmp_Node, ptr %t97, i32 0, i32 1 %t99 = load ptr, ptr %t98 @@ -158035,7 +158264,7 @@ wend16: %t110 = load ptr, ptr %t28 %t111 = getelementptr inbounds %Cmp_Node, ptr %t110, i32 0, i32 1 %t112 = load ptr, ptr %t111 - %t113 = call ptr @lp_str_concat(ptr %t112, ptr @.str11489) + %t113 = call ptr @lp_str_concat(ptr %t112, ptr @.str11500) call void @fn_ck_ty_say(ptr %t103, ptr %t106, ptr %t109, ptr %t113) br label %ifend13 ifend13: @@ -158137,7 +158366,7 @@ wbody34: br i1 %t182, label %ixok36, label %ixbad37 ixbad37: %t183 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t183, ptr @.fmt_bounds, ptr @.str11490, i32 %t177, i32 %t181) + call i32 (ptr, ptr, ...) @fprintf(ptr %t183, ptr @.fmt_bounds, ptr @.str11501, i32 %t177, i32 %t181) call void @exit(i32 1) unreachable ixok36: @@ -158162,7 +158391,7 @@ then38: %t200 = load ptr, ptr %t28 %t201 = getelementptr inbounds %Cmp_Node, ptr %t200, i32 0, i32 1 %t202 = load ptr, ptr %t201 - %t203 = call ptr @lp_str_concat(ptr %t202, ptr @.str11491) + %t203 = call ptr @lp_str_concat(ptr %t202, ptr @.str11502) %t204 = load ptr, ptr %t186 %t205 = getelementptr inbounds %Cmp_Node, ptr %t204, i32 0, i32 1 %t206 = load ptr, ptr %t205 @@ -158194,14 +158423,14 @@ entry: %t1 = alloca i32 store ptr %arg_t, ptr %t0 %t2 = load ptr, ptr %t0 - %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str11492) + %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str11503) %t4 = icmp ne i32 %t3, 0 %t5 = zext i1 %t4 to i32 store i32 %t5, ptr %t1 br i1 %t4, label %scend1, label %sc0 sc0: %t6 = load ptr, ptr %t0 - %t7 = call i32 @lp_str_eq(ptr %t6, ptr @.str11493) + %t7 = call i32 @lp_str_eq(ptr %t6, ptr @.str11504) %t8 = icmp ne i32 %t7, 0 %t9 = zext i1 %t8 to i32 store i32 %t9, ptr %t1 @@ -158225,14 +158454,14 @@ entry: %t28 = alloca i32 store ptr %arg_name, ptr %t0 %t4 = load ptr, ptr %t0 - %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str11494) + %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str11505) %t6 = icmp ne i32 %t5, 0 %t7 = zext i1 %t6 to i32 store i32 %t7, ptr %t3 br i1 %t6, label %scend1, label %sc0 sc0: %t8 = load ptr, ptr %t0 - %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str11495) + %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str11506) %t10 = icmp ne i32 %t9, 0 %t11 = zext i1 %t10 to i32 store i32 %t11, ptr %t3 @@ -158245,7 +158474,7 @@ scend1: br i1 %t13, label %scend3, label %sc2 sc2: %t15 = load ptr, ptr %t0 - %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str11496) + %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str11507) %t17 = icmp ne i32 %t16, 0 %t18 = zext i1 %t17 to i32 store i32 %t18, ptr %t2 @@ -158258,7 +158487,7 @@ scend3: br i1 %t20, label %scend5, label %sc4 sc4: %t22 = load ptr, ptr %t0 - %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str11497) + %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str11508) %t24 = icmp ne i32 %t23, 0 %t25 = zext i1 %t24 to i32 store i32 %t25, ptr %t1 @@ -158272,14 +158501,14 @@ then6: br label %ret ifend8: %t29 = load ptr, ptr %t0 - %t30 = call i32 @lp_str_eq(ptr %t29, ptr @.str11498) + %t30 = call i32 @lp_str_eq(ptr %t29, ptr @.str11509) %t31 = icmp ne i32 %t30, 0 %t32 = zext i1 %t31 to i32 store i32 %t32, ptr %t28 br i1 %t31, label %scend10, label %sc9 sc9: %t33 = load ptr, ptr %t0 - %t34 = call i32 @lp_str_eq(ptr %t33, ptr @.str11499) + %t34 = call i32 @lp_str_eq(ptr %t33, ptr @.str11510) %t35 = icmp ne i32 %t34, 0 %t36 = zext i1 %t35 to i32 store i32 %t36, ptr %t28 @@ -158350,8 +158579,8 @@ then7: ifend9: %t31 = load ptr, ptr %t0 %t32 = load ptr, ptr %t1 - %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str11501) - call void @fn_ck_err(ptr @.str11500, ptr %t31, ptr %t33) + %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str11512) + call void @fn_ck_err(ptr @.str11511, ptr %t31, ptr %t33) br label %ret ret: ret void @@ -158396,7 +158625,7 @@ then5: br label %ret ifend7: %t21 = load ptr, ptr %t0 - call void @fn_ck_err(ptr @.str11502, ptr %t21, ptr @.str11503) + call void @fn_ck_err(ptr @.str11513, ptr %t21, ptr @.str11514) br label %ret ret: ret void @@ -158456,7 +158685,7 @@ wbody1: br i1 %t33, label %ixok5, label %ixbad6 ixbad6: %t34 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str11504, i32 %t28, i32 %t32) + call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str11515, i32 %t28, i32 %t32) call void @exit(i32 1) unreachable ixok5: @@ -158483,16 +158712,16 @@ entry: store ptr %arg_lt, ptr %t0 store ptr %arg_v, ptr %t1 store ptr %arg_addr, ptr %t2 - call void @fn_emit(ptr @.str11505) + call void @fn_emit(ptr @.str11516) %t3 = load ptr, ptr %t0 call void @fn_emit(ptr %t3) - call void @fn_emit(ptr @.str11506) + call void @fn_emit(ptr @.str11517) %t4 = load ptr, ptr %t1 call void @fn_emit(ptr %t4) - call void @fn_emit(ptr @.str11507) + call void @fn_emit(ptr @.str11518) %t5 = load ptr, ptr %t2 call void @fn_emit(ptr %t5) - call void @fn_emit(ptr @.str11508) + call void @fn_emit(ptr @.str11519) br label %ret ret: ret void @@ -158530,8 +158759,8 @@ entry: %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 4 %t3 = load ptr, ptr %t2 store ptr %t3, ptr %t4 - store ptr @.str11509, ptr %t5 - store ptr @.str11510, ptr %t6 + store ptr @.str11520, ptr %t5 + store ptr @.str11521, ptr %t6 %t7 = load ptr, ptr %t4 %t8 = getelementptr inbounds %Cmp_Node, ptr %t7, i32 0, i32 0 %t9 = load i32, ptr %t8 @@ -158561,7 +158790,7 @@ then3: br i1 %t28, label %ixok6, label %ixbad7 ixbad7: %t29 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str11511, i32 %t23, i32 %t27) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str11522, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok6: @@ -158575,8 +158804,8 @@ then8: %t35 = load ptr, ptr %t4 %t36 = getelementptr inbounds %Cmp_Node, ptr %t35, i32 0, i32 1 %t37 = load ptr, ptr %t36 - %t38 = call ptr @lp_str_concat(ptr @.str11512, ptr %t37) - %t39 = call ptr @lp_str_concat(ptr %t38, ptr @.str11513) + %t38 = call ptr @lp_str_concat(ptr @.str11523, ptr %t37) + %t39 = call ptr @lp_str_concat(ptr %t38, ptr @.str11524) %t40 = load ptr, ptr %t0 %t41 = getelementptr inbounds %Cmp_Node, ptr %t40, i32 0, i32 8 %t42 = load i32, ptr %t41 @@ -158608,7 +158837,7 @@ ifend13: br i1 %t59, label %ixok14, label %ixbad15 ixbad15: %t60 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t60, ptr @.fmt_bounds, ptr @.str11514, i32 %t54, i32 %t58) + call i32 (ptr, ptr, ...) @fprintf(ptr %t60, ptr @.fmt_bounds, ptr @.str11525, i32 %t54, i32 %t58) call void @exit(i32 1) unreachable ixok14: @@ -158625,7 +158854,7 @@ ixok14: br i1 %t69, label %ixok16, label %ixbad17 ixbad17: %t70 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t70, ptr @.fmt_bounds, ptr @.str11515, i32 %t64, i32 %t68) + call i32 (ptr, ptr, ...) @fprintf(ptr %t70, ptr @.fmt_bounds, ptr @.str11526, i32 %t64, i32 %t68) call void @exit(i32 1) unreachable ixok16: @@ -158648,7 +158877,7 @@ then18: %t82 = load ptr, ptr %t4 %t83 = getelementptr inbounds %Cmp_Node, ptr %t82, i32 0, i32 1 %t84 = load ptr, ptr %t83 - %t85 = call ptr @lp_str_concat(ptr @.str11516, ptr %t84) + %t85 = call ptr @lp_str_concat(ptr @.str11527, ptr %t84) call void @fn_perr(ptr %t85) br label %ifend20 ifend20: @@ -158665,7 +158894,7 @@ ifend20: %t94 = load ptr, ptr %t4 %t95 = getelementptr inbounds %Cmp_Node, ptr %t94, i32 0, i32 1 %t96 = load ptr, ptr %t95 - %t97 = call ptr @lp_str_concat(ptr @.str11517, ptr %t96) + %t97 = call ptr @lp_str_concat(ptr @.str11528, ptr %t96) store ptr %t97, ptr %t5 %t98 = load ptr, ptr %t77 %t99 = getelementptr inbounds %Cmp_Node, ptr %t98, i32 0, i32 3 @@ -158740,7 +158969,7 @@ then33: store ptr %t137, ptr %t6 br label %ifend35 else34: - call void @fn_perr(ptr @.str11518) + call void @fn_perr(ptr @.str11529) br label %ifend35 ifend35: br label %ifend32 @@ -158758,15 +158987,15 @@ ifend2: %t146 = load ptr, ptr %t0 %t147 = getelementptr inbounds %Cmp_Node, ptr %t146, i32 0, i32 1 %t148 = load ptr, ptr %t147 - %t149 = call i32 @lp_str_eq(ptr %t148, ptr @.str11519) + %t149 = call i32 @lp_str_eq(ptr %t148, ptr @.str11530) %t150 = icmp eq i32 %t149, 0 %t151 = zext i1 %t150 to i32 %t152 = icmp ne i32 %t151, 0 br i1 %t152, label %then36, label %ifend38 then36: %t153 = load ptr, ptr %t140 - %t154 = call ptr @lp_str_concat(ptr @.str11520, ptr %t153) - %t155 = call ptr @lp_str_concat(ptr %t154, ptr @.str11521) + %t154 = call ptr @lp_str_concat(ptr @.str11531, ptr %t153) + %t155 = call ptr @lp_str_concat(ptr %t154, ptr @.str11532) %t156 = load ptr, ptr %t5 %t157 = call ptr @lp_str_concat(ptr %t155, ptr %t156) %t158 = call ptr @fn_emit_bind(ptr %t157) @@ -158788,13 +159017,13 @@ ifend38: %t171 = call ptr @fn_coerce_code(ptr %t169, ptr %t170) store ptr %t171, ptr %t172 %t173 = load ptr, ptr %t140 - %t174 = call i32 @lp_str_eq(ptr %t173, ptr @.str11522) + %t174 = call i32 @lp_str_eq(ptr %t173, ptr @.str11533) %t175 = icmp ne i32 %t174, 0 br i1 %t175, label %then39, label %ifend41 then39: %t176 = load ptr, ptr %t172 - %t177 = call ptr @lp_str_concat(ptr @.str11523, ptr %t176) - %t178 = call ptr @lp_str_concat(ptr %t177, ptr @.str11524) + %t177 = call ptr @lp_str_concat(ptr @.str11534, ptr %t176) + %t178 = call ptr @lp_str_concat(ptr %t177, ptr @.str11535) %t179 = call ptr @fn_emit_bind(ptr %t178) store ptr %t179, ptr %t172 br label %ifend41 @@ -158826,8 +159055,8 @@ entry: %t6 = load ptr, ptr %t5 %t7 = getelementptr inbounds %Cmp_Val, ptr %t6, i32 0, i32 0 %t8 = load ptr, ptr %t7 - %t9 = call ptr @lp_str_concat(ptr @.str11525, ptr %t8) - %t10 = call ptr @lp_str_concat(ptr %t9, ptr @.str11526) + %t9 = call ptr @lp_str_concat(ptr @.str11536, ptr %t8) + %t10 = call ptr @lp_str_concat(ptr %t9, ptr @.str11537) %t11 = call ptr @fn_emit_bind(ptr %t10) store ptr %t11, ptr %t12 %t13 = load ptr, ptr %t0 @@ -158836,43 +159065,43 @@ entry: %t16 = icmp ne ptr %t15, null %t17 = zext i1 %t16 to i32 store i32 %t17, ptr %t18 - %t19 = call ptr @fn_lbl(ptr @.str11527) + %t19 = call ptr @fn_lbl(ptr @.str11538) store ptr %t19, ptr %t20 - %t21 = call ptr @fn_lbl(ptr @.str11528) + %t21 = call ptr @fn_lbl(ptr @.str11539) store ptr %t21, ptr %t22 - %t23 = call ptr @fn_lbl(ptr @.str11529) + %t23 = call ptr @fn_lbl(ptr @.str11540) store ptr %t23, ptr %t24 %t25 = load i32, ptr %t18 %t26 = icmp ne i32 %t25, 0 br i1 %t26, label %then0, label %else1 then0: - call void @fn_emit(ptr @.str11530) + call void @fn_emit(ptr @.str11541) %t27 = load ptr, ptr %t12 call void @fn_emit(ptr %t27) - call void @fn_emit(ptr @.str11531) + call void @fn_emit(ptr @.str11542) %t28 = load ptr, ptr %t20 call void @fn_emit(ptr %t28) - call void @fn_emit(ptr @.str11532) + call void @fn_emit(ptr @.str11543) %t29 = load ptr, ptr %t22 call void @fn_emit(ptr %t29) - call void @fn_emit(ptr @.str11533) + call void @fn_emit(ptr @.str11544) br label %ifend2 else1: - call void @fn_emit(ptr @.str11534) + call void @fn_emit(ptr @.str11545) %t30 = load ptr, ptr %t12 call void @fn_emit(ptr %t30) - call void @fn_emit(ptr @.str11535) + call void @fn_emit(ptr @.str11546) %t31 = load ptr, ptr %t20 call void @fn_emit(ptr %t31) - call void @fn_emit(ptr @.str11536) + call void @fn_emit(ptr @.str11547) %t32 = load ptr, ptr %t24 call void @fn_emit(ptr %t32) - call void @fn_emit(ptr @.str11537) + call void @fn_emit(ptr @.str11548) br label %ifend2 ifend2: %t33 = load ptr, ptr %t20 call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str11538) + call void @fn_emit(ptr @.str11549) store i32 0, ptr @g_g_term %t34 = load ptr, ptr %t0 %t35 = getelementptr inbounds %Cmp_Node, ptr %t34, i32 0, i32 5 @@ -158884,10 +159113,10 @@ ifend2: %t40 = icmp ne i32 %t39, 0 br i1 %t40, label %then3, label %ifend5 then3: - call void @fn_emit(ptr @.str11539) + call void @fn_emit(ptr @.str11550) %t41 = load ptr, ptr %t24 call void @fn_emit(ptr %t41) - call void @fn_emit(ptr @.str11540) + call void @fn_emit(ptr @.str11551) br label %ifend5 ifend5: %t42 = load i32, ptr %t18 @@ -158896,7 +159125,7 @@ ifend5: then6: %t44 = load ptr, ptr %t22 call void @fn_emit(ptr %t44) - call void @fn_emit(ptr @.str11541) + call void @fn_emit(ptr @.str11552) store i32 0, ptr @g_g_term %t45 = load ptr, ptr %t0 %t46 = getelementptr inbounds %Cmp_Node, ptr %t45, i32 0, i32 6 @@ -158926,17 +159155,17 @@ ifend11: %t62 = icmp ne i32 %t61, 0 br i1 %t62, label %then12, label %ifend14 then12: - call void @fn_emit(ptr @.str11542) + call void @fn_emit(ptr @.str11553) %t63 = load ptr, ptr %t24 call void @fn_emit(ptr %t63) - call void @fn_emit(ptr @.str11543) + call void @fn_emit(ptr @.str11554) br label %ifend14 ifend14: br label %ifend8 ifend8: %t64 = load ptr, ptr %t24 call void @fn_emit(ptr %t64) - call void @fn_emit(ptr @.str11544) + call void @fn_emit(ptr @.str11555) store i32 0, ptr @g_g_term br label %ret ret: @@ -158952,19 +159181,19 @@ entry: %t13 = alloca ptr %t20 = alloca ptr store ptr %arg_st, ptr %t0 - %t1 = call ptr @fn_lbl(ptr @.str11545) + %t1 = call ptr @fn_lbl(ptr @.str11556) store ptr %t1, ptr %t2 - %t3 = call ptr @fn_lbl(ptr @.str11546) + %t3 = call ptr @fn_lbl(ptr @.str11557) store ptr %t3, ptr %t4 - %t5 = call ptr @fn_lbl(ptr @.str11547) + %t5 = call ptr @fn_lbl(ptr @.str11558) store ptr %t5, ptr %t6 - call void @fn_emit(ptr @.str11548) + call void @fn_emit(ptr @.str11559) %t7 = load ptr, ptr %t2 call void @fn_emit(ptr %t7) - call void @fn_emit(ptr @.str11549) + call void @fn_emit(ptr @.str11560) %t8 = load ptr, ptr %t2 call void @fn_emit(ptr %t8) - call void @fn_emit(ptr @.str11550) + call void @fn_emit(ptr @.str11561) %t9 = load ptr, ptr %t0 %t10 = getelementptr inbounds %Cmp_Node, ptr %t9, i32 0, i32 4 %t11 = load ptr, ptr %t10 @@ -158973,23 +159202,23 @@ entry: %t14 = load ptr, ptr %t13 %t15 = getelementptr inbounds %Cmp_Val, ptr %t14, i32 0, i32 0 %t16 = load ptr, ptr %t15 - %t17 = call ptr @lp_str_concat(ptr @.str11551, ptr %t16) - %t18 = call ptr @lp_str_concat(ptr %t17, ptr @.str11552) + %t17 = call ptr @lp_str_concat(ptr @.str11562, ptr %t16) + %t18 = call ptr @lp_str_concat(ptr %t17, ptr @.str11563) %t19 = call ptr @fn_emit_bind(ptr %t18) store ptr %t19, ptr %t20 - call void @fn_emit(ptr @.str11553) + call void @fn_emit(ptr @.str11564) %t21 = load ptr, ptr %t20 call void @fn_emit(ptr %t21) - call void @fn_emit(ptr @.str11554) + call void @fn_emit(ptr @.str11565) %t22 = load ptr, ptr %t4 call void @fn_emit(ptr %t22) - call void @fn_emit(ptr @.str11555) + call void @fn_emit(ptr @.str11566) %t23 = load ptr, ptr %t6 call void @fn_emit(ptr %t23) - call void @fn_emit(ptr @.str11556) + call void @fn_emit(ptr @.str11567) %t24 = load ptr, ptr %t4 call void @fn_emit(ptr %t24) - call void @fn_emit(ptr @.str11557) + call void @fn_emit(ptr @.str11568) store i32 0, ptr @g_g_term %t25 = load ptr, ptr %t2 %t26 = load ptr, ptr %t6 @@ -159005,15 +159234,15 @@ entry: %t33 = icmp ne i32 %t32, 0 br i1 %t33, label %then0, label %ifend2 then0: - call void @fn_emit(ptr @.str11558) + call void @fn_emit(ptr @.str11569) %t34 = load ptr, ptr %t2 call void @fn_emit(ptr %t34) - call void @fn_emit(ptr @.str11559) + call void @fn_emit(ptr @.str11570) br label %ifend2 ifend2: %t35 = load ptr, ptr %t6 call void @fn_emit(ptr %t35) - call void @fn_emit(ptr @.str11560) + call void @fn_emit(ptr @.str11571) store i32 0, ptr @g_g_term br label %ret ret: @@ -159035,7 +159264,7 @@ entry: %t62 = alloca ptr %t67 = alloca ptr store ptr %arg_st, ptr %t0 - %t1 = call ptr @fn_emit_alloca(ptr @.str11561) + %t1 = call ptr @fn_emit_alloca(ptr @.str11572) store ptr %t1, ptr %t2 %t3 = load ptr, ptr %t0 %t4 = getelementptr inbounds %Cmp_Node, ptr %t3, i32 0, i32 4 @@ -159046,29 +159275,29 @@ entry: %t9 = getelementptr inbounds %Cmp_Val, ptr %t8, i32 0, i32 0 %t10 = load ptr, ptr %t9 %t11 = load ptr, ptr %t2 - call void @fn_store_at(ptr @.str11562, ptr %t10, ptr %t11) + call void @fn_store_at(ptr @.str11573, ptr %t10, ptr %t11) %t12 = load ptr, ptr %t0 %t13 = getelementptr inbounds %Cmp_Node, ptr %t12, i32 0, i32 1 %t14 = load ptr, ptr %t13 %t15 = load ptr, ptr %t2 - call void @fn_loc_push(ptr %t14, ptr %t15, ptr @.str11563) - %t16 = call ptr @fn_lbl(ptr @.str11564) + call void @fn_loc_push(ptr %t14, ptr %t15, ptr @.str11574) + %t16 = call ptr @fn_lbl(ptr @.str11575) store ptr %t16, ptr %t17 - %t18 = call ptr @fn_lbl(ptr @.str11565) + %t18 = call ptr @fn_lbl(ptr @.str11576) store ptr %t18, ptr %t19 - %t20 = call ptr @fn_lbl(ptr @.str11566) + %t20 = call ptr @fn_lbl(ptr @.str11577) store ptr %t20, ptr %t21 - %t22 = call ptr @fn_lbl(ptr @.str11567) + %t22 = call ptr @fn_lbl(ptr @.str11578) store ptr %t22, ptr %t23 - call void @fn_emit(ptr @.str11568) + call void @fn_emit(ptr @.str11579) %t24 = load ptr, ptr %t17 call void @fn_emit(ptr %t24) - call void @fn_emit(ptr @.str11569) + call void @fn_emit(ptr @.str11580) %t25 = load ptr, ptr %t17 call void @fn_emit(ptr %t25) - call void @fn_emit(ptr @.str11570) + call void @fn_emit(ptr @.str11581) %t26 = load ptr, ptr %t2 - %t27 = call ptr @lp_str_concat(ptr @.str11571, ptr %t26) + %t27 = call ptr @lp_str_concat(ptr @.str11582, ptr %t26) %t28 = call ptr @fn_emit_bind(ptr %t27) store ptr %t28, ptr %t29 %t30 = load ptr, ptr %t0 @@ -159077,27 +159306,27 @@ entry: %t33 = call ptr @fn_emit_expr(ptr %t32) store ptr %t33, ptr %t34 %t35 = load ptr, ptr %t29 - %t36 = call ptr @lp_str_concat(ptr @.str11572, ptr %t35) - %t37 = call ptr @lp_str_concat(ptr %t36, ptr @.str11573) + %t36 = call ptr @lp_str_concat(ptr @.str11583, ptr %t35) + %t37 = call ptr @lp_str_concat(ptr %t36, ptr @.str11584) %t38 = load ptr, ptr %t34 %t39 = getelementptr inbounds %Cmp_Val, ptr %t38, i32 0, i32 0 %t40 = load ptr, ptr %t39 %t41 = call ptr @lp_str_concat(ptr %t37, ptr %t40) %t42 = call ptr @fn_emit_bind(ptr %t41) store ptr %t42, ptr %t43 - call void @fn_emit(ptr @.str11574) + call void @fn_emit(ptr @.str11585) %t44 = load ptr, ptr %t43 call void @fn_emit(ptr %t44) - call void @fn_emit(ptr @.str11575) + call void @fn_emit(ptr @.str11586) %t45 = load ptr, ptr %t19 call void @fn_emit(ptr %t45) - call void @fn_emit(ptr @.str11576) + call void @fn_emit(ptr @.str11587) %t46 = load ptr, ptr %t23 call void @fn_emit(ptr %t46) - call void @fn_emit(ptr @.str11577) + call void @fn_emit(ptr @.str11588) %t47 = load ptr, ptr %t19 call void @fn_emit(ptr %t47) - call void @fn_emit(ptr @.str11578) + call void @fn_emit(ptr @.str11589) store i32 0, ptr @g_g_term %t48 = load ptr, ptr %t21 %t49 = load ptr, ptr %t23 @@ -159113,34 +159342,34 @@ entry: %t56 = icmp ne i32 %t55, 0 br i1 %t56, label %then0, label %ifend2 then0: - call void @fn_emit(ptr @.str11579) + call void @fn_emit(ptr @.str11590) %t57 = load ptr, ptr %t21 call void @fn_emit(ptr %t57) - call void @fn_emit(ptr @.str11580) + call void @fn_emit(ptr @.str11591) br label %ifend2 ifend2: %t58 = load ptr, ptr %t21 call void @fn_emit(ptr %t58) - call void @fn_emit(ptr @.str11581) + call void @fn_emit(ptr @.str11592) %t59 = load ptr, ptr %t2 - %t60 = call ptr @lp_str_concat(ptr @.str11582, ptr %t59) + %t60 = call ptr @lp_str_concat(ptr @.str11593, ptr %t59) %t61 = call ptr @fn_emit_bind(ptr %t60) store ptr %t61, ptr %t62 %t63 = load ptr, ptr %t62 - %t64 = call ptr @lp_str_concat(ptr @.str11583, ptr %t63) - %t65 = call ptr @lp_str_concat(ptr %t64, ptr @.str11584) + %t64 = call ptr @lp_str_concat(ptr @.str11594, ptr %t63) + %t65 = call ptr @lp_str_concat(ptr %t64, ptr @.str11595) %t66 = call ptr @fn_emit_bind(ptr %t65) store ptr %t66, ptr %t67 %t68 = load ptr, ptr %t67 %t69 = load ptr, ptr %t2 - call void @fn_store_at(ptr @.str11585, ptr %t68, ptr %t69) - call void @fn_emit(ptr @.str11586) + call void @fn_store_at(ptr @.str11596, ptr %t68, ptr %t69) + call void @fn_emit(ptr @.str11597) %t70 = load ptr, ptr %t17 call void @fn_emit(ptr %t70) - call void @fn_emit(ptr @.str11587) + call void @fn_emit(ptr @.str11598) %t71 = load ptr, ptr %t23 call void @fn_emit(ptr %t71) - call void @fn_emit(ptr @.str11588) + call void @fn_emit(ptr @.str11599) store i32 0, ptr @g_g_term br label %ret ret: @@ -159164,7 +159393,7 @@ entry: br i1 %t7, label %sc0, label %scend1 sc0: %t9 = load ptr, ptr @g_ret_ty - %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str11589) + %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str11600) %t11 = icmp ne i32 %t10, 0 %t12 = zext i1 %t11 to i32 store i32 %t12, ptr %t1 @@ -159174,7 +159403,7 @@ scend1: %t14 = icmp ne i32 %t13, 0 br i1 %t14, label %then2, label %ifend4 then2: - call void @fn_perr(ptr @.str11590) + call void @fn_perr(ptr @.str11601) br label %ifend4 ifend4: %t15 = load ptr, ptr %t0 @@ -159195,12 +159424,12 @@ then5: %t28 = load ptr, ptr %t25 %t29 = load ptr, ptr @g_ret_ty %t30 = call ptr @fn_coerce_code(ptr %t28, ptr %t29) - call void @fn_store_at(ptr %t27, ptr %t30, ptr @.str11591) + call void @fn_store_at(ptr %t27, ptr %t30, ptr @.str11602) br label %ifend7 ifend7: %t31 = load ptr, ptr @g_g_ret_label - %t32 = call ptr @lp_str_concat(ptr @.str11592, ptr %t31) - %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str11593) + %t32 = call ptr @lp_str_concat(ptr @.str11603, ptr %t31) + %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str11604) call void @fn_emit(ptr %t33) store i32 1, ptr @g_g_term br label %ret @@ -159249,7 +159478,7 @@ wbody4: br i1 %t23, label %ixok6, label %ixbad7 ixbad7: %t24 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str11594, i32 %t18, i32 %t22) + call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str11605, i32 %t18, i32 %t22) call void @exit(i32 1) unreachable ixok6: @@ -159404,7 +159633,7 @@ wbody21: br i1 %t82, label %ixok23, label %ixbad24 ixbad24: %t83 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t83, ptr @.fmt_bounds, ptr @.str11595, i32 %t77, i32 %t81) + call i32 (ptr, ptr, ...) @fprintf(ptr %t83, ptr @.fmt_bounds, ptr @.str11606, i32 %t77, i32 %t81) call void @exit(i32 1) unreachable ixok23: @@ -159480,7 +159709,7 @@ wbody1: br i1 %t20, label %ixok3, label %ixbad4 ixbad4: %t21 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11596, i32 %t15, i32 %t19) + call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11607, i32 %t15, i32 %t19) call void @exit(i32 1) unreachable ixok3: @@ -159507,7 +159736,7 @@ sc5: br i1 %t38, label %ixok7, label %ixbad8 ixbad8: %t39 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str11597, i32 %t33, i32 %t37) + call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str11608, i32 %t33, i32 %t37) call void @exit(i32 1) unreachable ixok7: @@ -159515,7 +159744,7 @@ ixok7: %t41 = load ptr, ptr %t40 %t42 = getelementptr inbounds %Cmp_Node, ptr %t41, i32 0, i32 1 %t43 = load ptr, ptr %t42 - %t44 = call i32 @lp_str_eq(ptr %t43, ptr @.str11598) + %t44 = call i32 @lp_str_eq(ptr %t43, ptr @.str11609) %t45 = icmp ne i32 %t44, 0 %t46 = zext i1 %t45 to i32 store i32 %t46, ptr %t11 @@ -159576,7 +159805,7 @@ entry: br i1 %t19, label %ixok0, label %ixbad1 ixbad1: %t20 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str11599, i32 %t14, i32 %t18) + call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str11610, i32 %t14, i32 %t18) call void @exit(i32 1) unreachable ixok0: @@ -159603,8 +159832,8 @@ then2: %t39 = load ptr, ptr %t38 %t40 = getelementptr inbounds %Cmp_Node, ptr %t39, i32 0, i32 1 %t41 = load ptr, ptr %t40 - %t42 = call ptr @lp_str_concat(ptr @.str11600, ptr %t41) - %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str11601) + %t42 = call ptr @lp_str_concat(ptr @.str11611, ptr %t41) + %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str11612) %t44 = load ptr, ptr %t1 %t45 = getelementptr inbounds %Cmp_Node, ptr %t44, i32 0, i32 7 %t46 = load ptr, ptr %t45 @@ -159612,7 +159841,7 @@ then2: %t48 = load i32, ptr %t47 %t49 = call ptr @fn_itoa(i32 %t48) %t50 = call ptr @lp_str_concat(ptr %t43, ptr %t49) - %t51 = call ptr @lp_str_concat(ptr %t50, ptr @.str11602) + %t51 = call ptr @lp_str_concat(ptr %t50, ptr @.str11613) %t52 = load ptr, ptr %t23 %t53 = getelementptr inbounds %Cmp_Node, ptr %t52, i32 0, i32 7 %t54 = load ptr, ptr %t53 @@ -159649,7 +159878,7 @@ wbody6: br i1 %t77, label %ixok8, label %ixbad9 ixbad9: %t78 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t78, ptr @.fmt_bounds, ptr @.str11603, i32 %t72, i32 %t76) + call i32 (ptr, ptr, ...) @fprintf(ptr %t78, ptr @.fmt_bounds, ptr @.str11614, i32 %t72, i32 %t76) call void @exit(i32 1) unreachable ixok8: @@ -159669,12 +159898,12 @@ then10: %t90 = load ptr, ptr %t89 %t91 = getelementptr inbounds %Cmp_Node, ptr %t90, i32 0, i32 1 %t92 = load ptr, ptr %t91 - %t93 = call ptr @lp_str_concat(ptr @.str11604, ptr %t92) - %t94 = call ptr @lp_str_concat(ptr %t93, ptr @.str11605) + %t93 = call ptr @lp_str_concat(ptr @.str11615, ptr %t92) + %t94 = call ptr @lp_str_concat(ptr %t93, ptr @.str11616) %t95 = load i32, ptr %t59 %t96 = call ptr @fn_itoa(i32 %t95) %t97 = call ptr @lp_str_concat(ptr %t94, ptr %t96) - %t98 = call ptr @lp_str_concat(ptr %t97, ptr @.str11606) + %t98 = call ptr @lp_str_concat(ptr %t97, ptr @.str11617) call void @fn_perr(ptr %t98) br label %ifend12 ifend12: @@ -159690,7 +159919,7 @@ ifend12: br i1 %t107, label %ixok13, label %ixbad14 ixbad14: %t108 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t108, ptr @.fmt_bounds, ptr @.str11607, i32 %t102, i32 %t106) + call i32 (ptr, ptr, ...) @fprintf(ptr %t108, ptr @.fmt_bounds, ptr @.str11618, i32 %t102, i32 %t106) call void @exit(i32 1) unreachable ixok13: @@ -159704,24 +159933,24 @@ ixok13: store ptr %t115, ptr %t116 %t117 = call ptr @fn_nreg() store ptr %t117, ptr %t118 - call void @fn_emit(ptr @.str11608) + call void @fn_emit(ptr @.str11619) %t119 = load ptr, ptr %t118 call void @fn_emit(ptr %t119) - call void @fn_emit(ptr @.str11609) + call void @fn_emit(ptr @.str11620) %t120 = load ptr, ptr %t2 %t121 = getelementptr inbounds %Cmp_Val, ptr %t120, i32 0, i32 0 %t122 = load ptr, ptr %t121 call void @fn_emit(ptr %t122) - call void @fn_emit(ptr @.str11610) + call void @fn_emit(ptr @.str11621) %t123 = load i32, ptr %t59 %t124 = add i32 %t123, 1 %t125 = mul i32 8, %t124 %t126 = call ptr @fn_itoa(i32 %t125) call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str11611) + call void @fn_emit(ptr @.str11622) %t127 = load ptr, ptr %t116 - %t128 = call ptr @lp_str_concat(ptr @.str11612, ptr %t127) - %t129 = call ptr @lp_str_concat(ptr %t128, ptr @.str11613) + %t128 = call ptr @lp_str_concat(ptr @.str11623, ptr %t127) + %t129 = call ptr @lp_str_concat(ptr %t128, ptr @.str11624) %t130 = load ptr, ptr %t118 %t131 = call ptr @lp_str_concat(ptr %t129, ptr %t130) %t132 = call ptr @fn_emit_bind(ptr %t131) @@ -159745,7 +159974,7 @@ ixok13: br i1 %t148, label %ixok15, label %ixbad16 ixbad16: %t149 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t149, ptr @.fmt_bounds, ptr @.str11614, i32 %t143, i32 %t147) + call i32 (ptr, ptr, ...) @fprintf(ptr %t149, ptr @.fmt_bounds, ptr @.str11625, i32 %t143, i32 %t147) call void @exit(i32 1) unreachable ixok15: @@ -159796,10 +160025,10 @@ entry: %t3 = load ptr, ptr %t1 %t4 = getelementptr inbounds %Cmp_Val, ptr %t3, i32 0, i32 0 %t5 = load ptr, ptr %t4 - %t6 = call ptr @lp_str_concat(ptr @.str11615, ptr %t5) + %t6 = call ptr @lp_str_concat(ptr @.str11626, ptr %t5) %t7 = call ptr @fn_emit_bind(ptr %t6) store ptr %t7, ptr %t8 - %t9 = call ptr @fn_lbl(ptr @.str11616) + %t9 = call ptr @fn_lbl(ptr @.str11627) store ptr %t9, ptr %t10 store ptr null, ptr %t11 store i32 0, ptr %t12 @@ -159829,7 +160058,7 @@ wbody1: br i1 %t31, label %ixok3, label %ixbad4 ixbad4: %t32 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str11617, i32 %t26, i32 %t30) + call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str11628, i32 %t26, i32 %t30) call void @exit(i32 1) unreachable ixok3: @@ -159845,7 +160074,7 @@ then5: store ptr %t39, ptr %t11 br label %ifend7 else6: - store ptr @.str11618, ptr %t40 + store ptr @.str11629, ptr %t40 store i32 1, ptr %t41 store ptr null, ptr %t42 store i32 0, ptr %t43 @@ -159874,7 +160103,7 @@ wbody9: br i1 %t61, label %ixok11, label %ixbad12 ixbad12: %t62 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t62, ptr @.fmt_bounds, ptr @.str11619, i32 %t56, i32 %t60) + call i32 (ptr, ptr, ...) @fprintf(ptr %t62, ptr @.fmt_bounds, ptr @.str11630, i32 %t56, i32 %t60) call void @exit(i32 1) unreachable ixok11: @@ -159914,8 +160143,8 @@ ifend15: br i1 %t89, label %then16, label %ifend18 then16: %t90 = load ptr, ptr %t69 - %t91 = call ptr @lp_str_concat(ptr @.str11620, ptr %t90) - %t92 = call ptr @lp_str_concat(ptr %t91, ptr @.str11621) + %t91 = call ptr @lp_str_concat(ptr @.str11631, ptr %t90) + %t92 = call ptr @lp_str_concat(ptr %t91, ptr @.str11632) %t93 = load ptr, ptr %t2 %t94 = getelementptr inbounds %Cmp_Node, ptr %t93, i32 0, i32 1 %t95 = load ptr, ptr %t94 @@ -159929,8 +160158,8 @@ ifend18: %t100 = or i32 %t97, %t99 store i32 %t100, ptr %t12 %t101 = load ptr, ptr %t8 - %t102 = call ptr @lp_str_concat(ptr @.str11622, ptr %t101) - %t103 = call ptr @lp_str_concat(ptr %t102, ptr @.str11623) + %t102 = call ptr @lp_str_concat(ptr @.str11633, ptr %t101) + %t103 = call ptr @lp_str_concat(ptr %t102, ptr @.str11634) %t104 = load i32, ptr %t85 %t105 = call ptr @fn_itoa(i32 %t104) %t106 = call ptr @lp_str_concat(ptr %t103, ptr %t105) @@ -159946,8 +160175,8 @@ then19: br label %ifend21 else20: %t112 = load ptr, ptr %t40 - %t113 = call ptr @lp_str_concat(ptr @.str11624, ptr %t112) - %t114 = call ptr @lp_str_concat(ptr %t113, ptr @.str11625) + %t113 = call ptr @lp_str_concat(ptr @.str11635, ptr %t112) + %t114 = call ptr @lp_str_concat(ptr %t113, ptr @.str11636) %t115 = load ptr, ptr %t108 %t116 = call ptr @lp_str_concat(ptr %t114, ptr %t115) %t117 = call ptr @fn_emit_bind(ptr %t116) @@ -159959,23 +160188,23 @@ ifend21: store i32 %t119, ptr %t43 br label %wcond8 wend10: - %t120 = call ptr @fn_lbl(ptr @.str11626) + %t120 = call ptr @fn_lbl(ptr @.str11637) store ptr %t120, ptr %t121 - %t122 = call ptr @fn_lbl(ptr @.str11627) + %t122 = call ptr @fn_lbl(ptr @.str11638) store ptr %t122, ptr %t123 - call void @fn_emit(ptr @.str11628) + call void @fn_emit(ptr @.str11639) %t124 = load ptr, ptr %t40 call void @fn_emit(ptr %t124) - call void @fn_emit(ptr @.str11629) + call void @fn_emit(ptr @.str11640) %t125 = load ptr, ptr %t121 call void @fn_emit(ptr %t125) - call void @fn_emit(ptr @.str11630) + call void @fn_emit(ptr @.str11641) %t126 = load ptr, ptr %t123 call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str11631) + call void @fn_emit(ptr @.str11642) %t127 = load ptr, ptr %t121 call void @fn_emit(ptr %t127) - call void @fn_emit(ptr @.str11632) + call void @fn_emit(ptr @.str11643) store i32 0, ptr @g_g_term %t128 = load i32, ptr @g_nloc store i32 %t128, ptr %t129 @@ -160003,15 +160232,15 @@ ifend24: %t144 = icmp ne i32 %t143, 0 br i1 %t144, label %then25, label %ifend27 then25: - call void @fn_emit(ptr @.str11633) + call void @fn_emit(ptr @.str11644) %t145 = load ptr, ptr %t10 call void @fn_emit(ptr %t145) - call void @fn_emit(ptr @.str11634) + call void @fn_emit(ptr @.str11645) br label %ifend27 ifend27: %t146 = load ptr, ptr %t123 call void @fn_emit(ptr %t146) - call void @fn_emit(ptr @.str11635) + call void @fn_emit(ptr @.str11646) store i32 0, ptr @g_g_term br label %ifend7 ifend7: @@ -160075,8 +160304,8 @@ then37: %t188 = load ptr, ptr %t2 %t189 = getelementptr inbounds %Cmp_Node, ptr %t188, i32 0, i32 1 %t190 = load ptr, ptr %t189 - %t191 = call ptr @lp_str_concat(ptr @.str11636, ptr %t190) - %t192 = call ptr @lp_str_concat(ptr %t191, ptr @.str11637) + %t191 = call ptr @lp_str_concat(ptr @.str11647, ptr %t190) + %t192 = call ptr @lp_str_concat(ptr %t191, ptr @.str11648) %t193 = load ptr, ptr %t2 %t194 = getelementptr inbounds %Cmp_Node, ptr %t193, i32 0, i32 7 %t195 = load ptr, ptr %t194 @@ -160089,7 +160318,7 @@ then37: br i1 %t201, label %ixok40, label %ixbad41 ixbad41: %t202 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t202, ptr @.fmt_bounds, ptr @.str11638, i32 %t196, i32 %t200) + call i32 (ptr, ptr, ...) @fprintf(ptr %t202, ptr @.fmt_bounds, ptr @.str11649, i32 %t196, i32 %t200) call void @exit(i32 1) unreachable ixok40: @@ -160098,7 +160327,7 @@ ixok40: %t205 = getelementptr inbounds %Cmp_Node, ptr %t204, i32 0, i32 1 %t206 = load ptr, ptr %t205 %t207 = call ptr @lp_str_concat(ptr %t192, ptr %t206) - %t208 = call ptr @lp_str_concat(ptr %t207, ptr @.str11639) + %t208 = call ptr @lp_str_concat(ptr %t207, ptr @.str11650) call void @fn_perr(ptr %t208) br label %ifend39 ifend39: @@ -160117,15 +160346,15 @@ ifend30: %t214 = icmp ne i32 %t213, 0 br i1 %t214, label %then42, label %ifend44 then42: - call void @fn_emit(ptr @.str11640) + call void @fn_emit(ptr @.str11651) %t215 = load ptr, ptr %t10 call void @fn_emit(ptr %t215) - call void @fn_emit(ptr @.str11641) + call void @fn_emit(ptr @.str11652) br label %ifend44 ifend44: %t216 = load ptr, ptr %t10 call void @fn_emit(ptr %t216) - call void @fn_emit(ptr @.str11642) + call void @fn_emit(ptr @.str11653) store i32 0, ptr @g_g_term br label %ret ret: @@ -160171,7 +160400,7 @@ then0: call void @fn_emit_match_tagged(ptr %t15, ptr %t16, ptr %t17) br label %ret ifend2: - %t18 = call ptr @fn_lbl(ptr @.str11643) + %t18 = call ptr @fn_lbl(ptr @.str11654) store ptr %t18, ptr %t19 store ptr null, ptr %t20 store i32 0, ptr %t21 @@ -160200,7 +160429,7 @@ wbody4: br i1 %t39, label %ixok6, label %ixbad7 ixbad7: %t40 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11644, i32 %t34, i32 %t38) + call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11655, i32 %t34, i32 %t38) call void @exit(i32 1) unreachable ixok6: @@ -160216,7 +160445,7 @@ then8: store ptr %t47, ptr %t20 br label %ifend10 else9: - store ptr @.str11645, ptr %t48 + store ptr @.str11656, ptr %t48 store i32 1, ptr %t49 store i32 0, ptr %t50 br label %wcond11 @@ -160244,7 +160473,7 @@ wbody12: br i1 %t68, label %ixok14, label %ixbad15 ixbad15: %t69 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t69, ptr @.fmt_bounds, ptr @.str11646, i32 %t63, i32 %t67) + call i32 (ptr, ptr, ...) @fprintf(ptr %t69, ptr @.fmt_bounds, ptr @.str11657, i32 %t63, i32 %t67) call void @exit(i32 1) unreachable ixok14: @@ -160255,8 +160484,8 @@ ixok14: %t74 = load ptr, ptr %t5 %t75 = getelementptr inbounds %Cmp_Val, ptr %t74, i32 0, i32 0 %t76 = load ptr, ptr %t75 - %t77 = call ptr @lp_str_concat(ptr @.str11647, ptr %t76) - %t78 = call ptr @lp_str_concat(ptr %t77, ptr @.str11648) + %t77 = call ptr @lp_str_concat(ptr @.str11658, ptr %t76) + %t78 = call ptr @lp_str_concat(ptr %t77, ptr @.str11659) %t79 = load ptr, ptr %t73 %t80 = getelementptr inbounds %Cmp_Val, ptr %t79, i32 0, i32 0 %t81 = load ptr, ptr %t80 @@ -160273,8 +160502,8 @@ then16: br label %ifend18 else17: %t88 = load ptr, ptr %t48 - %t89 = call ptr @lp_str_concat(ptr @.str11649, ptr %t88) - %t90 = call ptr @lp_str_concat(ptr %t89, ptr @.str11650) + %t89 = call ptr @lp_str_concat(ptr @.str11660, ptr %t88) + %t90 = call ptr @lp_str_concat(ptr %t89, ptr @.str11661) %t91 = load ptr, ptr %t84 %t92 = call ptr @lp_str_concat(ptr %t90, ptr %t91) %t93 = call ptr @fn_emit_bind(ptr %t92) @@ -160286,23 +160515,23 @@ ifend18: store i32 %t95, ptr %t50 br label %wcond11 wend13: - %t96 = call ptr @fn_lbl(ptr @.str11651) + %t96 = call ptr @fn_lbl(ptr @.str11662) store ptr %t96, ptr %t97 - %t98 = call ptr @fn_lbl(ptr @.str11652) + %t98 = call ptr @fn_lbl(ptr @.str11663) store ptr %t98, ptr %t99 - call void @fn_emit(ptr @.str11653) + call void @fn_emit(ptr @.str11664) %t100 = load ptr, ptr %t48 call void @fn_emit(ptr %t100) - call void @fn_emit(ptr @.str11654) + call void @fn_emit(ptr @.str11665) %t101 = load ptr, ptr %t97 call void @fn_emit(ptr %t101) - call void @fn_emit(ptr @.str11655) + call void @fn_emit(ptr @.str11666) %t102 = load ptr, ptr %t99 call void @fn_emit(ptr %t102) - call void @fn_emit(ptr @.str11656) + call void @fn_emit(ptr @.str11667) %t103 = load ptr, ptr %t97 call void @fn_emit(ptr %t103) - call void @fn_emit(ptr @.str11657) + call void @fn_emit(ptr @.str11668) store i32 0, ptr @g_g_term %t104 = load ptr, ptr %t43 %t105 = getelementptr inbounds %Cmp_Node, ptr %t104, i32 0, i32 4 @@ -160314,15 +160543,15 @@ wend13: %t110 = icmp ne i32 %t109, 0 br i1 %t110, label %then19, label %ifend21 then19: - call void @fn_emit(ptr @.str11658) + call void @fn_emit(ptr @.str11669) %t111 = load ptr, ptr %t19 call void @fn_emit(ptr %t111) - call void @fn_emit(ptr @.str11659) + call void @fn_emit(ptr @.str11670) br label %ifend21 ifend21: %t112 = load ptr, ptr %t99 call void @fn_emit(ptr %t112) - call void @fn_emit(ptr @.str11660) + call void @fn_emit(ptr @.str11671) store i32 0, ptr @g_g_term br label %ifend10 ifend10: @@ -160349,15 +160578,15 @@ ifend24: %t125 = icmp ne i32 %t124, 0 br i1 %t125, label %then25, label %ifend27 then25: - call void @fn_emit(ptr @.str11661) + call void @fn_emit(ptr @.str11672) %t126 = load ptr, ptr %t19 call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str11662) + call void @fn_emit(ptr @.str11673) br label %ifend27 ifend27: %t127 = load ptr, ptr %t19 call void @fn_emit(ptr %t127) - call void @fn_emit(ptr @.str11663) + call void @fn_emit(ptr @.str11674) store i32 0, ptr @g_g_term br label %ret ret: @@ -160402,7 +160631,7 @@ then0: %t10 = load ptr, ptr %t0 %t11 = getelementptr inbounds %Cmp_Node, ptr %t10, i32 0, i32 1 %t12 = load ptr, ptr %t11 - %t13 = call ptr @lp_str_concat(ptr @.str11664, ptr %t12) + %t13 = call ptr @lp_str_concat(ptr @.str11675, ptr %t12) call void @fn_perr(ptr %t13) br label %ifend2 ifend2: @@ -160457,7 +160686,7 @@ wbody4: br i1 %t50, label %ixok6, label %ixbad7 ixbad7: %t51 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str11665, i32 %t45, i32 %t49) + call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str11676, i32 %t45, i32 %t49) call void @exit(i32 1) unreachable ixok6: @@ -160495,7 +160724,7 @@ wbody9: br i1 %t78, label %ixok11, label %ixbad12 ixbad12: %t79 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t79, ptr @.fmt_bounds, ptr @.str11666, i32 %t73, i32 %t77) + call i32 (ptr, ptr, ...) @fprintf(ptr %t79, ptr @.fmt_bounds, ptr @.str11677, i32 %t73, i32 %t77) call void @exit(i32 1) unreachable ixok11: @@ -160524,7 +160753,7 @@ then13: br i1 %t99, label %ixok16, label %ixbad17 ixbad17: %t100 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t100, ptr @.fmt_bounds, ptr @.str11667, i32 %t94, i32 %t98) + call i32 (ptr, ptr, ...) @fprintf(ptr %t100, ptr @.fmt_bounds, ptr @.str11678, i32 %t94, i32 %t98) call void @exit(i32 1) unreachable ixok16: @@ -160545,13 +160774,13 @@ wend10: %t109 = load ptr, ptr %t108 %t110 = call ptr @fn_llty(ptr %t109) store ptr %t110, ptr %t111 - store ptr @.str11668, ptr %t112 + store ptr @.str11679, ptr %t112 %t113 = load ptr, ptr %t111 - %t114 = call i32 @lp_str_eq(ptr %t113, ptr @.str11669) + %t114 = call i32 @lp_str_eq(ptr %t113, ptr @.str11680) %t115 = icmp ne i32 %t114, 0 br i1 %t115, label %then18, label %ifend20 then18: - store ptr @.str11670, ptr %t112 + store ptr @.str11681, ptr %t112 br label %ifend20 ifend20: %t116 = load ptr, ptr %t55 @@ -160661,21 +160890,21 @@ wend5: then31: %t188 = call ptr @fn_nreg() store ptr %t188, ptr %t189 - call void @fn_emit(ptr @.str11671) + call void @fn_emit(ptr @.str11682) %t190 = load ptr, ptr %t189 call void @fn_emit(ptr %t190) - call void @fn_emit(ptr @.str11672) - call void @fn_emit(ptr @.str11673) + call void @fn_emit(ptr @.str11683) + call void @fn_emit(ptr @.str11684) %t191 = load ptr, ptr %t0 %t192 = getelementptr inbounds %Cmp_Node, ptr %t191, i32 0, i32 1 %t193 = load ptr, ptr %t192 %t194 = call i32 @fn_net_event_id(ptr %t193) %t195 = call ptr @fn_itoa(i32 %t194) call void @fn_emit(ptr %t195) - call void @fn_emit(ptr @.str11674) + call void @fn_emit(ptr @.str11685) %t196 = load ptr, ptr %t189 call void @fn_emit(ptr %t196) - call void @fn_emit(ptr @.str11675) + call void @fn_emit(ptr @.str11686) store i32 4, ptr %t197 store i32 0, ptr %t198 br label %wcond34 @@ -160693,15 +160922,15 @@ wcond34: wbody35: %t208 = call ptr @fn_nreg() store ptr %t208, ptr %t209 - call void @fn_emit(ptr @.str11676) + call void @fn_emit(ptr @.str11687) %t210 = load ptr, ptr %t209 call void @fn_emit(ptr %t210) - call void @fn_emit(ptr @.str11677) + call void @fn_emit(ptr @.str11688) %t211 = load i32, ptr %t197 %t212 = call ptr @fn_itoa(i32 %t211) call void @fn_emit(ptr %t212) - call void @fn_emit(ptr @.str11678) - call void @fn_emit(ptr @.str11679) + call void @fn_emit(ptr @.str11689) + call void @fn_emit(ptr @.str11690) %t213 = load ptr, ptr %t31 %t214 = load i32, ptr %t198 %t215 = getelementptr inbounds %LSlice, ptr %t213, i32 0, i32 0 @@ -160712,14 +160941,14 @@ wbody35: br i1 %t219, label %ixok37, label %ixbad38 ixbad38: %t220 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t220, ptr @.fmt_bounds, ptr @.str11680, i32 %t214, i32 %t218) + call i32 (ptr, ptr, ...) @fprintf(ptr %t220, ptr @.fmt_bounds, ptr @.str11691, i32 %t214, i32 %t218) call void @exit(i32 1) unreachable ixok37: %t221 = getelementptr inbounds ptr, ptr %t216, i32 %t214 %t222 = load ptr, ptr %t221 call void @fn_emit(ptr %t222) - call void @fn_emit(ptr @.str11681) + call void @fn_emit(ptr @.str11692) %t223 = load ptr, ptr %t24 %t224 = load i32, ptr %t198 %t225 = getelementptr inbounds %LSlice, ptr %t223, i32 0, i32 0 @@ -160730,17 +160959,17 @@ ixok37: br i1 %t229, label %ixok39, label %ixbad40 ixbad40: %t230 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t230, ptr @.fmt_bounds, ptr @.str11682, i32 %t224, i32 %t228) + call i32 (ptr, ptr, ...) @fprintf(ptr %t230, ptr @.fmt_bounds, ptr @.str11693, i32 %t224, i32 %t228) call void @exit(i32 1) unreachable ixok39: %t231 = getelementptr inbounds ptr, ptr %t226, i32 %t224 %t232 = load ptr, ptr %t231 call void @fn_emit(ptr %t232) - call void @fn_emit(ptr @.str11683) + call void @fn_emit(ptr @.str11694) %t233 = load ptr, ptr %t209 call void @fn_emit(ptr %t233) - call void @fn_emit(ptr @.str11684) + call void @fn_emit(ptr @.str11695) %t234 = load ptr, ptr %t5 %t235 = getelementptr inbounds %Cmp_Node, ptr %t234, i32 0, i32 7 %t236 = load ptr, ptr %t235 @@ -160753,7 +160982,7 @@ ixok39: br i1 %t242, label %ixok41, label %ixbad42 ixbad42: %t243 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t243, ptr @.fmt_bounds, ptr @.str11685, i32 %t237, i32 %t241) + call i32 (ptr, ptr, ...) @fprintf(ptr %t243, ptr @.fmt_bounds, ptr @.str11696, i32 %t237, i32 %t241) call void @exit(i32 1) unreachable ixok41: @@ -160770,18 +160999,18 @@ ixok41: store i32 %t252, ptr %t198 br label %wcond34 wend36: - store ptr @.str11686, ptr %t253 + store ptr @.str11697, ptr %t253 %t254 = load ptr, ptr %t5 %t255 = getelementptr inbounds %Cmp_Node, ptr %t254, i32 0, i32 3 %t256 = load ptr, ptr %t255 - %t257 = call i32 @lp_str_eq(ptr %t256, ptr @.str11687) + %t257 = call i32 @lp_str_eq(ptr %t256, ptr @.str11698) %t258 = icmp ne i32 %t257, 0 br i1 %t258, label %then43, label %ifend45 then43: - store ptr @.str11688, ptr %t253 + store ptr @.str11699, ptr %t253 br label %ifend45 ifend45: - %t259 = call ptr @fn_find_extern(ptr @.str11689) + %t259 = call ptr @fn_find_extern(ptr @.str11700) %t260 = icmp eq ptr %t259, null %t261 = zext i1 %t260 to i32 %t262 = icmp ne i32 %t261, 0 @@ -160790,18 +161019,18 @@ then46: store i32 1, ptr @g_g_uses_loopback br label %ifend48 ifend48: - call void @fn_emit(ptr @.str11690) + call void @fn_emit(ptr @.str11701) %t263 = call ptr @fn_net_send_sym() call void @fn_emit(ptr %t263) - call void @fn_emit(ptr @.str11691) + call void @fn_emit(ptr @.str11702) %t264 = load ptr, ptr %t253 call void @fn_emit(ptr %t264) - call void @fn_emit(ptr @.str11692) + call void @fn_emit(ptr @.str11703) %t265 = load i32, ptr %t197 %t266 = call ptr @fn_itoa(i32 %t265) call void @fn_emit(ptr %t266) - call void @fn_emit(ptr @.str11693) - %t267 = call ptr @fn_val(ptr @.str11694, ptr @.str11695) + call void @fn_emit(ptr @.str11704) + %t267 = call ptr @fn_val(ptr @.str11705, ptr @.str11706) store ptr %t267, ptr %retval br label %ret ifend33: @@ -160826,7 +161055,7 @@ wbody50: br i1 %t281, label %then52, label %ifend54 then52: %t282 = load ptr, ptr %t269 - call void @fn_buf_puts(ptr %t282, ptr @.str11696) + call void @fn_buf_puts(ptr %t282, ptr @.str11707) br label %ifend54 ifend54: %t283 = load ptr, ptr %t269 @@ -160840,7 +161069,7 @@ ifend54: br i1 %t290, label %ixok55, label %ixbad56 ixbad56: %t291 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t291, ptr @.fmt_bounds, ptr @.str11697, i32 %t285, i32 %t289) + call i32 (ptr, ptr, ...) @fprintf(ptr %t291, ptr @.fmt_bounds, ptr @.str11708, i32 %t285, i32 %t289) call void @exit(i32 1) unreachable ixok55: @@ -160848,7 +161077,7 @@ ixok55: %t293 = load ptr, ptr %t292 call void @fn_buf_puts(ptr %t283, ptr %t293) %t294 = load ptr, ptr %t269 - call void @fn_buf_puts(ptr %t294, ptr @.str11698) + call void @fn_buf_puts(ptr %t294, ptr @.str11709) %t295 = load ptr, ptr %t269 %t296 = load ptr, ptr %t24 %t297 = load i32, ptr %t270 @@ -160860,7 +161089,7 @@ ixok55: br i1 %t302, label %ixok57, label %ixbad58 ixbad58: %t303 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t303, ptr @.fmt_bounds, ptr @.str11699, i32 %t297, i32 %t301) + call i32 (ptr, ptr, ...) @fprintf(ptr %t303, ptr @.fmt_bounds, ptr @.str11710, i32 %t297, i32 %t301) call void @exit(i32 1) unreachable ixok57: @@ -160882,35 +161111,35 @@ wend51: then59: %t314 = call ptr @fn_nreg() store ptr %t314, ptr %t315 - call void @fn_emit(ptr @.str11700) + call void @fn_emit(ptr @.str11711) %t316 = load ptr, ptr %t315 call void @fn_emit(ptr %t316) - call void @fn_emit(ptr @.str11701) + call void @fn_emit(ptr @.str11712) %t317 = load ptr, ptr %t0 %t318 = getelementptr inbounds %Cmp_Node, ptr %t317, i32 0, i32 1 %t319 = load ptr, ptr %t318 call void @fn_emit(ptr %t319) - call void @fn_emit(ptr @.str11702) + call void @fn_emit(ptr @.str11713) %t320 = load ptr, ptr %t269 %t321 = call ptr @fn_buf_str(ptr %t320) call void @fn_emit(ptr %t321) - call void @fn_emit(ptr @.str11703) + call void @fn_emit(ptr @.str11714) %t322 = load ptr, ptr %t315 - %t323 = call ptr @fn_val(ptr %t322, ptr @.str11704) + %t323 = call ptr @fn_val(ptr %t322, ptr @.str11715) store ptr %t323, ptr %retval br label %ret ifend61: - call void @fn_emit(ptr @.str11705) + call void @fn_emit(ptr @.str11716) %t324 = load ptr, ptr %t0 %t325 = getelementptr inbounds %Cmp_Node, ptr %t324, i32 0, i32 1 %t326 = load ptr, ptr %t325 call void @fn_emit(ptr %t326) - call void @fn_emit(ptr @.str11706) + call void @fn_emit(ptr @.str11717) %t327 = load ptr, ptr %t269 %t328 = call ptr @fn_buf_str(ptr %t327) call void @fn_emit(ptr %t328) - call void @fn_emit(ptr @.str11707) - %t329 = call ptr @fn_val(ptr @.str11708, ptr @.str11709) + call void @fn_emit(ptr @.str11718) + %t329 = call ptr @fn_val(ptr @.str11719, ptr @.str11720) store ptr %t329, ptr %retval br label %ret ret: @@ -161120,7 +161349,7 @@ ifend23: %t134 = icmp ne i32 %t133, 0 br i1 %t134, label %then24, label %ifend26 then24: - call void @fn_emit(ptr @.str11710) + call void @fn_emit(ptr @.str11721) %t135 = load ptr, ptr @g_brk_lbl %t136 = load i32, ptr @g_nloop %t137 = sub i32 %t136, 1 @@ -161132,14 +161361,14 @@ then24: br i1 %t142, label %ixok27, label %ixbad28 ixbad28: %t143 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t143, ptr @.fmt_bounds, ptr @.str11711, i32 %t137, i32 %t141) + call i32 (ptr, ptr, ...) @fprintf(ptr %t143, ptr @.fmt_bounds, ptr @.str11722, i32 %t137, i32 %t141) call void @exit(i32 1) unreachable ixok27: %t144 = getelementptr inbounds ptr, ptr %t139, i32 %t137 %t145 = load ptr, ptr %t144 call void @fn_emit(ptr %t145) - call void @fn_emit(ptr @.str11712) + call void @fn_emit(ptr @.str11723) store i32 1, ptr @g_g_term br label %ret ifend26: @@ -161151,7 +161380,7 @@ ifend26: %t151 = icmp ne i32 %t150, 0 br i1 %t151, label %then29, label %ifend31 then29: - call void @fn_emit(ptr @.str11713) + call void @fn_emit(ptr @.str11724) %t152 = load ptr, ptr @g_cnt_lbl %t153 = load i32, ptr @g_nloop %t154 = sub i32 %t153, 1 @@ -161163,14 +161392,14 @@ then29: br i1 %t159, label %ixok32, label %ixbad33 ixbad33: %t160 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t160, ptr @.fmt_bounds, ptr @.str11714, i32 %t154, i32 %t158) + call i32 (ptr, ptr, ...) @fprintf(ptr %t160, ptr @.fmt_bounds, ptr @.str11725, i32 %t154, i32 %t158) call void @exit(i32 1) unreachable ixok32: %t161 = getelementptr inbounds ptr, ptr %t156, i32 %t154 %t162 = load ptr, ptr %t161 call void @fn_emit(ptr %t162) - call void @fn_emit(ptr @.str11715) + call void @fn_emit(ptr @.str11726) store i32 1, ptr @g_g_term br label %ret ifend31: @@ -161300,13 +161529,13 @@ then61: %t241 = icmp ne i32 %t240, 0 br i1 %t241, label %then64, label %ifend66 then64: - call void @fn_perr(ptr @.str11716) + call void @fn_perr(ptr @.str11727) br label %ifend66 ifend66: - call void @fn_emit(ptr @.str11717) + call void @fn_emit(ptr @.str11728) %t242 = load ptr, ptr @g_g_cancel_addr call void @fn_emit(ptr %t242) - call void @fn_emit(ptr @.str11718) + call void @fn_emit(ptr @.str11729) br label %ret ifend63: %t243 = load ptr, ptr %t0 @@ -161348,7 +161577,7 @@ then73: store ptr %t266, ptr %t267 br label %ret ifend75: - call void @fn_perr(ptr @.str11719) + call void @fn_perr(ptr @.str11730) br label %ret ret: ret void @@ -161379,7 +161608,7 @@ then0: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str11720, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str11731, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -161396,7 +161625,7 @@ ixok3: br i1 %t25, label %ixok5, label %ixbad6 ixbad6: %t26 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str11721, i32 %t20, i32 %t24) + call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str11732, i32 %t20, i32 %t24) call void @exit(i32 1) unreachable ixok5: @@ -161507,7 +161736,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11722, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11733, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -161568,7 +161797,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11723, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11734, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -161622,7 +161851,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11724, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11735, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -161642,7 +161871,7 @@ ifend7: store i32 %t23, ptr %t0 br label %wcond0 wend2: - %t24 = call ptr @fn_find_comp(ptr @.str11725) + %t24 = call ptr @fn_find_comp(ptr @.str11736) %t25 = icmp ne ptr %t24, null %t26 = zext i1 %t25 to i32 %t27 = icmp ne i32 %t26, 0 @@ -161684,7 +161913,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11726, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11737, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -161739,12 +161968,12 @@ ret: define void @fn_emit_ecs_storage() { entry: %t7 = alloca ptr - %t24 = alloca i32 - %t42 = alloca ptr - %t94 = alloca i32 - call void @fn_emith(ptr @.str11727) - call void @fn_emith(ptr @.str11728) - call void @fn_emith(ptr @.str11729) + %t12 = alloca i32 + %t30 = alloca ptr + %t71 = alloca i32 + call void @fn_emith(ptr @.str11738) + call void @fn_emith(ptr @.str11739) + call void @fn_emith(ptr @.str11740) %t0 = load ptr, ptr @g_g_scenes %t1 = getelementptr inbounds %LSlice, ptr %t0, i32 0, i32 1 %t2 = load i32, ptr %t1 @@ -161753,176 +161982,155 @@ entry: %t5 = icmp ne i32 %t4, 0 br i1 %t5, label %then0, label %ifend2 then0: - call void @fn_emith(ptr @.str11730) + call void @fn_emith(ptr @.str11741) br label %ifend2 ifend2: - call void @fn_emith(ptr @.str11731) + call void @fn_emith(ptr @.str11742) %t6 = call ptr @fn_itoa(i32 1024) store ptr %t6, ptr %t7 - %t8 = load ptr, ptr %t7 - %t9 = call ptr @lp_str_concat(ptr @.str11732, ptr %t8) - %t10 = call ptr @lp_str_concat(ptr %t9, ptr @.str11733) - call void @fn_emith(ptr %t10) - %t11 = load ptr, ptr %t7 - %t12 = call ptr @lp_str_concat(ptr @.str11734, ptr %t11) - %t13 = call ptr @lp_str_concat(ptr %t12, ptr @.str11735) - call void @fn_emith(ptr %t13) - %t14 = load ptr, ptr %t7 - %t15 = call ptr @lp_str_concat(ptr @.str11736, ptr %t14) - %t16 = call ptr @lp_str_concat(ptr %t15, ptr @.str11737) - call void @fn_emith(ptr %t16) - call void @fn_emith(ptr @.str11738) - %t17 = call i32 @fn_net_any() - %t18 = icmp ne i32 %t17, 0 - br i1 %t18, label %then3, label %ifend5 + call void @fn_emith(ptr @.str11743) + call void @fn_emith(ptr @.str11744) + call void @fn_emith(ptr @.str11745) + call void @fn_emith(ptr @.str11746) + call void @fn_emith(ptr @.str11747) + call void @fn_emith(ptr @.str11748) + %t8 = call i32 @fn_net_any() + %t9 = icmp ne i32 %t8, 0 + br i1 %t9, label %then3, label %ifend5 then3: - call void @fn_emith(ptr @.str11739) - call void @fn_emith(ptr @.str11740) + call void @fn_emith(ptr @.str11749) + call void @fn_emith(ptr @.str11750) br label %ifend5 ifend5: - %t19 = call i32 @fn_net_has_owned() - %t20 = icmp ne i32 %t19, 0 - br i1 %t20, label %then6, label %ifend8 + %t10 = call i32 @fn_net_has_owned() + %t11 = icmp ne i32 %t10, 0 + br i1 %t11, label %then6, label %ifend8 then6: - %t21 = load ptr, ptr %t7 - %t22 = call ptr @lp_str_concat(ptr @.str11741, ptr %t21) - %t23 = call ptr @lp_str_concat(ptr %t22, ptr @.str11742) - call void @fn_emith(ptr %t23) + call void @fn_emith(ptr @.str11751) br label %ifend8 ifend8: - store i32 0, ptr %t24 + store i32 0, ptr %t12 br label %wcond9 wcond9: - %t25 = load i32, ptr %t24 - %t26 = load ptr, ptr @g_prog - %t27 = getelementptr inbounds %LSlice, ptr %t26, i32 0, i32 1 - %t28 = load i32, ptr %t27 - %t29 = icmp slt i32 %t25, %t28 - %t30 = zext i1 %t29 to i32 - %t31 = icmp ne i32 %t30, 0 - br i1 %t31, label %wbody10, label %wend11 + %t13 = load i32, ptr %t12 + %t14 = load ptr, ptr @g_prog + %t15 = getelementptr inbounds %LSlice, ptr %t14, i32 0, i32 1 + %t16 = load i32, ptr %t15 + %t17 = icmp slt i32 %t13, %t16 + %t18 = zext i1 %t17 to i32 + %t19 = icmp ne i32 %t18, 0 + br i1 %t19, label %wbody10, label %wend11 wbody10: - %t32 = load ptr, ptr @g_prog - %t33 = load i32, ptr %t24 - %t34 = getelementptr inbounds %LSlice, ptr %t32, i32 0, i32 0 - %t35 = load ptr, ptr %t34 - %t36 = getelementptr inbounds %LSlice, ptr %t32, i32 0, i32 1 - %t37 = load i32, ptr %t36 - %t38 = icmp ult i32 %t33, %t37 - br i1 %t38, label %ixok12, label %ixbad13 + %t20 = load ptr, ptr @g_prog + %t21 = load i32, ptr %t12 + %t22 = getelementptr inbounds %LSlice, ptr %t20, i32 0, i32 0 + %t23 = load ptr, ptr %t22 + %t24 = getelementptr inbounds %LSlice, ptr %t20, i32 0, i32 1 + %t25 = load i32, ptr %t24 + %t26 = icmp ult i32 %t21, %t25 + br i1 %t26, label %ixok12, label %ixbad13 ixbad13: - %t39 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str11743, i32 %t33, i32 %t37) + %t27 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t27, ptr @.fmt_bounds, ptr @.str11752, i32 %t21, i32 %t25) call void @exit(i32 1) unreachable ixok12: - %t40 = getelementptr inbounds ptr, ptr %t35, i32 %t33 - %t41 = load ptr, ptr %t40 - store ptr %t41, ptr %t42 - %t43 = load ptr, ptr %t42 - %t44 = getelementptr inbounds %Cmp_Node, ptr %t43, i32 0, i32 0 - %t45 = load i32, ptr %t44 - %t46 = icmp eq i32 %t45, 8 - %t47 = zext i1 %t46 to i32 - %t48 = icmp ne i32 %t47, 0 - br i1 %t48, label %then14, label %ifend16 + %t28 = getelementptr inbounds ptr, ptr %t23, i32 %t21 + %t29 = load ptr, ptr %t28 + store ptr %t29, ptr %t30 + %t31 = load ptr, ptr %t30 + %t32 = getelementptr inbounds %Cmp_Node, ptr %t31, i32 0, i32 0 + %t33 = load i32, ptr %t32 + %t34 = icmp eq i32 %t33, 8 + %t35 = zext i1 %t34 to i32 + %t36 = icmp ne i32 %t35, 0 + br i1 %t36, label %then14, label %ifend16 then14: - %t49 = load ptr, ptr %t42 - %t50 = getelementptr inbounds %Cmp_Node, ptr %t49, i32 0, i32 1 - %t51 = load ptr, ptr %t50 - %t52 = call ptr @lp_str_concat(ptr @.str11744, ptr %t51) - %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str11745) - %t54 = load ptr, ptr %t7 - %t55 = call ptr @lp_str_concat(ptr %t53, ptr %t54) - %t56 = call ptr @lp_str_concat(ptr %t55, ptr @.str11746) - %t57 = load ptr, ptr %t42 - %t58 = getelementptr inbounds %Cmp_Node, ptr %t57, i32 0, i32 1 - %t59 = load ptr, ptr %t58 - %t60 = call ptr @lp_str_concat(ptr %t56, ptr %t59) - %t61 = call ptr @lp_str_concat(ptr %t60, ptr @.str11747) - call void @fn_emith(ptr %t61) - %t62 = load ptr, ptr %t42 - %t63 = getelementptr inbounds %Cmp_Node, ptr %t62, i32 0, i32 1 - %t64 = load ptr, ptr %t63 - %t65 = call ptr @lp_str_concat(ptr @.str11748, ptr %t64) - %t66 = call ptr @lp_str_concat(ptr %t65, ptr @.str11749) - %t67 = load ptr, ptr %t7 - %t68 = call ptr @lp_str_concat(ptr %t66, ptr %t67) - %t69 = call ptr @lp_str_concat(ptr %t68, ptr @.str11750) - call void @fn_emith(ptr %t69) + %t37 = load ptr, ptr %t30 + %t38 = getelementptr inbounds %Cmp_Node, ptr %t37, i32 0, i32 1 + %t39 = load ptr, ptr %t38 + %t40 = call ptr @lp_str_concat(ptr @.str11753, ptr %t39) + %t41 = call ptr @lp_str_concat(ptr %t40, ptr @.str11754) + call void @fn_emith(ptr %t41) + %t42 = load ptr, ptr %t30 + %t43 = getelementptr inbounds %Cmp_Node, ptr %t42, i32 0, i32 1 + %t44 = load ptr, ptr %t43 + %t45 = call ptr @lp_str_concat(ptr @.str11755, ptr %t44) + %t46 = call ptr @lp_str_concat(ptr %t45, ptr @.str11756) + call void @fn_emith(ptr %t46) br label %ifend16 ifend16: - %t70 = load ptr, ptr %t42 - %t71 = getelementptr inbounds %Cmp_Node, ptr %t70, i32 0, i32 0 - %t72 = load i32, ptr %t71 - %t73 = icmp eq i32 %t72, 10 - %t74 = zext i1 %t73 to i32 - %t75 = icmp ne i32 %t74, 0 - br i1 %t75, label %then17, label %ifend19 + %t47 = load ptr, ptr %t30 + %t48 = getelementptr inbounds %Cmp_Node, ptr %t47, i32 0, i32 0 + %t49 = load i32, ptr %t48 + %t50 = icmp eq i32 %t49, 10 + %t51 = zext i1 %t50 to i32 + %t52 = icmp ne i32 %t51, 0 + br i1 %t52, label %then17, label %ifend19 then17: - %t76 = load ptr, ptr %t42 - %t77 = getelementptr inbounds %Cmp_Node, ptr %t76, i32 0, i32 1 - %t78 = load ptr, ptr %t77 - %t79 = call ptr @lp_str_concat(ptr @.str11751, ptr %t78) - %t80 = call ptr @lp_str_concat(ptr %t79, ptr @.str11752) - call void @fn_emith(ptr %t80) + %t53 = load ptr, ptr %t30 + %t54 = getelementptr inbounds %Cmp_Node, ptr %t53, i32 0, i32 1 + %t55 = load ptr, ptr %t54 + %t56 = call ptr @lp_str_concat(ptr @.str11757, ptr %t55) + %t57 = call ptr @lp_str_concat(ptr %t56, ptr @.str11758) + call void @fn_emith(ptr %t57) br label %ifend19 ifend19: - %t81 = load ptr, ptr %t42 - %t82 = getelementptr inbounds %Cmp_Node, ptr %t81, i32 0, i32 0 - %t83 = load i32, ptr %t82 - %t84 = icmp eq i32 %t83, 9 - %t85 = zext i1 %t84 to i32 - %t86 = icmp ne i32 %t85, 0 - br i1 %t86, label %then20, label %ifend22 + %t58 = load ptr, ptr %t30 + %t59 = getelementptr inbounds %Cmp_Node, ptr %t58, i32 0, i32 0 + %t60 = load i32, ptr %t59 + %t61 = icmp eq i32 %t60, 9 + %t62 = zext i1 %t61 to i32 + %t63 = icmp ne i32 %t62, 0 + br i1 %t63, label %then20, label %ifend22 then20: - %t87 = load ptr, ptr %t42 - %t88 = getelementptr inbounds %Cmp_Node, ptr %t87, i32 0, i32 1 - %t89 = load ptr, ptr %t88 - %t90 = call ptr @lp_str_concat(ptr @.str11753, ptr %t89) - %t91 = call ptr @lp_str_concat(ptr %t90, ptr @.str11754) - call void @fn_emith(ptr %t91) + %t64 = load ptr, ptr %t30 + %t65 = getelementptr inbounds %Cmp_Node, ptr %t64, i32 0, i32 1 + %t66 = load ptr, ptr %t65 + %t67 = call ptr @lp_str_concat(ptr @.str11759, ptr %t66) + %t68 = call ptr @lp_str_concat(ptr %t67, ptr @.str11760) + call void @fn_emith(ptr %t68) br label %ifend22 ifend22: - %t92 = load i32, ptr %t24 - %t93 = add i32 %t92, 1 - store i32 %t93, ptr %t24 + %t69 = load i32, ptr %t12 + %t70 = add i32 %t69, 1 + store i32 %t70, ptr %t12 br label %wcond9 wend11: - store i32 0, ptr %t94 + store i32 0, ptr %t71 br label %wcond23 wcond23: - %t95 = load i32, ptr %t94 - %t96 = load ptr, ptr @g_g_toggled_layers - %t97 = getelementptr inbounds %LSlice, ptr %t96, i32 0, i32 1 - %t98 = load i32, ptr %t97 - %t99 = icmp slt i32 %t95, %t98 - %t100 = zext i1 %t99 to i32 - %t101 = icmp ne i32 %t100, 0 - br i1 %t101, label %wbody24, label %wend25 + %t72 = load i32, ptr %t71 + %t73 = load ptr, ptr @g_g_toggled_layers + %t74 = getelementptr inbounds %LSlice, ptr %t73, i32 0, i32 1 + %t75 = load i32, ptr %t74 + %t76 = icmp slt i32 %t72, %t75 + %t77 = zext i1 %t76 to i32 + %t78 = icmp ne i32 %t77, 0 + br i1 %t78, label %wbody24, label %wend25 wbody24: - %t102 = load ptr, ptr @g_g_toggled_layers - %t103 = load i32, ptr %t94 - %t104 = getelementptr inbounds %LSlice, ptr %t102, i32 0, i32 0 - %t105 = load ptr, ptr %t104 - %t106 = getelementptr inbounds %LSlice, ptr %t102, i32 0, i32 1 - %t107 = load i32, ptr %t106 - %t108 = icmp ult i32 %t103, %t107 - br i1 %t108, label %ixok26, label %ixbad27 + %t79 = load ptr, ptr @g_g_toggled_layers + %t80 = load i32, ptr %t71 + %t81 = getelementptr inbounds %LSlice, ptr %t79, i32 0, i32 0 + %t82 = load ptr, ptr %t81 + %t83 = getelementptr inbounds %LSlice, ptr %t79, i32 0, i32 1 + %t84 = load i32, ptr %t83 + %t85 = icmp ult i32 %t80, %t84 + br i1 %t85, label %ixok26, label %ixbad27 ixbad27: - %t109 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t109, ptr @.fmt_bounds, ptr @.str11756, i32 %t103, i32 %t107) + %t86 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t86, ptr @.fmt_bounds, ptr @.str11762, i32 %t80, i32 %t84) call void @exit(i32 1) unreachable ixok26: - %t110 = getelementptr inbounds ptr, ptr %t105, i32 %t103 - %t111 = load ptr, ptr %t110 - %t112 = call ptr @lp_str_concat(ptr @.str11755, ptr %t111) - %t113 = call ptr @lp_str_concat(ptr %t112, ptr @.str11757) - call void @fn_emith(ptr %t113) - %t114 = load i32, ptr %t94 - %t115 = add i32 %t114, 1 - store i32 %t115, ptr %t94 + %t87 = getelementptr inbounds ptr, ptr %t82, i32 %t80 + %t88 = load ptr, ptr %t87 + %t89 = call ptr @lp_str_concat(ptr @.str11761, ptr %t88) + %t90 = call ptr @lp_str_concat(ptr %t89, ptr @.str11763) + call void @fn_emith(ptr %t90) + %t91 = load i32, ptr %t71 + %t92 = add i32 %t91, 1 + store i32 %t92, ptr %t71 br label %wcond23 wend25: br label %ret @@ -161935,9 +162143,17 @@ entry: %t1 = alloca ptr %t2 = alloca i32 %t28 = alloca ptr + %t43 = alloca ptr + %t50 = alloca ptr + %t55 = alloca ptr + %t58 = alloca ptr + %t61 = alloca ptr + %t64 = alloca ptr + %t67 = alloca ptr %t0 = call ptr @fn_itoa(i32 1024) store ptr %t0, ptr %t1 - call void @fn_emit(ptr @.str11758) + call void @fn_emit_ecs_grow() + call void @fn_emit(ptr @.str11764) store i32 0, ptr %t2 br label %wcond0 wcond0: @@ -161960,7 +162176,7 @@ wbody1: br i1 %t16, label %ixok3, label %ixbad4 ixbad4: %t17 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11759, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11765, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok3: @@ -161975,73 +162191,68 @@ ixok3: then5: %t25 = load i32, ptr %t2 %t26 = call ptr @fn_itoa(i32 %t25) - %t27 = call ptr @lp_str_concat(ptr @.str11760, ptr %t26) + %t27 = call ptr @lp_str_concat(ptr @.str11766, ptr %t26) store ptr %t27, ptr %t28 - call void @fn_emit(ptr @.str11761) - %t29 = load ptr, ptr %t28 - call void @fn_emit(ptr %t29) - call void @fn_emit(ptr @.str11762) - %t30 = load ptr, ptr %t1 - call void @fn_emit(ptr %t30) - call void @fn_emit(ptr @.str11763) - %t31 = load ptr, ptr @g_prog - %t32 = load i32, ptr %t2 - %t33 = getelementptr inbounds %LSlice, ptr %t31, i32 0, i32 0 - %t34 = load ptr, ptr %t33 - %t35 = getelementptr inbounds %LSlice, ptr %t31, i32 0, i32 1 - %t36 = load i32, ptr %t35 - %t37 = icmp ult i32 %t32, %t36 - br i1 %t37, label %ixok8, label %ixbad9 + %t29 = load ptr, ptr @g_prog + %t30 = load i32, ptr %t2 + %t31 = getelementptr inbounds %LSlice, ptr %t29, i32 0, i32 0 + %t32 = load ptr, ptr %t31 + %t33 = getelementptr inbounds %LSlice, ptr %t29, i32 0, i32 1 + %t34 = load i32, ptr %t33 + %t35 = icmp ult i32 %t30, %t34 + br i1 %t35, label %ixok8, label %ixbad9 ixbad9: - %t38 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t38, ptr @.fmt_bounds, ptr @.str11764, i32 %t32, i32 %t36) + %t36 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str11768, i32 %t30, i32 %t34) call void @exit(i32 1) unreachable ixok8: - %t39 = getelementptr inbounds ptr, ptr %t34, i32 %t32 + %t37 = getelementptr inbounds ptr, ptr %t32, i32 %t30 + %t38 = load ptr, ptr %t37 + %t39 = getelementptr inbounds %Cmp_Node, ptr %t38, i32 0, i32 1 %t40 = load ptr, ptr %t39 - %t41 = getelementptr inbounds %Cmp_Node, ptr %t40, i32 0, i32 1 - %t42 = load ptr, ptr %t41 - call void @fn_emit(ptr %t42) - call void @fn_emit(ptr @.str11765) - call void @fn_emit(ptr @.str11766) - %t43 = load ptr, ptr %t28 - call void @fn_emit(ptr %t43) - call void @fn_emit(ptr @.str11767) + %t41 = call ptr @lp_str_concat(ptr @.str11767, ptr %t40) + %t42 = call ptr @fn_ecs_base(ptr %t41) + store ptr %t42, ptr %t43 + call void @fn_emit(ptr @.str11769) + %t44 = load ptr, ptr %t28 + call void @fn_emit(ptr %t44) + call void @fn_emit(ptr @.str11770) + %t45 = load ptr, ptr %t43 + call void @fn_emit(ptr %t45) + call void @fn_emit(ptr @.str11771) + call void @fn_emit(ptr @.str11772) + %t46 = load ptr, ptr %t28 + call void @fn_emit(ptr %t46) + call void @fn_emit(ptr @.str11773) br label %ifend7 ifend7: - %t44 = load i32, ptr %t2 - %t45 = add i32 %t44, 1 - store i32 %t45, ptr %t2 + %t47 = load i32, ptr %t2 + %t48 = add i32 %t47, 1 + store i32 %t48, ptr %t2 br label %wcond0 wend2: - call void @fn_emit(ptr @.str11768) - %t46 = load ptr, ptr %t1 - call void @fn_emit(ptr %t46) - call void @fn_emit(ptr @.str11769) - call void @fn_emit(ptr @.str11770) - %t47 = call i32 @fn_net_has_owned() - %t48 = icmp ne i32 %t47, 0 - br i1 %t48, label %then10, label %ifend12 -then10: - call void @fn_emit(ptr @.str11771) - %t49 = load ptr, ptr %t1 - call void @fn_emit(ptr %t49) - call void @fn_emit(ptr @.str11772) - call void @fn_emit(ptr @.str11773) - br label %ifend12 -ifend12: - call void @fn_emit(ptr @.str11774) + %t49 = call ptr @fn_ecs_base(ptr @.str11774) + store ptr %t49, ptr %t50 call void @fn_emit(ptr @.str11775) + %t51 = load ptr, ptr %t50 + call void @fn_emit(ptr %t51) call void @fn_emit(ptr @.str11776) call void @fn_emit(ptr @.str11777) - call void @fn_emit(ptr @.str11778) + %t52 = call i32 @fn_net_has_owned() + %t53 = icmp ne i32 %t52, 0 + br i1 %t53, label %then10, label %ifend12 +then10: + %t54 = call ptr @fn_ecs_base(ptr @.str11778) + store ptr %t54, ptr %t55 call void @fn_emit(ptr @.str11779) + %t56 = load ptr, ptr %t55 + call void @fn_emit(ptr %t56) call void @fn_emit(ptr @.str11780) call void @fn_emit(ptr @.str11781) + br label %ifend12 +ifend12: call void @fn_emit(ptr @.str11782) - %t50 = load ptr, ptr %t1 - call void @fn_emit(ptr %t50) call void @fn_emit(ptr @.str11783) call void @fn_emit(ptr @.str11784) call void @fn_emit(ptr @.str11785) @@ -162049,32 +162260,418 @@ ifend12: call void @fn_emit(ptr @.str11787) call void @fn_emit(ptr @.str11788) call void @fn_emit(ptr @.str11789) - call void @fn_emit(ptr @.str11790) + %t57 = call ptr @fn_ecs_base(ptr @.str11790) + store ptr %t57, ptr %t58 call void @fn_emit(ptr @.str11791) + %t59 = load ptr, ptr %t58 + call void @fn_emit(ptr %t59) call void @fn_emit(ptr @.str11792) call void @fn_emit(ptr @.str11793) call void @fn_emit(ptr @.str11794) - %t51 = load ptr, ptr %t1 - call void @fn_emit(ptr %t51) call void @fn_emit(ptr @.str11795) call void @fn_emit(ptr @.str11796) call void @fn_emit(ptr @.str11797) call void @fn_emit(ptr @.str11798) call void @fn_emit(ptr @.str11799) - %t52 = load ptr, ptr %t1 - call void @fn_emit(ptr %t52) call void @fn_emit(ptr @.str11800) call void @fn_emit(ptr @.str11801) call void @fn_emit(ptr @.str11802) call void @fn_emit(ptr @.str11803) - call void @fn_emit(ptr @.str11804) - %t53 = load ptr, ptr %t1 - call void @fn_emit(ptr %t53) + %t60 = call ptr @fn_ecs_base(ptr @.str11804) + store ptr %t60, ptr %t61 call void @fn_emit(ptr @.str11805) + %t62 = load ptr, ptr %t61 + call void @fn_emit(ptr %t62) call void @fn_emit(ptr @.str11806) call void @fn_emit(ptr @.str11807) call void @fn_emit(ptr @.str11808) call void @fn_emit(ptr @.str11809) + %t63 = call ptr @fn_ecs_base(ptr @.str11810) + store ptr %t63, ptr %t64 + call void @fn_emit(ptr @.str11811) + %t65 = load ptr, ptr %t64 + call void @fn_emit(ptr %t65) + call void @fn_emit(ptr @.str11812) + call void @fn_emit(ptr @.str11813) + call void @fn_emit(ptr @.str11814) + call void @fn_emit(ptr @.str11815) + %t66 = call ptr @fn_ecs_base(ptr @.str11816) + store ptr %t66, ptr %t67 + call void @fn_emit(ptr @.str11817) + %t68 = load ptr, ptr %t67 + call void @fn_emit(ptr %t68) + call void @fn_emit(ptr @.str11818) + call void @fn_emit(ptr @.str11819) + call void @fn_emit(ptr @.str11820) + call void @fn_emit(ptr @.str11821) + call void @fn_emit(ptr @.str11822) + br label %ret +ret: + ret void +} + +define ptr @fn_ecs_base(ptr %arg_store) { +entry: + %retval = alloca ptr + %t0 = alloca ptr + %t4 = alloca ptr + store ptr %arg_store, ptr %t0 + %t1 = load i32, ptr @g_ll_t + %t2 = call ptr @fn_itoa(i32 %t1) + %t3 = call ptr @lp_str_concat(ptr @.str11823, ptr %t2) + store ptr %t3, ptr %t4 + %t5 = load i32, ptr @g_ll_t + %t6 = add i32 %t5, 1 + store i32 %t6, ptr @g_ll_t + %t7 = load ptr, ptr %t4 + %t8 = call ptr @lp_str_concat(ptr @.str11824, ptr %t7) + %t9 = call ptr @lp_str_concat(ptr %t8, ptr @.str11825) + %t10 = load ptr, ptr %t0 + %t11 = call ptr @lp_str_concat(ptr %t9, ptr %t10) + %t12 = call ptr @lp_str_concat(ptr %t11, ptr @.str11826) + call void @fn_emit(ptr %t12) + %t13 = load ptr, ptr %t4 + store ptr %t13, ptr %retval + br label %ret +ret: + %t14 = load ptr, ptr %retval + ret ptr %t14 +} + +define void @fn_emit_ecs_grow() { +entry: + %t5 = alloca i32 + %t6 = alloca i32 + %t32 = alloca ptr + call void @fn_emit(ptr @.str11827) + call void @fn_emit(ptr @.str11828) + %t0 = call ptr @fn_itoa(i32 1024) + %t1 = call ptr @lp_str_concat(ptr @.str11829, ptr %t0) + %t2 = call ptr @lp_str_concat(ptr %t1, ptr @.str11830) + call void @fn_emit(ptr %t2) + call void @fn_emit(ptr @.str11831) + call void @fn_emit(ptr @.str11832) + call void @fn_emit(ptr @.str11833) + call void @fn_emit_grow_store(ptr @.str11834, ptr @.str11835, i32 0) + call void @fn_emit_grow_store(ptr @.str11836, ptr @.str11837, i32 1) + call void @fn_emit_grow_store(ptr @.str11838, ptr @.str11839, i32 2) + %t3 = call i32 @fn_net_has_owned() + %t4 = icmp ne i32 %t3, 0 + br i1 %t4, label %then0, label %ifend2 +then0: + call void @fn_emit_grow_store(ptr @.str11840, ptr @.str11841, i32 3) + br label %ifend2 +ifend2: + store i32 4, ptr %t5 + store i32 0, ptr %t6 + br label %wcond3 +wcond3: + %t7 = load i32, ptr %t6 + %t8 = load ptr, ptr @g_prog + %t9 = getelementptr inbounds %LSlice, ptr %t8, i32 0, i32 1 + %t10 = load i32, ptr %t9 + %t11 = icmp slt i32 %t7, %t10 + %t12 = zext i1 %t11 to i32 + %t13 = icmp ne i32 %t12, 0 + br i1 %t13, label %wbody4, label %wend5 +wbody4: + %t14 = load ptr, ptr @g_prog + %t15 = load i32, ptr %t6 + %t16 = getelementptr inbounds %LSlice, ptr %t14, i32 0, i32 0 + %t17 = load ptr, ptr %t16 + %t18 = getelementptr inbounds %LSlice, ptr %t14, i32 0, i32 1 + %t19 = load i32, ptr %t18 + %t20 = icmp ult i32 %t15, %t19 + br i1 %t20, label %ixok6, label %ixbad7 +ixbad7: + %t21 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11842, i32 %t15, i32 %t19) + call void @exit(i32 1) + unreachable +ixok6: + %t22 = getelementptr inbounds ptr, ptr %t17, i32 %t15 + %t23 = load ptr, ptr %t22 + %t24 = getelementptr inbounds %Cmp_Node, ptr %t23, i32 0, i32 0 + %t25 = load i32, ptr %t24 + %t26 = icmp eq i32 %t25, 8 + %t27 = zext i1 %t26 to i32 + %t28 = icmp ne i32 %t27, 0 + br i1 %t28, label %then8, label %ifend10 +then8: + %t29 = load i32, ptr %t5 + %t30 = call ptr @fn_itoa(i32 %t29) + %t31 = call ptr @lp_str_concat(ptr @.str11843, ptr %t30) + store ptr %t31, ptr %t32 + %t33 = load ptr, ptr %t32 + %t34 = call ptr @lp_str_concat(ptr @.str11844, ptr %t33) + %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str11845) + %t36 = load ptr, ptr @g_prog + %t37 = load i32, ptr %t6 + %t38 = getelementptr inbounds %LSlice, ptr %t36, i32 0, i32 0 + %t39 = load ptr, ptr %t38 + %t40 = getelementptr inbounds %LSlice, ptr %t36, i32 0, i32 1 + %t41 = load i32, ptr %t40 + %t42 = icmp ult i32 %t37, %t41 + br i1 %t42, label %ixok11, label %ixbad12 +ixbad12: + %t43 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str11846, i32 %t37, i32 %t41) + call void @exit(i32 1) + unreachable +ixok11: + %t44 = getelementptr inbounds ptr, ptr %t39, i32 %t37 + %t45 = load ptr, ptr %t44 + %t46 = getelementptr inbounds %Cmp_Node, ptr %t45, i32 0, i32 1 + %t47 = load ptr, ptr %t46 + %t48 = call ptr @lp_str_concat(ptr %t35, ptr %t47) + %t49 = call ptr @lp_str_concat(ptr %t48, ptr @.str11847) + call void @fn_emit(ptr %t49) + %t50 = load ptr, ptr @g_prog + %t51 = load i32, ptr %t6 + %t52 = getelementptr inbounds %LSlice, ptr %t50, i32 0, i32 0 + %t53 = load ptr, ptr %t52 + %t54 = getelementptr inbounds %LSlice, ptr %t50, i32 0, i32 1 + %t55 = load i32, ptr %t54 + %t56 = icmp ult i32 %t51, %t55 + br i1 %t56, label %ixok13, label %ixbad14 +ixbad14: + %t57 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t57, ptr @.fmt_bounds, ptr @.str11849, i32 %t51, i32 %t55) + call void @exit(i32 1) + unreachable +ixok13: + %t58 = getelementptr inbounds ptr, ptr %t53, i32 %t51 + %t59 = load ptr, ptr %t58 + %t60 = getelementptr inbounds %Cmp_Node, ptr %t59, i32 0, i32 1 + %t61 = load ptr, ptr %t60 + %t62 = call ptr @lp_str_concat(ptr @.str11848, ptr %t61) + %t63 = load ptr, ptr %t32 + %t64 = load i32, ptr %t5 + call void @fn_emit_grow_store(ptr %t62, ptr %t63, i32 %t64) + %t65 = load ptr, ptr @g_prog + %t66 = load i32, ptr %t6 + %t67 = getelementptr inbounds %LSlice, ptr %t65, i32 0, i32 0 + %t68 = load ptr, ptr %t67 + %t69 = getelementptr inbounds %LSlice, ptr %t65, i32 0, i32 1 + %t70 = load i32, ptr %t69 + %t71 = icmp ult i32 %t66, %t70 + br i1 %t71, label %ixok15, label %ixbad16 +ixbad16: + %t72 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t72, ptr @.fmt_bounds, ptr @.str11851, i32 %t66, i32 %t70) + call void @exit(i32 1) + unreachable +ixok15: + %t73 = getelementptr inbounds ptr, ptr %t68, i32 %t66 + %t74 = load ptr, ptr %t73 + %t75 = getelementptr inbounds %Cmp_Node, ptr %t74, i32 0, i32 1 + %t76 = load ptr, ptr %t75 + %t77 = call ptr @lp_str_concat(ptr @.str11850, ptr %t76) + %t78 = load i32, ptr %t5 + %t79 = add i32 %t78, 1 + call void @fn_emit_grow_store(ptr %t77, ptr @.str11852, i32 %t79) + %t80 = load i32, ptr %t5 + %t81 = add i32 %t80, 2 + store i32 %t81, ptr %t5 + br label %ifend10 +ifend10: + %t82 = load i32, ptr %t6 + %t83 = add i32 %t82, 1 + store i32 %t83, ptr %t6 + br label %wcond3 +wend5: + call void @fn_emit_grow_dyn() + call void @fn_emit(ptr @.str11853) + br label %ret +ret: + ret void +} + +define void @fn_emit_grow_store(ptr %arg_store, ptr %arg_esz, i32 %arg_k) { +entry: + %t0 = alloca ptr + %t1 = alloca ptr + %t2 = alloca i32 + %t5 = alloca ptr + store ptr %arg_store, ptr %t0 + store ptr %arg_esz, ptr %t1 + store i32 %arg_k, ptr %t2 + %t3 = load i32, ptr %t2 + %t4 = call ptr @fn_itoa(i32 %t3) + store ptr %t4, ptr %t5 + %t6 = load ptr, ptr %t5 + %t7 = call ptr @lp_str_concat(ptr @.str11854, ptr %t6) + %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str11855) + %t9 = load ptr, ptr %t0 + %t10 = call ptr @lp_str_concat(ptr %t8, ptr %t9) + %t11 = call ptr @lp_str_concat(ptr %t10, ptr @.str11856) + %t12 = load ptr, ptr %t5 + %t13 = call ptr @lp_str_concat(ptr %t11, ptr %t12) + %t14 = call ptr @lp_str_concat(ptr %t13, ptr @.str11857) + %t15 = load ptr, ptr %t1 + %t16 = call ptr @lp_str_concat(ptr %t14, ptr %t15) + %t17 = call ptr @lp_str_concat(ptr %t16, ptr @.str11858) + %t18 = load ptr, ptr %t5 + %t19 = call ptr @lp_str_concat(ptr %t17, ptr %t18) + %t20 = call ptr @lp_str_concat(ptr %t19, ptr @.str11859) + %t21 = load ptr, ptr %t5 + %t22 = call ptr @lp_str_concat(ptr %t20, ptr %t21) + %t23 = call ptr @lp_str_concat(ptr %t22, ptr @.str11860) + call void @fn_emit(ptr %t23) + %t24 = load ptr, ptr %t5 + %t25 = call ptr @lp_str_concat(ptr @.str11861, ptr %t24) + %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str11862) + %t27 = load ptr, ptr %t5 + %t28 = call ptr @lp_str_concat(ptr %t26, ptr %t27) + %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str11863) + %t30 = load ptr, ptr %t5 + %t31 = call ptr @lp_str_concat(ptr %t29, ptr %t30) + %t32 = call ptr @lp_str_concat(ptr %t31, ptr @.str11864) + %t33 = load ptr, ptr %t5 + %t34 = call ptr @lp_str_concat(ptr %t32, ptr %t33) + %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str11865) + %t36 = load ptr, ptr %t1 + %t37 = call ptr @lp_str_concat(ptr %t35, ptr %t36) + %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str11866) + call void @fn_emit(ptr %t38) + %t39 = load ptr, ptr %t5 + %t40 = call ptr @lp_str_concat(ptr @.str11867, ptr %t39) + %t41 = call ptr @lp_str_concat(ptr %t40, ptr @.str11868) + %t42 = load ptr, ptr %t5 + %t43 = call ptr @lp_str_concat(ptr %t41, ptr %t42) + %t44 = call ptr @lp_str_concat(ptr %t43, ptr @.str11869) + %t45 = load ptr, ptr %t5 + %t46 = call ptr @lp_str_concat(ptr %t44, ptr %t45) + %t47 = call ptr @lp_str_concat(ptr %t46, ptr @.str11870) + %t48 = load ptr, ptr %t5 + %t49 = call ptr @lp_str_concat(ptr %t47, ptr %t48) + %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str11871) + %t51 = load ptr, ptr %t5 + %t52 = call ptr @lp_str_concat(ptr %t50, ptr %t51) + %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str11872) + %t54 = load ptr, ptr %t5 + %t55 = call ptr @lp_str_concat(ptr %t53, ptr %t54) + %t56 = call ptr @lp_str_concat(ptr %t55, ptr @.str11873) + call void @fn_emit(ptr %t56) + %t57 = load ptr, ptr %t5 + %t58 = call ptr @lp_str_concat(ptr @.str11874, ptr %t57) + %t59 = call ptr @lp_str_concat(ptr %t58, ptr @.str11875) + %t60 = load ptr, ptr %t5 + %t61 = call ptr @lp_str_concat(ptr %t59, ptr %t60) + %t62 = call ptr @lp_str_concat(ptr %t61, ptr @.str11876) + %t63 = load ptr, ptr %t5 + %t64 = call ptr @lp_str_concat(ptr %t62, ptr %t63) + %t65 = call ptr @lp_str_concat(ptr %t64, ptr @.str11877) + %t66 = load ptr, ptr %t5 + %t67 = call ptr @lp_str_concat(ptr %t65, ptr %t66) + %t68 = call ptr @lp_str_concat(ptr %t67, ptr @.str11878) + %t69 = load ptr, ptr %t0 + %t70 = call ptr @lp_str_concat(ptr %t68, ptr %t69) + %t71 = call ptr @lp_str_concat(ptr %t70, ptr @.str11879) + call void @fn_emit(ptr %t71) + br label %ret +ret: + ret void +} + +define void @fn_emit_grow_dyn() { +entry: + call void @fn_emit(ptr @.str11880) + call void @fn_emit(ptr @.str11881) + call void @fn_emit(ptr @.str11882) + call void @fn_emit(ptr @.str11883) + call void @fn_emit_grow_slot(ptr @.str11884, ptr @.str11885, ptr @.str11886) + call void @fn_emit_grow_slot(ptr @.str11887, ptr @.str11888, ptr @.str11889) + call void @fn_emit(ptr @.str11890) + br label %ret +ret: + ret void +} + +define void @fn_emit_grow_slot(ptr %arg_table, ptr %arg_esz, ptr %arg_t) { +entry: + %t0 = alloca ptr + %t1 = alloca ptr + %t2 = alloca ptr + store ptr %arg_table, ptr %t0 + store ptr %arg_esz, ptr %t1 + store ptr %arg_t, ptr %t2 + %t3 = load ptr, ptr %t2 + %t4 = call ptr @lp_str_concat(ptr @.str11891, ptr %t3) + %t5 = call ptr @lp_str_concat(ptr %t4, ptr @.str11892) + %t6 = load ptr, ptr %t0 + %t7 = call ptr @lp_str_concat(ptr %t5, ptr %t6) + %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str11893) + %t9 = load ptr, ptr %t2 + %t10 = call ptr @lp_str_concat(ptr %t8, ptr %t9) + %t11 = call ptr @lp_str_concat(ptr %t10, ptr @.str11894) + %t12 = load ptr, ptr %t2 + %t13 = call ptr @lp_str_concat(ptr %t11, ptr %t12) + %t14 = call ptr @lp_str_concat(ptr %t13, ptr @.str11895) + call void @fn_emit(ptr %t14) + %t15 = load ptr, ptr %t2 + %t16 = call ptr @lp_str_concat(ptr @.str11896, ptr %t15) + %t17 = call ptr @lp_str_concat(ptr %t16, ptr @.str11897) + %t18 = load ptr, ptr %t1 + %t19 = call ptr @lp_str_concat(ptr %t17, ptr %t18) + %t20 = call ptr @lp_str_concat(ptr %t19, ptr @.str11898) + %t21 = load ptr, ptr %t2 + %t22 = call ptr @lp_str_concat(ptr %t20, ptr %t21) + %t23 = call ptr @lp_str_concat(ptr %t22, ptr @.str11899) + %t24 = load ptr, ptr %t2 + %t25 = call ptr @lp_str_concat(ptr %t23, ptr %t24) + %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str11900) + %t27 = load ptr, ptr %t2 + %t28 = call ptr @lp_str_concat(ptr %t26, ptr %t27) + %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str11901) + %t30 = load ptr, ptr %t2 + %t31 = call ptr @lp_str_concat(ptr %t29, ptr %t30) + %t32 = call ptr @lp_str_concat(ptr %t31, ptr @.str11902) + %t33 = load ptr, ptr %t2 + %t34 = call ptr @lp_str_concat(ptr %t32, ptr %t33) + %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str11903) + call void @fn_emit(ptr %t35) + %t36 = load ptr, ptr %t2 + %t37 = call ptr @lp_str_concat(ptr @.str11904, ptr %t36) + %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str11905) + %t39 = load ptr, ptr %t1 + %t40 = call ptr @lp_str_concat(ptr %t38, ptr %t39) + %t41 = call ptr @lp_str_concat(ptr %t40, ptr @.str11906) + %t42 = load ptr, ptr %t2 + %t43 = call ptr @lp_str_concat(ptr %t41, ptr %t42) + %t44 = call ptr @lp_str_concat(ptr %t43, ptr @.str11907) + %t45 = load ptr, ptr %t2 + %t46 = call ptr @lp_str_concat(ptr %t44, ptr %t45) + %t47 = call ptr @lp_str_concat(ptr %t46, ptr @.str11908) + %t48 = load ptr, ptr %t2 + %t49 = call ptr @lp_str_concat(ptr %t47, ptr %t48) + %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str11909) + %t51 = load ptr, ptr %t2 + %t52 = call ptr @lp_str_concat(ptr %t50, ptr %t51) + %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str11910) + %t54 = load ptr, ptr %t2 + %t55 = call ptr @lp_str_concat(ptr %t53, ptr %t54) + %t56 = call ptr @lp_str_concat(ptr %t55, ptr @.str11911) + %t57 = load ptr, ptr %t2 + %t58 = call ptr @lp_str_concat(ptr %t56, ptr %t57) + %t59 = call ptr @lp_str_concat(ptr %t58, ptr @.str11912) + call void @fn_emit(ptr %t59) + %t60 = load ptr, ptr %t2 + %t61 = call ptr @lp_str_concat(ptr @.str11913, ptr %t60) + %t62 = call ptr @lp_str_concat(ptr %t61, ptr @.str11914) + %t63 = load ptr, ptr %t2 + %t64 = call ptr @lp_str_concat(ptr %t62, ptr %t63) + %t65 = call ptr @lp_str_concat(ptr %t64, ptr @.str11915) + %t66 = load ptr, ptr %t2 + %t67 = call ptr @lp_str_concat(ptr %t65, ptr %t66) + %t68 = call ptr @lp_str_concat(ptr %t67, ptr @.str11916) + %t69 = load ptr, ptr %t2 + %t70 = call ptr @lp_str_concat(ptr %t68, ptr %t69) + %t71 = call ptr @lp_str_concat(ptr %t70, ptr @.str11917) + %t72 = load ptr, ptr %t2 + %t73 = call ptr @lp_str_concat(ptr %t71, ptr %t72) + %t74 = call ptr @lp_str_concat(ptr %t73, ptr @.str11918) + call void @fn_emit(ptr %t74) br label %ret ret: ret void @@ -162110,7 +162707,7 @@ wbody1: br i1 %t16, label %ixok3, label %ixbad4 ixbad4: %t17 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11810, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11919, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok3: @@ -162133,7 +162730,7 @@ then5: br i1 %t31, label %ixok8, label %ixbad9 ixbad9: %t32 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str11811, i32 %t26, i32 %t30) + call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str11920, i32 %t26, i32 %t30) call void @exit(i32 1) unreachable ixok8: @@ -162181,40 +162778,44 @@ entry: %t67 = alloca ptr %t75 = alloca ptr %t77 = alloca ptr - %t84 = alloca ptr - %t89 = alloca ptr + %t79 = alloca ptr + %t86 = alloca ptr %t91 = alloca ptr - %t99 = alloca ptr - %t100 = alloca i32 - %t122 = alloca ptr - %t127 = alloca i32 - %t128 = alloca ptr - %t134 = alloca ptr - %t141 = alloca ptr - %t149 = alloca ptr - %t155 = alloca ptr - %t160 = alloca ptr - %t168 = alloca ptr + %t93 = alloca ptr + %t101 = alloca ptr + %t102 = alloca i32 + %t124 = alloca ptr + %t129 = alloca i32 + %t130 = alloca ptr + %t136 = alloca ptr + %t138 = alloca ptr + %t145 = alloca ptr + %t153 = alloca ptr + %t159 = alloca ptr + %t164 = alloca ptr + %t176 = alloca ptr %t178 = alloca ptr - %t184 = alloca ptr - %t192 = alloca i32 - %t193 = alloca i32 - %t215 = alloca ptr - %t216 = alloca i32 - %t244 = alloca ptr - %t255 = alloca ptr - %t290 = alloca ptr - %t297 = alloca ptr - %t299 = alloca ptr - %t319 = alloca ptr - %t324 = alloca ptr + %t185 = alloca ptr + %t191 = alloca ptr + %t199 = alloca i32 + %t200 = alloca i32 + %t222 = alloca ptr + %t223 = alloca i32 + %t251 = alloca ptr + %t257 = alloca ptr + %t265 = alloca ptr + %t300 = alloca ptr + %t307 = alloca ptr + %t309 = alloca ptr + %t329 = alloca ptr + %t334 = alloca ptr store ptr %arg_st, ptr %t0 %t1 = call ptr @fn_itoa(i32 1024) store ptr %t1, ptr %t2 - %t3 = call ptr @fn_emit_alloca(ptr @.str11812) + %t3 = call ptr @fn_emit_alloca(ptr @.str11921) store ptr %t3, ptr %t4 %t5 = load ptr, ptr %t4 - call void @fn_store_at(ptr @.str11813, ptr @.str11814, ptr %t5) + call void @fn_store_at(ptr @.str11922, ptr @.str11923, ptr %t5) %t6 = load i32, ptr @g_nself %t7 = load ptr, ptr @g_self_stk %t8 = getelementptr inbounds %LSlice, ptr %t7, i32 0, i32 1 @@ -162234,7 +162835,7 @@ then0: br i1 %t19, label %ixok3, label %ixbad4 ixbad4: %t20 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str11815, i32 %t14, i32 %t18) + call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str11924, i32 %t14, i32 %t18) call void @exit(i32 1) unreachable ixok3: @@ -162276,454 +162877,460 @@ ifend2: %t43 = load i32, ptr @g_nself %t44 = add i32 %t43, 1 store i32 %t44, ptr @g_nself - %t45 = call ptr @fn_lbl(ptr @.str11816) + %t45 = call ptr @fn_lbl(ptr @.str11925) store ptr %t45, ptr %t46 - %t47 = call ptr @fn_lbl(ptr @.str11817) + %t47 = call ptr @fn_lbl(ptr @.str11926) store ptr %t47, ptr %t48 - %t49 = call ptr @fn_lbl(ptr @.str11818) + %t49 = call ptr @fn_lbl(ptr @.str11927) store ptr %t49, ptr %t50 - %t51 = call ptr @fn_lbl(ptr @.str11819) + %t51 = call ptr @fn_lbl(ptr @.str11928) store ptr %t51, ptr %t52 - call void @fn_emit(ptr @.str11820) + call void @fn_emit(ptr @.str11929) %t53 = load ptr, ptr %t46 call void @fn_emit(ptr %t53) - call void @fn_emit(ptr @.str11821) + call void @fn_emit(ptr @.str11930) %t54 = load ptr, ptr %t46 call void @fn_emit(ptr %t54) - call void @fn_emit(ptr @.str11822) + call void @fn_emit(ptr @.str11931) %t55 = load ptr, ptr %t4 - %t56 = call ptr @lp_str_concat(ptr @.str11823, ptr %t55) + %t56 = call ptr @lp_str_concat(ptr @.str11932, ptr %t55) %t57 = call ptr @fn_emit_bind(ptr %t56) store ptr %t57, ptr %t58 - %t59 = call ptr @fn_emit_bind(ptr @.str11824) + %t59 = call ptr @fn_emit_bind(ptr @.str11933) store ptr %t59, ptr %t60 %t61 = load ptr, ptr %t58 - %t62 = call ptr @lp_str_concat(ptr @.str11825, ptr %t61) - %t63 = call ptr @lp_str_concat(ptr %t62, ptr @.str11826) + %t62 = call ptr @lp_str_concat(ptr @.str11934, ptr %t61) + %t63 = call ptr @lp_str_concat(ptr %t62, ptr @.str11935) %t64 = load ptr, ptr %t60 %t65 = call ptr @lp_str_concat(ptr %t63, ptr %t64) %t66 = call ptr @fn_emit_bind(ptr %t65) store ptr %t66, ptr %t67 - call void @fn_emit(ptr @.str11827) + call void @fn_emit(ptr @.str11936) %t68 = load ptr, ptr %t67 call void @fn_emit(ptr %t68) - call void @fn_emit(ptr @.str11828) + call void @fn_emit(ptr @.str11937) %t69 = load ptr, ptr %t48 call void @fn_emit(ptr %t69) - call void @fn_emit(ptr @.str11829) + call void @fn_emit(ptr @.str11938) %t70 = load ptr, ptr %t52 call void @fn_emit(ptr %t70) - call void @fn_emit(ptr @.str11830) + call void @fn_emit(ptr @.str11939) %t71 = load ptr, ptr %t48 call void @fn_emit(ptr %t71) - call void @fn_emit(ptr @.str11831) + call void @fn_emit(ptr @.str11940) store i32 0, ptr @g_g_term %t72 = load ptr, ptr %t4 - %t73 = call ptr @lp_str_concat(ptr @.str11832, ptr %t72) + %t73 = call ptr @lp_str_concat(ptr @.str11941, ptr %t72) %t74 = call ptr @fn_emit_bind(ptr %t73) store ptr %t74, ptr %t75 - %t76 = call ptr @fn_nreg() + %t76 = call ptr @fn_ecs_base(ptr @.str11942) store ptr %t76, ptr %t77 - call void @fn_emit(ptr @.str11833) - %t78 = load ptr, ptr %t77 - call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str11834) - %t79 = load ptr, ptr %t2 - call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str11835) - %t80 = load ptr, ptr %t75 + %t78 = call ptr @fn_nreg() + store ptr %t78, ptr %t79 + call void @fn_emit(ptr @.str11943) + %t80 = load ptr, ptr %t79 call void @fn_emit(ptr %t80) - call void @fn_emit(ptr @.str11836) + call void @fn_emit(ptr @.str11944) %t81 = load ptr, ptr %t77 - %t82 = call ptr @lp_str_concat(ptr @.str11837, ptr %t81) - %t83 = call ptr @fn_emit_bind(ptr %t82) - store ptr %t83, ptr %t84 - %t85 = load ptr, ptr %t84 - %t86 = call ptr @lp_str_concat(ptr @.str11838, ptr %t85) - %t87 = call ptr @lp_str_concat(ptr %t86, ptr @.str11839) - %t88 = call ptr @fn_emit_bind(ptr %t87) - store ptr %t88, ptr %t89 - %t90 = call ptr @fn_lbl(ptr @.str11840) + call void @fn_emit(ptr %t81) + call void @fn_emit(ptr @.str11945) + %t82 = load ptr, ptr %t75 + call void @fn_emit(ptr %t82) + call void @fn_emit(ptr @.str11946) + %t83 = load ptr, ptr %t79 + %t84 = call ptr @lp_str_concat(ptr @.str11947, ptr %t83) + %t85 = call ptr @fn_emit_bind(ptr %t84) + store ptr %t85, ptr %t86 + %t87 = load ptr, ptr %t86 + %t88 = call ptr @lp_str_concat(ptr @.str11948, ptr %t87) + %t89 = call ptr @lp_str_concat(ptr %t88, ptr @.str11949) + %t90 = call ptr @fn_emit_bind(ptr %t89) store ptr %t90, ptr %t91 - call void @fn_emit(ptr @.str11841) - %t92 = load ptr, ptr %t89 - call void @fn_emit(ptr %t92) - call void @fn_emit(ptr @.str11842) - %t93 = load ptr, ptr %t91 - call void @fn_emit(ptr %t93) - call void @fn_emit(ptr @.str11843) - %t94 = load ptr, ptr %t50 + %t92 = call ptr @fn_lbl(ptr @.str11950) + store ptr %t92, ptr %t93 + call void @fn_emit(ptr @.str11951) + %t94 = load ptr, ptr %t91 call void @fn_emit(ptr %t94) - call void @fn_emit(ptr @.str11844) - %t95 = load ptr, ptr %t91 + call void @fn_emit(ptr @.str11952) + %t95 = load ptr, ptr %t93 call void @fn_emit(ptr %t95) - call void @fn_emit(ptr @.str11845) - %t96 = load ptr, ptr %t0 - %t97 = getelementptr inbounds %Cmp_Node, ptr %t96, i32 0, i32 6 - %t98 = load ptr, ptr %t97 - store ptr %t98, ptr %t99 - store i32 0, ptr %t100 + call void @fn_emit(ptr @.str11953) + %t96 = load ptr, ptr %t50 + call void @fn_emit(ptr %t96) + call void @fn_emit(ptr @.str11954) + %t97 = load ptr, ptr %t93 + call void @fn_emit(ptr %t97) + call void @fn_emit(ptr @.str11955) + %t98 = load ptr, ptr %t0 + %t99 = getelementptr inbounds %Cmp_Node, ptr %t98, i32 0, i32 6 + %t100 = load ptr, ptr %t99 + store ptr %t100, ptr %t101 + store i32 0, ptr %t102 br label %wcond7 wcond7: - %t101 = load i32, ptr %t100 - %t102 = load ptr, ptr %t99 - %t103 = getelementptr inbounds %Cmp_Node, ptr %t102, i32 0, i32 7 - %t104 = load ptr, ptr %t103 - %t105 = getelementptr inbounds %LSlice, ptr %t104, i32 0, i32 1 - %t106 = load i32, ptr %t105 - %t107 = icmp slt i32 %t101, %t106 - %t108 = zext i1 %t107 to i32 - %t109 = icmp ne i32 %t108, 0 - br i1 %t109, label %wbody8, label %wend9 + %t103 = load i32, ptr %t102 + %t104 = load ptr, ptr %t101 + %t105 = getelementptr inbounds %Cmp_Node, ptr %t104, i32 0, i32 7 + %t106 = load ptr, ptr %t105 + %t107 = getelementptr inbounds %LSlice, ptr %t106, i32 0, i32 1 + %t108 = load i32, ptr %t107 + %t109 = icmp slt i32 %t103, %t108 + %t110 = zext i1 %t109 to i32 + %t111 = icmp ne i32 %t110, 0 + br i1 %t111, label %wbody8, label %wend9 wbody8: - %t110 = load ptr, ptr %t99 - %t111 = getelementptr inbounds %Cmp_Node, ptr %t110, i32 0, i32 7 - %t112 = load ptr, ptr %t111 - %t113 = load i32, ptr %t100 - %t114 = getelementptr inbounds %LSlice, ptr %t112, i32 0, i32 0 - %t115 = load ptr, ptr %t114 - %t116 = getelementptr inbounds %LSlice, ptr %t112, i32 0, i32 1 - %t117 = load i32, ptr %t116 - %t118 = icmp ult i32 %t113, %t117 - br i1 %t118, label %ixok10, label %ixbad11 + %t112 = load ptr, ptr %t101 + %t113 = getelementptr inbounds %Cmp_Node, ptr %t112, i32 0, i32 7 + %t114 = load ptr, ptr %t113 + %t115 = load i32, ptr %t102 + %t116 = getelementptr inbounds %LSlice, ptr %t114, i32 0, i32 0 + %t117 = load ptr, ptr %t116 + %t118 = getelementptr inbounds %LSlice, ptr %t114, i32 0, i32 1 + %t119 = load i32, ptr %t118 + %t120 = icmp ult i32 %t115, %t119 + br i1 %t120, label %ixok10, label %ixbad11 ixbad11: - %t119 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t119, ptr @.fmt_bounds, ptr @.str11846, i32 %t113, i32 %t117) + %t121 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t121, ptr @.fmt_bounds, ptr @.str11956, i32 %t115, i32 %t119) call void @exit(i32 1) unreachable ixok10: - %t120 = getelementptr inbounds ptr, ptr %t115, i32 %t113 - %t121 = load ptr, ptr %t120 - store ptr %t121, ptr %t122 + %t122 = getelementptr inbounds ptr, ptr %t117, i32 %t115 %t123 = load ptr, ptr %t122 - %t124 = getelementptr inbounds %Cmp_Node, ptr %t123, i32 0, i32 1 + store ptr %t123, ptr %t124 %t125 = load ptr, ptr %t124 - %t126 = call i32 @fn_find_arch_id(ptr %t125) - store i32 %t126, ptr %t127 - store ptr @.str11847, ptr %t128 - %t129 = load i32, ptr %t127 - %t130 = icmp sgt i32 %t129, 0 - %t131 = zext i1 %t130 to i32 - %t132 = icmp ne i32 %t131, 0 - br i1 %t132, label %then12, label %else13 + %t126 = getelementptr inbounds %Cmp_Node, ptr %t125, i32 0, i32 1 + %t127 = load ptr, ptr %t126 + %t128 = call i32 @fn_find_arch_id(ptr %t127) + store i32 %t128, ptr %t129 + store ptr @.str11957, ptr %t130 + %t131 = load i32, ptr %t129 + %t132 = icmp sgt i32 %t131, 0 + %t133 = zext i1 %t132 to i32 + %t134 = icmp ne i32 %t133, 0 + br i1 %t134, label %then12, label %else13 then12: - %t133 = call ptr @fn_nreg() - store ptr %t133, ptr %t134 - call void @fn_emit(ptr @.str11848) - %t135 = load ptr, ptr %t134 - call void @fn_emit(ptr %t135) - call void @fn_emit(ptr @.str11849) - %t136 = load ptr, ptr %t2 - call void @fn_emit(ptr %t136) - call void @fn_emit(ptr @.str11850) - %t137 = load ptr, ptr %t75 - call void @fn_emit(ptr %t137) - call void @fn_emit(ptr @.str11851) - %t138 = load ptr, ptr %t134 - %t139 = call ptr @lp_str_concat(ptr @.str11852, ptr %t138) - %t140 = call ptr @fn_emit_bind(ptr %t139) - store ptr %t140, ptr %t141 - %t142 = load ptr, ptr %t141 - %t143 = call ptr @lp_str_concat(ptr @.str11853, ptr %t142) - %t144 = call ptr @lp_str_concat(ptr %t143, ptr @.str11854) - %t145 = load i32, ptr %t127 - %t146 = call ptr @fn_itoa(i32 %t145) - %t147 = call ptr @lp_str_concat(ptr %t144, ptr %t146) - %t148 = call ptr @fn_emit_bind(ptr %t147) - store ptr %t148, ptr %t149 - %t150 = load ptr, ptr %t122 - %t151 = getelementptr inbounds %Cmp_Node, ptr %t150, i32 0, i32 1 - %t152 = load ptr, ptr %t151 - %t153 = call ptr @lp_str_concat(ptr @.str11855, ptr %t152) - %t154 = call ptr @fn_emit_bind(ptr %t153) - store ptr %t154, ptr %t155 + %t135 = call ptr @fn_ecs_base(ptr @.str11958) + store ptr %t135, ptr %t136 + %t137 = call ptr @fn_nreg() + store ptr %t137, ptr %t138 + call void @fn_emit(ptr @.str11959) + %t139 = load ptr, ptr %t138 + call void @fn_emit(ptr %t139) + call void @fn_emit(ptr @.str11960) + %t140 = load ptr, ptr %t136 + call void @fn_emit(ptr %t140) + call void @fn_emit(ptr @.str11961) + %t141 = load ptr, ptr %t75 + call void @fn_emit(ptr %t141) + call void @fn_emit(ptr @.str11962) + %t142 = load ptr, ptr %t138 + %t143 = call ptr @lp_str_concat(ptr @.str11963, ptr %t142) + %t144 = call ptr @fn_emit_bind(ptr %t143) + store ptr %t144, ptr %t145 + %t146 = load ptr, ptr %t145 + %t147 = call ptr @lp_str_concat(ptr @.str11964, ptr %t146) + %t148 = call ptr @lp_str_concat(ptr %t147, ptr @.str11965) + %t149 = load i32, ptr %t129 + %t150 = call ptr @fn_itoa(i32 %t149) + %t151 = call ptr @lp_str_concat(ptr %t148, ptr %t150) + %t152 = call ptr @fn_emit_bind(ptr %t151) + store ptr %t152, ptr %t153 + %t154 = load ptr, ptr %t124 + %t155 = getelementptr inbounds %Cmp_Node, ptr %t154, i32 0, i32 1 %t156 = load ptr, ptr %t155 - %t157 = call ptr @lp_str_concat(ptr @.str11856, ptr %t156) - %t158 = call ptr @lp_str_concat(ptr %t157, ptr @.str11857) - %t159 = call ptr @fn_emit_bind(ptr %t158) - store ptr %t159, ptr %t160 - %t161 = load ptr, ptr %t149 - %t162 = call ptr @lp_str_concat(ptr @.str11858, ptr %t161) - %t163 = call ptr @lp_str_concat(ptr %t162, ptr @.str11859) - %t164 = load ptr, ptr %t160 - %t165 = call ptr @lp_str_concat(ptr %t163, ptr %t164) - %t166 = call ptr @fn_emit_bind(ptr %t165) - store ptr %t166, ptr %t128 + %t157 = call ptr @lp_str_concat(ptr @.str11966, ptr %t156) + %t158 = call ptr @fn_emit_bind(ptr %t157) + store ptr %t158, ptr %t159 + %t160 = load ptr, ptr %t159 + %t161 = call ptr @lp_str_concat(ptr @.str11967, ptr %t160) + %t162 = call ptr @lp_str_concat(ptr %t161, ptr @.str11968) + %t163 = call ptr @fn_emit_bind(ptr %t162) + store ptr %t163, ptr %t164 + %t165 = load ptr, ptr %t153 + %t166 = call ptr @lp_str_concat(ptr @.str11969, ptr %t165) + %t167 = call ptr @lp_str_concat(ptr %t166, ptr @.str11970) + %t168 = load ptr, ptr %t164 + %t169 = call ptr @lp_str_concat(ptr %t167, ptr %t168) + %t170 = call ptr @fn_emit_bind(ptr %t169) + store ptr %t170, ptr %t130 br label %ifend14 else13: - %t167 = call ptr @fn_nreg() - store ptr %t167, ptr %t168 - call void @fn_emit(ptr @.str11860) - %t169 = load ptr, ptr %t168 - call void @fn_emit(ptr %t169) - call void @fn_emit(ptr @.str11861) - %t170 = load ptr, ptr %t2 - call void @fn_emit(ptr %t170) - call void @fn_emit(ptr @.str11862) - %t171 = load ptr, ptr %t122 + %t171 = load ptr, ptr %t124 %t172 = getelementptr inbounds %Cmp_Node, ptr %t171, i32 0, i32 1 %t173 = load ptr, ptr %t172 - call void @fn_emit(ptr %t173) - call void @fn_emit(ptr @.str11863) - %t174 = load ptr, ptr %t75 - call void @fn_emit(ptr %t174) - call void @fn_emit(ptr @.str11864) - %t175 = load ptr, ptr %t168 - %t176 = call ptr @lp_str_concat(ptr @.str11865, ptr %t175) - %t177 = call ptr @fn_emit_bind(ptr %t176) + %t174 = call ptr @lp_str_concat(ptr @.str11971, ptr %t173) + %t175 = call ptr @fn_ecs_base(ptr %t174) + store ptr %t175, ptr %t176 + %t177 = call ptr @fn_nreg() store ptr %t177, ptr %t178 + call void @fn_emit(ptr @.str11972) %t179 = load ptr, ptr %t178 - %t180 = call ptr @lp_str_concat(ptr @.str11866, ptr %t179) - %t181 = call ptr @lp_str_concat(ptr %t180, ptr @.str11867) - %t182 = call ptr @fn_emit_bind(ptr %t181) - store ptr %t182, ptr %t128 + call void @fn_emit(ptr %t179) + call void @fn_emit(ptr @.str11973) + %t180 = load ptr, ptr %t176 + call void @fn_emit(ptr %t180) + call void @fn_emit(ptr @.str11974) + %t181 = load ptr, ptr %t75 + call void @fn_emit(ptr %t181) + call void @fn_emit(ptr @.str11975) + %t182 = load ptr, ptr %t178 + %t183 = call ptr @lp_str_concat(ptr @.str11976, ptr %t182) + %t184 = call ptr @fn_emit_bind(ptr %t183) + store ptr %t184, ptr %t185 + %t186 = load ptr, ptr %t185 + %t187 = call ptr @lp_str_concat(ptr @.str11977, ptr %t186) + %t188 = call ptr @lp_str_concat(ptr %t187, ptr @.str11978) + %t189 = call ptr @fn_emit_bind(ptr %t188) + store ptr %t189, ptr %t130 br label %ifend14 ifend14: - %t183 = call ptr @fn_lbl(ptr @.str11868) - store ptr %t183, ptr %t184 - call void @fn_emit(ptr @.str11869) - %t185 = load ptr, ptr %t128 - call void @fn_emit(ptr %t185) - call void @fn_emit(ptr @.str11870) - %t186 = load ptr, ptr %t184 - call void @fn_emit(ptr %t186) - call void @fn_emit(ptr @.str11871) - %t187 = load ptr, ptr %t50 - call void @fn_emit(ptr %t187) - call void @fn_emit(ptr @.str11872) - %t188 = load ptr, ptr %t184 - call void @fn_emit(ptr %t188) - call void @fn_emit(ptr @.str11873) - %t189 = load i32, ptr %t100 - %t190 = add i32 %t189, 1 - store i32 %t190, ptr %t100 + %t190 = call ptr @fn_lbl(ptr @.str11979) + store ptr %t190, ptr %t191 + call void @fn_emit(ptr @.str11980) + %t192 = load ptr, ptr %t130 + call void @fn_emit(ptr %t192) + call void @fn_emit(ptr @.str11981) + %t193 = load ptr, ptr %t191 + call void @fn_emit(ptr %t193) + call void @fn_emit(ptr @.str11982) + %t194 = load ptr, ptr %t50 + call void @fn_emit(ptr %t194) + call void @fn_emit(ptr @.str11983) + %t195 = load ptr, ptr %t191 + call void @fn_emit(ptr %t195) + call void @fn_emit(ptr @.str11984) + %t196 = load i32, ptr %t102 + %t197 = add i32 %t196, 1 + store i32 %t197, ptr %t102 br label %wcond7 wend9: - %t191 = load i32, ptr @g_nloc - store i32 %t191, ptr %t192 - store i32 0, ptr %t193 - store i32 0, ptr %t100 + %t198 = load i32, ptr @g_nloc + store i32 %t198, ptr %t199 + store i32 0, ptr %t200 + store i32 0, ptr %t102 br label %wcond15 wcond15: - %t194 = load i32, ptr %t100 - %t195 = load ptr, ptr %t99 - %t196 = getelementptr inbounds %Cmp_Node, ptr %t195, i32 0, i32 7 - %t197 = load ptr, ptr %t196 - %t198 = getelementptr inbounds %LSlice, ptr %t197, i32 0, i32 1 - %t199 = load i32, ptr %t198 - %t200 = icmp slt i32 %t194, %t199 - %t201 = zext i1 %t200 to i32 - %t202 = icmp ne i32 %t201, 0 - br i1 %t202, label %wbody16, label %wend17 + %t201 = load i32, ptr %t102 + %t202 = load ptr, ptr %t101 + %t203 = getelementptr inbounds %Cmp_Node, ptr %t202, i32 0, i32 7 + %t204 = load ptr, ptr %t203 + %t205 = getelementptr inbounds %LSlice, ptr %t204, i32 0, i32 1 + %t206 = load i32, ptr %t205 + %t207 = icmp slt i32 %t201, %t206 + %t208 = zext i1 %t207 to i32 + %t209 = icmp ne i32 %t208, 0 + br i1 %t209, label %wbody16, label %wend17 wbody16: - %t203 = load ptr, ptr %t99 - %t204 = getelementptr inbounds %Cmp_Node, ptr %t203, i32 0, i32 7 - %t205 = load ptr, ptr %t204 - %t206 = load i32, ptr %t100 - %t207 = getelementptr inbounds %LSlice, ptr %t205, i32 0, i32 0 - %t208 = load ptr, ptr %t207 - %t209 = getelementptr inbounds %LSlice, ptr %t205, i32 0, i32 1 - %t210 = load i32, ptr %t209 - %t211 = icmp ult i32 %t206, %t210 - br i1 %t211, label %ixok18, label %ixbad19 + %t210 = load ptr, ptr %t101 + %t211 = getelementptr inbounds %Cmp_Node, ptr %t210, i32 0, i32 7 + %t212 = load ptr, ptr %t211 + %t213 = load i32, ptr %t102 + %t214 = getelementptr inbounds %LSlice, ptr %t212, i32 0, i32 0 + %t215 = load ptr, ptr %t214 + %t216 = getelementptr inbounds %LSlice, ptr %t212, i32 0, i32 1 + %t217 = load i32, ptr %t216 + %t218 = icmp ult i32 %t213, %t217 + br i1 %t218, label %ixok18, label %ixbad19 ixbad19: - %t212 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t212, ptr @.fmt_bounds, ptr @.str11874, i32 %t206, i32 %t210) + %t219 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t219, ptr @.fmt_bounds, ptr @.str11985, i32 %t213, i32 %t217) call void @exit(i32 1) unreachable ixok18: - %t213 = getelementptr inbounds ptr, ptr %t208, i32 %t206 - %t214 = load ptr, ptr %t213 - store ptr %t214, ptr %t215 - %t217 = load ptr, ptr %t215 - %t218 = getelementptr inbounds %Cmp_Node, ptr %t217, i32 0, i32 2 - %t219 = load i32, ptr %t218 - %t220 = icmp eq i32 %t219, 0 - %t221 = zext i1 %t220 to i32 - %t222 = icmp ne i32 %t221, 0 - %t223 = zext i1 %t222 to i32 - store i32 %t223, ptr %t216 - br i1 %t222, label %sc20, label %scend21 + %t220 = getelementptr inbounds ptr, ptr %t215, i32 %t213 + %t221 = load ptr, ptr %t220 + store ptr %t221, ptr %t222 + %t224 = load ptr, ptr %t222 + %t225 = getelementptr inbounds %Cmp_Node, ptr %t224, i32 0, i32 2 + %t226 = load i32, ptr %t225 + %t227 = icmp eq i32 %t226, 0 + %t228 = zext i1 %t227 to i32 + %t229 = icmp ne i32 %t228, 0 + %t230 = zext i1 %t229 to i32 + store i32 %t230, ptr %t223 + br i1 %t229, label %sc20, label %scend21 sc20: - %t224 = load ptr, ptr %t215 - %t225 = getelementptr inbounds %Cmp_Node, ptr %t224, i32 0, i32 1 - %t226 = load ptr, ptr %t225 - %t227 = call i32 @fn_find_arch_id(ptr %t226) - %t228 = icmp eq i32 %t227, 0 - %t229 = zext i1 %t228 to i32 - %t230 = icmp ne i32 %t229, 0 - %t231 = zext i1 %t230 to i32 - store i32 %t231, ptr %t216 + %t231 = load ptr, ptr %t222 + %t232 = getelementptr inbounds %Cmp_Node, ptr %t231, i32 0, i32 1 + %t233 = load ptr, ptr %t232 + %t234 = call i32 @fn_find_arch_id(ptr %t233) + %t235 = icmp eq i32 %t234, 0 + %t236 = zext i1 %t235 to i32 + %t237 = icmp ne i32 %t236, 0 + %t238 = zext i1 %t237 to i32 + store i32 %t238, ptr %t223 br label %scend21 scend21: - %t232 = load i32, ptr %t216 - %t233 = icmp ne i32 %t232, 0 - br i1 %t233, label %then22, label %ifend24 + %t239 = load i32, ptr %t223 + %t240 = icmp ne i32 %t239, 0 + br i1 %t240, label %then22, label %ifend24 then22: - %t234 = load i32, ptr %t193 - %t235 = load ptr, ptr %t0 - %t236 = getelementptr inbounds %Cmp_Node, ptr %t235, i32 0, i32 7 - %t237 = load ptr, ptr %t236 - %t238 = getelementptr inbounds %LSlice, ptr %t237, i32 0, i32 1 - %t239 = load i32, ptr %t238 - %t240 = icmp slt i32 %t234, %t239 - %t241 = zext i1 %t240 to i32 - %t242 = icmp ne i32 %t241, 0 - br i1 %t242, label %then25, label %ifend27 + %t241 = load i32, ptr %t200 + %t242 = load ptr, ptr %t0 + %t243 = getelementptr inbounds %Cmp_Node, ptr %t242, i32 0, i32 7 + %t244 = load ptr, ptr %t243 + %t245 = getelementptr inbounds %LSlice, ptr %t244, i32 0, i32 1 + %t246 = load i32, ptr %t245 + %t247 = icmp slt i32 %t241, %t246 + %t248 = zext i1 %t247 to i32 + %t249 = icmp ne i32 %t248, 0 + br i1 %t249, label %then25, label %ifend27 then25: - %t243 = call ptr @fn_nreg() - store ptr %t243, ptr %t244 - call void @fn_emit(ptr @.str11875) - %t245 = load ptr, ptr %t244 - call void @fn_emit(ptr %t245) - call void @fn_emit(ptr @.str11876) - %t246 = load ptr, ptr %t2 - call void @fn_emit(ptr %t246) - call void @fn_emit(ptr @.str11877) - %t247 = load ptr, ptr %t215 - %t248 = getelementptr inbounds %Cmp_Node, ptr %t247, i32 0, i32 1 - %t249 = load ptr, ptr %t248 - call void @fn_emit(ptr %t249) - call void @fn_emit(ptr @.str11878) - %t250 = load ptr, ptr %t215 - %t251 = getelementptr inbounds %Cmp_Node, ptr %t250, i32 0, i32 1 - %t252 = load ptr, ptr %t251 - call void @fn_emit(ptr %t252) - call void @fn_emit(ptr @.str11879) - %t253 = load ptr, ptr %t75 - call void @fn_emit(ptr %t253) - call void @fn_emit(ptr @.str11880) - %t254 = call ptr @fn_emit_alloca(ptr @.str11881) - store ptr %t254, ptr %t255 - call void @fn_emit(ptr @.str11882) - %t256 = load ptr, ptr %t244 - call void @fn_emit(ptr %t256) - call void @fn_emit(ptr @.str11883) - %t257 = load ptr, ptr %t255 - call void @fn_emit(ptr %t257) - call void @fn_emit(ptr @.str11884) - %t258 = load ptr, ptr %t0 - %t259 = getelementptr inbounds %Cmp_Node, ptr %t258, i32 0, i32 7 - %t260 = load ptr, ptr %t259 - %t261 = load i32, ptr %t193 - %t262 = getelementptr inbounds %LSlice, ptr %t260, i32 0, i32 0 - %t263 = load ptr, ptr %t262 - %t264 = getelementptr inbounds %LSlice, ptr %t260, i32 0, i32 1 - %t265 = load i32, ptr %t264 - %t266 = icmp ult i32 %t261, %t265 - br i1 %t266, label %ixok28, label %ixbad29 + %t250 = call ptr @fn_nreg() + store ptr %t250, ptr %t251 + %t252 = load ptr, ptr %t222 + %t253 = getelementptr inbounds %Cmp_Node, ptr %t252, i32 0, i32 1 + %t254 = load ptr, ptr %t253 + %t255 = call ptr @lp_str_concat(ptr @.str11986, ptr %t254) + %t256 = call ptr @fn_ecs_base(ptr %t255) + store ptr %t256, ptr %t257 + call void @fn_emit(ptr @.str11987) + %t258 = load ptr, ptr %t251 + call void @fn_emit(ptr %t258) + call void @fn_emit(ptr @.str11988) + %t259 = load ptr, ptr %t222 + %t260 = getelementptr inbounds %Cmp_Node, ptr %t259, i32 0, i32 1 + %t261 = load ptr, ptr %t260 + call void @fn_emit(ptr %t261) + call void @fn_emit(ptr @.str11989) + %t262 = load ptr, ptr %t257 + call void @fn_emit(ptr %t262) + call void @fn_emit(ptr @.str11990) + %t263 = load ptr, ptr %t75 + call void @fn_emit(ptr %t263) + call void @fn_emit(ptr @.str11991) + %t264 = call ptr @fn_emit_alloca(ptr @.str11992) + store ptr %t264, ptr %t265 + call void @fn_emit(ptr @.str11993) + %t266 = load ptr, ptr %t251 + call void @fn_emit(ptr %t266) + call void @fn_emit(ptr @.str11994) + %t267 = load ptr, ptr %t265 + call void @fn_emit(ptr %t267) + call void @fn_emit(ptr @.str11995) + %t268 = load ptr, ptr %t0 + %t269 = getelementptr inbounds %Cmp_Node, ptr %t268, i32 0, i32 7 + %t270 = load ptr, ptr %t269 + %t271 = load i32, ptr %t200 + %t272 = getelementptr inbounds %LSlice, ptr %t270, i32 0, i32 0 + %t273 = load ptr, ptr %t272 + %t274 = getelementptr inbounds %LSlice, ptr %t270, i32 0, i32 1 + %t275 = load i32, ptr %t274 + %t276 = icmp ult i32 %t271, %t275 + br i1 %t276, label %ixok28, label %ixbad29 ixbad29: - %t267 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t267, ptr @.fmt_bounds, ptr @.str11885, i32 %t261, i32 %t265) + %t277 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t277, ptr @.fmt_bounds, ptr @.str11996, i32 %t271, i32 %t275) call void @exit(i32 1) unreachable ixok28: - %t268 = getelementptr inbounds ptr, ptr %t263, i32 %t261 - %t269 = load ptr, ptr %t268 - %t270 = getelementptr inbounds %Cmp_Node, ptr %t269, i32 0, i32 1 - %t271 = load ptr, ptr %t270 - %t272 = load ptr, ptr %t255 - %t273 = load ptr, ptr %t215 - %t274 = getelementptr inbounds %Cmp_Node, ptr %t273, i32 0, i32 1 - %t275 = load ptr, ptr %t274 - call void @fn_loc_push(ptr %t271, ptr %t272, ptr %t275) - %t276 = load i32, ptr %t193 - %t277 = add i32 %t276, 1 - store i32 %t277, ptr %t193 + %t278 = getelementptr inbounds ptr, ptr %t273, i32 %t271 + %t279 = load ptr, ptr %t278 + %t280 = getelementptr inbounds %Cmp_Node, ptr %t279, i32 0, i32 1 + %t281 = load ptr, ptr %t280 + %t282 = load ptr, ptr %t265 + %t283 = load ptr, ptr %t222 + %t284 = getelementptr inbounds %Cmp_Node, ptr %t283, i32 0, i32 1 + %t285 = load ptr, ptr %t284 + call void @fn_loc_push(ptr %t281, ptr %t282, ptr %t285) + %t286 = load i32, ptr %t200 + %t287 = add i32 %t286, 1 + store i32 %t287, ptr %t200 br label %ifend27 ifend27: br label %ifend24 ifend24: - %t278 = load i32, ptr %t100 - %t279 = add i32 %t278, 1 - store i32 %t279, ptr %t100 + %t288 = load i32, ptr %t102 + %t289 = add i32 %t288, 1 + store i32 %t289, ptr %t102 br label %wcond15 wend17: - %t280 = load ptr, ptr %t0 - %t281 = getelementptr inbounds %Cmp_Node, ptr %t280, i32 0, i32 5 - %t282 = load ptr, ptr %t281 - %t283 = icmp ne ptr %t282, null - %t284 = zext i1 %t283 to i32 - %t285 = icmp ne i32 %t284, 0 - br i1 %t285, label %then30, label %ifend32 + %t290 = load ptr, ptr %t0 + %t291 = getelementptr inbounds %Cmp_Node, ptr %t290, i32 0, i32 5 + %t292 = load ptr, ptr %t291 + %t293 = icmp ne ptr %t292, null + %t294 = zext i1 %t293 to i32 + %t295 = icmp ne i32 %t294, 0 + br i1 %t295, label %then30, label %ifend32 then30: - %t286 = load ptr, ptr %t0 - %t287 = getelementptr inbounds %Cmp_Node, ptr %t286, i32 0, i32 5 - %t288 = load ptr, ptr %t287 - %t289 = call ptr @fn_emit_expr(ptr %t288) - store ptr %t289, ptr %t290 - %t291 = load ptr, ptr %t290 - %t292 = getelementptr inbounds %Cmp_Val, ptr %t291, i32 0, i32 0 - %t293 = load ptr, ptr %t292 - %t294 = call ptr @lp_str_concat(ptr @.str11886, ptr %t293) - %t295 = call ptr @lp_str_concat(ptr %t294, ptr @.str11887) - %t296 = call ptr @fn_emit_bind(ptr %t295) - store ptr %t296, ptr %t297 - %t298 = call ptr @fn_lbl(ptr @.str11888) - store ptr %t298, ptr %t299 - call void @fn_emit(ptr @.str11889) - %t300 = load ptr, ptr %t297 - call void @fn_emit(ptr %t300) - call void @fn_emit(ptr @.str11890) - %t301 = load ptr, ptr %t299 - call void @fn_emit(ptr %t301) - call void @fn_emit(ptr @.str11891) - %t302 = load ptr, ptr %t50 - call void @fn_emit(ptr %t302) - call void @fn_emit(ptr @.str11892) - %t303 = load ptr, ptr %t299 - call void @fn_emit(ptr %t303) - call void @fn_emit(ptr @.str11893) + %t296 = load ptr, ptr %t0 + %t297 = getelementptr inbounds %Cmp_Node, ptr %t296, i32 0, i32 5 + %t298 = load ptr, ptr %t297 + %t299 = call ptr @fn_emit_expr(ptr %t298) + store ptr %t299, ptr %t300 + %t301 = load ptr, ptr %t300 + %t302 = getelementptr inbounds %Cmp_Val, ptr %t301, i32 0, i32 0 + %t303 = load ptr, ptr %t302 + %t304 = call ptr @lp_str_concat(ptr @.str11997, ptr %t303) + %t305 = call ptr @lp_str_concat(ptr %t304, ptr @.str11998) + %t306 = call ptr @fn_emit_bind(ptr %t305) + store ptr %t306, ptr %t307 + %t308 = call ptr @fn_lbl(ptr @.str11999) + store ptr %t308, ptr %t309 + call void @fn_emit(ptr @.str12000) + %t310 = load ptr, ptr %t307 + call void @fn_emit(ptr %t310) + call void @fn_emit(ptr @.str12001) + %t311 = load ptr, ptr %t309 + call void @fn_emit(ptr %t311) + call void @fn_emit(ptr @.str12002) + %t312 = load ptr, ptr %t50 + call void @fn_emit(ptr %t312) + call void @fn_emit(ptr @.str12003) + %t313 = load ptr, ptr %t309 + call void @fn_emit(ptr %t313) + call void @fn_emit(ptr @.str12004) br label %ifend32 ifend32: - %t304 = load ptr, ptr %t50 - %t305 = load ptr, ptr %t52 - call void @fn_loop_push(ptr %t304, ptr %t305) - %t306 = load ptr, ptr %t0 - %t307 = getelementptr inbounds %Cmp_Node, ptr %t306, i32 0, i32 4 - %t308 = load ptr, ptr %t307 - call void @fn_emit_block(ptr %t308) - call void @fn_loop_pop() - %t309 = load i32, ptr %t192 - store i32 %t309, ptr @g_nloc - %t310 = load i32, ptr @g_g_term - %t311 = icmp eq i32 %t310, 0 - %t312 = zext i1 %t311 to i32 - %t313 = icmp ne i32 %t312, 0 - br i1 %t313, label %then33, label %ifend35 -then33: - call void @fn_emit(ptr @.str11894) %t314 = load ptr, ptr %t50 - call void @fn_emit(ptr %t314) - call void @fn_emit(ptr @.str11895) + %t315 = load ptr, ptr %t52 + call void @fn_loop_push(ptr %t314, ptr %t315) + %t316 = load ptr, ptr %t0 + %t317 = getelementptr inbounds %Cmp_Node, ptr %t316, i32 0, i32 4 + %t318 = load ptr, ptr %t317 + call void @fn_emit_block(ptr %t318) + call void @fn_loop_pop() + %t319 = load i32, ptr %t199 + store i32 %t319, ptr @g_nloc + %t320 = load i32, ptr @g_g_term + %t321 = icmp eq i32 %t320, 0 + %t322 = zext i1 %t321 to i32 + %t323 = icmp ne i32 %t322, 0 + br i1 %t323, label %then33, label %ifend35 +then33: + call void @fn_emit(ptr @.str12005) + %t324 = load ptr, ptr %t50 + call void @fn_emit(ptr %t324) + call void @fn_emit(ptr @.str12006) br label %ifend35 ifend35: - %t315 = load ptr, ptr %t50 - call void @fn_emit(ptr %t315) - call void @fn_emit(ptr @.str11896) - %t316 = load ptr, ptr %t4 - %t317 = call ptr @lp_str_concat(ptr @.str11897, ptr %t316) - %t318 = call ptr @fn_emit_bind(ptr %t317) - store ptr %t318, ptr %t319 - %t320 = load ptr, ptr %t319 - %t321 = call ptr @lp_str_concat(ptr @.str11898, ptr %t320) - %t322 = call ptr @lp_str_concat(ptr %t321, ptr @.str11899) - %t323 = call ptr @fn_emit_bind(ptr %t322) - store ptr %t323, ptr %t324 - %t325 = load ptr, ptr %t324 + %t325 = load ptr, ptr %t50 + call void @fn_emit(ptr %t325) + call void @fn_emit(ptr @.str12007) %t326 = load ptr, ptr %t4 - call void @fn_store_at(ptr @.str11900, ptr %t325, ptr %t326) - call void @fn_emit(ptr @.str11901) - %t327 = load ptr, ptr %t46 - call void @fn_emit(ptr %t327) - call void @fn_emit(ptr @.str11902) - %t328 = load ptr, ptr %t52 - call void @fn_emit(ptr %t328) - call void @fn_emit(ptr @.str11903) + %t327 = call ptr @lp_str_concat(ptr @.str12008, ptr %t326) + %t328 = call ptr @fn_emit_bind(ptr %t327) + store ptr %t328, ptr %t329 + %t330 = load ptr, ptr %t329 + %t331 = call ptr @lp_str_concat(ptr @.str12009, ptr %t330) + %t332 = call ptr @lp_str_concat(ptr %t331, ptr @.str12010) + %t333 = call ptr @fn_emit_bind(ptr %t332) + store ptr %t333, ptr %t334 + %t335 = load ptr, ptr %t334 + %t336 = load ptr, ptr %t4 + call void @fn_store_at(ptr @.str12011, ptr %t335, ptr %t336) + call void @fn_emit(ptr @.str12012) + %t337 = load ptr, ptr %t46 + call void @fn_emit(ptr %t337) + call void @fn_emit(ptr @.str12013) + %t338 = load ptr, ptr %t52 + call void @fn_emit(ptr %t338) + call void @fn_emit(ptr @.str12014) store i32 0, ptr @g_g_term - %t329 = load i32, ptr @g_nself - %t330 = sub i32 %t329, 1 - store i32 %t330, ptr @g_nself + %t339 = load i32, ptr @g_nself + %t340 = sub i32 %t339, 1 + store i32 %t340, ptr @g_nself br label %ret ret: ret void @@ -162736,15 +163343,15 @@ entry: %t3 = alloca ptr store ptr %arg_e, ptr %t0 store ptr %arg_body, ptr %t1 - %t2 = call ptr @fn_emit_alloca(ptr @.str11904) + %t2 = call ptr @fn_emit_alloca(ptr @.str12015) store ptr %t2, ptr %t3 - call void @fn_emit(ptr @.str11905) + call void @fn_emit(ptr @.str12016) %t4 = load ptr, ptr %t0 call void @fn_emit(ptr %t4) - call void @fn_emit(ptr @.str11906) + call void @fn_emit(ptr @.str12017) %t5 = load ptr, ptr %t3 call void @fn_emit(ptr %t5) - call void @fn_emit(ptr @.str11907) + call void @fn_emit(ptr @.str12018) %t6 = load i32, ptr @g_nself %t7 = load ptr, ptr @g_self_stk %t8 = getelementptr inbounds %LSlice, ptr %t7, i32 0, i32 1 @@ -162764,7 +163371,7 @@ then0: br i1 %t19, label %ixok3, label %ixbad4 ixbad4: %t20 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str11908, i32 %t14, i32 %t18) + call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str12019, i32 %t14, i32 %t18) call void @exit(i32 1) unreachable ixok3: @@ -162823,25 +163430,27 @@ entry: %t2 = alloca ptr %t4 = alloca ptr %t7 = alloca ptr - %t15 = alloca ptr - %t22 = alloca ptr - %t28 = alloca i32 - %t50 = alloca ptr - %t52 = alloca ptr - %t62 = alloca ptr - %t65 = alloca ptr - %t76 = alloca ptr - %t91 = alloca i32 - %t113 = alloca ptr - %t119 = alloca i32 - %t125 = alloca ptr - %t135 = alloca ptr + %t17 = alloca ptr + %t19 = alloca ptr + %t25 = alloca ptr + %t29 = alloca ptr + %t34 = alloca i32 + %t56 = alloca ptr + %t58 = alloca ptr + %t68 = alloca ptr + %t71 = alloca ptr + %t82 = alloca ptr + %t97 = alloca i32 + %t119 = alloca ptr + %t125 = alloca i32 + %t131 = alloca ptr %t141 = alloca ptr - %t145 = alloca ptr - %t154 = alloca ptr - %t160 = alloca i32 - %t162 = alloca ptr - %t174 = alloca ptr + %t147 = alloca ptr + %t151 = alloca ptr + %t160 = alloca ptr + %t166 = alloca i32 + %t168 = alloca ptr + %t180 = alloca ptr store ptr %arg_e, ptr %t0 store ptr %arg_comp, ptr %t1 store ptr %arg_rec, ptr %t2 @@ -162857,291 +163466,293 @@ entry: br i1 %t11, label %then0, label %ifend2 then0: %t12 = load ptr, ptr %t1 - %t13 = call ptr @lp_str_concat(ptr @.str11909, ptr %t12) + %t13 = call ptr @lp_str_concat(ptr @.str12020, ptr %t12) call void @fn_perr(ptr %t13) br label %ifend2 ifend2: - %t14 = call ptr @fn_nreg() - store ptr %t14, ptr %t15 - call void @fn_emit(ptr @.str11910) - %t16 = load ptr, ptr %t15 - call void @fn_emit(ptr %t16) - call void @fn_emit(ptr @.str11911) - %t17 = load ptr, ptr %t4 - call void @fn_emit(ptr %t17) - call void @fn_emit(ptr @.str11912) - %t18 = load ptr, ptr %t1 - call void @fn_emit(ptr %t18) - call void @fn_emit(ptr @.str11913) - %t19 = load ptr, ptr %t0 - call void @fn_emit(ptr %t19) - call void @fn_emit(ptr @.str11914) - call void @fn_emit(ptr @.str11915) - %t20 = load ptr, ptr %t15 + %t14 = load ptr, ptr %t1 + %t15 = call ptr @lp_str_concat(ptr @.str12021, ptr %t14) + %t16 = call ptr @fn_ecs_base(ptr %t15) + store ptr %t16, ptr %t17 + %t18 = call ptr @fn_nreg() + store ptr %t18, ptr %t19 + call void @fn_emit(ptr @.str12022) + %t20 = load ptr, ptr %t19 call void @fn_emit(ptr %t20) - call void @fn_emit(ptr @.str11916) - %t21 = call ptr @fn_nreg() - store ptr %t21, ptr %t22 - call void @fn_emit(ptr @.str11917) - %t23 = load ptr, ptr %t22 + call void @fn_emit(ptr @.str12023) + %t21 = load ptr, ptr %t17 + call void @fn_emit(ptr %t21) + call void @fn_emit(ptr @.str12024) + %t22 = load ptr, ptr %t0 + call void @fn_emit(ptr %t22) + call void @fn_emit(ptr @.str12025) + call void @fn_emit(ptr @.str12026) + %t23 = load ptr, ptr %t19 call void @fn_emit(ptr %t23) - call void @fn_emit(ptr @.str11918) - %t24 = load ptr, ptr %t4 - call void @fn_emit(ptr %t24) - call void @fn_emit(ptr @.str11919) - %t25 = load ptr, ptr %t1 - call void @fn_emit(ptr %t25) - call void @fn_emit(ptr @.str11920) + call void @fn_emit(ptr @.str12027) + %t24 = call ptr @fn_nreg() + store ptr %t24, ptr %t25 %t26 = load ptr, ptr %t1 - call void @fn_emit(ptr %t26) - call void @fn_emit(ptr @.str11921) - %t27 = load ptr, ptr %t0 - call void @fn_emit(ptr %t27) - call void @fn_emit(ptr @.str11922) - store i32 0, ptr %t28 + %t27 = call ptr @lp_str_concat(ptr @.str12028, ptr %t26) + %t28 = call ptr @fn_ecs_base(ptr %t27) + store ptr %t28, ptr %t29 + call void @fn_emit(ptr @.str12029) + %t30 = load ptr, ptr %t25 + call void @fn_emit(ptr %t30) + call void @fn_emit(ptr @.str12030) + %t31 = load ptr, ptr %t1 + call void @fn_emit(ptr %t31) + call void @fn_emit(ptr @.str12031) + %t32 = load ptr, ptr %t29 + call void @fn_emit(ptr %t32) + call void @fn_emit(ptr @.str12032) + %t33 = load ptr, ptr %t0 + call void @fn_emit(ptr %t33) + call void @fn_emit(ptr @.str12033) + store i32 0, ptr %t34 br label %wcond3 wcond3: - %t29 = load i32, ptr %t28 - %t30 = load ptr, ptr %t7 - %t31 = getelementptr inbounds %Cmp_Node, ptr %t30, i32 0, i32 7 - %t32 = load ptr, ptr %t31 - %t33 = getelementptr inbounds %LSlice, ptr %t32, i32 0, i32 1 - %t34 = load i32, ptr %t33 - %t35 = icmp slt i32 %t29, %t34 - %t36 = zext i1 %t35 to i32 - %t37 = icmp ne i32 %t36, 0 - br i1 %t37, label %wbody4, label %wend5 + %t35 = load i32, ptr %t34 + %t36 = load ptr, ptr %t7 + %t37 = getelementptr inbounds %Cmp_Node, ptr %t36, i32 0, i32 7 + %t38 = load ptr, ptr %t37 + %t39 = getelementptr inbounds %LSlice, ptr %t38, i32 0, i32 1 + %t40 = load i32, ptr %t39 + %t41 = icmp slt i32 %t35, %t40 + %t42 = zext i1 %t41 to i32 + %t43 = icmp ne i32 %t42, 0 + br i1 %t43, label %wbody4, label %wend5 wbody4: - %t38 = load ptr, ptr %t7 - %t39 = getelementptr inbounds %Cmp_Node, ptr %t38, i32 0, i32 7 - %t40 = load ptr, ptr %t39 - %t41 = load i32, ptr %t28 - %t42 = getelementptr inbounds %LSlice, ptr %t40, i32 0, i32 0 - %t43 = load ptr, ptr %t42 - %t44 = getelementptr inbounds %LSlice, ptr %t40, i32 0, i32 1 - %t45 = load i32, ptr %t44 - %t46 = icmp ult i32 %t41, %t45 - br i1 %t46, label %ixok6, label %ixbad7 + %t44 = load ptr, ptr %t7 + %t45 = getelementptr inbounds %Cmp_Node, ptr %t44, i32 0, i32 7 + %t46 = load ptr, ptr %t45 + %t47 = load i32, ptr %t34 + %t48 = getelementptr inbounds %LSlice, ptr %t46, i32 0, i32 0 + %t49 = load ptr, ptr %t48 + %t50 = getelementptr inbounds %LSlice, ptr %t46, i32 0, i32 1 + %t51 = load i32, ptr %t50 + %t52 = icmp ult i32 %t47, %t51 + br i1 %t52, label %ixok6, label %ixbad7 ixbad7: - %t47 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t47, ptr @.fmt_bounds, ptr @.str11923, i32 %t41, i32 %t45) + %t53 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t53, ptr @.fmt_bounds, ptr @.str12034, i32 %t47, i32 %t51) call void @exit(i32 1) unreachable ixok6: - %t48 = getelementptr inbounds ptr, ptr %t43, i32 %t41 - %t49 = load ptr, ptr %t48 - store ptr %t49, ptr %t50 - %t51 = call ptr @fn_nreg() - store ptr %t51, ptr %t52 - call void @fn_emit(ptr @.str11924) - %t53 = load ptr, ptr %t52 - call void @fn_emit(ptr %t53) - call void @fn_emit(ptr @.str11925) - %t54 = load ptr, ptr %t1 - call void @fn_emit(ptr %t54) - call void @fn_emit(ptr @.str11926) - %t55 = load ptr, ptr %t22 - call void @fn_emit(ptr %t55) - call void @fn_emit(ptr @.str11927) - %t56 = load i32, ptr %t28 - %t57 = call ptr @fn_itoa(i32 %t56) - call void @fn_emit(ptr %t57) - call void @fn_emit(ptr @.str11928) - %t58 = load ptr, ptr %t50 - %t59 = getelementptr inbounds %Cmp_Node, ptr %t58, i32 0, i32 3 - %t60 = load ptr, ptr %t59 - %t61 = call ptr @fn_llty(ptr %t60) - store ptr %t61, ptr %t62 - %t63 = load ptr, ptr %t62 - %t64 = call ptr @fn_zero_of(ptr %t63) - store ptr %t64, ptr %t65 - %t66 = load ptr, ptr %t50 - %t67 = getelementptr inbounds %Cmp_Node, ptr %t66, i32 0, i32 4 - %t68 = load ptr, ptr %t67 - %t69 = icmp ne ptr %t68, null - %t70 = zext i1 %t69 to i32 - %t71 = icmp ne i32 %t70, 0 - br i1 %t71, label %then8, label %ifend10 -then8: - %t72 = load ptr, ptr %t50 + %t54 = getelementptr inbounds ptr, ptr %t49, i32 %t47 + %t55 = load ptr, ptr %t54 + store ptr %t55, ptr %t56 + %t57 = call ptr @fn_nreg() + store ptr %t57, ptr %t58 + call void @fn_emit(ptr @.str12035) + %t59 = load ptr, ptr %t58 + call void @fn_emit(ptr %t59) + call void @fn_emit(ptr @.str12036) + %t60 = load ptr, ptr %t1 + call void @fn_emit(ptr %t60) + call void @fn_emit(ptr @.str12037) + %t61 = load ptr, ptr %t25 + call void @fn_emit(ptr %t61) + call void @fn_emit(ptr @.str12038) + %t62 = load i32, ptr %t34 + %t63 = call ptr @fn_itoa(i32 %t62) + call void @fn_emit(ptr %t63) + call void @fn_emit(ptr @.str12039) + %t64 = load ptr, ptr %t56 + %t65 = getelementptr inbounds %Cmp_Node, ptr %t64, i32 0, i32 3 + %t66 = load ptr, ptr %t65 + %t67 = call ptr @fn_llty(ptr %t66) + store ptr %t67, ptr %t68 + %t69 = load ptr, ptr %t68 + %t70 = call ptr @fn_zero_of(ptr %t69) + store ptr %t70, ptr %t71 + %t72 = load ptr, ptr %t56 %t73 = getelementptr inbounds %Cmp_Node, ptr %t72, i32 0, i32 4 %t74 = load ptr, ptr %t73 - %t75 = call ptr @fn_emit_expr(ptr %t74) - store ptr %t75, ptr %t76 - %t77 = load ptr, ptr %t76 - %t78 = load ptr, ptr %t50 - %t79 = getelementptr inbounds %Cmp_Node, ptr %t78, i32 0, i32 3 + %t75 = icmp ne ptr %t74, null + %t76 = zext i1 %t75 to i32 + %t77 = icmp ne i32 %t76, 0 + br i1 %t77, label %then8, label %ifend10 +then8: + %t78 = load ptr, ptr %t56 + %t79 = getelementptr inbounds %Cmp_Node, ptr %t78, i32 0, i32 4 %t80 = load ptr, ptr %t79 - %t81 = call ptr @fn_coerce_code(ptr %t77, ptr %t80) - store ptr %t81, ptr %t65 + %t81 = call ptr @fn_emit_expr(ptr %t80) + store ptr %t81, ptr %t82 + %t83 = load ptr, ptr %t82 + %t84 = load ptr, ptr %t56 + %t85 = getelementptr inbounds %Cmp_Node, ptr %t84, i32 0, i32 3 + %t86 = load ptr, ptr %t85 + %t87 = call ptr @fn_coerce_code(ptr %t83, ptr %t86) + store ptr %t87, ptr %t71 br label %ifend10 ifend10: - call void @fn_emit(ptr @.str11929) - %t82 = load ptr, ptr %t62 - call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str11930) - %t83 = load ptr, ptr %t65 - call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str11931) - %t84 = load ptr, ptr %t52 - call void @fn_emit(ptr %t84) - call void @fn_emit(ptr @.str11932) - %t85 = load i32, ptr %t28 - %t86 = add i32 %t85, 1 - store i32 %t86, ptr %t28 + call void @fn_emit(ptr @.str12040) + %t88 = load ptr, ptr %t68 + call void @fn_emit(ptr %t88) + call void @fn_emit(ptr @.str12041) + %t89 = load ptr, ptr %t71 + call void @fn_emit(ptr %t89) + call void @fn_emit(ptr @.str12042) + %t90 = load ptr, ptr %t58 + call void @fn_emit(ptr %t90) + call void @fn_emit(ptr @.str12043) + %t91 = load i32, ptr %t34 + %t92 = add i32 %t91, 1 + store i32 %t92, ptr %t34 br label %wcond3 wend5: - %t87 = load ptr, ptr %t2 - %t88 = icmp ne ptr %t87, null - %t89 = zext i1 %t88 to i32 - %t90 = icmp ne i32 %t89, 0 - br i1 %t90, label %then11, label %ifend13 + %t93 = load ptr, ptr %t2 + %t94 = icmp ne ptr %t93, null + %t95 = zext i1 %t94 to i32 + %t96 = icmp ne i32 %t95, 0 + br i1 %t96, label %then11, label %ifend13 then11: - store i32 0, ptr %t91 + store i32 0, ptr %t97 br label %wcond14 wcond14: - %t92 = load i32, ptr %t91 - %t93 = load ptr, ptr %t2 - %t94 = getelementptr inbounds %Cmp_Node, ptr %t93, i32 0, i32 7 - %t95 = load ptr, ptr %t94 - %t96 = getelementptr inbounds %LSlice, ptr %t95, i32 0, i32 1 - %t97 = load i32, ptr %t96 - %t98 = icmp slt i32 %t92, %t97 - %t99 = zext i1 %t98 to i32 - %t100 = icmp ne i32 %t99, 0 - br i1 %t100, label %wbody15, label %wend16 + %t98 = load i32, ptr %t97 + %t99 = load ptr, ptr %t2 + %t100 = getelementptr inbounds %Cmp_Node, ptr %t99, i32 0, i32 7 + %t101 = load ptr, ptr %t100 + %t102 = getelementptr inbounds %LSlice, ptr %t101, i32 0, i32 1 + %t103 = load i32, ptr %t102 + %t104 = icmp slt i32 %t98, %t103 + %t105 = zext i1 %t104 to i32 + %t106 = icmp ne i32 %t105, 0 + br i1 %t106, label %wbody15, label %wend16 wbody15: - %t101 = load ptr, ptr %t2 - %t102 = getelementptr inbounds %Cmp_Node, ptr %t101, i32 0, i32 7 - %t103 = load ptr, ptr %t102 - %t104 = load i32, ptr %t91 - %t105 = getelementptr inbounds %LSlice, ptr %t103, i32 0, i32 0 - %t106 = load ptr, ptr %t105 - %t107 = getelementptr inbounds %LSlice, ptr %t103, i32 0, i32 1 - %t108 = load i32, ptr %t107 - %t109 = icmp ult i32 %t104, %t108 - br i1 %t109, label %ixok17, label %ixbad18 + %t107 = load ptr, ptr %t2 + %t108 = getelementptr inbounds %Cmp_Node, ptr %t107, i32 0, i32 7 + %t109 = load ptr, ptr %t108 + %t110 = load i32, ptr %t97 + %t111 = getelementptr inbounds %LSlice, ptr %t109, i32 0, i32 0 + %t112 = load ptr, ptr %t111 + %t113 = getelementptr inbounds %LSlice, ptr %t109, i32 0, i32 1 + %t114 = load i32, ptr %t113 + %t115 = icmp ult i32 %t110, %t114 + br i1 %t115, label %ixok17, label %ixbad18 ixbad18: - %t110 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t110, ptr @.fmt_bounds, ptr @.str11933, i32 %t104, i32 %t108) + %t116 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t116, ptr @.fmt_bounds, ptr @.str12044, i32 %t110, i32 %t114) call void @exit(i32 1) unreachable ixok17: - %t111 = getelementptr inbounds ptr, ptr %t106, i32 %t104 - %t112 = load ptr, ptr %t111 - store ptr %t112, ptr %t113 - %t114 = load ptr, ptr %t7 - %t115 = load ptr, ptr %t113 - %t116 = getelementptr inbounds %Cmp_Node, ptr %t115, i32 0, i32 1 - %t117 = load ptr, ptr %t116 - %t118 = call i32 @fn_field_index(ptr %t114, ptr %t117) - store i32 %t118, ptr %t119 - %t120 = load i32, ptr %t119 - %t121 = icmp sge i32 %t120, 0 - %t122 = zext i1 %t121 to i32 - %t123 = icmp ne i32 %t122, 0 - br i1 %t123, label %then19, label %ifend21 + %t117 = getelementptr inbounds ptr, ptr %t112, i32 %t110 + %t118 = load ptr, ptr %t117 + store ptr %t118, ptr %t119 + %t120 = load ptr, ptr %t7 + %t121 = load ptr, ptr %t119 + %t122 = getelementptr inbounds %Cmp_Node, ptr %t121, i32 0, i32 1 + %t123 = load ptr, ptr %t122 + %t124 = call i32 @fn_field_index(ptr %t120, ptr %t123) + store i32 %t124, ptr %t125 + %t126 = load i32, ptr %t125 + %t127 = icmp sge i32 %t126, 0 + %t128 = zext i1 %t127 to i32 + %t129 = icmp ne i32 %t128, 0 + br i1 %t129, label %then19, label %ifend21 then19: - %t124 = call ptr @fn_nreg() - store ptr %t124, ptr %t125 - call void @fn_emit(ptr @.str11934) - %t126 = load ptr, ptr %t125 - call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str11935) - %t127 = load ptr, ptr %t1 - call void @fn_emit(ptr %t127) - call void @fn_emit(ptr @.str11936) - %t128 = load ptr, ptr %t22 - call void @fn_emit(ptr %t128) - call void @fn_emit(ptr @.str11937) - %t129 = load i32, ptr %t119 - %t130 = call ptr @fn_itoa(i32 %t129) - call void @fn_emit(ptr %t130) - call void @fn_emit(ptr @.str11938) - %t131 = load ptr, ptr %t113 - %t132 = getelementptr inbounds %Cmp_Node, ptr %t131, i32 0, i32 4 - %t133 = load ptr, ptr %t132 - %t134 = call ptr @fn_emit_expr(ptr %t133) - store ptr %t134, ptr %t135 - %t136 = load ptr, ptr %t7 - %t137 = load ptr, ptr %t113 - %t138 = getelementptr inbounds %Cmp_Node, ptr %t137, i32 0, i32 1 + %t130 = call ptr @fn_nreg() + store ptr %t130, ptr %t131 + call void @fn_emit(ptr @.str12045) + %t132 = load ptr, ptr %t131 + call void @fn_emit(ptr %t132) + call void @fn_emit(ptr @.str12046) + %t133 = load ptr, ptr %t1 + call void @fn_emit(ptr %t133) + call void @fn_emit(ptr @.str12047) + %t134 = load ptr, ptr %t25 + call void @fn_emit(ptr %t134) + call void @fn_emit(ptr @.str12048) + %t135 = load i32, ptr %t125 + %t136 = call ptr @fn_itoa(i32 %t135) + call void @fn_emit(ptr %t136) + call void @fn_emit(ptr @.str12049) + %t137 = load ptr, ptr %t119 + %t138 = getelementptr inbounds %Cmp_Node, ptr %t137, i32 0, i32 4 %t139 = load ptr, ptr %t138 - %t140 = call ptr @fn_field_type(ptr %t136, ptr %t139) + %t140 = call ptr @fn_emit_expr(ptr %t139) store ptr %t140, ptr %t141 - %t142 = load ptr, ptr %t135 - %t143 = load ptr, ptr %t141 - %t144 = call ptr @fn_coerce_code(ptr %t142, ptr %t143) - store ptr %t144, ptr %t145 - call void @fn_emit(ptr @.str11939) - %t146 = load ptr, ptr %t141 - %t147 = call ptr @fn_llty(ptr %t146) - call void @fn_emit(ptr %t147) - call void @fn_emit(ptr @.str11940) - %t148 = load ptr, ptr %t145 - call void @fn_emit(ptr %t148) - call void @fn_emit(ptr @.str11941) - %t149 = load ptr, ptr %t125 - call void @fn_emit(ptr %t149) - call void @fn_emit(ptr @.str11942) + %t142 = load ptr, ptr %t7 + %t143 = load ptr, ptr %t119 + %t144 = getelementptr inbounds %Cmp_Node, ptr %t143, i32 0, i32 1 + %t145 = load ptr, ptr %t144 + %t146 = call ptr @fn_field_type(ptr %t142, ptr %t145) + store ptr %t146, ptr %t147 + %t148 = load ptr, ptr %t141 + %t149 = load ptr, ptr %t147 + %t150 = call ptr @fn_coerce_code(ptr %t148, ptr %t149) + store ptr %t150, ptr %t151 + call void @fn_emit(ptr @.str12050) + %t152 = load ptr, ptr %t147 + %t153 = call ptr @fn_llty(ptr %t152) + call void @fn_emit(ptr %t153) + call void @fn_emit(ptr @.str12051) + %t154 = load ptr, ptr %t151 + call void @fn_emit(ptr %t154) + call void @fn_emit(ptr @.str12052) + %t155 = load ptr, ptr %t131 + call void @fn_emit(ptr %t155) + call void @fn_emit(ptr @.str12053) br label %ifend21 ifend21: - %t150 = load i32, ptr %t91 - %t151 = add i32 %t150, 1 - store i32 %t151, ptr %t91 + %t156 = load i32, ptr %t97 + %t157 = add i32 %t156, 1 + store i32 %t157, ptr %t97 br label %wcond14 wend16: br label %ifend13 ifend13: - %t152 = load ptr, ptr %t1 - %t153 = call ptr @fn_onattach_body(ptr %t152) - store ptr %t153, ptr %t154 - %t155 = load ptr, ptr %t154 - %t156 = icmp ne ptr %t155, null - %t157 = zext i1 %t156 to i32 - %t158 = icmp ne i32 %t157, 0 - br i1 %t158, label %then22, label %ifend24 + %t158 = load ptr, ptr %t1 + %t159 = call ptr @fn_onattach_body(ptr %t158) + store ptr %t159, ptr %t160 + %t161 = load ptr, ptr %t160 + %t162 = icmp ne ptr %t161, null + %t163 = zext i1 %t162 to i32 + %t164 = icmp ne i32 %t163, 0 + br i1 %t164, label %then22, label %ifend24 then22: - %t159 = load i32, ptr @g_nloc - store i32 %t159, ptr %t160 - %t161 = call ptr @fn_emit_alloca(ptr @.str11943) - store ptr %t161, ptr %t162 - call void @fn_emit(ptr @.str11944) - %t163 = load ptr, ptr %t22 - call void @fn_emit(ptr %t163) - call void @fn_emit(ptr @.str11945) - %t164 = load ptr, ptr %t162 - call void @fn_emit(ptr %t164) - call void @fn_emit(ptr @.str11946) - %t165 = load ptr, ptr %t1 - %t166 = load ptr, ptr %t162 - %t167 = load ptr, ptr %t1 - call void @fn_loc_push(ptr %t165, ptr %t166, ptr %t167) - %t168 = load ptr, ptr %t0 - %t169 = load ptr, ptr %t154 - call void @fn_emit_hook_with_self(ptr %t168, ptr %t169) - %t170 = load i32, ptr %t160 - store i32 %t170, ptr @g_nloc + %t165 = load i32, ptr @g_nloc + store i32 %t165, ptr %t166 + %t167 = call ptr @fn_emit_alloca(ptr @.str12054) + store ptr %t167, ptr %t168 + call void @fn_emit(ptr @.str12055) + %t169 = load ptr, ptr %t25 + call void @fn_emit(ptr %t169) + call void @fn_emit(ptr @.str12056) + %t170 = load ptr, ptr %t168 + call void @fn_emit(ptr %t170) + call void @fn_emit(ptr @.str12057) + %t171 = load ptr, ptr %t1 + %t172 = load ptr, ptr %t168 + %t173 = load ptr, ptr %t1 + call void @fn_loc_push(ptr %t171, ptr %t172, ptr %t173) + %t174 = load ptr, ptr %t0 + %t175 = load ptr, ptr %t160 + call void @fn_emit_hook_with_self(ptr %t174, ptr %t175) + %t176 = load i32, ptr %t166 + store i32 %t176, ptr @g_nloc br label %ifend24 ifend24: - %t171 = load ptr, ptr %t1 - %t172 = call ptr @lp_str_concat(ptr @.str11947, ptr %t171) - %t173 = call ptr @lp_str_concat(ptr %t172, ptr @.str11948) - store ptr %t173, ptr %t174 - %t175 = load ptr, ptr %t174 - %t176 = call ptr @fn_find_event(ptr %t175) - %t177 = icmp ne ptr %t176, null - %t178 = zext i1 %t177 to i32 - %t179 = icmp ne i32 %t178, 0 - br i1 %t179, label %then25, label %ifend27 + %t177 = load ptr, ptr %t1 + %t178 = call ptr @lp_str_concat(ptr @.str12058, ptr %t177) + %t179 = call ptr @lp_str_concat(ptr %t178, ptr @.str12059) + store ptr %t179, ptr %t180 + %t181 = load ptr, ptr %t180 + %t182 = call ptr @fn_find_event(ptr %t181) + %t183 = icmp ne ptr %t182, null + %t184 = zext i1 %t183 to i32 + %t185 = icmp ne i32 %t184, 0 + br i1 %t185, label %then25, label %ifend27 then25: - call void @fn_emit(ptr @.str11949) - %t180 = load ptr, ptr %t174 - call void @fn_emit(ptr %t180) - call void @fn_emit(ptr @.str11950) - %t181 = load ptr, ptr %t0 - call void @fn_emit(ptr %t181) - call void @fn_emit(ptr @.str11951) + call void @fn_emit(ptr @.str12060) + %t186 = load ptr, ptr %t180 + call void @fn_emit(ptr %t186) + call void @fn_emit(ptr @.str12061) + %t187 = load ptr, ptr %t0 + call void @fn_emit(ptr %t187) + call void @fn_emit(ptr @.str12062) br label %ifend27 ifend27: br label %ret @@ -163157,7 +163768,8 @@ entry: %t4 = alloca i32 %t28 = alloca ptr %t30 = alloca ptr - %t37 = alloca ptr + %t34 = alloca ptr + %t40 = alloca ptr store ptr %arg_model, ptr %t0 store ptr %arg_e, ptr %t1 %t2 = call ptr @fn_itoa(i32 1024) @@ -163188,7 +163800,7 @@ wbody1: br i1 %t22, label %ixok3, label %ixbad4 ixbad4: %t23 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str11952, i32 %t17, i32 %t21) + call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str12063, i32 %t17, i32 %t21) call void @exit(i32 1) unreachable ixok3: @@ -163199,38 +163811,39 @@ ixok3: store ptr %t27, ptr %t28 %t29 = call ptr @fn_nreg() store ptr %t29, ptr %t30 - call void @fn_emit(ptr @.str11953) - %t31 = load ptr, ptr %t30 - call void @fn_emit(ptr %t31) - call void @fn_emit(ptr @.str11954) - %t32 = load ptr, ptr %t3 - call void @fn_emit(ptr %t32) - call void @fn_emit(ptr @.str11955) - %t33 = load ptr, ptr %t28 - call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str11956) - %t34 = load ptr, ptr %t28 - call void @fn_emit(ptr %t34) - call void @fn_emit(ptr @.str11957) - %t35 = load ptr, ptr %t1 + %t31 = load ptr, ptr %t28 + %t32 = call ptr @lp_str_concat(ptr @.str12064, ptr %t31) + %t33 = call ptr @fn_ecs_base(ptr %t32) + store ptr %t33, ptr %t34 + call void @fn_emit(ptr @.str12065) + %t35 = load ptr, ptr %t30 call void @fn_emit(ptr %t35) - call void @fn_emit(ptr @.str11958) - %t36 = call ptr @fn_emit_alloca(ptr @.str11959) - store ptr %t36, ptr %t37 - call void @fn_emit(ptr @.str11960) - %t38 = load ptr, ptr %t30 + call void @fn_emit(ptr @.str12066) + %t36 = load ptr, ptr %t28 + call void @fn_emit(ptr %t36) + call void @fn_emit(ptr @.str12067) + %t37 = load ptr, ptr %t34 + call void @fn_emit(ptr %t37) + call void @fn_emit(ptr @.str12068) + %t38 = load ptr, ptr %t1 call void @fn_emit(ptr %t38) - call void @fn_emit(ptr @.str11961) - %t39 = load ptr, ptr %t37 - call void @fn_emit(ptr %t39) - call void @fn_emit(ptr @.str11962) - %t40 = load ptr, ptr %t28 - %t41 = load ptr, ptr %t37 - %t42 = load ptr, ptr %t28 - call void @fn_loc_push(ptr %t40, ptr %t41, ptr %t42) - %t43 = load i32, ptr %t4 - %t44 = add i32 %t43, 1 - store i32 %t44, ptr %t4 + call void @fn_emit(ptr @.str12069) + %t39 = call ptr @fn_emit_alloca(ptr @.str12070) + store ptr %t39, ptr %t40 + call void @fn_emit(ptr @.str12071) + %t41 = load ptr, ptr %t30 + call void @fn_emit(ptr %t41) + call void @fn_emit(ptr @.str12072) + %t42 = load ptr, ptr %t40 + call void @fn_emit(ptr %t42) + call void @fn_emit(ptr @.str12073) + %t43 = load ptr, ptr %t28 + %t44 = load ptr, ptr %t40 + %t45 = load ptr, ptr %t28 + call void @fn_loc_push(ptr %t43, ptr %t44, ptr %t45) + %t46 = load i32, ptr %t4 + %t47 = add i32 %t46, 1 + store i32 %t47, ptr %t4 br label %wcond0 wend2: br label %ret @@ -163281,7 +163894,7 @@ wbody4: br i1 %t24, label %ixok6, label %ixbad7 ixbad7: %t25 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str11963, i32 %t19, i32 %t23) + call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str12074, i32 %t19, i32 %t23) call void @exit(i32 1) unreachable ixok6: @@ -163306,7 +163919,7 @@ then8: br i1 %t41, label %ixok11, label %ixbad12 ixbad12: %t42 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str11964, i32 %t36, i32 %t40) + call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str12075, i32 %t36, i32 %t40) call void @exit(i32 1) unreachable ixok11: @@ -163389,7 +164002,7 @@ wbody7: br i1 %t35, label %ixok9, label %ixbad10 ixbad10: %t36 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str11965, i32 %t30, i32 %t34) + call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str12076, i32 %t30, i32 %t34) call void @exit(i32 1) unreachable ixok9: @@ -163455,7 +164068,7 @@ wbody14: br i1 %t79, label %ixok16, label %ixbad17 ixbad17: %t80 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t80, ptr @.fmt_bounds, ptr @.str11966, i32 %t74, i32 %t78) + call i32 (ptr, ptr, ...) @fprintf(ptr %t80, ptr @.fmt_bounds, ptr @.str12077, i32 %t74, i32 %t78) call void @exit(i32 1) unreachable ixok16: @@ -163543,8 +164156,8 @@ ifend5: br i1 %t21, label %then6, label %ifend8 then6: %t22 = load ptr, ptr %t0 - %t23 = call ptr @lp_str_concat(ptr @.str11967, ptr %t22) - %t24 = call ptr @lp_str_concat(ptr %t23, ptr @.str11968) + %t23 = call ptr @lp_str_concat(ptr @.str12078, ptr %t22) + %t24 = call ptr @lp_str_concat(ptr %t23, ptr @.str12079) call void @fn_perr(ptr %t24) br label %ifend8 ifend8: @@ -163616,58 +164229,58 @@ then0: br label %ret ifend2: store i32 1, ptr @g_g_uses_panic - %t6 = call ptr @fn_emit_bind(ptr @.str11969) + %t6 = call ptr @fn_emit_bind(ptr @.str12080) store ptr %t6, ptr %t7 %t8 = load ptr, ptr %t7 - %t9 = call ptr @lp_str_concat(ptr @.str11970, ptr %t8) - %t10 = call ptr @lp_str_concat(ptr %t9, ptr @.str11971) + %t9 = call ptr @lp_str_concat(ptr @.str12081, ptr %t8) + %t10 = call ptr @lp_str_concat(ptr %t9, ptr @.str12082) %t11 = call ptr @fn_emit_bind(ptr %t10) store ptr %t11, ptr %t12 - %t13 = call ptr @fn_lbl(ptr @.str11972) + %t13 = call ptr @fn_lbl(ptr @.str12083) store ptr %t13, ptr %t14 - %t15 = call ptr @fn_lbl(ptr @.str11973) + %t15 = call ptr @fn_lbl(ptr @.str12084) store ptr %t15, ptr %t16 %t17 = load ptr, ptr %t12 - %t18 = call ptr @lp_str_concat(ptr @.str11974, ptr %t17) - %t19 = call ptr @lp_str_concat(ptr %t18, ptr @.str11975) + %t18 = call ptr @lp_str_concat(ptr @.str12085, ptr %t17) + %t19 = call ptr @lp_str_concat(ptr %t18, ptr @.str12086) %t20 = load ptr, ptr %t16 %t21 = call ptr @lp_str_concat(ptr %t19, ptr %t20) - %t22 = call ptr @lp_str_concat(ptr %t21, ptr @.str11976) + %t22 = call ptr @lp_str_concat(ptr %t21, ptr @.str12087) %t23 = load ptr, ptr %t14 %t24 = call ptr @lp_str_concat(ptr %t22, ptr %t23) - %t25 = call ptr @lp_str_concat(ptr %t24, ptr @.str11977) + %t25 = call ptr @lp_str_concat(ptr %t24, ptr @.str12088) call void @fn_emit(ptr %t25) %t26 = load ptr, ptr %t16 - %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str11978) + %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str12089) call void @fn_emit(ptr %t27) %t28 = load ptr, ptr @g_g_src_name - %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str11979) + %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str12090) %t30 = load i32, ptr %t1 %t31 = call ptr @fn_itoa(i32 %t30) %t32 = call ptr @lp_str_concat(ptr %t29, ptr %t31) - %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str11980) + %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str12091) %t34 = call ptr @fn_emit_str_const(ptr %t33) store ptr %t34, ptr %t35 %t36 = load ptr, ptr %t0 - %t37 = call ptr @lp_str_concat(ptr %t36, ptr @.str11981) + %t37 = call ptr @lp_str_concat(ptr %t36, ptr @.str12092) %t38 = call ptr @fn_emit_str_const(ptr %t37) store ptr %t38, ptr %t39 %t40 = call ptr @fn_stdstream_rhs(i32 2) %t41 = call ptr @fn_emit_bind(ptr %t40) store ptr %t41, ptr %t42 %t43 = load ptr, ptr %t42 - %t44 = call ptr @lp_str_concat(ptr @.str11982, ptr %t43) - %t45 = call ptr @lp_str_concat(ptr %t44, ptr @.str11983) + %t44 = call ptr @lp_str_concat(ptr @.str12093, ptr %t43) + %t45 = call ptr @lp_str_concat(ptr %t44, ptr @.str12094) %t46 = load ptr, ptr %t35 %t47 = call ptr @lp_str_concat(ptr %t45, ptr %t46) - %t48 = call ptr @lp_str_concat(ptr %t47, ptr @.str11984) + %t48 = call ptr @lp_str_concat(ptr %t47, ptr @.str12095) %t49 = load ptr, ptr %t39 %t50 = call ptr @lp_str_concat(ptr %t48, ptr %t49) - %t51 = call ptr @lp_str_concat(ptr %t50, ptr @.str11985) + %t51 = call ptr @lp_str_concat(ptr %t50, ptr @.str12096) call void @fn_emit(ptr %t51) - call void @fn_emit(ptr @.str11986) + call void @fn_emit(ptr @.str12097) %t52 = load ptr, ptr %t14 - %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str11987) + %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str12098) call void @fn_emit(ptr %t53) br label %ret ret: @@ -163684,19 +164297,20 @@ entry: %t14 = alloca i32 %t42 = alloca ptr %t44 = alloca ptr - %t53 = alloca ptr - %t54 = alloca i32 - %t78 = alloca ptr - %t94 = alloca ptr - %t100 = alloca i32 - %t109 = alloca ptr - %t117 = alloca i32 + %t46 = alloca ptr + %t55 = alloca ptr + %t56 = alloca i32 + %t80 = alloca ptr + %t96 = alloca ptr + %t102 = alloca i32 + %t111 = alloca ptr + %t119 = alloca i32 store ptr %arg_st, ptr %t0 %t1 = load ptr, ptr %t0 %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 8 %t3 = load i32, ptr %t2 - call void @fn_emit_worker_guard(ptr @.str11988, i32 %t3) - %t4 = call ptr @fn_emit_bind(ptr @.str11989) + call void @fn_emit_worker_guard(ptr @.str12099, i32 %t3) + %t4 = call ptr @fn_emit_bind(ptr @.str12100) store ptr %t4, ptr %t5 %t6 = load ptr, ptr %t0 %t7 = getelementptr inbounds %Cmp_Node, ptr %t6, i32 0, i32 1 @@ -163732,8 +164346,8 @@ then2: %t30 = load ptr, ptr %t0 %t31 = getelementptr inbounds %Cmp_Node, ptr %t30, i32 0, i32 1 %t32 = load ptr, ptr %t31 - %t33 = call ptr @lp_str_concat(ptr @.str11990, ptr %t32) - %t34 = call ptr @lp_str_concat(ptr %t33, ptr @.str11991) + %t33 = call ptr @lp_str_concat(ptr @.str12101, ptr %t32) + %t34 = call ptr @lp_str_concat(ptr %t33, ptr @.str12102) %t35 = load ptr, ptr %t10 %t36 = call ptr @lp_str_concat(ptr %t34, ptr %t35) call void @fn_perr(ptr %t36) @@ -163747,193 +164361,195 @@ ifend4: then5: %t41 = call ptr @fn_itoa(i32 1024) store ptr %t41, ptr %t42 - %t43 = call ptr @fn_nreg() + %t43 = call ptr @fn_ecs_base(ptr @.str12103) store ptr %t43, ptr %t44 - call void @fn_emit(ptr @.str11992) - %t45 = load ptr, ptr %t44 - call void @fn_emit(ptr %t45) - call void @fn_emit(ptr @.str11993) - %t46 = load ptr, ptr %t42 - call void @fn_emit(ptr %t46) - call void @fn_emit(ptr @.str11994) - %t47 = load ptr, ptr %t5 + %t45 = call ptr @fn_nreg() + store ptr %t45, ptr %t46 + call void @fn_emit(ptr @.str12104) + %t47 = load ptr, ptr %t46 call void @fn_emit(ptr %t47) - call void @fn_emit(ptr @.str11995) - call void @fn_emit(ptr @.str11996) - %t48 = load i32, ptr %t13 - %t49 = call ptr @fn_itoa(i32 %t48) + call void @fn_emit(ptr @.str12105) + %t48 = load ptr, ptr %t44 + call void @fn_emit(ptr %t48) + call void @fn_emit(ptr @.str12106) + %t49 = load ptr, ptr %t5 call void @fn_emit(ptr %t49) - call void @fn_emit(ptr @.str11997) - %t50 = load ptr, ptr %t44 - call void @fn_emit(ptr %t50) - call void @fn_emit(ptr @.str11998) - %t51 = load ptr, ptr %t10 - %t52 = call ptr @fn_find_arch(ptr %t51) - store ptr %t52, ptr %t53 - store i32 0, ptr %t54 + call void @fn_emit(ptr @.str12107) + call void @fn_emit(ptr @.str12108) + %t50 = load i32, ptr %t13 + %t51 = call ptr @fn_itoa(i32 %t50) + call void @fn_emit(ptr %t51) + call void @fn_emit(ptr @.str12109) + %t52 = load ptr, ptr %t46 + call void @fn_emit(ptr %t52) + call void @fn_emit(ptr @.str12110) + %t53 = load ptr, ptr %t10 + %t54 = call ptr @fn_find_arch(ptr %t53) + store ptr %t54, ptr %t55 + store i32 0, ptr %t56 br label %wcond8 wcond8: - %t55 = load i32, ptr %t54 - %t56 = load ptr, ptr %t53 - %t57 = getelementptr inbounds %Cmp_Node, ptr %t56, i32 0, i32 7 - %t58 = load ptr, ptr %t57 - %t59 = getelementptr inbounds %LSlice, ptr %t58, i32 0, i32 1 - %t60 = load i32, ptr %t59 - %t61 = icmp slt i32 %t55, %t60 - %t62 = zext i1 %t61 to i32 - %t63 = icmp ne i32 %t62, 0 - br i1 %t63, label %wbody9, label %wend10 + %t57 = load i32, ptr %t56 + %t58 = load ptr, ptr %t55 + %t59 = getelementptr inbounds %Cmp_Node, ptr %t58, i32 0, i32 7 + %t60 = load ptr, ptr %t59 + %t61 = getelementptr inbounds %LSlice, ptr %t60, i32 0, i32 1 + %t62 = load i32, ptr %t61 + %t63 = icmp slt i32 %t57, %t62 + %t64 = zext i1 %t63 to i32 + %t65 = icmp ne i32 %t64, 0 + br i1 %t65, label %wbody9, label %wend10 wbody9: - %t64 = load ptr, ptr %t53 - %t65 = getelementptr inbounds %Cmp_Node, ptr %t64, i32 0, i32 7 - %t66 = load ptr, ptr %t65 - %t67 = load i32, ptr %t54 - %t68 = getelementptr inbounds %LSlice, ptr %t66, i32 0, i32 0 - %t69 = load ptr, ptr %t68 - %t70 = getelementptr inbounds %LSlice, ptr %t66, i32 0, i32 1 - %t71 = load i32, ptr %t70 - %t72 = icmp ult i32 %t67, %t71 - br i1 %t72, label %ixok11, label %ixbad12 + %t66 = load ptr, ptr %t55 + %t67 = getelementptr inbounds %Cmp_Node, ptr %t66, i32 0, i32 7 + %t68 = load ptr, ptr %t67 + %t69 = load i32, ptr %t56 + %t70 = getelementptr inbounds %LSlice, ptr %t68, i32 0, i32 0 + %t71 = load ptr, ptr %t70 + %t72 = getelementptr inbounds %LSlice, ptr %t68, i32 0, i32 1 + %t73 = load i32, ptr %t72 + %t74 = icmp ult i32 %t69, %t73 + br i1 %t74, label %ixok11, label %ixbad12 ixbad12: - %t73 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t73, ptr @.fmt_bounds, ptr @.str11999, i32 %t67, i32 %t71) + %t75 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t75, ptr @.fmt_bounds, ptr @.str12111, i32 %t69, i32 %t73) call void @exit(i32 1) unreachable ixok11: - %t74 = getelementptr inbounds ptr, ptr %t69, i32 %t67 - %t75 = load ptr, ptr %t74 - %t76 = getelementptr inbounds %Cmp_Node, ptr %t75, i32 0, i32 1 + %t76 = getelementptr inbounds ptr, ptr %t71, i32 %t69 %t77 = load ptr, ptr %t76 - store ptr %t77, ptr %t78 - %t79 = load ptr, ptr %t5 - %t80 = load ptr, ptr %t78 - %t81 = load ptr, ptr %t0 - %t82 = getelementptr inbounds %Cmp_Node, ptr %t81, i32 0, i32 1 - %t83 = load ptr, ptr %t82 - %t84 = load ptr, ptr %t78 - %t85 = call ptr @fn_prefab_record(ptr %t83, ptr %t84) - %t86 = load ptr, ptr %t0 - %t87 = load ptr, ptr %t78 - %t88 = call ptr @fn_spawn_record(ptr %t86, ptr %t87) - %t89 = call ptr @fn_merge_records(ptr %t85, ptr %t88) - call void @fn_emit_init_component(ptr %t79, ptr %t80, ptr %t89) - %t90 = load i32, ptr %t54 - %t91 = add i32 %t90, 1 - store i32 %t91, ptr %t54 + %t78 = getelementptr inbounds %Cmp_Node, ptr %t77, i32 0, i32 1 + %t79 = load ptr, ptr %t78 + store ptr %t79, ptr %t80 + %t81 = load ptr, ptr %t5 + %t82 = load ptr, ptr %t80 + %t83 = load ptr, ptr %t0 + %t84 = getelementptr inbounds %Cmp_Node, ptr %t83, i32 0, i32 1 + %t85 = load ptr, ptr %t84 + %t86 = load ptr, ptr %t80 + %t87 = call ptr @fn_prefab_record(ptr %t85, ptr %t86) + %t88 = load ptr, ptr %t0 + %t89 = load ptr, ptr %t80 + %t90 = call ptr @fn_spawn_record(ptr %t88, ptr %t89) + %t91 = call ptr @fn_merge_records(ptr %t87, ptr %t90) + call void @fn_emit_init_component(ptr %t81, ptr %t82, ptr %t91) + %t92 = load i32, ptr %t56 + %t93 = add i32 %t92, 1 + store i32 %t93, ptr %t56 br label %wcond8 wend10: - %t92 = load ptr, ptr %t10 - %t93 = call ptr @fn_onspawn_body(ptr %t92) - store ptr %t93, ptr %t94 - %t95 = load ptr, ptr %t94 - %t96 = icmp ne ptr %t95, null - %t97 = zext i1 %t96 to i32 - %t98 = icmp ne i32 %t97, 0 - br i1 %t98, label %then13, label %ifend15 + %t94 = load ptr, ptr %t10 + %t95 = call ptr @fn_onspawn_body(ptr %t94) + store ptr %t95, ptr %t96 + %t97 = load ptr, ptr %t96 + %t98 = icmp ne ptr %t97, null + %t99 = zext i1 %t98 to i32 + %t100 = icmp ne i32 %t99, 0 + br i1 %t100, label %then13, label %ifend15 then13: - %t99 = load i32, ptr @g_nloc - store i32 %t99, ptr %t100 - %t101 = load ptr, ptr %t53 - %t102 = load ptr, ptr %t5 - call void @fn_emit_bind_props(ptr %t101, ptr %t102) - %t103 = load ptr, ptr %t5 - %t104 = load ptr, ptr %t94 - call void @fn_emit_hook_with_self(ptr %t103, ptr %t104) - %t105 = load i32, ptr %t100 - store i32 %t105, ptr @g_nloc + %t101 = load i32, ptr @g_nloc + store i32 %t101, ptr %t102 + %t103 = load ptr, ptr %t55 + %t104 = load ptr, ptr %t5 + call void @fn_emit_bind_props(ptr %t103, ptr %t104) + %t105 = load ptr, ptr %t5 + %t106 = load ptr, ptr %t96 + call void @fn_emit_hook_with_self(ptr %t105, ptr %t106) + %t107 = load i32, ptr %t102 + store i32 %t107, ptr @g_nloc br label %ifend15 ifend15: - %t106 = load ptr, ptr %t10 - %t107 = call ptr @lp_str_concat(ptr @.str12000, ptr %t106) - %t108 = call ptr @lp_str_concat(ptr %t107, ptr @.str12001) - store ptr %t108, ptr %t109 - %t110 = load ptr, ptr %t109 - %t111 = call ptr @fn_find_event(ptr %t110) - %t112 = icmp ne ptr %t111, null - %t113 = zext i1 %t112 to i32 - %t114 = icmp ne i32 %t113, 0 - br i1 %t114, label %then16, label %ifend18 + %t108 = load ptr, ptr %t10 + %t109 = call ptr @lp_str_concat(ptr @.str12112, ptr %t108) + %t110 = call ptr @lp_str_concat(ptr %t109, ptr @.str12113) + store ptr %t110, ptr %t111 + %t112 = load ptr, ptr %t111 + %t113 = call ptr @fn_find_event(ptr %t112) + %t114 = icmp ne ptr %t113, null + %t115 = zext i1 %t114 to i32 + %t116 = icmp ne i32 %t115, 0 + br i1 %t116, label %then16, label %ifend18 then16: - call void @fn_emit(ptr @.str12002) - %t115 = load ptr, ptr %t109 - call void @fn_emit(ptr %t115) - call void @fn_emit(ptr @.str12003) - %t116 = load ptr, ptr %t5 - call void @fn_emit(ptr %t116) - call void @fn_emit(ptr @.str12004) + call void @fn_emit(ptr @.str12114) + %t117 = load ptr, ptr %t111 + call void @fn_emit(ptr %t117) + call void @fn_emit(ptr @.str12115) + %t118 = load ptr, ptr %t5 + call void @fn_emit(ptr %t118) + call void @fn_emit(ptr @.str12116) br label %ifend18 ifend18: br label %ifend7 else6: - store i32 0, ptr %t117 + store i32 0, ptr %t119 br label %wcond19 wcond19: - %t118 = load i32, ptr %t117 - %t119 = load ptr, ptr %t0 - %t120 = getelementptr inbounds %Cmp_Node, ptr %t119, i32 0, i32 7 - %t121 = load ptr, ptr %t120 - %t122 = getelementptr inbounds %LSlice, ptr %t121, i32 0, i32 1 - %t123 = load i32, ptr %t122 - %t124 = icmp slt i32 %t118, %t123 - %t125 = zext i1 %t124 to i32 - %t126 = icmp ne i32 %t125, 0 - br i1 %t126, label %wbody20, label %wend21 + %t120 = load i32, ptr %t119 + %t121 = load ptr, ptr %t0 + %t122 = getelementptr inbounds %Cmp_Node, ptr %t121, i32 0, i32 7 + %t123 = load ptr, ptr %t122 + %t124 = getelementptr inbounds %LSlice, ptr %t123, i32 0, i32 1 + %t125 = load i32, ptr %t124 + %t126 = icmp slt i32 %t120, %t125 + %t127 = zext i1 %t126 to i32 + %t128 = icmp ne i32 %t127, 0 + br i1 %t128, label %wbody20, label %wend21 wbody20: - %t127 = load ptr, ptr %t5 - %t128 = load ptr, ptr %t0 - %t129 = getelementptr inbounds %Cmp_Node, ptr %t128, i32 0, i32 7 - %t130 = load ptr, ptr %t129 - %t131 = load i32, ptr %t117 - %t132 = getelementptr inbounds %LSlice, ptr %t130, i32 0, i32 0 - %t133 = load ptr, ptr %t132 - %t134 = getelementptr inbounds %LSlice, ptr %t130, i32 0, i32 1 - %t135 = load i32, ptr %t134 - %t136 = icmp ult i32 %t131, %t135 - br i1 %t136, label %ixok22, label %ixbad23 + %t129 = load ptr, ptr %t5 + %t130 = load ptr, ptr %t0 + %t131 = getelementptr inbounds %Cmp_Node, ptr %t130, i32 0, i32 7 + %t132 = load ptr, ptr %t131 + %t133 = load i32, ptr %t119 + %t134 = getelementptr inbounds %LSlice, ptr %t132, i32 0, i32 0 + %t135 = load ptr, ptr %t134 + %t136 = getelementptr inbounds %LSlice, ptr %t132, i32 0, i32 1 + %t137 = load i32, ptr %t136 + %t138 = icmp ult i32 %t133, %t137 + br i1 %t138, label %ixok22, label %ixbad23 ixbad23: - %t137 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t137, ptr @.fmt_bounds, ptr @.str12005, i32 %t131, i32 %t135) + %t139 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t139, ptr @.fmt_bounds, ptr @.str12117, i32 %t133, i32 %t137) call void @exit(i32 1) unreachable ixok22: - %t138 = getelementptr inbounds ptr, ptr %t133, i32 %t131 - %t139 = load ptr, ptr %t138 - %t140 = getelementptr inbounds %Cmp_Node, ptr %t139, i32 0, i32 1 + %t140 = getelementptr inbounds ptr, ptr %t135, i32 %t133 %t141 = load ptr, ptr %t140 - %t142 = load ptr, ptr %t0 - %t143 = getelementptr inbounds %Cmp_Node, ptr %t142, i32 0, i32 7 - %t144 = load ptr, ptr %t143 - %t145 = load i32, ptr %t117 - %t146 = getelementptr inbounds %LSlice, ptr %t144, i32 0, i32 0 - %t147 = load ptr, ptr %t146 - %t148 = getelementptr inbounds %LSlice, ptr %t144, i32 0, i32 1 - %t149 = load i32, ptr %t148 - %t150 = icmp ult i32 %t145, %t149 - br i1 %t150, label %ixok24, label %ixbad25 + %t142 = getelementptr inbounds %Cmp_Node, ptr %t141, i32 0, i32 1 + %t143 = load ptr, ptr %t142 + %t144 = load ptr, ptr %t0 + %t145 = getelementptr inbounds %Cmp_Node, ptr %t144, i32 0, i32 7 + %t146 = load ptr, ptr %t145 + %t147 = load i32, ptr %t119 + %t148 = getelementptr inbounds %LSlice, ptr %t146, i32 0, i32 0 + %t149 = load ptr, ptr %t148 + %t150 = getelementptr inbounds %LSlice, ptr %t146, i32 0, i32 1 + %t151 = load i32, ptr %t150 + %t152 = icmp ult i32 %t147, %t151 + br i1 %t152, label %ixok24, label %ixbad25 ixbad25: - %t151 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t151, ptr @.fmt_bounds, ptr @.str12006, i32 %t145, i32 %t149) + %t153 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t153, ptr @.fmt_bounds, ptr @.str12118, i32 %t147, i32 %t151) call void @exit(i32 1) unreachable ixok24: - %t152 = getelementptr inbounds ptr, ptr %t147, i32 %t145 - %t153 = load ptr, ptr %t152 - %t154 = getelementptr inbounds %Cmp_Node, ptr %t153, i32 0, i32 4 + %t154 = getelementptr inbounds ptr, ptr %t149, i32 %t147 %t155 = load ptr, ptr %t154 - call void @fn_emit_init_component(ptr %t127, ptr %t141, ptr %t155) - %t156 = load i32, ptr %t117 - %t157 = add i32 %t156, 1 - store i32 %t157, ptr %t117 + %t156 = getelementptr inbounds %Cmp_Node, ptr %t155, i32 0, i32 4 + %t157 = load ptr, ptr %t156 + call void @fn_emit_init_component(ptr %t129, ptr %t143, ptr %t157) + %t158 = load i32, ptr %t119 + %t159 = add i32 %t158, 1 + store i32 %t159, ptr %t119 br label %wcond19 wend21: br label %ifend7 ifend7: - %t158 = load ptr, ptr %t5 - store ptr %t158, ptr %retval + %t160 = load ptr, ptr %t5 + store ptr %t160, ptr %retval br label %ret ret: - %t159 = load ptr, ptr %retval - ret ptr %t159 + %t161 = load ptr, ptr %retval + ret ptr %t161 } define void @fn_emit_despawn(ptr %arg_st) { @@ -163942,18 +164558,19 @@ entry: %t8 = alloca ptr %t16 = alloca ptr %t18 = alloca ptr - %t27 = alloca ptr - %t28 = alloca i32 - %t48 = alloca ptr - %t57 = alloca ptr + %t20 = alloca ptr + %t29 = alloca ptr + %t30 = alloca i32 + %t50 = alloca ptr %t59 = alloca ptr %t61 = alloca ptr - %t73 = alloca ptr + %t63 = alloca ptr + %t75 = alloca ptr store ptr %arg_st, ptr %t0 %t1 = load ptr, ptr %t0 %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 8 %t3 = load i32, ptr %t2 - call void @fn_emit_worker_guard(ptr @.str12007, i32 %t3) + call void @fn_emit_worker_guard(ptr @.str12119, i32 %t3) %t4 = load ptr, ptr %t0 %t5 = getelementptr inbounds %Cmp_Node, ptr %t4, i32 0, i32 4 %t6 = load ptr, ptr %t5 @@ -163969,147 +164586,149 @@ entry: then0: %t15 = call ptr @fn_itoa(i32 1024) store ptr %t15, ptr %t16 - %t17 = call ptr @fn_nreg() + %t17 = call ptr @fn_ecs_base(ptr @.str12120) store ptr %t17, ptr %t18 - call void @fn_emit(ptr @.str12008) - %t19 = load ptr, ptr %t18 - call void @fn_emit(ptr %t19) - call void @fn_emit(ptr @.str12009) - %t20 = load ptr, ptr %t16 - call void @fn_emit(ptr %t20) - call void @fn_emit(ptr @.str12010) - %t21 = load ptr, ptr %t8 - %t22 = getelementptr inbounds %Cmp_Val, ptr %t21, i32 0, i32 0 - %t23 = load ptr, ptr %t22 - call void @fn_emit(ptr %t23) - call void @fn_emit(ptr @.str12011) - %t24 = load ptr, ptr %t18 - %t25 = call ptr @lp_str_concat(ptr @.str12012, ptr %t24) - %t26 = call ptr @fn_emit_bind(ptr %t25) - store ptr %t26, ptr %t27 - store i32 0, ptr %t28 + %t19 = call ptr @fn_nreg() + store ptr %t19, ptr %t20 + call void @fn_emit(ptr @.str12121) + %t21 = load ptr, ptr %t20 + call void @fn_emit(ptr %t21) + call void @fn_emit(ptr @.str12122) + %t22 = load ptr, ptr %t18 + call void @fn_emit(ptr %t22) + call void @fn_emit(ptr @.str12123) + %t23 = load ptr, ptr %t8 + %t24 = getelementptr inbounds %Cmp_Val, ptr %t23, i32 0, i32 0 + %t25 = load ptr, ptr %t24 + call void @fn_emit(ptr %t25) + call void @fn_emit(ptr @.str12124) + %t26 = load ptr, ptr %t20 + %t27 = call ptr @lp_str_concat(ptr @.str12125, ptr %t26) + %t28 = call ptr @fn_emit_bind(ptr %t27) + store ptr %t28, ptr %t29 + store i32 0, ptr %t30 br label %wcond3 wcond3: - %t29 = load i32, ptr %t28 - %t30 = load ptr, ptr @g_g_ondespawn - %t31 = getelementptr inbounds %LSlice, ptr %t30, i32 0, i32 1 - %t32 = load i32, ptr %t31 - %t33 = icmp slt i32 %t29, %t32 - %t34 = zext i1 %t33 to i32 - %t35 = icmp ne i32 %t34, 0 - br i1 %t35, label %wbody4, label %wend5 + %t31 = load i32, ptr %t30 + %t32 = load ptr, ptr @g_g_ondespawn + %t33 = getelementptr inbounds %LSlice, ptr %t32, i32 0, i32 1 + %t34 = load i32, ptr %t33 + %t35 = icmp slt i32 %t31, %t34 + %t36 = zext i1 %t35 to i32 + %t37 = icmp ne i32 %t36, 0 + br i1 %t37, label %wbody4, label %wend5 wbody4: - %t36 = load ptr, ptr @g_g_ondespawn - %t37 = load i32, ptr %t28 - %t38 = getelementptr inbounds %LSlice, ptr %t36, i32 0, i32 0 - %t39 = load ptr, ptr %t38 - %t40 = getelementptr inbounds %LSlice, ptr %t36, i32 0, i32 1 - %t41 = load i32, ptr %t40 - %t42 = icmp ult i32 %t37, %t41 - br i1 %t42, label %ixok6, label %ixbad7 + %t38 = load ptr, ptr @g_g_ondespawn + %t39 = load i32, ptr %t30 + %t40 = getelementptr inbounds %LSlice, ptr %t38, i32 0, i32 0 + %t41 = load ptr, ptr %t40 + %t42 = getelementptr inbounds %LSlice, ptr %t38, i32 0, i32 1 + %t43 = load i32, ptr %t42 + %t44 = icmp ult i32 %t39, %t43 + br i1 %t44, label %ixok6, label %ixbad7 ixbad7: - %t43 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str12013, i32 %t37, i32 %t41) + %t45 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t45, ptr @.fmt_bounds, ptr @.str12126, i32 %t39, i32 %t43) call void @exit(i32 1) unreachable ixok6: - %t44 = getelementptr inbounds ptr, ptr %t39, i32 %t37 - %t45 = load ptr, ptr %t44 - %t46 = getelementptr inbounds %Cmp_Node, ptr %t45, i32 0, i32 1 + %t46 = getelementptr inbounds ptr, ptr %t41, i32 %t39 %t47 = load ptr, ptr %t46 - store ptr %t47, ptr %t48 - %t49 = load ptr, ptr %t27 - %t50 = call ptr @lp_str_concat(ptr @.str12014, ptr %t49) - %t51 = call ptr @lp_str_concat(ptr %t50, ptr @.str12015) - %t52 = load ptr, ptr %t48 - %t53 = call i32 @fn_find_arch_id(ptr %t52) - %t54 = call ptr @fn_itoa(i32 %t53) - %t55 = call ptr @lp_str_concat(ptr %t51, ptr %t54) - %t56 = call ptr @fn_emit_bind(ptr %t55) - store ptr %t56, ptr %t57 - %t58 = call ptr @fn_lbl(ptr @.str12016) + %t48 = getelementptr inbounds %Cmp_Node, ptr %t47, i32 0, i32 1 + %t49 = load ptr, ptr %t48 + store ptr %t49, ptr %t50 + %t51 = load ptr, ptr %t29 + %t52 = call ptr @lp_str_concat(ptr @.str12127, ptr %t51) + %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str12128) + %t54 = load ptr, ptr %t50 + %t55 = call i32 @fn_find_arch_id(ptr %t54) + %t56 = call ptr @fn_itoa(i32 %t55) + %t57 = call ptr @lp_str_concat(ptr %t53, ptr %t56) + %t58 = call ptr @fn_emit_bind(ptr %t57) store ptr %t58, ptr %t59 - %t60 = call ptr @fn_lbl(ptr @.str12017) + %t60 = call ptr @fn_lbl(ptr @.str12129) store ptr %t60, ptr %t61 - call void @fn_emit(ptr @.str12018) - %t62 = load ptr, ptr %t57 - call void @fn_emit(ptr %t62) - call void @fn_emit(ptr @.str12019) - %t63 = load ptr, ptr %t59 - call void @fn_emit(ptr %t63) - call void @fn_emit(ptr @.str12020) - %t64 = load ptr, ptr %t61 + %t62 = call ptr @fn_lbl(ptr @.str12130) + store ptr %t62, ptr %t63 + call void @fn_emit(ptr @.str12131) + %t64 = load ptr, ptr %t59 call void @fn_emit(ptr %t64) - call void @fn_emit(ptr @.str12021) - %t65 = load ptr, ptr %t59 + call void @fn_emit(ptr @.str12132) + %t65 = load ptr, ptr %t61 call void @fn_emit(ptr %t65) - call void @fn_emit(ptr @.str12022) - %t66 = load ptr, ptr %t48 + call void @fn_emit(ptr @.str12133) + %t66 = load ptr, ptr %t63 call void @fn_emit(ptr %t66) - call void @fn_emit(ptr @.str12023) - %t67 = load ptr, ptr %t8 - %t68 = getelementptr inbounds %Cmp_Val, ptr %t67, i32 0, i32 0 - %t69 = load ptr, ptr %t68 - call void @fn_emit(ptr %t69) - call void @fn_emit(ptr @.str12024) - %t70 = load ptr, ptr %t48 - %t71 = call ptr @lp_str_concat(ptr @.str12025, ptr %t70) - %t72 = call ptr @lp_str_concat(ptr %t71, ptr @.str12026) - store ptr %t72, ptr %t73 - %t74 = load ptr, ptr %t73 - %t75 = call ptr @fn_find_event(ptr %t74) - %t76 = icmp ne ptr %t75, null - %t77 = zext i1 %t76 to i32 - %t78 = icmp ne i32 %t77, 0 - br i1 %t78, label %then8, label %ifend10 + call void @fn_emit(ptr @.str12134) + %t67 = load ptr, ptr %t61 + call void @fn_emit(ptr %t67) + call void @fn_emit(ptr @.str12135) + %t68 = load ptr, ptr %t50 + call void @fn_emit(ptr %t68) + call void @fn_emit(ptr @.str12136) + %t69 = load ptr, ptr %t8 + %t70 = getelementptr inbounds %Cmp_Val, ptr %t69, i32 0, i32 0 + %t71 = load ptr, ptr %t70 + call void @fn_emit(ptr %t71) + call void @fn_emit(ptr @.str12137) + %t72 = load ptr, ptr %t50 + %t73 = call ptr @lp_str_concat(ptr @.str12138, ptr %t72) + %t74 = call ptr @lp_str_concat(ptr %t73, ptr @.str12139) + store ptr %t74, ptr %t75 + %t76 = load ptr, ptr %t75 + %t77 = call ptr @fn_find_event(ptr %t76) + %t78 = icmp ne ptr %t77, null + %t79 = zext i1 %t78 to i32 + %t80 = icmp ne i32 %t79, 0 + br i1 %t80, label %then8, label %ifend10 then8: - call void @fn_emit(ptr @.str12027) - %t79 = load ptr, ptr %t73 - call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str12028) - %t80 = load ptr, ptr %t8 - %t81 = getelementptr inbounds %Cmp_Val, ptr %t80, i32 0, i32 0 - %t82 = load ptr, ptr %t81 - call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str12029) + call void @fn_emit(ptr @.str12140) + %t81 = load ptr, ptr %t75 + call void @fn_emit(ptr %t81) + call void @fn_emit(ptr @.str12141) + %t82 = load ptr, ptr %t8 + %t83 = getelementptr inbounds %Cmp_Val, ptr %t82, i32 0, i32 0 + %t84 = load ptr, ptr %t83 + call void @fn_emit(ptr %t84) + call void @fn_emit(ptr @.str12142) br label %ifend10 ifend10: - call void @fn_emit(ptr @.str12030) - %t83 = load ptr, ptr %t61 - call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str12031) - %t84 = load ptr, ptr %t61 - call void @fn_emit(ptr %t84) - call void @fn_emit(ptr @.str12032) - %t85 = load i32, ptr %t28 - %t86 = add i32 %t85, 1 - store i32 %t86, ptr %t28 + call void @fn_emit(ptr @.str12143) + %t85 = load ptr, ptr %t63 + call void @fn_emit(ptr %t85) + call void @fn_emit(ptr @.str12144) + %t86 = load ptr, ptr %t63 + call void @fn_emit(ptr %t86) + call void @fn_emit(ptr @.str12145) + %t87 = load i32, ptr %t30 + %t88 = add i32 %t87, 1 + store i32 %t88, ptr %t30 br label %wcond3 wend5: br label %ifend2 ifend2: - %t87 = load ptr, ptr @g_g_events - %t88 = getelementptr inbounds %LSlice, ptr %t87, i32 0, i32 1 - %t89 = load i32, ptr %t88 - %t90 = icmp sgt i32 %t89, 0 - %t91 = zext i1 %t90 to i32 - %t92 = icmp ne i32 %t91, 0 - br i1 %t92, label %then11, label %ifend13 + %t89 = load ptr, ptr @g_g_events + %t90 = getelementptr inbounds %LSlice, ptr %t89, i32 0, i32 1 + %t91 = load i32, ptr %t90 + %t92 = icmp sgt i32 %t91, 0 + %t93 = zext i1 %t92 to i32 + %t94 = icmp ne i32 %t93, 0 + br i1 %t94, label %then11, label %ifend13 then11: - call void @fn_emit(ptr @.str12033) - %t93 = load ptr, ptr %t8 - %t94 = getelementptr inbounds %Cmp_Val, ptr %t93, i32 0, i32 0 - %t95 = load ptr, ptr %t94 - call void @fn_emit(ptr %t95) - call void @fn_emit(ptr @.str12034) + call void @fn_emit(ptr @.str12146) + %t95 = load ptr, ptr %t8 + %t96 = getelementptr inbounds %Cmp_Val, ptr %t95, i32 0, i32 0 + %t97 = load ptr, ptr %t96 + call void @fn_emit(ptr %t97) + call void @fn_emit(ptr @.str12147) br label %ifend13 ifend13: - call void @fn_emit(ptr @.str12035) - %t96 = load ptr, ptr %t8 - %t97 = getelementptr inbounds %Cmp_Val, ptr %t96, i32 0, i32 0 - %t98 = load ptr, ptr %t97 - call void @fn_emit(ptr %t98) - call void @fn_emit(ptr @.str12036) + call void @fn_emit(ptr @.str12148) + %t98 = load ptr, ptr %t8 + %t99 = getelementptr inbounds %Cmp_Val, ptr %t98, i32 0, i32 0 + %t100 = load ptr, ptr %t99 + call void @fn_emit(ptr %t100) + call void @fn_emit(ptr @.str12149) br label %ret ret: ret void @@ -164120,11 +164739,12 @@ entry: %t0 = alloca ptr %t5 = alloca ptr %t7 = alloca ptr - %t9 = alloca ptr - %t21 = alloca ptr - %t26 = alloca ptr - %t28 = alloca ptr - %t30 = alloca ptr + %t13 = alloca ptr + %t15 = alloca ptr + %t24 = alloca ptr + %t29 = alloca ptr + %t31 = alloca ptr + %t33 = alloca ptr store ptr %arg_st, ptr %t0 %t1 = load ptr, ptr %t0 %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 4 @@ -164133,77 +164753,78 @@ entry: store ptr %t4, ptr %t5 %t6 = call ptr @fn_itoa(i32 1024) store ptr %t6, ptr %t7 - %t8 = call ptr @fn_nreg() - store ptr %t8, ptr %t9 - call void @fn_emit(ptr @.str12037) + %t8 = load ptr, ptr %t0 + %t9 = getelementptr inbounds %Cmp_Node, ptr %t8, i32 0, i32 1 %t10 = load ptr, ptr %t9 - call void @fn_emit(ptr %t10) - call void @fn_emit(ptr @.str12038) - %t11 = load ptr, ptr %t7 - call void @fn_emit(ptr %t11) - call void @fn_emit(ptr @.str12039) - %t12 = load ptr, ptr %t0 - %t13 = getelementptr inbounds %Cmp_Node, ptr %t12, i32 0, i32 1 - %t14 = load ptr, ptr %t13 - call void @fn_emit(ptr %t14) - call void @fn_emit(ptr @.str12040) - %t15 = load ptr, ptr %t5 - %t16 = getelementptr inbounds %Cmp_Val, ptr %t15, i32 0, i32 0 - %t17 = load ptr, ptr %t16 + %t11 = call ptr @lp_str_concat(ptr @.str12150, ptr %t10) + %t12 = call ptr @fn_ecs_base(ptr %t11) + store ptr %t12, ptr %t13 + %t14 = call ptr @fn_nreg() + store ptr %t14, ptr %t15 + call void @fn_emit(ptr @.str12151) + %t16 = load ptr, ptr %t15 + call void @fn_emit(ptr %t16) + call void @fn_emit(ptr @.str12152) + %t17 = load ptr, ptr %t13 call void @fn_emit(ptr %t17) - call void @fn_emit(ptr @.str12041) - %t18 = load ptr, ptr %t9 - %t19 = call ptr @lp_str_concat(ptr @.str12042, ptr %t18) - %t20 = call ptr @fn_emit_bind(ptr %t19) - store ptr %t20, ptr %t21 - %t22 = load ptr, ptr %t21 - %t23 = call ptr @lp_str_concat(ptr @.str12043, ptr %t22) - %t24 = call ptr @lp_str_concat(ptr %t23, ptr @.str12044) - %t25 = call ptr @fn_emit_bind(ptr %t24) - store ptr %t25, ptr %t26 - %t27 = call ptr @fn_lbl(ptr @.str12045) - store ptr %t27, ptr %t28 - %t29 = call ptr @fn_lbl(ptr @.str12046) - store ptr %t29, ptr %t30 - call void @fn_emit(ptr @.str12047) - %t31 = load ptr, ptr %t26 - call void @fn_emit(ptr %t31) - call void @fn_emit(ptr @.str12048) - %t32 = load ptr, ptr %t28 - call void @fn_emit(ptr %t32) - call void @fn_emit(ptr @.str12049) - %t33 = load ptr, ptr %t30 - call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str12050) - %t34 = load ptr, ptr %t28 + call void @fn_emit(ptr @.str12153) + %t18 = load ptr, ptr %t5 + %t19 = getelementptr inbounds %Cmp_Val, ptr %t18, i32 0, i32 0 + %t20 = load ptr, ptr %t19 + call void @fn_emit(ptr %t20) + call void @fn_emit(ptr @.str12154) + %t21 = load ptr, ptr %t15 + %t22 = call ptr @lp_str_concat(ptr @.str12155, ptr %t21) + %t23 = call ptr @fn_emit_bind(ptr %t22) + store ptr %t23, ptr %t24 + %t25 = load ptr, ptr %t24 + %t26 = call ptr @lp_str_concat(ptr @.str12156, ptr %t25) + %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str12157) + %t28 = call ptr @fn_emit_bind(ptr %t27) + store ptr %t28, ptr %t29 + %t30 = call ptr @fn_lbl(ptr @.str12158) + store ptr %t30, ptr %t31 + %t32 = call ptr @fn_lbl(ptr @.str12159) + store ptr %t32, ptr %t33 + call void @fn_emit(ptr @.str12160) + %t34 = load ptr, ptr %t29 call void @fn_emit(ptr %t34) - call void @fn_emit(ptr @.str12051) + call void @fn_emit(ptr @.str12161) + %t35 = load ptr, ptr %t31 + call void @fn_emit(ptr %t35) + call void @fn_emit(ptr @.str12162) + %t36 = load ptr, ptr %t33 + call void @fn_emit(ptr %t36) + call void @fn_emit(ptr @.str12163) + %t37 = load ptr, ptr %t31 + call void @fn_emit(ptr %t37) + call void @fn_emit(ptr @.str12164) store i32 0, ptr @g_g_term - %t35 = load ptr, ptr %t5 - %t36 = getelementptr inbounds %Cmp_Val, ptr %t35, i32 0, i32 0 - %t37 = load ptr, ptr %t36 - %t38 = load ptr, ptr %t0 - %t39 = getelementptr inbounds %Cmp_Node, ptr %t38, i32 0, i32 1 + %t38 = load ptr, ptr %t5 + %t39 = getelementptr inbounds %Cmp_Val, ptr %t38, i32 0, i32 0 %t40 = load ptr, ptr %t39 %t41 = load ptr, ptr %t0 - %t42 = getelementptr inbounds %Cmp_Node, ptr %t41, i32 0, i32 5 + %t42 = getelementptr inbounds %Cmp_Node, ptr %t41, i32 0, i32 1 %t43 = load ptr, ptr %t42 - call void @fn_emit_init_component(ptr %t37, ptr %t40, ptr %t43) - %t44 = load i32, ptr @g_g_term - %t45 = icmp eq i32 %t44, 0 - %t46 = zext i1 %t45 to i32 - %t47 = icmp ne i32 %t46, 0 - br i1 %t47, label %then0, label %ifend2 + %t44 = load ptr, ptr %t0 + %t45 = getelementptr inbounds %Cmp_Node, ptr %t44, i32 0, i32 5 + %t46 = load ptr, ptr %t45 + call void @fn_emit_init_component(ptr %t40, ptr %t43, ptr %t46) + %t47 = load i32, ptr @g_g_term + %t48 = icmp eq i32 %t47, 0 + %t49 = zext i1 %t48 to i32 + %t50 = icmp ne i32 %t49, 0 + br i1 %t50, label %then0, label %ifend2 then0: - call void @fn_emit(ptr @.str12052) - %t48 = load ptr, ptr %t30 - call void @fn_emit(ptr %t48) - call void @fn_emit(ptr @.str12053) + call void @fn_emit(ptr @.str12165) + %t51 = load ptr, ptr %t33 + call void @fn_emit(ptr %t51) + call void @fn_emit(ptr @.str12166) br label %ifend2 ifend2: - %t49 = load ptr, ptr %t30 - call void @fn_emit(ptr %t49) - call void @fn_emit(ptr @.str12054) + %t52 = load ptr, ptr %t33 + call void @fn_emit(ptr %t52) + call void @fn_emit(ptr @.str12167) store i32 0, ptr @g_g_term br label %ret ret: @@ -164215,16 +164836,18 @@ entry: %t0 = alloca ptr %t5 = alloca ptr %t7 = alloca ptr - %t9 = alloca ptr - %t21 = alloca ptr - %t26 = alloca ptr - %t28 = alloca ptr - %t30 = alloca ptr - %t40 = alloca ptr - %t46 = alloca i32 - %t48 = alloca ptr - %t61 = alloca ptr - %t78 = alloca ptr + %t13 = alloca ptr + %t15 = alloca ptr + %t24 = alloca ptr + %t29 = alloca ptr + %t31 = alloca ptr + %t33 = alloca ptr + %t43 = alloca ptr + %t49 = alloca i32 + %t55 = alloca ptr + %t57 = alloca ptr + %t67 = alloca ptr + %t84 = alloca ptr store ptr %arg_st, ptr %t0 %t1 = load ptr, ptr %t0 %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 4 @@ -164233,155 +164856,157 @@ entry: store ptr %t4, ptr %t5 %t6 = call ptr @fn_itoa(i32 1024) store ptr %t6, ptr %t7 - %t8 = call ptr @fn_nreg() - store ptr %t8, ptr %t9 - call void @fn_emit(ptr @.str12055) + %t8 = load ptr, ptr %t0 + %t9 = getelementptr inbounds %Cmp_Node, ptr %t8, i32 0, i32 1 %t10 = load ptr, ptr %t9 - call void @fn_emit(ptr %t10) - call void @fn_emit(ptr @.str12056) - %t11 = load ptr, ptr %t7 - call void @fn_emit(ptr %t11) - call void @fn_emit(ptr @.str12057) - %t12 = load ptr, ptr %t0 - %t13 = getelementptr inbounds %Cmp_Node, ptr %t12, i32 0, i32 1 - %t14 = load ptr, ptr %t13 - call void @fn_emit(ptr %t14) - call void @fn_emit(ptr @.str12058) - %t15 = load ptr, ptr %t5 - %t16 = getelementptr inbounds %Cmp_Val, ptr %t15, i32 0, i32 0 - %t17 = load ptr, ptr %t16 + %t11 = call ptr @lp_str_concat(ptr @.str12168, ptr %t10) + %t12 = call ptr @fn_ecs_base(ptr %t11) + store ptr %t12, ptr %t13 + %t14 = call ptr @fn_nreg() + store ptr %t14, ptr %t15 + call void @fn_emit(ptr @.str12169) + %t16 = load ptr, ptr %t15 + call void @fn_emit(ptr %t16) + call void @fn_emit(ptr @.str12170) + %t17 = load ptr, ptr %t13 call void @fn_emit(ptr %t17) - call void @fn_emit(ptr @.str12059) - %t18 = load ptr, ptr %t9 - %t19 = call ptr @lp_str_concat(ptr @.str12060, ptr %t18) - %t20 = call ptr @fn_emit_bind(ptr %t19) - store ptr %t20, ptr %t21 - %t22 = load ptr, ptr %t21 - %t23 = call ptr @lp_str_concat(ptr @.str12061, ptr %t22) - %t24 = call ptr @lp_str_concat(ptr %t23, ptr @.str12062) - %t25 = call ptr @fn_emit_bind(ptr %t24) - store ptr %t25, ptr %t26 - %t27 = call ptr @fn_lbl(ptr @.str12063) - store ptr %t27, ptr %t28 - %t29 = call ptr @fn_lbl(ptr @.str12064) - store ptr %t29, ptr %t30 - call void @fn_emit(ptr @.str12065) - %t31 = load ptr, ptr %t26 - call void @fn_emit(ptr %t31) - call void @fn_emit(ptr @.str12066) - %t32 = load ptr, ptr %t28 - call void @fn_emit(ptr %t32) - call void @fn_emit(ptr @.str12067) - %t33 = load ptr, ptr %t30 - call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str12068) - %t34 = load ptr, ptr %t28 + call void @fn_emit(ptr @.str12171) + %t18 = load ptr, ptr %t5 + %t19 = getelementptr inbounds %Cmp_Val, ptr %t18, i32 0, i32 0 + %t20 = load ptr, ptr %t19 + call void @fn_emit(ptr %t20) + call void @fn_emit(ptr @.str12172) + %t21 = load ptr, ptr %t15 + %t22 = call ptr @lp_str_concat(ptr @.str12173, ptr %t21) + %t23 = call ptr @fn_emit_bind(ptr %t22) + store ptr %t23, ptr %t24 + %t25 = load ptr, ptr %t24 + %t26 = call ptr @lp_str_concat(ptr @.str12174, ptr %t25) + %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str12175) + %t28 = call ptr @fn_emit_bind(ptr %t27) + store ptr %t28, ptr %t29 + %t30 = call ptr @fn_lbl(ptr @.str12176) + store ptr %t30, ptr %t31 + %t32 = call ptr @fn_lbl(ptr @.str12177) + store ptr %t32, ptr %t33 + call void @fn_emit(ptr @.str12178) + %t34 = load ptr, ptr %t29 call void @fn_emit(ptr %t34) - call void @fn_emit(ptr @.str12069) - store i32 0, ptr @g_g_term - call void @fn_emit(ptr @.str12070) - %t35 = load ptr, ptr %t9 + call void @fn_emit(ptr @.str12179) + %t35 = load ptr, ptr %t31 call void @fn_emit(ptr %t35) - call void @fn_emit(ptr @.str12071) - %t36 = load ptr, ptr %t0 - %t37 = getelementptr inbounds %Cmp_Node, ptr %t36, i32 0, i32 1 - %t38 = load ptr, ptr %t37 - %t39 = call ptr @fn_ondetach_body(ptr %t38) - store ptr %t39, ptr %t40 + call void @fn_emit(ptr @.str12180) + %t36 = load ptr, ptr %t33 + call void @fn_emit(ptr %t36) + call void @fn_emit(ptr @.str12181) + %t37 = load ptr, ptr %t31 + call void @fn_emit(ptr %t37) + call void @fn_emit(ptr @.str12182) + store i32 0, ptr @g_g_term + call void @fn_emit(ptr @.str12183) + %t38 = load ptr, ptr %t15 + call void @fn_emit(ptr %t38) + call void @fn_emit(ptr @.str12184) + %t39 = load ptr, ptr %t0 + %t40 = getelementptr inbounds %Cmp_Node, ptr %t39, i32 0, i32 1 %t41 = load ptr, ptr %t40 - %t42 = icmp ne ptr %t41, null - %t43 = zext i1 %t42 to i32 - %t44 = icmp ne i32 %t43, 0 - br i1 %t44, label %then0, label %ifend2 + %t42 = call ptr @fn_ondetach_body(ptr %t41) + store ptr %t42, ptr %t43 + %t44 = load ptr, ptr %t43 + %t45 = icmp ne ptr %t44, null + %t46 = zext i1 %t45 to i32 + %t47 = icmp ne i32 %t46, 0 + br i1 %t47, label %then0, label %ifend2 then0: - %t45 = load i32, ptr @g_nloc - store i32 %t45, ptr %t46 - %t47 = call ptr @fn_nreg() - store ptr %t47, ptr %t48 - call void @fn_emit(ptr @.str12072) - %t49 = load ptr, ptr %t48 - call void @fn_emit(ptr %t49) - call void @fn_emit(ptr @.str12073) - %t50 = load ptr, ptr %t7 - call void @fn_emit(ptr %t50) - call void @fn_emit(ptr @.str12074) - %t51 = load ptr, ptr %t0 - %t52 = getelementptr inbounds %Cmp_Node, ptr %t51, i32 0, i32 1 - %t53 = load ptr, ptr %t52 - call void @fn_emit(ptr %t53) - call void @fn_emit(ptr @.str12075) - %t54 = load ptr, ptr %t0 - %t55 = getelementptr inbounds %Cmp_Node, ptr %t54, i32 0, i32 1 - %t56 = load ptr, ptr %t55 - call void @fn_emit(ptr %t56) - call void @fn_emit(ptr @.str12076) - %t57 = load ptr, ptr %t5 - %t58 = getelementptr inbounds %Cmp_Val, ptr %t57, i32 0, i32 0 - %t59 = load ptr, ptr %t58 - call void @fn_emit(ptr %t59) - call void @fn_emit(ptr @.str12077) - %t60 = call ptr @fn_emit_alloca(ptr @.str12078) - store ptr %t60, ptr %t61 - call void @fn_emit(ptr @.str12079) - %t62 = load ptr, ptr %t48 + %t48 = load i32, ptr @g_nloc + store i32 %t48, ptr %t49 + %t50 = load ptr, ptr %t0 + %t51 = getelementptr inbounds %Cmp_Node, ptr %t50, i32 0, i32 1 + %t52 = load ptr, ptr %t51 + %t53 = call ptr @lp_str_concat(ptr @.str12185, ptr %t52) + %t54 = call ptr @fn_ecs_base(ptr %t53) + store ptr %t54, ptr %t55 + %t56 = call ptr @fn_nreg() + store ptr %t56, ptr %t57 + call void @fn_emit(ptr @.str12186) + %t58 = load ptr, ptr %t57 + call void @fn_emit(ptr %t58) + call void @fn_emit(ptr @.str12187) + %t59 = load ptr, ptr %t0 + %t60 = getelementptr inbounds %Cmp_Node, ptr %t59, i32 0, i32 1 + %t61 = load ptr, ptr %t60 + call void @fn_emit(ptr %t61) + call void @fn_emit(ptr @.str12188) + %t62 = load ptr, ptr %t55 call void @fn_emit(ptr %t62) - call void @fn_emit(ptr @.str12080) - %t63 = load ptr, ptr %t61 - call void @fn_emit(ptr %t63) - call void @fn_emit(ptr @.str12081) - %t64 = load ptr, ptr %t0 - %t65 = getelementptr inbounds %Cmp_Node, ptr %t64, i32 0, i32 1 - %t66 = load ptr, ptr %t65 - %t67 = load ptr, ptr %t61 - %t68 = load ptr, ptr %t0 - %t69 = getelementptr inbounds %Cmp_Node, ptr %t68, i32 0, i32 1 - %t70 = load ptr, ptr %t69 - call void @fn_loc_push(ptr %t66, ptr %t67, ptr %t70) - %t71 = load ptr, ptr %t40 - call void @fn_emit_block(ptr %t71) - %t72 = load i32, ptr %t46 - store i32 %t72, ptr @g_nloc + call void @fn_emit(ptr @.str12189) + %t63 = load ptr, ptr %t5 + %t64 = getelementptr inbounds %Cmp_Val, ptr %t63, i32 0, i32 0 + %t65 = load ptr, ptr %t64 + call void @fn_emit(ptr %t65) + call void @fn_emit(ptr @.str12190) + %t66 = call ptr @fn_emit_alloca(ptr @.str12191) + store ptr %t66, ptr %t67 + call void @fn_emit(ptr @.str12192) + %t68 = load ptr, ptr %t57 + call void @fn_emit(ptr %t68) + call void @fn_emit(ptr @.str12193) + %t69 = load ptr, ptr %t67 + call void @fn_emit(ptr %t69) + call void @fn_emit(ptr @.str12194) + %t70 = load ptr, ptr %t0 + %t71 = getelementptr inbounds %Cmp_Node, ptr %t70, i32 0, i32 1 + %t72 = load ptr, ptr %t71 + %t73 = load ptr, ptr %t67 + %t74 = load ptr, ptr %t0 + %t75 = getelementptr inbounds %Cmp_Node, ptr %t74, i32 0, i32 1 + %t76 = load ptr, ptr %t75 + call void @fn_loc_push(ptr %t72, ptr %t73, ptr %t76) + %t77 = load ptr, ptr %t43 + call void @fn_emit_block(ptr %t77) + %t78 = load i32, ptr %t49 + store i32 %t78, ptr @g_nloc br label %ifend2 ifend2: - %t73 = load ptr, ptr %t0 - %t74 = getelementptr inbounds %Cmp_Node, ptr %t73, i32 0, i32 1 - %t75 = load ptr, ptr %t74 - %t76 = call ptr @lp_str_concat(ptr @.str12082, ptr %t75) - %t77 = call ptr @lp_str_concat(ptr %t76, ptr @.str12083) - store ptr %t77, ptr %t78 - %t79 = load ptr, ptr %t78 - %t80 = call ptr @fn_find_event(ptr %t79) - %t81 = icmp ne ptr %t80, null - %t82 = zext i1 %t81 to i32 - %t83 = icmp ne i32 %t82, 0 - br i1 %t83, label %then3, label %ifend5 + %t79 = load ptr, ptr %t0 + %t80 = getelementptr inbounds %Cmp_Node, ptr %t79, i32 0, i32 1 + %t81 = load ptr, ptr %t80 + %t82 = call ptr @lp_str_concat(ptr @.str12195, ptr %t81) + %t83 = call ptr @lp_str_concat(ptr %t82, ptr @.str12196) + store ptr %t83, ptr %t84 + %t85 = load ptr, ptr %t84 + %t86 = call ptr @fn_find_event(ptr %t85) + %t87 = icmp ne ptr %t86, null + %t88 = zext i1 %t87 to i32 + %t89 = icmp ne i32 %t88, 0 + br i1 %t89, label %then3, label %ifend5 then3: - call void @fn_emit(ptr @.str12084) - %t84 = load ptr, ptr %t78 - call void @fn_emit(ptr %t84) - call void @fn_emit(ptr @.str12085) - %t85 = load ptr, ptr %t5 - %t86 = getelementptr inbounds %Cmp_Val, ptr %t85, i32 0, i32 0 - %t87 = load ptr, ptr %t86 - call void @fn_emit(ptr %t87) - call void @fn_emit(ptr @.str12086) + call void @fn_emit(ptr @.str12197) + %t90 = load ptr, ptr %t84 + call void @fn_emit(ptr %t90) + call void @fn_emit(ptr @.str12198) + %t91 = load ptr, ptr %t5 + %t92 = getelementptr inbounds %Cmp_Val, ptr %t91, i32 0, i32 0 + %t93 = load ptr, ptr %t92 + call void @fn_emit(ptr %t93) + call void @fn_emit(ptr @.str12199) br label %ifend5 ifend5: - %t88 = load i32, ptr @g_g_term - %t89 = icmp eq i32 %t88, 0 - %t90 = zext i1 %t89 to i32 - %t91 = icmp ne i32 %t90, 0 - br i1 %t91, label %then6, label %ifend8 + %t94 = load i32, ptr @g_g_term + %t95 = icmp eq i32 %t94, 0 + %t96 = zext i1 %t95 to i32 + %t97 = icmp ne i32 %t96, 0 + br i1 %t97, label %then6, label %ifend8 then6: - call void @fn_emit(ptr @.str12087) - %t92 = load ptr, ptr %t30 - call void @fn_emit(ptr %t92) - call void @fn_emit(ptr @.str12088) + call void @fn_emit(ptr @.str12200) + %t98 = load ptr, ptr %t33 + call void @fn_emit(ptr %t98) + call void @fn_emit(ptr @.str12201) br label %ifend8 ifend8: - %t93 = load ptr, ptr %t30 - call void @fn_emit(ptr %t93) - call void @fn_emit(ptr @.str12089) + %t99 = load ptr, ptr %t33 + call void @fn_emit(ptr %t99) + call void @fn_emit(ptr @.str12202) store i32 0, ptr @g_g_term br label %ret ret: @@ -164418,7 +165043,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12090, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12203, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -164474,19 +165099,21 @@ entry: %t49 = alloca ptr %t77 = alloca ptr %t79 = alloca ptr - %t81 = alloca ptr - %t92 = alloca ptr - %t112 = alloca i32 - %t114 = alloca ptr - %t127 = alloca ptr - %t144 = alloca ptr - %t165 = alloca ptr - %t174 = alloca ptr - %t175 = alloca i32 - %t176 = alloca i32 - %t203 = alloca ptr + %t85 = alloca ptr + %t87 = alloca ptr + %t95 = alloca ptr + %t115 = alloca i32 + %t121 = alloca ptr + %t123 = alloca ptr + %t133 = alloca ptr + %t150 = alloca ptr + %t171 = alloca ptr + %t180 = alloca ptr + %t181 = alloca i32 + %t182 = alloca i32 + %t209 = alloca ptr store ptr %arg_st, ptr %t0 - store ptr @.str12091, ptr %t1 + store ptr @.str12204, ptr %t1 %t2 = load ptr, ptr %t0 %t3 = getelementptr inbounds %Cmp_Node, ptr %t2, i32 0, i32 2 %t4 = load i32, ptr %t3 @@ -164495,7 +165122,7 @@ entry: %t7 = icmp ne i32 %t6, 0 br i1 %t7, label %then0, label %ifend2 then0: - store ptr @.str12092, ptr %t1 + store ptr @.str12205, ptr %t1 br label %ifend2 ifend2: %t9 = load ptr, ptr %t0 @@ -164511,7 +165138,7 @@ sc3: %t16 = load ptr, ptr %t0 %t17 = getelementptr inbounds %Cmp_Node, ptr %t16, i32 0, i32 3 %t18 = load ptr, ptr %t17 - %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str12093) + %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str12206) %t20 = icmp ne i32 %t19, 0 %t21 = zext i1 %t20 to i32 store i32 %t21, ptr %t8 @@ -164536,7 +165163,7 @@ sc8: %t32 = load ptr, ptr %t0 %t33 = getelementptr inbounds %Cmp_Node, ptr %t32, i32 0, i32 3 %t34 = load ptr, ptr %t33 - %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str12094) + %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str12207) %t36 = icmp ne i32 %t35, 0 %t37 = zext i1 %t36 to i32 store i32 %t37, ptr %t24 @@ -164546,20 +165173,20 @@ scend9: %t39 = icmp ne i32 %t38, 0 br i1 %t39, label %then10, label %ifend12 then10: - call void @fn_emit(ptr @.str12095) + call void @fn_emit(ptr @.str12208) %t40 = load ptr, ptr %t1 call void @fn_emit(ptr %t40) - call void @fn_emit(ptr @.str12096) + call void @fn_emit(ptr @.str12209) %t41 = load ptr, ptr %t0 %t42 = getelementptr inbounds %Cmp_Node, ptr %t41, i32 0, i32 1 %t43 = load ptr, ptr %t42 call void @fn_emit(ptr %t43) - call void @fn_emit(ptr @.str12097) + call void @fn_emit(ptr @.str12210) %t44 = load ptr, ptr %t0 %t45 = getelementptr inbounds %Cmp_Node, ptr %t44, i32 0, i32 1 %t46 = load ptr, ptr %t45 - %t47 = call ptr @lp_str_concat(ptr @.str12098, ptr %t46) - %t48 = call ptr @lp_str_concat(ptr %t47, ptr @.str12099) + %t47 = call ptr @lp_str_concat(ptr @.str12211, ptr %t46) + %t48 = call ptr @lp_str_concat(ptr %t47, ptr @.str12212) store ptr %t48, ptr %t49 %t50 = load ptr, ptr %t0 %t51 = getelementptr inbounds %Cmp_Node, ptr %t50, i32 0, i32 2 @@ -164572,8 +165199,8 @@ then13: %t56 = load ptr, ptr %t0 %t57 = getelementptr inbounds %Cmp_Node, ptr %t56, i32 0, i32 1 %t58 = load ptr, ptr %t57 - %t59 = call ptr @lp_str_concat(ptr @.str12100, ptr %t58) - %t60 = call ptr @lp_str_concat(ptr %t59, ptr @.str12101) + %t59 = call ptr @lp_str_concat(ptr @.str12213, ptr %t58) + %t60 = call ptr @lp_str_concat(ptr %t59, ptr @.str12214) store ptr %t60, ptr %t49 br label %ifend15 ifend15: @@ -164584,10 +165211,10 @@ ifend15: %t65 = icmp ne i32 %t64, 0 br i1 %t65, label %then16, label %ifend18 then16: - call void @fn_emit(ptr @.str12102) + call void @fn_emit(ptr @.str12215) %t66 = load ptr, ptr %t49 call void @fn_emit(ptr %t66) - call void @fn_emit(ptr @.str12103) + call void @fn_emit(ptr @.str12216) br label %ifend18 ifend18: br label %ret @@ -164607,230 +165234,232 @@ then19: store ptr %t76, ptr %t77 %t78 = call ptr @fn_itoa(i32 1024) store ptr %t78, ptr %t79 - %t80 = call ptr @fn_nreg() - store ptr %t80, ptr %t81 - call void @fn_emit(ptr @.str12104) + %t80 = load ptr, ptr %t0 + %t81 = getelementptr inbounds %Cmp_Node, ptr %t80, i32 0, i32 1 %t82 = load ptr, ptr %t81 - call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str12105) - %t83 = load ptr, ptr %t79 - call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str12106) - %t84 = load ptr, ptr %t0 - %t85 = getelementptr inbounds %Cmp_Node, ptr %t84, i32 0, i32 1 - %t86 = load ptr, ptr %t85 - call void @fn_emit(ptr %t86) - call void @fn_emit(ptr @.str12107) - %t87 = load ptr, ptr %t77 - %t88 = getelementptr inbounds %Cmp_Val, ptr %t87, i32 0, i32 0 - %t89 = load ptr, ptr %t88 + %t83 = call ptr @lp_str_concat(ptr @.str12217, ptr %t82) + %t84 = call ptr @fn_ecs_base(ptr %t83) + store ptr %t84, ptr %t85 + %t86 = call ptr @fn_nreg() + store ptr %t86, ptr %t87 + call void @fn_emit(ptr @.str12218) + %t88 = load ptr, ptr %t87 + call void @fn_emit(ptr %t88) + call void @fn_emit(ptr @.str12219) + %t89 = load ptr, ptr %t85 call void @fn_emit(ptr %t89) - call void @fn_emit(ptr @.str12108) - call void @fn_emit(ptr @.str12109) - %t90 = load ptr, ptr %t1 - call void @fn_emit(ptr %t90) - call void @fn_emit(ptr @.str12110) - %t91 = load ptr, ptr %t81 - call void @fn_emit(ptr %t91) - call void @fn_emit(ptr @.str12111) - store ptr null, ptr %t92 - %t93 = load ptr, ptr %t0 - %t94 = getelementptr inbounds %Cmp_Node, ptr %t93, i32 0, i32 2 - %t95 = load i32, ptr %t94 - %t96 = icmp eq i32 %t95, 1 - %t97 = zext i1 %t96 to i32 - %t98 = icmp ne i32 %t97, 0 - br i1 %t98, label %then22, label %else23 + call void @fn_emit(ptr @.str12220) + %t90 = load ptr, ptr %t77 + %t91 = getelementptr inbounds %Cmp_Val, ptr %t90, i32 0, i32 0 + %t92 = load ptr, ptr %t91 + call void @fn_emit(ptr %t92) + call void @fn_emit(ptr @.str12221) + call void @fn_emit(ptr @.str12222) + %t93 = load ptr, ptr %t1 + call void @fn_emit(ptr %t93) + call void @fn_emit(ptr @.str12223) + %t94 = load ptr, ptr %t87 + call void @fn_emit(ptr %t94) + call void @fn_emit(ptr @.str12224) + store ptr null, ptr %t95 + %t96 = load ptr, ptr %t0 + %t97 = getelementptr inbounds %Cmp_Node, ptr %t96, i32 0, i32 2 + %t98 = load i32, ptr %t97 + %t99 = icmp eq i32 %t98, 1 + %t100 = zext i1 %t99 to i32 + %t101 = icmp ne i32 %t100, 0 + br i1 %t101, label %then22, label %else23 then22: - %t99 = load ptr, ptr %t0 - %t100 = getelementptr inbounds %Cmp_Node, ptr %t99, i32 0, i32 1 - %t101 = load ptr, ptr %t100 - %t102 = call ptr @fn_onenable_body(ptr %t101) - store ptr %t102, ptr %t92 + %t102 = load ptr, ptr %t0 + %t103 = getelementptr inbounds %Cmp_Node, ptr %t102, i32 0, i32 1 + %t104 = load ptr, ptr %t103 + %t105 = call ptr @fn_onenable_body(ptr %t104) + store ptr %t105, ptr %t95 br label %ifend24 else23: - %t103 = load ptr, ptr %t0 - %t104 = getelementptr inbounds %Cmp_Node, ptr %t103, i32 0, i32 1 - %t105 = load ptr, ptr %t104 - %t106 = call ptr @fn_ondisable_body(ptr %t105) - store ptr %t106, ptr %t92 + %t106 = load ptr, ptr %t0 + %t107 = getelementptr inbounds %Cmp_Node, ptr %t106, i32 0, i32 1 + %t108 = load ptr, ptr %t107 + %t109 = call ptr @fn_ondisable_body(ptr %t108) + store ptr %t109, ptr %t95 br label %ifend24 ifend24: - %t107 = load ptr, ptr %t92 - %t108 = icmp ne ptr %t107, null - %t109 = zext i1 %t108 to i32 - %t110 = icmp ne i32 %t109, 0 - br i1 %t110, label %then25, label %ifend27 + %t110 = load ptr, ptr %t95 + %t111 = icmp ne ptr %t110, null + %t112 = zext i1 %t111 to i32 + %t113 = icmp ne i32 %t112, 0 + br i1 %t113, label %then25, label %ifend27 then25: - %t111 = load i32, ptr @g_nloc - store i32 %t111, ptr %t112 - %t113 = call ptr @fn_nreg() - store ptr %t113, ptr %t114 - call void @fn_emit(ptr @.str12112) - %t115 = load ptr, ptr %t114 - call void @fn_emit(ptr %t115) - call void @fn_emit(ptr @.str12113) - %t116 = load ptr, ptr %t79 - call void @fn_emit(ptr %t116) - call void @fn_emit(ptr @.str12114) - %t117 = load ptr, ptr %t0 - %t118 = getelementptr inbounds %Cmp_Node, ptr %t117, i32 0, i32 1 - %t119 = load ptr, ptr %t118 - call void @fn_emit(ptr %t119) - call void @fn_emit(ptr @.str12115) - %t120 = load ptr, ptr %t0 - %t121 = getelementptr inbounds %Cmp_Node, ptr %t120, i32 0, i32 1 - %t122 = load ptr, ptr %t121 - call void @fn_emit(ptr %t122) - call void @fn_emit(ptr @.str12116) - %t123 = load ptr, ptr %t77 - %t124 = getelementptr inbounds %Cmp_Val, ptr %t123, i32 0, i32 0 - %t125 = load ptr, ptr %t124 - call void @fn_emit(ptr %t125) - call void @fn_emit(ptr @.str12117) - %t126 = call ptr @fn_emit_alloca(ptr @.str12118) - store ptr %t126, ptr %t127 - call void @fn_emit(ptr @.str12119) - %t128 = load ptr, ptr %t114 + %t114 = load i32, ptr @g_nloc + store i32 %t114, ptr %t115 + %t116 = load ptr, ptr %t0 + %t117 = getelementptr inbounds %Cmp_Node, ptr %t116, i32 0, i32 1 + %t118 = load ptr, ptr %t117 + %t119 = call ptr @lp_str_concat(ptr @.str12225, ptr %t118) + %t120 = call ptr @fn_ecs_base(ptr %t119) + store ptr %t120, ptr %t121 + %t122 = call ptr @fn_nreg() + store ptr %t122, ptr %t123 + call void @fn_emit(ptr @.str12226) + %t124 = load ptr, ptr %t123 + call void @fn_emit(ptr %t124) + call void @fn_emit(ptr @.str12227) + %t125 = load ptr, ptr %t0 + %t126 = getelementptr inbounds %Cmp_Node, ptr %t125, i32 0, i32 1 + %t127 = load ptr, ptr %t126 + call void @fn_emit(ptr %t127) + call void @fn_emit(ptr @.str12228) + %t128 = load ptr, ptr %t121 call void @fn_emit(ptr %t128) - call void @fn_emit(ptr @.str12120) - %t129 = load ptr, ptr %t127 - call void @fn_emit(ptr %t129) - call void @fn_emit(ptr @.str12121) - %t130 = load ptr, ptr %t0 - %t131 = getelementptr inbounds %Cmp_Node, ptr %t130, i32 0, i32 1 - %t132 = load ptr, ptr %t131 - %t133 = load ptr, ptr %t127 - %t134 = load ptr, ptr %t0 - %t135 = getelementptr inbounds %Cmp_Node, ptr %t134, i32 0, i32 1 - %t136 = load ptr, ptr %t135 - call void @fn_loc_push(ptr %t132, ptr %t133, ptr %t136) - %t137 = load ptr, ptr %t92 - call void @fn_emit_block(ptr %t137) - %t138 = load i32, ptr %t112 - store i32 %t138, ptr @g_nloc + call void @fn_emit(ptr @.str12229) + %t129 = load ptr, ptr %t77 + %t130 = getelementptr inbounds %Cmp_Val, ptr %t129, i32 0, i32 0 + %t131 = load ptr, ptr %t130 + call void @fn_emit(ptr %t131) + call void @fn_emit(ptr @.str12230) + %t132 = call ptr @fn_emit_alloca(ptr @.str12231) + store ptr %t132, ptr %t133 + call void @fn_emit(ptr @.str12232) + %t134 = load ptr, ptr %t123 + call void @fn_emit(ptr %t134) + call void @fn_emit(ptr @.str12233) + %t135 = load ptr, ptr %t133 + call void @fn_emit(ptr %t135) + call void @fn_emit(ptr @.str12234) + %t136 = load ptr, ptr %t0 + %t137 = getelementptr inbounds %Cmp_Node, ptr %t136, i32 0, i32 1 + %t138 = load ptr, ptr %t137 + %t139 = load ptr, ptr %t133 + %t140 = load ptr, ptr %t0 + %t141 = getelementptr inbounds %Cmp_Node, ptr %t140, i32 0, i32 1 + %t142 = load ptr, ptr %t141 + call void @fn_loc_push(ptr %t138, ptr %t139, ptr %t142) + %t143 = load ptr, ptr %t95 + call void @fn_emit_block(ptr %t143) + %t144 = load i32, ptr %t115 + store i32 %t144, ptr @g_nloc br label %ifend27 ifend27: - %t139 = load ptr, ptr %t0 - %t140 = getelementptr inbounds %Cmp_Node, ptr %t139, i32 0, i32 1 - %t141 = load ptr, ptr %t140 - %t142 = call ptr @lp_str_concat(ptr @.str12122, ptr %t141) - %t143 = call ptr @lp_str_concat(ptr %t142, ptr @.str12123) - store ptr %t143, ptr %t144 %t145 = load ptr, ptr %t0 - %t146 = getelementptr inbounds %Cmp_Node, ptr %t145, i32 0, i32 2 - %t147 = load i32, ptr %t146 - %t148 = icmp eq i32 %t147, 1 - %t149 = zext i1 %t148 to i32 - %t150 = icmp ne i32 %t149, 0 - br i1 %t150, label %then28, label %ifend30 -then28: + %t146 = getelementptr inbounds %Cmp_Node, ptr %t145, i32 0, i32 1 + %t147 = load ptr, ptr %t146 + %t148 = call ptr @lp_str_concat(ptr @.str12235, ptr %t147) + %t149 = call ptr @lp_str_concat(ptr %t148, ptr @.str12236) + store ptr %t149, ptr %t150 %t151 = load ptr, ptr %t0 - %t152 = getelementptr inbounds %Cmp_Node, ptr %t151, i32 0, i32 1 - %t153 = load ptr, ptr %t152 - %t154 = call ptr @lp_str_concat(ptr @.str12124, ptr %t153) - %t155 = call ptr @lp_str_concat(ptr %t154, ptr @.str12125) - store ptr %t155, ptr %t144 + %t152 = getelementptr inbounds %Cmp_Node, ptr %t151, i32 0, i32 2 + %t153 = load i32, ptr %t152 + %t154 = icmp eq i32 %t153, 1 + %t155 = zext i1 %t154 to i32 + %t156 = icmp ne i32 %t155, 0 + br i1 %t156, label %then28, label %ifend30 +then28: + %t157 = load ptr, ptr %t0 + %t158 = getelementptr inbounds %Cmp_Node, ptr %t157, i32 0, i32 1 + %t159 = load ptr, ptr %t158 + %t160 = call ptr @lp_str_concat(ptr @.str12237, ptr %t159) + %t161 = call ptr @lp_str_concat(ptr %t160, ptr @.str12238) + store ptr %t161, ptr %t150 br label %ifend30 ifend30: - %t156 = load ptr, ptr %t144 - %t157 = call ptr @fn_find_event(ptr %t156) - %t158 = icmp ne ptr %t157, null - %t159 = zext i1 %t158 to i32 - %t160 = icmp ne i32 %t159, 0 - br i1 %t160, label %then31, label %ifend33 + %t162 = load ptr, ptr %t150 + %t163 = call ptr @fn_find_event(ptr %t162) + %t164 = icmp ne ptr %t163, null + %t165 = zext i1 %t164 to i32 + %t166 = icmp ne i32 %t165, 0 + br i1 %t166, label %then31, label %ifend33 then31: - call void @fn_emit(ptr @.str12126) - %t161 = load ptr, ptr %t144 - call void @fn_emit(ptr %t161) - call void @fn_emit(ptr @.str12127) - %t162 = load ptr, ptr %t77 - %t163 = getelementptr inbounds %Cmp_Val, ptr %t162, i32 0, i32 0 - %t164 = load ptr, ptr %t163 - call void @fn_emit(ptr %t164) - call void @fn_emit(ptr @.str12128) + call void @fn_emit(ptr @.str12239) + %t167 = load ptr, ptr %t150 + call void @fn_emit(ptr %t167) + call void @fn_emit(ptr @.str12240) + %t168 = load ptr, ptr %t77 + %t169 = getelementptr inbounds %Cmp_Val, ptr %t168, i32 0, i32 0 + %t170 = load ptr, ptr %t169 + call void @fn_emit(ptr %t170) + call void @fn_emit(ptr @.str12241) br label %ifend33 ifend33: br label %ifend21 else20: - store ptr @.str12129, ptr %t165 - %t166 = load ptr, ptr %t0 - %t167 = getelementptr inbounds %Cmp_Node, ptr %t166, i32 0, i32 1 - %t168 = load ptr, ptr %t167 - %t169 = call i32 @fn_is_model(ptr %t168) - %t170 = icmp ne i32 %t169, 0 - br i1 %t170, label %then34, label %ifend36 + store ptr @.str12242, ptr %t171 + %t172 = load ptr, ptr %t0 + %t173 = getelementptr inbounds %Cmp_Node, ptr %t172, i32 0, i32 1 + %t174 = load ptr, ptr %t173 + %t175 = call i32 @fn_is_model(ptr %t174) + %t176 = icmp ne i32 %t175, 0 + br i1 %t176, label %then34, label %ifend36 then34: - store ptr @.str12130, ptr %t165 + store ptr @.str12243, ptr %t171 br label %ifend36 ifend36: - %t171 = load ptr, ptr %t0 - %t172 = getelementptr inbounds %Cmp_Node, ptr %t171, i32 0, i32 1 - %t173 = load ptr, ptr %t172 - store ptr %t173, ptr %t174 - %t177 = load ptr, ptr %t165 - %t178 = call i32 @lp_str_eq(ptr %t177, ptr @.str12131) - %t179 = icmp ne i32 %t178, 0 - %t180 = zext i1 %t179 to i32 - store i32 %t180, ptr %t176 - br i1 %t179, label %sc37, label %scend38 -sc37: - %t181 = load ptr, ptr %t174 - %t182 = call ptr @fn_find_sys(ptr %t181) - %t183 = icmp eq ptr %t182, null - %t184 = zext i1 %t183 to i32 + %t177 = load ptr, ptr %t0 + %t178 = getelementptr inbounds %Cmp_Node, ptr %t177, i32 0, i32 1 + %t179 = load ptr, ptr %t178 + store ptr %t179, ptr %t180 + %t183 = load ptr, ptr %t171 + %t184 = call i32 @lp_str_eq(ptr %t183, ptr @.str12244) %t185 = icmp ne i32 %t184, 0 %t186 = zext i1 %t185 to i32 - store i32 %t186, ptr %t176 + store i32 %t186, ptr %t182 + br i1 %t185, label %sc37, label %scend38 +sc37: + %t187 = load ptr, ptr %t180 + %t188 = call ptr @fn_find_sys(ptr %t187) + %t189 = icmp eq ptr %t188, null + %t190 = zext i1 %t189 to i32 + %t191 = icmp ne i32 %t190, 0 + %t192 = zext i1 %t191 to i32 + store i32 %t192, ptr %t182 br label %scend38 scend38: - %t187 = load i32, ptr %t176 - %t188 = icmp ne i32 %t187, 0 - %t189 = zext i1 %t188 to i32 - store i32 %t189, ptr %t175 - br i1 %t188, label %sc39, label %scend40 + %t193 = load i32, ptr %t182 + %t194 = icmp ne i32 %t193, 0 + %t195 = zext i1 %t194 to i32 + store i32 %t195, ptr %t181 + br i1 %t194, label %sc39, label %scend40 sc39: - %t190 = load ptr, ptr @g_g_cur_scene - %t191 = icmp ne ptr %t190, null - %t192 = zext i1 %t191 to i32 - %t193 = icmp ne i32 %t192, 0 - %t194 = zext i1 %t193 to i32 - store i32 %t194, ptr %t175 + %t196 = load ptr, ptr @g_g_cur_scene + %t197 = icmp ne ptr %t196, null + %t198 = zext i1 %t197 to i32 + %t199 = icmp ne i32 %t198, 0 + %t200 = zext i1 %t199 to i32 + store i32 %t200, ptr %t181 br label %scend40 scend40: - %t195 = load i32, ptr %t175 - %t196 = icmp ne i32 %t195, 0 - br i1 %t196, label %then41, label %ifend43 + %t201 = load i32, ptr %t181 + %t202 = icmp ne i32 %t201, 0 + br i1 %t202, label %then41, label %ifend43 then41: - %t197 = load ptr, ptr @g_g_cur_scene - %t198 = getelementptr inbounds %Cmp_Node, ptr %t197, i32 0, i32 1 - %t199 = load ptr, ptr %t198 - %t200 = call ptr @lp_str_concat(ptr %t199, ptr @.str12132) - %t201 = load ptr, ptr %t174 - %t202 = call ptr @lp_str_concat(ptr %t200, ptr %t201) - store ptr %t202, ptr %t203 - %t204 = load ptr, ptr %t203 - %t205 = call ptr @fn_find_sys(ptr %t204) - %t206 = icmp ne ptr %t205, null - %t207 = zext i1 %t206 to i32 - %t208 = icmp ne i32 %t207, 0 - br i1 %t208, label %then44, label %ifend46 + %t203 = load ptr, ptr @g_g_cur_scene + %t204 = getelementptr inbounds %Cmp_Node, ptr %t203, i32 0, i32 1 + %t205 = load ptr, ptr %t204 + %t206 = call ptr @lp_str_concat(ptr %t205, ptr @.str12245) + %t207 = load ptr, ptr %t180 + %t208 = call ptr @lp_str_concat(ptr %t206, ptr %t207) + store ptr %t208, ptr %t209 + %t210 = load ptr, ptr %t209 + %t211 = call ptr @fn_find_sys(ptr %t210) + %t212 = icmp ne ptr %t211, null + %t213 = zext i1 %t212 to i32 + %t214 = icmp ne i32 %t213, 0 + br i1 %t214, label %then44, label %ifend46 then44: - %t209 = load ptr, ptr %t203 - store ptr %t209, ptr %t174 + %t215 = load ptr, ptr %t209 + store ptr %t215, ptr %t180 br label %ifend46 ifend46: br label %ifend43 ifend43: - call void @fn_emit(ptr @.str12133) - %t210 = load ptr, ptr %t1 - call void @fn_emit(ptr %t210) - call void @fn_emit(ptr @.str12134) - %t211 = load ptr, ptr %t165 - call void @fn_emit(ptr %t211) - %t212 = load ptr, ptr %t174 - call void @fn_emit(ptr %t212) - call void @fn_emit(ptr @.str12135) + call void @fn_emit(ptr @.str12246) + %t216 = load ptr, ptr %t1 + call void @fn_emit(ptr %t216) + call void @fn_emit(ptr @.str12247) + %t217 = load ptr, ptr %t171 + call void @fn_emit(ptr %t217) + %t218 = load ptr, ptr %t180 + call void @fn_emit(ptr %t218) + call void @fn_emit(ptr @.str12248) br label %ifend21 ifend21: br label %ret @@ -164858,7 +165487,7 @@ entry: call void @fn_loc_reset() store i32 0, ptr @g_nloop store i32 0, ptr @g_nself - store ptr @.str12136, ptr @g_ret_ty + store ptr @.str12249, ptr @g_ret_ty %t7 = call ptr @fn_buf_new() store ptr %t7, ptr %t8 %t9 = call ptr @fn_buf_new() @@ -164877,26 +165506,26 @@ entry: %t19 = icmp ne i32 %t18, 0 br i1 %t19, label %then0, label %ifend2 then0: - call void @fn_emit(ptr @.str12137) + call void @fn_emit(ptr @.str12250) br label %ifend2 ifend2: - call void @fn_emit(ptr @.str12138) + call void @fn_emit(ptr @.str12251) %t20 = load ptr, ptr %t11 store ptr %t20, ptr @g_code - call void @fn_emit(ptr @.str12139) + call void @fn_emit(ptr @.str12252) %t21 = load ptr, ptr %t0 %t22 = getelementptr inbounds %Cmp_Node, ptr %t21, i32 0, i32 1 %t23 = load ptr, ptr %t22 call void @fn_emit(ptr %t23) - call void @fn_emit(ptr @.str12140) + call void @fn_emit(ptr @.str12253) %t24 = load ptr, ptr @g_falloc %t25 = call ptr @fn_buf_str(ptr %t24) call void @fn_emit(ptr %t25) %t26 = load ptr, ptr %t8 %t27 = call ptr @fn_buf_str(ptr %t26) call void @fn_emit(ptr %t27) - call void @fn_emit(ptr @.str12141) - store ptr @.str12142, ptr @g_g_det_ctx + call void @fn_emit(ptr @.str12254) + store ptr @.str12255, ptr @g_g_det_ctx br label %ret ret: ret void @@ -164918,12 +165547,12 @@ entry: %t1 = load ptr, ptr %t0 %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 1 %t3 = load ptr, ptr %t2 - %t4 = call ptr @lp_str_concat(ptr @.str12143, ptr %t3) + %t4 = call ptr @lp_str_concat(ptr @.str12256, ptr %t3) %t5 = call ptr @fn_emit_bind(ptr %t4) store ptr %t5, ptr %t6 %t7 = load ptr, ptr %t6 - %t8 = call ptr @lp_str_concat(ptr @.str12144, ptr %t7) - %t9 = call ptr @lp_str_concat(ptr %t8, ptr @.str12145) + %t8 = call ptr @lp_str_concat(ptr @.str12257, ptr %t7) + %t9 = call ptr @lp_str_concat(ptr %t8, ptr @.str12258) %t10 = call ptr @fn_emit_bind(ptr %t9) store ptr %t10, ptr %t11 %t13 = load ptr, ptr %t0 @@ -164956,17 +165585,17 @@ then2: %t32 = load ptr, ptr %t31 %t33 = getelementptr inbounds %Cmp_Node, ptr %t32, i32 0, i32 1 %t34 = load ptr, ptr %t33 - %t35 = call ptr @lp_str_concat(ptr @.str12146, ptr %t34) + %t35 = call ptr @lp_str_concat(ptr @.str12259, ptr %t34) %t36 = call ptr @fn_emit_bind(ptr %t35) store ptr %t36, ptr %t37 %t38 = load ptr, ptr %t37 - %t39 = call ptr @lp_str_concat(ptr @.str12147, ptr %t38) - %t40 = call ptr @lp_str_concat(ptr %t39, ptr @.str12148) + %t39 = call ptr @lp_str_concat(ptr @.str12260, ptr %t38) + %t40 = call ptr @lp_str_concat(ptr %t39, ptr @.str12261) %t41 = call ptr @fn_emit_bind(ptr %t40) store ptr %t41, ptr %t42 %t43 = load ptr, ptr %t11 - %t44 = call ptr @lp_str_concat(ptr @.str12149, ptr %t43) - %t45 = call ptr @lp_str_concat(ptr %t44, ptr @.str12150) + %t44 = call ptr @lp_str_concat(ptr @.str12262, ptr %t43) + %t45 = call ptr @lp_str_concat(ptr %t44, ptr @.str12263) %t46 = load ptr, ptr %t42 %t47 = call ptr @lp_str_concat(ptr %t45, ptr %t46) %t48 = call ptr @fn_emit_bind(ptr %t47) @@ -164981,51 +165610,51 @@ ifend4: %t54 = icmp ne i32 %t53, 0 br i1 %t54, label %then5, label %ifend7 then5: - %t55 = call ptr @fn_emit_bind(ptr @.str12151) + %t55 = call ptr @fn_emit_bind(ptr @.str12264) store ptr %t55, ptr %t56 %t57 = load ptr, ptr %t56 - %t58 = call ptr @lp_str_concat(ptr @.str12152, ptr %t57) - %t59 = call ptr @lp_str_concat(ptr %t58, ptr @.str12153) + %t58 = call ptr @lp_str_concat(ptr @.str12265, ptr %t57) + %t59 = call ptr @lp_str_concat(ptr %t58, ptr @.str12266) %t60 = call ptr @fn_emit_bind(ptr %t59) store ptr %t60, ptr %t61 %t62 = load ptr, ptr %t11 - %t63 = call ptr @lp_str_concat(ptr @.str12154, ptr %t62) - %t64 = call ptr @lp_str_concat(ptr %t63, ptr @.str12155) + %t63 = call ptr @lp_str_concat(ptr @.str12267, ptr %t62) + %t64 = call ptr @lp_str_concat(ptr %t63, ptr @.str12268) %t65 = load ptr, ptr %t61 %t66 = call ptr @lp_str_concat(ptr %t64, ptr %t65) %t67 = call ptr @fn_emit_bind(ptr %t66) store ptr %t67, ptr %t11 br label %ifend7 ifend7: - %t68 = call ptr @fn_lbl(ptr @.str12156) + %t68 = call ptr @fn_lbl(ptr @.str12269) store ptr %t68, ptr %t69 - %t70 = call ptr @fn_lbl(ptr @.str12157) + %t70 = call ptr @fn_lbl(ptr @.str12270) store ptr %t70, ptr %t71 - call void @fn_emit(ptr @.str12158) + call void @fn_emit(ptr @.str12271) %t72 = load ptr, ptr %t11 call void @fn_emit(ptr %t72) - call void @fn_emit(ptr @.str12159) + call void @fn_emit(ptr @.str12272) %t73 = load ptr, ptr %t69 call void @fn_emit(ptr %t73) - call void @fn_emit(ptr @.str12160) + call void @fn_emit(ptr @.str12273) %t74 = load ptr, ptr %t71 call void @fn_emit(ptr %t74) - call void @fn_emit(ptr @.str12161) + call void @fn_emit(ptr @.str12274) %t75 = load ptr, ptr %t69 call void @fn_emit(ptr %t75) - call void @fn_emit(ptr @.str12162) + call void @fn_emit(ptr @.str12275) %t76 = load ptr, ptr %t0 %t77 = getelementptr inbounds %Cmp_Node, ptr %t76, i32 0, i32 1 %t78 = load ptr, ptr %t77 call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str12163) - call void @fn_emit(ptr @.str12164) + call void @fn_emit(ptr @.str12276) + call void @fn_emit(ptr @.str12277) %t79 = load ptr, ptr %t71 call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str12165) + call void @fn_emit(ptr @.str12278) %t80 = load ptr, ptr %t71 call void @fn_emit(ptr %t80) - call void @fn_emit(ptr @.str12166) + call void @fn_emit(ptr @.str12279) br label %ret ret: ret void @@ -165069,8 +165698,8 @@ scend4: then5: %t20 = load ptr, ptr %t1 %t21 = call ptr @fn_fn_sym(ptr %t20) - %t22 = call ptr @lp_str_concat(ptr @.str12167, ptr %t21) - %t23 = call ptr @lp_str_concat(ptr %t22, ptr @.str12168) + %t22 = call ptr @lp_str_concat(ptr @.str12280, ptr %t21) + %t23 = call ptr @lp_str_concat(ptr %t22, ptr @.str12281) call void @fn_emit(ptr %t23) br label %ifend7 ifend7: @@ -165109,7 +165738,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12169, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12282, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -165130,7 +165759,7 @@ then5: br i1 %t28, label %ixok8, label %ixbad9 ixbad9: %t29 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str12170, i32 %t23, i32 %t27) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str12283, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok8: @@ -165146,7 +165775,7 @@ ixok8: br i1 %t38, label %ixok10, label %ixbad11 ixbad11: %t39 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str12171, i32 %t33, i32 %t37) + call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str12284, i32 %t33, i32 %t37) call void @exit(i32 1) unreachable ixok10: @@ -165161,7 +165790,7 @@ ifend7: br label %wcond0 wend2: %t44 = load ptr, ptr %t0 - %t45 = call i32 @lp_str_eq(ptr %t44, ptr @.str12172) + %t45 = call i32 @lp_str_eq(ptr %t44, ptr @.str12285) %t46 = icmp ne i32 %t45, 0 br i1 %t46, label %then12, label %ifend14 then12: @@ -165171,7 +165800,7 @@ then12: store i32 %t50, ptr %t47 br i1 %t49, label %sc15, label %scend16 sc15: - %t51 = call ptr @fn_find_fn(ptr @.str12173) + %t51 = call ptr @fn_find_fn(ptr @.str12286) %t52 = icmp ne ptr %t51, null %t53 = zext i1 %t52 to i32 %t54 = icmp ne i32 %t53, 0 @@ -165183,9 +165812,9 @@ scend16: %t57 = icmp ne i32 %t56, 0 br i1 %t57, label %then17, label %ifend19 then17: - %t58 = call ptr @fn_fn_sym(ptr @.str12175) - %t59 = call ptr @lp_str_concat(ptr @.str12174, ptr %t58) - %t60 = call ptr @lp_str_concat(ptr %t59, ptr @.str12176) + %t58 = call ptr @fn_fn_sym(ptr @.str12288) + %t59 = call ptr @lp_str_concat(ptr @.str12287, ptr %t58) + %t60 = call ptr @lp_str_concat(ptr %t59, ptr @.str12289) call void @fn_emit(ptr %t60) br label %ifend19 ifend19: @@ -165193,7 +165822,7 @@ ifend19: %t62 = icmp ne i32 %t61, 0 br i1 %t62, label %then20, label %ifend22 then20: - call void @fn_emit(ptr @.str12177) + call void @fn_emit(ptr @.str12290) br label %ifend22 ifend22: %t64 = load i32, ptr @g_g_uses_fx @@ -165202,7 +165831,7 @@ ifend22: store i32 %t66, ptr %t63 br i1 %t65, label %sc23, label %scend24 sc23: - %t67 = call ptr @fn_find_fn(ptr @.str12178) + %t67 = call ptr @fn_find_fn(ptr @.str12291) %t68 = icmp ne ptr %t67, null %t69 = zext i1 %t68 to i32 %t70 = icmp ne i32 %t69, 0 @@ -165214,16 +165843,16 @@ scend24: %t73 = icmp ne i32 %t72, 0 br i1 %t73, label %then25, label %ifend27 then25: - %t74 = call ptr @fn_fn_sym(ptr @.str12180) - %t75 = call ptr @lp_str_concat(ptr @.str12179, ptr %t74) - %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str12181) + %t74 = call ptr @fn_fn_sym(ptr @.str12293) + %t75 = call ptr @lp_str_concat(ptr @.str12292, ptr %t74) + %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str12294) call void @fn_emit(ptr %t76) br label %ifend27 ifend27: br label %ifend14 ifend14: %t77 = load ptr, ptr %t0 - %t78 = call i32 @lp_str_eq(ptr %t77, ptr @.str12182) + %t78 = call i32 @lp_str_eq(ptr %t77, ptr @.str12295) %t79 = icmp ne i32 %t78, 0 br i1 %t79, label %then28, label %ifend30 then28: @@ -165233,7 +165862,7 @@ then28: store i32 %t83, ptr %t80 br i1 %t82, label %sc31, label %scend32 sc31: - %t84 = call ptr @fn_find_fn(ptr @.str12183) + %t84 = call ptr @fn_find_fn(ptr @.str12296) %t85 = icmp ne ptr %t84, null %t86 = zext i1 %t85 to i32 %t87 = icmp ne i32 %t86, 0 @@ -165245,9 +165874,9 @@ scend32: %t90 = icmp ne i32 %t89, 0 br i1 %t90, label %then33, label %ifend35 then33: - %t91 = call ptr @fn_fn_sym(ptr @.str12185) - %t92 = call ptr @lp_str_concat(ptr @.str12184, ptr %t91) - %t93 = call ptr @lp_str_concat(ptr %t92, ptr @.str12186) + %t91 = call ptr @fn_fn_sym(ptr @.str12298) + %t92 = call ptr @lp_str_concat(ptr @.str12297, ptr %t91) + %t93 = call ptr @lp_str_concat(ptr %t92, ptr @.str12299) call void @fn_emit(ptr %t93) br label %ifend35 ifend35: @@ -165261,312 +165890,319 @@ ret: define void @fn_emit_countdown_system() { entry: %t1 = alloca ptr - %t3 = alloca i32 - %t4 = alloca i32 - %t22 = alloca ptr - %t29 = alloca i32 - %t30 = alloca i32 - %t62 = alloca ptr - %t66 = alloca ptr - %t119 = alloca ptr + %t3 = alloca ptr + %t5 = alloca i32 + %t6 = alloca i32 + %t24 = alloca ptr + %t31 = alloca i32 + %t32 = alloca i32 + %t64 = alloca ptr + %t68 = alloca ptr + %t75 = alloca ptr + %t91 = alloca ptr + %t127 = alloca ptr %t0 = call ptr @fn_itoa(i32 1024) store ptr %t0, ptr %t1 - call void @fn_emit(ptr @.str12187) - call void @fn_emit(ptr @.str12188) - call void @fn_emit(ptr @.str12189) - call void @fn_emit(ptr @.str12190) - call void @fn_emit(ptr @.str12191) - %t2 = load ptr, ptr %t1 - call void @fn_emit(ptr %t2) - call void @fn_emit(ptr @.str12192) - call void @fn_emit(ptr @.str12193) - store i32 0, ptr %t3 - store i32 0, ptr %t4 + call void @fn_emit(ptr @.str12300) + call void @fn_emit(ptr @.str12301) + call void @fn_emit(ptr @.str12302) + call void @fn_emit(ptr @.str12303) + %t2 = call ptr @fn_ecs_base(ptr @.str12304) + store ptr %t2, ptr %t3 + call void @fn_emit(ptr @.str12305) + %t4 = load ptr, ptr %t3 + call void @fn_emit(ptr %t4) + call void @fn_emit(ptr @.str12306) + call void @fn_emit(ptr @.str12307) + store i32 0, ptr %t5 + store i32 0, ptr %t6 br label %wcond0 wcond0: - %t5 = load i32, ptr %t4 - %t6 = load ptr, ptr @g_prog - %t7 = getelementptr inbounds %LSlice, ptr %t6, i32 0, i32 1 - %t8 = load i32, ptr %t7 - %t9 = icmp slt i32 %t5, %t8 - %t10 = zext i1 %t9 to i32 - %t11 = icmp ne i32 %t10, 0 - br i1 %t11, label %wbody1, label %wend2 + %t7 = load i32, ptr %t6 + %t8 = load ptr, ptr @g_prog + %t9 = getelementptr inbounds %LSlice, ptr %t8, i32 0, i32 1 + %t10 = load i32, ptr %t9 + %t11 = icmp slt i32 %t7, %t10 + %t12 = zext i1 %t11 to i32 + %t13 = icmp ne i32 %t12, 0 + br i1 %t13, label %wbody1, label %wend2 wbody1: - %t12 = load ptr, ptr @g_prog - %t13 = load i32, ptr %t4 - %t14 = getelementptr inbounds %LSlice, ptr %t12, i32 0, i32 0 - %t15 = load ptr, ptr %t14 - %t16 = getelementptr inbounds %LSlice, ptr %t12, i32 0, i32 1 - %t17 = load i32, ptr %t16 - %t18 = icmp ult i32 %t13, %t17 - br i1 %t18, label %ixok3, label %ixbad4 + %t14 = load ptr, ptr @g_prog + %t15 = load i32, ptr %t6 + %t16 = getelementptr inbounds %LSlice, ptr %t14, i32 0, i32 0 + %t17 = load ptr, ptr %t16 + %t18 = getelementptr inbounds %LSlice, ptr %t14, i32 0, i32 1 + %t19 = load i32, ptr %t18 + %t20 = icmp ult i32 %t15, %t19 + br i1 %t20, label %ixok3, label %ixbad4 ixbad4: - %t19 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t19, ptr @.fmt_bounds, ptr @.str12194, i32 %t13, i32 %t17) + %t21 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str12308, i32 %t15, i32 %t19) call void @exit(i32 1) unreachable ixok3: - %t20 = getelementptr inbounds ptr, ptr %t15, i32 %t13 - %t21 = load ptr, ptr %t20 - store ptr %t21, ptr %t22 + %t22 = getelementptr inbounds ptr, ptr %t17, i32 %t15 %t23 = load ptr, ptr %t22 - %t24 = getelementptr inbounds %Cmp_Node, ptr %t23, i32 0, i32 0 - %t25 = load i32, ptr %t24 - %t26 = icmp eq i32 %t25, 8 - %t27 = zext i1 %t26 to i32 - %t28 = icmp ne i32 %t27, 0 - br i1 %t28, label %then5, label %ifend7 + store ptr %t23, ptr %t24 + %t25 = load ptr, ptr %t24 + %t26 = getelementptr inbounds %Cmp_Node, ptr %t25, i32 0, i32 0 + %t27 = load i32, ptr %t26 + %t28 = icmp eq i32 %t27, 8 + %t29 = zext i1 %t28 to i32 + %t30 = icmp ne i32 %t29, 0 + br i1 %t30, label %then5, label %ifend7 then5: - store i32 0, ptr %t29 - store i32 0, ptr %t30 + store i32 0, ptr %t31 + store i32 0, ptr %t32 br label %wcond8 wcond8: - %t31 = load i32, ptr %t30 - %t32 = load ptr, ptr %t22 - %t33 = getelementptr inbounds %Cmp_Node, ptr %t32, i32 0, i32 7 - %t34 = load ptr, ptr %t33 - %t35 = getelementptr inbounds %LSlice, ptr %t34, i32 0, i32 1 - %t36 = load i32, ptr %t35 - %t37 = icmp slt i32 %t31, %t36 - %t38 = zext i1 %t37 to i32 - %t39 = icmp ne i32 %t38, 0 - br i1 %t39, label %wbody9, label %wend10 + %t33 = load i32, ptr %t32 + %t34 = load ptr, ptr %t24 + %t35 = getelementptr inbounds %Cmp_Node, ptr %t34, i32 0, i32 7 + %t36 = load ptr, ptr %t35 + %t37 = getelementptr inbounds %LSlice, ptr %t36, i32 0, i32 1 + %t38 = load i32, ptr %t37 + %t39 = icmp slt i32 %t33, %t38 + %t40 = zext i1 %t39 to i32 + %t41 = icmp ne i32 %t40, 0 + br i1 %t41, label %wbody9, label %wend10 wbody9: - %t40 = load ptr, ptr %t22 - %t41 = getelementptr inbounds %Cmp_Node, ptr %t40, i32 0, i32 7 - %t42 = load ptr, ptr %t41 - %t43 = load i32, ptr %t30 - %t44 = getelementptr inbounds %LSlice, ptr %t42, i32 0, i32 0 - %t45 = load ptr, ptr %t44 - %t46 = getelementptr inbounds %LSlice, ptr %t42, i32 0, i32 1 - %t47 = load i32, ptr %t46 - %t48 = icmp ult i32 %t43, %t47 - br i1 %t48, label %ixok11, label %ixbad12 + %t42 = load ptr, ptr %t24 + %t43 = getelementptr inbounds %Cmp_Node, ptr %t42, i32 0, i32 7 + %t44 = load ptr, ptr %t43 + %t45 = load i32, ptr %t32 + %t46 = getelementptr inbounds %LSlice, ptr %t44, i32 0, i32 0 + %t47 = load ptr, ptr %t46 + %t48 = getelementptr inbounds %LSlice, ptr %t44, i32 0, i32 1 + %t49 = load i32, ptr %t48 + %t50 = icmp ult i32 %t45, %t49 + br i1 %t50, label %ixok11, label %ixbad12 ixbad12: - %t49 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str12195, i32 %t43, i32 %t47) + %t51 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str12309, i32 %t45, i32 %t49) call void @exit(i32 1) unreachable ixok11: - %t50 = getelementptr inbounds ptr, ptr %t45, i32 %t43 - %t51 = load ptr, ptr %t50 - %t52 = getelementptr inbounds %Cmp_Node, ptr %t51, i32 0, i32 3 + %t52 = getelementptr inbounds ptr, ptr %t47, i32 %t45 %t53 = load ptr, ptr %t52 - %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str12196) - %t55 = icmp ne i32 %t54, 0 - br i1 %t55, label %then13, label %ifend15 + %t54 = getelementptr inbounds %Cmp_Node, ptr %t53, i32 0, i32 3 + %t55 = load ptr, ptr %t54 + %t56 = call i32 @lp_str_eq(ptr %t55, ptr @.str12310) + %t57 = icmp ne i32 %t56, 0 + br i1 %t57, label %then13, label %ifend15 then13: - store i32 1, ptr %t29 + store i32 1, ptr %t31 br label %ifend15 ifend15: - %t56 = load i32, ptr %t30 - %t57 = add i32 %t56, 1 - store i32 %t57, ptr %t30 + %t58 = load i32, ptr %t32 + %t59 = add i32 %t58, 1 + store i32 %t59, ptr %t32 br label %wcond8 wend10: - %t58 = load i32, ptr %t29 - %t59 = icmp ne i32 %t58, 0 - br i1 %t59, label %then16, label %ifend18 + %t60 = load i32, ptr %t31 + %t61 = icmp ne i32 %t60, 0 + br i1 %t61, label %then16, label %ifend18 then16: - %t60 = load i32, ptr %t3 - %t61 = call ptr @fn_itoa(i32 %t60) - store ptr %t61, ptr %t62 - %t63 = load i32, ptr %t3 - %t64 = add i32 %t63, 1 - %t65 = call ptr @fn_itoa(i32 %t64) - store ptr %t65, ptr %t66 - call void @fn_emit(ptr @.str12197) - %t67 = load ptr, ptr %t62 - call void @fn_emit(ptr %t67) - call void @fn_emit(ptr @.str12198) - call void @fn_emit(ptr @.str12199) - %t68 = load ptr, ptr %t62 - call void @fn_emit(ptr %t68) - call void @fn_emit(ptr @.str12200) - %t69 = load ptr, ptr %t1 + %t62 = load i32, ptr %t5 + %t63 = call ptr @fn_itoa(i32 %t62) + store ptr %t63, ptr %t64 + %t65 = load i32, ptr %t5 + %t66 = add i32 %t65, 1 + %t67 = call ptr @fn_itoa(i32 %t66) + store ptr %t67, ptr %t68 + call void @fn_emit(ptr @.str12311) + %t69 = load ptr, ptr %t64 call void @fn_emit(ptr %t69) - call void @fn_emit(ptr @.str12201) - %t70 = load ptr, ptr %t22 + call void @fn_emit(ptr @.str12312) + %t70 = load ptr, ptr %t24 %t71 = getelementptr inbounds %Cmp_Node, ptr %t70, i32 0, i32 1 %t72 = load ptr, ptr %t71 - call void @fn_emit(ptr %t72) - call void @fn_emit(ptr @.str12202) - call void @fn_emit(ptr @.str12203) - %t73 = load ptr, ptr %t62 - call void @fn_emit(ptr %t73) - call void @fn_emit(ptr @.str12204) - %t74 = load ptr, ptr %t62 - call void @fn_emit(ptr %t74) - call void @fn_emit(ptr @.str12205) - call void @fn_emit(ptr @.str12206) - %t75 = load ptr, ptr %t62 - call void @fn_emit(ptr %t75) - call void @fn_emit(ptr @.str12207) - %t76 = load ptr, ptr %t62 + %t73 = call ptr @lp_str_concat(ptr @.str12313, ptr %t72) + %t74 = call ptr @fn_ecs_base(ptr %t73) + store ptr %t74, ptr %t75 + call void @fn_emit(ptr @.str12314) + %t76 = load ptr, ptr %t64 call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str12208) - call void @fn_emit(ptr @.str12209) - %t77 = load ptr, ptr %t62 + call void @fn_emit(ptr @.str12315) + %t77 = load ptr, ptr %t75 call void @fn_emit(ptr %t77) - call void @fn_emit(ptr @.str12210) - %t78 = load ptr, ptr %t62 + call void @fn_emit(ptr @.str12316) + call void @fn_emit(ptr @.str12317) + %t78 = load ptr, ptr %t64 call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str12211) - %t79 = load ptr, ptr %t66 + call void @fn_emit(ptr @.str12318) + %t79 = load ptr, ptr %t64 call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str12212) - call void @fn_emit(ptr @.str12213) - %t80 = load ptr, ptr %t62 + call void @fn_emit(ptr @.str12319) + call void @fn_emit(ptr @.str12320) + %t80 = load ptr, ptr %t64 call void @fn_emit(ptr %t80) - call void @fn_emit(ptr @.str12214) - call void @fn_emit(ptr @.str12215) - %t81 = load ptr, ptr %t62 + call void @fn_emit(ptr @.str12321) + %t81 = load ptr, ptr %t64 call void @fn_emit(ptr %t81) - call void @fn_emit(ptr @.str12216) - %t82 = load ptr, ptr %t1 + call void @fn_emit(ptr @.str12322) + call void @fn_emit(ptr @.str12323) + %t82 = load ptr, ptr %t64 call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str12217) - %t83 = load ptr, ptr %t22 - %t84 = getelementptr inbounds %Cmp_Node, ptr %t83, i32 0, i32 1 - %t85 = load ptr, ptr %t84 + call void @fn_emit(ptr @.str12324) + %t83 = load ptr, ptr %t64 + call void @fn_emit(ptr %t83) + call void @fn_emit(ptr @.str12325) + %t84 = load ptr, ptr %t68 + call void @fn_emit(ptr %t84) + call void @fn_emit(ptr @.str12326) + call void @fn_emit(ptr @.str12327) + %t85 = load ptr, ptr %t64 call void @fn_emit(ptr %t85) - call void @fn_emit(ptr @.str12218) - %t86 = load ptr, ptr %t22 + call void @fn_emit(ptr @.str12328) + %t86 = load ptr, ptr %t24 %t87 = getelementptr inbounds %Cmp_Node, ptr %t86, i32 0, i32 1 %t88 = load ptr, ptr %t87 - call void @fn_emit(ptr %t88) - call void @fn_emit(ptr @.str12219) - store i32 0, ptr %t30 + %t89 = call ptr @lp_str_concat(ptr @.str12329, ptr %t88) + %t90 = call ptr @fn_ecs_base(ptr %t89) + store ptr %t90, ptr %t91 + call void @fn_emit(ptr @.str12330) + %t92 = load ptr, ptr %t64 + call void @fn_emit(ptr %t92) + call void @fn_emit(ptr @.str12331) + %t93 = load ptr, ptr %t24 + %t94 = getelementptr inbounds %Cmp_Node, ptr %t93, i32 0, i32 1 + %t95 = load ptr, ptr %t94 + call void @fn_emit(ptr %t95) + call void @fn_emit(ptr @.str12332) + %t96 = load ptr, ptr %t91 + call void @fn_emit(ptr %t96) + call void @fn_emit(ptr @.str12333) + store i32 0, ptr %t32 br label %wcond19 wcond19: - %t89 = load i32, ptr %t30 - %t90 = load ptr, ptr %t22 - %t91 = getelementptr inbounds %Cmp_Node, ptr %t90, i32 0, i32 7 - %t92 = load ptr, ptr %t91 - %t93 = getelementptr inbounds %LSlice, ptr %t92, i32 0, i32 1 - %t94 = load i32, ptr %t93 - %t95 = icmp slt i32 %t89, %t94 - %t96 = zext i1 %t95 to i32 - %t97 = icmp ne i32 %t96, 0 - br i1 %t97, label %wbody20, label %wend21 -wbody20: - %t98 = load ptr, ptr %t22 + %t97 = load i32, ptr %t32 + %t98 = load ptr, ptr %t24 %t99 = getelementptr inbounds %Cmp_Node, ptr %t98, i32 0, i32 7 %t100 = load ptr, ptr %t99 - %t101 = load i32, ptr %t30 - %t102 = getelementptr inbounds %LSlice, ptr %t100, i32 0, i32 0 - %t103 = load ptr, ptr %t102 - %t104 = getelementptr inbounds %LSlice, ptr %t100, i32 0, i32 1 - %t105 = load i32, ptr %t104 - %t106 = icmp ult i32 %t101, %t105 - br i1 %t106, label %ixok22, label %ixbad23 + %t101 = getelementptr inbounds %LSlice, ptr %t100, i32 0, i32 1 + %t102 = load i32, ptr %t101 + %t103 = icmp slt i32 %t97, %t102 + %t104 = zext i1 %t103 to i32 + %t105 = icmp ne i32 %t104, 0 + br i1 %t105, label %wbody20, label %wend21 +wbody20: + %t106 = load ptr, ptr %t24 + %t107 = getelementptr inbounds %Cmp_Node, ptr %t106, i32 0, i32 7 + %t108 = load ptr, ptr %t107 + %t109 = load i32, ptr %t32 + %t110 = getelementptr inbounds %LSlice, ptr %t108, i32 0, i32 0 + %t111 = load ptr, ptr %t110 + %t112 = getelementptr inbounds %LSlice, ptr %t108, i32 0, i32 1 + %t113 = load i32, ptr %t112 + %t114 = icmp ult i32 %t109, %t113 + br i1 %t114, label %ixok22, label %ixbad23 ixbad23: - %t107 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t107, ptr @.fmt_bounds, ptr @.str12220, i32 %t101, i32 %t105) + %t115 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t115, ptr @.fmt_bounds, ptr @.str12334, i32 %t109, i32 %t113) call void @exit(i32 1) unreachable ixok22: - %t108 = getelementptr inbounds ptr, ptr %t103, i32 %t101 - %t109 = load ptr, ptr %t108 - %t110 = getelementptr inbounds %Cmp_Node, ptr %t109, i32 0, i32 3 - %t111 = load ptr, ptr %t110 - %t112 = call i32 @lp_str_eq(ptr %t111, ptr @.str12221) - %t113 = icmp ne i32 %t112, 0 - br i1 %t113, label %then24, label %ifend26 + %t116 = getelementptr inbounds ptr, ptr %t111, i32 %t109 + %t117 = load ptr, ptr %t116 + %t118 = getelementptr inbounds %Cmp_Node, ptr %t117, i32 0, i32 3 + %t119 = load ptr, ptr %t118 + %t120 = call i32 @lp_str_eq(ptr %t119, ptr @.str12335) + %t121 = icmp ne i32 %t120, 0 + br i1 %t121, label %then24, label %ifend26 then24: - %t114 = load ptr, ptr %t62 - %t115 = call ptr @lp_str_concat(ptr %t114, ptr @.str12222) - %t116 = load i32, ptr %t30 - %t117 = call ptr @fn_itoa(i32 %t116) - %t118 = call ptr @lp_str_concat(ptr %t115, ptr %t117) - store ptr %t118, ptr %t119 - call void @fn_emit(ptr @.str12223) - %t120 = load ptr, ptr %t119 - call void @fn_emit(ptr %t120) - call void @fn_emit(ptr @.str12224) - %t121 = load ptr, ptr %t22 - %t122 = getelementptr inbounds %Cmp_Node, ptr %t121, i32 0, i32 1 - %t123 = load ptr, ptr %t122 - call void @fn_emit(ptr %t123) - call void @fn_emit(ptr @.str12225) - %t124 = load ptr, ptr %t62 - call void @fn_emit(ptr %t124) - call void @fn_emit(ptr @.str12226) - %t125 = load i32, ptr %t30 - %t126 = call ptr @fn_itoa(i32 %t125) - call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str12227) - call void @fn_emit(ptr @.str12228) - %t127 = load ptr, ptr %t119 - call void @fn_emit(ptr %t127) - call void @fn_emit(ptr @.str12229) - %t128 = load ptr, ptr %t119 + %t122 = load ptr, ptr %t64 + %t123 = call ptr @lp_str_concat(ptr %t122, ptr @.str12336) + %t124 = load i32, ptr %t32 + %t125 = call ptr @fn_itoa(i32 %t124) + %t126 = call ptr @lp_str_concat(ptr %t123, ptr %t125) + store ptr %t126, ptr %t127 + call void @fn_emit(ptr @.str12337) + %t128 = load ptr, ptr %t127 call void @fn_emit(ptr %t128) - call void @fn_emit(ptr @.str12230) - call void @fn_emit(ptr @.str12231) - %t129 = load ptr, ptr %t119 - call void @fn_emit(ptr %t129) - call void @fn_emit(ptr @.str12232) - %t130 = load ptr, ptr %t119 - call void @fn_emit(ptr %t130) - call void @fn_emit(ptr @.str12233) - call void @fn_emit(ptr @.str12234) - %t131 = load ptr, ptr %t119 + call void @fn_emit(ptr @.str12338) + %t129 = load ptr, ptr %t24 + %t130 = getelementptr inbounds %Cmp_Node, ptr %t129, i32 0, i32 1 + %t131 = load ptr, ptr %t130 call void @fn_emit(ptr %t131) - call void @fn_emit(ptr @.str12235) - %t132 = load ptr, ptr %t119 + call void @fn_emit(ptr @.str12339) + %t132 = load ptr, ptr %t64 call void @fn_emit(ptr %t132) - call void @fn_emit(ptr @.str12236) - call void @fn_emit(ptr @.str12237) - %t133 = load ptr, ptr %t119 - call void @fn_emit(ptr %t133) - call void @fn_emit(ptr @.str12238) - %t134 = load ptr, ptr %t119 + call void @fn_emit(ptr @.str12340) + %t133 = load i32, ptr %t32 + %t134 = call ptr @fn_itoa(i32 %t133) call void @fn_emit(ptr %t134) - call void @fn_emit(ptr @.str12239) - %t135 = load ptr, ptr %t119 + call void @fn_emit(ptr @.str12341) + call void @fn_emit(ptr @.str12342) + %t135 = load ptr, ptr %t127 call void @fn_emit(ptr %t135) - call void @fn_emit(ptr @.str12240) - %t136 = load ptr, ptr %t119 + call void @fn_emit(ptr @.str12343) + %t136 = load ptr, ptr %t127 call void @fn_emit(ptr %t136) - call void @fn_emit(ptr @.str12241) - call void @fn_emit(ptr @.str12242) - %t137 = load ptr, ptr %t119 + call void @fn_emit(ptr @.str12344) + call void @fn_emit(ptr @.str12345) + %t137 = load ptr, ptr %t127 call void @fn_emit(ptr %t137) - call void @fn_emit(ptr @.str12243) - %t138 = load ptr, ptr %t119 + call void @fn_emit(ptr @.str12346) + %t138 = load ptr, ptr %t127 call void @fn_emit(ptr %t138) - call void @fn_emit(ptr @.str12244) + call void @fn_emit(ptr @.str12347) + call void @fn_emit(ptr @.str12348) + %t139 = load ptr, ptr %t127 + call void @fn_emit(ptr %t139) + call void @fn_emit(ptr @.str12349) + %t140 = load ptr, ptr %t127 + call void @fn_emit(ptr %t140) + call void @fn_emit(ptr @.str12350) + call void @fn_emit(ptr @.str12351) + %t141 = load ptr, ptr %t127 + call void @fn_emit(ptr %t141) + call void @fn_emit(ptr @.str12352) + %t142 = load ptr, ptr %t127 + call void @fn_emit(ptr %t142) + call void @fn_emit(ptr @.str12353) + %t143 = load ptr, ptr %t127 + call void @fn_emit(ptr %t143) + call void @fn_emit(ptr @.str12354) + %t144 = load ptr, ptr %t127 + call void @fn_emit(ptr %t144) + call void @fn_emit(ptr @.str12355) + call void @fn_emit(ptr @.str12356) + %t145 = load ptr, ptr %t127 + call void @fn_emit(ptr %t145) + call void @fn_emit(ptr @.str12357) + %t146 = load ptr, ptr %t127 + call void @fn_emit(ptr %t146) + call void @fn_emit(ptr @.str12358) br label %ifend26 ifend26: - %t139 = load i32, ptr %t30 - %t140 = add i32 %t139, 1 - store i32 %t140, ptr %t30 + %t147 = load i32, ptr %t32 + %t148 = add i32 %t147, 1 + store i32 %t148, ptr %t32 br label %wcond19 wend21: - call void @fn_emit(ptr @.str12245) - %t141 = load ptr, ptr %t66 - call void @fn_emit(ptr %t141) - call void @fn_emit(ptr @.str12246) - %t142 = load i32, ptr %t3 - %t143 = add i32 %t142, 1 - store i32 %t143, ptr %t3 + call void @fn_emit(ptr @.str12359) + %t149 = load ptr, ptr %t68 + call void @fn_emit(ptr %t149) + call void @fn_emit(ptr @.str12360) + %t150 = load i32, ptr %t5 + %t151 = add i32 %t150, 1 + store i32 %t151, ptr %t5 br label %ifend18 ifend18: br label %ifend7 ifend7: - %t144 = load i32, ptr %t4 - %t145 = add i32 %t144, 1 - store i32 %t145, ptr %t4 + %t152 = load i32, ptr %t6 + %t153 = add i32 %t152, 1 + store i32 %t153, ptr %t6 br label %wcond0 wend2: - call void @fn_emit(ptr @.str12247) - %t146 = load i32, ptr %t3 - %t147 = call ptr @fn_itoa(i32 %t146) - call void @fn_emit(ptr %t147) - call void @fn_emit(ptr @.str12248) - call void @fn_emit(ptr @.str12249) + call void @fn_emit(ptr @.str12361) + %t154 = load i32, ptr %t5 + %t155 = call ptr @fn_itoa(i32 %t154) + call void @fn_emit(ptr %t155) + call void @fn_emit(ptr @.str12362) + call void @fn_emit(ptr @.str12363) br label %ret ret: ret void @@ -165587,7 +166223,7 @@ entry: store i32 0, ptr @g_nloop store i32 0, ptr @g_nself store ptr null, ptr @g_g_cur_scene - store ptr @.str12250, ptr @g_ret_ty + store ptr @.str12364, ptr @g_ret_ty %t1 = call ptr @fn_buf_new() store ptr %t1, ptr %t2 %t3 = call ptr @fn_buf_new() @@ -165607,25 +166243,25 @@ entry: %t14 = load ptr, ptr %t8 %t15 = call ptr @fn_emit_spawn(ptr %t14) store ptr %t15, ptr %t16 - call void @fn_emit(ptr @.str12251) + call void @fn_emit(ptr @.str12365) %t17 = load ptr, ptr %t16 call void @fn_emit(ptr %t17) - call void @fn_emit(ptr @.str12252) + call void @fn_emit(ptr @.str12366) %t18 = load ptr, ptr %t5 store ptr %t18, ptr @g_code - call void @fn_emit(ptr @.str12253) + call void @fn_emit(ptr @.str12367) %t19 = load ptr, ptr %t0 %t20 = getelementptr inbounds %Cmp_Node, ptr %t19, i32 0, i32 1 %t21 = load ptr, ptr %t20 call void @fn_emit(ptr %t21) - call void @fn_emit(ptr @.str12254) + call void @fn_emit(ptr @.str12368) %t22 = load ptr, ptr @g_falloc %t23 = call ptr @fn_buf_str(ptr %t22) call void @fn_emit(ptr %t23) %t24 = load ptr, ptr %t2 %t25 = call ptr @fn_buf_str(ptr %t24) call void @fn_emit(ptr %t25) - call void @fn_emit(ptr @.str12255) + call void @fn_emit(ptr @.str12369) br label %ret ret: ret void @@ -165666,7 +166302,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12256, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12370, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -165689,7 +166325,7 @@ then5: br i1 %t29, label %ixok8, label %ixbad9 ixbad9: %t30 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str12257, i32 %t24, i32 %t28) + call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str12371, i32 %t24, i32 %t28) call void @exit(i32 1) unreachable ixok8: @@ -165740,7 +166376,7 @@ wbody11: br i1 %t54, label %ixok13, label %ixbad14 ixbad14: %t55 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t55, ptr @.fmt_bounds, ptr @.str12258, i32 %t49, i32 %t53) + call i32 (ptr, ptr, ...) @fprintf(ptr %t55, ptr @.fmt_bounds, ptr @.str12372, i32 %t49, i32 %t53) call void @exit(i32 1) unreachable ixok13: @@ -165769,46 +166405,46 @@ then15: %t75 = load ptr, ptr %t74 %t76 = getelementptr inbounds %Cmp_Val, ptr %t75, i32 0, i32 0 %t77 = load ptr, ptr %t76 - %t78 = call ptr @lp_str_concat(ptr @.str12259, ptr %t77) - %t79 = call ptr @lp_str_concat(ptr %t78, ptr @.str12260) + %t78 = call ptr @lp_str_concat(ptr @.str12373, ptr %t77) + %t79 = call ptr @lp_str_concat(ptr %t78, ptr @.str12374) %t80 = call ptr @fn_emit_bind(ptr %t79) store ptr %t80, ptr %t81 %t82 = load ptr, ptr %t81 - %t83 = call ptr @lp_str_concat(ptr @.str12261, ptr %t82) - %t84 = call ptr @lp_str_concat(ptr %t83, ptr @.str12262) + %t83 = call ptr @lp_str_concat(ptr @.str12375, ptr %t82) + %t84 = call ptr @lp_str_concat(ptr %t83, ptr @.str12376) %t85 = call ptr @fn_emit_bind(ptr %t84) store ptr %t85, ptr %t86 - %t87 = call ptr @fn_lbl(ptr @.str12263) + %t87 = call ptr @fn_lbl(ptr @.str12377) store ptr %t87, ptr %t88 - %t89 = call ptr @fn_lbl(ptr @.str12264) + %t89 = call ptr @fn_lbl(ptr @.str12378) store ptr %t89, ptr %t90 - call void @fn_emit(ptr @.str12265) + call void @fn_emit(ptr @.str12379) %t91 = load ptr, ptr %t86 call void @fn_emit(ptr %t91) - call void @fn_emit(ptr @.str12266) + call void @fn_emit(ptr @.str12380) %t92 = load ptr, ptr %t88 call void @fn_emit(ptr %t92) - call void @fn_emit(ptr @.str12267) + call void @fn_emit(ptr @.str12381) %t93 = load ptr, ptr %t90 call void @fn_emit(ptr %t93) - call void @fn_emit(ptr @.str12268) + call void @fn_emit(ptr @.str12382) %t94 = load ptr, ptr %t88 call void @fn_emit(ptr %t94) - call void @fn_emit(ptr @.str12269) + call void @fn_emit(ptr @.str12383) %t95 = load ptr, ptr %t58 %t96 = getelementptr inbounds %Cmp_Node, ptr %t95, i32 0, i32 1 %t97 = load ptr, ptr %t96 - %t98 = call ptr @lp_str_concat(ptr @.str12270, ptr %t97) - %t99 = call ptr @lp_str_concat(ptr %t98, ptr @.str12271) + %t98 = call ptr @lp_str_concat(ptr @.str12384, ptr %t97) + %t99 = call ptr @lp_str_concat(ptr %t98, ptr @.str12385) %t100 = call ptr @fn_emit_bind(ptr %t99) store ptr %t100, ptr %t101 - call void @fn_emit(ptr @.str12272) + call void @fn_emit(ptr @.str12386) %t102 = load ptr, ptr %t101 call void @fn_emit(ptr %t102) - call void @fn_emit(ptr @.str12273) + call void @fn_emit(ptr @.str12387) %t103 = load ptr, ptr %t90 call void @fn_emit(ptr %t103) - call void @fn_emit(ptr @.str12274) + call void @fn_emit(ptr @.str12388) br label %ifend17 ifend17: %t104 = load i32, ptr %t0 @@ -165816,17 +166452,17 @@ ifend17: store i32 %t105, ptr %t0 br label %wcond10 wend12: - call void @fn_emit(ptr @.str12275) + call void @fn_emit(ptr @.str12389) %t106 = load ptr, ptr %t39 store ptr %t106, ptr @g_code - call void @fn_emit(ptr @.str12276) + call void @fn_emit(ptr @.str12390) %t107 = load ptr, ptr @g_falloc %t108 = call ptr @fn_buf_str(ptr %t107) call void @fn_emit(ptr %t108) %t109 = load ptr, ptr %t36 %t110 = call ptr @fn_buf_str(ptr %t109) call void @fn_emit(ptr %t110) - call void @fn_emit(ptr @.str12277) + call void @fn_emit(ptr @.str12391) br label %ret ret: ret void @@ -165838,7 +166474,7 @@ entry: %t0 = alloca ptr store ptr %arg_phase, ptr %t0 %t1 = load ptr, ptr %t0 - %t2 = call i32 @lp_str_eq(ptr %t1, ptr @.str12278) + %t2 = call i32 @lp_str_eq(ptr %t1, ptr @.str12392) %t3 = icmp ne i32 %t2, 0 br i1 %t3, label %then0, label %ifend2 then0: @@ -165846,7 +166482,7 @@ then0: br label %ret ifend2: %t4 = load ptr, ptr %t0 - %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str12279) + %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str12393) %t6 = icmp ne i32 %t5, 0 br i1 %t6, label %then3, label %ifend5 then3: @@ -165854,7 +166490,7 @@ then3: br label %ret ifend5: %t7 = load ptr, ptr %t0 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str12280) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str12394) %t9 = icmp ne i32 %t8, 0 br i1 %t9, label %then6, label %ifend8 then6: @@ -165862,7 +166498,7 @@ then6: br label %ret ifend8: %t10 = load ptr, ptr %t0 - %t11 = call i32 @lp_str_eq(ptr %t10, ptr @.str12281) + %t11 = call i32 @lp_str_eq(ptr %t10, ptr @.str12395) %t12 = icmp ne i32 %t11, 0 br i1 %t12, label %then9, label %ifend11 then9: @@ -165870,7 +166506,7 @@ then9: br label %ret ifend11: %t13 = load ptr, ptr %t0 - %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str12282) + %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str12396) %t15 = icmp ne i32 %t14, 0 br i1 %t15, label %then12, label %ifend14 then12: @@ -165878,7 +166514,7 @@ then12: br label %ret ifend14: %t16 = load ptr, ptr %t0 - %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str12283) + %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str12397) %t18 = icmp ne i32 %t17, 0 br i1 %t18, label %then15, label %ifend17 then15: @@ -165886,7 +166522,7 @@ then15: br label %ret ifend17: %t19 = load ptr, ptr %t0 - %t20 = call i32 @lp_str_eq(ptr %t19, ptr @.str12284) + %t20 = call i32 @lp_str_eq(ptr %t19, ptr @.str12398) %t21 = icmp ne i32 %t20, 0 br i1 %t21, label %then18, label %ifend20 then18: @@ -165894,7 +166530,7 @@ then18: br label %ret ifend20: %t22 = load ptr, ptr %t0 - %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str12285) + %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str12399) %t24 = icmp ne i32 %t23, 0 br i1 %t24, label %then21, label %ifend23 then21: @@ -165902,8 +166538,8 @@ then21: br label %ret ifend23: %t25 = load ptr, ptr %t0 - %t26 = call ptr @lp_str_concat(ptr @.str12286, ptr %t25) - %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str12287) + %t26 = call ptr @lp_str_concat(ptr @.str12400, ptr %t25) + %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str12401) call void @fn_perr(ptr %t27) store i32 7, ptr %retval br label %ret @@ -165923,14 +166559,14 @@ entry: %t29 = alloca i32 store ptr %arg_name, ptr %t0 %t4 = load ptr, ptr %t0 - %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str12288) + %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str12402) %t6 = icmp ne i32 %t5, 0 %t7 = zext i1 %t6 to i32 store i32 %t7, ptr %t3 br i1 %t6, label %scend1, label %sc0 sc0: %t8 = load ptr, ptr %t0 - %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str12289) + %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str12403) %t10 = icmp ne i32 %t9, 0 %t11 = zext i1 %t10 to i32 store i32 %t11, ptr %t3 @@ -165943,7 +166579,7 @@ scend1: br i1 %t13, label %scend3, label %sc2 sc2: %t15 = load ptr, ptr %t0 - %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str12290) + %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str12404) %t17 = icmp ne i32 %t16, 0 %t18 = zext i1 %t17 to i32 store i32 %t18, ptr %t2 @@ -165956,7 +166592,7 @@ scend3: br i1 %t20, label %scend5, label %sc4 sc4: %t22 = load ptr, ptr %t0 - %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str12291) + %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str12405) %t24 = icmp ne i32 %t23, 0 %t25 = zext i1 %t24 to i32 store i32 %t25, ptr %t1 @@ -165970,14 +166606,14 @@ then6: br label %ret ifend8: %t30 = load ptr, ptr %t0 - %t31 = call i32 @lp_str_eq(ptr %t30, ptr @.str12292) + %t31 = call i32 @lp_str_eq(ptr %t30, ptr @.str12406) %t32 = icmp ne i32 %t31, 0 %t33 = zext i1 %t32 to i32 store i32 %t33, ptr %t29 br i1 %t32, label %scend10, label %sc9 sc9: %t34 = load ptr, ptr %t0 - %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str12293) + %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str12407) %t36 = icmp ne i32 %t35, 0 %t37 = zext i1 %t36 to i32 store i32 %t37, ptr %t29 @@ -165990,7 +166626,7 @@ scend10: br i1 %t39, label %scend12, label %sc11 sc11: %t41 = load ptr, ptr %t0 - %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str12294) + %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str12408) %t43 = icmp ne i32 %t42, 0 %t44 = zext i1 %t43 to i32 store i32 %t44, ptr %t28 @@ -166013,33 +166649,33 @@ ret: define void @fn_emit_module_glue() { entry: %t4 = alloca i32 - call void @fn_emith(ptr @.str12295) - call void @fn_emith(ptr @.str12296) - call void @fn_emith(ptr @.str12297) - call void @fn_emith(ptr @.str12298) - call void @fn_emith(ptr @.str12299) - call void @fn_emith(ptr @.str12300) - call void @fn_emith(ptr @.str12301) - call void @fn_emith(ptr @.str12302) - call void @fn_emith(ptr @.str12303) - call void @fn_emith(ptr @.str12304) - call void @fn_emith(ptr @.str12305) - call void @fn_emith(ptr @.str12306) - call void @fn_emith(ptr @.str12307) - call void @fn_emith(ptr @.str12308) - call void @fn_emith(ptr @.str12309) - call void @fn_emith(ptr @.str12310) - call void @fn_emith(ptr @.str12311) - call void @fn_emith(ptr @.str12312) - call void @fn_emith(ptr @.str12313) - call void @fn_emit(ptr @.str12314) - %t0 = call ptr @fn_find_fn(ptr @.str12315) + call void @fn_emith(ptr @.str12409) + call void @fn_emith(ptr @.str12410) + call void @fn_emith(ptr @.str12411) + call void @fn_emith(ptr @.str12412) + call void @fn_emith(ptr @.str12413) + call void @fn_emith(ptr @.str12414) + call void @fn_emith(ptr @.str12415) + call void @fn_emith(ptr @.str12416) + call void @fn_emith(ptr @.str12417) + call void @fn_emith(ptr @.str12418) + call void @fn_emith(ptr @.str12419) + call void @fn_emith(ptr @.str12420) + call void @fn_emith(ptr @.str12421) + call void @fn_emith(ptr @.str12422) + call void @fn_emith(ptr @.str12423) + call void @fn_emith(ptr @.str12424) + call void @fn_emith(ptr @.str12425) + call void @fn_emith(ptr @.str12426) + call void @fn_emith(ptr @.str12427) + call void @fn_emit(ptr @.str12428) + %t0 = call ptr @fn_find_fn(ptr @.str12429) %t1 = icmp ne ptr %t0, null %t2 = zext i1 %t1 to i32 %t3 = icmp ne i32 %t2, 0 br i1 %t3, label %then0, label %ifend2 then0: - call void @fn_emit(ptr @.str12316) + call void @fn_emit(ptr @.str12430) br label %ifend2 ifend2: store i32 0, ptr %t4 @@ -166054,7 +166690,7 @@ wcond3: %t11 = icmp ne i32 %t10, 0 br i1 %t11, label %wbody4, label %wend5 wbody4: - call void @fn_emit(ptr @.str12317) + call void @fn_emit(ptr @.str12431) %t12 = load ptr, ptr @g_g_mod_sys_fn %t13 = load i32, ptr %t4 %t14 = getelementptr inbounds %LSlice, ptr %t12, i32 0, i32 0 @@ -166065,14 +166701,14 @@ wbody4: br i1 %t18, label %ixok6, label %ixbad7 ixbad7: %t19 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t19, ptr @.fmt_bounds, ptr @.str12318, i32 %t13, i32 %t17) + call i32 (ptr, ptr, ...) @fprintf(ptr %t19, ptr @.fmt_bounds, ptr @.str12432, i32 %t13, i32 %t17) call void @exit(i32 1) unreachable ixok6: %t20 = getelementptr inbounds ptr, ptr %t15, i32 %t13 %t21 = load ptr, ptr %t20 call void @fn_emit(ptr %t21) - call void @fn_emit(ptr @.str12319) + call void @fn_emit(ptr @.str12433) %t22 = load ptr, ptr @g_g_mod_sys_phase %t23 = load i32, ptr %t4 %t24 = getelementptr inbounds %LSlice, ptr %t22, i32 0, i32 0 @@ -166083,7 +166719,7 @@ ixok6: br i1 %t28, label %ixok8, label %ixbad9 ixbad9: %t29 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str12320, i32 %t23, i32 %t27) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str12434, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok8: @@ -166092,14 +166728,14 @@ ixok8: %t32 = call i32 @fn_phase_id(ptr %t31) %t33 = call ptr @fn_itoa(i32 %t32) call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str12321) + call void @fn_emit(ptr @.str12435) %t34 = load i32, ptr %t4 %t35 = add i32 %t34, 1 store i32 %t35, ptr %t4 br label %wcond3 wend5: - call void @fn_emit(ptr @.str12322) - call void @fn_emith(ptr @.str12323) + call void @fn_emit(ptr @.str12436) + call void @fn_emith(ptr @.str12437) br label %ret ret: ret void @@ -166110,35 +166746,35 @@ entry: %t1 = alloca ptr %t0 = call ptr @fn_itoa(i32 64) store ptr %t0, ptr %t1 - call void @fn_emith(ptr @.str12324) + call void @fn_emith(ptr @.str12438) %t2 = load ptr, ptr %t1 call void @fn_emith(ptr %t2) - call void @fn_emith(ptr @.str12325) - call void @fn_emith(ptr @.str12326) + call void @fn_emith(ptr @.str12439) + call void @fn_emith(ptr @.str12440) %t3 = load ptr, ptr %t1 call void @fn_emith(ptr %t3) - call void @fn_emith(ptr @.str12327) - call void @fn_emith(ptr @.str12328) - call void @fn_emit(ptr @.str12329) - call void @fn_emit(ptr @.str12330) - call void @fn_emit(ptr @.str12331) + call void @fn_emith(ptr @.str12441) + call void @fn_emith(ptr @.str12442) + call void @fn_emit(ptr @.str12443) + call void @fn_emit(ptr @.str12444) + call void @fn_emit(ptr @.str12445) %t4 = load ptr, ptr %t1 call void @fn_emit(ptr %t4) - call void @fn_emit(ptr @.str12332) - call void @fn_emit(ptr @.str12333) - call void @fn_emit(ptr @.str12334) - call void @fn_emit(ptr @.str12335) + call void @fn_emit(ptr @.str12446) + call void @fn_emit(ptr @.str12447) + call void @fn_emit(ptr @.str12448) + call void @fn_emit(ptr @.str12449) %t5 = load ptr, ptr %t1 call void @fn_emit(ptr %t5) - call void @fn_emit(ptr @.str12336) - call void @fn_emit(ptr @.str12337) - call void @fn_emit(ptr @.str12338) + call void @fn_emit(ptr @.str12450) + call void @fn_emit(ptr @.str12451) + call void @fn_emit(ptr @.str12452) %t6 = load ptr, ptr %t1 call void @fn_emit(ptr %t6) - call void @fn_emit(ptr @.str12339) - call void @fn_emit(ptr @.str12340) - call void @fn_emit(ptr @.str12341) - call void @fn_emit(ptr @.str12342) + call void @fn_emit(ptr @.str12453) + call void @fn_emit(ptr @.str12454) + call void @fn_emit(ptr @.str12455) + call void @fn_emit(ptr @.str12456) br label %ret ret: ret void @@ -166175,141 +166811,141 @@ entry: store ptr %t7, ptr %t8 %t9 = call ptr @fn_nreg() store ptr %t9, ptr %t10 - %t11 = call ptr @fn_lbl(ptr @.str12343) + %t11 = call ptr @fn_lbl(ptr @.str12457) store ptr %t11, ptr %t12 - %t13 = call ptr @fn_lbl(ptr @.str12344) + %t13 = call ptr @fn_lbl(ptr @.str12458) store ptr %t13, ptr %t14 - %t15 = call ptr @fn_lbl(ptr @.str12345) + %t15 = call ptr @fn_lbl(ptr @.str12459) store ptr %t15, ptr %t16 - %t17 = call ptr @fn_lbl(ptr @.str12346) + %t17 = call ptr @fn_lbl(ptr @.str12460) store ptr %t17, ptr %t18 - %t19 = call ptr @fn_lbl(ptr @.str12347) + %t19 = call ptr @fn_lbl(ptr @.str12461) store ptr %t19, ptr %t20 - %t21 = call ptr @fn_lbl(ptr @.str12348) + %t21 = call ptr @fn_lbl(ptr @.str12462) store ptr %t21, ptr %t22 - call void @fn_emit(ptr @.str12349) + call void @fn_emit(ptr @.str12463) %t23 = load ptr, ptr %t12 call void @fn_emit(ptr %t23) - call void @fn_emit(ptr @.str12350) + call void @fn_emit(ptr @.str12464) %t24 = load ptr, ptr %t12 call void @fn_emit(ptr %t24) - call void @fn_emit(ptr @.str12351) + call void @fn_emit(ptr @.str12465) %t25 = load ptr, ptr %t14 call void @fn_emit(ptr %t25) - call void @fn_emit(ptr @.str12352) + call void @fn_emit(ptr @.str12466) %t26 = load ptr, ptr %t14 call void @fn_emit(ptr %t26) - call void @fn_emit(ptr @.str12353) - call void @fn_emit(ptr @.str12354) + call void @fn_emit(ptr @.str12467) + call void @fn_emit(ptr @.str12468) %t27 = load ptr, ptr %t8 call void @fn_emit(ptr %t27) - call void @fn_emit(ptr @.str12355) + call void @fn_emit(ptr @.str12469) %t28 = load ptr, ptr %t12 call void @fn_emit(ptr %t28) - call void @fn_emit(ptr @.str12356) + call void @fn_emit(ptr @.str12470) %t29 = load ptr, ptr %t10 call void @fn_emit(ptr %t29) - call void @fn_emit(ptr @.str12357) + call void @fn_emit(ptr @.str12471) %t30 = load ptr, ptr %t20 call void @fn_emit(ptr %t30) - call void @fn_emit(ptr @.str12358) - %t31 = call ptr @fn_emit_bind(ptr @.str12359) + call void @fn_emit(ptr @.str12472) + %t31 = call ptr @fn_emit_bind(ptr @.str12473) store ptr %t31, ptr %t32 %t33 = load ptr, ptr %t8 - %t34 = call ptr @lp_str_concat(ptr @.str12360, ptr %t33) - %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str12361) + %t34 = call ptr @lp_str_concat(ptr @.str12474, ptr %t33) + %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str12475) %t36 = load ptr, ptr %t32 %t37 = call ptr @lp_str_concat(ptr %t35, ptr %t36) %t38 = call ptr @fn_emit_bind(ptr %t37) store ptr %t38, ptr %t39 - call void @fn_emit(ptr @.str12362) + call void @fn_emit(ptr @.str12476) %t40 = load ptr, ptr %t39 call void @fn_emit(ptr %t40) - call void @fn_emit(ptr @.str12363) + call void @fn_emit(ptr @.str12477) %t41 = load ptr, ptr %t16 call void @fn_emit(ptr %t41) - call void @fn_emit(ptr @.str12364) + call void @fn_emit(ptr @.str12478) %t42 = load ptr, ptr %t22 call void @fn_emit(ptr %t42) - call void @fn_emit(ptr @.str12365) + call void @fn_emit(ptr @.str12479) %t43 = load ptr, ptr %t16 call void @fn_emit(ptr %t43) - call void @fn_emit(ptr @.str12366) + call void @fn_emit(ptr @.str12480) %t44 = call ptr @fn_nreg() store ptr %t44, ptr %t45 - call void @fn_emit(ptr @.str12367) + call void @fn_emit(ptr @.str12481) %t46 = load ptr, ptr %t45 call void @fn_emit(ptr %t46) - call void @fn_emit(ptr @.str12368) + call void @fn_emit(ptr @.str12482) %t47 = load ptr, ptr %t2 call void @fn_emit(ptr %t47) - call void @fn_emit(ptr @.str12369) + call void @fn_emit(ptr @.str12483) %t48 = load ptr, ptr %t8 call void @fn_emit(ptr %t48) - call void @fn_emit(ptr @.str12370) + call void @fn_emit(ptr @.str12484) %t49 = load ptr, ptr %t45 - %t50 = call ptr @lp_str_concat(ptr @.str12371, ptr %t49) + %t50 = call ptr @lp_str_concat(ptr @.str12485, ptr %t49) %t51 = call ptr @fn_emit_bind(ptr %t50) store ptr %t51, ptr %t52 %t53 = load ptr, ptr %t52 - %t54 = call ptr @lp_str_concat(ptr @.str12372, ptr %t53) - %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str12373) + %t54 = call ptr @lp_str_concat(ptr @.str12486, ptr %t53) + %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str12487) %t56 = load ptr, ptr %t6 %t57 = call ptr @lp_str_concat(ptr %t55, ptr %t56) %t58 = call ptr @fn_emit_bind(ptr %t57) store ptr %t58, ptr %t59 - call void @fn_emit(ptr @.str12374) + call void @fn_emit(ptr @.str12488) %t60 = load ptr, ptr %t59 call void @fn_emit(ptr %t60) - call void @fn_emit(ptr @.str12375) + call void @fn_emit(ptr @.str12489) %t61 = load ptr, ptr %t18 call void @fn_emit(ptr %t61) - call void @fn_emit(ptr @.str12376) + call void @fn_emit(ptr @.str12490) %t62 = load ptr, ptr %t20 call void @fn_emit(ptr %t62) - call void @fn_emit(ptr @.str12377) + call void @fn_emit(ptr @.str12491) %t63 = load ptr, ptr %t18 call void @fn_emit(ptr %t63) - call void @fn_emit(ptr @.str12378) + call void @fn_emit(ptr @.str12492) %t64 = call ptr @fn_nreg() store ptr %t64, ptr %t65 - call void @fn_emit(ptr @.str12379) + call void @fn_emit(ptr @.str12493) %t66 = load ptr, ptr %t65 call void @fn_emit(ptr %t66) - call void @fn_emit(ptr @.str12380) + call void @fn_emit(ptr @.str12494) %t67 = load ptr, ptr %t2 call void @fn_emit(ptr %t67) - call void @fn_emit(ptr @.str12381) + call void @fn_emit(ptr @.str12495) %t68 = load ptr, ptr %t8 call void @fn_emit(ptr %t68) - call void @fn_emit(ptr @.str12382) + call void @fn_emit(ptr @.str12496) %t69 = load ptr, ptr %t65 - %t70 = call ptr @lp_str_concat(ptr @.str12383, ptr %t69) + %t70 = call ptr @lp_str_concat(ptr @.str12497, ptr %t69) %t71 = call ptr @fn_emit_bind(ptr %t70) store ptr %t71, ptr %t72 - call void @fn_emit(ptr @.str12384) + call void @fn_emit(ptr @.str12498) %t73 = load ptr, ptr %t72 call void @fn_emit(ptr %t73) - call void @fn_emit(ptr @.str12385) - call void @fn_emit(ptr @.str12386) + call void @fn_emit(ptr @.str12499) + call void @fn_emit(ptr @.str12500) %t74 = load ptr, ptr %t20 call void @fn_emit(ptr %t74) - call void @fn_emit(ptr @.str12387) + call void @fn_emit(ptr @.str12501) %t75 = load ptr, ptr %t20 call void @fn_emit(ptr %t75) - call void @fn_emit(ptr @.str12388) + call void @fn_emit(ptr @.str12502) %t76 = load ptr, ptr %t10 call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str12389) + call void @fn_emit(ptr @.str12503) %t77 = load ptr, ptr %t8 call void @fn_emit(ptr %t77) - call void @fn_emit(ptr @.str12390) + call void @fn_emit(ptr @.str12504) %t78 = load ptr, ptr %t14 call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str12391) + call void @fn_emit(ptr @.str12505) %t79 = load ptr, ptr %t22 call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str12392) + call void @fn_emit(ptr @.str12506) br label %ret ret: ret void @@ -166356,7 +166992,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12393, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12507, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -166435,7 +167071,7 @@ wbody13: br i1 %t65, label %ixok15, label %ixbad16 ixbad16: %t66 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str12394, i32 %t60, i32 %t64) + call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str12508, i32 %t60, i32 %t64) call void @exit(i32 1) unreachable ixok15: @@ -166494,7 +167130,7 @@ wend14: %t101 = icmp ne i32 %t100, 0 br i1 %t101, label %then24, label %ifend26 then24: - %t102 = call ptr @fn_emit_bind(ptr @.str12395) + %t102 = call ptr @fn_emit_bind(ptr @.str12509) store ptr %t102, ptr %t103 store i32 0, ptr %t1 br label %wcond27 @@ -166518,7 +167154,7 @@ wbody28: br i1 %t117, label %ixok30, label %ixbad31 ixbad31: %t118 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t118, ptr @.fmt_bounds, ptr @.str12396, i32 %t112, i32 %t116) + call i32 (ptr, ptr, ...) @fprintf(ptr %t118, ptr @.fmt_bounds, ptr @.str12510, i32 %t112, i32 %t116) call void @exit(i32 1) unreachable ixok30: @@ -166566,8 +167202,8 @@ scend35: br i1 %t149, label %then36, label %ifend38 then36: %t150 = load ptr, ptr %t103 - %t151 = call ptr @lp_str_concat(ptr @.str12397, ptr %t150) - %t152 = call ptr @lp_str_concat(ptr %t151, ptr @.str12398) + %t151 = call ptr @lp_str_concat(ptr @.str12511, ptr %t150) + %t152 = call ptr @lp_str_concat(ptr %t151, ptr @.str12512) %t153 = load ptr, ptr %t121 %t154 = getelementptr inbounds %Cmp_Node, ptr %t153, i32 0, i32 6 %t155 = load ptr, ptr %t154 @@ -166577,32 +167213,32 @@ then36: %t159 = call ptr @lp_str_concat(ptr %t152, ptr %t158) %t160 = call ptr @fn_emit_bind(ptr %t159) store ptr %t160, ptr %t161 - %t162 = call ptr @fn_lbl(ptr @.str12399) + %t162 = call ptr @fn_lbl(ptr @.str12513) store ptr %t162, ptr %t163 - %t164 = call ptr @fn_lbl(ptr @.str12400) + %t164 = call ptr @fn_lbl(ptr @.str12514) store ptr %t164, ptr %t165 - call void @fn_emit(ptr @.str12401) + call void @fn_emit(ptr @.str12515) %t166 = load ptr, ptr %t161 call void @fn_emit(ptr %t166) - call void @fn_emit(ptr @.str12402) + call void @fn_emit(ptr @.str12516) %t167 = load ptr, ptr %t163 call void @fn_emit(ptr %t167) - call void @fn_emit(ptr @.str12403) + call void @fn_emit(ptr @.str12517) %t168 = load ptr, ptr %t165 call void @fn_emit(ptr %t168) - call void @fn_emit(ptr @.str12404) + call void @fn_emit(ptr @.str12518) %t169 = load ptr, ptr %t163 call void @fn_emit(ptr %t169) - call void @fn_emit(ptr @.str12405) + call void @fn_emit(ptr @.str12519) %t170 = load ptr, ptr %t121 call void @fn_emit_call_one(ptr %t170) - call void @fn_emit(ptr @.str12406) + call void @fn_emit(ptr @.str12520) %t171 = load ptr, ptr %t165 call void @fn_emit(ptr %t171) - call void @fn_emit(ptr @.str12407) + call void @fn_emit(ptr @.str12521) %t172 = load ptr, ptr %t165 call void @fn_emit(ptr %t172) - call void @fn_emit(ptr @.str12408) + call void @fn_emit(ptr @.str12522) br label %ifend38 ifend38: %t173 = load i32, ptr %t1 @@ -166617,7 +167253,7 @@ ifend26: %t176 = load ptr, ptr %t0 call void @fn_emit_dyn_systems_for_phase(ptr %t176) %t177 = load ptr, ptr %t0 - %t178 = call i32 @lp_str_eq(ptr %t177, ptr @.str12409) + %t178 = call i32 @lp_str_eq(ptr %t177, ptr @.str12523) %t179 = icmp ne i32 %t178, 0 br i1 %t179, label %then39, label %ifend41 then39: @@ -166632,9 +167268,9 @@ ifend41: %t185 = icmp ne i32 %t184, 0 br i1 %t185, label %then42, label %ifend44 then42: - %t186 = call ptr @fn_fn_sym(ptr @.str12411) - %t187 = call ptr @lp_str_concat(ptr @.str12410, ptr %t186) - %t188 = call ptr @lp_str_concat(ptr %t187, ptr @.str12412) + %t186 = call ptr @fn_fn_sym(ptr @.str12525) + %t187 = call ptr @lp_str_concat(ptr @.str12524, ptr %t186) + %t188 = call ptr @lp_str_concat(ptr %t187, ptr @.str12526) call void @fn_emit(ptr %t188) br label %ifend44 ifend44: @@ -166675,7 +167311,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12413, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12527, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -166704,7 +167340,7 @@ wend2: then8: br label %ret ifend10: - %t30 = call ptr @fn_emit_bind(ptr @.str12414) + %t30 = call ptr @fn_emit_bind(ptr @.str12528) store ptr %t30, ptr %t31 store i32 0, ptr %t1 br label %wcond11 @@ -166728,7 +167364,7 @@ wbody12: br i1 %t45, label %ixok14, label %ixbad15 ixbad15: %t46 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t46, ptr @.fmt_bounds, ptr @.str12415, i32 %t40, i32 %t44) + call i32 (ptr, ptr, ...) @fprintf(ptr %t46, ptr @.fmt_bounds, ptr @.str12529, i32 %t40, i32 %t44) call void @exit(i32 1) unreachable ixok14: @@ -166744,8 +167380,8 @@ ixok14: br i1 %t55, label %then16, label %ifend18 then16: %t56 = load ptr, ptr %t31 - %t57 = call ptr @lp_str_concat(ptr @.str12416, ptr %t56) - %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str12417) + %t57 = call ptr @lp_str_concat(ptr @.str12530, ptr %t56) + %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str12531) %t59 = load ptr, ptr %t49 %t60 = getelementptr inbounds %Cmp_Node, ptr %t59, i32 0, i32 2 %t61 = load i32, ptr %t60 @@ -166753,33 +167389,33 @@ then16: %t63 = call ptr @lp_str_concat(ptr %t58, ptr %t62) %t64 = call ptr @fn_emit_bind(ptr %t63) store ptr %t64, ptr %t65 - %t66 = call ptr @fn_lbl(ptr @.str12418) + %t66 = call ptr @fn_lbl(ptr @.str12532) store ptr %t66, ptr %t67 - %t68 = call ptr @fn_lbl(ptr @.str12419) + %t68 = call ptr @fn_lbl(ptr @.str12533) store ptr %t68, ptr %t69 - call void @fn_emit(ptr @.str12420) + call void @fn_emit(ptr @.str12534) %t70 = load ptr, ptr %t65 call void @fn_emit(ptr %t70) - call void @fn_emit(ptr @.str12421) + call void @fn_emit(ptr @.str12535) %t71 = load ptr, ptr %t67 call void @fn_emit(ptr %t71) - call void @fn_emit(ptr @.str12422) + call void @fn_emit(ptr @.str12536) %t72 = load ptr, ptr %t69 call void @fn_emit(ptr %t72) - call void @fn_emit(ptr @.str12423) + call void @fn_emit(ptr @.str12537) %t73 = load ptr, ptr %t67 call void @fn_emit(ptr %t73) - %t74 = call ptr @fn_fn_sym(ptr @.str12425) - %t75 = call ptr @lp_str_concat(ptr @.str12424, ptr %t74) - %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str12426) + %t74 = call ptr @fn_fn_sym(ptr @.str12539) + %t75 = call ptr @lp_str_concat(ptr @.str12538, ptr %t74) + %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str12540) call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str12427) + call void @fn_emit(ptr @.str12541) %t77 = load ptr, ptr %t69 call void @fn_emit(ptr %t77) - call void @fn_emit(ptr @.str12428) + call void @fn_emit(ptr @.str12542) %t78 = load ptr, ptr %t69 call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str12429) + call void @fn_emit(ptr @.str12543) br label %ifend18 ifend18: %t79 = load i32, ptr %t1 @@ -166814,7 +167450,7 @@ entry: call void @fn_loc_reset() store i32 0, ptr @g_nloop store i32 0, ptr @g_nself - store ptr @.str12430, ptr @g_ret_ty + store ptr @.str12544, ptr @g_ret_ty %t4 = call ptr @fn_buf_new() store ptr %t4, ptr %t5 %t6 = call ptr @fn_buf_new() @@ -166832,7 +167468,7 @@ entry: br i1 %t14, label %sc0, label %scend1 sc0: %t16 = load ptr, ptr %t1 - %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str12431) + %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str12545) %t18 = icmp ne i32 %t17, 0 %t19 = zext i1 %t18 to i32 store i32 %t19, ptr %t10 @@ -166842,28 +167478,28 @@ scend1: %t21 = icmp ne i32 %t20, 0 br i1 %t21, label %then2, label %ifend4 then2: - %t22 = call ptr @fn_find_fn(ptr @.str12432) + %t22 = call ptr @fn_find_fn(ptr @.str12546) %t23 = icmp ne ptr %t22, null %t24 = zext i1 %t23 to i32 %t25 = icmp ne i32 %t24, 0 br i1 %t25, label %then5, label %ifend7 then5: - %t26 = call ptr @fn_fn_sym(ptr @.str12434) - %t27 = call ptr @lp_str_concat(ptr @.str12433, ptr %t26) - %t28 = call ptr @lp_str_concat(ptr %t27, ptr @.str12435) + %t26 = call ptr @fn_fn_sym(ptr @.str12548) + %t27 = call ptr @lp_str_concat(ptr @.str12547, ptr %t26) + %t28 = call ptr @lp_str_concat(ptr %t27, ptr @.str12549) call void @fn_emit(ptr %t28) br label %ifend7 ifend7: - %t29 = call ptr @fn_fn_sym(ptr @.str12437) - %t30 = call ptr @lp_str_concat(ptr @.str12436, ptr %t29) - %t31 = call ptr @lp_str_concat(ptr %t30, ptr @.str12438) + %t29 = call ptr @fn_fn_sym(ptr @.str12551) + %t30 = call ptr @lp_str_concat(ptr @.str12550, ptr %t29) + %t31 = call ptr @lp_str_concat(ptr %t30, ptr @.str12552) call void @fn_emit(ptr %t31) %t32 = load ptr, ptr %t3 - %t33 = call ptr @lp_str_concat(ptr @.str12439, ptr %t32) + %t33 = call ptr @lp_str_concat(ptr @.str12553, ptr %t32) %t34 = call i32 @fn_ui_index_of(ptr %t33) %t35 = call ptr @fn_itoa(i32 %t34) call void @fn_emit(ptr %t35) - call void @fn_emit(ptr @.str12440) + call void @fn_emit(ptr @.str12554) br label %ifend4 ifend4: %t37 = load ptr, ptr %t3 @@ -166875,7 +167511,7 @@ ifend4: br i1 %t40, label %sc8, label %scend9 sc8: %t42 = load ptr, ptr %t1 - %t43 = call i32 @lp_str_eq(ptr %t42, ptr @.str12441) + %t43 = call i32 @lp_str_eq(ptr %t42, ptr @.str12555) %t44 = icmp ne i32 %t43, 0 %t45 = zext i1 %t44 to i32 store i32 %t45, ptr %t36 @@ -166885,9 +167521,9 @@ scend9: %t47 = icmp ne i32 %t46, 0 br i1 %t47, label %then10, label %ifend12 then10: - %t48 = call ptr @fn_fn_sym(ptr @.str12443) - %t49 = call ptr @lp_str_concat(ptr @.str12442, ptr %t48) - %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str12444) + %t48 = call ptr @fn_fn_sym(ptr @.str12557) + %t49 = call ptr @lp_str_concat(ptr @.str12556, ptr %t48) + %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str12558) call void @fn_emit(ptr %t50) br label %ifend12 ifend12: @@ -166902,8 +167538,8 @@ then13: br label %ifend15 ifend15: %t56 = load ptr, ptr %t0 - %t57 = call ptr @lp_str_concat(ptr @.str12445, ptr %t56) - %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str12446) + %t57 = call ptr @lp_str_concat(ptr @.str12559, ptr %t56) + %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str12560) %t59 = load ptr, ptr %t1 %t60 = call ptr @lp_str_concat(ptr %t58, ptr %t59) store ptr %t60, ptr %t61 @@ -166928,10 +167564,10 @@ scend17: %t75 = icmp ne i32 %t74, 0 br i1 %t75, label %then18, label %ifend20 then18: - call void @fn_emit(ptr @.str12447) + call void @fn_emit(ptr @.str12561) %t76 = load ptr, ptr %t61 call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str12448) + call void @fn_emit(ptr @.str12562) br label %ifend20 ifend20: %t77 = load i32, ptr @g_g_term @@ -166940,26 +167576,26 @@ ifend20: %t80 = icmp ne i32 %t79, 0 br i1 %t80, label %then21, label %ifend23 then21: - call void @fn_emit(ptr @.str12449) + call void @fn_emit(ptr @.str12563) br label %ifend23 ifend23: - call void @fn_emit(ptr @.str12450) + call void @fn_emit(ptr @.str12564) %t81 = load ptr, ptr %t8 store ptr %t81, ptr @g_code - call void @fn_emit(ptr @.str12451) + call void @fn_emit(ptr @.str12565) %t82 = load ptr, ptr %t1 call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str12452) + call void @fn_emit(ptr @.str12566) %t83 = load ptr, ptr %t0 call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str12453) + call void @fn_emit(ptr @.str12567) %t84 = load ptr, ptr @g_falloc %t85 = call ptr @fn_buf_str(ptr %t84) call void @fn_emit(ptr %t85) %t86 = load ptr, ptr %t5 %t87 = call ptr @fn_buf_str(ptr %t86) call void @fn_emit(ptr %t87) - call void @fn_emit(ptr @.str12454) + call void @fn_emit(ptr @.str12568) br label %ret ret: ret void @@ -166991,7 +167627,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12455, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12569, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -167009,7 +167645,7 @@ ixok3: %t26 = load ptr, ptr %t18 %t27 = getelementptr inbounds %Cmp_Node, ptr %t26, i32 0, i32 3 %t28 = load ptr, ptr %t27 - call void @fn_emit_scene_fn(ptr %t22, ptr @.str12456, ptr %t25, ptr %t28) + call void @fn_emit_scene_fn(ptr %t22, ptr @.str12570, ptr %t25, ptr %t28) %t29 = load ptr, ptr %t18 %t30 = getelementptr inbounds %Cmp_Node, ptr %t29, i32 0, i32 1 %t31 = load ptr, ptr %t30 @@ -167019,7 +167655,7 @@ ixok3: %t35 = load ptr, ptr %t18 %t36 = getelementptr inbounds %Cmp_Node, ptr %t35, i32 0, i32 3 %t37 = load ptr, ptr %t36 - call void @fn_emit_scene_fn(ptr %t31, ptr @.str12457, ptr %t34, ptr %t37) + call void @fn_emit_scene_fn(ptr %t31, ptr @.str12571, ptr %t34, ptr %t37) %t38 = load i32, ptr %t0 %t39 = add i32 %t38, 1 store i32 %t39, ptr %t0 @@ -167047,8 +167683,8 @@ entry: %t0 = alloca i32 %t18 = alloca ptr %t21 = alloca ptr - call void @fn_emit(ptr @.str12458) - call void @fn_emit(ptr @.str12459) + call void @fn_emit(ptr @.str12572) + call void @fn_emit(ptr @.str12573) store i32 0, ptr %t0 br label %wcond0 wcond0: @@ -167071,7 +167707,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12460, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12574, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -167081,45 +167717,45 @@ ixok3: %t19 = load i32, ptr %t0 %t20 = call ptr @fn_itoa(i32 %t19) store ptr %t20, ptr %t21 - call void @fn_emit(ptr @.str12461) + call void @fn_emit(ptr @.str12575) %t22 = load ptr, ptr %t21 call void @fn_emit(ptr %t22) - call void @fn_emit(ptr @.str12462) + call void @fn_emit(ptr @.str12576) %t23 = load ptr, ptr %t18 %t24 = getelementptr inbounds %Cmp_Node, ptr %t23, i32 0, i32 2 %t25 = load i32, ptr %t24 %t26 = call ptr @fn_itoa(i32 %t25) call void @fn_emit(ptr %t26) - call void @fn_emit(ptr @.str12463) - call void @fn_emit(ptr @.str12464) + call void @fn_emit(ptr @.str12577) + call void @fn_emit(ptr @.str12578) %t27 = load ptr, ptr %t21 call void @fn_emit(ptr %t27) - call void @fn_emit(ptr @.str12465) + call void @fn_emit(ptr @.str12579) %t28 = load ptr, ptr %t21 call void @fn_emit(ptr %t28) - call void @fn_emit(ptr @.str12466) + call void @fn_emit(ptr @.str12580) %t29 = load ptr, ptr %t21 call void @fn_emit(ptr %t29) - call void @fn_emit(ptr @.str12467) - call void @fn_emit(ptr @.str12468) + call void @fn_emit(ptr @.str12581) + call void @fn_emit(ptr @.str12582) %t30 = load ptr, ptr %t21 call void @fn_emit(ptr %t30) - call void @fn_emit(ptr @.str12469) + call void @fn_emit(ptr @.str12583) %t31 = load ptr, ptr %t18 %t32 = getelementptr inbounds %Cmp_Node, ptr %t31, i32 0, i32 1 %t33 = load ptr, ptr %t32 call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str12470) - call void @fn_emit(ptr @.str12471) + call void @fn_emit(ptr @.str12584) + call void @fn_emit(ptr @.str12585) %t34 = load ptr, ptr %t21 call void @fn_emit(ptr %t34) - call void @fn_emit(ptr @.str12472) + call void @fn_emit(ptr @.str12586) %t35 = load i32, ptr %t0 %t36 = add i32 %t35, 1 store i32 %t36, ptr %t0 br label %wcond0 wend2: - call void @fn_emit(ptr @.str12473) + call void @fn_emit(ptr @.str12587) br label %ret ret: ret void @@ -167155,7 +167791,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12474, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12588, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -167173,7 +167809,7 @@ ixok3: call void @fn_loc_reset() store i32 0, ptr @g_nloop store i32 0, ptr @g_nself - store ptr @.str12475, ptr @g_ret_ty + store ptr @.str12589, ptr @g_ret_ty %t24 = call ptr @fn_buf_new() store ptr %t24, ptr %t25 %t26 = call ptr @fn_buf_new() @@ -167190,21 +167826,21 @@ ixok3: %t35 = icmp ne i32 %t34, 0 br i1 %t35, label %then5, label %ifend7 then5: - %t36 = call ptr @fn_emit_alloca(ptr @.str12476) + %t36 = call ptr @fn_emit_alloca(ptr @.str12590) store ptr %t36, ptr %t37 - call void @fn_emit(ptr @.str12477) + call void @fn_emit(ptr @.str12591) %t38 = load ptr, ptr %t37 call void @fn_emit(ptr %t38) - call void @fn_emit(ptr @.str12478) + call void @fn_emit(ptr @.str12592) %t39 = load ptr, ptr %t18 %t40 = getelementptr inbounds %Cmp_Node, ptr %t39, i32 0, i32 3 %t41 = load ptr, ptr %t40 %t42 = load ptr, ptr %t37 - call void @fn_loc_push(ptr %t41, ptr %t42, ptr @.str12479) + call void @fn_loc_push(ptr %t41, ptr %t42, ptr @.str12593) br label %ifend7 ifend7: %t43 = load ptr, ptr %t23 - call void @fn_emit_bind_props(ptr %t43, ptr @.str12480) + call void @fn_emit_bind_props(ptr %t43, ptr @.str12594) %t44 = load ptr, ptr %t18 %t45 = getelementptr inbounds %Cmp_Node, ptr %t44, i32 0, i32 4 %t46 = load ptr, ptr %t45 @@ -167215,25 +167851,25 @@ ifend7: %t50 = icmp ne i32 %t49, 0 br i1 %t50, label %then8, label %ifend10 then8: - call void @fn_emit(ptr @.str12481) + call void @fn_emit(ptr @.str12595) br label %ifend10 ifend10: - call void @fn_emit(ptr @.str12482) + call void @fn_emit(ptr @.str12596) %t51 = load ptr, ptr %t28 store ptr %t51, ptr @g_code - call void @fn_emit(ptr @.str12483) + call void @fn_emit(ptr @.str12597) %t52 = load ptr, ptr %t18 %t53 = getelementptr inbounds %Cmp_Node, ptr %t52, i32 0, i32 1 %t54 = load ptr, ptr %t53 call void @fn_emit(ptr %t54) - call void @fn_emit(ptr @.str12484) + call void @fn_emit(ptr @.str12598) %t55 = load ptr, ptr @g_falloc %t56 = call ptr @fn_buf_str(ptr %t55) call void @fn_emit(ptr %t56) %t57 = load ptr, ptr %t25 %t58 = call ptr @fn_buf_str(ptr %t57) call void @fn_emit(ptr %t58) - call void @fn_emit(ptr @.str12485) + call void @fn_emit(ptr @.str12599) %t59 = load i32, ptr %t0 %t60 = add i32 %t59, 1 store i32 %t60, ptr %t0 @@ -167248,11 +167884,12 @@ ret: define void @fn_emit_world_despawn_fn() { entry: %t7 = alloca ptr - %t9 = alloca i32 - %t29 = alloca ptr - %t32 = alloca ptr - %t45 = alloca ptr - call void @fn_emit(ptr @.str12486) + %t9 = alloca ptr + %t11 = alloca i32 + %t31 = alloca ptr + %t34 = alloca ptr + %t47 = alloca ptr + call void @fn_emit(ptr @.str12600) %t0 = load ptr, ptr @g_g_ondespawn %t1 = getelementptr inbounds %LSlice, ptr %t0, i32 0, i32 1 %t2 = load i32, ptr %t1 @@ -167263,116 +167900,118 @@ entry: then0: %t6 = call ptr @fn_itoa(i32 1024) store ptr %t6, ptr %t7 - call void @fn_emit(ptr @.str12487) - %t8 = load ptr, ptr %t7 - call void @fn_emit(ptr %t8) - call void @fn_emit(ptr @.str12488) - call void @fn_emit(ptr @.str12489) - store i32 0, ptr %t9 + %t8 = call ptr @fn_ecs_base(ptr @.str12601) + store ptr %t8, ptr %t9 + call void @fn_emit(ptr @.str12602) + %t10 = load ptr, ptr %t9 + call void @fn_emit(ptr %t10) + call void @fn_emit(ptr @.str12603) + call void @fn_emit(ptr @.str12604) + store i32 0, ptr %t11 br label %wcond3 wcond3: - %t10 = load i32, ptr %t9 - %t11 = load ptr, ptr @g_g_ondespawn - %t12 = getelementptr inbounds %LSlice, ptr %t11, i32 0, i32 1 - %t13 = load i32, ptr %t12 - %t14 = icmp slt i32 %t10, %t13 - %t15 = zext i1 %t14 to i32 - %t16 = icmp ne i32 %t15, 0 - br i1 %t16, label %wbody4, label %wend5 + %t12 = load i32, ptr %t11 + %t13 = load ptr, ptr @g_g_ondespawn + %t14 = getelementptr inbounds %LSlice, ptr %t13, i32 0, i32 1 + %t15 = load i32, ptr %t14 + %t16 = icmp slt i32 %t12, %t15 + %t17 = zext i1 %t16 to i32 + %t18 = icmp ne i32 %t17, 0 + br i1 %t18, label %wbody4, label %wend5 wbody4: - %t17 = load ptr, ptr @g_g_ondespawn - %t18 = load i32, ptr %t9 - %t19 = getelementptr inbounds %LSlice, ptr %t17, i32 0, i32 0 - %t20 = load ptr, ptr %t19 - %t21 = getelementptr inbounds %LSlice, ptr %t17, i32 0, i32 1 - %t22 = load i32, ptr %t21 - %t23 = icmp ult i32 %t18, %t22 - br i1 %t23, label %ixok6, label %ixbad7 + %t19 = load ptr, ptr @g_g_ondespawn + %t20 = load i32, ptr %t11 + %t21 = getelementptr inbounds %LSlice, ptr %t19, i32 0, i32 0 + %t22 = load ptr, ptr %t21 + %t23 = getelementptr inbounds %LSlice, ptr %t19, i32 0, i32 1 + %t24 = load i32, ptr %t23 + %t25 = icmp ult i32 %t20, %t24 + br i1 %t25, label %ixok6, label %ixbad7 ixbad7: - %t24 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str12490, i32 %t18, i32 %t22) + %t26 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str12605, i32 %t20, i32 %t24) call void @exit(i32 1) unreachable ixok6: - %t25 = getelementptr inbounds ptr, ptr %t20, i32 %t18 - %t26 = load ptr, ptr %t25 - %t27 = getelementptr inbounds %Cmp_Node, ptr %t26, i32 0, i32 1 + %t27 = getelementptr inbounds ptr, ptr %t22, i32 %t20 %t28 = load ptr, ptr %t27 - store ptr %t28, ptr %t29 - %t30 = load i32, ptr %t9 - %t31 = call ptr @fn_itoa(i32 %t30) - store ptr %t31, ptr %t32 - call void @fn_emit(ptr @.str12491) - %t33 = load ptr, ptr %t32 - call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str12492) - %t34 = load ptr, ptr %t29 - %t35 = call i32 @fn_find_arch_id(ptr %t34) - %t36 = call ptr @fn_itoa(i32 %t35) - call void @fn_emit(ptr %t36) - call void @fn_emit(ptr @.str12493) - call void @fn_emit(ptr @.str12494) - %t37 = load ptr, ptr %t32 - call void @fn_emit(ptr %t37) - call void @fn_emit(ptr @.str12495) - %t38 = load ptr, ptr %t32 + %t29 = getelementptr inbounds %Cmp_Node, ptr %t28, i32 0, i32 1 + %t30 = load ptr, ptr %t29 + store ptr %t30, ptr %t31 + %t32 = load i32, ptr %t11 + %t33 = call ptr @fn_itoa(i32 %t32) + store ptr %t33, ptr %t34 + call void @fn_emit(ptr @.str12606) + %t35 = load ptr, ptr %t34 + call void @fn_emit(ptr %t35) + call void @fn_emit(ptr @.str12607) + %t36 = load ptr, ptr %t31 + %t37 = call i32 @fn_find_arch_id(ptr %t36) + %t38 = call ptr @fn_itoa(i32 %t37) call void @fn_emit(ptr %t38) - call void @fn_emit(ptr @.str12496) - %t39 = load ptr, ptr %t32 + call void @fn_emit(ptr @.str12608) + call void @fn_emit(ptr @.str12609) + %t39 = load ptr, ptr %t34 call void @fn_emit(ptr %t39) - call void @fn_emit(ptr @.str12497) - call void @fn_emit(ptr @.str12498) - %t40 = load ptr, ptr %t32 + call void @fn_emit(ptr @.str12610) + %t40 = load ptr, ptr %t34 call void @fn_emit(ptr %t40) - call void @fn_emit(ptr @.str12499) - %t41 = load ptr, ptr %t29 + call void @fn_emit(ptr @.str12611) + %t41 = load ptr, ptr %t34 call void @fn_emit(ptr %t41) - call void @fn_emit(ptr @.str12500) - %t42 = load ptr, ptr %t29 - %t43 = call ptr @lp_str_concat(ptr @.str12501, ptr %t42) - %t44 = call ptr @lp_str_concat(ptr %t43, ptr @.str12502) - store ptr %t44, ptr %t45 - %t46 = load ptr, ptr %t45 - %t47 = call ptr @fn_find_event(ptr %t46) - %t48 = icmp ne ptr %t47, null - %t49 = zext i1 %t48 to i32 - %t50 = icmp ne i32 %t49, 0 - br i1 %t50, label %then8, label %ifend10 + call void @fn_emit(ptr @.str12612) + call void @fn_emit(ptr @.str12613) + %t42 = load ptr, ptr %t34 + call void @fn_emit(ptr %t42) + call void @fn_emit(ptr @.str12614) + %t43 = load ptr, ptr %t31 + call void @fn_emit(ptr %t43) + call void @fn_emit(ptr @.str12615) + %t44 = load ptr, ptr %t31 + %t45 = call ptr @lp_str_concat(ptr @.str12616, ptr %t44) + %t46 = call ptr @lp_str_concat(ptr %t45, ptr @.str12617) + store ptr %t46, ptr %t47 + %t48 = load ptr, ptr %t47 + %t49 = call ptr @fn_find_event(ptr %t48) + %t50 = icmp ne ptr %t49, null + %t51 = zext i1 %t50 to i32 + %t52 = icmp ne i32 %t51, 0 + br i1 %t52, label %then8, label %ifend10 then8: - call void @fn_emit(ptr @.str12503) - %t51 = load ptr, ptr %t45 - call void @fn_emit(ptr %t51) - call void @fn_emit(ptr @.str12504) + call void @fn_emit(ptr @.str12618) + %t53 = load ptr, ptr %t47 + call void @fn_emit(ptr %t53) + call void @fn_emit(ptr @.str12619) br label %ifend10 ifend10: - call void @fn_emit(ptr @.str12505) - %t52 = load ptr, ptr %t32 - call void @fn_emit(ptr %t52) - call void @fn_emit(ptr @.str12506) - call void @fn_emit(ptr @.str12507) - %t53 = load ptr, ptr %t32 - call void @fn_emit(ptr %t53) - call void @fn_emit(ptr @.str12508) - %t54 = load i32, ptr %t9 - %t55 = add i32 %t54, 1 - store i32 %t55, ptr %t9 + call void @fn_emit(ptr @.str12620) + %t54 = load ptr, ptr %t34 + call void @fn_emit(ptr %t54) + call void @fn_emit(ptr @.str12621) + call void @fn_emit(ptr @.str12622) + %t55 = load ptr, ptr %t34 + call void @fn_emit(ptr %t55) + call void @fn_emit(ptr @.str12623) + %t56 = load i32, ptr %t11 + %t57 = add i32 %t56, 1 + store i32 %t57, ptr %t11 br label %wcond3 wend5: br label %ifend2 ifend2: - %t56 = load ptr, ptr @g_g_events - %t57 = getelementptr inbounds %LSlice, ptr %t56, i32 0, i32 1 - %t58 = load i32, ptr %t57 - %t59 = icmp sgt i32 %t58, 0 - %t60 = zext i1 %t59 to i32 - %t61 = icmp ne i32 %t60, 0 - br i1 %t61, label %then11, label %ifend13 + %t58 = load ptr, ptr @g_g_events + %t59 = getelementptr inbounds %LSlice, ptr %t58, i32 0, i32 1 + %t60 = load i32, ptr %t59 + %t61 = icmp sgt i32 %t60, 0 + %t62 = zext i1 %t61 to i32 + %t63 = icmp ne i32 %t62, 0 + br i1 %t63, label %then11, label %ifend13 then11: - call void @fn_emit(ptr @.str12509) + call void @fn_emit(ptr @.str12624) br label %ifend13 ifend13: - call void @fn_emit(ptr @.str12510) - call void @fn_emit(ptr @.str12511) + call void @fn_emit(ptr @.str12625) + call void @fn_emit(ptr @.str12626) br label %ret ret: ret void @@ -167381,10 +168020,12 @@ ret: define void @fn_emit_despawn_all_fn() { entry: %t7 = alloca ptr - %t10 = alloca i32 - %t30 = alloca ptr - %t33 = alloca ptr - %t46 = alloca ptr + %t9 = alloca ptr + %t12 = alloca ptr + %t14 = alloca i32 + %t34 = alloca ptr + %t37 = alloca ptr + %t50 = alloca ptr %t0 = load ptr, ptr @g_g_ondespawn %t1 = getelementptr inbounds %LSlice, ptr %t0, i32 0, i32 1 %t2 = load i32, ptr %t1 @@ -167397,114 +168038,120 @@ then0: ifend2: %t6 = call ptr @fn_itoa(i32 1024) store ptr %t6, ptr %t7 - call void @fn_emit(ptr @.str12512) - call void @fn_emit(ptr @.str12513) - call void @fn_emit(ptr @.str12514) - call void @fn_emit(ptr @.str12515) - call void @fn_emit(ptr @.str12516) - %t8 = load ptr, ptr %t7 - call void @fn_emit(ptr %t8) - call void @fn_emit(ptr @.str12517) - call void @fn_emit(ptr @.str12518) - call void @fn_emit(ptr @.str12519) - call void @fn_emit(ptr @.str12520) - %t9 = load ptr, ptr %t7 - call void @fn_emit(ptr %t9) - call void @fn_emit(ptr @.str12521) - call void @fn_emit(ptr @.str12522) - store i32 0, ptr %t10 + call void @fn_emit(ptr @.str12627) + call void @fn_emit(ptr @.str12628) + call void @fn_emit(ptr @.str12629) + call void @fn_emit(ptr @.str12630) + call void @fn_emit(ptr @.str12631) + %t8 = call ptr @fn_ecs_base(ptr @.str12632) + store ptr %t8, ptr %t9 + call void @fn_emit(ptr @.str12633) + %t10 = load ptr, ptr %t9 + call void @fn_emit(ptr %t10) + call void @fn_emit(ptr @.str12634) + call void @fn_emit(ptr @.str12635) + call void @fn_emit(ptr @.str12636) + call void @fn_emit(ptr @.str12637) + %t11 = call ptr @fn_ecs_base(ptr @.str12638) + store ptr %t11, ptr %t12 + call void @fn_emit(ptr @.str12639) + %t13 = load ptr, ptr %t12 + call void @fn_emit(ptr %t13) + call void @fn_emit(ptr @.str12640) + call void @fn_emit(ptr @.str12641) + store i32 0, ptr %t14 br label %wcond3 wcond3: - %t11 = load i32, ptr %t10 - %t12 = load ptr, ptr @g_g_ondespawn - %t13 = getelementptr inbounds %LSlice, ptr %t12, i32 0, i32 1 - %t14 = load i32, ptr %t13 - %t15 = icmp slt i32 %t11, %t14 - %t16 = zext i1 %t15 to i32 - %t17 = icmp ne i32 %t16, 0 - br i1 %t17, label %wbody4, label %wend5 + %t15 = load i32, ptr %t14 + %t16 = load ptr, ptr @g_g_ondespawn + %t17 = getelementptr inbounds %LSlice, ptr %t16, i32 0, i32 1 + %t18 = load i32, ptr %t17 + %t19 = icmp slt i32 %t15, %t18 + %t20 = zext i1 %t19 to i32 + %t21 = icmp ne i32 %t20, 0 + br i1 %t21, label %wbody4, label %wend5 wbody4: - %t18 = load ptr, ptr @g_g_ondespawn - %t19 = load i32, ptr %t10 - %t20 = getelementptr inbounds %LSlice, ptr %t18, i32 0, i32 0 - %t21 = load ptr, ptr %t20 - %t22 = getelementptr inbounds %LSlice, ptr %t18, i32 0, i32 1 - %t23 = load i32, ptr %t22 - %t24 = icmp ult i32 %t19, %t23 - br i1 %t24, label %ixok6, label %ixbad7 + %t22 = load ptr, ptr @g_g_ondespawn + %t23 = load i32, ptr %t14 + %t24 = getelementptr inbounds %LSlice, ptr %t22, i32 0, i32 0 + %t25 = load ptr, ptr %t24 + %t26 = getelementptr inbounds %LSlice, ptr %t22, i32 0, i32 1 + %t27 = load i32, ptr %t26 + %t28 = icmp ult i32 %t23, %t27 + br i1 %t28, label %ixok6, label %ixbad7 ixbad7: - %t25 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str12523, i32 %t19, i32 %t23) + %t29 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str12642, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok6: - %t26 = getelementptr inbounds ptr, ptr %t21, i32 %t19 - %t27 = load ptr, ptr %t26 - %t28 = getelementptr inbounds %Cmp_Node, ptr %t27, i32 0, i32 1 - %t29 = load ptr, ptr %t28 - store ptr %t29, ptr %t30 - %t31 = load i32, ptr %t10 - %t32 = call ptr @fn_itoa(i32 %t31) - store ptr %t32, ptr %t33 - call void @fn_emit(ptr @.str12524) - %t34 = load ptr, ptr %t33 - call void @fn_emit(ptr %t34) - call void @fn_emit(ptr @.str12525) - %t35 = load ptr, ptr %t30 - %t36 = call i32 @fn_find_arch_id(ptr %t35) - %t37 = call ptr @fn_itoa(i32 %t36) - call void @fn_emit(ptr %t37) - call void @fn_emit(ptr @.str12526) - call void @fn_emit(ptr @.str12527) - %t38 = load ptr, ptr %t33 + %t30 = getelementptr inbounds ptr, ptr %t25, i32 %t23 + %t31 = load ptr, ptr %t30 + %t32 = getelementptr inbounds %Cmp_Node, ptr %t31, i32 0, i32 1 + %t33 = load ptr, ptr %t32 + store ptr %t33, ptr %t34 + %t35 = load i32, ptr %t14 + %t36 = call ptr @fn_itoa(i32 %t35) + store ptr %t36, ptr %t37 + call void @fn_emit(ptr @.str12643) + %t38 = load ptr, ptr %t37 call void @fn_emit(ptr %t38) - call void @fn_emit(ptr @.str12528) - %t39 = load ptr, ptr %t33 - call void @fn_emit(ptr %t39) - call void @fn_emit(ptr @.str12529) - %t40 = load ptr, ptr %t33 - call void @fn_emit(ptr %t40) - call void @fn_emit(ptr @.str12530) - call void @fn_emit(ptr @.str12531) - %t41 = load ptr, ptr %t33 + call void @fn_emit(ptr @.str12644) + %t39 = load ptr, ptr %t34 + %t40 = call i32 @fn_find_arch_id(ptr %t39) + %t41 = call ptr @fn_itoa(i32 %t40) call void @fn_emit(ptr %t41) - call void @fn_emit(ptr @.str12532) - %t42 = load ptr, ptr %t30 + call void @fn_emit(ptr @.str12645) + call void @fn_emit(ptr @.str12646) + %t42 = load ptr, ptr %t37 call void @fn_emit(ptr %t42) - call void @fn_emit(ptr @.str12533) - %t43 = load ptr, ptr %t30 - %t44 = call ptr @lp_str_concat(ptr @.str12534, ptr %t43) - %t45 = call ptr @lp_str_concat(ptr %t44, ptr @.str12535) - store ptr %t45, ptr %t46 - %t47 = load ptr, ptr %t46 - %t48 = call ptr @fn_find_event(ptr %t47) - %t49 = icmp ne ptr %t48, null - %t50 = zext i1 %t49 to i32 - %t51 = icmp ne i32 %t50, 0 - br i1 %t51, label %then8, label %ifend10 + call void @fn_emit(ptr @.str12647) + %t43 = load ptr, ptr %t37 + call void @fn_emit(ptr %t43) + call void @fn_emit(ptr @.str12648) + %t44 = load ptr, ptr %t37 + call void @fn_emit(ptr %t44) + call void @fn_emit(ptr @.str12649) + call void @fn_emit(ptr @.str12650) + %t45 = load ptr, ptr %t37 + call void @fn_emit(ptr %t45) + call void @fn_emit(ptr @.str12651) + %t46 = load ptr, ptr %t34 + call void @fn_emit(ptr %t46) + call void @fn_emit(ptr @.str12652) + %t47 = load ptr, ptr %t34 + %t48 = call ptr @lp_str_concat(ptr @.str12653, ptr %t47) + %t49 = call ptr @lp_str_concat(ptr %t48, ptr @.str12654) + store ptr %t49, ptr %t50 + %t51 = load ptr, ptr %t50 + %t52 = call ptr @fn_find_event(ptr %t51) + %t53 = icmp ne ptr %t52, null + %t54 = zext i1 %t53 to i32 + %t55 = icmp ne i32 %t54, 0 + br i1 %t55, label %then8, label %ifend10 then8: - call void @fn_emit(ptr @.str12536) - %t52 = load ptr, ptr %t46 - call void @fn_emit(ptr %t52) - call void @fn_emit(ptr @.str12537) + call void @fn_emit(ptr @.str12655) + %t56 = load ptr, ptr %t50 + call void @fn_emit(ptr %t56) + call void @fn_emit(ptr @.str12656) br label %ifend10 ifend10: - call void @fn_emit(ptr @.str12538) - %t53 = load ptr, ptr %t33 - call void @fn_emit(ptr %t53) - call void @fn_emit(ptr @.str12539) - call void @fn_emit(ptr @.str12540) - %t54 = load ptr, ptr %t33 - call void @fn_emit(ptr %t54) - call void @fn_emit(ptr @.str12541) - %t55 = load i32, ptr %t10 - %t56 = add i32 %t55, 1 - store i32 %t56, ptr %t10 + call void @fn_emit(ptr @.str12657) + %t57 = load ptr, ptr %t37 + call void @fn_emit(ptr %t57) + call void @fn_emit(ptr @.str12658) + call void @fn_emit(ptr @.str12659) + %t58 = load ptr, ptr %t37 + call void @fn_emit(ptr %t58) + call void @fn_emit(ptr @.str12660) + %t59 = load i32, ptr %t14 + %t60 = add i32 %t59, 1 + store i32 %t60, ptr %t14 br label %wcond3 wend5: - call void @fn_emit(ptr @.str12542) - call void @fn_emit(ptr @.str12543) - call void @fn_emit(ptr @.str12544) + call void @fn_emit(ptr @.str12661) + call void @fn_emit(ptr @.str12662) + call void @fn_emit(ptr @.str12663) br label %ret ret: ret void @@ -167549,7 +168196,7 @@ entry: %t385 = alloca i32 %t405 = alloca ptr %t408 = alloca ptr - call void @fn_emith(ptr @.str12545) + call void @fn_emith(ptr @.str12664) store i32 0, ptr %t0 br label %wcond0 wcond0: @@ -167572,7 +168219,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12546, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12665, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -167585,10 +168232,10 @@ ixok3: store ptr %t21, ptr %t22 %t23 = call ptr @fn_itoa(i32 16) store ptr %t23, ptr %t24 - call void @fn_emith(ptr @.str12547) + call void @fn_emith(ptr @.str12666) %t25 = load ptr, ptr %t22 call void @fn_emith(ptr %t25) - call void @fn_emith(ptr @.str12548) + call void @fn_emith(ptr @.str12667) store i32 0, ptr %t26 br label %wcond5 wcond5: @@ -167609,7 +168256,7 @@ wbody6: %t39 = icmp ne i32 %t38, 0 br i1 %t39, label %then8, label %ifend10 then8: - call void @fn_emith(ptr @.str12549) + call void @fn_emith(ptr @.str12668) br label %ifend10 ifend10: %t40 = load ptr, ptr %t18 @@ -167624,7 +168271,7 @@ ifend10: br i1 %t48, label %ixok11, label %ixbad12 ixbad12: %t49 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str12550, i32 %t43, i32 %t47) + call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str12669, i32 %t43, i32 %t47) call void @exit(i32 1) unreachable ixok11: @@ -167657,118 +168304,119 @@ then13: %t70 = icmp ne i32 %t69, 0 br i1 %t70, label %then16, label %ifend18 then16: - call void @fn_emith(ptr @.str12551) + call void @fn_emith(ptr @.str12670) br label %ifend18 ifend18: - call void @fn_emith(ptr @.str12552) + call void @fn_emith(ptr @.str12671) br label %ifend15 ifend15: - call void @fn_emith(ptr @.str12553) - call void @fn_emith(ptr @.str12554) + call void @fn_emith(ptr @.str12672) + call void @fn_emith(ptr @.str12673) %t71 = load ptr, ptr %t22 call void @fn_emith(ptr %t71) - call void @fn_emith(ptr @.str12555) + call void @fn_emith(ptr @.str12674) %t72 = load ptr, ptr %t24 call void @fn_emith(ptr %t72) - call void @fn_emith(ptr @.str12556) - call void @fn_emith(ptr @.str12557) + call void @fn_emith(ptr @.str12675) + call void @fn_emith(ptr @.str12676) %t73 = load ptr, ptr %t22 call void @fn_emith(ptr %t73) - call void @fn_emith(ptr @.str12558) - call void @fn_emith(ptr @.str12559) + call void @fn_emith(ptr @.str12677) + call void @fn_emith(ptr @.str12678) %t74 = load ptr, ptr %t22 call void @fn_emith(ptr %t74) - call void @fn_emith(ptr @.str12560) + call void @fn_emith(ptr @.str12679) %t75 = load ptr, ptr %t24 call void @fn_emith(ptr %t75) - call void @fn_emith(ptr @.str12561) - call void @fn_emit(ptr @.str12562) + call void @fn_emith(ptr @.str12680) + call void @fn_emit(ptr @.str12681) %t76 = load ptr, ptr %t22 call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str12563) - call void @fn_emit(ptr @.str12564) + call void @fn_emit(ptr @.str12682) + call void @fn_emit(ptr @.str12683) %t77 = load ptr, ptr %t22 call void @fn_emit(ptr %t77) - call void @fn_emit(ptr @.str12565) - call void @fn_emit(ptr @.str12566) + call void @fn_emit(ptr @.str12684) + call void @fn_emit(ptr @.str12685) %t78 = load ptr, ptr %t24 call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str12567) - call void @fn_emit(ptr @.str12568) - call void @fn_emit(ptr @.str12569) + call void @fn_emit(ptr @.str12686) + call void @fn_emit(ptr @.str12687) + call void @fn_emit(ptr @.str12688) %t79 = load ptr, ptr %t24 call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str12570) + call void @fn_emit(ptr @.str12689) %t80 = load ptr, ptr %t22 call void @fn_emit(ptr %t80) - call void @fn_emit(ptr @.str12571) - call void @fn_emit(ptr @.str12572) - call void @fn_emit(ptr @.str12573) + call void @fn_emit(ptr @.str12690) + call void @fn_emit(ptr @.str12691) + call void @fn_emit(ptr @.str12692) %t81 = load ptr, ptr %t24 call void @fn_emit(ptr %t81) - call void @fn_emit(ptr @.str12574) + call void @fn_emit(ptr @.str12693) %t82 = load ptr, ptr %t22 call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str12575) - call void @fn_emit(ptr @.str12576) - call void @fn_emit(ptr @.str12577) + call void @fn_emit(ptr @.str12694) + call void @fn_emit(ptr @.str12695) + call void @fn_emit(ptr @.str12696) %t83 = load ptr, ptr %t22 call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str12578) - call void @fn_emit(ptr @.str12579) - call void @fn_emit(ptr @.str12580) + call void @fn_emit(ptr @.str12697) + call void @fn_emit(ptr @.str12698) + call void @fn_emit(ptr @.str12699) %t84 = load ptr, ptr %t22 call void @fn_emit(ptr %t84) - call void @fn_emit(ptr @.str12581) - call void @fn_emit(ptr @.str12582) + call void @fn_emit(ptr @.str12700) + call void @fn_emit(ptr @.str12701) %t85 = load ptr, ptr %t22 call void @fn_emit(ptr %t85) - call void @fn_emit(ptr @.str12583) - call void @fn_emit(ptr @.str12584) + call void @fn_emit(ptr @.str12702) + call void @fn_emit(ptr @.str12703) %t86 = load ptr, ptr %t24 call void @fn_emit(ptr %t86) - call void @fn_emit(ptr @.str12585) - call void @fn_emit(ptr @.str12586) - call void @fn_emit(ptr @.str12587) + call void @fn_emit(ptr @.str12704) + call void @fn_emit(ptr @.str12705) + call void @fn_emit(ptr @.str12706) %t87 = load ptr, ptr %t24 call void @fn_emit(ptr %t87) - call void @fn_emit(ptr @.str12588) + call void @fn_emit(ptr @.str12707) %t88 = load ptr, ptr %t22 call void @fn_emit(ptr %t88) - call void @fn_emit(ptr @.str12589) - call void @fn_emit(ptr @.str12590) - call void @fn_emit(ptr @.str12591) + call void @fn_emit(ptr @.str12708) + call void @fn_emit(ptr @.str12709) + call void @fn_emit(ptr @.str12710) %t89 = load ptr, ptr %t24 call void @fn_emit(ptr %t89) - call void @fn_emit(ptr @.str12592) + call void @fn_emit(ptr @.str12711) %t90 = load ptr, ptr %t22 call void @fn_emit(ptr %t90) - call void @fn_emit(ptr @.str12593) - call void @fn_emit(ptr @.str12594) - call void @fn_emit(ptr @.str12595) + call void @fn_emit(ptr @.str12712) + call void @fn_emit(ptr @.str12713) + call void @fn_emit(ptr @.str12714) %t91 = load ptr, ptr %t22 call void @fn_emit(ptr %t91) - call void @fn_emit(ptr @.str12596) - call void @fn_emit(ptr @.str12597) - call void @fn_emit(ptr @.str12598) + call void @fn_emit(ptr @.str12715) + call void @fn_emit(ptr @.str12716) + call void @fn_emit(ptr @.str12717) %t92 = load ptr, ptr %t22 call void @fn_emit(ptr %t92) - call void @fn_emit(ptr @.str12599) - call void @fn_emit(ptr @.str12600) + call void @fn_emit(ptr @.str12718) + call void @fn_emit(ptr @.str12719) %t93 = load ptr, ptr %t22 call void @fn_emit(ptr %t93) - call void @fn_emit(ptr @.str12601) - call void @fn_emit(ptr @.str12602) - call void @fn_emit(ptr @.str12603) - call void @fn_emit(ptr @.str12604) + call void @fn_emit(ptr @.str12720) + call void @fn_emit(ptr @.str12721) + call void @fn_emit(ptr @.str12722) + call void @fn_emit(ptr @.str12723) + call void @fn_emit(ptr @.str12724) %t94 = load ptr, ptr %t24 call void @fn_emit(ptr %t94) - call void @fn_emit(ptr @.str12605) + call void @fn_emit(ptr @.str12725) %t95 = load ptr, ptr %t22 call void @fn_emit(ptr %t95) - call void @fn_emit(ptr @.str12606) - call void @fn_emit(ptr @.str12607) - call void @fn_emit(ptr @.str12608) + call void @fn_emit(ptr @.str12726) + call void @fn_emit(ptr @.str12727) + call void @fn_emit(ptr @.str12728) store i32 0, ptr @g_ll_t store i32 0, ptr @g_ll_lbl store i32 0, ptr @g_g_term @@ -167776,7 +168424,7 @@ ifend15: store i32 0, ptr @g_nloop store i32 0, ptr @g_nself store ptr null, ptr @g_g_cur_scene - store ptr @.str12609, ptr @g_ret_ty + store ptr @.str12729, ptr @g_ret_ty %t96 = call ptr @fn_buf_new() store ptr %t96, ptr %t97 %t98 = call ptr @fn_buf_new() @@ -167785,13 +168433,13 @@ ifend15: store ptr %t99, ptr %t100 %t101 = load ptr, ptr %t97 store ptr %t101, ptr @g_code - call void @fn_emit(ptr @.str12610) - call void @fn_emit(ptr @.str12611) + call void @fn_emit(ptr @.str12730) + call void @fn_emit(ptr @.str12731) %t102 = call ptr @fn_itoa(i32 32) call void @fn_emit(ptr %t102) - call void @fn_emit(ptr @.str12612) - call void @fn_emit(ptr @.str12613) - call void @fn_emit(ptr @.str12614) + call void @fn_emit(ptr @.str12732) + call void @fn_emit(ptr @.str12733) + call void @fn_emit(ptr @.str12734) %t103 = load ptr, ptr %t18 %t104 = getelementptr inbounds %Cmp_Node, ptr %t103, i32 0, i32 2 %t105 = load i32, ptr %t104 @@ -167800,16 +168448,16 @@ ifend15: %t108 = icmp ne i32 %t107, 0 br i1 %t108, label %then19, label %else20 then19: - call void @fn_emit(ptr @.str12615) + call void @fn_emit(ptr @.str12735) br label %ifend21 else20: - call void @fn_emit(ptr @.str12616) + call void @fn_emit(ptr @.str12736) br label %ifend21 ifend21: - call void @fn_emit(ptr @.str12617) - call void @fn_emit(ptr @.str12618) + call void @fn_emit(ptr @.str12737) + call void @fn_emit(ptr @.str12738) %t109 = load ptr, ptr %t22 - %t110 = call ptr @lp_str_concat(ptr @.str12619, ptr %t109) + %t110 = call ptr @lp_str_concat(ptr @.str12739, ptr %t109) %t111 = call ptr @fn_emit_alloca(ptr %t110) store ptr %t111, ptr %t112 store i32 0, ptr %t113 @@ -167838,7 +168486,7 @@ wbody23: br i1 %t131, label %ixok25, label %ixbad26 ixbad26: %t132 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t132, ptr @.fmt_bounds, ptr @.str12620, i32 %t126, i32 %t130) + call i32 (ptr, ptr, ...) @fprintf(ptr %t132, ptr @.fmt_bounds, ptr @.str12740, i32 %t126, i32 %t130) call void @exit(i32 1) unreachable ixok25: @@ -167852,45 +168500,45 @@ ixok25: store ptr %t139, ptr %t140 %t141 = call ptr @fn_nreg() store ptr %t141, ptr %t142 - call void @fn_emit(ptr @.str12621) + call void @fn_emit(ptr @.str12741) %t143 = load ptr, ptr %t142 call void @fn_emit(ptr %t143) - call void @fn_emit(ptr @.str12622) + call void @fn_emit(ptr @.str12742) %t144 = load ptr, ptr %t22 call void @fn_emit(ptr %t144) - call void @fn_emit(ptr @.str12623) + call void @fn_emit(ptr @.str12743) %t145 = load ptr, ptr %t112 call void @fn_emit(ptr %t145) - call void @fn_emit(ptr @.str12624) + call void @fn_emit(ptr @.str12744) %t146 = load i32, ptr %t113 %t147 = call ptr @fn_itoa(i32 %t146) call void @fn_emit(ptr %t147) - call void @fn_emit(ptr @.str12625) - call void @fn_emit(ptr @.str12626) + call void @fn_emit(ptr @.str12745) + call void @fn_emit(ptr @.str12746) %t148 = load ptr, ptr %t140 call void @fn_emit(ptr %t148) - call void @fn_emit(ptr @.str12627) + call void @fn_emit(ptr @.str12747) %t149 = load i32, ptr %t113 %t150 = call ptr @fn_itoa(i32 %t149) call void @fn_emit(ptr %t150) - call void @fn_emit(ptr @.str12628) + call void @fn_emit(ptr @.str12748) %t151 = load ptr, ptr %t142 call void @fn_emit(ptr %t151) - call void @fn_emit(ptr @.str12629) + call void @fn_emit(ptr @.str12749) %t152 = load ptr, ptr %t140 %t153 = call ptr @fn_emit_alloca(ptr %t152) store ptr %t153, ptr %t154 - call void @fn_emit(ptr @.str12630) + call void @fn_emit(ptr @.str12750) %t155 = load ptr, ptr %t140 call void @fn_emit(ptr %t155) - call void @fn_emit(ptr @.str12631) + call void @fn_emit(ptr @.str12751) %t156 = load i32, ptr %t113 %t157 = call ptr @fn_itoa(i32 %t156) call void @fn_emit(ptr %t157) - call void @fn_emit(ptr @.str12632) + call void @fn_emit(ptr @.str12752) %t158 = load ptr, ptr %t154 call void @fn_emit(ptr %t158) - call void @fn_emit(ptr @.str12633) + call void @fn_emit(ptr @.str12753) %t159 = load ptr, ptr %t135 %t160 = getelementptr inbounds %Cmp_Node, ptr %t159, i32 0, i32 1 %t161 = load ptr, ptr %t160 @@ -167915,16 +168563,16 @@ wend24: then27: %t175 = call ptr @fn_nreg() store ptr %t175, ptr %t168 - call void @fn_emit(ptr @.str12634) + call void @fn_emit(ptr @.str12754) %t176 = load ptr, ptr %t168 call void @fn_emit(ptr %t176) - call void @fn_emit(ptr @.str12635) + call void @fn_emit(ptr @.str12755) %t177 = load ptr, ptr %t22 call void @fn_emit(ptr %t177) - call void @fn_emit(ptr @.str12636) + call void @fn_emit(ptr @.str12756) %t178 = load ptr, ptr %t112 call void @fn_emit(ptr %t178) - call void @fn_emit(ptr @.str12637) + call void @fn_emit(ptr @.str12757) %t179 = load ptr, ptr %t18 %t180 = getelementptr inbounds %Cmp_Node, ptr %t179, i32 0, i32 7 %t181 = load ptr, ptr %t180 @@ -167932,11 +168580,11 @@ then27: %t183 = load i32, ptr %t182 %t184 = call ptr @fn_itoa(i32 %t183) call void @fn_emit(ptr %t184) - call void @fn_emit(ptr @.str12638) - call void @fn_emit(ptr @.str12639) + call void @fn_emit(ptr @.str12758) + call void @fn_emit(ptr @.str12759) %t185 = load ptr, ptr %t168 call void @fn_emit(ptr %t185) - call void @fn_emit(ptr @.str12640) + call void @fn_emit(ptr @.str12760) %t186 = load ptr, ptr %t168 store ptr %t186, ptr @g_g_cancel_addr br label %ifend29 @@ -167965,7 +168613,7 @@ wbody31: br i1 %t203, label %ixok33, label %ixbad34 ixbad34: %t204 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t204, ptr @.fmt_bounds, ptr @.str12641, i32 %t198, i32 %t202) + call i32 (ptr, ptr, ...) @fprintf(ptr %t204, ptr @.fmt_bounds, ptr @.str12761, i32 %t198, i32 %t202) call void @exit(i32 1) unreachable ixok33: @@ -167981,7 +168629,7 @@ then35: %t212 = load i32, ptr %t188 store i32 %t212, ptr @g_nloc store i32 0, ptr @g_g_term - %t213 = call ptr @fn_lbl(ptr @.str12642) + %t213 = call ptr @fn_lbl(ptr @.str12762) store ptr %t213, ptr %t214 %t215 = load ptr, ptr %t214 store ptr %t215, ptr @g_g_ret_label @@ -167995,7 +168643,7 @@ then35: br i1 %t222, label %ixok38, label %ixbad39 ixbad39: %t223 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t223, ptr @.fmt_bounds, ptr @.str12643, i32 %t217, i32 %t221) + call i32 (ptr, ptr, ...) @fprintf(ptr %t223, ptr @.fmt_bounds, ptr @.str12763, i32 %t217, i32 %t221) call void @exit(i32 1) unreachable ixok38: @@ -168017,7 +168665,7 @@ ixok38: br i1 %t236, label %ixok40, label %ixbad41 ixbad41: %t237 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t237, ptr @.fmt_bounds, ptr @.str12644, i32 %t231, i32 %t235) + call i32 (ptr, ptr, ...) @fprintf(ptr %t237, ptr @.fmt_bounds, ptr @.str12764, i32 %t231, i32 %t235) call void @exit(i32 1) unreachable ixok40: @@ -168026,7 +168674,7 @@ ixok40: %t240 = getelementptr inbounds %Cmp_Node, ptr %t239, i32 0, i32 4 %t241 = load ptr, ptr %t240 call void @fn_emit_block(ptr %t241) - store ptr @.str12645, ptr @g_g_ret_label + store ptr @.str12765, ptr @g_g_ret_label %t242 = load i32, ptr @g_g_term %t243 = icmp eq i32 %t242, 0 %t244 = zext i1 %t243 to i32 @@ -168034,13 +168682,13 @@ ixok40: br i1 %t245, label %then42, label %ifend44 then42: %t246 = load ptr, ptr %t214 - %t247 = call ptr @lp_str_concat(ptr @.str12646, ptr %t246) - %t248 = call ptr @lp_str_concat(ptr %t247, ptr @.str12647) + %t247 = call ptr @lp_str_concat(ptr @.str12766, ptr %t246) + %t248 = call ptr @lp_str_concat(ptr %t247, ptr @.str12767) call void @fn_emit(ptr %t248) br label %ifend44 ifend44: %t249 = load ptr, ptr %t214 - %t250 = call ptr @lp_str_concat(ptr %t249, ptr @.str12648) + %t250 = call ptr @lp_str_concat(ptr %t249, ptr @.str12768) call void @fn_emit(ptr %t250) store i32 0, ptr @g_g_term br label %ifend37 @@ -168056,132 +168704,132 @@ wend32: %t256 = icmp ne i32 %t255, 0 br i1 %t256, label %then45, label %ifend47 then45: - %t257 = call ptr @fn_emit_alloca(ptr @.str12649) + %t257 = call ptr @fn_emit_alloca(ptr @.str12769) store ptr %t257, ptr %t258 - call void @fn_emit(ptr @.str12650) + call void @fn_emit(ptr @.str12770) %t259 = load ptr, ptr %t258 call void @fn_emit(ptr %t259) - call void @fn_emit(ptr @.str12651) - %t260 = call ptr @fn_lbl(ptr @.str12652) + call void @fn_emit(ptr @.str12771) + %t260 = call ptr @fn_lbl(ptr @.str12772) store ptr %t260, ptr %t261 - %t262 = call ptr @fn_lbl(ptr @.str12653) + %t262 = call ptr @fn_lbl(ptr @.str12773) store ptr %t262, ptr %t263 - %t264 = call ptr @fn_lbl(ptr @.str12654) + %t264 = call ptr @fn_lbl(ptr @.str12774) store ptr %t264, ptr %t265 - call void @fn_emit(ptr @.str12655) + call void @fn_emit(ptr @.str12775) %t266 = load ptr, ptr %t261 call void @fn_emit(ptr %t266) - call void @fn_emit(ptr @.str12656) + call void @fn_emit(ptr @.str12776) %t267 = load ptr, ptr %t261 call void @fn_emit(ptr %t267) - call void @fn_emit(ptr @.str12657) + call void @fn_emit(ptr @.str12777) %t268 = load ptr, ptr %t258 - %t269 = call ptr @lp_str_concat(ptr @.str12658, ptr %t268) + %t269 = call ptr @lp_str_concat(ptr @.str12778, ptr %t268) %t270 = call ptr @fn_emit_bind(ptr %t269) store ptr %t270, ptr %t271 %t272 = load ptr, ptr %t22 - %t273 = call ptr @lp_str_concat(ptr @.str12659, ptr %t272) + %t273 = call ptr @lp_str_concat(ptr @.str12779, ptr %t272) %t274 = call ptr @fn_emit_bind(ptr %t273) store ptr %t274, ptr %t275 %t276 = load ptr, ptr %t271 - %t277 = call ptr @lp_str_concat(ptr @.str12660, ptr %t276) - %t278 = call ptr @lp_str_concat(ptr %t277, ptr @.str12661) + %t277 = call ptr @lp_str_concat(ptr @.str12780, ptr %t276) + %t278 = call ptr @lp_str_concat(ptr %t277, ptr @.str12781) %t279 = load ptr, ptr %t275 %t280 = call ptr @lp_str_concat(ptr %t278, ptr %t279) %t281 = call ptr @fn_emit_bind(ptr %t280) store ptr %t281, ptr %t282 - call void @fn_emit(ptr @.str12662) + call void @fn_emit(ptr @.str12782) %t283 = load ptr, ptr %t282 call void @fn_emit(ptr %t283) - call void @fn_emit(ptr @.str12663) + call void @fn_emit(ptr @.str12783) %t284 = load ptr, ptr %t263 call void @fn_emit(ptr %t284) - call void @fn_emit(ptr @.str12664) + call void @fn_emit(ptr @.str12784) %t285 = load ptr, ptr %t265 call void @fn_emit(ptr %t285) - call void @fn_emit(ptr @.str12665) + call void @fn_emit(ptr @.str12785) %t286 = load ptr, ptr %t263 call void @fn_emit(ptr %t286) - call void @fn_emit(ptr @.str12666) + call void @fn_emit(ptr @.str12786) %t287 = call ptr @fn_nreg() store ptr %t287, ptr %t288 - call void @fn_emit(ptr @.str12667) + call void @fn_emit(ptr @.str12787) %t289 = load ptr, ptr %t288 call void @fn_emit(ptr %t289) - call void @fn_emit(ptr @.str12668) + call void @fn_emit(ptr @.str12788) %t290 = load ptr, ptr %t24 call void @fn_emit(ptr %t290) - call void @fn_emit(ptr @.str12669) + call void @fn_emit(ptr @.str12789) %t291 = load ptr, ptr %t22 call void @fn_emit(ptr %t291) - call void @fn_emit(ptr @.str12670) + call void @fn_emit(ptr @.str12790) %t292 = load ptr, ptr %t271 call void @fn_emit(ptr %t292) - call void @fn_emit(ptr @.str12671) + call void @fn_emit(ptr @.str12791) %t293 = load ptr, ptr %t288 - %t294 = call ptr @lp_str_concat(ptr @.str12672, ptr %t293) + %t294 = call ptr @lp_str_concat(ptr @.str12792, ptr %t293) %t295 = call ptr @fn_emit_bind(ptr %t294) store ptr %t295, ptr %t296 %t297 = load ptr, ptr %t296 - %t298 = call ptr @lp_str_concat(ptr @.str12673, ptr %t297) - %t299 = call ptr @lp_str_concat(ptr %t298, ptr @.str12674) + %t298 = call ptr @lp_str_concat(ptr @.str12793, ptr %t297) + %t299 = call ptr @lp_str_concat(ptr %t298, ptr @.str12794) %t300 = call ptr @fn_emit_bind(ptr %t299) store ptr %t300, ptr %t301 - %t302 = call ptr @fn_lbl(ptr @.str12675) + %t302 = call ptr @fn_lbl(ptr @.str12795) store ptr %t302, ptr %t303 - %t304 = call ptr @fn_lbl(ptr @.str12676) + %t304 = call ptr @fn_lbl(ptr @.str12796) store ptr %t304, ptr %t305 - call void @fn_emit(ptr @.str12677) + call void @fn_emit(ptr @.str12797) %t306 = load ptr, ptr %t301 call void @fn_emit(ptr %t306) - call void @fn_emit(ptr @.str12678) + call void @fn_emit(ptr @.str12798) %t307 = load ptr, ptr %t305 call void @fn_emit(ptr %t307) - call void @fn_emit(ptr @.str12679) + call void @fn_emit(ptr @.str12799) %t308 = load ptr, ptr %t303 call void @fn_emit(ptr %t308) - call void @fn_emit(ptr @.str12680) + call void @fn_emit(ptr @.str12800) %t309 = load ptr, ptr %t303 call void @fn_emit(ptr %t309) - call void @fn_emit(ptr @.str12681) - call void @fn_emit(ptr @.str12682) + call void @fn_emit(ptr @.str12801) + call void @fn_emit(ptr @.str12802) %t310 = load ptr, ptr %t296 call void @fn_emit(ptr %t310) - call void @fn_emit(ptr @.str12683) + call void @fn_emit(ptr @.str12803) %t311 = load ptr, ptr %t112 call void @fn_emit(ptr %t311) - call void @fn_emit(ptr @.str12684) - call void @fn_emit(ptr @.str12685) + call void @fn_emit(ptr @.str12804) + call void @fn_emit(ptr @.str12805) %t312 = load ptr, ptr %t305 call void @fn_emit(ptr %t312) - call void @fn_emit(ptr @.str12686) + call void @fn_emit(ptr @.str12806) %t313 = load ptr, ptr %t305 call void @fn_emit(ptr %t313) - call void @fn_emit(ptr @.str12687) + call void @fn_emit(ptr @.str12807) %t314 = load ptr, ptr %t271 - %t315 = call ptr @lp_str_concat(ptr @.str12688, ptr %t314) - %t316 = call ptr @lp_str_concat(ptr %t315, ptr @.str12689) + %t315 = call ptr @lp_str_concat(ptr @.str12808, ptr %t314) + %t316 = call ptr @lp_str_concat(ptr %t315, ptr @.str12809) %t317 = call ptr @fn_emit_bind(ptr %t316) store ptr %t317, ptr %t318 - call void @fn_emit(ptr @.str12690) + call void @fn_emit(ptr @.str12810) %t319 = load ptr, ptr %t318 call void @fn_emit(ptr %t319) - call void @fn_emit(ptr @.str12691) + call void @fn_emit(ptr @.str12811) %t320 = load ptr, ptr %t258 call void @fn_emit(ptr %t320) - call void @fn_emit(ptr @.str12692) - call void @fn_emit(ptr @.str12693) + call void @fn_emit(ptr @.str12812) + call void @fn_emit(ptr @.str12813) %t321 = load ptr, ptr %t261 call void @fn_emit(ptr %t321) - call void @fn_emit(ptr @.str12694) + call void @fn_emit(ptr @.str12814) %t322 = load ptr, ptr %t265 call void @fn_emit(ptr %t322) - call void @fn_emit(ptr @.str12695) - call void @fn_emit(ptr @.str12696) + call void @fn_emit(ptr @.str12815) + call void @fn_emit(ptr @.str12816) br label %ifend47 ifend47: - call void @fn_emit(ptr @.str12697) - call void @fn_emit(ptr @.str12698) + call void @fn_emit(ptr @.str12817) + call void @fn_emit(ptr @.str12818) %t323 = load ptr, ptr %t18 %t324 = getelementptr inbounds %Cmp_Node, ptr %t323, i32 0, i32 2 %t325 = load i32, ptr %t324 @@ -168191,22 +168839,22 @@ ifend47: br i1 %t328, label %then48, label %else49 then48: %t329 = load ptr, ptr %t168 - %t330 = call ptr @lp_str_concat(ptr @.str12699, ptr %t329) + %t330 = call ptr @lp_str_concat(ptr @.str12819, ptr %t329) %t331 = call ptr @fn_emit_bind(ptr %t330) store ptr %t331, ptr %t332 - call void @fn_emit(ptr @.str12700) + call void @fn_emit(ptr @.str12820) %t333 = load ptr, ptr %t332 call void @fn_emit(ptr %t333) - call void @fn_emit(ptr @.str12701) + call void @fn_emit(ptr @.str12821) br label %ifend50 else49: - call void @fn_emit(ptr @.str12702) + call void @fn_emit(ptr @.str12822) br label %ifend50 ifend50: store ptr null, ptr @g_g_cancel_addr %t334 = load ptr, ptr %t100 store ptr %t334, ptr @g_code - store ptr @.str12703, ptr %t335 + store ptr @.str12823, ptr %t335 %t336 = load ptr, ptr %t18 %t337 = getelementptr inbounds %Cmp_Node, ptr %t336, i32 0, i32 2 %t338 = load i32, ptr %t337 @@ -168215,16 +168863,16 @@ ifend50: %t341 = icmp ne i32 %t340, 0 br i1 %t341, label %then51, label %ifend53 then51: - store ptr @.str12704, ptr %t335 + store ptr @.str12824, ptr %t335 br label %ifend53 ifend53: - call void @fn_emit(ptr @.str12705) + call void @fn_emit(ptr @.str12825) %t342 = load ptr, ptr %t335 call void @fn_emit(ptr %t342) - call void @fn_emit(ptr @.str12706) + call void @fn_emit(ptr @.str12826) %t343 = load ptr, ptr %t22 call void @fn_emit(ptr %t343) - call void @fn_emit(ptr @.str12707) + call void @fn_emit(ptr @.str12827) store i32 0, ptr %t344 br label %wcond54 wcond54: @@ -168245,7 +168893,7 @@ wbody55: %t357 = icmp ne i32 %t356, 0 br i1 %t357, label %then57, label %ifend59 then57: - call void @fn_emit(ptr @.str12708) + call void @fn_emit(ptr @.str12828) br label %ifend59 ifend59: %t358 = load ptr, ptr %t18 @@ -168260,7 +168908,7 @@ ifend59: br i1 %t366, label %ixok60, label %ixbad61 ixbad61: %t367 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t367, ptr @.fmt_bounds, ptr @.str12709, i32 %t361, i32 %t365) + call i32 (ptr, ptr, ...) @fprintf(ptr %t367, ptr @.fmt_bounds, ptr @.str12829, i32 %t361, i32 %t365) call void @exit(i32 1) unreachable ixok60: @@ -168270,7 +168918,7 @@ ixok60: %t371 = load ptr, ptr %t370 %t372 = call ptr @fn_llty(ptr %t371) call void @fn_emit(ptr %t372) - call void @fn_emit(ptr @.str12710) + call void @fn_emit(ptr @.str12830) %t373 = load i32, ptr %t344 %t374 = call ptr @fn_itoa(i32 %t373) call void @fn_emit(ptr %t374) @@ -168279,14 +168927,14 @@ ixok60: store i32 %t376, ptr %t344 br label %wcond54 wend56: - call void @fn_emit(ptr @.str12711) + call void @fn_emit(ptr @.str12831) %t377 = load ptr, ptr @g_falloc %t378 = call ptr @fn_buf_str(ptr %t377) call void @fn_emit(ptr %t378) %t379 = load ptr, ptr %t97 %t380 = call ptr @fn_buf_str(ptr %t379) call void @fn_emit(ptr %t380) - call void @fn_emit(ptr @.str12712) + call void @fn_emit(ptr @.str12832) %t381 = load i32, ptr %t0 %t382 = add i32 %t381, 1 store i32 %t382, ptr %t0 @@ -168294,7 +168942,7 @@ wend56: wend2: %t383 = call ptr @fn_itoa(i32 16) store ptr %t383, ptr %t384 - call void @fn_emit(ptr @.str12713) + call void @fn_emit(ptr @.str12833) store i32 0, ptr %t385 br label %wcond62 wcond62: @@ -168317,7 +168965,7 @@ wbody63: br i1 %t399, label %ixok65, label %ixbad66 ixbad66: %t400 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t400, ptr @.fmt_bounds, ptr @.str12714, i32 %t394, i32 %t398) + call i32 (ptr, ptr, ...) @fprintf(ptr %t400, ptr @.fmt_bounds, ptr @.str12834, i32 %t394, i32 %t398) call void @exit(i32 1) unreachable ixok65: @@ -168329,127 +168977,127 @@ ixok65: %t406 = load i32, ptr %t385 %t407 = call ptr @fn_itoa(i32 %t406) store ptr %t407, ptr %t408 - call void @fn_emit(ptr @.str12715) + call void @fn_emit(ptr @.str12835) %t409 = load ptr, ptr %t408 call void @fn_emit(ptr %t409) - call void @fn_emit(ptr @.str12716) - call void @fn_emit(ptr @.str12717) + call void @fn_emit(ptr @.str12836) + call void @fn_emit(ptr @.str12837) %t410 = load ptr, ptr %t408 call void @fn_emit(ptr %t410) - call void @fn_emit(ptr @.str12718) - call void @fn_emit(ptr @.str12719) + call void @fn_emit(ptr @.str12838) + call void @fn_emit(ptr @.str12839) %t411 = load ptr, ptr %t408 call void @fn_emit(ptr %t411) - call void @fn_emit(ptr @.str12720) + call void @fn_emit(ptr @.str12840) %t412 = load ptr, ptr %t405 call void @fn_emit(ptr %t412) - call void @fn_emit(ptr @.str12721) - call void @fn_emit(ptr @.str12722) + call void @fn_emit(ptr @.str12841) + call void @fn_emit(ptr @.str12842) %t413 = load ptr, ptr %t408 call void @fn_emit(ptr %t413) - call void @fn_emit(ptr @.str12723) + call void @fn_emit(ptr @.str12843) %t414 = load ptr, ptr %t408 call void @fn_emit(ptr %t414) - call void @fn_emit(ptr @.str12724) + call void @fn_emit(ptr @.str12844) %t415 = load ptr, ptr %t408 call void @fn_emit(ptr %t415) - call void @fn_emit(ptr @.str12725) - call void @fn_emit(ptr @.str12726) + call void @fn_emit(ptr @.str12845) + call void @fn_emit(ptr @.str12846) %t416 = load ptr, ptr %t408 call void @fn_emit(ptr %t416) - call void @fn_emit(ptr @.str12727) + call void @fn_emit(ptr @.str12847) %t417 = load ptr, ptr %t408 call void @fn_emit(ptr %t417) - call void @fn_emit(ptr @.str12728) + call void @fn_emit(ptr @.str12848) %t418 = load ptr, ptr %t408 call void @fn_emit(ptr %t418) - call void @fn_emit(ptr @.str12729) - call void @fn_emit(ptr @.str12730) + call void @fn_emit(ptr @.str12849) + call void @fn_emit(ptr @.str12850) %t419 = load ptr, ptr %t408 call void @fn_emit(ptr %t419) - call void @fn_emit(ptr @.str12731) - call void @fn_emit(ptr @.str12732) + call void @fn_emit(ptr @.str12851) + call void @fn_emit(ptr @.str12852) %t420 = load ptr, ptr %t408 call void @fn_emit(ptr %t420) - call void @fn_emit(ptr @.str12733) + call void @fn_emit(ptr @.str12853) %t421 = load ptr, ptr %t384 call void @fn_emit(ptr %t421) - call void @fn_emit(ptr @.str12734) + call void @fn_emit(ptr @.str12854) %t422 = load ptr, ptr %t405 call void @fn_emit(ptr %t422) - call void @fn_emit(ptr @.str12735) + call void @fn_emit(ptr @.str12855) %t423 = load ptr, ptr %t408 call void @fn_emit(ptr %t423) - call void @fn_emit(ptr @.str12736) - call void @fn_emit(ptr @.str12737) + call void @fn_emit(ptr @.str12856) + call void @fn_emit(ptr @.str12857) %t424 = load ptr, ptr %t408 call void @fn_emit(ptr %t424) - call void @fn_emit(ptr @.str12738) + call void @fn_emit(ptr @.str12858) %t425 = load ptr, ptr %t408 call void @fn_emit(ptr %t425) - call void @fn_emit(ptr @.str12739) - call void @fn_emit(ptr @.str12740) + call void @fn_emit(ptr @.str12859) + call void @fn_emit(ptr @.str12860) %t426 = load ptr, ptr %t408 call void @fn_emit(ptr %t426) - call void @fn_emit(ptr @.str12741) + call void @fn_emit(ptr @.str12861) %t427 = load ptr, ptr %t408 call void @fn_emit(ptr %t427) - call void @fn_emit(ptr @.str12742) - call void @fn_emit(ptr @.str12743) + call void @fn_emit(ptr @.str12862) + call void @fn_emit(ptr @.str12863) %t428 = load ptr, ptr %t408 call void @fn_emit(ptr %t428) - call void @fn_emit(ptr @.str12744) + call void @fn_emit(ptr @.str12864) %t429 = load ptr, ptr %t408 call void @fn_emit(ptr %t429) - call void @fn_emit(ptr @.str12745) + call void @fn_emit(ptr @.str12865) %t430 = load ptr, ptr %t408 call void @fn_emit(ptr %t430) - call void @fn_emit(ptr @.str12746) - call void @fn_emit(ptr @.str12747) + call void @fn_emit(ptr @.str12866) + call void @fn_emit(ptr @.str12867) %t431 = load ptr, ptr %t408 call void @fn_emit(ptr %t431) - call void @fn_emit(ptr @.str12748) - call void @fn_emit(ptr @.str12749) + call void @fn_emit(ptr @.str12868) + call void @fn_emit(ptr @.str12869) %t432 = load ptr, ptr %t408 call void @fn_emit(ptr %t432) - call void @fn_emit(ptr @.str12750) + call void @fn_emit(ptr @.str12870) %t433 = load ptr, ptr %t384 call void @fn_emit(ptr %t433) - call void @fn_emit(ptr @.str12751) + call void @fn_emit(ptr @.str12871) %t434 = load ptr, ptr %t405 call void @fn_emit(ptr %t434) - call void @fn_emit(ptr @.str12752) + call void @fn_emit(ptr @.str12872) %t435 = load ptr, ptr %t408 call void @fn_emit(ptr %t435) - call void @fn_emit(ptr @.str12753) - call void @fn_emit(ptr @.str12754) + call void @fn_emit(ptr @.str12873) + call void @fn_emit(ptr @.str12874) %t436 = load ptr, ptr %t408 call void @fn_emit(ptr %t436) - call void @fn_emit(ptr @.str12755) + call void @fn_emit(ptr @.str12875) %t437 = load ptr, ptr %t408 call void @fn_emit(ptr %t437) - call void @fn_emit(ptr @.str12756) - call void @fn_emit(ptr @.str12757) + call void @fn_emit(ptr @.str12876) + call void @fn_emit(ptr @.str12877) %t438 = load ptr, ptr %t408 call void @fn_emit(ptr %t438) - call void @fn_emit(ptr @.str12758) - call void @fn_emit(ptr @.str12759) + call void @fn_emit(ptr @.str12878) + call void @fn_emit(ptr @.str12879) %t439 = load ptr, ptr %t408 call void @fn_emit(ptr %t439) - call void @fn_emit(ptr @.str12760) + call void @fn_emit(ptr @.str12880) %t440 = load ptr, ptr %t408 call void @fn_emit(ptr %t440) - call void @fn_emit(ptr @.str12761) + call void @fn_emit(ptr @.str12881) %t441 = load ptr, ptr %t408 call void @fn_emit(ptr %t441) - call void @fn_emit(ptr @.str12762) + call void @fn_emit(ptr @.str12882) %t442 = load ptr, ptr %t408 call void @fn_emit(ptr %t442) - call void @fn_emit(ptr @.str12763) - call void @fn_emit(ptr @.str12764) + call void @fn_emit(ptr @.str12883) + call void @fn_emit(ptr @.str12884) %t443 = load ptr, ptr %t408 call void @fn_emit(ptr %t443) - call void @fn_emit(ptr @.str12765) + call void @fn_emit(ptr @.str12885) %t444 = load i32, ptr %t385 %t445 = add i32 %t444, 1 %t446 = load ptr, ptr @g_g_events @@ -168460,15 +169108,15 @@ ixok65: %t451 = icmp ne i32 %t450, 0 br i1 %t451, label %then67, label %else68 then67: - call void @fn_emit(ptr @.str12766) + call void @fn_emit(ptr @.str12886) %t452 = load i32, ptr %t385 %t453 = add i32 %t452, 1 %t454 = call ptr @fn_itoa(i32 %t453) call void @fn_emit(ptr %t454) - call void @fn_emit(ptr @.str12767) + call void @fn_emit(ptr @.str12887) br label %ifend69 else68: - call void @fn_emit(ptr @.str12768) + call void @fn_emit(ptr @.str12888) br label %ifend69 ifend69: %t455 = load i32, ptr %t385 @@ -168476,7 +169124,7 @@ ifend69: store i32 %t456, ptr %t385 br label %wcond62 wend64: - call void @fn_emit(ptr @.str12769) + call void @fn_emit(ptr @.str12889) br label %ret ret: ret void @@ -168500,26 +169148,31 @@ entry: %t213 = alloca ptr %t217 = alloca ptr %t220 = alloca ptr - %t231 = alloca i32 - %t256 = alloca ptr - %t262 = alloca ptr - %t337 = alloca ptr - %t341 = alloca ptr + %t230 = alloca ptr + %t234 = alloca i32 + %t259 = alloca ptr + %t265 = alloca ptr + %t340 = alloca ptr %t344 = alloca ptr - %t355 = alloca i32 - %t380 = alloca ptr + %t347 = alloca ptr + %t357 = alloca ptr + %t361 = alloca i32 %t386 = alloca ptr - %t457 = alloca ptr - %t460 = alloca ptr - %t523 = alloca ptr - %t526 = alloca ptr - %t588 = alloca ptr - %t590 = alloca ptr - %t593 = alloca ptr + %t392 = alloca ptr + %t463 = alloca ptr + %t466 = alloca ptr + %t476 = alloca ptr + %t494 = alloca ptr + %t531 = alloca ptr + %t534 = alloca ptr %t596 = alloca ptr - %t602 = alloca ptr - %t646 = alloca ptr - %t649 = alloca ptr + %t598 = alloca ptr + %t601 = alloca ptr + %t604 = alloca ptr + %t610 = alloca ptr + %t654 = alloca ptr + %t657 = alloca ptr + %t675 = alloca ptr %t0 = call ptr @fn_itoa(i32 1024) store ptr %t0, ptr %t1 store i32 0, ptr %t2 @@ -168545,7 +169198,7 @@ wbody1: br i1 %t17, label %ixok3, label %ixbad4 ixbad4: %t18 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str12770, i32 %t12, i32 %t16) + call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str12890, i32 %t12, i32 %t16) call void @exit(i32 1) unreachable ixok3: @@ -168571,12 +169224,12 @@ wend2: %t30 = load i32, ptr %t2 %t31 = call ptr @fn_itoa(i32 %t30) store ptr %t31, ptr %t32 - call void @fn_emith(ptr @.str12771) - call void @fn_emith(ptr @.str12772) - call void @fn_emith(ptr @.str12773) - call void @fn_emith(ptr @.str12774) - call void @fn_emith(ptr @.str12775) - call void @fn_emit(ptr @.str12776) + call void @fn_emith(ptr @.str12891) + call void @fn_emith(ptr @.str12892) + call void @fn_emith(ptr @.str12893) + call void @fn_emith(ptr @.str12894) + call void @fn_emith(ptr @.str12895) + call void @fn_emit(ptr @.str12896) store i32 0, ptr %t33 store i32 0, ptr %t34 br label %wcond8 @@ -168600,7 +169253,7 @@ wbody9: br i1 %t48, label %ixok11, label %ixbad12 ixbad12: %t49 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str12777, i32 %t43, i32 %t47) + call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str12897, i32 %t43, i32 %t47) call void @exit(i32 1) unreachable ixok11: @@ -168623,7 +169276,7 @@ then13: br i1 %t63, label %ixok16, label %ixbad17 ixbad17: %t64 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t64, ptr @.fmt_bounds, ptr @.str12778, i32 %t58, i32 %t62) + call i32 (ptr, ptr, ...) @fprintf(ptr %t64, ptr @.fmt_bounds, ptr @.str12898, i32 %t58, i32 %t62) call void @exit(i32 1) unreachable ixok16: @@ -168636,41 +169289,41 @@ ixok16: %t71 = load i32, ptr %t33 %t72 = call ptr @fn_itoa(i32 %t71) store ptr %t72, ptr %t73 - call void @fn_emit(ptr @.str12779) + call void @fn_emit(ptr @.str12899) %t74 = load ptr, ptr %t73 call void @fn_emit(ptr %t74) - call void @fn_emit(ptr @.str12780) + call void @fn_emit(ptr @.str12900) %t75 = load ptr, ptr %t70 call void @fn_emit(ptr %t75) - call void @fn_emit(ptr @.str12781) - call void @fn_emit(ptr @.str12782) + call void @fn_emit(ptr @.str12901) + call void @fn_emit(ptr @.str12902) %t76 = load ptr, ptr %t73 call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str12783) + call void @fn_emit(ptr @.str12903) %t77 = load ptr, ptr %t73 call void @fn_emit(ptr %t77) - call void @fn_emit(ptr @.str12784) - call void @fn_emit(ptr @.str12785) + call void @fn_emit(ptr @.str12904) + call void @fn_emit(ptr @.str12905) %t78 = load ptr, ptr %t73 call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str12786) + call void @fn_emit(ptr @.str12906) %t79 = load ptr, ptr %t73 call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str12787) + call void @fn_emit(ptr @.str12907) %t80 = load ptr, ptr %t73 call void @fn_emit(ptr %t80) - call void @fn_emit(ptr @.str12788) - call void @fn_emit(ptr @.str12789) + call void @fn_emit(ptr @.str12908) + call void @fn_emit(ptr @.str12909) %t81 = load ptr, ptr %t73 call void @fn_emit(ptr %t81) - call void @fn_emit(ptr @.str12790) + call void @fn_emit(ptr @.str12910) %t82 = load ptr, ptr %t73 call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str12791) - call void @fn_emit(ptr @.str12792) + call void @fn_emit(ptr @.str12911) + call void @fn_emit(ptr @.str12912) %t83 = load ptr, ptr %t73 call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str12793) + call void @fn_emit(ptr @.str12913) %t84 = load i32, ptr %t33 %t85 = add i32 %t84, 1 store i32 %t85, ptr %t33 @@ -168681,16 +169334,16 @@ ifend15: store i32 %t87, ptr %t34 br label %wcond8 wend10: - call void @fn_emit(ptr @.str12794) - call void @fn_emit(ptr @.str12795) - call void @fn_emit(ptr @.str12796) - call void @fn_emit(ptr @.str12797) + call void @fn_emit(ptr @.str12914) + call void @fn_emit(ptr @.str12915) + call void @fn_emit(ptr @.str12916) + call void @fn_emit(ptr @.str12917) %t88 = load ptr, ptr %t32 call void @fn_emit(ptr %t88) - call void @fn_emit(ptr @.str12798) - call void @fn_emit(ptr @.str12799) - call void @fn_emit(ptr @.str12800) - call void @fn_emit(ptr @.str12801) + call void @fn_emit(ptr @.str12918) + call void @fn_emit(ptr @.str12919) + call void @fn_emit(ptr @.str12920) + call void @fn_emit(ptr @.str12921) store i32 0, ptr %t33 store i32 0, ptr %t34 br label %wcond18 @@ -168714,7 +169367,7 @@ wbody19: br i1 %t102, label %ixok21, label %ixbad22 ixbad22: %t103 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t103, ptr @.fmt_bounds, ptr @.str12802, i32 %t97, i32 %t101) + call i32 (ptr, ptr, ...) @fprintf(ptr %t103, ptr @.fmt_bounds, ptr @.str12922, i32 %t97, i32 %t101) call void @exit(i32 1) unreachable ixok21: @@ -168737,7 +169390,7 @@ then23: br i1 %t117, label %ixok26, label %ixbad27 ixbad27: %t118 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t118, ptr @.fmt_bounds, ptr @.str12803, i32 %t112, i32 %t116) + call i32 (ptr, ptr, ...) @fprintf(ptr %t118, ptr @.fmt_bounds, ptr @.str12923, i32 %t112, i32 %t116) call void @exit(i32 1) unreachable ixok26: @@ -168747,27 +169400,27 @@ ixok26: %t122 = load i32, ptr %t33 %t123 = call ptr @fn_itoa(i32 %t122) store ptr %t123, ptr %t124 - call void @fn_emit(ptr @.str12804) + call void @fn_emit(ptr @.str12924) %t125 = load ptr, ptr %t124 call void @fn_emit(ptr %t125) - call void @fn_emit(ptr @.str12805) + call void @fn_emit(ptr @.str12925) %t126 = load ptr, ptr %t124 call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str12806) - call void @fn_emit(ptr @.str12807) + call void @fn_emit(ptr @.str12926) + call void @fn_emit(ptr @.str12927) %t127 = load ptr, ptr %t124 call void @fn_emit(ptr %t127) - call void @fn_emit(ptr @.str12808) + call void @fn_emit(ptr @.str12928) %t128 = load ptr, ptr %t124 call void @fn_emit(ptr %t128) - call void @fn_emit(ptr @.str12809) + call void @fn_emit(ptr @.str12929) %t129 = load ptr, ptr %t124 call void @fn_emit(ptr %t129) - call void @fn_emit(ptr @.str12810) - call void @fn_emit(ptr @.str12811) + call void @fn_emit(ptr @.str12930) + call void @fn_emit(ptr @.str12931) %t130 = load ptr, ptr %t124 call void @fn_emit(ptr %t130) - call void @fn_emit(ptr @.str12812) + call void @fn_emit(ptr @.str12932) store i32 0, ptr %t131 br label %wcond28 wcond28: @@ -168794,7 +169447,7 @@ wbody29: br i1 %t149, label %ixok31, label %ixbad32 ixbad32: %t150 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t150, ptr @.fmt_bounds, ptr @.str12813, i32 %t144, i32 %t148) + call i32 (ptr, ptr, ...) @fprintf(ptr %t150, ptr @.fmt_bounds, ptr @.str12933, i32 %t144, i32 %t148) call void @exit(i32 1) unreachable ixok31: @@ -168805,57 +169458,57 @@ ixok31: %t155 = call ptr @fn_emit_str_const(ptr %t154) store ptr %t155, ptr %t156 %t157 = load ptr, ptr %t124 - %t158 = call ptr @lp_str_concat(ptr %t157, ptr @.str12814) + %t158 = call ptr @lp_str_concat(ptr %t157, ptr @.str12934) %t159 = load i32, ptr %t131 %t160 = call ptr @fn_itoa(i32 %t159) %t161 = call ptr @lp_str_concat(ptr %t158, ptr %t160) store ptr %t161, ptr %t162 - call void @fn_emit(ptr @.str12815) + call void @fn_emit(ptr @.str12935) %t163 = load ptr, ptr %t162 call void @fn_emit(ptr %t163) - call void @fn_emit(ptr @.str12816) + call void @fn_emit(ptr @.str12936) %t164 = load ptr, ptr %t156 call void @fn_emit(ptr %t164) - call void @fn_emit(ptr @.str12817) - call void @fn_emit(ptr @.str12818) + call void @fn_emit(ptr @.str12937) + call void @fn_emit(ptr @.str12938) %t165 = load ptr, ptr %t162 call void @fn_emit(ptr %t165) - call void @fn_emit(ptr @.str12819) + call void @fn_emit(ptr @.str12939) %t166 = load ptr, ptr %t162 call void @fn_emit(ptr %t166) - call void @fn_emit(ptr @.str12820) - call void @fn_emit(ptr @.str12821) + call void @fn_emit(ptr @.str12940) + call void @fn_emit(ptr @.str12941) %t167 = load ptr, ptr %t162 call void @fn_emit(ptr %t167) - call void @fn_emit(ptr @.str12822) + call void @fn_emit(ptr @.str12942) %t168 = load ptr, ptr %t162 call void @fn_emit(ptr %t168) - call void @fn_emit(ptr @.str12823) + call void @fn_emit(ptr @.str12943) %t169 = load ptr, ptr %t162 call void @fn_emit(ptr %t169) - call void @fn_emit(ptr @.str12824) - call void @fn_emit(ptr @.str12825) + call void @fn_emit(ptr @.str12944) + call void @fn_emit(ptr @.str12945) %t170 = load ptr, ptr %t162 call void @fn_emit(ptr %t170) - call void @fn_emit(ptr @.str12826) + call void @fn_emit(ptr @.str12946) %t171 = load i32, ptr %t131 %t172 = call ptr @fn_itoa(i32 %t171) call void @fn_emit(ptr %t172) - call void @fn_emit(ptr @.str12827) - call void @fn_emit(ptr @.str12828) + call void @fn_emit(ptr @.str12947) + call void @fn_emit(ptr @.str12948) %t173 = load ptr, ptr %t162 call void @fn_emit(ptr %t173) - call void @fn_emit(ptr @.str12829) + call void @fn_emit(ptr @.str12949) %t174 = load i32, ptr %t131 %t175 = add i32 %t174, 1 store i32 %t175, ptr %t131 br label %wcond28 wend30: - call void @fn_emit(ptr @.str12830) - call void @fn_emit(ptr @.str12831) + call void @fn_emit(ptr @.str12950) + call void @fn_emit(ptr @.str12951) %t176 = load ptr, ptr %t124 call void @fn_emit(ptr %t176) - call void @fn_emit(ptr @.str12832) + call void @fn_emit(ptr @.str12952) %t177 = load i32, ptr %t33 %t178 = add i32 %t177, 1 store i32 %t178, ptr %t33 @@ -168866,8 +169519,8 @@ ifend25: store i32 %t180, ptr %t34 br label %wcond18 wend20: - call void @fn_emit(ptr @.str12833) - call void @fn_emit(ptr @.str12834) + call void @fn_emit(ptr @.str12953) + call void @fn_emit(ptr @.str12954) store i32 0, ptr %t33 store i32 0, ptr %t34 br label %wcond33 @@ -168891,7 +169544,7 @@ wbody34: br i1 %t194, label %ixok36, label %ixbad37 ixbad37: %t195 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t195, ptr @.fmt_bounds, ptr @.str12835, i32 %t189, i32 %t193) + call i32 (ptr, ptr, ...) @fprintf(ptr %t195, ptr @.fmt_bounds, ptr @.str12955, i32 %t189, i32 %t193) call void @exit(i32 1) unreachable ixok36: @@ -168914,7 +169567,7 @@ then38: br i1 %t209, label %ixok41, label %ixbad42 ixbad42: %t210 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t210, ptr @.fmt_bounds, ptr @.str12836, i32 %t204, i32 %t208) + call i32 (ptr, ptr, ...) @fprintf(ptr %t210, ptr @.fmt_bounds, ptr @.str12956, i32 %t204, i32 %t208) call void @exit(i32 1) unreachable ixok41: @@ -168928,991 +169581,990 @@ ixok41: %t218 = load i32, ptr %t33 %t219 = call ptr @fn_itoa(i32 %t218) store ptr %t219, ptr %t220 - call void @fn_emit(ptr @.str12837) + call void @fn_emit(ptr @.str12957) %t221 = load ptr, ptr %t220 call void @fn_emit(ptr %t221) - call void @fn_emit(ptr @.str12838) + call void @fn_emit(ptr @.str12958) %t222 = load ptr, ptr %t220 call void @fn_emit(ptr %t222) - call void @fn_emit(ptr @.str12839) - call void @fn_emit(ptr @.str12840) + call void @fn_emit(ptr @.str12959) + call void @fn_emit(ptr @.str12960) %t223 = load ptr, ptr %t220 call void @fn_emit(ptr %t223) - call void @fn_emit(ptr @.str12841) + call void @fn_emit(ptr @.str12961) %t224 = load ptr, ptr %t220 call void @fn_emit(ptr %t224) - call void @fn_emit(ptr @.str12842) + call void @fn_emit(ptr @.str12962) %t225 = load ptr, ptr %t220 call void @fn_emit(ptr %t225) - call void @fn_emit(ptr @.str12843) - call void @fn_emit(ptr @.str12844) + call void @fn_emit(ptr @.str12963) + call void @fn_emit(ptr @.str12964) %t226 = load ptr, ptr %t220 call void @fn_emit(ptr %t226) - call void @fn_emit(ptr @.str12845) - call void @fn_emit(ptr @.str12846) - %t227 = load ptr, ptr %t220 - call void @fn_emit(ptr %t227) - call void @fn_emit(ptr @.str12847) - %t228 = load ptr, ptr %t1 - call void @fn_emit(ptr %t228) - call void @fn_emit(ptr @.str12848) - %t229 = load ptr, ptr %t217 - call void @fn_emit(ptr %t229) - call void @fn_emit(ptr @.str12849) - %t230 = load ptr, ptr %t217 - call void @fn_emit(ptr %t230) - call void @fn_emit(ptr @.str12850) - store i32 0, ptr %t231 + call void @fn_emit(ptr @.str12965) + %t227 = load ptr, ptr %t217 + %t228 = call ptr @lp_str_concat(ptr @.str12966, ptr %t227) + %t229 = call ptr @fn_ecs_base(ptr %t228) + store ptr %t229, ptr %t230 + call void @fn_emit(ptr @.str12967) + %t231 = load ptr, ptr %t220 + call void @fn_emit(ptr %t231) + call void @fn_emit(ptr @.str12968) + %t232 = load ptr, ptr %t217 + call void @fn_emit(ptr %t232) + call void @fn_emit(ptr @.str12969) + %t233 = load ptr, ptr %t230 + call void @fn_emit(ptr %t233) + call void @fn_emit(ptr @.str12970) + store i32 0, ptr %t234 br label %wcond43 wcond43: - %t232 = load i32, ptr %t231 - %t233 = load ptr, ptr %t213 - %t234 = getelementptr inbounds %Cmp_Node, ptr %t233, i32 0, i32 7 - %t235 = load ptr, ptr %t234 - %t236 = getelementptr inbounds %LSlice, ptr %t235, i32 0, i32 1 - %t237 = load i32, ptr %t236 - %t238 = icmp slt i32 %t232, %t237 - %t239 = zext i1 %t238 to i32 - %t240 = icmp ne i32 %t239, 0 - br i1 %t240, label %wbody44, label %wend45 + %t235 = load i32, ptr %t234 + %t236 = load ptr, ptr %t213 + %t237 = getelementptr inbounds %Cmp_Node, ptr %t236, i32 0, i32 7 + %t238 = load ptr, ptr %t237 + %t239 = getelementptr inbounds %LSlice, ptr %t238, i32 0, i32 1 + %t240 = load i32, ptr %t239 + %t241 = icmp slt i32 %t235, %t240 + %t242 = zext i1 %t241 to i32 + %t243 = icmp ne i32 %t242, 0 + br i1 %t243, label %wbody44, label %wend45 wbody44: - %t241 = load ptr, ptr %t213 - %t242 = getelementptr inbounds %Cmp_Node, ptr %t241, i32 0, i32 7 - %t243 = load ptr, ptr %t242 - %t244 = load i32, ptr %t231 - %t245 = getelementptr inbounds %LSlice, ptr %t243, i32 0, i32 0 + %t244 = load ptr, ptr %t213 + %t245 = getelementptr inbounds %Cmp_Node, ptr %t244, i32 0, i32 7 %t246 = load ptr, ptr %t245 - %t247 = getelementptr inbounds %LSlice, ptr %t243, i32 0, i32 1 - %t248 = load i32, ptr %t247 - %t249 = icmp ult i32 %t244, %t248 - br i1 %t249, label %ixok46, label %ixbad47 + %t247 = load i32, ptr %t234 + %t248 = getelementptr inbounds %LSlice, ptr %t246, i32 0, i32 0 + %t249 = load ptr, ptr %t248 + %t250 = getelementptr inbounds %LSlice, ptr %t246, i32 0, i32 1 + %t251 = load i32, ptr %t250 + %t252 = icmp ult i32 %t247, %t251 + br i1 %t252, label %ixok46, label %ixbad47 ixbad47: - %t250 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t250, ptr @.fmt_bounds, ptr @.str12851, i32 %t244, i32 %t248) + %t253 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t253, ptr @.fmt_bounds, ptr @.str12971, i32 %t247, i32 %t251) call void @exit(i32 1) unreachable ixok46: - %t251 = getelementptr inbounds ptr, ptr %t246, i32 %t244 - %t252 = load ptr, ptr %t251 - %t253 = getelementptr inbounds %Cmp_Node, ptr %t252, i32 0, i32 3 - %t254 = load ptr, ptr %t253 - %t255 = call ptr @fn_llty(ptr %t254) - store ptr %t255, ptr %t256 - %t257 = load ptr, ptr %t220 - %t258 = call ptr @lp_str_concat(ptr %t257, ptr @.str12852) - %t259 = load i32, ptr %t231 - %t260 = call ptr @fn_itoa(i32 %t259) - %t261 = call ptr @lp_str_concat(ptr %t258, ptr %t260) - store ptr %t261, ptr %t262 - call void @fn_emit(ptr @.str12853) - %t263 = load ptr, ptr %t262 - call void @fn_emit(ptr %t263) - call void @fn_emit(ptr @.str12854) - %t264 = load i32, ptr %t231 - %t265 = call ptr @fn_itoa(i32 %t264) - call void @fn_emit(ptr %t265) - call void @fn_emit(ptr @.str12855) - call void @fn_emit(ptr @.str12856) - %t266 = load ptr, ptr %t262 + %t254 = getelementptr inbounds ptr, ptr %t249, i32 %t247 + %t255 = load ptr, ptr %t254 + %t256 = getelementptr inbounds %Cmp_Node, ptr %t255, i32 0, i32 3 + %t257 = load ptr, ptr %t256 + %t258 = call ptr @fn_llty(ptr %t257) + store ptr %t258, ptr %t259 + %t260 = load ptr, ptr %t220 + %t261 = call ptr @lp_str_concat(ptr %t260, ptr @.str12972) + %t262 = load i32, ptr %t234 + %t263 = call ptr @fn_itoa(i32 %t262) + %t264 = call ptr @lp_str_concat(ptr %t261, ptr %t263) + store ptr %t264, ptr %t265 + call void @fn_emit(ptr @.str12973) + %t266 = load ptr, ptr %t265 call void @fn_emit(ptr %t266) - call void @fn_emit(ptr @.str12857) - %t267 = load ptr, ptr %t262 - call void @fn_emit(ptr %t267) - call void @fn_emit(ptr @.str12858) - %t268 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str12974) + %t267 = load i32, ptr %t234 + %t268 = call ptr @fn_itoa(i32 %t267) call void @fn_emit(ptr %t268) - call void @fn_emit(ptr @.str12859) - call void @fn_emit(ptr @.str12860) - %t269 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str12975) + call void @fn_emit(ptr @.str12976) + %t269 = load ptr, ptr %t265 call void @fn_emit(ptr %t269) - call void @fn_emit(ptr @.str12861) - call void @fn_emit(ptr @.str12862) - %t270 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str12977) + %t270 = load ptr, ptr %t265 call void @fn_emit(ptr %t270) - call void @fn_emit(ptr @.str12863) - %t271 = load ptr, ptr %t217 + call void @fn_emit(ptr @.str12978) + %t271 = load ptr, ptr %t265 call void @fn_emit(ptr %t271) - call void @fn_emit(ptr @.str12864) - %t272 = load ptr, ptr %t220 + call void @fn_emit(ptr @.str12979) + call void @fn_emit(ptr @.str12980) + %t272 = load ptr, ptr %t265 call void @fn_emit(ptr %t272) - call void @fn_emit(ptr @.str12865) - %t273 = load i32, ptr %t231 - %t274 = call ptr @fn_itoa(i32 %t273) + call void @fn_emit(ptr @.str12981) + call void @fn_emit(ptr @.str12982) + %t273 = load ptr, ptr %t265 + call void @fn_emit(ptr %t273) + call void @fn_emit(ptr @.str12983) + %t274 = load ptr, ptr %t217 call void @fn_emit(ptr %t274) - call void @fn_emit(ptr @.str12866) - %t275 = load ptr, ptr %t256 - %t276 = call i32 @lp_str_eq(ptr %t275, ptr @.str12867) - %t277 = icmp ne i32 %t276, 0 - br i1 %t277, label %then48, label %else49 + call void @fn_emit(ptr @.str12984) + %t275 = load ptr, ptr %t220 + call void @fn_emit(ptr %t275) + call void @fn_emit(ptr @.str12985) + %t276 = load i32, ptr %t234 + %t277 = call ptr @fn_itoa(i32 %t276) + call void @fn_emit(ptr %t277) + call void @fn_emit(ptr @.str12986) + %t278 = load ptr, ptr %t259 + %t279 = call i32 @lp_str_eq(ptr %t278, ptr @.str12987) + %t280 = icmp ne i32 %t279, 0 + br i1 %t280, label %then48, label %else49 then48: - call void @fn_emit(ptr @.str12868) - %t278 = load ptr, ptr %t262 - call void @fn_emit(ptr %t278) - call void @fn_emit(ptr @.str12869) - %t279 = load ptr, ptr %t262 - call void @fn_emit(ptr %t279) - call void @fn_emit(ptr @.str12870) - call void @fn_emit(ptr @.str12871) - %t280 = load ptr, ptr %t262 - call void @fn_emit(ptr %t280) - call void @fn_emit(ptr @.str12872) - %t281 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str12988) + %t281 = load ptr, ptr %t265 call void @fn_emit(ptr %t281) - call void @fn_emit(ptr @.str12873) - %t282 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str12989) + %t282 = load ptr, ptr %t265 call void @fn_emit(ptr %t282) - call void @fn_emit(ptr @.str12874) + call void @fn_emit(ptr @.str12990) + call void @fn_emit(ptr @.str12991) + %t283 = load ptr, ptr %t265 + call void @fn_emit(ptr %t283) + call void @fn_emit(ptr @.str12992) + %t284 = load ptr, ptr %t265 + call void @fn_emit(ptr %t284) + call void @fn_emit(ptr @.str12993) + %t285 = load ptr, ptr %t265 + call void @fn_emit(ptr %t285) + call void @fn_emit(ptr @.str12994) br label %ifend50 else49: - %t283 = load ptr, ptr %t256 - %t284 = call i32 @lp_str_eq(ptr %t283, ptr @.str12875) - %t285 = icmp ne i32 %t284, 0 - br i1 %t285, label %then51, label %else52 + %t286 = load ptr, ptr %t259 + %t287 = call i32 @lp_str_eq(ptr %t286, ptr @.str12995) + %t288 = icmp ne i32 %t287, 0 + br i1 %t288, label %then51, label %else52 then51: - call void @fn_emit(ptr @.str12876) - %t286 = load ptr, ptr %t262 - call void @fn_emit(ptr %t286) - call void @fn_emit(ptr @.str12877) - %t287 = load ptr, ptr %t262 - call void @fn_emit(ptr %t287) - call void @fn_emit(ptr @.str12878) - call void @fn_emit(ptr @.str12879) - %t288 = load ptr, ptr %t262 - call void @fn_emit(ptr %t288) - call void @fn_emit(ptr @.str12880) - %t289 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str12996) + %t289 = load ptr, ptr %t265 call void @fn_emit(ptr %t289) - call void @fn_emit(ptr @.str12881) - %t290 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str12997) + %t290 = load ptr, ptr %t265 call void @fn_emit(ptr %t290) - call void @fn_emit(ptr @.str12882) + call void @fn_emit(ptr @.str12998) + call void @fn_emit(ptr @.str12999) + %t291 = load ptr, ptr %t265 + call void @fn_emit(ptr %t291) + call void @fn_emit(ptr @.str13000) + %t292 = load ptr, ptr %t265 + call void @fn_emit(ptr %t292) + call void @fn_emit(ptr @.str13001) + %t293 = load ptr, ptr %t265 + call void @fn_emit(ptr %t293) + call void @fn_emit(ptr @.str13002) br label %ifend53 else52: - call void @fn_emit(ptr @.str12883) - %t291 = load ptr, ptr %t262 - call void @fn_emit(ptr %t291) - call void @fn_emit(ptr @.str12884) - %t292 = load ptr, ptr %t262 - call void @fn_emit(ptr %t292) - call void @fn_emit(ptr @.str12885) - call void @fn_emit(ptr @.str12886) - %t293 = load ptr, ptr %t262 - call void @fn_emit(ptr %t293) - call void @fn_emit(ptr @.str12887) - %t294 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str13003) + %t294 = load ptr, ptr %t265 call void @fn_emit(ptr %t294) - call void @fn_emit(ptr @.str12888) - %t295 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str13004) + %t295 = load ptr, ptr %t265 call void @fn_emit(ptr %t295) - call void @fn_emit(ptr @.str12889) + call void @fn_emit(ptr @.str13005) + call void @fn_emit(ptr @.str13006) + %t296 = load ptr, ptr %t265 + call void @fn_emit(ptr %t296) + call void @fn_emit(ptr @.str13007) + %t297 = load ptr, ptr %t265 + call void @fn_emit(ptr %t297) + call void @fn_emit(ptr @.str13008) + %t298 = load ptr, ptr %t265 + call void @fn_emit(ptr %t298) + call void @fn_emit(ptr @.str13009) br label %ifend53 ifend53: br label %ifend50 ifend50: - call void @fn_emit(ptr @.str12890) - %t296 = load ptr, ptr %t262 - call void @fn_emit(ptr %t296) - call void @fn_emit(ptr @.str12891) - %t297 = load i32, ptr %t231 - %t298 = add i32 %t297, 1 - store i32 %t298, ptr %t231 + call void @fn_emit(ptr @.str13010) + %t299 = load ptr, ptr %t265 + call void @fn_emit(ptr %t299) + call void @fn_emit(ptr @.str13011) + %t300 = load i32, ptr %t234 + %t301 = add i32 %t300, 1 + store i32 %t301, ptr %t234 br label %wcond43 wend45: - call void @fn_emit(ptr @.str12892) - call void @fn_emit(ptr @.str12893) - %t299 = load ptr, ptr %t220 - call void @fn_emit(ptr %t299) - call void @fn_emit(ptr @.str12894) - %t300 = load i32, ptr %t33 - %t301 = add i32 %t300, 1 - store i32 %t301, ptr %t33 + call void @fn_emit(ptr @.str13012) + call void @fn_emit(ptr @.str13013) + %t302 = load ptr, ptr %t220 + call void @fn_emit(ptr %t302) + call void @fn_emit(ptr @.str13014) + %t303 = load i32, ptr %t33 + %t304 = add i32 %t303, 1 + store i32 %t304, ptr %t33 br label %ifend40 ifend40: - %t302 = load i32, ptr %t34 - %t303 = add i32 %t302, 1 - store i32 %t303, ptr %t34 + %t305 = load i32, ptr %t34 + %t306 = add i32 %t305, 1 + store i32 %t306, ptr %t34 br label %wcond33 wend35: - call void @fn_emit(ptr @.str12895) - %t304 = load ptr, ptr %t32 - call void @fn_emit(ptr %t304) - call void @fn_emit(ptr @.str12896) - call void @fn_emit(ptr @.str12897) - call void @fn_emit(ptr @.str12898) - call void @fn_emit(ptr @.str12899) - call void @fn_emit(ptr @.str12900) - call void @fn_emit(ptr @.str12901) - call void @fn_emit(ptr @.str12902) + call void @fn_emit(ptr @.str13015) + %t307 = load ptr, ptr %t32 + call void @fn_emit(ptr %t307) + call void @fn_emit(ptr @.str13016) + call void @fn_emit(ptr @.str13017) + call void @fn_emit(ptr @.str13018) + call void @fn_emit(ptr @.str13019) + call void @fn_emit(ptr @.str13020) + call void @fn_emit(ptr @.str13021) + call void @fn_emit(ptr @.str13022) store i32 0, ptr %t33 store i32 0, ptr %t34 br label %wcond54 wcond54: - %t305 = load i32, ptr %t34 - %t306 = load ptr, ptr @g_prog - %t307 = getelementptr inbounds %LSlice, ptr %t306, i32 0, i32 1 - %t308 = load i32, ptr %t307 - %t309 = icmp slt i32 %t305, %t308 - %t310 = zext i1 %t309 to i32 - %t311 = icmp ne i32 %t310, 0 - br i1 %t311, label %wbody55, label %wend56 + %t308 = load i32, ptr %t34 + %t309 = load ptr, ptr @g_prog + %t310 = getelementptr inbounds %LSlice, ptr %t309, i32 0, i32 1 + %t311 = load i32, ptr %t310 + %t312 = icmp slt i32 %t308, %t311 + %t313 = zext i1 %t312 to i32 + %t314 = icmp ne i32 %t313, 0 + br i1 %t314, label %wbody55, label %wend56 wbody55: - %t312 = load ptr, ptr @g_prog - %t313 = load i32, ptr %t34 - %t314 = getelementptr inbounds %LSlice, ptr %t312, i32 0, i32 0 - %t315 = load ptr, ptr %t314 - %t316 = getelementptr inbounds %LSlice, ptr %t312, i32 0, i32 1 - %t317 = load i32, ptr %t316 - %t318 = icmp ult i32 %t313, %t317 - br i1 %t318, label %ixok57, label %ixbad58 + %t315 = load ptr, ptr @g_prog + %t316 = load i32, ptr %t34 + %t317 = getelementptr inbounds %LSlice, ptr %t315, i32 0, i32 0 + %t318 = load ptr, ptr %t317 + %t319 = getelementptr inbounds %LSlice, ptr %t315, i32 0, i32 1 + %t320 = load i32, ptr %t319 + %t321 = icmp ult i32 %t316, %t320 + br i1 %t321, label %ixok57, label %ixbad58 ixbad58: - %t319 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t319, ptr @.fmt_bounds, ptr @.str12903, i32 %t313, i32 %t317) + %t322 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t322, ptr @.fmt_bounds, ptr @.str13023, i32 %t316, i32 %t320) call void @exit(i32 1) unreachable ixok57: - %t320 = getelementptr inbounds ptr, ptr %t315, i32 %t313 - %t321 = load ptr, ptr %t320 - %t322 = getelementptr inbounds %Cmp_Node, ptr %t321, i32 0, i32 0 - %t323 = load i32, ptr %t322 - %t324 = icmp eq i32 %t323, 8 - %t325 = zext i1 %t324 to i32 - %t326 = icmp ne i32 %t325, 0 - br i1 %t326, label %then59, label %ifend61 + %t323 = getelementptr inbounds ptr, ptr %t318, i32 %t316 + %t324 = load ptr, ptr %t323 + %t325 = getelementptr inbounds %Cmp_Node, ptr %t324, i32 0, i32 0 + %t326 = load i32, ptr %t325 + %t327 = icmp eq i32 %t326, 8 + %t328 = zext i1 %t327 to i32 + %t329 = icmp ne i32 %t328, 0 + br i1 %t329, label %then59, label %ifend61 then59: - %t327 = load ptr, ptr @g_prog - %t328 = load i32, ptr %t34 - %t329 = getelementptr inbounds %LSlice, ptr %t327, i32 0, i32 0 - %t330 = load ptr, ptr %t329 - %t331 = getelementptr inbounds %LSlice, ptr %t327, i32 0, i32 1 - %t332 = load i32, ptr %t331 - %t333 = icmp ult i32 %t328, %t332 - br i1 %t333, label %ixok62, label %ixbad63 + %t330 = load ptr, ptr @g_prog + %t331 = load i32, ptr %t34 + %t332 = getelementptr inbounds %LSlice, ptr %t330, i32 0, i32 0 + %t333 = load ptr, ptr %t332 + %t334 = getelementptr inbounds %LSlice, ptr %t330, i32 0, i32 1 + %t335 = load i32, ptr %t334 + %t336 = icmp ult i32 %t331, %t335 + br i1 %t336, label %ixok62, label %ixbad63 ixbad63: - %t334 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t334, ptr @.fmt_bounds, ptr @.str12904, i32 %t328, i32 %t332) + %t337 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t337, ptr @.fmt_bounds, ptr @.str13024, i32 %t331, i32 %t335) call void @exit(i32 1) unreachable ixok62: - %t335 = getelementptr inbounds ptr, ptr %t330, i32 %t328 - %t336 = load ptr, ptr %t335 - store ptr %t336, ptr %t337 - %t338 = load ptr, ptr %t337 - %t339 = getelementptr inbounds %Cmp_Node, ptr %t338, i32 0, i32 1 - %t340 = load ptr, ptr %t339 - store ptr %t340, ptr %t341 - %t342 = load i32, ptr %t33 - %t343 = call ptr @fn_itoa(i32 %t342) + %t338 = getelementptr inbounds ptr, ptr %t333, i32 %t331 + %t339 = load ptr, ptr %t338 + store ptr %t339, ptr %t340 + %t341 = load ptr, ptr %t340 + %t342 = getelementptr inbounds %Cmp_Node, ptr %t341, i32 0, i32 1 + %t343 = load ptr, ptr %t342 store ptr %t343, ptr %t344 - call void @fn_emit(ptr @.str12905) - %t345 = load ptr, ptr %t344 - call void @fn_emit(ptr %t345) - call void @fn_emit(ptr @.str12906) - %t346 = load ptr, ptr %t344 - call void @fn_emit(ptr %t346) - call void @fn_emit(ptr @.str12907) - call void @fn_emit(ptr @.str12908) - %t347 = load ptr, ptr %t344 - call void @fn_emit(ptr %t347) - call void @fn_emit(ptr @.str12909) - %t348 = load ptr, ptr %t344 + %t345 = load i32, ptr %t33 + %t346 = call ptr @fn_itoa(i32 %t345) + store ptr %t346, ptr %t347 + call void @fn_emit(ptr @.str13025) + %t348 = load ptr, ptr %t347 call void @fn_emit(ptr %t348) - call void @fn_emit(ptr @.str12910) - %t349 = load ptr, ptr %t344 + call void @fn_emit(ptr @.str13026) + %t349 = load ptr, ptr %t347 call void @fn_emit(ptr %t349) - call void @fn_emit(ptr @.str12911) - call void @fn_emit(ptr @.str12912) - %t350 = load ptr, ptr %t344 + call void @fn_emit(ptr @.str13027) + call void @fn_emit(ptr @.str13028) + %t350 = load ptr, ptr %t347 call void @fn_emit(ptr %t350) - call void @fn_emit(ptr @.str12913) - call void @fn_emit(ptr @.str12914) - %t351 = load ptr, ptr %t344 + call void @fn_emit(ptr @.str13029) + %t351 = load ptr, ptr %t347 call void @fn_emit(ptr %t351) - call void @fn_emit(ptr @.str12915) - %t352 = load ptr, ptr %t1 + call void @fn_emit(ptr @.str13030) + %t352 = load ptr, ptr %t347 call void @fn_emit(ptr %t352) - call void @fn_emit(ptr @.str12916) - %t353 = load ptr, ptr %t341 + call void @fn_emit(ptr @.str13031) + call void @fn_emit(ptr @.str13032) + %t353 = load ptr, ptr %t347 call void @fn_emit(ptr %t353) - call void @fn_emit(ptr @.str12917) - %t354 = load ptr, ptr %t341 - call void @fn_emit(ptr %t354) - call void @fn_emit(ptr @.str12918) - store i32 0, ptr %t355 + call void @fn_emit(ptr @.str13033) + %t354 = load ptr, ptr %t344 + %t355 = call ptr @lp_str_concat(ptr @.str13034, ptr %t354) + %t356 = call ptr @fn_ecs_base(ptr %t355) + store ptr %t356, ptr %t357 + call void @fn_emit(ptr @.str13035) + %t358 = load ptr, ptr %t347 + call void @fn_emit(ptr %t358) + call void @fn_emit(ptr @.str13036) + %t359 = load ptr, ptr %t344 + call void @fn_emit(ptr %t359) + call void @fn_emit(ptr @.str13037) + %t360 = load ptr, ptr %t357 + call void @fn_emit(ptr %t360) + call void @fn_emit(ptr @.str13038) + store i32 0, ptr %t361 br label %wcond64 wcond64: - %t356 = load i32, ptr %t355 - %t357 = load ptr, ptr %t337 - %t358 = getelementptr inbounds %Cmp_Node, ptr %t357, i32 0, i32 7 - %t359 = load ptr, ptr %t358 - %t360 = getelementptr inbounds %LSlice, ptr %t359, i32 0, i32 1 - %t361 = load i32, ptr %t360 - %t362 = icmp slt i32 %t356, %t361 - %t363 = zext i1 %t362 to i32 - %t364 = icmp ne i32 %t363, 0 - br i1 %t364, label %wbody65, label %wend66 + %t362 = load i32, ptr %t361 + %t363 = load ptr, ptr %t340 + %t364 = getelementptr inbounds %Cmp_Node, ptr %t363, i32 0, i32 7 + %t365 = load ptr, ptr %t364 + %t366 = getelementptr inbounds %LSlice, ptr %t365, i32 0, i32 1 + %t367 = load i32, ptr %t366 + %t368 = icmp slt i32 %t362, %t367 + %t369 = zext i1 %t368 to i32 + %t370 = icmp ne i32 %t369, 0 + br i1 %t370, label %wbody65, label %wend66 wbody65: - %t365 = load ptr, ptr %t337 - %t366 = getelementptr inbounds %Cmp_Node, ptr %t365, i32 0, i32 7 - %t367 = load ptr, ptr %t366 - %t368 = load i32, ptr %t355 - %t369 = getelementptr inbounds %LSlice, ptr %t367, i32 0, i32 0 - %t370 = load ptr, ptr %t369 - %t371 = getelementptr inbounds %LSlice, ptr %t367, i32 0, i32 1 - %t372 = load i32, ptr %t371 - %t373 = icmp ult i32 %t368, %t372 - br i1 %t373, label %ixok67, label %ixbad68 + %t371 = load ptr, ptr %t340 + %t372 = getelementptr inbounds %Cmp_Node, ptr %t371, i32 0, i32 7 + %t373 = load ptr, ptr %t372 + %t374 = load i32, ptr %t361 + %t375 = getelementptr inbounds %LSlice, ptr %t373, i32 0, i32 0 + %t376 = load ptr, ptr %t375 + %t377 = getelementptr inbounds %LSlice, ptr %t373, i32 0, i32 1 + %t378 = load i32, ptr %t377 + %t379 = icmp ult i32 %t374, %t378 + br i1 %t379, label %ixok67, label %ixbad68 ixbad68: - %t374 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t374, ptr @.fmt_bounds, ptr @.str12919, i32 %t368, i32 %t372) + %t380 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t380, ptr @.fmt_bounds, ptr @.str13039, i32 %t374, i32 %t378) call void @exit(i32 1) unreachable ixok67: - %t375 = getelementptr inbounds ptr, ptr %t370, i32 %t368 - %t376 = load ptr, ptr %t375 - %t377 = getelementptr inbounds %Cmp_Node, ptr %t376, i32 0, i32 3 - %t378 = load ptr, ptr %t377 - %t379 = call ptr @fn_llty(ptr %t378) - store ptr %t379, ptr %t380 - %t381 = load ptr, ptr %t344 - %t382 = call ptr @lp_str_concat(ptr %t381, ptr @.str12920) - %t383 = load i32, ptr %t355 - %t384 = call ptr @fn_itoa(i32 %t383) - %t385 = call ptr @lp_str_concat(ptr %t382, ptr %t384) + %t381 = getelementptr inbounds ptr, ptr %t376, i32 %t374 + %t382 = load ptr, ptr %t381 + %t383 = getelementptr inbounds %Cmp_Node, ptr %t382, i32 0, i32 3 + %t384 = load ptr, ptr %t383 + %t385 = call ptr @fn_llty(ptr %t384) store ptr %t385, ptr %t386 - call void @fn_emit(ptr @.str12921) - %t387 = load ptr, ptr %t386 - call void @fn_emit(ptr %t387) - call void @fn_emit(ptr @.str12922) - %t388 = load i32, ptr %t355 - %t389 = call ptr @fn_itoa(i32 %t388) - call void @fn_emit(ptr %t389) - call void @fn_emit(ptr @.str12923) - call void @fn_emit(ptr @.str12924) - %t390 = load ptr, ptr %t386 - call void @fn_emit(ptr %t390) - call void @fn_emit(ptr @.str12925) - %t391 = load ptr, ptr %t386 - call void @fn_emit(ptr %t391) - call void @fn_emit(ptr @.str12926) - %t392 = load ptr, ptr %t386 - call void @fn_emit(ptr %t392) - call void @fn_emit(ptr @.str12927) - call void @fn_emit(ptr @.str12928) - %t393 = load ptr, ptr %t386 + %t387 = load ptr, ptr %t347 + %t388 = call ptr @lp_str_concat(ptr %t387, ptr @.str13040) + %t389 = load i32, ptr %t361 + %t390 = call ptr @fn_itoa(i32 %t389) + %t391 = call ptr @lp_str_concat(ptr %t388, ptr %t390) + store ptr %t391, ptr %t392 + call void @fn_emit(ptr @.str13041) + %t393 = load ptr, ptr %t392 call void @fn_emit(ptr %t393) - call void @fn_emit(ptr @.str12929) - call void @fn_emit(ptr @.str12930) - %t394 = load ptr, ptr %t386 - call void @fn_emit(ptr %t394) - call void @fn_emit(ptr @.str12931) - %t395 = load ptr, ptr %t341 + call void @fn_emit(ptr @.str13042) + %t394 = load i32, ptr %t361 + %t395 = call ptr @fn_itoa(i32 %t394) call void @fn_emit(ptr %t395) - call void @fn_emit(ptr @.str12932) - %t396 = load ptr, ptr %t344 + call void @fn_emit(ptr @.str13043) + call void @fn_emit(ptr @.str13044) + %t396 = load ptr, ptr %t392 call void @fn_emit(ptr %t396) - call void @fn_emit(ptr @.str12933) - %t397 = load i32, ptr %t355 - %t398 = call ptr @fn_itoa(i32 %t397) + call void @fn_emit(ptr @.str13045) + %t397 = load ptr, ptr %t392 + call void @fn_emit(ptr %t397) + call void @fn_emit(ptr @.str13046) + %t398 = load ptr, ptr %t392 call void @fn_emit(ptr %t398) - call void @fn_emit(ptr @.str12934) - %t399 = load ptr, ptr %t380 - %t400 = call i32 @lp_str_eq(ptr %t399, ptr @.str12935) - %t401 = icmp ne i32 %t400, 0 - br i1 %t401, label %then69, label %else70 -then69: - call void @fn_emit(ptr @.str12936) - %t402 = load ptr, ptr %t386 + call void @fn_emit(ptr @.str13047) + call void @fn_emit(ptr @.str13048) + %t399 = load ptr, ptr %t392 + call void @fn_emit(ptr %t399) + call void @fn_emit(ptr @.str13049) + call void @fn_emit(ptr @.str13050) + %t400 = load ptr, ptr %t392 + call void @fn_emit(ptr %t400) + call void @fn_emit(ptr @.str13051) + %t401 = load ptr, ptr %t344 + call void @fn_emit(ptr %t401) + call void @fn_emit(ptr @.str13052) + %t402 = load ptr, ptr %t347 call void @fn_emit(ptr %t402) - call void @fn_emit(ptr @.str12937) - call void @fn_emit(ptr @.str12938) - %t403 = load ptr, ptr %t386 - call void @fn_emit(ptr %t403) - call void @fn_emit(ptr @.str12939) - %t404 = load ptr, ptr %t386 + call void @fn_emit(ptr @.str13053) + %t403 = load i32, ptr %t361 + %t404 = call ptr @fn_itoa(i32 %t403) call void @fn_emit(ptr %t404) - call void @fn_emit(ptr @.str12940) + call void @fn_emit(ptr @.str13054) + %t405 = load ptr, ptr %t386 + %t406 = call i32 @lp_str_eq(ptr %t405, ptr @.str13055) + %t407 = icmp ne i32 %t406, 0 + br i1 %t407, label %then69, label %else70 +then69: + call void @fn_emit(ptr @.str13056) + %t408 = load ptr, ptr %t392 + call void @fn_emit(ptr %t408) + call void @fn_emit(ptr @.str13057) + call void @fn_emit(ptr @.str13058) + %t409 = load ptr, ptr %t392 + call void @fn_emit(ptr %t409) + call void @fn_emit(ptr @.str13059) + %t410 = load ptr, ptr %t392 + call void @fn_emit(ptr %t410) + call void @fn_emit(ptr @.str13060) br label %ifend71 else70: - %t405 = load ptr, ptr %t380 - %t406 = call i32 @lp_str_eq(ptr %t405, ptr @.str12941) - %t407 = icmp ne i32 %t406, 0 - br i1 %t407, label %then72, label %else73 + %t411 = load ptr, ptr %t386 + %t412 = call i32 @lp_str_eq(ptr %t411, ptr @.str13061) + %t413 = icmp ne i32 %t412, 0 + br i1 %t413, label %then72, label %else73 then72: - call void @fn_emit(ptr @.str12942) - %t408 = load ptr, ptr %t386 - call void @fn_emit(ptr %t408) - call void @fn_emit(ptr @.str12943) - call void @fn_emit(ptr @.str12944) - %t409 = load ptr, ptr %t386 - call void @fn_emit(ptr %t409) - call void @fn_emit(ptr @.str12945) - %t410 = load ptr, ptr %t386 - call void @fn_emit(ptr %t410) - call void @fn_emit(ptr @.str12946) + call void @fn_emit(ptr @.str13062) + %t414 = load ptr, ptr %t392 + call void @fn_emit(ptr %t414) + call void @fn_emit(ptr @.str13063) + call void @fn_emit(ptr @.str13064) + %t415 = load ptr, ptr %t392 + call void @fn_emit(ptr %t415) + call void @fn_emit(ptr @.str13065) + %t416 = load ptr, ptr %t392 + call void @fn_emit(ptr %t416) + call void @fn_emit(ptr @.str13066) br label %ifend74 else73: - call void @fn_emit(ptr @.str12947) - %t411 = load ptr, ptr %t386 - call void @fn_emit(ptr %t411) - call void @fn_emit(ptr @.str12948) - call void @fn_emit(ptr @.str12949) - %t412 = load ptr, ptr %t386 - call void @fn_emit(ptr %t412) - call void @fn_emit(ptr @.str12950) - %t413 = load ptr, ptr %t386 - call void @fn_emit(ptr %t413) - call void @fn_emit(ptr @.str12951) + call void @fn_emit(ptr @.str13067) + %t417 = load ptr, ptr %t392 + call void @fn_emit(ptr %t417) + call void @fn_emit(ptr @.str13068) + call void @fn_emit(ptr @.str13069) + %t418 = load ptr, ptr %t392 + call void @fn_emit(ptr %t418) + call void @fn_emit(ptr @.str13070) + %t419 = load ptr, ptr %t392 + call void @fn_emit(ptr %t419) + call void @fn_emit(ptr @.str13071) br label %ifend74 ifend74: br label %ifend71 ifend71: - call void @fn_emit(ptr @.str12952) - %t414 = load ptr, ptr %t386 - call void @fn_emit(ptr %t414) - call void @fn_emit(ptr @.str12953) - %t415 = load i32, ptr %t355 - %t416 = add i32 %t415, 1 - store i32 %t416, ptr %t355 + call void @fn_emit(ptr @.str13072) + %t420 = load ptr, ptr %t392 + call void @fn_emit(ptr %t420) + call void @fn_emit(ptr @.str13073) + %t421 = load i32, ptr %t361 + %t422 = add i32 %t421, 1 + store i32 %t422, ptr %t361 br label %wcond64 wend66: - call void @fn_emit(ptr @.str12954) - call void @fn_emit(ptr @.str12955) - %t417 = load ptr, ptr %t344 - call void @fn_emit(ptr %t417) - call void @fn_emit(ptr @.str12956) - %t418 = load i32, ptr %t33 - %t419 = add i32 %t418, 1 - store i32 %t419, ptr %t33 + call void @fn_emit(ptr @.str13074) + call void @fn_emit(ptr @.str13075) + %t423 = load ptr, ptr %t347 + call void @fn_emit(ptr %t423) + call void @fn_emit(ptr @.str13076) + %t424 = load i32, ptr %t33 + %t425 = add i32 %t424, 1 + store i32 %t425, ptr %t33 br label %ifend61 ifend61: - %t420 = load i32, ptr %t34 - %t421 = add i32 %t420, 1 - store i32 %t421, ptr %t34 + %t426 = load i32, ptr %t34 + %t427 = add i32 %t426, 1 + store i32 %t427, ptr %t34 br label %wcond54 wend56: - call void @fn_emit(ptr @.str12957) - %t422 = load ptr, ptr %t32 - call void @fn_emit(ptr %t422) - call void @fn_emit(ptr @.str12958) - call void @fn_emit(ptr @.str12959) - call void @fn_emit(ptr @.str12960) - call void @fn_emit(ptr @.str12961) - call void @fn_emit(ptr @.str12962) - call void @fn_emit(ptr @.str12963) - call void @fn_emit(ptr @.str12964) + call void @fn_emit(ptr @.str13077) + %t428 = load ptr, ptr %t32 + call void @fn_emit(ptr %t428) + call void @fn_emit(ptr @.str13078) + call void @fn_emit(ptr @.str13079) + call void @fn_emit(ptr @.str13080) + call void @fn_emit(ptr @.str13081) + call void @fn_emit(ptr @.str13082) + call void @fn_emit(ptr @.str13083) + call void @fn_emit(ptr @.str13084) store i32 0, ptr %t33 store i32 0, ptr %t34 br label %wcond75 wcond75: - %t423 = load i32, ptr %t34 - %t424 = load ptr, ptr @g_prog - %t425 = getelementptr inbounds %LSlice, ptr %t424, i32 0, i32 1 - %t426 = load i32, ptr %t425 - %t427 = icmp slt i32 %t423, %t426 - %t428 = zext i1 %t427 to i32 - %t429 = icmp ne i32 %t428, 0 - br i1 %t429, label %wbody76, label %wend77 -wbody76: + %t429 = load i32, ptr %t34 %t430 = load ptr, ptr @g_prog - %t431 = load i32, ptr %t34 - %t432 = getelementptr inbounds %LSlice, ptr %t430, i32 0, i32 0 - %t433 = load ptr, ptr %t432 - %t434 = getelementptr inbounds %LSlice, ptr %t430, i32 0, i32 1 - %t435 = load i32, ptr %t434 - %t436 = icmp ult i32 %t431, %t435 - br i1 %t436, label %ixok78, label %ixbad79 + %t431 = getelementptr inbounds %LSlice, ptr %t430, i32 0, i32 1 + %t432 = load i32, ptr %t431 + %t433 = icmp slt i32 %t429, %t432 + %t434 = zext i1 %t433 to i32 + %t435 = icmp ne i32 %t434, 0 + br i1 %t435, label %wbody76, label %wend77 +wbody76: + %t436 = load ptr, ptr @g_prog + %t437 = load i32, ptr %t34 + %t438 = getelementptr inbounds %LSlice, ptr %t436, i32 0, i32 0 + %t439 = load ptr, ptr %t438 + %t440 = getelementptr inbounds %LSlice, ptr %t436, i32 0, i32 1 + %t441 = load i32, ptr %t440 + %t442 = icmp ult i32 %t437, %t441 + br i1 %t442, label %ixok78, label %ixbad79 ixbad79: - %t437 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t437, ptr @.fmt_bounds, ptr @.str12965, i32 %t431, i32 %t435) + %t443 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t443, ptr @.fmt_bounds, ptr @.str13085, i32 %t437, i32 %t441) call void @exit(i32 1) unreachable ixok78: - %t438 = getelementptr inbounds ptr, ptr %t433, i32 %t431 - %t439 = load ptr, ptr %t438 - %t440 = getelementptr inbounds %Cmp_Node, ptr %t439, i32 0, i32 0 - %t441 = load i32, ptr %t440 - %t442 = icmp eq i32 %t441, 8 - %t443 = zext i1 %t442 to i32 - %t444 = icmp ne i32 %t443, 0 - br i1 %t444, label %then80, label %ifend82 + %t444 = getelementptr inbounds ptr, ptr %t439, i32 %t437 + %t445 = load ptr, ptr %t444 + %t446 = getelementptr inbounds %Cmp_Node, ptr %t445, i32 0, i32 0 + %t447 = load i32, ptr %t446 + %t448 = icmp eq i32 %t447, 8 + %t449 = zext i1 %t448 to i32 + %t450 = icmp ne i32 %t449, 0 + br i1 %t450, label %then80, label %ifend82 then80: - %t445 = load ptr, ptr @g_prog - %t446 = load i32, ptr %t34 - %t447 = getelementptr inbounds %LSlice, ptr %t445, i32 0, i32 0 - %t448 = load ptr, ptr %t447 - %t449 = getelementptr inbounds %LSlice, ptr %t445, i32 0, i32 1 - %t450 = load i32, ptr %t449 - %t451 = icmp ult i32 %t446, %t450 - br i1 %t451, label %ixok83, label %ixbad84 + %t451 = load ptr, ptr @g_prog + %t452 = load i32, ptr %t34 + %t453 = getelementptr inbounds %LSlice, ptr %t451, i32 0, i32 0 + %t454 = load ptr, ptr %t453 + %t455 = getelementptr inbounds %LSlice, ptr %t451, i32 0, i32 1 + %t456 = load i32, ptr %t455 + %t457 = icmp ult i32 %t452, %t456 + br i1 %t457, label %ixok83, label %ixbad84 ixbad84: - %t452 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t452, ptr @.fmt_bounds, ptr @.str12966, i32 %t446, i32 %t450) + %t458 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t458, ptr @.fmt_bounds, ptr @.str13086, i32 %t452, i32 %t456) call void @exit(i32 1) unreachable ixok83: - %t453 = getelementptr inbounds ptr, ptr %t448, i32 %t446 - %t454 = load ptr, ptr %t453 - %t455 = getelementptr inbounds %Cmp_Node, ptr %t454, i32 0, i32 1 - %t456 = load ptr, ptr %t455 - store ptr %t456, ptr %t457 - %t458 = load i32, ptr %t33 - %t459 = call ptr @fn_itoa(i32 %t458) - store ptr %t459, ptr %t460 - call void @fn_emit(ptr @.str12967) - %t461 = load ptr, ptr %t460 - call void @fn_emit(ptr %t461) - call void @fn_emit(ptr @.str12968) - %t462 = load ptr, ptr %t460 - call void @fn_emit(ptr %t462) - call void @fn_emit(ptr @.str12969) - call void @fn_emit(ptr @.str12970) - %t463 = load ptr, ptr %t460 - call void @fn_emit(ptr %t463) - call void @fn_emit(ptr @.str12971) - %t464 = load ptr, ptr %t460 - call void @fn_emit(ptr %t464) - call void @fn_emit(ptr @.str12972) - %t465 = load ptr, ptr %t460 - call void @fn_emit(ptr %t465) - call void @fn_emit(ptr @.str12973) - call void @fn_emit(ptr @.str12974) - %t466 = load ptr, ptr %t460 - call void @fn_emit(ptr %t466) - call void @fn_emit(ptr @.str12975) - call void @fn_emit(ptr @.str12976) - %t467 = load ptr, ptr %t460 + %t459 = getelementptr inbounds ptr, ptr %t454, i32 %t452 + %t460 = load ptr, ptr %t459 + %t461 = getelementptr inbounds %Cmp_Node, ptr %t460, i32 0, i32 1 + %t462 = load ptr, ptr %t461 + store ptr %t462, ptr %t463 + %t464 = load i32, ptr %t33 + %t465 = call ptr @fn_itoa(i32 %t464) + store ptr %t465, ptr %t466 + call void @fn_emit(ptr @.str13087) + %t467 = load ptr, ptr %t466 call void @fn_emit(ptr %t467) - call void @fn_emit(ptr @.str12977) - %t468 = load ptr, ptr %t1 + call void @fn_emit(ptr @.str13088) + %t468 = load ptr, ptr %t466 call void @fn_emit(ptr %t468) - call void @fn_emit(ptr @.str12978) - %t469 = load ptr, ptr %t457 + call void @fn_emit(ptr @.str13089) + call void @fn_emit(ptr @.str13090) + %t469 = load ptr, ptr %t466 call void @fn_emit(ptr %t469) - call void @fn_emit(ptr @.str12979) - call void @fn_emit(ptr @.str12980) - %t470 = load ptr, ptr %t460 + call void @fn_emit(ptr @.str13091) + %t470 = load ptr, ptr %t466 call void @fn_emit(ptr %t470) - call void @fn_emit(ptr @.str12981) - %t471 = load ptr, ptr %t460 + call void @fn_emit(ptr @.str13092) + %t471 = load ptr, ptr %t466 call void @fn_emit(ptr %t471) - call void @fn_emit(ptr @.str12982) - call void @fn_emit(ptr @.str12983) - %t472 = load ptr, ptr %t460 + call void @fn_emit(ptr @.str13093) + call void @fn_emit(ptr @.str13094) + %t472 = load ptr, ptr %t466 call void @fn_emit(ptr %t472) - call void @fn_emit(ptr @.str12984) - %t473 = load ptr, ptr %t460 - call void @fn_emit(ptr %t473) - call void @fn_emit(ptr @.str12985) - %t474 = load ptr, ptr %t460 - call void @fn_emit(ptr %t474) - call void @fn_emit(ptr @.str12986) - call void @fn_emit(ptr @.str12987) - %t475 = load ptr, ptr %t460 - call void @fn_emit(ptr %t475) - call void @fn_emit(ptr @.str12988) - %t476 = load i32, ptr %t33 - %t477 = add i32 %t476, 1 - store i32 %t477, ptr %t33 + call void @fn_emit(ptr @.str13095) + %t473 = load ptr, ptr %t463 + %t474 = call ptr @lp_str_concat(ptr @.str13096, ptr %t473) + %t475 = call ptr @fn_ecs_base(ptr %t474) + store ptr %t475, ptr %t476 + call void @fn_emit(ptr @.str13097) + %t477 = load ptr, ptr %t466 + call void @fn_emit(ptr %t477) + call void @fn_emit(ptr @.str13098) + %t478 = load ptr, ptr %t476 + call void @fn_emit(ptr %t478) + call void @fn_emit(ptr @.str13099) + call void @fn_emit(ptr @.str13100) + %t479 = load ptr, ptr %t466 + call void @fn_emit(ptr %t479) + call void @fn_emit(ptr @.str13101) + %t480 = load ptr, ptr %t466 + call void @fn_emit(ptr %t480) + call void @fn_emit(ptr @.str13102) + call void @fn_emit(ptr @.str13103) + %t481 = load ptr, ptr %t466 + call void @fn_emit(ptr %t481) + call void @fn_emit(ptr @.str13104) + %t482 = load ptr, ptr %t466 + call void @fn_emit(ptr %t482) + call void @fn_emit(ptr @.str13105) + %t483 = load ptr, ptr %t466 + call void @fn_emit(ptr %t483) + call void @fn_emit(ptr @.str13106) + call void @fn_emit(ptr @.str13107) + %t484 = load ptr, ptr %t466 + call void @fn_emit(ptr %t484) + call void @fn_emit(ptr @.str13108) + %t485 = load i32, ptr %t33 + %t486 = add i32 %t485, 1 + store i32 %t486, ptr %t33 br label %ifend82 ifend82: - %t478 = load i32, ptr %t34 - %t479 = add i32 %t478, 1 - store i32 %t479, ptr %t34 + %t487 = load i32, ptr %t34 + %t488 = add i32 %t487, 1 + store i32 %t488, ptr %t34 br label %wcond75 wend77: - call void @fn_emit(ptr @.str12989) - %t480 = load ptr, ptr %t32 - call void @fn_emit(ptr %t480) - call void @fn_emit(ptr @.str12990) - call void @fn_emit(ptr @.str12991) - call void @fn_emit(ptr @.str12992) - call void @fn_emit(ptr @.str12993) - call void @fn_emit(ptr @.str12994) - call void @fn_emit(ptr @.str12995) - call void @fn_emit(ptr @.str12996) - %t481 = load ptr, ptr %t1 - call void @fn_emit(ptr %t481) - call void @fn_emit(ptr @.str12997) - call void @fn_emit(ptr @.str12998) - call void @fn_emit(ptr @.str12999) - call void @fn_emit(ptr @.str13000) - %t482 = load ptr, ptr %t1 - call void @fn_emit(ptr %t482) - call void @fn_emit(ptr @.str13001) - %t483 = load ptr, ptr %t1 - call void @fn_emit(ptr %t483) - call void @fn_emit(ptr @.str13002) - call void @fn_emit(ptr @.str13003) - call void @fn_emit(ptr @.str13004) - call void @fn_emit(ptr @.str13005) - call void @fn_emit(ptr @.str13006) - %t484 = load ptr, ptr %t32 - call void @fn_emit(ptr %t484) - call void @fn_emit(ptr @.str13007) - call void @fn_emit(ptr @.str13008) - call void @fn_emit(ptr @.str13009) - call void @fn_emit(ptr @.str13010) - %t485 = load ptr, ptr %t32 - call void @fn_emit(ptr %t485) - call void @fn_emit(ptr @.str13011) - call void @fn_emit(ptr @.str13012) - call void @fn_emit(ptr @.str13013) - %t486 = load ptr, ptr %t32 - call void @fn_emit(ptr %t486) - call void @fn_emit(ptr @.str13014) - call void @fn_emit(ptr @.str13015) - call void @fn_emit(ptr @.str13016) - call void @fn_emit(ptr @.str13017) - %t487 = load ptr, ptr %t1 - call void @fn_emit(ptr %t487) - call void @fn_emit(ptr @.str13018) - call void @fn_emit(ptr @.str13019) - call void @fn_emit(ptr @.str13020) + call void @fn_emit(ptr @.str13109) + %t489 = load ptr, ptr %t32 + call void @fn_emit(ptr %t489) + call void @fn_emit(ptr @.str13110) + call void @fn_emit(ptr @.str13111) + call void @fn_emit(ptr @.str13112) + call void @fn_emit(ptr @.str13113) + call void @fn_emit(ptr @.str13114) + call void @fn_emit(ptr @.str13115) + call void @fn_emit(ptr @.str13116) + call void @fn_emit(ptr @.str13117) + call void @fn_emit(ptr @.str13118) + call void @fn_emit(ptr @.str13119) + call void @fn_emit(ptr @.str13120) + call void @fn_emit(ptr @.str13121) + call void @fn_emit(ptr @.str13122) + call void @fn_emit(ptr @.str13123) + %t490 = load ptr, ptr %t32 + call void @fn_emit(ptr %t490) + call void @fn_emit(ptr @.str13124) + call void @fn_emit(ptr @.str13125) + call void @fn_emit(ptr @.str13126) + call void @fn_emit(ptr @.str13127) + %t491 = load ptr, ptr %t32 + call void @fn_emit(ptr %t491) + call void @fn_emit(ptr @.str13128) + call void @fn_emit(ptr @.str13129) + call void @fn_emit(ptr @.str13130) + %t492 = load ptr, ptr %t32 + call void @fn_emit(ptr %t492) + call void @fn_emit(ptr @.str13131) + call void @fn_emit(ptr @.str13132) + call void @fn_emit(ptr @.str13133) + %t493 = call ptr @fn_ecs_base(ptr @.str13134) + store ptr %t493, ptr %t494 + call void @fn_emit(ptr @.str13135) + %t495 = load ptr, ptr %t494 + call void @fn_emit(ptr %t495) + call void @fn_emit(ptr @.str13136) + call void @fn_emit(ptr @.str13137) + call void @fn_emit(ptr @.str13138) store i32 0, ptr %t33 store i32 0, ptr %t34 br label %wcond85 wcond85: - %t488 = load i32, ptr %t34 - %t489 = load ptr, ptr @g_prog - %t490 = getelementptr inbounds %LSlice, ptr %t489, i32 0, i32 1 - %t491 = load i32, ptr %t490 - %t492 = icmp slt i32 %t488, %t491 - %t493 = zext i1 %t492 to i32 - %t494 = icmp ne i32 %t493, 0 - br i1 %t494, label %wbody86, label %wend87 -wbody86: - %t495 = load ptr, ptr @g_prog %t496 = load i32, ptr %t34 - %t497 = getelementptr inbounds %LSlice, ptr %t495, i32 0, i32 0 - %t498 = load ptr, ptr %t497 - %t499 = getelementptr inbounds %LSlice, ptr %t495, i32 0, i32 1 - %t500 = load i32, ptr %t499 - %t501 = icmp ult i32 %t496, %t500 - br i1 %t501, label %ixok88, label %ixbad89 + %t497 = load ptr, ptr @g_prog + %t498 = getelementptr inbounds %LSlice, ptr %t497, i32 0, i32 1 + %t499 = load i32, ptr %t498 + %t500 = icmp slt i32 %t496, %t499 + %t501 = zext i1 %t500 to i32 + %t502 = icmp ne i32 %t501, 0 + br i1 %t502, label %wbody86, label %wend87 +wbody86: + %t503 = load ptr, ptr @g_prog + %t504 = load i32, ptr %t34 + %t505 = getelementptr inbounds %LSlice, ptr %t503, i32 0, i32 0 + %t506 = load ptr, ptr %t505 + %t507 = getelementptr inbounds %LSlice, ptr %t503, i32 0, i32 1 + %t508 = load i32, ptr %t507 + %t509 = icmp ult i32 %t504, %t508 + br i1 %t509, label %ixok88, label %ixbad89 ixbad89: - %t502 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t502, ptr @.fmt_bounds, ptr @.str13021, i32 %t496, i32 %t500) + %t510 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t510, ptr @.fmt_bounds, ptr @.str13139, i32 %t504, i32 %t508) call void @exit(i32 1) unreachable ixok88: - %t503 = getelementptr inbounds ptr, ptr %t498, i32 %t496 - %t504 = load ptr, ptr %t503 - %t505 = getelementptr inbounds %Cmp_Node, ptr %t504, i32 0, i32 0 - %t506 = load i32, ptr %t505 - %t507 = icmp eq i32 %t506, 10 - %t508 = zext i1 %t507 to i32 - %t509 = icmp ne i32 %t508, 0 - br i1 %t509, label %then90, label %ifend92 + %t511 = getelementptr inbounds ptr, ptr %t506, i32 %t504 + %t512 = load ptr, ptr %t511 + %t513 = getelementptr inbounds %Cmp_Node, ptr %t512, i32 0, i32 0 + %t514 = load i32, ptr %t513 + %t515 = icmp eq i32 %t514, 10 + %t516 = zext i1 %t515 to i32 + %t517 = icmp ne i32 %t516, 0 + br i1 %t517, label %then90, label %ifend92 then90: - %t510 = load ptr, ptr @g_prog - %t511 = load i32, ptr %t34 - %t512 = getelementptr inbounds %LSlice, ptr %t510, i32 0, i32 0 - %t513 = load ptr, ptr %t512 - %t514 = getelementptr inbounds %LSlice, ptr %t510, i32 0, i32 1 - %t515 = load i32, ptr %t514 - %t516 = icmp ult i32 %t511, %t515 - br i1 %t516, label %ixok93, label %ixbad94 + %t518 = load ptr, ptr @g_prog + %t519 = load i32, ptr %t34 + %t520 = getelementptr inbounds %LSlice, ptr %t518, i32 0, i32 0 + %t521 = load ptr, ptr %t520 + %t522 = getelementptr inbounds %LSlice, ptr %t518, i32 0, i32 1 + %t523 = load i32, ptr %t522 + %t524 = icmp ult i32 %t519, %t523 + br i1 %t524, label %ixok93, label %ixbad94 ixbad94: - %t517 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t517, ptr @.fmt_bounds, ptr @.str13022, i32 %t511, i32 %t515) + %t525 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t525, ptr @.fmt_bounds, ptr @.str13140, i32 %t519, i32 %t523) call void @exit(i32 1) unreachable ixok93: - %t518 = getelementptr inbounds ptr, ptr %t513, i32 %t511 - %t519 = load ptr, ptr %t518 - %t520 = getelementptr inbounds %Cmp_Node, ptr %t519, i32 0, i32 1 - %t521 = load ptr, ptr %t520 - %t522 = call ptr @fn_emit_str_const(ptr %t521) - store ptr %t522, ptr %t523 - %t524 = load i32, ptr %t33 - %t525 = call ptr @fn_itoa(i32 %t524) - store ptr %t525, ptr %t526 - call void @fn_emit(ptr @.str13023) + %t526 = getelementptr inbounds ptr, ptr %t521, i32 %t519 %t527 = load ptr, ptr %t526 - call void @fn_emit(ptr %t527) - call void @fn_emit(ptr @.str13024) - %t528 = load ptr, ptr %t523 - call void @fn_emit(ptr %t528) - call void @fn_emit(ptr @.str13025) - call void @fn_emit(ptr @.str13026) - %t529 = load ptr, ptr %t526 - call void @fn_emit(ptr %t529) - call void @fn_emit(ptr @.str13027) - %t530 = load ptr, ptr %t526 - call void @fn_emit(ptr %t530) - call void @fn_emit(ptr @.str13028) - call void @fn_emit(ptr @.str13029) - %t531 = load ptr, ptr %t526 - call void @fn_emit(ptr %t531) - call void @fn_emit(ptr @.str13030) - %t532 = load ptr, ptr %t526 - call void @fn_emit(ptr %t532) - call void @fn_emit(ptr @.str13031) - %t533 = load ptr, ptr %t526 - call void @fn_emit(ptr %t533) - call void @fn_emit(ptr @.str13032) - call void @fn_emit(ptr @.str13033) - %t534 = load ptr, ptr %t526 - call void @fn_emit(ptr %t534) - call void @fn_emit(ptr @.str13034) - %t535 = load ptr, ptr @g_prog - %t536 = load i32, ptr %t34 - %t537 = getelementptr inbounds %LSlice, ptr %t535, i32 0, i32 0 - %t538 = load ptr, ptr %t537 - %t539 = getelementptr inbounds %LSlice, ptr %t535, i32 0, i32 1 - %t540 = load i32, ptr %t539 - %t541 = icmp ult i32 %t536, %t540 - br i1 %t541, label %ixok95, label %ixbad96 + %t528 = getelementptr inbounds %Cmp_Node, ptr %t527, i32 0, i32 1 + %t529 = load ptr, ptr %t528 + %t530 = call ptr @fn_emit_str_const(ptr %t529) + store ptr %t530, ptr %t531 + %t532 = load i32, ptr %t33 + %t533 = call ptr @fn_itoa(i32 %t532) + store ptr %t533, ptr %t534 + call void @fn_emit(ptr @.str13141) + %t535 = load ptr, ptr %t534 + call void @fn_emit(ptr %t535) + call void @fn_emit(ptr @.str13142) + %t536 = load ptr, ptr %t531 + call void @fn_emit(ptr %t536) + call void @fn_emit(ptr @.str13143) + call void @fn_emit(ptr @.str13144) + %t537 = load ptr, ptr %t534 + call void @fn_emit(ptr %t537) + call void @fn_emit(ptr @.str13145) + %t538 = load ptr, ptr %t534 + call void @fn_emit(ptr %t538) + call void @fn_emit(ptr @.str13146) + call void @fn_emit(ptr @.str13147) + %t539 = load ptr, ptr %t534 + call void @fn_emit(ptr %t539) + call void @fn_emit(ptr @.str13148) + %t540 = load ptr, ptr %t534 + call void @fn_emit(ptr %t540) + call void @fn_emit(ptr @.str13149) + %t541 = load ptr, ptr %t534 + call void @fn_emit(ptr %t541) + call void @fn_emit(ptr @.str13150) + call void @fn_emit(ptr @.str13151) + %t542 = load ptr, ptr %t534 + call void @fn_emit(ptr %t542) + call void @fn_emit(ptr @.str13152) + %t543 = load ptr, ptr @g_prog + %t544 = load i32, ptr %t34 + %t545 = getelementptr inbounds %LSlice, ptr %t543, i32 0, i32 0 + %t546 = load ptr, ptr %t545 + %t547 = getelementptr inbounds %LSlice, ptr %t543, i32 0, i32 1 + %t548 = load i32, ptr %t547 + %t549 = icmp ult i32 %t544, %t548 + br i1 %t549, label %ixok95, label %ixbad96 ixbad96: - %t542 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t542, ptr @.fmt_bounds, ptr @.str13035, i32 %t536, i32 %t540) + %t550 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t550, ptr @.fmt_bounds, ptr @.str13153, i32 %t544, i32 %t548) call void @exit(i32 1) unreachable ixok95: - %t543 = getelementptr inbounds ptr, ptr %t538, i32 %t536 - %t544 = load ptr, ptr %t543 - %t545 = getelementptr inbounds %Cmp_Node, ptr %t544, i32 0, i32 1 - %t546 = load ptr, ptr %t545 - %t547 = call i32 @fn_find_arch_id(ptr %t546) - %t548 = call ptr @fn_itoa(i32 %t547) - call void @fn_emit(ptr %t548) - call void @fn_emit(ptr @.str13036) - call void @fn_emit(ptr @.str13037) - %t549 = load ptr, ptr %t526 - call void @fn_emit(ptr %t549) - call void @fn_emit(ptr @.str13038) - %t550 = load i32, ptr %t33 - %t551 = add i32 %t550, 1 - store i32 %t551, ptr %t33 + %t551 = getelementptr inbounds ptr, ptr %t546, i32 %t544 + %t552 = load ptr, ptr %t551 + %t553 = getelementptr inbounds %Cmp_Node, ptr %t552, i32 0, i32 1 + %t554 = load ptr, ptr %t553 + %t555 = call i32 @fn_find_arch_id(ptr %t554) + %t556 = call ptr @fn_itoa(i32 %t555) + call void @fn_emit(ptr %t556) + call void @fn_emit(ptr @.str13154) + call void @fn_emit(ptr @.str13155) + %t557 = load ptr, ptr %t534 + call void @fn_emit(ptr %t557) + call void @fn_emit(ptr @.str13156) + %t558 = load i32, ptr %t33 + %t559 = add i32 %t558, 1 + store i32 %t559, ptr %t33 br label %ifend92 ifend92: - %t552 = load i32, ptr %t34 - %t553 = add i32 %t552, 1 - store i32 %t553, ptr %t34 + %t560 = load i32, ptr %t34 + %t561 = add i32 %t560, 1 + store i32 %t561, ptr %t34 br label %wcond85 wend87: - call void @fn_emit(ptr @.str13039) + call void @fn_emit(ptr @.str13157) store i32 0, ptr %t34 br label %wcond97 wcond97: - %t554 = load i32, ptr %t34 - %t555 = load ptr, ptr @g_prog - %t556 = getelementptr inbounds %LSlice, ptr %t555, i32 0, i32 1 - %t557 = load i32, ptr %t556 - %t558 = icmp slt i32 %t554, %t557 - %t559 = zext i1 %t558 to i32 - %t560 = icmp ne i32 %t559, 0 - br i1 %t560, label %wbody98, label %wend99 -wbody98: - %t561 = load ptr, ptr @g_prog %t562 = load i32, ptr %t34 - %t563 = getelementptr inbounds %LSlice, ptr %t561, i32 0, i32 0 - %t564 = load ptr, ptr %t563 - %t565 = getelementptr inbounds %LSlice, ptr %t561, i32 0, i32 1 - %t566 = load i32, ptr %t565 - %t567 = icmp ult i32 %t562, %t566 - br i1 %t567, label %ixok100, label %ixbad101 + %t563 = load ptr, ptr @g_prog + %t564 = getelementptr inbounds %LSlice, ptr %t563, i32 0, i32 1 + %t565 = load i32, ptr %t564 + %t566 = icmp slt i32 %t562, %t565 + %t567 = zext i1 %t566 to i32 + %t568 = icmp ne i32 %t567, 0 + br i1 %t568, label %wbody98, label %wend99 +wbody98: + %t569 = load ptr, ptr @g_prog + %t570 = load i32, ptr %t34 + %t571 = getelementptr inbounds %LSlice, ptr %t569, i32 0, i32 0 + %t572 = load ptr, ptr %t571 + %t573 = getelementptr inbounds %LSlice, ptr %t569, i32 0, i32 1 + %t574 = load i32, ptr %t573 + %t575 = icmp ult i32 %t570, %t574 + br i1 %t575, label %ixok100, label %ixbad101 ixbad101: - %t568 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t568, ptr @.fmt_bounds, ptr @.str13040, i32 %t562, i32 %t566) + %t576 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t576, ptr @.fmt_bounds, ptr @.str13158, i32 %t570, i32 %t574) call void @exit(i32 1) unreachable ixok100: - %t569 = getelementptr inbounds ptr, ptr %t564, i32 %t562 - %t570 = load ptr, ptr %t569 - %t571 = getelementptr inbounds %Cmp_Node, ptr %t570, i32 0, i32 0 - %t572 = load i32, ptr %t571 - %t573 = icmp eq i32 %t572, 10 - %t574 = zext i1 %t573 to i32 - %t575 = icmp ne i32 %t574, 0 - br i1 %t575, label %then102, label %ifend104 + %t577 = getelementptr inbounds ptr, ptr %t572, i32 %t570 + %t578 = load ptr, ptr %t577 + %t579 = getelementptr inbounds %Cmp_Node, ptr %t578, i32 0, i32 0 + %t580 = load i32, ptr %t579 + %t581 = icmp eq i32 %t580, 10 + %t582 = zext i1 %t581 to i32 + %t583 = icmp ne i32 %t582, 0 + br i1 %t583, label %then102, label %ifend104 then102: - %t576 = load ptr, ptr @g_prog - %t577 = load i32, ptr %t34 - %t578 = getelementptr inbounds %LSlice, ptr %t576, i32 0, i32 0 - %t579 = load ptr, ptr %t578 - %t580 = getelementptr inbounds %LSlice, ptr %t576, i32 0, i32 1 - %t581 = load i32, ptr %t580 - %t582 = icmp ult i32 %t577, %t581 - br i1 %t582, label %ixok105, label %ixbad106 + %t584 = load ptr, ptr @g_prog + %t585 = load i32, ptr %t34 + %t586 = getelementptr inbounds %LSlice, ptr %t584, i32 0, i32 0 + %t587 = load ptr, ptr %t586 + %t588 = getelementptr inbounds %LSlice, ptr %t584, i32 0, i32 1 + %t589 = load i32, ptr %t588 + %t590 = icmp ult i32 %t585, %t589 + br i1 %t590, label %ixok105, label %ixbad106 ixbad106: - %t583 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t583, ptr @.fmt_bounds, ptr @.str13041, i32 %t577, i32 %t581) + %t591 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t591, ptr @.fmt_bounds, ptr @.str13159, i32 %t585, i32 %t589) call void @exit(i32 1) unreachable ixok105: - %t584 = getelementptr inbounds ptr, ptr %t579, i32 %t577 - %t585 = load ptr, ptr %t584 - %t586 = getelementptr inbounds %Cmp_Node, ptr %t585, i32 0, i32 1 - %t587 = load ptr, ptr %t586 - store ptr %t587, ptr %t588 + %t592 = getelementptr inbounds ptr, ptr %t587, i32 %t585 + %t593 = load ptr, ptr %t592 + %t594 = getelementptr inbounds %Cmp_Node, ptr %t593, i32 0, i32 1 + %t595 = load ptr, ptr %t594 + store ptr %t595, ptr %t596 store i32 0, ptr @g_ll_t store i32 0, ptr @g_ll_lbl store i32 0, ptr @g_g_term call void @fn_loc_reset() store i32 0, ptr @g_nloop store i32 0, ptr @g_nself - store ptr @.str13042, ptr @g_ret_ty - %t589 = call ptr @fn_buf_new() - store ptr %t589, ptr %t590 - %t591 = call ptr @fn_buf_new() - store ptr %t591, ptr @g_falloc - %t592 = load ptr, ptr @g_code - store ptr %t592, ptr %t593 - %t594 = load ptr, ptr %t590 - store ptr %t594, ptr @g_code - %t595 = call ptr @fn_node(i32 22) - store ptr %t595, ptr %t596 - %t597 = load ptr, ptr %t596 - %t598 = getelementptr inbounds %Cmp_Node, ptr %t597, i32 0, i32 1 - %t599 = load ptr, ptr %t588 - store ptr %t599, ptr %t598 - %t600 = load ptr, ptr %t596 - %t601 = call ptr @fn_emit_spawn(ptr %t600) - store ptr %t601, ptr %t602 - call void @fn_emit(ptr @.str13043) - %t603 = load ptr, ptr %t602 - call void @fn_emit(ptr %t603) - call void @fn_emit(ptr @.str13044) - %t604 = load ptr, ptr %t593 - store ptr %t604, ptr @g_code - call void @fn_emit(ptr @.str13045) - %t605 = load ptr, ptr %t588 - call void @fn_emit(ptr %t605) - call void @fn_emit(ptr @.str13046) - %t606 = load ptr, ptr @g_falloc - %t607 = call ptr @fn_buf_str(ptr %t606) - call void @fn_emit(ptr %t607) - %t608 = load ptr, ptr %t590 - %t609 = call ptr @fn_buf_str(ptr %t608) - call void @fn_emit(ptr %t609) - call void @fn_emit(ptr @.str13047) + store ptr @.str13160, ptr @g_ret_ty + %t597 = call ptr @fn_buf_new() + store ptr %t597, ptr %t598 + %t599 = call ptr @fn_buf_new() + store ptr %t599, ptr @g_falloc + %t600 = load ptr, ptr @g_code + store ptr %t600, ptr %t601 + %t602 = load ptr, ptr %t598 + store ptr %t602, ptr @g_code + %t603 = call ptr @fn_node(i32 22) + store ptr %t603, ptr %t604 + %t605 = load ptr, ptr %t604 + %t606 = getelementptr inbounds %Cmp_Node, ptr %t605, i32 0, i32 1 + %t607 = load ptr, ptr %t596 + store ptr %t607, ptr %t606 + %t608 = load ptr, ptr %t604 + %t609 = call ptr @fn_emit_spawn(ptr %t608) + store ptr %t609, ptr %t610 + call void @fn_emit(ptr @.str13161) + %t611 = load ptr, ptr %t610 + call void @fn_emit(ptr %t611) + call void @fn_emit(ptr @.str13162) + %t612 = load ptr, ptr %t601 + store ptr %t612, ptr @g_code + call void @fn_emit(ptr @.str13163) + %t613 = load ptr, ptr %t596 + call void @fn_emit(ptr %t613) + call void @fn_emit(ptr @.str13164) + %t614 = load ptr, ptr @g_falloc + %t615 = call ptr @fn_buf_str(ptr %t614) + call void @fn_emit(ptr %t615) + %t616 = load ptr, ptr %t598 + %t617 = call ptr @fn_buf_str(ptr %t616) + call void @fn_emit(ptr %t617) + call void @fn_emit(ptr @.str13165) br label %ifend104 ifend104: - %t610 = load i32, ptr %t34 - %t611 = add i32 %t610, 1 - store i32 %t611, ptr %t34 + %t618 = load i32, ptr %t34 + %t619 = add i32 %t618, 1 + store i32 %t619, ptr %t34 br label %wcond97 wend99: - call void @fn_emit(ptr @.str13048) + call void @fn_emit(ptr @.str13166) store i32 0, ptr %t33 store i32 0, ptr %t34 br label %wcond107 wcond107: - %t612 = load i32, ptr %t34 - %t613 = load ptr, ptr @g_prog - %t614 = getelementptr inbounds %LSlice, ptr %t613, i32 0, i32 1 - %t615 = load i32, ptr %t614 - %t616 = icmp slt i32 %t612, %t615 - %t617 = zext i1 %t616 to i32 - %t618 = icmp ne i32 %t617, 0 - br i1 %t618, label %wbody108, label %wend109 -wbody108: - %t619 = load ptr, ptr @g_prog %t620 = load i32, ptr %t34 - %t621 = getelementptr inbounds %LSlice, ptr %t619, i32 0, i32 0 - %t622 = load ptr, ptr %t621 - %t623 = getelementptr inbounds %LSlice, ptr %t619, i32 0, i32 1 - %t624 = load i32, ptr %t623 - %t625 = icmp ult i32 %t620, %t624 - br i1 %t625, label %ixok110, label %ixbad111 + %t621 = load ptr, ptr @g_prog + %t622 = getelementptr inbounds %LSlice, ptr %t621, i32 0, i32 1 + %t623 = load i32, ptr %t622 + %t624 = icmp slt i32 %t620, %t623 + %t625 = zext i1 %t624 to i32 + %t626 = icmp ne i32 %t625, 0 + br i1 %t626, label %wbody108, label %wend109 +wbody108: + %t627 = load ptr, ptr @g_prog + %t628 = load i32, ptr %t34 + %t629 = getelementptr inbounds %LSlice, ptr %t627, i32 0, i32 0 + %t630 = load ptr, ptr %t629 + %t631 = getelementptr inbounds %LSlice, ptr %t627, i32 0, i32 1 + %t632 = load i32, ptr %t631 + %t633 = icmp ult i32 %t628, %t632 + br i1 %t633, label %ixok110, label %ixbad111 ixbad111: - %t626 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t626, ptr @.fmt_bounds, ptr @.str13049, i32 %t620, i32 %t624) + %t634 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t634, ptr @.fmt_bounds, ptr @.str13167, i32 %t628, i32 %t632) call void @exit(i32 1) unreachable ixok110: - %t627 = getelementptr inbounds ptr, ptr %t622, i32 %t620 - %t628 = load ptr, ptr %t627 - %t629 = getelementptr inbounds %Cmp_Node, ptr %t628, i32 0, i32 0 - %t630 = load i32, ptr %t629 - %t631 = icmp eq i32 %t630, 10 - %t632 = zext i1 %t631 to i32 - %t633 = icmp ne i32 %t632, 0 - br i1 %t633, label %then112, label %ifend114 + %t635 = getelementptr inbounds ptr, ptr %t630, i32 %t628 + %t636 = load ptr, ptr %t635 + %t637 = getelementptr inbounds %Cmp_Node, ptr %t636, i32 0, i32 0 + %t638 = load i32, ptr %t637 + %t639 = icmp eq i32 %t638, 10 + %t640 = zext i1 %t639 to i32 + %t641 = icmp ne i32 %t640, 0 + br i1 %t641, label %then112, label %ifend114 then112: - %t634 = load ptr, ptr @g_prog - %t635 = load i32, ptr %t34 - %t636 = getelementptr inbounds %LSlice, ptr %t634, i32 0, i32 0 - %t637 = load ptr, ptr %t636 - %t638 = getelementptr inbounds %LSlice, ptr %t634, i32 0, i32 1 - %t639 = load i32, ptr %t638 - %t640 = icmp ult i32 %t635, %t639 - br i1 %t640, label %ixok115, label %ixbad116 + %t642 = load ptr, ptr @g_prog + %t643 = load i32, ptr %t34 + %t644 = getelementptr inbounds %LSlice, ptr %t642, i32 0, i32 0 + %t645 = load ptr, ptr %t644 + %t646 = getelementptr inbounds %LSlice, ptr %t642, i32 0, i32 1 + %t647 = load i32, ptr %t646 + %t648 = icmp ult i32 %t643, %t647 + br i1 %t648, label %ixok115, label %ixbad116 ixbad116: - %t641 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t641, ptr @.fmt_bounds, ptr @.str13050, i32 %t635, i32 %t639) + %t649 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t649, ptr @.fmt_bounds, ptr @.str13168, i32 %t643, i32 %t647) call void @exit(i32 1) unreachable ixok115: - %t642 = getelementptr inbounds ptr, ptr %t637, i32 %t635 - %t643 = load ptr, ptr %t642 - %t644 = getelementptr inbounds %Cmp_Node, ptr %t643, i32 0, i32 1 - %t645 = load ptr, ptr %t644 - store ptr %t645, ptr %t646 - %t647 = load i32, ptr %t33 - %t648 = call ptr @fn_itoa(i32 %t647) - store ptr %t648, ptr %t649 - call void @fn_emit(ptr @.str13051) - %t650 = load ptr, ptr %t649 - call void @fn_emit(ptr %t650) - call void @fn_emit(ptr @.str13052) - %t651 = load ptr, ptr %t646 - %t652 = call i32 @fn_find_arch_id(ptr %t651) - %t653 = call ptr @fn_itoa(i32 %t652) - call void @fn_emit(ptr %t653) - call void @fn_emit(ptr @.str13053) - call void @fn_emit(ptr @.str13054) - %t654 = load ptr, ptr %t649 - call void @fn_emit(ptr %t654) - call void @fn_emit(ptr @.str13055) - %t655 = load ptr, ptr %t649 - call void @fn_emit(ptr %t655) - call void @fn_emit(ptr @.str13056) - %t656 = load ptr, ptr %t649 - call void @fn_emit(ptr %t656) - call void @fn_emit(ptr @.str13057) - call void @fn_emit(ptr @.str13058) - %t657 = load ptr, ptr %t649 - call void @fn_emit(ptr %t657) - call void @fn_emit(ptr @.str13059) - %t658 = load ptr, ptr %t649 + %t650 = getelementptr inbounds ptr, ptr %t645, i32 %t643 + %t651 = load ptr, ptr %t650 + %t652 = getelementptr inbounds %Cmp_Node, ptr %t651, i32 0, i32 1 + %t653 = load ptr, ptr %t652 + store ptr %t653, ptr %t654 + %t655 = load i32, ptr %t33 + %t656 = call ptr @fn_itoa(i32 %t655) + store ptr %t656, ptr %t657 + call void @fn_emit(ptr @.str13169) + %t658 = load ptr, ptr %t657 call void @fn_emit(ptr %t658) - call void @fn_emit(ptr @.str13060) - %t659 = load ptr, ptr %t646 - call void @fn_emit(ptr %t659) - call void @fn_emit(ptr @.str13061) - %t660 = load ptr, ptr %t649 - call void @fn_emit(ptr %t660) - call void @fn_emit(ptr @.str13062) - call void @fn_emit(ptr @.str13063) - %t661 = load ptr, ptr %t649 + call void @fn_emit(ptr @.str13170) + %t659 = load ptr, ptr %t654 + %t660 = call i32 @fn_find_arch_id(ptr %t659) + %t661 = call ptr @fn_itoa(i32 %t660) call void @fn_emit(ptr %t661) - call void @fn_emit(ptr @.str13064) - %t662 = load i32, ptr %t33 - %t663 = add i32 %t662, 1 - store i32 %t663, ptr %t33 + call void @fn_emit(ptr @.str13171) + call void @fn_emit(ptr @.str13172) + %t662 = load ptr, ptr %t657 + call void @fn_emit(ptr %t662) + call void @fn_emit(ptr @.str13173) + %t663 = load ptr, ptr %t657 + call void @fn_emit(ptr %t663) + call void @fn_emit(ptr @.str13174) + %t664 = load ptr, ptr %t657 + call void @fn_emit(ptr %t664) + call void @fn_emit(ptr @.str13175) + call void @fn_emit(ptr @.str13176) + %t665 = load ptr, ptr %t657 + call void @fn_emit(ptr %t665) + call void @fn_emit(ptr @.str13177) + %t666 = load ptr, ptr %t657 + call void @fn_emit(ptr %t666) + call void @fn_emit(ptr @.str13178) + %t667 = load ptr, ptr %t654 + call void @fn_emit(ptr %t667) + call void @fn_emit(ptr @.str13179) + %t668 = load ptr, ptr %t657 + call void @fn_emit(ptr %t668) + call void @fn_emit(ptr @.str13180) + call void @fn_emit(ptr @.str13181) + %t669 = load ptr, ptr %t657 + call void @fn_emit(ptr %t669) + call void @fn_emit(ptr @.str13182) + %t670 = load i32, ptr %t33 + %t671 = add i32 %t670, 1 + store i32 %t671, ptr %t33 br label %ifend114 ifend114: - %t664 = load i32, ptr %t34 - %t665 = add i32 %t664, 1 - store i32 %t665, ptr %t34 + %t672 = load i32, ptr %t34 + %t673 = add i32 %t672, 1 + store i32 %t673, ptr %t34 br label %wcond107 wend109: - call void @fn_emit(ptr @.str13065) - call void @fn_emit(ptr @.str13066) - call void @fn_emit(ptr @.str13067) - call void @fn_emit(ptr @.str13068) - call void @fn_emit(ptr @.str13069) - call void @fn_emit(ptr @.str13070) - %t666 = load ptr, ptr %t1 - call void @fn_emit(ptr %t666) - call void @fn_emit(ptr @.str13071) - call void @fn_emit(ptr @.str13072) - call void @fn_emit(ptr @.str13073) - call void @fn_emit(ptr @.str13074) - call void @fn_emit(ptr @.str13075) - call void @fn_emit(ptr @.str13076) + call void @fn_emit(ptr @.str13183) + call void @fn_emit(ptr @.str13184) + call void @fn_emit(ptr @.str13185) + call void @fn_emit(ptr @.str13186) + call void @fn_emit(ptr @.str13187) + call void @fn_emit(ptr @.str13188) + %t674 = call ptr @fn_ecs_base(ptr @.str13189) + store ptr %t674, ptr %t675 + call void @fn_emit(ptr @.str13190) + %t676 = load ptr, ptr %t675 + call void @fn_emit(ptr %t676) + call void @fn_emit(ptr @.str13191) + call void @fn_emit(ptr @.str13192) + call void @fn_emit(ptr @.str13193) + call void @fn_emit(ptr @.str13194) + call void @fn_emit(ptr @.str13195) + call void @fn_emit(ptr @.str13196) call void @fn_emit_world_reflect_enum() br label %ret ret: @@ -169941,9 +170593,9 @@ entry: %t278 = alloca i32 %t303 = alloca ptr %t309 = alloca ptr - %t0 = call ptr @fn_emit_str_const(ptr @.str13077) + %t0 = call ptr @fn_emit_str_const(ptr @.str13197) store ptr %t0, ptr %t1 - %t2 = call ptr @fn_emit_str_const(ptr @.str13078) + %t2 = call ptr @fn_emit_str_const(ptr @.str13198) store ptr %t2, ptr %t3 store i32 0, ptr %t4 store i32 0, ptr %t5 @@ -169968,7 +170620,7 @@ wbody1: br i1 %t19, label %ixok3, label %ixbad4 ixbad4: %t20 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str13079, i32 %t14, i32 %t18) + call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str13199, i32 %t14, i32 %t18) call void @exit(i32 1) unreachable ixok3: @@ -169994,12 +170646,12 @@ wend2: %t32 = load i32, ptr %t4 %t33 = call ptr @fn_itoa(i32 %t32) store ptr %t33, ptr %t34 - call void @fn_emit(ptr @.str13080) - call void @fn_emit(ptr @.str13081) + call void @fn_emit(ptr @.str13200) + call void @fn_emit(ptr @.str13201) %t35 = load ptr, ptr %t34 call void @fn_emit(ptr %t35) - call void @fn_emit(ptr @.str13082) - call void @fn_emit(ptr @.str13083) + call void @fn_emit(ptr @.str13202) + call void @fn_emit(ptr @.str13203) store i32 0, ptr %t36 store i32 0, ptr %t5 br label %wcond8 @@ -170023,7 +170675,7 @@ wbody9: br i1 %t50, label %ixok11, label %ixbad12 ixbad12: %t51 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str13084, i32 %t45, i32 %t49) + call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str13204, i32 %t45, i32 %t49) call void @exit(i32 1) unreachable ixok11: @@ -170046,7 +170698,7 @@ then13: br i1 %t65, label %ixok16, label %ixbad17 ixbad17: %t66 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str13085, i32 %t60, i32 %t64) + call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str13205, i32 %t60, i32 %t64) call void @exit(i32 1) unreachable ixok16: @@ -170059,34 +170711,34 @@ ixok16: %t73 = load i32, ptr %t36 %t74 = call ptr @fn_itoa(i32 %t73) store ptr %t74, ptr %t75 - call void @fn_emit(ptr @.str13086) + call void @fn_emit(ptr @.str13206) %t76 = load ptr, ptr %t75 call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str13087) + call void @fn_emit(ptr @.str13207) %t77 = load ptr, ptr %t75 call void @fn_emit(ptr %t77) - call void @fn_emit(ptr @.str13088) - call void @fn_emit(ptr @.str13089) + call void @fn_emit(ptr @.str13208) + call void @fn_emit(ptr @.str13209) %t78 = load ptr, ptr %t75 call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str13090) + call void @fn_emit(ptr @.str13210) %t79 = load ptr, ptr %t75 call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str13091) + call void @fn_emit(ptr @.str13211) %t80 = load ptr, ptr %t75 call void @fn_emit(ptr %t80) - call void @fn_emit(ptr @.str13092) - call void @fn_emit(ptr @.str13093) + call void @fn_emit(ptr @.str13212) + call void @fn_emit(ptr @.str13213) %t81 = load ptr, ptr %t75 call void @fn_emit(ptr %t81) - call void @fn_emit(ptr @.str13094) + call void @fn_emit(ptr @.str13214) %t82 = load ptr, ptr %t72 call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str13095) - call void @fn_emit(ptr @.str13096) + call void @fn_emit(ptr @.str13215) + call void @fn_emit(ptr @.str13216) %t83 = load ptr, ptr %t75 call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str13097) + call void @fn_emit(ptr @.str13217) %t84 = load i32, ptr %t36 %t85 = add i32 %t84, 1 store i32 %t85, ptr %t36 @@ -170097,17 +170749,17 @@ ifend15: store i32 %t87, ptr %t5 br label %wcond8 wend10: - call void @fn_emit(ptr @.str13098) + call void @fn_emit(ptr @.str13218) %t88 = load ptr, ptr %t34 call void @fn_emit(ptr %t88) - call void @fn_emit(ptr @.str13099) - call void @fn_emit(ptr @.str13100) - call void @fn_emit(ptr @.str13101) - call void @fn_emit(ptr @.str13102) + call void @fn_emit(ptr @.str13219) + call void @fn_emit(ptr @.str13220) + call void @fn_emit(ptr @.str13221) + call void @fn_emit(ptr @.str13222) %t89 = load ptr, ptr %t1 call void @fn_emit(ptr %t89) - call void @fn_emit(ptr @.str13103) - call void @fn_emit(ptr @.str13104) + call void @fn_emit(ptr @.str13223) + call void @fn_emit(ptr @.str13224) store i32 0, ptr %t36 store i32 0, ptr %t5 br label %wcond18 @@ -170131,7 +170783,7 @@ wbody19: br i1 %t103, label %ixok21, label %ixbad22 ixbad22: %t104 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t104, ptr @.fmt_bounds, ptr @.str13105, i32 %t98, i32 %t102) + call i32 (ptr, ptr, ...) @fprintf(ptr %t104, ptr @.fmt_bounds, ptr @.str13225, i32 %t98, i32 %t102) call void @exit(i32 1) unreachable ixok21: @@ -170154,7 +170806,7 @@ then23: br i1 %t118, label %ixok26, label %ixbad27 ixbad27: %t119 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t119, ptr @.fmt_bounds, ptr @.str13106, i32 %t113, i32 %t117) + call i32 (ptr, ptr, ...) @fprintf(ptr %t119, ptr @.fmt_bounds, ptr @.str13226, i32 %t113, i32 %t117) call void @exit(i32 1) unreachable ixok26: @@ -170164,27 +170816,27 @@ ixok26: %t123 = load i32, ptr %t36 %t124 = call ptr @fn_itoa(i32 %t123) store ptr %t124, ptr %t125 - call void @fn_emit(ptr @.str13107) + call void @fn_emit(ptr @.str13227) %t126 = load ptr, ptr %t125 call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str13108) + call void @fn_emit(ptr @.str13228) %t127 = load ptr, ptr %t125 call void @fn_emit(ptr %t127) - call void @fn_emit(ptr @.str13109) - call void @fn_emit(ptr @.str13110) + call void @fn_emit(ptr @.str13229) + call void @fn_emit(ptr @.str13230) %t128 = load ptr, ptr %t125 call void @fn_emit(ptr %t128) - call void @fn_emit(ptr @.str13111) + call void @fn_emit(ptr @.str13231) %t129 = load ptr, ptr %t125 call void @fn_emit(ptr %t129) - call void @fn_emit(ptr @.str13112) + call void @fn_emit(ptr @.str13232) %t130 = load ptr, ptr %t125 call void @fn_emit(ptr %t130) - call void @fn_emit(ptr @.str13113) - call void @fn_emit(ptr @.str13114) + call void @fn_emit(ptr @.str13233) + call void @fn_emit(ptr @.str13234) %t131 = load ptr, ptr %t125 call void @fn_emit(ptr %t131) - call void @fn_emit(ptr @.str13115) + call void @fn_emit(ptr @.str13235) %t132 = load ptr, ptr %t122 %t133 = getelementptr inbounds %Cmp_Node, ptr %t132, i32 0, i32 7 %t134 = load ptr, ptr %t133 @@ -170192,11 +170844,11 @@ ixok26: %t136 = load i32, ptr %t135 %t137 = call ptr @fn_itoa(i32 %t136) call void @fn_emit(ptr %t137) - call void @fn_emit(ptr @.str13116) - call void @fn_emit(ptr @.str13117) + call void @fn_emit(ptr @.str13236) + call void @fn_emit(ptr @.str13237) %t138 = load ptr, ptr %t125 call void @fn_emit(ptr %t138) - call void @fn_emit(ptr @.str13118) + call void @fn_emit(ptr @.str13238) %t139 = load i32, ptr %t36 %t140 = add i32 %t139, 1 store i32 %t140, ptr %t36 @@ -170207,14 +170859,14 @@ ifend25: store i32 %t142, ptr %t5 br label %wcond18 wend20: - call void @fn_emit(ptr @.str13119) + call void @fn_emit(ptr @.str13239) %t143 = load ptr, ptr %t34 call void @fn_emit(ptr %t143) - call void @fn_emit(ptr @.str13120) - call void @fn_emit(ptr @.str13121) - call void @fn_emit(ptr @.str13122) - call void @fn_emit(ptr @.str13123) - call void @fn_emit(ptr @.str13124) + call void @fn_emit(ptr @.str13240) + call void @fn_emit(ptr @.str13241) + call void @fn_emit(ptr @.str13242) + call void @fn_emit(ptr @.str13243) + call void @fn_emit(ptr @.str13244) store i32 0, ptr %t36 store i32 0, ptr %t5 br label %wcond28 @@ -170238,7 +170890,7 @@ wbody29: br i1 %t157, label %ixok31, label %ixbad32 ixbad32: %t158 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t158, ptr @.fmt_bounds, ptr @.str13125, i32 %t152, i32 %t156) + call i32 (ptr, ptr, ...) @fprintf(ptr %t158, ptr @.fmt_bounds, ptr @.str13245, i32 %t152, i32 %t156) call void @exit(i32 1) unreachable ixok31: @@ -170261,7 +170913,7 @@ then33: br i1 %t172, label %ixok36, label %ixbad37 ixbad37: %t173 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t173, ptr @.fmt_bounds, ptr @.str13126, i32 %t167, i32 %t171) + call i32 (ptr, ptr, ...) @fprintf(ptr %t173, ptr @.fmt_bounds, ptr @.str13246, i32 %t167, i32 %t171) call void @exit(i32 1) unreachable ixok36: @@ -170271,27 +170923,27 @@ ixok36: %t177 = load i32, ptr %t36 %t178 = call ptr @fn_itoa(i32 %t177) store ptr %t178, ptr %t179 - call void @fn_emit(ptr @.str13127) + call void @fn_emit(ptr @.str13247) %t180 = load ptr, ptr %t179 call void @fn_emit(ptr %t180) - call void @fn_emit(ptr @.str13128) + call void @fn_emit(ptr @.str13248) %t181 = load ptr, ptr %t179 call void @fn_emit(ptr %t181) - call void @fn_emit(ptr @.str13129) - call void @fn_emit(ptr @.str13130) + call void @fn_emit(ptr @.str13249) + call void @fn_emit(ptr @.str13250) %t182 = load ptr, ptr %t179 call void @fn_emit(ptr %t182) - call void @fn_emit(ptr @.str13131) + call void @fn_emit(ptr @.str13251) %t183 = load ptr, ptr %t179 call void @fn_emit(ptr %t183) - call void @fn_emit(ptr @.str13132) + call void @fn_emit(ptr @.str13252) %t184 = load ptr, ptr %t179 call void @fn_emit(ptr %t184) - call void @fn_emit(ptr @.str13133) - call void @fn_emit(ptr @.str13134) + call void @fn_emit(ptr @.str13253) + call void @fn_emit(ptr @.str13254) %t185 = load ptr, ptr %t179 call void @fn_emit(ptr %t185) - call void @fn_emit(ptr @.str13135) + call void @fn_emit(ptr @.str13255) store i32 0, ptr %t186 br label %wcond38 wcond38: @@ -170318,7 +170970,7 @@ wbody39: br i1 %t204, label %ixok41, label %ixbad42 ixbad42: %t205 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t205, ptr @.fmt_bounds, ptr @.str13136, i32 %t199, i32 %t203) + call i32 (ptr, ptr, ...) @fprintf(ptr %t205, ptr @.fmt_bounds, ptr @.str13256, i32 %t199, i32 %t203) call void @exit(i32 1) unreachable ixok41: @@ -170329,53 +170981,53 @@ ixok41: %t210 = call ptr @fn_emit_str_const(ptr %t209) store ptr %t210, ptr %t211 %t212 = load ptr, ptr %t179 - %t213 = call ptr @lp_str_concat(ptr %t212, ptr @.str13137) + %t213 = call ptr @lp_str_concat(ptr %t212, ptr @.str13257) %t214 = load i32, ptr %t186 %t215 = call ptr @fn_itoa(i32 %t214) %t216 = call ptr @lp_str_concat(ptr %t213, ptr %t215) store ptr %t216, ptr %t217 - call void @fn_emit(ptr @.str13138) + call void @fn_emit(ptr @.str13258) %t218 = load ptr, ptr %t217 call void @fn_emit(ptr %t218) - call void @fn_emit(ptr @.str13139) + call void @fn_emit(ptr @.str13259) %t219 = load i32, ptr %t186 %t220 = call ptr @fn_itoa(i32 %t219) call void @fn_emit(ptr %t220) - call void @fn_emit(ptr @.str13140) - call void @fn_emit(ptr @.str13141) + call void @fn_emit(ptr @.str13260) + call void @fn_emit(ptr @.str13261) %t221 = load ptr, ptr %t217 call void @fn_emit(ptr %t221) - call void @fn_emit(ptr @.str13142) + call void @fn_emit(ptr @.str13262) %t222 = load ptr, ptr %t217 call void @fn_emit(ptr %t222) - call void @fn_emit(ptr @.str13143) + call void @fn_emit(ptr @.str13263) %t223 = load ptr, ptr %t217 call void @fn_emit(ptr %t223) - call void @fn_emit(ptr @.str13144) - call void @fn_emit(ptr @.str13145) + call void @fn_emit(ptr @.str13264) + call void @fn_emit(ptr @.str13265) %t224 = load ptr, ptr %t217 call void @fn_emit(ptr %t224) - call void @fn_emit(ptr @.str13146) + call void @fn_emit(ptr @.str13266) %t225 = load ptr, ptr %t211 call void @fn_emit(ptr %t225) - call void @fn_emit(ptr @.str13147) - call void @fn_emit(ptr @.str13148) + call void @fn_emit(ptr @.str13267) + call void @fn_emit(ptr @.str13268) %t226 = load ptr, ptr %t217 call void @fn_emit(ptr %t226) - call void @fn_emit(ptr @.str13149) + call void @fn_emit(ptr @.str13269) %t227 = load i32, ptr %t186 %t228 = add i32 %t227, 1 store i32 %t228, ptr %t186 br label %wcond38 wend40: - call void @fn_emit(ptr @.str13150) + call void @fn_emit(ptr @.str13270) %t229 = load ptr, ptr %t1 call void @fn_emit(ptr %t229) - call void @fn_emit(ptr @.str13151) - call void @fn_emit(ptr @.str13152) + call void @fn_emit(ptr @.str13271) + call void @fn_emit(ptr @.str13272) %t230 = load ptr, ptr %t179 call void @fn_emit(ptr %t230) - call void @fn_emit(ptr @.str13153) + call void @fn_emit(ptr @.str13273) %t231 = load i32, ptr %t36 %t232 = add i32 %t231, 1 store i32 %t232, ptr %t36 @@ -170386,11 +171038,11 @@ ifend35: store i32 %t234, ptr %t5 br label %wcond28 wend30: - call void @fn_emit(ptr @.str13154) + call void @fn_emit(ptr @.str13274) %t235 = load ptr, ptr %t1 call void @fn_emit(ptr %t235) - call void @fn_emit(ptr @.str13155) - call void @fn_emit(ptr @.str13156) + call void @fn_emit(ptr @.str13275) + call void @fn_emit(ptr @.str13276) store i32 0, ptr %t36 store i32 0, ptr %t5 br label %wcond43 @@ -170414,7 +171066,7 @@ wbody44: br i1 %t249, label %ixok46, label %ixbad47 ixbad47: %t250 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t250, ptr @.fmt_bounds, ptr @.str13157, i32 %t244, i32 %t248) + call i32 (ptr, ptr, ...) @fprintf(ptr %t250, ptr @.fmt_bounds, ptr @.str13277, i32 %t244, i32 %t248) call void @exit(i32 1) unreachable ixok46: @@ -170437,7 +171089,7 @@ then48: br i1 %t264, label %ixok51, label %ixbad52 ixbad52: %t265 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t265, ptr @.fmt_bounds, ptr @.str13158, i32 %t259, i32 %t263) + call i32 (ptr, ptr, ...) @fprintf(ptr %t265, ptr @.fmt_bounds, ptr @.str13278, i32 %t259, i32 %t263) call void @exit(i32 1) unreachable ixok51: @@ -170447,27 +171099,27 @@ ixok51: %t269 = load i32, ptr %t36 %t270 = call ptr @fn_itoa(i32 %t269) store ptr %t270, ptr %t271 - call void @fn_emit(ptr @.str13159) + call void @fn_emit(ptr @.str13279) %t272 = load ptr, ptr %t271 call void @fn_emit(ptr %t272) - call void @fn_emit(ptr @.str13160) + call void @fn_emit(ptr @.str13280) %t273 = load ptr, ptr %t271 call void @fn_emit(ptr %t273) - call void @fn_emit(ptr @.str13161) - call void @fn_emit(ptr @.str13162) + call void @fn_emit(ptr @.str13281) + call void @fn_emit(ptr @.str13282) %t274 = load ptr, ptr %t271 call void @fn_emit(ptr %t274) - call void @fn_emit(ptr @.str13163) + call void @fn_emit(ptr @.str13283) %t275 = load ptr, ptr %t271 call void @fn_emit(ptr %t275) - call void @fn_emit(ptr @.str13164) + call void @fn_emit(ptr @.str13284) %t276 = load ptr, ptr %t271 call void @fn_emit(ptr %t276) - call void @fn_emit(ptr @.str13165) - call void @fn_emit(ptr @.str13166) + call void @fn_emit(ptr @.str13285) + call void @fn_emit(ptr @.str13286) %t277 = load ptr, ptr %t271 call void @fn_emit(ptr %t277) - call void @fn_emit(ptr @.str13167) + call void @fn_emit(ptr @.str13287) store i32 0, ptr %t278 br label %wcond53 wcond53: @@ -170494,7 +171146,7 @@ wbody54: br i1 %t296, label %ixok56, label %ixbad57 ixbad57: %t297 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t297, ptr @.fmt_bounds, ptr @.str13168, i32 %t291, i32 %t295) + call i32 (ptr, ptr, ...) @fprintf(ptr %t297, ptr @.fmt_bounds, ptr @.str13288, i32 %t291, i32 %t295) call void @exit(i32 1) unreachable ixok56: @@ -170505,53 +171157,53 @@ ixok56: %t302 = call ptr @fn_emit_str_const(ptr %t301) store ptr %t302, ptr %t303 %t304 = load ptr, ptr %t271 - %t305 = call ptr @lp_str_concat(ptr %t304, ptr @.str13169) + %t305 = call ptr @lp_str_concat(ptr %t304, ptr @.str13289) %t306 = load i32, ptr %t278 %t307 = call ptr @fn_itoa(i32 %t306) %t308 = call ptr @lp_str_concat(ptr %t305, ptr %t307) store ptr %t308, ptr %t309 - call void @fn_emit(ptr @.str13170) + call void @fn_emit(ptr @.str13290) %t310 = load ptr, ptr %t309 call void @fn_emit(ptr %t310) - call void @fn_emit(ptr @.str13171) + call void @fn_emit(ptr @.str13291) %t311 = load i32, ptr %t278 %t312 = call ptr @fn_itoa(i32 %t311) call void @fn_emit(ptr %t312) - call void @fn_emit(ptr @.str13172) - call void @fn_emit(ptr @.str13173) + call void @fn_emit(ptr @.str13292) + call void @fn_emit(ptr @.str13293) %t313 = load ptr, ptr %t309 call void @fn_emit(ptr %t313) - call void @fn_emit(ptr @.str13174) + call void @fn_emit(ptr @.str13294) %t314 = load ptr, ptr %t309 call void @fn_emit(ptr %t314) - call void @fn_emit(ptr @.str13175) + call void @fn_emit(ptr @.str13295) %t315 = load ptr, ptr %t309 call void @fn_emit(ptr %t315) - call void @fn_emit(ptr @.str13176) - call void @fn_emit(ptr @.str13177) + call void @fn_emit(ptr @.str13296) + call void @fn_emit(ptr @.str13297) %t316 = load ptr, ptr %t309 call void @fn_emit(ptr %t316) - call void @fn_emit(ptr @.str13178) + call void @fn_emit(ptr @.str13298) %t317 = load ptr, ptr %t303 call void @fn_emit(ptr %t317) - call void @fn_emit(ptr @.str13179) - call void @fn_emit(ptr @.str13180) + call void @fn_emit(ptr @.str13299) + call void @fn_emit(ptr @.str13300) %t318 = load ptr, ptr %t309 call void @fn_emit(ptr %t318) - call void @fn_emit(ptr @.str13181) + call void @fn_emit(ptr @.str13301) %t319 = load i32, ptr %t278 %t320 = add i32 %t319, 1 store i32 %t320, ptr %t278 br label %wcond53 wend55: - call void @fn_emit(ptr @.str13182) + call void @fn_emit(ptr @.str13302) %t321 = load ptr, ptr %t3 call void @fn_emit(ptr %t321) - call void @fn_emit(ptr @.str13183) - call void @fn_emit(ptr @.str13184) + call void @fn_emit(ptr @.str13303) + call void @fn_emit(ptr @.str13304) %t322 = load ptr, ptr %t271 call void @fn_emit(ptr %t322) - call void @fn_emit(ptr @.str13185) + call void @fn_emit(ptr @.str13305) %t323 = load i32, ptr %t36 %t324 = add i32 %t323, 1 store i32 %t324, ptr %t36 @@ -170562,10 +171214,10 @@ ifend50: store i32 %t326, ptr %t5 br label %wcond43 wend45: - call void @fn_emit(ptr @.str13186) + call void @fn_emit(ptr @.str13306) %t327 = load ptr, ptr %t3 call void @fn_emit(ptr %t327) - call void @fn_emit(ptr @.str13187) + call void @fn_emit(ptr @.str13307) br label %ret ret: ret void @@ -170573,20 +171225,20 @@ ret: define void @fn_emit_tick_helpers() { entry: - call void @fn_emit(ptr @.str13188) + call void @fn_emit(ptr @.str13308) store i32 0, ptr @g_ll_t store i32 0, ptr @g_ll_lbl - call void @fn_emit_calls_for_phase(ptr @.str13189) - call void @fn_emit_calls_for_phase(ptr @.str13190) - call void @fn_emit_calls_for_phase(ptr @.str13191) - call void @fn_emit_calls_for_phase(ptr @.str13192) - call void @fn_emit(ptr @.str13193) - call void @fn_emit(ptr @.str13194) + call void @fn_emit_calls_for_phase(ptr @.str13309) + call void @fn_emit_calls_for_phase(ptr @.str13310) + call void @fn_emit_calls_for_phase(ptr @.str13311) + call void @fn_emit_calls_for_phase(ptr @.str13312) + call void @fn_emit(ptr @.str13313) + call void @fn_emit(ptr @.str13314) store i32 0, ptr @g_ll_t store i32 0, ptr @g_ll_lbl - call void @fn_emit_calls_for_phase(ptr @.str13195) - call void @fn_emit_calls_for_phase(ptr @.str13196) - call void @fn_emit(ptr @.str13197) + call void @fn_emit_calls_for_phase(ptr @.str13315) + call void @fn_emit_calls_for_phase(ptr @.str13316) + call void @fn_emit(ptr @.str13317) br label %ret ret: ret void @@ -170618,7 +171270,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13198, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13318, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -170641,7 +171293,7 @@ then5: br i1 %t29, label %ixok8, label %ixbad9 ixbad9: %t30 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str13199, i32 %t24, i32 %t28) + call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str13319, i32 %t24, i32 %t28) call void @exit(i32 1) unreachable ixok8: @@ -170679,360 +171331,367 @@ ret: define void @fn_emit_game_main() { entry: - %t15 = alloca i32 - %t58 = alloca ptr - %t63 = alloca ptr - %t72 = alloca ptr - %t77 = alloca ptr - %t84 = alloca ptr - %t87 = alloca i32 - %t102 = alloca ptr - %t112 = alloca ptr - %t114 = alloca i32 - %t126 = alloca ptr - %t131 = alloca i32 - %t144 = alloca ptr - %t151 = alloca i32 - %t166 = alloca ptr - %t171 = alloca ptr + %t17 = alloca i32 + %t60 = alloca ptr + %t65 = alloca ptr + %t74 = alloca ptr + %t79 = alloca ptr + %t86 = alloca ptr + %t89 = alloca i32 + %t104 = alloca ptr + %t114 = alloca ptr + %t116 = alloca i32 + %t128 = alloca ptr + %t133 = alloca i32 + %t146 = alloca ptr + %t153 = alloca i32 + %t168 = alloca ptr + %t173 = alloca ptr call void @fn_emit_game_defs() - call void @fn_emit(ptr @.str13200) - call void @fn_emit(ptr @.str13201) - call void @fn_emit(ptr @.str13202) - call void @fn_emit(ptr @.str13203) - %t0 = call ptr @fn_find_fn(ptr @.str13204) - %t1 = icmp ne ptr %t0, null - %t2 = zext i1 %t1 to i32 - %t3 = icmp ne i32 %t2, 0 - br i1 %t3, label %then0, label %ifend2 + call void @fn_emit(ptr @.str13320) + call void @fn_emit(ptr @.str13321) + call void @fn_emit(ptr @.str13322) + call void @fn_emit(ptr @.str13323) + %t0 = call i32 @fn_has_ecs() + %t1 = icmp ne i32 %t0, 0 + br i1 %t1, label %then0, label %ifend2 then0: - %t4 = call ptr @fn_fn_sym(ptr @.str13206) - %t5 = call ptr @lp_str_concat(ptr @.str13205, ptr %t4) - %t6 = call ptr @lp_str_concat(ptr %t5, ptr @.str13207) - call void @fn_emit(ptr %t6) + call void @fn_emit(ptr @.str13324) br label %ifend2 ifend2: - call void @fn_emit(ptr @.str13208) - call void @fn_emit_calls_for_phase(ptr @.str13209) - %t7 = load ptr, ptr @g_g_scenes - %t8 = getelementptr inbounds %LSlice, ptr %t7, i32 0, i32 1 - %t9 = load i32, ptr %t8 - %t10 = icmp sgt i32 %t9, 0 - %t11 = zext i1 %t10 to i32 - %t12 = icmp ne i32 %t11, 0 - br i1 %t12, label %then3, label %ifend5 + %t2 = call ptr @fn_find_fn(ptr @.str13325) + %t3 = icmp ne ptr %t2, null + %t4 = zext i1 %t3 to i32 + %t5 = icmp ne i32 %t4, 0 + br i1 %t5, label %then3, label %ifend5 then3: - call void @fn_emit(ptr @.str13210) - %t13 = load i32, ptr @g_g_start_scene - %t14 = call ptr @fn_itoa(i32 %t13) - call void @fn_emit(ptr %t14) - call void @fn_emit(ptr @.str13211) - store i32 0, ptr %t15 - br label %wcond6 -wcond6: - %t16 = load i32, ptr %t15 - %t17 = load ptr, ptr @g_g_scenes - %t18 = getelementptr inbounds %LSlice, ptr %t17, i32 0, i32 1 - %t19 = load i32, ptr %t18 - %t20 = icmp slt i32 %t16, %t19 - %t21 = zext i1 %t20 to i32 - %t22 = icmp ne i32 %t21, 0 - br i1 %t22, label %wbody7, label %wend8 -wbody7: - %t23 = load ptr, ptr @g_g_scenes - %t24 = load i32, ptr %t15 - %t25 = getelementptr inbounds %LSlice, ptr %t23, i32 0, i32 0 - %t26 = load ptr, ptr %t25 - %t27 = getelementptr inbounds %LSlice, ptr %t23, i32 0, i32 1 - %t28 = load i32, ptr %t27 - %t29 = icmp ult i32 %t24, %t28 - br i1 %t29, label %ixok9, label %ixbad10 -ixbad10: - %t30 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str13212, i32 %t24, i32 %t28) - call void @exit(i32 1) - unreachable -ixok9: - %t31 = getelementptr inbounds ptr, ptr %t26, i32 %t24 - %t32 = load ptr, ptr %t31 - %t33 = getelementptr inbounds %Cmp_Node, ptr %t32, i32 0, i32 2 - %t34 = load i32, ptr %t33 - %t35 = load i32, ptr @g_g_start_scene - %t36 = icmp eq i32 %t34, %t35 - %t37 = zext i1 %t36 to i32 - %t38 = icmp ne i32 %t37, 0 - br i1 %t38, label %then11, label %ifend13 -then11: - call void @fn_emit(ptr @.str13213) - %t39 = load ptr, ptr @g_g_scenes - %t40 = load i32, ptr %t15 - %t41 = getelementptr inbounds %LSlice, ptr %t39, i32 0, i32 0 - %t42 = load ptr, ptr %t41 - %t43 = getelementptr inbounds %LSlice, ptr %t39, i32 0, i32 1 - %t44 = load i32, ptr %t43 - %t45 = icmp ult i32 %t40, %t44 - br i1 %t45, label %ixok14, label %ixbad15 -ixbad15: - %t46 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t46, ptr @.fmt_bounds, ptr @.str13214, i32 %t40, i32 %t44) - call void @exit(i32 1) - unreachable -ixok14: - %t47 = getelementptr inbounds ptr, ptr %t42, i32 %t40 - %t48 = load ptr, ptr %t47 - %t49 = getelementptr inbounds %Cmp_Node, ptr %t48, i32 0, i32 1 - %t50 = load ptr, ptr %t49 - call void @fn_emit(ptr %t50) - call void @fn_emit(ptr @.str13215) - br label %ifend13 -ifend13: - %t51 = load i32, ptr %t15 - %t52 = add i32 %t51, 1 - store i32 %t52, ptr %t15 - br label %wcond6 -wend8: + %t6 = call ptr @fn_fn_sym(ptr @.str13327) + %t7 = call ptr @lp_str_concat(ptr @.str13326, ptr %t6) + %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str13328) + call void @fn_emit(ptr %t8) br label %ifend5 ifend5: - %t53 = call ptr @fn_find_event(ptr @.str13216) - %t54 = icmp ne ptr %t53, null - %t55 = zext i1 %t54 to i32 - %t56 = icmp ne i32 %t55, 0 - br i1 %t56, label %then16, label %ifend18 -then16: - call void @fn_emit(ptr @.str13217) - br label %ifend18 -ifend18: - call void @fn_emit(ptr @.str13218) - call void @fn_emit(ptr @.str13219) - %t57 = call ptr @fn_emit_bind(ptr @.str13220) - store ptr %t57, ptr %t58 - %t59 = load ptr, ptr %t58 - %t60 = call ptr @lp_str_concat(ptr @.str13221, ptr %t59) - %t61 = call ptr @lp_str_concat(ptr %t60, ptr @.str13222) - %t62 = call ptr @fn_emit_bind(ptr %t61) - store ptr %t62, ptr %t63 - %t64 = call ptr @fn_find_fn(ptr @.str13223) - %t65 = icmp ne ptr %t64, null - %t66 = zext i1 %t65 to i32 - %t67 = icmp ne i32 %t66, 0 - br i1 %t67, label %then19, label %else20 + call void @fn_emit(ptr @.str13329) + call void @fn_emit_calls_for_phase(ptr @.str13330) + %t9 = load ptr, ptr @g_g_scenes + %t10 = getelementptr inbounds %LSlice, ptr %t9, i32 0, i32 1 + %t11 = load i32, ptr %t10 + %t12 = icmp sgt i32 %t11, 0 + %t13 = zext i1 %t12 to i32 + %t14 = icmp ne i32 %t13, 0 + br i1 %t14, label %then6, label %ifend8 +then6: + call void @fn_emit(ptr @.str13331) + %t15 = load i32, ptr @g_g_start_scene + %t16 = call ptr @fn_itoa(i32 %t15) + call void @fn_emit(ptr %t16) + call void @fn_emit(ptr @.str13332) + store i32 0, ptr %t17 + br label %wcond9 +wcond9: + %t18 = load i32, ptr %t17 + %t19 = load ptr, ptr @g_g_scenes + %t20 = getelementptr inbounds %LSlice, ptr %t19, i32 0, i32 1 + %t21 = load i32, ptr %t20 + %t22 = icmp slt i32 %t18, %t21 + %t23 = zext i1 %t22 to i32 + %t24 = icmp ne i32 %t23, 0 + br i1 %t24, label %wbody10, label %wend11 +wbody10: + %t25 = load ptr, ptr @g_g_scenes + %t26 = load i32, ptr %t17 + %t27 = getelementptr inbounds %LSlice, ptr %t25, i32 0, i32 0 + %t28 = load ptr, ptr %t27 + %t29 = getelementptr inbounds %LSlice, ptr %t25, i32 0, i32 1 + %t30 = load i32, ptr %t29 + %t31 = icmp ult i32 %t26, %t30 + br i1 %t31, label %ixok12, label %ixbad13 +ixbad13: + %t32 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str13333, i32 %t26, i32 %t30) + call void @exit(i32 1) + unreachable +ixok12: + %t33 = getelementptr inbounds ptr, ptr %t28, i32 %t26 + %t34 = load ptr, ptr %t33 + %t35 = getelementptr inbounds %Cmp_Node, ptr %t34, i32 0, i32 2 + %t36 = load i32, ptr %t35 + %t37 = load i32, ptr @g_g_start_scene + %t38 = icmp eq i32 %t36, %t37 + %t39 = zext i1 %t38 to i32 + %t40 = icmp ne i32 %t39, 0 + br i1 %t40, label %then14, label %ifend16 +then14: + call void @fn_emit(ptr @.str13334) + %t41 = load ptr, ptr @g_g_scenes + %t42 = load i32, ptr %t17 + %t43 = getelementptr inbounds %LSlice, ptr %t41, i32 0, i32 0 + %t44 = load ptr, ptr %t43 + %t45 = getelementptr inbounds %LSlice, ptr %t41, i32 0, i32 1 + %t46 = load i32, ptr %t45 + %t47 = icmp ult i32 %t42, %t46 + br i1 %t47, label %ixok17, label %ixbad18 +ixbad18: + %t48 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t48, ptr @.fmt_bounds, ptr @.str13335, i32 %t42, i32 %t46) + call void @exit(i32 1) + unreachable +ixok17: + %t49 = getelementptr inbounds ptr, ptr %t44, i32 %t42 + %t50 = load ptr, ptr %t49 + %t51 = getelementptr inbounds %Cmp_Node, ptr %t50, i32 0, i32 1 + %t52 = load ptr, ptr %t51 + call void @fn_emit(ptr %t52) + call void @fn_emit(ptr @.str13336) + br label %ifend16 +ifend16: + %t53 = load i32, ptr %t17 + %t54 = add i32 %t53, 1 + store i32 %t54, ptr %t17 + br label %wcond9 +wend11: + br label %ifend8 +ifend8: + %t55 = call ptr @fn_find_event(ptr @.str13337) + %t56 = icmp ne ptr %t55, null + %t57 = zext i1 %t56 to i32 + %t58 = icmp ne i32 %t57, 0 + br i1 %t58, label %then19, label %ifend21 then19: - %t68 = call ptr @fn_fn_sym(ptr @.str13225) - %t69 = call ptr @lp_str_concat(ptr @.str13224, ptr %t68) - %t70 = call ptr @lp_str_concat(ptr %t69, ptr @.str13226) - %t71 = call ptr @fn_emit_bind(ptr %t70) - store ptr %t71, ptr %t72 - %t73 = load ptr, ptr %t72 - %t74 = call ptr @lp_str_concat(ptr @.str13227, ptr %t73) - %t75 = call ptr @lp_str_concat(ptr %t74, ptr @.str13228) - %t76 = call ptr @fn_emit_bind(ptr %t75) - store ptr %t76, ptr %t77 - %t78 = load ptr, ptr %t63 - %t79 = call ptr @lp_str_concat(ptr @.str13229, ptr %t78) - %t80 = call ptr @lp_str_concat(ptr %t79, ptr @.str13230) - %t81 = load ptr, ptr %t77 - %t82 = call ptr @lp_str_concat(ptr %t80, ptr %t81) - %t83 = call ptr @fn_emit_bind(ptr %t82) - store ptr %t83, ptr %t84 - call void @fn_emit(ptr @.str13231) - %t85 = load ptr, ptr %t84 - call void @fn_emit(ptr %t85) - call void @fn_emit(ptr @.str13232) - br label %ifend21 -else20: - call void @fn_emit(ptr @.str13233) - %t86 = load ptr, ptr %t63 - call void @fn_emit(ptr %t86) - call void @fn_emit(ptr @.str13234) + call void @fn_emit(ptr @.str13338) br label %ifend21 ifend21: - call void @fn_emit(ptr @.str13235) - %t88 = load i32, ptr @g_g_uses_input - %t89 = icmp ne i32 %t88, 0 - %t90 = zext i1 %t89 to i32 - store i32 %t90, ptr %t87 - br i1 %t89, label %sc22, label %scend23 -sc22: - %t91 = call ptr @fn_find_fn(ptr @.str13236) - %t92 = icmp ne ptr %t91, null - %t93 = zext i1 %t92 to i32 - %t94 = icmp ne i32 %t93, 0 + call void @fn_emit(ptr @.str13339) + call void @fn_emit(ptr @.str13340) + %t59 = call ptr @fn_emit_bind(ptr @.str13341) + store ptr %t59, ptr %t60 + %t61 = load ptr, ptr %t60 + %t62 = call ptr @lp_str_concat(ptr @.str13342, ptr %t61) + %t63 = call ptr @lp_str_concat(ptr %t62, ptr @.str13343) + %t64 = call ptr @fn_emit_bind(ptr %t63) + store ptr %t64, ptr %t65 + %t66 = call ptr @fn_find_fn(ptr @.str13344) + %t67 = icmp ne ptr %t66, null + %t68 = zext i1 %t67 to i32 + %t69 = icmp ne i32 %t68, 0 + br i1 %t69, label %then22, label %else23 +then22: + %t70 = call ptr @fn_fn_sym(ptr @.str13346) + %t71 = call ptr @lp_str_concat(ptr @.str13345, ptr %t70) + %t72 = call ptr @lp_str_concat(ptr %t71, ptr @.str13347) + %t73 = call ptr @fn_emit_bind(ptr %t72) + store ptr %t73, ptr %t74 + %t75 = load ptr, ptr %t74 + %t76 = call ptr @lp_str_concat(ptr @.str13348, ptr %t75) + %t77 = call ptr @lp_str_concat(ptr %t76, ptr @.str13349) + %t78 = call ptr @fn_emit_bind(ptr %t77) + store ptr %t78, ptr %t79 + %t80 = load ptr, ptr %t65 + %t81 = call ptr @lp_str_concat(ptr @.str13350, ptr %t80) + %t82 = call ptr @lp_str_concat(ptr %t81, ptr @.str13351) + %t83 = load ptr, ptr %t79 + %t84 = call ptr @lp_str_concat(ptr %t82, ptr %t83) + %t85 = call ptr @fn_emit_bind(ptr %t84) + store ptr %t85, ptr %t86 + call void @fn_emit(ptr @.str13352) + %t87 = load ptr, ptr %t86 + call void @fn_emit(ptr %t87) + call void @fn_emit(ptr @.str13353) + br label %ifend24 +else23: + call void @fn_emit(ptr @.str13354) + %t88 = load ptr, ptr %t65 + call void @fn_emit(ptr %t88) + call void @fn_emit(ptr @.str13355) + br label %ifend24 +ifend24: + call void @fn_emit(ptr @.str13356) + %t90 = load i32, ptr @g_g_uses_input + %t91 = icmp ne i32 %t90, 0 + %t92 = zext i1 %t91 to i32 + store i32 %t92, ptr %t89 + br i1 %t91, label %sc25, label %scend26 +sc25: + %t93 = call ptr @fn_find_fn(ptr @.str13357) + %t94 = icmp ne ptr %t93, null %t95 = zext i1 %t94 to i32 - store i32 %t95, ptr %t87 - br label %scend23 -scend23: - %t96 = load i32, ptr %t87 - %t97 = icmp ne i32 %t96, 0 - br i1 %t97, label %then24, label %else25 -then24: - %t98 = call ptr @fn_fn_sym(ptr @.str13238) - %t99 = call ptr @lp_str_concat(ptr @.str13237, ptr %t98) - %t100 = call ptr @lp_str_concat(ptr %t99, ptr @.str13239) - %t101 = call ptr @fn_emit_bind(ptr %t100) - store ptr %t101, ptr %t102 - call void @fn_emit(ptr @.str13240) - %t103 = load ptr, ptr %t102 - call void @fn_emit(ptr %t103) - call void @fn_emit(ptr @.str13241) - br label %ifend26 -else25: - %t104 = call ptr @fn_find_fn(ptr @.str13242) - %t105 = icmp ne ptr %t104, null - %t106 = zext i1 %t105 to i32 - %t107 = icmp ne i32 %t106, 0 - br i1 %t107, label %then27, label %ifend29 + %t96 = icmp ne i32 %t95, 0 + %t97 = zext i1 %t96 to i32 + store i32 %t97, ptr %t89 + br label %scend26 +scend26: + %t98 = load i32, ptr %t89 + %t99 = icmp ne i32 %t98, 0 + br i1 %t99, label %then27, label %else28 then27: - %t108 = call ptr @fn_fn_sym(ptr @.str13244) - %t109 = call ptr @lp_str_concat(ptr @.str13243, ptr %t108) - %t110 = call ptr @lp_str_concat(ptr %t109, ptr @.str13245) - %t111 = call ptr @fn_emit_bind(ptr %t110) - store ptr %t111, ptr %t112 - call void @fn_emit(ptr @.str13246) - %t113 = load ptr, ptr %t112 - call void @fn_emit(ptr %t113) - call void @fn_emit(ptr @.str13247) + %t100 = call ptr @fn_fn_sym(ptr @.str13359) + %t101 = call ptr @lp_str_concat(ptr @.str13358, ptr %t100) + %t102 = call ptr @lp_str_concat(ptr %t101, ptr @.str13360) + %t103 = call ptr @fn_emit_bind(ptr %t102) + store ptr %t103, ptr %t104 + call void @fn_emit(ptr @.str13361) + %t105 = load ptr, ptr %t104 + call void @fn_emit(ptr %t105) + call void @fn_emit(ptr @.str13362) + br label %ifend29 +else28: + %t106 = call ptr @fn_find_fn(ptr @.str13363) + %t107 = icmp ne ptr %t106, null + %t108 = zext i1 %t107 to i32 + %t109 = icmp ne i32 %t108, 0 + br i1 %t109, label %then30, label %ifend32 +then30: + %t110 = call ptr @fn_fn_sym(ptr @.str13365) + %t111 = call ptr @lp_str_concat(ptr @.str13364, ptr %t110) + %t112 = call ptr @lp_str_concat(ptr %t111, ptr @.str13366) + %t113 = call ptr @fn_emit_bind(ptr %t112) + store ptr %t113, ptr %t114 + call void @fn_emit(ptr @.str13367) + %t115 = load ptr, ptr %t114 + call void @fn_emit(ptr %t115) + call void @fn_emit(ptr @.str13368) + br label %ifend32 +ifend32: br label %ifend29 ifend29: - br label %ifend26 -ifend26: - %t115 = call i32 @fn_has_ui() - %t116 = icmp ne i32 %t115, 0 - %t117 = zext i1 %t116 to i32 - store i32 %t117, ptr %t114 - br i1 %t116, label %sc30, label %scend31 -sc30: - %t118 = call ptr @fn_find_fn(ptr @.str13248) - %t119 = icmp ne ptr %t118, null - %t120 = zext i1 %t119 to i32 - %t121 = icmp ne i32 %t120, 0 + %t117 = call i32 @fn_has_ui() + %t118 = icmp ne i32 %t117, 0 + %t119 = zext i1 %t118 to i32 + store i32 %t119, ptr %t116 + br i1 %t118, label %sc33, label %scend34 +sc33: + %t120 = call ptr @fn_find_fn(ptr @.str13369) + %t121 = icmp ne ptr %t120, null %t122 = zext i1 %t121 to i32 - store i32 %t122, ptr %t114 - br label %scend31 -scend31: - %t123 = load i32, ptr %t114 - %t124 = icmp ne i32 %t123, 0 - br i1 %t124, label %then32, label %ifend34 -then32: - %t125 = call ptr @fn_emit_bind(ptr @.str13249) - store ptr %t125, ptr %t126 - %t127 = call ptr @fn_fn_sym(ptr @.str13251) - %t128 = call ptr @lp_str_concat(ptr @.str13250, ptr %t127) - %t129 = call ptr @lp_str_concat(ptr %t128, ptr @.str13252) - call void @fn_emit(ptr %t129) - %t130 = load ptr, ptr %t126 - call void @fn_emit(ptr %t130) - call void @fn_emit(ptr @.str13253) - br label %ifend34 -ifend34: - call void @fn_emit_calls_for_phase(ptr @.str13254) - call void @fn_emit_calls_for_phase(ptr @.str13255) - call void @fn_emit_calls_for_phase(ptr @.str13256) - call void @fn_emit_calls_for_phase(ptr @.str13257) - %t132 = load i32, ptr @g_g_has_clear_color - %t133 = icmp ne i32 %t132, 0 - %t134 = zext i1 %t133 to i32 - store i32 %t134, ptr %t131 - br i1 %t133, label %sc35, label %scend36 -sc35: - %t135 = call ptr @fn_find_fn(ptr @.str13258) - %t136 = icmp ne ptr %t135, null - %t137 = zext i1 %t136 to i32 - %t138 = icmp ne i32 %t137, 0 + %t123 = icmp ne i32 %t122, 0 + %t124 = zext i1 %t123 to i32 + store i32 %t124, ptr %t116 + br label %scend34 +scend34: + %t125 = load i32, ptr %t116 + %t126 = icmp ne i32 %t125, 0 + br i1 %t126, label %then35, label %ifend37 +then35: + %t127 = call ptr @fn_emit_bind(ptr @.str13370) + store ptr %t127, ptr %t128 + %t129 = call ptr @fn_fn_sym(ptr @.str13372) + %t130 = call ptr @lp_str_concat(ptr @.str13371, ptr %t129) + %t131 = call ptr @lp_str_concat(ptr %t130, ptr @.str13373) + call void @fn_emit(ptr %t131) + %t132 = load ptr, ptr %t128 + call void @fn_emit(ptr %t132) + call void @fn_emit(ptr @.str13374) + br label %ifend37 +ifend37: + call void @fn_emit_calls_for_phase(ptr @.str13375) + call void @fn_emit_calls_for_phase(ptr @.str13376) + call void @fn_emit_calls_for_phase(ptr @.str13377) + call void @fn_emit_calls_for_phase(ptr @.str13378) + %t134 = load i32, ptr @g_g_has_clear_color + %t135 = icmp ne i32 %t134, 0 + %t136 = zext i1 %t135 to i32 + store i32 %t136, ptr %t133 + br i1 %t135, label %sc38, label %scend39 +sc38: + %t137 = call ptr @fn_find_fn(ptr @.str13379) + %t138 = icmp ne ptr %t137, null %t139 = zext i1 %t138 to i32 - store i32 %t139, ptr %t131 - br label %scend36 -scend36: - %t140 = load i32, ptr %t131 - %t141 = icmp ne i32 %t140, 0 - br i1 %t141, label %then37, label %ifend39 -then37: - %t142 = load ptr, ptr @g_g_clear_color - %t143 = call ptr @fn_emit_expr(ptr %t142) - store ptr %t143, ptr %t144 - %t145 = call ptr @fn_fn_sym(ptr @.str13260) - %t146 = call ptr @lp_str_concat(ptr @.str13259, ptr %t145) - %t147 = call ptr @lp_str_concat(ptr %t146, ptr @.str13261) - call void @fn_emit(ptr %t147) - %t148 = load ptr, ptr %t144 - %t149 = getelementptr inbounds %Cmp_Val, ptr %t148, i32 0, i32 0 - %t150 = load ptr, ptr %t149 - call void @fn_emit(ptr %t150) - call void @fn_emit(ptr @.str13262) - br label %ifend39 -ifend39: - call void @fn_emit_calls_for_phase(ptr @.str13263) - call void @fn_emit_calls_for_phase(ptr @.str13264) - %t152 = load i32, ptr @g_g_has_clear_color - %t153 = icmp ne i32 %t152, 0 - %t154 = zext i1 %t153 to i32 - store i32 %t154, ptr %t151 - br i1 %t153, label %sc40, label %scend41 -sc40: - %t155 = call ptr @fn_find_fn(ptr @.str13265) - %t156 = icmp ne ptr %t155, null - %t157 = zext i1 %t156 to i32 - %t158 = icmp ne i32 %t157, 0 + %t140 = icmp ne i32 %t139, 0 + %t141 = zext i1 %t140 to i32 + store i32 %t141, ptr %t133 + br label %scend39 +scend39: + %t142 = load i32, ptr %t133 + %t143 = icmp ne i32 %t142, 0 + br i1 %t143, label %then40, label %ifend42 +then40: + %t144 = load ptr, ptr @g_g_clear_color + %t145 = call ptr @fn_emit_expr(ptr %t144) + store ptr %t145, ptr %t146 + %t147 = call ptr @fn_fn_sym(ptr @.str13381) + %t148 = call ptr @lp_str_concat(ptr @.str13380, ptr %t147) + %t149 = call ptr @lp_str_concat(ptr %t148, ptr @.str13382) + call void @fn_emit(ptr %t149) + %t150 = load ptr, ptr %t146 + %t151 = getelementptr inbounds %Cmp_Val, ptr %t150, i32 0, i32 0 + %t152 = load ptr, ptr %t151 + call void @fn_emit(ptr %t152) + call void @fn_emit(ptr @.str13383) + br label %ifend42 +ifend42: + call void @fn_emit_calls_for_phase(ptr @.str13384) + call void @fn_emit_calls_for_phase(ptr @.str13385) + %t154 = load i32, ptr @g_g_has_clear_color + %t155 = icmp ne i32 %t154, 0 + %t156 = zext i1 %t155 to i32 + store i32 %t156, ptr %t153 + br i1 %t155, label %sc43, label %scend44 +sc43: + %t157 = call ptr @fn_find_fn(ptr @.str13386) + %t158 = icmp ne ptr %t157, null %t159 = zext i1 %t158 to i32 - store i32 %t159, ptr %t151 - br label %scend41 -scend41: - %t160 = load i32, ptr %t151 - %t161 = icmp ne i32 %t160, 0 - br i1 %t161, label %then42, label %ifend44 -then42: - %t162 = call ptr @fn_fn_sym(ptr @.str13267) - %t163 = call ptr @lp_str_concat(ptr @.str13266, ptr %t162) - %t164 = call ptr @lp_str_concat(ptr %t163, ptr @.str13268) - call void @fn_emit(ptr %t164) - br label %ifend44 -ifend44: - %t165 = call ptr @fn_emit_bind(ptr @.str13269) - store ptr %t165, ptr %t166 - %t167 = load ptr, ptr %t166 - %t168 = call ptr @lp_str_concat(ptr @.str13270, ptr %t167) - %t169 = call ptr @lp_str_concat(ptr %t168, ptr @.str13271) - %t170 = call ptr @fn_emit_bind(ptr %t169) - store ptr %t170, ptr %t171 - call void @fn_emit(ptr @.str13272) - %t172 = load ptr, ptr %t171 - call void @fn_emit(ptr %t172) - call void @fn_emit(ptr @.str13273) - call void @fn_emit(ptr @.str13274) - call void @fn_emit(ptr @.str13275) - %t173 = load ptr, ptr @g_g_ondespawn - %t174 = getelementptr inbounds %LSlice, ptr %t173, i32 0, i32 1 - %t175 = load i32, ptr %t174 - %t176 = icmp sgt i32 %t175, 0 - %t177 = zext i1 %t176 to i32 - %t178 = icmp ne i32 %t177, 0 - br i1 %t178, label %then45, label %ifend47 + %t160 = icmp ne i32 %t159, 0 + %t161 = zext i1 %t160 to i32 + store i32 %t161, ptr %t153 + br label %scend44 +scend44: + %t162 = load i32, ptr %t153 + %t163 = icmp ne i32 %t162, 0 + br i1 %t163, label %then45, label %ifend47 then45: - call void @fn_emit(ptr @.str13276) + %t164 = call ptr @fn_fn_sym(ptr @.str13388) + %t165 = call ptr @lp_str_concat(ptr @.str13387, ptr %t164) + %t166 = call ptr @lp_str_concat(ptr %t165, ptr @.str13389) + call void @fn_emit(ptr %t166) br label %ifend47 ifend47: - call void @fn_emit_calls_for_phase(ptr @.str13277) - %t179 = call ptr @fn_find_event(ptr @.str13278) - %t180 = icmp ne ptr %t179, null - %t181 = zext i1 %t180 to i32 - %t182 = icmp ne i32 %t181, 0 - br i1 %t182, label %then48, label %ifend50 + %t167 = call ptr @fn_emit_bind(ptr @.str13390) + store ptr %t167, ptr %t168 + %t169 = load ptr, ptr %t168 + %t170 = call ptr @lp_str_concat(ptr @.str13391, ptr %t169) + %t171 = call ptr @lp_str_concat(ptr %t170, ptr @.str13392) + %t172 = call ptr @fn_emit_bind(ptr %t171) + store ptr %t172, ptr %t173 + call void @fn_emit(ptr @.str13393) + %t174 = load ptr, ptr %t173 + call void @fn_emit(ptr %t174) + call void @fn_emit(ptr @.str13394) + call void @fn_emit(ptr @.str13395) + call void @fn_emit(ptr @.str13396) + %t175 = load ptr, ptr @g_g_ondespawn + %t176 = getelementptr inbounds %LSlice, ptr %t175, i32 0, i32 1 + %t177 = load i32, ptr %t176 + %t178 = icmp sgt i32 %t177, 0 + %t179 = zext i1 %t178 to i32 + %t180 = icmp ne i32 %t179, 0 + br i1 %t180, label %then48, label %ifend50 then48: - call void @fn_emit(ptr @.str13279) + call void @fn_emit(ptr @.str13397) br label %ifend50 ifend50: - %t183 = call ptr @fn_find_fn(ptr @.str13280) - %t184 = icmp ne ptr %t183, null - %t185 = zext i1 %t184 to i32 - %t186 = icmp ne i32 %t185, 0 - br i1 %t186, label %then51, label %ifend53 + call void @fn_emit_calls_for_phase(ptr @.str13398) + %t181 = call ptr @fn_find_event(ptr @.str13399) + %t182 = icmp ne ptr %t181, null + %t183 = zext i1 %t182 to i32 + %t184 = icmp ne i32 %t183, 0 + br i1 %t184, label %then51, label %ifend53 then51: - %t187 = call ptr @fn_fn_sym(ptr @.str13282) - %t188 = call ptr @lp_str_concat(ptr @.str13281, ptr %t187) - %t189 = call ptr @lp_str_concat(ptr %t188, ptr @.str13283) - call void @fn_emit(ptr %t189) + call void @fn_emit(ptr @.str13400) br label %ifend53 ifend53: - call void @fn_emit(ptr @.str13284) + %t185 = call ptr @fn_find_fn(ptr @.str13401) + %t186 = icmp ne ptr %t185, null + %t187 = zext i1 %t186 to i32 + %t188 = icmp ne i32 %t187, 0 + br i1 %t188, label %then54, label %ifend56 +then54: + %t189 = call ptr @fn_fn_sym(ptr @.str13403) + %t190 = call ptr @lp_str_concat(ptr @.str13402, ptr %t189) + %t191 = call ptr @lp_str_concat(ptr %t190, ptr @.str13404) + call void @fn_emit(ptr %t191) + br label %ifend56 +ifend56: + call void @fn_emit(ptr @.str13405) br label %ret ret: ret void @@ -171140,7 +171799,7 @@ then6: br i1 %t33, label %ixok9, label %ixbad10 ixbad10: %t34 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str13285, i32 %t28, i32 %t32) + call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str13406, i32 %t28, i32 %t32) call void @exit(i32 1) unreachable ixok9: @@ -171157,7 +171816,7 @@ ixok9: br i1 %t43, label %ixok11, label %ixbad12 ixbad12: %t44 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str13286, i32 %t38, i32 %t42) + call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str13407, i32 %t38, i32 %t42) call void @exit(i32 1) unreachable ixok11: @@ -171182,7 +171841,7 @@ then13: %t57 = load ptr, ptr %t0 %t58 = getelementptr inbounds %Cmp_Node, ptr %t57, i32 0, i32 1 %t59 = load ptr, ptr %t58 - %t60 = call ptr @lp_str_concat(ptr @.str13287, ptr %t59) + %t60 = call ptr @lp_str_concat(ptr @.str13408, ptr %t59) store ptr %t60, ptr %retval br label %ret ifend15: @@ -171278,8 +171937,8 @@ then11: %t51 = load ptr, ptr %t1 %t52 = getelementptr inbounds %Cmp_Node, ptr %t51, i32 0, i32 1 %t53 = load ptr, ptr %t52 - %t54 = call ptr @lp_str_concat(ptr @.str13288, ptr %t53) - %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str13289) + %t54 = call ptr @lp_str_concat(ptr @.str13409, ptr %t53) + %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str13410) %t56 = load ptr, ptr %t20 %t57 = call ptr @lp_str_concat(ptr %t55, ptr %t56) call void @fn_perr(ptr %t57) @@ -171317,7 +171976,7 @@ entry: %t3 = load ptr, ptr %t2 %t4 = call ptr @fn_machine_addr(ptr %t3) store ptr %t4, ptr %t5 - store ptr @.str13290, ptr %t6 + store ptr @.str13411, ptr %t6 %t7 = load ptr, ptr %t5 %t8 = icmp ne ptr %t7, null %t9 = zext i1 %t8 to i32 @@ -171325,7 +171984,7 @@ entry: br i1 %t10, label %then0, label %else1 then0: %t11 = load ptr, ptr %t5 - %t12 = call ptr @lp_str_concat(ptr @.str13291, ptr %t11) + %t12 = call ptr @lp_str_concat(ptr @.str13412, ptr %t11) %t13 = call ptr @fn_emit_bind(ptr %t12) store ptr %t13, ptr %t6 br label %ifend2 @@ -171335,14 +171994,14 @@ else1: %t16 = load ptr, ptr %t15 %t17 = call ptr @fn_emit_expr(ptr %t16) store ptr %t17, ptr %t18 - %t19 = call ptr @fn_fn_sym(ptr @.str13293) - %t20 = call ptr @lp_str_concat(ptr @.str13292, ptr %t19) - %t21 = call ptr @lp_str_concat(ptr %t20, ptr @.str13294) + %t19 = call ptr @fn_fn_sym(ptr @.str13414) + %t20 = call ptr @lp_str_concat(ptr @.str13413, ptr %t19) + %t21 = call ptr @lp_str_concat(ptr %t20, ptr @.str13415) %t22 = load ptr, ptr %t18 %t23 = getelementptr inbounds %Cmp_Val, ptr %t22, i32 0, i32 0 %t24 = load ptr, ptr %t23 %t25 = call ptr @lp_str_concat(ptr %t21, ptr %t24) - %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str13295) + %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str13416) %t27 = call ptr @fn_emit_bind(ptr %t26) store ptr %t27, ptr %t6 br label %ifend2 @@ -171366,7 +172025,7 @@ then3: br i1 %t41, label %ixok6, label %ixbad7 ixbad7: %t42 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str13296, i32 %t36, i32 %t40) + call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str13417, i32 %t36, i32 %t40) call void @exit(i32 1) unreachable ixok6: @@ -171408,7 +172067,7 @@ ifend5: %t65 = load i32, ptr @g_nmach %t66 = add i32 %t65, 1 store i32 %t66, ptr @g_nmach - %t67 = call ptr @fn_lbl(ptr @.str13297) + %t67 = call ptr @fn_lbl(ptr @.str13418) store ptr %t67, ptr %t68 store i32 0, ptr %t69 br label %wcond10 @@ -171436,7 +172095,7 @@ wbody11: br i1 %t87, label %ixok13, label %ixbad14 ixbad14: %t88 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t88, ptr @.fmt_bounds, ptr @.str13298, i32 %t82, i32 %t86) + call i32 (ptr, ptr, ...) @fprintf(ptr %t88, ptr @.fmt_bounds, ptr @.str13419, i32 %t82, i32 %t86) call void @exit(i32 1) unreachable ixok13: @@ -171448,29 +172107,29 @@ ixok13: %t94 = call ptr @fn_machine_state_value(ptr %t92, ptr %t93) store ptr %t94, ptr %t95 %t96 = load ptr, ptr %t6 - %t97 = call ptr @lp_str_concat(ptr @.str13299, ptr %t96) - %t98 = call ptr @lp_str_concat(ptr %t97, ptr @.str13300) + %t97 = call ptr @lp_str_concat(ptr @.str13420, ptr %t96) + %t98 = call ptr @lp_str_concat(ptr %t97, ptr @.str13421) %t99 = load ptr, ptr %t95 %t100 = call ptr @lp_str_concat(ptr %t98, ptr %t99) %t101 = call ptr @fn_emit_bind(ptr %t100) store ptr %t101, ptr %t102 - %t103 = call ptr @fn_lbl(ptr @.str13301) + %t103 = call ptr @fn_lbl(ptr @.str13422) store ptr %t103, ptr %t104 - %t105 = call ptr @fn_lbl(ptr @.str13302) + %t105 = call ptr @fn_lbl(ptr @.str13423) store ptr %t105, ptr %t106 - call void @fn_emit(ptr @.str13303) + call void @fn_emit(ptr @.str13424) %t107 = load ptr, ptr %t102 call void @fn_emit(ptr %t107) - call void @fn_emit(ptr @.str13304) + call void @fn_emit(ptr @.str13425) %t108 = load ptr, ptr %t104 call void @fn_emit(ptr %t108) - call void @fn_emit(ptr @.str13305) + call void @fn_emit(ptr @.str13426) %t109 = load ptr, ptr %t106 call void @fn_emit(ptr %t109) - call void @fn_emit(ptr @.str13306) + call void @fn_emit(ptr @.str13427) %t110 = load ptr, ptr %t104 call void @fn_emit(ptr %t110) - call void @fn_emit(ptr @.str13307) + call void @fn_emit(ptr @.str13428) store i32 0, ptr @g_g_term %t111 = load ptr, ptr %t91 %t112 = getelementptr inbounds %Cmp_Node, ptr %t111, i32 0, i32 4 @@ -171482,15 +172141,15 @@ ixok13: %t117 = icmp ne i32 %t116, 0 br i1 %t117, label %then15, label %ifend17 then15: - call void @fn_emit(ptr @.str13308) + call void @fn_emit(ptr @.str13429) %t118 = load ptr, ptr %t68 call void @fn_emit(ptr %t118) - call void @fn_emit(ptr @.str13309) + call void @fn_emit(ptr @.str13430) br label %ifend17 ifend17: %t119 = load ptr, ptr %t106 call void @fn_emit(ptr %t119) - call void @fn_emit(ptr @.str13310) + call void @fn_emit(ptr @.str13431) store i32 0, ptr @g_g_term %t120 = load i32, ptr %t69 %t121 = add i32 %t120, 1 @@ -171503,15 +172162,15 @@ wend12: %t125 = icmp ne i32 %t124, 0 br i1 %t125, label %then18, label %ifend20 then18: - call void @fn_emit(ptr @.str13311) + call void @fn_emit(ptr @.str13432) %t126 = load ptr, ptr %t68 call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str13312) + call void @fn_emit(ptr @.str13433) br label %ifend20 ifend20: %t127 = load ptr, ptr %t68 call void @fn_emit(ptr %t127) - call void @fn_emit(ptr @.str13313) + call void @fn_emit(ptr @.str13434) store i32 0, ptr @g_g_term %t128 = load i32, ptr @g_nmach %t129 = sub i32 %t128, 1 @@ -171549,7 +172208,7 @@ then0: br i1 %t12, label %ixok3, label %ixbad4 ixbad4: %t13 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t13, ptr @.fmt_bounds, ptr @.str13314, i32 %t7, i32 %t11) + call i32 (ptr, ptr, ...) @fprintf(ptr %t13, ptr @.fmt_bounds, ptr @.str13435, i32 %t7, i32 %t11) call void @exit(i32 1) unreachable ixok3: @@ -171583,7 +172242,7 @@ wbody6: br i1 %t36, label %ixok8, label %ixbad9 ixbad9: %t37 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t37, ptr @.fmt_bounds, ptr @.str13315, i32 %t31, i32 %t35) + call i32 (ptr, ptr, ...) @fprintf(ptr %t37, ptr @.fmt_bounds, ptr @.str13436, i32 %t31, i32 %t35) call void @exit(i32 1) unreachable ixok8: @@ -171610,7 +172269,7 @@ then10: br i1 %t55, label %ixok13, label %ixbad14 ixbad14: %t56 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t56, ptr @.fmt_bounds, ptr @.str13316, i32 %t50, i32 %t54) + call i32 (ptr, ptr, ...) @fprintf(ptr %t56, ptr @.fmt_bounds, ptr @.str13437, i32 %t50, i32 %t54) call void @exit(i32 1) unreachable ixok13: @@ -171646,11 +172305,11 @@ then15: br i1 %t77, label %then18, label %else19 then18: %t78 = load ptr, ptr %t68 - %t79 = call ptr @lp_str_concat(ptr @.str13317, ptr %t78) - %t80 = call ptr @lp_str_concat(ptr %t79, ptr @.str13318) + %t79 = call ptr @lp_str_concat(ptr @.str13438, ptr %t78) + %t80 = call ptr @lp_str_concat(ptr %t79, ptr @.str13439) %t81 = load ptr, ptr %t73 %t82 = call ptr @lp_str_concat(ptr %t80, ptr %t81) - %t83 = call ptr @lp_str_concat(ptr %t82, ptr @.str13319) + %t83 = call ptr @lp_str_concat(ptr %t82, ptr @.str13440) call void @fn_emit(ptr %t83) br label %ifend20 else19: @@ -171659,18 +172318,18 @@ else19: %t86 = load ptr, ptr %t85 %t87 = call ptr @fn_emit_expr(ptr %t86) store ptr %t87, ptr %t88 - %t89 = call ptr @fn_fn_sym(ptr @.str13321) - %t90 = call ptr @lp_str_concat(ptr @.str13320, ptr %t89) - %t91 = call ptr @lp_str_concat(ptr %t90, ptr @.str13322) + %t89 = call ptr @fn_fn_sym(ptr @.str13442) + %t90 = call ptr @lp_str_concat(ptr @.str13441, ptr %t89) + %t91 = call ptr @lp_str_concat(ptr %t90, ptr @.str13443) call void @fn_emit(ptr %t91) %t92 = load ptr, ptr %t88 %t93 = getelementptr inbounds %Cmp_Val, ptr %t92, i32 0, i32 0 %t94 = load ptr, ptr %t93 call void @fn_emit(ptr %t94) - call void @fn_emit(ptr @.str13323) + call void @fn_emit(ptr @.str13444) %t95 = load ptr, ptr %t68 call void @fn_emit(ptr %t95) - call void @fn_emit(ptr @.str13324) + call void @fn_emit(ptr @.str13445) br label %ifend20 ifend20: br label %ret @@ -171691,7 +172350,7 @@ then21: %t105 = load ptr, ptr %t0 %t106 = getelementptr inbounds %Cmp_Node, ptr %t105, i32 0, i32 1 %t107 = load ptr, ptr %t106 - %t108 = call ptr @lp_str_concat(ptr @.str13325, ptr %t107) + %t108 = call ptr @lp_str_concat(ptr @.str13446, ptr %t107) call void @fn_perr(ptr %t108) br label %ifend23 ifend23: @@ -171701,30 +172360,30 @@ ifend23: %t112 = icmp ne i32 %t111, 0 br i1 %t112, label %then24, label %else25 then24: - call void @fn_emit(ptr @.str13326) + call void @fn_emit(ptr @.str13447) %t113 = load ptr, ptr @g_g_cur_scene %t114 = getelementptr inbounds %Cmp_Node, ptr %t113, i32 0, i32 1 %t115 = load ptr, ptr %t114 call void @fn_emit(ptr %t115) - call void @fn_emit(ptr @.str13327) + call void @fn_emit(ptr @.str13448) br label %ifend26 else25: - call void @fn_emit(ptr @.str13328) + call void @fn_emit(ptr @.str13449) br label %ifend26 ifend26: - call void @fn_emit(ptr @.str13329) + call void @fn_emit(ptr @.str13450) %t116 = load ptr, ptr %t100 %t117 = getelementptr inbounds %Cmp_Node, ptr %t116, i32 0, i32 2 %t118 = load i32, ptr %t117 %t119 = call ptr @fn_itoa(i32 %t118) call void @fn_emit(ptr %t119) - call void @fn_emit(ptr @.str13330) - call void @fn_emit(ptr @.str13331) + call void @fn_emit(ptr @.str13451) + call void @fn_emit(ptr @.str13452) %t120 = load ptr, ptr %t100 %t121 = getelementptr inbounds %Cmp_Node, ptr %t120, i32 0, i32 1 %t122 = load ptr, ptr %t121 call void @fn_emit(ptr %t122) - call void @fn_emit(ptr @.str13332) + call void @fn_emit(ptr @.str13453) br label %ret ret: ret void @@ -171743,51 +172402,51 @@ entry: store ptr %arg_p, ptr %t1 store ptr %arg_bytes, ptr %t2 %t3 = load ptr, ptr @g_g_snap_mode - %t4 = call i32 @lp_str_eq(ptr %t3, ptr @.str13333) + %t4 = call i32 @lp_str_eq(ptr %t3, ptr @.str13454) %t5 = icmp ne i32 %t4, 0 br i1 %t5, label %then0, label %ifend2 then0: %t6 = load i32, ptr @g_g_iok %t7 = call ptr @fn_itoa(i32 %t6) - %t8 = call ptr @lp_str_concat(ptr @.str13334, ptr %t7) + %t8 = call ptr @lp_str_concat(ptr @.str13455, ptr %t7) store ptr %t8, ptr %t9 %t10 = load i32, ptr @g_g_iok %t11 = add i32 %t10, 1 store i32 %t11, ptr @g_g_iok - call void @fn_emit(ptr @.str13335) + call void @fn_emit(ptr @.str13456) %t12 = load ptr, ptr %t9 call void @fn_emit(ptr %t12) - call void @fn_emit(ptr @.str13336) + call void @fn_emit(ptr @.str13457) %t13 = load ptr, ptr %t0 call void @fn_emit(ptr %t13) - call void @fn_emit(ptr @.str13337) + call void @fn_emit(ptr @.str13458) %t14 = load ptr, ptr %t1 call void @fn_emit(ptr %t14) - call void @fn_emit(ptr @.str13338) + call void @fn_emit(ptr @.str13459) %t15 = load ptr, ptr %t2 call void @fn_emit(ptr %t15) - call void @fn_emit(ptr @.str13339) + call void @fn_emit(ptr @.str13460) br label %ret ifend2: %t16 = load ptr, ptr @g_g_snap_mode - %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str13340) + %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str13461) %t18 = icmp ne i32 %t17, 0 br i1 %t18, label %then3, label %ifend5 then3: %t19 = load i32, ptr @g_g_iok %t20 = call ptr @fn_itoa(i32 %t19) - %t21 = call ptr @lp_str_concat(ptr @.str13341, ptr %t20) + %t21 = call ptr @lp_str_concat(ptr @.str13462, ptr %t20) store ptr %t21, ptr %t22 - call void @fn_emit(ptr @.str13342) + call void @fn_emit(ptr @.str13463) %t23 = load ptr, ptr %t22 call void @fn_emit(ptr %t23) - call void @fn_emit(ptr @.str13343) + call void @fn_emit(ptr @.str13464) %t24 = load ptr, ptr @g_g_off call void @fn_emit(ptr %t24) - call void @fn_emit(ptr @.str13344) + call void @fn_emit(ptr @.str13465) %t25 = load ptr, ptr %t2 call void @fn_emit(ptr %t25) - call void @fn_emit(ptr @.str13345) + call void @fn_emit(ptr @.str13466) %t26 = load ptr, ptr %t22 store ptr %t26, ptr @g_g_off %t27 = load i32, ptr @g_g_iok @@ -171797,58 +172456,58 @@ then3: ifend5: %t29 = load i32, ptr @g_g_iok %t30 = call ptr @fn_itoa(i32 %t29) - %t31 = call ptr @lp_str_concat(ptr @.str13346, ptr %t30) + %t31 = call ptr @lp_str_concat(ptr @.str13467, ptr %t30) store ptr %t31, ptr %t32 - call void @fn_emit(ptr @.str13347) + call void @fn_emit(ptr @.str13468) %t33 = load ptr, ptr %t32 call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str13348) + call void @fn_emit(ptr @.str13469) %t34 = load ptr, ptr @g_g_off call void @fn_emit(ptr %t34) - call void @fn_emit(ptr @.str13349) + call void @fn_emit(ptr @.str13470) %t35 = load ptr, ptr @g_g_snap_mode - %t36 = call i32 @lp_str_eq(ptr %t35, ptr @.str13350) + %t36 = call i32 @lp_str_eq(ptr %t35, ptr @.str13471) %t37 = icmp ne i32 %t36, 0 br i1 %t37, label %then6, label %else7 then6: - call void @fn_emit(ptr @.str13351) + call void @fn_emit(ptr @.str13472) %t38 = load ptr, ptr %t32 call void @fn_emit(ptr %t38) - call void @fn_emit(ptr @.str13352) + call void @fn_emit(ptr @.str13473) %t39 = load ptr, ptr %t1 call void @fn_emit(ptr %t39) - call void @fn_emit(ptr @.str13353) + call void @fn_emit(ptr @.str13474) %t40 = load ptr, ptr %t2 call void @fn_emit(ptr %t40) - call void @fn_emit(ptr @.str13354) + call void @fn_emit(ptr @.str13475) br label %ifend8 else7: - call void @fn_emit(ptr @.str13355) + call void @fn_emit(ptr @.str13476) %t41 = load ptr, ptr %t1 call void @fn_emit(ptr %t41) - call void @fn_emit(ptr @.str13356) + call void @fn_emit(ptr @.str13477) %t42 = load ptr, ptr %t32 call void @fn_emit(ptr %t42) - call void @fn_emit(ptr @.str13357) + call void @fn_emit(ptr @.str13478) %t43 = load ptr, ptr %t2 call void @fn_emit(ptr %t43) - call void @fn_emit(ptr @.str13358) + call void @fn_emit(ptr @.str13479) br label %ifend8 ifend8: %t44 = load i32, ptr @g_g_iok %t45 = call ptr @fn_itoa(i32 %t44) - %t46 = call ptr @lp_str_concat(ptr @.str13359, ptr %t45) + %t46 = call ptr @lp_str_concat(ptr @.str13480, ptr %t45) store ptr %t46, ptr %t47 - call void @fn_emit(ptr @.str13360) + call void @fn_emit(ptr @.str13481) %t48 = load ptr, ptr %t47 call void @fn_emit(ptr %t48) - call void @fn_emit(ptr @.str13361) + call void @fn_emit(ptr @.str13482) %t49 = load ptr, ptr @g_g_off call void @fn_emit(ptr %t49) - call void @fn_emit(ptr @.str13362) + call void @fn_emit(ptr @.str13483) %t50 = load ptr, ptr %t2 call void @fn_emit(ptr %t50) - call void @fn_emit(ptr @.str13363) + call void @fn_emit(ptr @.str13484) %t51 = load ptr, ptr %t47 store ptr %t51, ptr @g_g_off %t52 = load i32, ptr @g_g_iok @@ -171862,286 +172521,365 @@ ret: define void @fn_emit_snapshot_blocks(ptr %arg_fn2) { entry: %t0 = alloca ptr - %t2 = alloca ptr - %t12 = alloca i32 - %t51 = alloca i32 - %t86 = alloca ptr - %t90 = alloca ptr + %t1 = alloca i32 + %t11 = alloca i32 + %t31 = alloca i32 + %t70 = alloca i32 + %t105 = alloca ptr + %t109 = alloca ptr + %t113 = alloca ptr store ptr %arg_fn2, ptr %t0 store i32 0, ptr @g_g_iok - store ptr @.str13364, ptr @g_g_off - %t1 = call ptr @fn_itoa(i32 1024) - store ptr %t1, ptr %t2 - %t3 = load ptr, ptr %t0 - call void @fn_emit_io(ptr %t3, ptr @.str13365, ptr @.str13366) - %t4 = load ptr, ptr %t0 - call void @fn_emit_io(ptr %t4, ptr @.str13367, ptr @.str13368) - call void @fn_emit(ptr @.str13369) - %t5 = load ptr, ptr %t2 - call void @fn_emit(ptr %t5) - call void @fn_emit(ptr @.str13370) - %t6 = load ptr, ptr %t0 - call void @fn_emit_io(ptr %t6, ptr @.str13371, ptr @.str13372) - %t7 = load ptr, ptr %t0 - call void @fn_emit_io(ptr %t7, ptr @.str13373, ptr @.str13374) - %t8 = load ptr, ptr %t0 - call void @fn_emit_io(ptr %t8, ptr @.str13375, ptr @.str13376) - %t9 = call i32 @fn_net_has_owned() - %t10 = icmp ne i32 %t9, 0 - br i1 %t10, label %then0, label %ifend2 -then0: - %t11 = load ptr, ptr %t0 - call void @fn_emit_io(ptr %t11, ptr @.str13377, ptr @.str13378) - br label %ifend2 -ifend2: - store i32 0, ptr %t12 - br label %wcond3 -wcond3: - %t13 = load i32, ptr %t12 - %t14 = load ptr, ptr @g_prog - %t15 = getelementptr inbounds %LSlice, ptr %t14, i32 0, i32 1 - %t16 = load i32, ptr %t15 - %t17 = icmp slt i32 %t13, %t16 - %t18 = zext i1 %t17 to i32 - %t19 = icmp ne i32 %t18, 0 - br i1 %t19, label %wbody4, label %wend5 -wbody4: - %t20 = load ptr, ptr @g_prog - %t21 = load i32, ptr %t12 - %t22 = getelementptr inbounds %LSlice, ptr %t20, i32 0, i32 0 - %t23 = load ptr, ptr %t22 - %t24 = getelementptr inbounds %LSlice, ptr %t20, i32 0, i32 1 - %t25 = load i32, ptr %t24 - %t26 = icmp ult i32 %t21, %t25 - br i1 %t26, label %ixok6, label %ixbad7 -ixbad7: - %t27 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t27, ptr @.fmt_bounds, ptr @.str13379, i32 %t21, i32 %t25) - call void @exit(i32 1) - unreachable -ixok6: - %t28 = getelementptr inbounds ptr, ptr %t23, i32 %t21 - %t29 = load ptr, ptr %t28 - %t30 = getelementptr inbounds %Cmp_Node, ptr %t29, i32 0, i32 0 - %t31 = load i32, ptr %t30 - %t32 = icmp eq i32 %t31, 2 - %t33 = zext i1 %t32 to i32 - %t34 = icmp ne i32 %t33, 0 - br i1 %t34, label %then8, label %ifend10 + store ptr @.str13485, ptr @g_g_off + %t2 = load ptr, ptr %t0 + %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str13486) + %t4 = icmp ne i32 %t3, 0 + %t5 = zext i1 %t4 to i32 + store i32 %t5, ptr %t1 + br i1 %t4, label %scend1, label %sc0 +sc0: + %t6 = load ptr, ptr @g_g_snap_mode + %t7 = call i32 @lp_str_eq(ptr %t6, ptr @.str13487) + %t8 = icmp ne i32 %t7, 0 + %t9 = zext i1 %t8 to i32 + store i32 %t9, ptr %t1 + br label %scend1 +scend1: + %t10 = load i32, ptr %t1 + store i32 %t10, ptr %t11 + %t12 = load i32, ptr %t11 + %t13 = icmp eq i32 %t12, 0 + %t14 = zext i1 %t13 to i32 + %t15 = icmp ne i32 %t14, 0 + br i1 %t15, label %then2, label %ifend4 +then2: + call void @fn_emit(ptr @.str13488) + br label %ifend4 +ifend4: + %t16 = load ptr, ptr %t0 + call void @fn_emit_io(ptr %t16, ptr @.str13489, ptr @.str13490) + call void @fn_emit(ptr @.str13491) + %t17 = load i32, ptr %t11 + %t18 = icmp ne i32 %t17, 0 + br i1 %t18, label %then5, label %ifend7 +then5: + call void @fn_emit(ptr @.str13492) + br label %ifend7 +ifend7: + call void @fn_emit(ptr @.str13493) + %t19 = load ptr, ptr %t0 + call void @fn_emit_io(ptr %t19, ptr @.str13494, ptr @.str13495) + %t20 = load ptr, ptr %t0 + call void @fn_emit_io(ptr %t20, ptr @.str13496, ptr @.str13497) + call void @fn_emit(ptr @.str13498) + %t21 = load ptr, ptr %t0 + %t22 = call ptr @fn_snap_base(ptr @.str13499, i32 0) + call void @fn_emit_io(ptr %t21, ptr %t22, ptr @.str13500) + %t23 = load ptr, ptr %t0 + %t24 = call ptr @fn_snap_base(ptr @.str13501, i32 1) + call void @fn_emit_io(ptr %t23, ptr %t24, ptr @.str13502) + %t25 = load ptr, ptr %t0 + %t26 = call ptr @fn_snap_base(ptr @.str13503, i32 2) + call void @fn_emit_io(ptr %t25, ptr %t26, ptr @.str13504) + %t27 = call i32 @fn_net_has_owned() + %t28 = icmp ne i32 %t27, 0 + br i1 %t28, label %then8, label %ifend10 then8: - %t35 = load ptr, ptr %t0 - %t36 = load ptr, ptr @g_prog - %t37 = load i32, ptr %t12 - %t38 = getelementptr inbounds %LSlice, ptr %t36, i32 0, i32 0 - %t39 = load ptr, ptr %t38 - %t40 = getelementptr inbounds %LSlice, ptr %t36, i32 0, i32 1 - %t41 = load i32, ptr %t40 - %t42 = icmp ult i32 %t37, %t41 - br i1 %t42, label %ixok11, label %ixbad12 -ixbad12: - %t43 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13381, i32 %t37, i32 %t41) - call void @exit(i32 1) - unreachable -ixok11: - %t44 = getelementptr inbounds ptr, ptr %t39, i32 %t37 - %t45 = load ptr, ptr %t44 - %t46 = getelementptr inbounds %Cmp_Node, ptr %t45, i32 0, i32 1 - %t47 = load ptr, ptr %t46 - %t48 = call ptr @lp_str_concat(ptr @.str13380, ptr %t47) - call void @fn_emit_io(ptr %t35, ptr %t48, ptr @.str13382) + %t29 = load ptr, ptr %t0 + %t30 = call ptr @fn_snap_base(ptr @.str13505, i32 3) + call void @fn_emit_io(ptr %t29, ptr %t30, ptr @.str13506) br label %ifend10 ifend10: - %t49 = load i32, ptr %t12 - %t50 = add i32 %t49, 1 - store i32 %t50, ptr %t12 - br label %wcond3 -wend5: - store i32 0, ptr %t51 - store i32 0, ptr %t12 - br label %wcond13 -wcond13: - %t52 = load i32, ptr %t12 - %t53 = load ptr, ptr @g_prog - %t54 = getelementptr inbounds %LSlice, ptr %t53, i32 0, i32 1 - %t55 = load i32, ptr %t54 - %t56 = icmp slt i32 %t52, %t55 - %t57 = zext i1 %t56 to i32 - %t58 = icmp ne i32 %t57, 0 - br i1 %t58, label %wbody14, label %wend15 -wbody14: - %t59 = load ptr, ptr @g_prog - %t60 = load i32, ptr %t12 - %t61 = getelementptr inbounds %LSlice, ptr %t59, i32 0, i32 0 - %t62 = load ptr, ptr %t61 - %t63 = getelementptr inbounds %LSlice, ptr %t59, i32 0, i32 1 - %t64 = load i32, ptr %t63 - %t65 = icmp ult i32 %t60, %t64 - br i1 %t65, label %ixok16, label %ixbad17 -ixbad17: - %t66 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str13383, i32 %t60, i32 %t64) + store i32 0, ptr %t31 + br label %wcond11 +wcond11: + %t32 = load i32, ptr %t31 + %t33 = load ptr, ptr @g_prog + %t34 = getelementptr inbounds %LSlice, ptr %t33, i32 0, i32 1 + %t35 = load i32, ptr %t34 + %t36 = icmp slt i32 %t32, %t35 + %t37 = zext i1 %t36 to i32 + %t38 = icmp ne i32 %t37, 0 + br i1 %t38, label %wbody12, label %wend13 +wbody12: + %t39 = load ptr, ptr @g_prog + %t40 = load i32, ptr %t31 + %t41 = getelementptr inbounds %LSlice, ptr %t39, i32 0, i32 0 + %t42 = load ptr, ptr %t41 + %t43 = getelementptr inbounds %LSlice, ptr %t39, i32 0, i32 1 + %t44 = load i32, ptr %t43 + %t45 = icmp ult i32 %t40, %t44 + br i1 %t45, label %ixok14, label %ixbad15 +ixbad15: + %t46 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t46, ptr @.fmt_bounds, ptr @.str13507, i32 %t40, i32 %t44) call void @exit(i32 1) unreachable -ixok16: - %t67 = getelementptr inbounds ptr, ptr %t62, i32 %t60 - %t68 = load ptr, ptr %t67 - %t69 = getelementptr inbounds %Cmp_Node, ptr %t68, i32 0, i32 0 - %t70 = load i32, ptr %t69 - %t71 = icmp eq i32 %t70, 8 - %t72 = zext i1 %t71 to i32 - %t73 = icmp ne i32 %t72, 0 - br i1 %t73, label %then18, label %ifend20 -then18: - %t74 = load ptr, ptr @g_prog - %t75 = load i32, ptr %t12 - %t76 = getelementptr inbounds %LSlice, ptr %t74, i32 0, i32 0 - %t77 = load ptr, ptr %t76 - %t78 = getelementptr inbounds %LSlice, ptr %t74, i32 0, i32 1 - %t79 = load i32, ptr %t78 - %t80 = icmp ult i32 %t75, %t79 - br i1 %t80, label %ixok21, label %ixbad22 -ixbad22: - %t81 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t81, ptr @.fmt_bounds, ptr @.str13384, i32 %t75, i32 %t79) +ixok14: + %t47 = getelementptr inbounds ptr, ptr %t42, i32 %t40 + %t48 = load ptr, ptr %t47 + %t49 = getelementptr inbounds %Cmp_Node, ptr %t48, i32 0, i32 0 + %t50 = load i32, ptr %t49 + %t51 = icmp eq i32 %t50, 2 + %t52 = zext i1 %t51 to i32 + %t53 = icmp ne i32 %t52, 0 + br i1 %t53, label %then16, label %ifend18 +then16: + %t54 = load ptr, ptr %t0 + %t55 = load ptr, ptr @g_prog + %t56 = load i32, ptr %t31 + %t57 = getelementptr inbounds %LSlice, ptr %t55, i32 0, i32 0 + %t58 = load ptr, ptr %t57 + %t59 = getelementptr inbounds %LSlice, ptr %t55, i32 0, i32 1 + %t60 = load i32, ptr %t59 + %t61 = icmp ult i32 %t56, %t60 + br i1 %t61, label %ixok19, label %ixbad20 +ixbad20: + %t62 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t62, ptr @.fmt_bounds, ptr @.str13509, i32 %t56, i32 %t60) call void @exit(i32 1) unreachable -ixok21: - %t82 = getelementptr inbounds ptr, ptr %t77, i32 %t75 - %t83 = load ptr, ptr %t82 - %t84 = getelementptr inbounds %Cmp_Node, ptr %t83, i32 0, i32 1 - %t85 = load ptr, ptr %t84 - store ptr %t85, ptr %t86 - %t87 = load i32, ptr %t51 - %t88 = call ptr @fn_itoa(i32 %t87) - %t89 = call ptr @lp_str_concat(ptr @.str13385, ptr %t88) - store ptr %t89, ptr %t90 - call void @fn_emit(ptr @.str13386) - %t91 = load ptr, ptr %t90 - call void @fn_emit(ptr %t91) - call void @fn_emit(ptr @.str13387) - %t92 = load ptr, ptr %t86 - call void @fn_emit(ptr %t92) - call void @fn_emit(ptr @.str13388) - %t93 = load ptr, ptr %t2 - call void @fn_emit(ptr %t93) - call void @fn_emit(ptr @.str13389) - %t94 = load ptr, ptr %t0 - %t95 = load ptr, ptr %t86 - %t96 = call ptr @lp_str_concat(ptr @.str13390, ptr %t95) - %t97 = load ptr, ptr %t90 - call void @fn_emit_io(ptr %t94, ptr %t96, ptr %t97) - %t98 = load ptr, ptr %t0 - %t99 = load ptr, ptr %t86 - %t100 = call ptr @lp_str_concat(ptr @.str13391, ptr %t99) - %t101 = load ptr, ptr %t2 - call void @fn_emit_io(ptr %t98, ptr %t100, ptr %t101) - %t102 = load i32, ptr %t51 - %t103 = add i32 %t102, 1 - store i32 %t103, ptr %t51 - br label %ifend20 -ifend20: - %t104 = load i32, ptr %t12 - %t105 = add i32 %t104, 1 - store i32 %t105, ptr %t12 - br label %wcond13 -wend15: +ixok19: + %t63 = getelementptr inbounds ptr, ptr %t58, i32 %t56 + %t64 = load ptr, ptr %t63 + %t65 = getelementptr inbounds %Cmp_Node, ptr %t64, i32 0, i32 1 + %t66 = load ptr, ptr %t65 + %t67 = call ptr @lp_str_concat(ptr @.str13508, ptr %t66) + call void @fn_emit_io(ptr %t54, ptr %t67, ptr @.str13510) + br label %ifend18 +ifend18: + %t68 = load i32, ptr %t31 + %t69 = add i32 %t68, 1 + store i32 %t69, ptr %t31 + br label %wcond11 +wend13: + store i32 0, ptr %t70 + store i32 0, ptr %t31 + br label %wcond21 +wcond21: + %t71 = load i32, ptr %t31 + %t72 = load ptr, ptr @g_prog + %t73 = getelementptr inbounds %LSlice, ptr %t72, i32 0, i32 1 + %t74 = load i32, ptr %t73 + %t75 = icmp slt i32 %t71, %t74 + %t76 = zext i1 %t75 to i32 + %t77 = icmp ne i32 %t76, 0 + br i1 %t77, label %wbody22, label %wend23 +wbody22: + %t78 = load ptr, ptr @g_prog + %t79 = load i32, ptr %t31 + %t80 = getelementptr inbounds %LSlice, ptr %t78, i32 0, i32 0 + %t81 = load ptr, ptr %t80 + %t82 = getelementptr inbounds %LSlice, ptr %t78, i32 0, i32 1 + %t83 = load i32, ptr %t82 + %t84 = icmp ult i32 %t79, %t83 + br i1 %t84, label %ixok24, label %ixbad25 +ixbad25: + %t85 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str13511, i32 %t79, i32 %t83) + call void @exit(i32 1) + unreachable +ixok24: + %t86 = getelementptr inbounds ptr, ptr %t81, i32 %t79 + %t87 = load ptr, ptr %t86 + %t88 = getelementptr inbounds %Cmp_Node, ptr %t87, i32 0, i32 0 + %t89 = load i32, ptr %t88 + %t90 = icmp eq i32 %t89, 8 + %t91 = zext i1 %t90 to i32 + %t92 = icmp ne i32 %t91, 0 + br i1 %t92, label %then26, label %ifend28 +then26: + %t93 = load ptr, ptr @g_prog + %t94 = load i32, ptr %t31 + %t95 = getelementptr inbounds %LSlice, ptr %t93, i32 0, i32 0 + %t96 = load ptr, ptr %t95 + %t97 = getelementptr inbounds %LSlice, ptr %t93, i32 0, i32 1 + %t98 = load i32, ptr %t97 + %t99 = icmp ult i32 %t94, %t98 + br i1 %t99, label %ixok29, label %ixbad30 +ixbad30: + %t100 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t100, ptr @.fmt_bounds, ptr @.str13512, i32 %t94, i32 %t98) + call void @exit(i32 1) + unreachable +ixok29: + %t101 = getelementptr inbounds ptr, ptr %t96, i32 %t94 + %t102 = load ptr, ptr %t101 + %t103 = getelementptr inbounds %Cmp_Node, ptr %t102, i32 0, i32 1 + %t104 = load ptr, ptr %t103 + store ptr %t104, ptr %t105 + %t106 = load i32, ptr %t70 + %t107 = call ptr @fn_itoa(i32 %t106) + %t108 = call ptr @lp_str_concat(ptr @.str13513, ptr %t107) + store ptr %t108, ptr %t109 + %t110 = load i32, ptr %t70 + %t111 = call ptr @fn_itoa(i32 %t110) + %t112 = call ptr @lp_str_concat(ptr @.str13514, ptr %t111) + store ptr %t112, ptr %t113 + call void @fn_emit(ptr @.str13515) + %t114 = load ptr, ptr %t109 + call void @fn_emit(ptr %t114) + call void @fn_emit(ptr @.str13516) + %t115 = load ptr, ptr %t105 + call void @fn_emit(ptr %t115) + call void @fn_emit(ptr @.str13517) + call void @fn_emit(ptr @.str13518) + %t116 = load ptr, ptr %t113 + call void @fn_emit(ptr %t116) + call void @fn_emit(ptr @.str13519) + %t117 = load ptr, ptr %t109 + call void @fn_emit(ptr %t117) + call void @fn_emit(ptr @.str13520) + %t118 = load ptr, ptr %t0 + %t119 = load ptr, ptr %t105 + %t120 = call ptr @lp_str_concat(ptr @.str13521, ptr %t119) + %t121 = load i32, ptr %t70 + %t122 = mul i32 %t121, 2 + %t123 = add i32 4, %t122 + %t124 = call ptr @fn_snap_base(ptr %t120, i32 %t123) + %t125 = load ptr, ptr %t113 + call void @fn_emit_io(ptr %t118, ptr %t124, ptr %t125) + %t126 = load ptr, ptr %t0 + %t127 = load ptr, ptr %t105 + %t128 = call ptr @lp_str_concat(ptr @.str13522, ptr %t127) + %t129 = load i32, ptr %t70 + %t130 = mul i32 %t129, 2 + %t131 = add i32 5, %t130 + %t132 = call ptr @fn_snap_base(ptr %t128, i32 %t131) + call void @fn_emit_io(ptr %t126, ptr %t132, ptr @.str13523) + %t133 = load i32, ptr %t70 + %t134 = add i32 %t133, 1 + store i32 %t134, ptr %t70 + br label %ifend28 +ifend28: + %t135 = load i32, ptr %t31 + %t136 = add i32 %t135, 1 + store i32 %t136, ptr %t31 + br label %wcond21 +wend23: br label %ret ret: ret void } +define ptr @fn_snap_base(ptr %arg_store, i32 %arg_k) { +entry: + %retval = alloca ptr + %t0 = alloca ptr + %t1 = alloca i32 + %t5 = alloca ptr + store ptr %arg_store, ptr %t0 + store i32 %arg_k, ptr %t1 + %t2 = load i32, ptr %t1 + %t3 = call ptr @fn_itoa(i32 %t2) + %t4 = call ptr @lp_str_concat(ptr @.str13524, ptr %t3) + store ptr %t4, ptr %t5 + %t6 = load ptr, ptr %t5 + %t7 = call ptr @lp_str_concat(ptr @.str13525, ptr %t6) + %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str13526) + %t9 = load ptr, ptr %t0 + %t10 = call ptr @lp_str_concat(ptr %t8, ptr %t9) + %t11 = call ptr @lp_str_concat(ptr %t10, ptr @.str13527) + call void @fn_emit(ptr %t11) + %t12 = load ptr, ptr %t5 + store ptr %t12, ptr %retval + br label %ret +ret: + %t13 = load ptr, ptr %retval + ret ptr %t13 +} + define void @fn_emit_snapshot() { entry: %t3 = alloca i32 %t7 = alloca i32 %t21 = alloca ptr %t28 = alloca ptr - store ptr @.str13392, ptr @g_g_snap_mode - call void @fn_emith(ptr @.str13393) - call void @fn_emith(ptr @.str13394) - call void @fn_emith(ptr @.str13395) - %t0 = call ptr @fn_find_fn(ptr @.str13396) + store ptr @.str13528, ptr @g_g_snap_mode + call void @fn_emith(ptr @.str13529) + call void @fn_emith(ptr @.str13530) + call void @fn_emith(ptr @.str13531) + %t0 = call ptr @fn_find_fn(ptr @.str13532) %t1 = icmp ne ptr %t0, null %t2 = zext i1 %t1 to i32 store i32 %t2, ptr %t3 - %t4 = call ptr @fn_find_fn(ptr @.str13397) + %t4 = call ptr @fn_find_fn(ptr @.str13533) %t5 = icmp ne ptr %t4, null %t6 = zext i1 %t5 to i32 store i32 %t6, ptr %t7 - call void @fn_emit(ptr @.str13398) - call void @fn_emit(ptr @.str13399) - call void @fn_emit(ptr @.str13400) - call void @fn_emit(ptr @.str13401) - call void @fn_emit_snapshot_blocks(ptr @.str13402) + call void @fn_emit(ptr @.str13534) + call void @fn_emit(ptr @.str13535) + call void @fn_emit(ptr @.str13536) + call void @fn_emit(ptr @.str13537) + call void @fn_emit_snapshot_blocks(ptr @.str13538) %t8 = load i32, ptr %t3 %t9 = icmp ne i32 %t8, 0 br i1 %t9, label %then0, label %ifend2 then0: - %t10 = call ptr @fn_fn_sym(ptr @.str13404) - %t11 = call ptr @lp_str_concat(ptr @.str13403, ptr %t10) - %t12 = call ptr @lp_str_concat(ptr %t11, ptr @.str13405) + %t10 = call ptr @fn_fn_sym(ptr @.str13540) + %t11 = call ptr @lp_str_concat(ptr @.str13539, ptr %t10) + %t12 = call ptr @lp_str_concat(ptr %t11, ptr @.str13541) call void @fn_emit(ptr %t12) br label %ifend2 ifend2: - call void @fn_emit(ptr @.str13406) - call void @fn_emit(ptr @.str13407) - call void @fn_emit(ptr @.str13408) - call void @fn_emit(ptr @.str13409) - call void @fn_emit(ptr @.str13410) - call void @fn_emit_snapshot_blocks(ptr @.str13411) + call void @fn_emit(ptr @.str13542) + call void @fn_emit(ptr @.str13543) + call void @fn_emit(ptr @.str13544) + call void @fn_emit(ptr @.str13545) + call void @fn_emit(ptr @.str13546) + call void @fn_emit_snapshot_blocks(ptr @.str13547) %t13 = load i32, ptr %t7 %t14 = icmp ne i32 %t13, 0 br i1 %t14, label %then3, label %ifend5 then3: - %t15 = call ptr @fn_fn_sym(ptr @.str13413) - %t16 = call ptr @lp_str_concat(ptr @.str13412, ptr %t15) - %t17 = call ptr @lp_str_concat(ptr %t16, ptr @.str13414) + %t15 = call ptr @fn_fn_sym(ptr @.str13549) + %t16 = call ptr @lp_str_concat(ptr @.str13548, ptr %t15) + %t17 = call ptr @lp_str_concat(ptr %t16, ptr @.str13550) call void @fn_emit(ptr %t17) br label %ifend5 ifend5: - call void @fn_emit(ptr @.str13415) - call void @fn_emit(ptr @.str13416) - store ptr @.str13417, ptr @g_g_snap_mode - call void @fn_emit_snapshot_blocks(ptr @.str13418) + call void @fn_emit(ptr @.str13551) + call void @fn_emit(ptr @.str13552) + store ptr @.str13553, ptr @g_g_snap_mode + call void @fn_emit_snapshot_blocks(ptr @.str13554) %t18 = load i32, ptr @g_g_iok %t19 = call ptr @fn_itoa(i32 %t18) - %t20 = call ptr @lp_str_concat(ptr @.str13419, ptr %t19) + %t20 = call ptr @lp_str_concat(ptr @.str13555, ptr %t19) store ptr %t20, ptr %t21 - call void @fn_emit(ptr @.str13420) + call void @fn_emit(ptr @.str13556) %t22 = load ptr, ptr %t21 call void @fn_emit(ptr %t22) - call void @fn_emit(ptr @.str13421) + call void @fn_emit(ptr @.str13557) %t23 = load ptr, ptr @g_g_off call void @fn_emit(ptr %t23) - call void @fn_emit(ptr @.str13422) - call void @fn_emit(ptr @.str13423) + call void @fn_emit(ptr @.str13558) + call void @fn_emit(ptr @.str13559) %t24 = load ptr, ptr %t21 call void @fn_emit(ptr %t24) - call void @fn_emit(ptr @.str13424) - call void @fn_emit(ptr @.str13425) - store ptr @.str13426, ptr @g_g_snap_mode - call void @fn_emit_snapshot_blocks(ptr @.str13427) - call void @fn_emit(ptr @.str13428) - call void @fn_emit(ptr @.str13429) - store ptr @.str13430, ptr @g_g_snap_mode - call void @fn_emit_snapshot_blocks(ptr @.str13431) + call void @fn_emit(ptr @.str13560) + call void @fn_emit(ptr @.str13561) + store ptr @.str13562, ptr @g_g_snap_mode + call void @fn_emit_snapshot_blocks(ptr @.str13563) + call void @fn_emit(ptr @.str13564) + call void @fn_emit(ptr @.str13565) + store ptr @.str13566, ptr @g_g_snap_mode + call void @fn_emit_snapshot_blocks(ptr @.str13567) %t25 = load i32, ptr @g_g_iok %t26 = call ptr @fn_itoa(i32 %t25) - %t27 = call ptr @lp_str_concat(ptr @.str13432, ptr %t26) + %t27 = call ptr @lp_str_concat(ptr @.str13568, ptr %t26) store ptr %t27, ptr %t28 - call void @fn_emit(ptr @.str13433) + call void @fn_emit(ptr @.str13569) %t29 = load ptr, ptr %t28 call void @fn_emit(ptr %t29) - call void @fn_emit(ptr @.str13434) + call void @fn_emit(ptr @.str13570) %t30 = load ptr, ptr @g_g_off call void @fn_emit(ptr %t30) - call void @fn_emit(ptr @.str13435) - call void @fn_emit(ptr @.str13436) + call void @fn_emit(ptr @.str13571) + call void @fn_emit(ptr @.str13572) %t31 = load ptr, ptr %t28 call void @fn_emit(ptr %t31) - call void @fn_emit(ptr @.str13437) - store ptr @.str13438, ptr @g_g_snap_mode + call void @fn_emit(ptr @.str13573) + store ptr @.str13574, ptr @g_g_snap_mode br label %ret ret: ret void @@ -172154,7 +172892,7 @@ entry: store ptr %arg_ty, ptr %t0 %t1 = load ptr, ptr %t0 %t2 = call ptr @fn_llty(ptr %t1) - %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str13439) + %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str13575) %t4 = icmp ne i32 %t3, 0 br i1 %t4, label %then0, label %ifend2 then0: @@ -172175,14 +172913,14 @@ entry: store ptr %arg_ty, ptr %t0 %t1 = load ptr, ptr %t0 %t2 = call ptr @fn_llty(ptr %t1) - %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str13440) + %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str13576) %t4 = icmp ne i32 %t3, 0 br i1 %t4, label %then0, label %ifend2 then0: - store ptr @.str13441, ptr %retval + store ptr @.str13577, ptr %retval br label %ret ifend2: - store ptr @.str13442, ptr %retval + store ptr @.str13578, ptr %retval br label %ret ret: %t5 = load ptr, ptr %retval @@ -172225,7 +172963,7 @@ wbody1: br i1 %t20, label %ixok3, label %ixbad4 ixbad4: %t21 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str13443, i32 %t15, i32 %t19) + call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str13579, i32 %t15, i32 %t19) call void @exit(i32 1) unreachable ixok3: @@ -172250,7 +172988,7 @@ then5: br i1 %t37, label %ixok8, label %ixbad9 ixbad9: %t38 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t38, ptr @.fmt_bounds, ptr @.str13444, i32 %t32, i32 %t36) + call i32 (ptr, ptr, ...) @fprintf(ptr %t38, ptr @.fmt_bounds, ptr @.str13580, i32 %t32, i32 %t36) call void @exit(i32 1) unreachable ixok8: @@ -172292,7 +173030,7 @@ wbody14: br i1 %t67, label %ixok16, label %ixbad17 ixbad17: %t68 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t68, ptr @.fmt_bounds, ptr @.str13445, i32 %t62, i32 %t66) + call i32 (ptr, ptr, ...) @fprintf(ptr %t68, ptr @.fmt_bounds, ptr @.str13581, i32 %t62, i32 %t66) call void @exit(i32 1) unreachable ixok16: @@ -172317,7 +173055,7 @@ then18: br i1 %t84, label %ixok21, label %ixbad22 ixbad22: %t85 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str13446, i32 %t79, i32 %t83) + call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str13582, i32 %t79, i32 %t83) call void @exit(i32 1) unreachable ixok21: @@ -172395,7 +173133,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13447, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13583, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -172418,7 +173156,7 @@ then5: br i1 %t29, label %ixok8, label %ixbad9 ixbad9: %t30 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str13448, i32 %t24, i32 %t28) + call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str13584, i32 %t24, i32 %t28) call void @exit(i32 1) unreachable ixok8: @@ -172472,7 +173210,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13449, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13585, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -172497,7 +173235,7 @@ sc5: br i1 %t31, label %ixok7, label %ixbad8 ixbad8: %t32 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str13450, i32 %t26, i32 %t30) + call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str13586, i32 %t26, i32 %t30) call void @exit(i32 1) unreachable ixok7: @@ -172558,7 +173296,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13451, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13587, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -172583,7 +173321,7 @@ sc5: br i1 %t31, label %ixok7, label %ixbad8 ixbad8: %t32 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str13452, i32 %t26, i32 %t30) + call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str13588, i32 %t26, i32 %t30) call void @exit(i32 1) unreachable ixok7: @@ -172663,7 +173401,7 @@ entry: store ptr %t1, ptr %t2 %t3 = load ptr, ptr %t2 %t4 = zext i32 23 to i64 - %t5 = call i64 @fwrite(ptr @.str13453, i64 1, i64 %t4, ptr %t3) + %t5 = call i64 @fwrite(ptr @.str13589, i64 1, i64 %t4, ptr %t3) %t6 = trunc i64 %t5 to i32 %t7 = load ptr, ptr %t2 %t8 = load ptr, ptr %t0 @@ -172675,7 +173413,7 @@ entry: %t14 = trunc i64 %t13 to i32 %t15 = load ptr, ptr %t2 %t16 = zext i32 1 to i64 - %t17 = call i64 @fwrite(ptr @.str13454, i64 1, i64 %t16, ptr %t15) + %t17 = call i64 @fwrite(ptr @.str13590, i64 1, i64 %t16, ptr %t15) %t18 = trunc i64 %t17 to i32 br label %ret ret: @@ -172713,7 +173451,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13455, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13591, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -172736,7 +173474,7 @@ then5: br i1 %t29, label %ixok8, label %ixbad9 ixbad9: %t30 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str13456, i32 %t24, i32 %t28) + call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str13592, i32 %t24, i32 %t28) call void @exit(i32 1) unreachable ixok8: @@ -172769,7 +173507,7 @@ wbody11: br i1 %t52, label %ixok13, label %ixbad14 ixbad14: %t53 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t53, ptr @.fmt_bounds, ptr @.str13457, i32 %t47, i32 %t51) + call i32 (ptr, ptr, ...) @fprintf(ptr %t53, ptr @.fmt_bounds, ptr @.str13593, i32 %t47, i32 %t51) call void @exit(i32 1) unreachable ixok13: @@ -172794,7 +173532,7 @@ then15: br i1 %t69, label %ixok18, label %ixbad19 ixbad19: %t70 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t70, ptr @.fmt_bounds, ptr @.str13458, i32 %t64, i32 %t68) + call i32 (ptr, ptr, ...) @fprintf(ptr %t70, ptr @.fmt_bounds, ptr @.str13594, i32 %t64, i32 %t68) call void @exit(i32 1) unreachable ixok18: @@ -172839,7 +173577,7 @@ wbody24: br i1 %t102, label %ixok26, label %ixbad27 ixbad27: %t103 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t103, ptr @.fmt_bounds, ptr @.str13459, i32 %t97, i32 %t101) + call i32 (ptr, ptr, ...) @fprintf(ptr %t103, ptr @.fmt_bounds, ptr @.str13595, i32 %t97, i32 %t101) call void @exit(i32 1) unreachable ixok26: @@ -172865,7 +173603,7 @@ then28: br i1 %t119, label %ixok31, label %ixbad32 ixbad32: %t120 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t120, ptr @.fmt_bounds, ptr @.str13460, i32 %t114, i32 %t118) + call i32 (ptr, ptr, ...) @fprintf(ptr %t120, ptr @.fmt_bounds, ptr @.str13596, i32 %t114, i32 %t118) call void @exit(i32 1) unreachable ixok31: @@ -172874,13 +173612,13 @@ ixok31: %t123 = getelementptr inbounds %Cmp_Node, ptr %t122, i32 0, i32 3 %t124 = load ptr, ptr %t123 %t125 = call ptr @fn_llty(ptr %t124) - %t126 = call i32 @lp_str_eq(ptr %t125, ptr @.str13461) + %t126 = call i32 @lp_str_eq(ptr %t125, ptr @.str13597) %t127 = icmp ne i32 %t126, 0 br i1 %t127, label %then33, label %ifend35 then33: %t128 = load ptr, ptr %t75 - %t129 = call ptr @lp_str_concat(ptr @.str13462, ptr %t128) - %t130 = call ptr @lp_str_concat(ptr %t129, ptr @.str13463) + %t129 = call ptr @lp_str_concat(ptr @.str13598, ptr %t128) + %t130 = call ptr @lp_str_concat(ptr %t129, ptr @.str13599) %t131 = load ptr, ptr %t78 %t132 = getelementptr inbounds %Cmp_Node, ptr %t131, i32 0, i32 7 %t133 = load ptr, ptr %t132 @@ -172893,7 +173631,7 @@ then33: br i1 %t139, label %ixok36, label %ixbad37 ixbad37: %t140 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t140, ptr @.fmt_bounds, ptr @.str13464, i32 %t134, i32 %t138) + call i32 (ptr, ptr, ...) @fprintf(ptr %t140, ptr @.fmt_bounds, ptr @.str13600, i32 %t134, i32 %t138) call void @exit(i32 1) unreachable ixok36: @@ -172902,7 +173640,7 @@ ixok36: %t143 = getelementptr inbounds %Cmp_Node, ptr %t142, i32 0, i32 1 %t144 = load ptr, ptr %t143 %t145 = call ptr @lp_str_concat(ptr %t130, ptr %t144) - %t146 = call ptr @lp_str_concat(ptr %t145, ptr @.str13465) + %t146 = call ptr @lp_str_concat(ptr %t145, ptr @.str13601) call void @fn_perr(ptr %t146) br label %ifend35 ifend35: @@ -172922,11 +173660,11 @@ then38: %t153 = load ptr, ptr %t33 %t154 = getelementptr inbounds %Cmp_Node, ptr %t153, i32 0, i32 1 %t155 = load ptr, ptr %t154 - %t156 = call ptr @lp_str_concat(ptr @.str13466, ptr %t155) - %t157 = call ptr @lp_str_concat(ptr %t156, ptr @.str13467) + %t156 = call ptr @lp_str_concat(ptr @.str13602, ptr %t155) + %t157 = call ptr @lp_str_concat(ptr %t156, ptr @.str13603) %t158 = load ptr, ptr %t75 %t159 = call ptr @lp_str_concat(ptr %t157, ptr %t158) - %t160 = call ptr @lp_str_concat(ptr %t159, ptr @.str13468) + %t160 = call ptr @lp_str_concat(ptr %t159, ptr @.str13604) call void @fn_net_warn(ptr %t160) br label %ifend40 ifend40: @@ -172959,21 +173697,22 @@ entry: %t7 = alloca i32 %t48 = alloca ptr %t51 = alloca ptr - %t57 = alloca ptr - %t62 = alloca i32 - %t104 = alloca ptr - %t106 = alloca ptr - %t113 = alloca ptr + %t59 = alloca ptr + %t61 = alloca ptr + %t65 = alloca i32 + %t107 = alloca ptr + %t109 = alloca ptr + %t116 = alloca ptr store ptr %arg_m, ptr %t0 store i32 0, ptr @g_ll_t %t1 = call ptr @fn_itoa(i32 1024) store ptr %t1, ptr %t2 - call void @fn_emit(ptr @.str13469) + call void @fn_emit(ptr @.str13605) %t3 = load ptr, ptr %t0 %t4 = getelementptr inbounds %Cmp_Node, ptr %t3, i32 0, i32 1 %t5 = load ptr, ptr %t4 call void @fn_emit(ptr %t5) - call void @fn_emit(ptr @.str13470) + call void @fn_emit(ptr @.str13606) store i32 0, ptr %t6 store i32 0, ptr %t7 br label %wcond0 @@ -173001,7 +173740,7 @@ wbody1: br i1 %t25, label %ixok3, label %ixbad4 ixbad4: %t26 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str13471, i32 %t20, i32 %t24) + call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str13607, i32 %t20, i32 %t24) call void @exit(i32 1) unreachable ixok3: @@ -173026,7 +173765,7 @@ then5: br i1 %t42, label %ixok8, label %ixbad9 ixbad9: %t43 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13472, i32 %t37, i32 %t41) + call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13608, i32 %t37, i32 %t41) call void @exit(i32 1) unreachable ixok8: @@ -173044,163 +173783,164 @@ ixok8: %t55 = icmp ne i32 %t54, 0 br i1 %t55, label %then10, label %ifend12 then10: - %t56 = call ptr @fn_nreg() - store ptr %t56, ptr %t57 - call void @fn_emit(ptr @.str13473) - %t58 = load ptr, ptr %t57 - call void @fn_emit(ptr %t58) - call void @fn_emit(ptr @.str13474) - %t59 = load ptr, ptr %t2 - call void @fn_emit(ptr %t59) - call void @fn_emit(ptr @.str13475) - %t60 = load ptr, ptr %t48 - call void @fn_emit(ptr %t60) - call void @fn_emit(ptr @.str13476) - %t61 = load ptr, ptr %t48 - call void @fn_emit(ptr %t61) - call void @fn_emit(ptr @.str13477) - store i32 0, ptr %t62 + %t56 = load ptr, ptr %t48 + %t57 = call ptr @lp_str_concat(ptr @.str13609, ptr %t56) + %t58 = call ptr @fn_ecs_base(ptr %t57) + store ptr %t58, ptr %t59 + %t60 = call ptr @fn_nreg() + store ptr %t60, ptr %t61 + call void @fn_emit(ptr @.str13610) + %t62 = load ptr, ptr %t61 + call void @fn_emit(ptr %t62) + call void @fn_emit(ptr @.str13611) + %t63 = load ptr, ptr %t48 + call void @fn_emit(ptr %t63) + call void @fn_emit(ptr @.str13612) + %t64 = load ptr, ptr %t59 + call void @fn_emit(ptr %t64) + call void @fn_emit(ptr @.str13613) + store i32 0, ptr %t65 br label %wcond13 wcond13: - %t63 = load i32, ptr %t62 - %t64 = load ptr, ptr %t51 - %t65 = getelementptr inbounds %Cmp_Node, ptr %t64, i32 0, i32 7 - %t66 = load ptr, ptr %t65 - %t67 = getelementptr inbounds %LSlice, ptr %t66, i32 0, i32 1 - %t68 = load i32, ptr %t67 - %t69 = icmp slt i32 %t63, %t68 - %t70 = zext i1 %t69 to i32 - %t71 = icmp ne i32 %t70, 0 - br i1 %t71, label %wbody14, label %wend15 + %t66 = load i32, ptr %t65 + %t67 = load ptr, ptr %t51 + %t68 = getelementptr inbounds %Cmp_Node, ptr %t67, i32 0, i32 7 + %t69 = load ptr, ptr %t68 + %t70 = getelementptr inbounds %LSlice, ptr %t69, i32 0, i32 1 + %t71 = load i32, ptr %t70 + %t72 = icmp slt i32 %t66, %t71 + %t73 = zext i1 %t72 to i32 + %t74 = icmp ne i32 %t73, 0 + br i1 %t74, label %wbody14, label %wend15 wbody14: - %t72 = load ptr, ptr %t51 - %t73 = getelementptr inbounds %Cmp_Node, ptr %t72, i32 0, i32 7 - %t74 = load ptr, ptr %t73 - %t75 = load i32, ptr %t62 - %t76 = getelementptr inbounds %LSlice, ptr %t74, i32 0, i32 0 + %t75 = load ptr, ptr %t51 + %t76 = getelementptr inbounds %Cmp_Node, ptr %t75, i32 0, i32 7 %t77 = load ptr, ptr %t76 - %t78 = getelementptr inbounds %LSlice, ptr %t74, i32 0, i32 1 - %t79 = load i32, ptr %t78 - %t80 = icmp ult i32 %t75, %t79 - br i1 %t80, label %ixok16, label %ixbad17 + %t78 = load i32, ptr %t65 + %t79 = getelementptr inbounds %LSlice, ptr %t77, i32 0, i32 0 + %t80 = load ptr, ptr %t79 + %t81 = getelementptr inbounds %LSlice, ptr %t77, i32 0, i32 1 + %t82 = load i32, ptr %t81 + %t83 = icmp ult i32 %t78, %t82 + br i1 %t83, label %ixok16, label %ixbad17 ixbad17: - %t81 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t81, ptr @.fmt_bounds, ptr @.str13478, i32 %t75, i32 %t79) + %t84 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str13614, i32 %t78, i32 %t82) call void @exit(i32 1) unreachable ixok16: - %t82 = getelementptr inbounds ptr, ptr %t77, i32 %t75 - %t83 = load ptr, ptr %t82 - %t84 = getelementptr inbounds %Cmp_Node, ptr %t83, i32 0, i32 2 - %t85 = load i32, ptr %t84 - %t86 = icmp eq i32 %t85, 1 - %t87 = zext i1 %t86 to i32 - %t88 = icmp ne i32 %t87, 0 - br i1 %t88, label %then18, label %ifend20 + %t85 = getelementptr inbounds ptr, ptr %t80, i32 %t78 + %t86 = load ptr, ptr %t85 + %t87 = getelementptr inbounds %Cmp_Node, ptr %t86, i32 0, i32 2 + %t88 = load i32, ptr %t87 + %t89 = icmp eq i32 %t88, 1 + %t90 = zext i1 %t89 to i32 + %t91 = icmp ne i32 %t90, 0 + br i1 %t91, label %then18, label %ifend20 then18: - %t89 = load ptr, ptr %t51 - %t90 = getelementptr inbounds %Cmp_Node, ptr %t89, i32 0, i32 7 - %t91 = load ptr, ptr %t90 - %t92 = load i32, ptr %t62 - %t93 = getelementptr inbounds %LSlice, ptr %t91, i32 0, i32 0 + %t92 = load ptr, ptr %t51 + %t93 = getelementptr inbounds %Cmp_Node, ptr %t92, i32 0, i32 7 %t94 = load ptr, ptr %t93 - %t95 = getelementptr inbounds %LSlice, ptr %t91, i32 0, i32 1 - %t96 = load i32, ptr %t95 - %t97 = icmp ult i32 %t92, %t96 - br i1 %t97, label %ixok21, label %ixbad22 + %t95 = load i32, ptr %t65 + %t96 = getelementptr inbounds %LSlice, ptr %t94, i32 0, i32 0 + %t97 = load ptr, ptr %t96 + %t98 = getelementptr inbounds %LSlice, ptr %t94, i32 0, i32 1 + %t99 = load i32, ptr %t98 + %t100 = icmp ult i32 %t95, %t99 + br i1 %t100, label %ixok21, label %ixbad22 ixbad22: - %t98 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t98, ptr @.fmt_bounds, ptr @.str13479, i32 %t92, i32 %t96) + %t101 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t101, ptr @.fmt_bounds, ptr @.str13615, i32 %t95, i32 %t99) call void @exit(i32 1) unreachable ixok21: - %t99 = getelementptr inbounds ptr, ptr %t94, i32 %t92 - %t100 = load ptr, ptr %t99 - %t101 = getelementptr inbounds %Cmp_Node, ptr %t100, i32 0, i32 3 - %t102 = load ptr, ptr %t101 - %t103 = call ptr @fn_net_field_bytes(ptr %t102) - store ptr %t103, ptr %t104 - %t105 = call ptr @fn_nreg() - store ptr %t105, ptr %t106 - call void @fn_emit(ptr @.str13480) - %t107 = load ptr, ptr %t106 - call void @fn_emit(ptr %t107) - call void @fn_emit(ptr @.str13481) - %t108 = load ptr, ptr %t48 - call void @fn_emit(ptr %t108) - call void @fn_emit(ptr @.str13482) - %t109 = load ptr, ptr %t57 - call void @fn_emit(ptr %t109) - call void @fn_emit(ptr @.str13483) - %t110 = load i32, ptr %t62 - %t111 = call ptr @fn_itoa(i32 %t110) + %t102 = getelementptr inbounds ptr, ptr %t97, i32 %t95 + %t103 = load ptr, ptr %t102 + %t104 = getelementptr inbounds %Cmp_Node, ptr %t103, i32 0, i32 3 + %t105 = load ptr, ptr %t104 + %t106 = call ptr @fn_net_field_bytes(ptr %t105) + store ptr %t106, ptr %t107 + %t108 = call ptr @fn_nreg() + store ptr %t108, ptr %t109 + call void @fn_emit(ptr @.str13616) + %t110 = load ptr, ptr %t109 + call void @fn_emit(ptr %t110) + call void @fn_emit(ptr @.str13617) + %t111 = load ptr, ptr %t48 call void @fn_emit(ptr %t111) - call void @fn_emit(ptr @.str13484) - %t112 = call ptr @fn_nreg() - store ptr %t112, ptr %t113 - call void @fn_emit(ptr @.str13485) - %t114 = load ptr, ptr %t113 + call void @fn_emit(ptr @.str13618) + %t112 = load ptr, ptr %t61 + call void @fn_emit(ptr %t112) + call void @fn_emit(ptr @.str13619) + %t113 = load i32, ptr %t65 + %t114 = call ptr @fn_itoa(i32 %t113) call void @fn_emit(ptr %t114) - call void @fn_emit(ptr @.str13486) - %t115 = load i32, ptr %t6 - %t116 = call ptr @fn_itoa(i32 %t115) - call void @fn_emit(ptr %t116) - call void @fn_emit(ptr @.str13487) - call void @fn_emit(ptr @.str13488) - %t117 = load ptr, ptr %t113 + call void @fn_emit(ptr @.str13620) + %t115 = call ptr @fn_nreg() + store ptr %t115, ptr %t116 + call void @fn_emit(ptr @.str13621) + %t117 = load ptr, ptr %t116 call void @fn_emit(ptr %t117) - call void @fn_emit(ptr @.str13489) - %t118 = load ptr, ptr %t106 - call void @fn_emit(ptr %t118) - call void @fn_emit(ptr @.str13490) - %t119 = load ptr, ptr %t104 + call void @fn_emit(ptr @.str13622) + %t118 = load i32, ptr %t6 + %t119 = call ptr @fn_itoa(i32 %t118) call void @fn_emit(ptr %t119) - call void @fn_emit(ptr @.str13491) - %t120 = load ptr, ptr %t51 - %t121 = getelementptr inbounds %Cmp_Node, ptr %t120, i32 0, i32 7 - %t122 = load ptr, ptr %t121 - %t123 = load i32, ptr %t62 - %t124 = getelementptr inbounds %LSlice, ptr %t122, i32 0, i32 0 + call void @fn_emit(ptr @.str13623) + call void @fn_emit(ptr @.str13624) + %t120 = load ptr, ptr %t116 + call void @fn_emit(ptr %t120) + call void @fn_emit(ptr @.str13625) + %t121 = load ptr, ptr %t109 + call void @fn_emit(ptr %t121) + call void @fn_emit(ptr @.str13626) + %t122 = load ptr, ptr %t107 + call void @fn_emit(ptr %t122) + call void @fn_emit(ptr @.str13627) + %t123 = load ptr, ptr %t51 + %t124 = getelementptr inbounds %Cmp_Node, ptr %t123, i32 0, i32 7 %t125 = load ptr, ptr %t124 - %t126 = getelementptr inbounds %LSlice, ptr %t122, i32 0, i32 1 - %t127 = load i32, ptr %t126 - %t128 = icmp ult i32 %t123, %t127 - br i1 %t128, label %ixok23, label %ixbad24 + %t126 = load i32, ptr %t65 + %t127 = getelementptr inbounds %LSlice, ptr %t125, i32 0, i32 0 + %t128 = load ptr, ptr %t127 + %t129 = getelementptr inbounds %LSlice, ptr %t125, i32 0, i32 1 + %t130 = load i32, ptr %t129 + %t131 = icmp ult i32 %t126, %t130 + br i1 %t131, label %ixok23, label %ixbad24 ixbad24: - %t129 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t129, ptr @.fmt_bounds, ptr @.str13492, i32 %t123, i32 %t127) + %t132 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t132, ptr @.fmt_bounds, ptr @.str13628, i32 %t126, i32 %t130) call void @exit(i32 1) unreachable ixok23: - %t130 = getelementptr inbounds ptr, ptr %t125, i32 %t123 - %t131 = load ptr, ptr %t130 - %t132 = getelementptr inbounds %Cmp_Node, ptr %t131, i32 0, i32 3 - %t133 = load ptr, ptr %t132 - %t134 = call i32 @fn_net_field_ibytes(ptr %t133) - %t135 = load i32, ptr %t6 - %t136 = add i32 %t135, %t134 - store i32 %t136, ptr %t6 + %t133 = getelementptr inbounds ptr, ptr %t128, i32 %t126 + %t134 = load ptr, ptr %t133 + %t135 = getelementptr inbounds %Cmp_Node, ptr %t134, i32 0, i32 3 + %t136 = load ptr, ptr %t135 + %t137 = call i32 @fn_net_field_ibytes(ptr %t136) + %t138 = load i32, ptr %t6 + %t139 = add i32 %t138, %t137 + store i32 %t139, ptr %t6 br label %ifend20 ifend20: - %t137 = load i32, ptr %t62 - %t138 = add i32 %t137, 1 - store i32 %t138, ptr %t62 + %t140 = load i32, ptr %t65 + %t141 = add i32 %t140, 1 + store i32 %t141, ptr %t65 br label %wcond13 wend15: br label %ifend12 ifend12: br label %ifend7 ifend7: - %t139 = load i32, ptr %t7 - %t140 = add i32 %t139, 1 - store i32 %t140, ptr %t7 + %t142 = load i32, ptr %t7 + %t143 = add i32 %t142, 1 + store i32 %t143, ptr %t7 br label %wcond0 wend2: - call void @fn_emit(ptr @.str13493) - %t141 = load i32, ptr %t6 - %t142 = call ptr @fn_itoa(i32 %t141) - call void @fn_emit(ptr %t142) - call void @fn_emit(ptr @.str13494) + call void @fn_emit(ptr @.str13629) + %t144 = load i32, ptr %t6 + %t145 = call ptr @fn_itoa(i32 %t144) + call void @fn_emit(ptr %t145) + call void @fn_emit(ptr @.str13630) br label %ret ret: ret void @@ -173214,21 +173954,22 @@ entry: %t7 = alloca i32 %t48 = alloca ptr %t51 = alloca ptr - %t57 = alloca ptr - %t62 = alloca i32 - %t104 = alloca ptr - %t106 = alloca ptr - %t113 = alloca ptr + %t59 = alloca ptr + %t61 = alloca ptr + %t65 = alloca i32 + %t107 = alloca ptr + %t109 = alloca ptr + %t116 = alloca ptr store ptr %arg_m, ptr %t0 store i32 0, ptr @g_ll_t %t1 = call ptr @fn_itoa(i32 1024) store ptr %t1, ptr %t2 - call void @fn_emit(ptr @.str13495) + call void @fn_emit(ptr @.str13631) %t3 = load ptr, ptr %t0 %t4 = getelementptr inbounds %Cmp_Node, ptr %t3, i32 0, i32 1 %t5 = load ptr, ptr %t4 call void @fn_emit(ptr %t5) - call void @fn_emit(ptr @.str13496) + call void @fn_emit(ptr @.str13632) store i32 0, ptr %t6 store i32 0, ptr %t7 br label %wcond0 @@ -173256,7 +173997,7 @@ wbody1: br i1 %t25, label %ixok3, label %ixbad4 ixbad4: %t26 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str13497, i32 %t20, i32 %t24) + call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str13633, i32 %t20, i32 %t24) call void @exit(i32 1) unreachable ixok3: @@ -173281,7 +174022,7 @@ then5: br i1 %t42, label %ixok8, label %ixbad9 ixbad9: %t43 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13498, i32 %t37, i32 %t41) + call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13634, i32 %t37, i32 %t41) call void @exit(i32 1) unreachable ixok8: @@ -173299,159 +174040,160 @@ ixok8: %t55 = icmp ne i32 %t54, 0 br i1 %t55, label %then10, label %ifend12 then10: - %t56 = call ptr @fn_nreg() - store ptr %t56, ptr %t57 - call void @fn_emit(ptr @.str13499) - %t58 = load ptr, ptr %t57 - call void @fn_emit(ptr %t58) - call void @fn_emit(ptr @.str13500) - %t59 = load ptr, ptr %t2 - call void @fn_emit(ptr %t59) - call void @fn_emit(ptr @.str13501) - %t60 = load ptr, ptr %t48 - call void @fn_emit(ptr %t60) - call void @fn_emit(ptr @.str13502) - %t61 = load ptr, ptr %t48 - call void @fn_emit(ptr %t61) - call void @fn_emit(ptr @.str13503) - store i32 0, ptr %t62 + %t56 = load ptr, ptr %t48 + %t57 = call ptr @lp_str_concat(ptr @.str13635, ptr %t56) + %t58 = call ptr @fn_ecs_base(ptr %t57) + store ptr %t58, ptr %t59 + %t60 = call ptr @fn_nreg() + store ptr %t60, ptr %t61 + call void @fn_emit(ptr @.str13636) + %t62 = load ptr, ptr %t61 + call void @fn_emit(ptr %t62) + call void @fn_emit(ptr @.str13637) + %t63 = load ptr, ptr %t48 + call void @fn_emit(ptr %t63) + call void @fn_emit(ptr @.str13638) + %t64 = load ptr, ptr %t59 + call void @fn_emit(ptr %t64) + call void @fn_emit(ptr @.str13639) + store i32 0, ptr %t65 br label %wcond13 wcond13: - %t63 = load i32, ptr %t62 - %t64 = load ptr, ptr %t51 - %t65 = getelementptr inbounds %Cmp_Node, ptr %t64, i32 0, i32 7 - %t66 = load ptr, ptr %t65 - %t67 = getelementptr inbounds %LSlice, ptr %t66, i32 0, i32 1 - %t68 = load i32, ptr %t67 - %t69 = icmp slt i32 %t63, %t68 - %t70 = zext i1 %t69 to i32 - %t71 = icmp ne i32 %t70, 0 - br i1 %t71, label %wbody14, label %wend15 + %t66 = load i32, ptr %t65 + %t67 = load ptr, ptr %t51 + %t68 = getelementptr inbounds %Cmp_Node, ptr %t67, i32 0, i32 7 + %t69 = load ptr, ptr %t68 + %t70 = getelementptr inbounds %LSlice, ptr %t69, i32 0, i32 1 + %t71 = load i32, ptr %t70 + %t72 = icmp slt i32 %t66, %t71 + %t73 = zext i1 %t72 to i32 + %t74 = icmp ne i32 %t73, 0 + br i1 %t74, label %wbody14, label %wend15 wbody14: - %t72 = load ptr, ptr %t51 - %t73 = getelementptr inbounds %Cmp_Node, ptr %t72, i32 0, i32 7 - %t74 = load ptr, ptr %t73 - %t75 = load i32, ptr %t62 - %t76 = getelementptr inbounds %LSlice, ptr %t74, i32 0, i32 0 + %t75 = load ptr, ptr %t51 + %t76 = getelementptr inbounds %Cmp_Node, ptr %t75, i32 0, i32 7 %t77 = load ptr, ptr %t76 - %t78 = getelementptr inbounds %LSlice, ptr %t74, i32 0, i32 1 - %t79 = load i32, ptr %t78 - %t80 = icmp ult i32 %t75, %t79 - br i1 %t80, label %ixok16, label %ixbad17 + %t78 = load i32, ptr %t65 + %t79 = getelementptr inbounds %LSlice, ptr %t77, i32 0, i32 0 + %t80 = load ptr, ptr %t79 + %t81 = getelementptr inbounds %LSlice, ptr %t77, i32 0, i32 1 + %t82 = load i32, ptr %t81 + %t83 = icmp ult i32 %t78, %t82 + br i1 %t83, label %ixok16, label %ixbad17 ixbad17: - %t81 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t81, ptr @.fmt_bounds, ptr @.str13504, i32 %t75, i32 %t79) + %t84 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str13640, i32 %t78, i32 %t82) call void @exit(i32 1) unreachable ixok16: - %t82 = getelementptr inbounds ptr, ptr %t77, i32 %t75 - %t83 = load ptr, ptr %t82 - %t84 = getelementptr inbounds %Cmp_Node, ptr %t83, i32 0, i32 2 - %t85 = load i32, ptr %t84 - %t86 = icmp eq i32 %t85, 1 - %t87 = zext i1 %t86 to i32 - %t88 = icmp ne i32 %t87, 0 - br i1 %t88, label %then18, label %ifend20 + %t85 = getelementptr inbounds ptr, ptr %t80, i32 %t78 + %t86 = load ptr, ptr %t85 + %t87 = getelementptr inbounds %Cmp_Node, ptr %t86, i32 0, i32 2 + %t88 = load i32, ptr %t87 + %t89 = icmp eq i32 %t88, 1 + %t90 = zext i1 %t89 to i32 + %t91 = icmp ne i32 %t90, 0 + br i1 %t91, label %then18, label %ifend20 then18: - %t89 = load ptr, ptr %t51 - %t90 = getelementptr inbounds %Cmp_Node, ptr %t89, i32 0, i32 7 - %t91 = load ptr, ptr %t90 - %t92 = load i32, ptr %t62 - %t93 = getelementptr inbounds %LSlice, ptr %t91, i32 0, i32 0 + %t92 = load ptr, ptr %t51 + %t93 = getelementptr inbounds %Cmp_Node, ptr %t92, i32 0, i32 7 %t94 = load ptr, ptr %t93 - %t95 = getelementptr inbounds %LSlice, ptr %t91, i32 0, i32 1 - %t96 = load i32, ptr %t95 - %t97 = icmp ult i32 %t92, %t96 - br i1 %t97, label %ixok21, label %ixbad22 + %t95 = load i32, ptr %t65 + %t96 = getelementptr inbounds %LSlice, ptr %t94, i32 0, i32 0 + %t97 = load ptr, ptr %t96 + %t98 = getelementptr inbounds %LSlice, ptr %t94, i32 0, i32 1 + %t99 = load i32, ptr %t98 + %t100 = icmp ult i32 %t95, %t99 + br i1 %t100, label %ixok21, label %ixbad22 ixbad22: - %t98 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t98, ptr @.fmt_bounds, ptr @.str13505, i32 %t92, i32 %t96) + %t101 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t101, ptr @.fmt_bounds, ptr @.str13641, i32 %t95, i32 %t99) call void @exit(i32 1) unreachable ixok21: - %t99 = getelementptr inbounds ptr, ptr %t94, i32 %t92 - %t100 = load ptr, ptr %t99 - %t101 = getelementptr inbounds %Cmp_Node, ptr %t100, i32 0, i32 3 - %t102 = load ptr, ptr %t101 - %t103 = call ptr @fn_net_field_bytes(ptr %t102) - store ptr %t103, ptr %t104 - %t105 = call ptr @fn_nreg() - store ptr %t105, ptr %t106 - call void @fn_emit(ptr @.str13506) - %t107 = load ptr, ptr %t106 - call void @fn_emit(ptr %t107) - call void @fn_emit(ptr @.str13507) - %t108 = load ptr, ptr %t48 - call void @fn_emit(ptr %t108) - call void @fn_emit(ptr @.str13508) - %t109 = load ptr, ptr %t57 - call void @fn_emit(ptr %t109) - call void @fn_emit(ptr @.str13509) - %t110 = load i32, ptr %t62 - %t111 = call ptr @fn_itoa(i32 %t110) + %t102 = getelementptr inbounds ptr, ptr %t97, i32 %t95 + %t103 = load ptr, ptr %t102 + %t104 = getelementptr inbounds %Cmp_Node, ptr %t103, i32 0, i32 3 + %t105 = load ptr, ptr %t104 + %t106 = call ptr @fn_net_field_bytes(ptr %t105) + store ptr %t106, ptr %t107 + %t108 = call ptr @fn_nreg() + store ptr %t108, ptr %t109 + call void @fn_emit(ptr @.str13642) + %t110 = load ptr, ptr %t109 + call void @fn_emit(ptr %t110) + call void @fn_emit(ptr @.str13643) + %t111 = load ptr, ptr %t48 call void @fn_emit(ptr %t111) - call void @fn_emit(ptr @.str13510) - %t112 = call ptr @fn_nreg() - store ptr %t112, ptr %t113 - call void @fn_emit(ptr @.str13511) - %t114 = load ptr, ptr %t113 + call void @fn_emit(ptr @.str13644) + %t112 = load ptr, ptr %t61 + call void @fn_emit(ptr %t112) + call void @fn_emit(ptr @.str13645) + %t113 = load i32, ptr %t65 + %t114 = call ptr @fn_itoa(i32 %t113) call void @fn_emit(ptr %t114) - call void @fn_emit(ptr @.str13512) - %t115 = load i32, ptr %t6 - %t116 = call ptr @fn_itoa(i32 %t115) - call void @fn_emit(ptr %t116) - call void @fn_emit(ptr @.str13513) - call void @fn_emit(ptr @.str13514) - %t117 = load ptr, ptr %t106 + call void @fn_emit(ptr @.str13646) + %t115 = call ptr @fn_nreg() + store ptr %t115, ptr %t116 + call void @fn_emit(ptr @.str13647) + %t117 = load ptr, ptr %t116 call void @fn_emit(ptr %t117) - call void @fn_emit(ptr @.str13515) - %t118 = load ptr, ptr %t113 - call void @fn_emit(ptr %t118) - call void @fn_emit(ptr @.str13516) - %t119 = load ptr, ptr %t104 + call void @fn_emit(ptr @.str13648) + %t118 = load i32, ptr %t6 + %t119 = call ptr @fn_itoa(i32 %t118) call void @fn_emit(ptr %t119) - call void @fn_emit(ptr @.str13517) - %t120 = load ptr, ptr %t51 - %t121 = getelementptr inbounds %Cmp_Node, ptr %t120, i32 0, i32 7 - %t122 = load ptr, ptr %t121 - %t123 = load i32, ptr %t62 - %t124 = getelementptr inbounds %LSlice, ptr %t122, i32 0, i32 0 + call void @fn_emit(ptr @.str13649) + call void @fn_emit(ptr @.str13650) + %t120 = load ptr, ptr %t109 + call void @fn_emit(ptr %t120) + call void @fn_emit(ptr @.str13651) + %t121 = load ptr, ptr %t116 + call void @fn_emit(ptr %t121) + call void @fn_emit(ptr @.str13652) + %t122 = load ptr, ptr %t107 + call void @fn_emit(ptr %t122) + call void @fn_emit(ptr @.str13653) + %t123 = load ptr, ptr %t51 + %t124 = getelementptr inbounds %Cmp_Node, ptr %t123, i32 0, i32 7 %t125 = load ptr, ptr %t124 - %t126 = getelementptr inbounds %LSlice, ptr %t122, i32 0, i32 1 - %t127 = load i32, ptr %t126 - %t128 = icmp ult i32 %t123, %t127 - br i1 %t128, label %ixok23, label %ixbad24 + %t126 = load i32, ptr %t65 + %t127 = getelementptr inbounds %LSlice, ptr %t125, i32 0, i32 0 + %t128 = load ptr, ptr %t127 + %t129 = getelementptr inbounds %LSlice, ptr %t125, i32 0, i32 1 + %t130 = load i32, ptr %t129 + %t131 = icmp ult i32 %t126, %t130 + br i1 %t131, label %ixok23, label %ixbad24 ixbad24: - %t129 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t129, ptr @.fmt_bounds, ptr @.str13518, i32 %t123, i32 %t127) + %t132 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t132, ptr @.fmt_bounds, ptr @.str13654, i32 %t126, i32 %t130) call void @exit(i32 1) unreachable ixok23: - %t130 = getelementptr inbounds ptr, ptr %t125, i32 %t123 - %t131 = load ptr, ptr %t130 - %t132 = getelementptr inbounds %Cmp_Node, ptr %t131, i32 0, i32 3 - %t133 = load ptr, ptr %t132 - %t134 = call i32 @fn_net_field_ibytes(ptr %t133) - %t135 = load i32, ptr %t6 - %t136 = add i32 %t135, %t134 - store i32 %t136, ptr %t6 + %t133 = getelementptr inbounds ptr, ptr %t128, i32 %t126 + %t134 = load ptr, ptr %t133 + %t135 = getelementptr inbounds %Cmp_Node, ptr %t134, i32 0, i32 3 + %t136 = load ptr, ptr %t135 + %t137 = call i32 @fn_net_field_ibytes(ptr %t136) + %t138 = load i32, ptr %t6 + %t139 = add i32 %t138, %t137 + store i32 %t139, ptr %t6 br label %ifend20 ifend20: - %t137 = load i32, ptr %t62 - %t138 = add i32 %t137, 1 - store i32 %t138, ptr %t62 + %t140 = load i32, ptr %t65 + %t141 = add i32 %t140, 1 + store i32 %t141, ptr %t65 br label %wcond13 wend15: br label %ifend12 ifend12: br label %ifend7 ifend7: - %t139 = load i32, ptr %t7 - %t140 = add i32 %t139, 1 - store i32 %t140, ptr %t7 + %t142 = load i32, ptr %t7 + %t143 = add i32 %t142, 1 + store i32 %t143, ptr %t7 br label %wcond0 wend2: - call void @fn_emit(ptr @.str13519) + call void @fn_emit(ptr @.str13655) br label %ret ret: ret void @@ -173460,438 +174202,447 @@ ret: define void @fn_emit_net_dispatch() { entry: %t1 = alloca ptr - %t3 = alloca i32 - %t4 = alloca i32 - %t12 = alloca i32 - %t56 = alloca ptr - %t59 = alloca ptr - %t84 = alloca i32 - %t128 = alloca ptr - %t131 = alloca ptr - %t154 = alloca i32 - %t198 = alloca ptr - %t201 = alloca ptr + %t3 = alloca ptr + %t5 = alloca i32 + %t6 = alloca i32 + %t14 = alloca i32 + %t58 = alloca ptr + %t61 = alloca ptr + %t79 = alloca ptr + %t88 = alloca i32 + %t132 = alloca ptr + %t135 = alloca ptr + %t151 = alloca ptr + %t160 = alloca i32 + %t204 = alloca ptr + %t207 = alloca ptr %t0 = call ptr @fn_itoa(i32 1024) store ptr %t0, ptr %t1 - call void @fn_emit(ptr @.str13520) - call void @fn_emit(ptr @.str13521) - %t2 = load ptr, ptr %t1 - call void @fn_emit(ptr %t2) - call void @fn_emit(ptr @.str13522) - store i32 0, ptr %t3 - store i32 0, ptr %t4 + call void @fn_emit(ptr @.str13656) + %t2 = call ptr @fn_ecs_base(ptr @.str13657) + store ptr %t2, ptr %t3 + call void @fn_emit(ptr @.str13658) + %t4 = load ptr, ptr %t3 + call void @fn_emit(ptr %t4) + call void @fn_emit(ptr @.str13659) + store i32 0, ptr %t5 + store i32 0, ptr %t6 br label %wcond0 wcond0: - %t5 = load i32, ptr %t4 - %t6 = load ptr, ptr @g_prog - %t7 = getelementptr inbounds %LSlice, ptr %t6, i32 0, i32 1 - %t8 = load i32, ptr %t7 - %t9 = icmp slt i32 %t5, %t8 - %t10 = zext i1 %t9 to i32 - %t11 = icmp ne i32 %t10, 0 - br i1 %t11, label %wbody1, label %wend2 + %t7 = load i32, ptr %t6 + %t8 = load ptr, ptr @g_prog + %t9 = getelementptr inbounds %LSlice, ptr %t8, i32 0, i32 1 + %t10 = load i32, ptr %t9 + %t11 = icmp slt i32 %t7, %t10 + %t12 = zext i1 %t11 to i32 + %t13 = icmp ne i32 %t12, 0 + br i1 %t13, label %wbody1, label %wend2 wbody1: - %t13 = load ptr, ptr @g_prog - %t14 = load i32, ptr %t4 - %t15 = getelementptr inbounds %LSlice, ptr %t13, i32 0, i32 0 - %t16 = load ptr, ptr %t15 - %t17 = getelementptr inbounds %LSlice, ptr %t13, i32 0, i32 1 - %t18 = load i32, ptr %t17 - %t19 = icmp ult i32 %t14, %t18 - br i1 %t19, label %ixok3, label %ixbad4 + %t15 = load ptr, ptr @g_prog + %t16 = load i32, ptr %t6 + %t17 = getelementptr inbounds %LSlice, ptr %t15, i32 0, i32 0 + %t18 = load ptr, ptr %t17 + %t19 = getelementptr inbounds %LSlice, ptr %t15, i32 0, i32 1 + %t20 = load i32, ptr %t19 + %t21 = icmp ult i32 %t16, %t20 + br i1 %t21, label %ixok3, label %ixbad4 ixbad4: - %t20 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str13523, i32 %t14, i32 %t18) + %t22 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str13660, i32 %t16, i32 %t20) call void @exit(i32 1) unreachable ixok3: - %t21 = getelementptr inbounds ptr, ptr %t16, i32 %t14 - %t22 = load ptr, ptr %t21 - %t23 = getelementptr inbounds %Cmp_Node, ptr %t22, i32 0, i32 0 - %t24 = load i32, ptr %t23 - %t25 = icmp eq i32 %t24, 10 - %t26 = zext i1 %t25 to i32 - %t27 = icmp ne i32 %t26, 0 + %t23 = getelementptr inbounds ptr, ptr %t18, i32 %t16 + %t24 = load ptr, ptr %t23 + %t25 = getelementptr inbounds %Cmp_Node, ptr %t24, i32 0, i32 0 + %t26 = load i32, ptr %t25 + %t27 = icmp eq i32 %t26, 10 %t28 = zext i1 %t27 to i32 - store i32 %t28, ptr %t12 - br i1 %t27, label %sc5, label %scend6 + %t29 = icmp ne i32 %t28, 0 + %t30 = zext i1 %t29 to i32 + store i32 %t30, ptr %t14 + br i1 %t29, label %sc5, label %scend6 sc5: - %t29 = load ptr, ptr @g_prog - %t30 = load i32, ptr %t4 - %t31 = getelementptr inbounds %LSlice, ptr %t29, i32 0, i32 0 - %t32 = load ptr, ptr %t31 - %t33 = getelementptr inbounds %LSlice, ptr %t29, i32 0, i32 1 - %t34 = load i32, ptr %t33 - %t35 = icmp ult i32 %t30, %t34 - br i1 %t35, label %ixok7, label %ixbad8 + %t31 = load ptr, ptr @g_prog + %t32 = load i32, ptr %t6 + %t33 = getelementptr inbounds %LSlice, ptr %t31, i32 0, i32 0 + %t34 = load ptr, ptr %t33 + %t35 = getelementptr inbounds %LSlice, ptr %t31, i32 0, i32 1 + %t36 = load i32, ptr %t35 + %t37 = icmp ult i32 %t32, %t36 + br i1 %t37, label %ixok7, label %ixbad8 ixbad8: - %t36 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str13524, i32 %t30, i32 %t34) + %t38 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t38, ptr @.fmt_bounds, ptr @.str13661, i32 %t32, i32 %t36) call void @exit(i32 1) unreachable ixok7: - %t37 = getelementptr inbounds ptr, ptr %t32, i32 %t30 - %t38 = load ptr, ptr %t37 - %t39 = call i32 @fn_net_model_syncs(ptr %t38) - %t40 = icmp ne i32 %t39, 0 - %t41 = zext i1 %t40 to i32 - store i32 %t41, ptr %t12 + %t39 = getelementptr inbounds ptr, ptr %t34, i32 %t32 + %t40 = load ptr, ptr %t39 + %t41 = call i32 @fn_net_model_syncs(ptr %t40) + %t42 = icmp ne i32 %t41, 0 + %t43 = zext i1 %t42 to i32 + store i32 %t43, ptr %t14 br label %scend6 scend6: - %t42 = load i32, ptr %t12 - %t43 = icmp ne i32 %t42, 0 - br i1 %t43, label %then9, label %ifend11 + %t44 = load i32, ptr %t14 + %t45 = icmp ne i32 %t44, 0 + br i1 %t45, label %then9, label %ifend11 then9: - %t44 = load ptr, ptr @g_prog - %t45 = load i32, ptr %t4 - %t46 = getelementptr inbounds %LSlice, ptr %t44, i32 0, i32 0 - %t47 = load ptr, ptr %t46 - %t48 = getelementptr inbounds %LSlice, ptr %t44, i32 0, i32 1 - %t49 = load i32, ptr %t48 - %t50 = icmp ult i32 %t45, %t49 - br i1 %t50, label %ixok12, label %ixbad13 + %t46 = load ptr, ptr @g_prog + %t47 = load i32, ptr %t6 + %t48 = getelementptr inbounds %LSlice, ptr %t46, i32 0, i32 0 + %t49 = load ptr, ptr %t48 + %t50 = getelementptr inbounds %LSlice, ptr %t46, i32 0, i32 1 + %t51 = load i32, ptr %t50 + %t52 = icmp ult i32 %t47, %t51 + br i1 %t52, label %ixok12, label %ixbad13 ixbad13: - %t51 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str13525, i32 %t45, i32 %t49) + %t53 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t53, ptr @.fmt_bounds, ptr @.str13662, i32 %t47, i32 %t51) call void @exit(i32 1) unreachable ixok12: - %t52 = getelementptr inbounds ptr, ptr %t47, i32 %t45 - %t53 = load ptr, ptr %t52 - %t54 = getelementptr inbounds %Cmp_Node, ptr %t53, i32 0, i32 1 + %t54 = getelementptr inbounds ptr, ptr %t49, i32 %t47 %t55 = load ptr, ptr %t54 - store ptr %t55, ptr %t56 - %t57 = load i32, ptr %t3 - %t58 = call ptr @fn_itoa(i32 %t57) - store ptr %t58, ptr %t59 - call void @fn_emit(ptr @.str13526) - %t60 = load ptr, ptr %t59 - call void @fn_emit(ptr %t60) - call void @fn_emit(ptr @.str13527) - %t61 = load ptr, ptr %t56 - %t62 = call i32 @fn_find_arch_id(ptr %t61) - %t63 = call ptr @fn_itoa(i32 %t62) - call void @fn_emit(ptr %t63) - call void @fn_emit(ptr @.str13528) - call void @fn_emit(ptr @.str13529) - %t64 = load ptr, ptr %t59 - call void @fn_emit(ptr %t64) - call void @fn_emit(ptr @.str13530) - %t65 = load ptr, ptr %t59 + %t56 = getelementptr inbounds %Cmp_Node, ptr %t55, i32 0, i32 1 + %t57 = load ptr, ptr %t56 + store ptr %t57, ptr %t58 + %t59 = load i32, ptr %t5 + %t60 = call ptr @fn_itoa(i32 %t59) + store ptr %t60, ptr %t61 + call void @fn_emit(ptr @.str13663) + %t62 = load ptr, ptr %t61 + call void @fn_emit(ptr %t62) + call void @fn_emit(ptr @.str13664) + %t63 = load ptr, ptr %t58 + %t64 = call i32 @fn_find_arch_id(ptr %t63) + %t65 = call ptr @fn_itoa(i32 %t64) call void @fn_emit(ptr %t65) - call void @fn_emit(ptr @.str13531) - %t66 = load ptr, ptr %t59 + call void @fn_emit(ptr @.str13665) + call void @fn_emit(ptr @.str13666) + %t66 = load ptr, ptr %t61 call void @fn_emit(ptr %t66) - call void @fn_emit(ptr @.str13532) - call void @fn_emit(ptr @.str13533) - %t67 = load ptr, ptr %t59 + call void @fn_emit(ptr @.str13667) + %t67 = load ptr, ptr %t61 call void @fn_emit(ptr %t67) - call void @fn_emit(ptr @.str13534) - %t68 = load ptr, ptr %t59 + call void @fn_emit(ptr @.str13668) + %t68 = load ptr, ptr %t61 call void @fn_emit(ptr %t68) - call void @fn_emit(ptr @.str13535) - %t69 = load ptr, ptr %t56 + call void @fn_emit(ptr @.str13669) + call void @fn_emit(ptr @.str13670) + %t69 = load ptr, ptr %t61 call void @fn_emit(ptr %t69) - call void @fn_emit(ptr @.str13536) - %t70 = load ptr, ptr %t59 + call void @fn_emit(ptr @.str13671) + %t70 = load ptr, ptr %t61 call void @fn_emit(ptr %t70) - call void @fn_emit(ptr @.str13537) - call void @fn_emit(ptr @.str13538) - %t71 = load ptr, ptr %t59 + call void @fn_emit(ptr @.str13672) + %t71 = load ptr, ptr %t58 call void @fn_emit(ptr %t71) - call void @fn_emit(ptr @.str13539) - %t72 = load i32, ptr %t3 - %t73 = add i32 %t72, 1 - store i32 %t73, ptr %t3 + call void @fn_emit(ptr @.str13673) + %t72 = load ptr, ptr %t61 + call void @fn_emit(ptr %t72) + call void @fn_emit(ptr @.str13674) + call void @fn_emit(ptr @.str13675) + %t73 = load ptr, ptr %t61 + call void @fn_emit(ptr %t73) + call void @fn_emit(ptr @.str13676) + %t74 = load i32, ptr %t5 + %t75 = add i32 %t74, 1 + store i32 %t75, ptr %t5 br label %ifend11 ifend11: - %t74 = load i32, ptr %t4 - %t75 = add i32 %t74, 1 - store i32 %t75, ptr %t4 + %t76 = load i32, ptr %t6 + %t77 = add i32 %t76, 1 + store i32 %t77, ptr %t6 br label %wcond0 wend2: - call void @fn_emit(ptr @.str13540) - call void @fn_emit(ptr @.str13541) - call void @fn_emit(ptr @.str13542) - %t76 = load ptr, ptr %t1 - call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str13543) - store i32 0, ptr %t3 - store i32 0, ptr %t4 + call void @fn_emit(ptr @.str13677) + call void @fn_emit(ptr @.str13678) + %t78 = call ptr @fn_ecs_base(ptr @.str13679) + store ptr %t78, ptr %t79 + call void @fn_emit(ptr @.str13680) + %t80 = load ptr, ptr %t79 + call void @fn_emit(ptr %t80) + call void @fn_emit(ptr @.str13681) + store i32 0, ptr %t5 + store i32 0, ptr %t6 br label %wcond14 wcond14: - %t77 = load i32, ptr %t4 - %t78 = load ptr, ptr @g_prog - %t79 = getelementptr inbounds %LSlice, ptr %t78, i32 0, i32 1 - %t80 = load i32, ptr %t79 - %t81 = icmp slt i32 %t77, %t80 - %t82 = zext i1 %t81 to i32 - %t83 = icmp ne i32 %t82, 0 - br i1 %t83, label %wbody15, label %wend16 + %t81 = load i32, ptr %t6 + %t82 = load ptr, ptr @g_prog + %t83 = getelementptr inbounds %LSlice, ptr %t82, i32 0, i32 1 + %t84 = load i32, ptr %t83 + %t85 = icmp slt i32 %t81, %t84 + %t86 = zext i1 %t85 to i32 + %t87 = icmp ne i32 %t86, 0 + br i1 %t87, label %wbody15, label %wend16 wbody15: - %t85 = load ptr, ptr @g_prog - %t86 = load i32, ptr %t4 - %t87 = getelementptr inbounds %LSlice, ptr %t85, i32 0, i32 0 - %t88 = load ptr, ptr %t87 - %t89 = getelementptr inbounds %LSlice, ptr %t85, i32 0, i32 1 - %t90 = load i32, ptr %t89 - %t91 = icmp ult i32 %t86, %t90 - br i1 %t91, label %ixok17, label %ixbad18 + %t89 = load ptr, ptr @g_prog + %t90 = load i32, ptr %t6 + %t91 = getelementptr inbounds %LSlice, ptr %t89, i32 0, i32 0 + %t92 = load ptr, ptr %t91 + %t93 = getelementptr inbounds %LSlice, ptr %t89, i32 0, i32 1 + %t94 = load i32, ptr %t93 + %t95 = icmp ult i32 %t90, %t94 + br i1 %t95, label %ixok17, label %ixbad18 ixbad18: - %t92 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t92, ptr @.fmt_bounds, ptr @.str13544, i32 %t86, i32 %t90) + %t96 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t96, ptr @.fmt_bounds, ptr @.str13682, i32 %t90, i32 %t94) call void @exit(i32 1) unreachable ixok17: - %t93 = getelementptr inbounds ptr, ptr %t88, i32 %t86 - %t94 = load ptr, ptr %t93 - %t95 = getelementptr inbounds %Cmp_Node, ptr %t94, i32 0, i32 0 - %t96 = load i32, ptr %t95 - %t97 = icmp eq i32 %t96, 10 - %t98 = zext i1 %t97 to i32 - %t99 = icmp ne i32 %t98, 0 - %t100 = zext i1 %t99 to i32 - store i32 %t100, ptr %t84 - br i1 %t99, label %sc19, label %scend20 + %t97 = getelementptr inbounds ptr, ptr %t92, i32 %t90 + %t98 = load ptr, ptr %t97 + %t99 = getelementptr inbounds %Cmp_Node, ptr %t98, i32 0, i32 0 + %t100 = load i32, ptr %t99 + %t101 = icmp eq i32 %t100, 10 + %t102 = zext i1 %t101 to i32 + %t103 = icmp ne i32 %t102, 0 + %t104 = zext i1 %t103 to i32 + store i32 %t104, ptr %t88 + br i1 %t103, label %sc19, label %scend20 sc19: - %t101 = load ptr, ptr @g_prog - %t102 = load i32, ptr %t4 - %t103 = getelementptr inbounds %LSlice, ptr %t101, i32 0, i32 0 - %t104 = load ptr, ptr %t103 - %t105 = getelementptr inbounds %LSlice, ptr %t101, i32 0, i32 1 - %t106 = load i32, ptr %t105 - %t107 = icmp ult i32 %t102, %t106 - br i1 %t107, label %ixok21, label %ixbad22 + %t105 = load ptr, ptr @g_prog + %t106 = load i32, ptr %t6 + %t107 = getelementptr inbounds %LSlice, ptr %t105, i32 0, i32 0 + %t108 = load ptr, ptr %t107 + %t109 = getelementptr inbounds %LSlice, ptr %t105, i32 0, i32 1 + %t110 = load i32, ptr %t109 + %t111 = icmp ult i32 %t106, %t110 + br i1 %t111, label %ixok21, label %ixbad22 ixbad22: - %t108 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t108, ptr @.fmt_bounds, ptr @.str13545, i32 %t102, i32 %t106) + %t112 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t112, ptr @.fmt_bounds, ptr @.str13683, i32 %t106, i32 %t110) call void @exit(i32 1) unreachable ixok21: - %t109 = getelementptr inbounds ptr, ptr %t104, i32 %t102 - %t110 = load ptr, ptr %t109 - %t111 = call i32 @fn_net_model_syncs(ptr %t110) - %t112 = icmp ne i32 %t111, 0 - %t113 = zext i1 %t112 to i32 - store i32 %t113, ptr %t84 + %t113 = getelementptr inbounds ptr, ptr %t108, i32 %t106 + %t114 = load ptr, ptr %t113 + %t115 = call i32 @fn_net_model_syncs(ptr %t114) + %t116 = icmp ne i32 %t115, 0 + %t117 = zext i1 %t116 to i32 + store i32 %t117, ptr %t88 br label %scend20 scend20: - %t114 = load i32, ptr %t84 - %t115 = icmp ne i32 %t114, 0 - br i1 %t115, label %then23, label %ifend25 + %t118 = load i32, ptr %t88 + %t119 = icmp ne i32 %t118, 0 + br i1 %t119, label %then23, label %ifend25 then23: - %t116 = load ptr, ptr @g_prog - %t117 = load i32, ptr %t4 - %t118 = getelementptr inbounds %LSlice, ptr %t116, i32 0, i32 0 - %t119 = load ptr, ptr %t118 - %t120 = getelementptr inbounds %LSlice, ptr %t116, i32 0, i32 1 - %t121 = load i32, ptr %t120 - %t122 = icmp ult i32 %t117, %t121 - br i1 %t122, label %ixok26, label %ixbad27 + %t120 = load ptr, ptr @g_prog + %t121 = load i32, ptr %t6 + %t122 = getelementptr inbounds %LSlice, ptr %t120, i32 0, i32 0 + %t123 = load ptr, ptr %t122 + %t124 = getelementptr inbounds %LSlice, ptr %t120, i32 0, i32 1 + %t125 = load i32, ptr %t124 + %t126 = icmp ult i32 %t121, %t125 + br i1 %t126, label %ixok26, label %ixbad27 ixbad27: - %t123 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t123, ptr @.fmt_bounds, ptr @.str13546, i32 %t117, i32 %t121) + %t127 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t127, ptr @.fmt_bounds, ptr @.str13684, i32 %t121, i32 %t125) call void @exit(i32 1) unreachable ixok26: - %t124 = getelementptr inbounds ptr, ptr %t119, i32 %t117 - %t125 = load ptr, ptr %t124 - %t126 = getelementptr inbounds %Cmp_Node, ptr %t125, i32 0, i32 1 - %t127 = load ptr, ptr %t126 - store ptr %t127, ptr %t128 - %t129 = load i32, ptr %t3 - %t130 = call ptr @fn_itoa(i32 %t129) - store ptr %t130, ptr %t131 - call void @fn_emit(ptr @.str13547) - %t132 = load ptr, ptr %t131 - call void @fn_emit(ptr %t132) - call void @fn_emit(ptr @.str13548) - %t133 = load ptr, ptr %t128 - %t134 = call i32 @fn_find_arch_id(ptr %t133) - %t135 = call ptr @fn_itoa(i32 %t134) - call void @fn_emit(ptr %t135) - call void @fn_emit(ptr @.str13549) - call void @fn_emit(ptr @.str13550) - %t136 = load ptr, ptr %t131 + %t128 = getelementptr inbounds ptr, ptr %t123, i32 %t121 + %t129 = load ptr, ptr %t128 + %t130 = getelementptr inbounds %Cmp_Node, ptr %t129, i32 0, i32 1 + %t131 = load ptr, ptr %t130 + store ptr %t131, ptr %t132 + %t133 = load i32, ptr %t5 + %t134 = call ptr @fn_itoa(i32 %t133) + store ptr %t134, ptr %t135 + call void @fn_emit(ptr @.str13685) + %t136 = load ptr, ptr %t135 call void @fn_emit(ptr %t136) - call void @fn_emit(ptr @.str13551) - %t137 = load ptr, ptr %t131 - call void @fn_emit(ptr %t137) - call void @fn_emit(ptr @.str13552) - %t138 = load ptr, ptr %t131 - call void @fn_emit(ptr %t138) - call void @fn_emit(ptr @.str13553) - call void @fn_emit(ptr @.str13554) - %t139 = load ptr, ptr %t131 + call void @fn_emit(ptr @.str13686) + %t137 = load ptr, ptr %t132 + %t138 = call i32 @fn_find_arch_id(ptr %t137) + %t139 = call ptr @fn_itoa(i32 %t138) call void @fn_emit(ptr %t139) - call void @fn_emit(ptr @.str13555) - %t140 = load ptr, ptr %t128 + call void @fn_emit(ptr @.str13687) + call void @fn_emit(ptr @.str13688) + %t140 = load ptr, ptr %t135 call void @fn_emit(ptr %t140) - call void @fn_emit(ptr @.str13556) - call void @fn_emit(ptr @.str13557) - %t141 = load ptr, ptr %t131 + call void @fn_emit(ptr @.str13689) + %t141 = load ptr, ptr %t135 call void @fn_emit(ptr %t141) - call void @fn_emit(ptr @.str13558) - %t142 = load i32, ptr %t3 - %t143 = add i32 %t142, 1 - store i32 %t143, ptr %t3 + call void @fn_emit(ptr @.str13690) + %t142 = load ptr, ptr %t135 + call void @fn_emit(ptr %t142) + call void @fn_emit(ptr @.str13691) + call void @fn_emit(ptr @.str13692) + %t143 = load ptr, ptr %t135 + call void @fn_emit(ptr %t143) + call void @fn_emit(ptr @.str13693) + %t144 = load ptr, ptr %t132 + call void @fn_emit(ptr %t144) + call void @fn_emit(ptr @.str13694) + call void @fn_emit(ptr @.str13695) + %t145 = load ptr, ptr %t135 + call void @fn_emit(ptr %t145) + call void @fn_emit(ptr @.str13696) + %t146 = load i32, ptr %t5 + %t147 = add i32 %t146, 1 + store i32 %t147, ptr %t5 br label %ifend25 ifend25: - %t144 = load i32, ptr %t4 - %t145 = add i32 %t144, 1 - store i32 %t145, ptr %t4 + %t148 = load i32, ptr %t6 + %t149 = add i32 %t148, 1 + store i32 %t149, ptr %t6 br label %wcond14 wend16: - call void @fn_emit(ptr @.str13559) - call void @fn_emit(ptr @.str13560) - call void @fn_emit(ptr @.str13561) - %t146 = load ptr, ptr %t1 - call void @fn_emit(ptr %t146) - call void @fn_emit(ptr @.str13562) - store i32 0, ptr %t3 - store i32 0, ptr %t4 + call void @fn_emit(ptr @.str13697) + call void @fn_emit(ptr @.str13698) + %t150 = call ptr @fn_ecs_base(ptr @.str13699) + store ptr %t150, ptr %t151 + call void @fn_emit(ptr @.str13700) + %t152 = load ptr, ptr %t151 + call void @fn_emit(ptr %t152) + call void @fn_emit(ptr @.str13701) + store i32 0, ptr %t5 + store i32 0, ptr %t6 br label %wcond28 wcond28: - %t147 = load i32, ptr %t4 - %t148 = load ptr, ptr @g_prog - %t149 = getelementptr inbounds %LSlice, ptr %t148, i32 0, i32 1 - %t150 = load i32, ptr %t149 - %t151 = icmp slt i32 %t147, %t150 - %t152 = zext i1 %t151 to i32 - %t153 = icmp ne i32 %t152, 0 - br i1 %t153, label %wbody29, label %wend30 + %t153 = load i32, ptr %t6 + %t154 = load ptr, ptr @g_prog + %t155 = getelementptr inbounds %LSlice, ptr %t154, i32 0, i32 1 + %t156 = load i32, ptr %t155 + %t157 = icmp slt i32 %t153, %t156 + %t158 = zext i1 %t157 to i32 + %t159 = icmp ne i32 %t158, 0 + br i1 %t159, label %wbody29, label %wend30 wbody29: - %t155 = load ptr, ptr @g_prog - %t156 = load i32, ptr %t4 - %t157 = getelementptr inbounds %LSlice, ptr %t155, i32 0, i32 0 - %t158 = load ptr, ptr %t157 - %t159 = getelementptr inbounds %LSlice, ptr %t155, i32 0, i32 1 - %t160 = load i32, ptr %t159 - %t161 = icmp ult i32 %t156, %t160 - br i1 %t161, label %ixok31, label %ixbad32 + %t161 = load ptr, ptr @g_prog + %t162 = load i32, ptr %t6 + %t163 = getelementptr inbounds %LSlice, ptr %t161, i32 0, i32 0 + %t164 = load ptr, ptr %t163 + %t165 = getelementptr inbounds %LSlice, ptr %t161, i32 0, i32 1 + %t166 = load i32, ptr %t165 + %t167 = icmp ult i32 %t162, %t166 + br i1 %t167, label %ixok31, label %ixbad32 ixbad32: - %t162 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t162, ptr @.fmt_bounds, ptr @.str13563, i32 %t156, i32 %t160) + %t168 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t168, ptr @.fmt_bounds, ptr @.str13702, i32 %t162, i32 %t166) call void @exit(i32 1) unreachable ixok31: - %t163 = getelementptr inbounds ptr, ptr %t158, i32 %t156 - %t164 = load ptr, ptr %t163 - %t165 = getelementptr inbounds %Cmp_Node, ptr %t164, i32 0, i32 0 - %t166 = load i32, ptr %t165 - %t167 = icmp eq i32 %t166, 10 - %t168 = zext i1 %t167 to i32 - %t169 = icmp ne i32 %t168, 0 - %t170 = zext i1 %t169 to i32 - store i32 %t170, ptr %t154 - br i1 %t169, label %sc33, label %scend34 + %t169 = getelementptr inbounds ptr, ptr %t164, i32 %t162 + %t170 = load ptr, ptr %t169 + %t171 = getelementptr inbounds %Cmp_Node, ptr %t170, i32 0, i32 0 + %t172 = load i32, ptr %t171 + %t173 = icmp eq i32 %t172, 10 + %t174 = zext i1 %t173 to i32 + %t175 = icmp ne i32 %t174, 0 + %t176 = zext i1 %t175 to i32 + store i32 %t176, ptr %t160 + br i1 %t175, label %sc33, label %scend34 sc33: - %t171 = load ptr, ptr @g_prog - %t172 = load i32, ptr %t4 - %t173 = getelementptr inbounds %LSlice, ptr %t171, i32 0, i32 0 - %t174 = load ptr, ptr %t173 - %t175 = getelementptr inbounds %LSlice, ptr %t171, i32 0, i32 1 - %t176 = load i32, ptr %t175 - %t177 = icmp ult i32 %t172, %t176 - br i1 %t177, label %ixok35, label %ixbad36 + %t177 = load ptr, ptr @g_prog + %t178 = load i32, ptr %t6 + %t179 = getelementptr inbounds %LSlice, ptr %t177, i32 0, i32 0 + %t180 = load ptr, ptr %t179 + %t181 = getelementptr inbounds %LSlice, ptr %t177, i32 0, i32 1 + %t182 = load i32, ptr %t181 + %t183 = icmp ult i32 %t178, %t182 + br i1 %t183, label %ixok35, label %ixbad36 ixbad36: - %t178 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t178, ptr @.fmt_bounds, ptr @.str13564, i32 %t172, i32 %t176) + %t184 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t184, ptr @.fmt_bounds, ptr @.str13703, i32 %t178, i32 %t182) call void @exit(i32 1) unreachable ixok35: - %t179 = getelementptr inbounds ptr, ptr %t174, i32 %t172 - %t180 = load ptr, ptr %t179 - %t181 = call i32 @fn_net_model_syncs(ptr %t180) - %t182 = icmp ne i32 %t181, 0 - %t183 = zext i1 %t182 to i32 - store i32 %t183, ptr %t154 + %t185 = getelementptr inbounds ptr, ptr %t180, i32 %t178 + %t186 = load ptr, ptr %t185 + %t187 = call i32 @fn_net_model_syncs(ptr %t186) + %t188 = icmp ne i32 %t187, 0 + %t189 = zext i1 %t188 to i32 + store i32 %t189, ptr %t160 br label %scend34 scend34: - %t184 = load i32, ptr %t154 - %t185 = icmp ne i32 %t184, 0 - br i1 %t185, label %then37, label %ifend39 + %t190 = load i32, ptr %t160 + %t191 = icmp ne i32 %t190, 0 + br i1 %t191, label %then37, label %ifend39 then37: - %t186 = load ptr, ptr @g_prog - %t187 = load i32, ptr %t4 - %t188 = getelementptr inbounds %LSlice, ptr %t186, i32 0, i32 0 - %t189 = load ptr, ptr %t188 - %t190 = getelementptr inbounds %LSlice, ptr %t186, i32 0, i32 1 - %t191 = load i32, ptr %t190 - %t192 = icmp ult i32 %t187, %t191 - br i1 %t192, label %ixok40, label %ixbad41 + %t192 = load ptr, ptr @g_prog + %t193 = load i32, ptr %t6 + %t194 = getelementptr inbounds %LSlice, ptr %t192, i32 0, i32 0 + %t195 = load ptr, ptr %t194 + %t196 = getelementptr inbounds %LSlice, ptr %t192, i32 0, i32 1 + %t197 = load i32, ptr %t196 + %t198 = icmp ult i32 %t193, %t197 + br i1 %t198, label %ixok40, label %ixbad41 ixbad41: - %t193 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t193, ptr @.fmt_bounds, ptr @.str13565, i32 %t187, i32 %t191) + %t199 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t199, ptr @.fmt_bounds, ptr @.str13704, i32 %t193, i32 %t197) call void @exit(i32 1) unreachable ixok40: - %t194 = getelementptr inbounds ptr, ptr %t189, i32 %t187 - %t195 = load ptr, ptr %t194 - %t196 = getelementptr inbounds %Cmp_Node, ptr %t195, i32 0, i32 1 - %t197 = load ptr, ptr %t196 - store ptr %t197, ptr %t198 - %t199 = load i32, ptr %t3 - %t200 = call ptr @fn_itoa(i32 %t199) - store ptr %t200, ptr %t201 - call void @fn_emit(ptr @.str13566) - %t202 = load ptr, ptr %t201 - call void @fn_emit(ptr %t202) - call void @fn_emit(ptr @.str13567) - %t203 = load ptr, ptr %t198 - %t204 = call i32 @fn_find_arch_id(ptr %t203) - %t205 = call ptr @fn_itoa(i32 %t204) - call void @fn_emit(ptr %t205) - call void @fn_emit(ptr @.str13568) - call void @fn_emit(ptr @.str13569) - %t206 = load ptr, ptr %t201 - call void @fn_emit(ptr %t206) - call void @fn_emit(ptr @.str13570) - %t207 = load ptr, ptr %t201 - call void @fn_emit(ptr %t207) - call void @fn_emit(ptr @.str13571) - %t208 = load ptr, ptr %t201 + %t200 = getelementptr inbounds ptr, ptr %t195, i32 %t193 + %t201 = load ptr, ptr %t200 + %t202 = getelementptr inbounds %Cmp_Node, ptr %t201, i32 0, i32 1 + %t203 = load ptr, ptr %t202 + store ptr %t203, ptr %t204 + %t205 = load i32, ptr %t5 + %t206 = call ptr @fn_itoa(i32 %t205) + store ptr %t206, ptr %t207 + call void @fn_emit(ptr @.str13705) + %t208 = load ptr, ptr %t207 call void @fn_emit(ptr %t208) - call void @fn_emit(ptr @.str13572) - call void @fn_emit(ptr @.str13573) - %t209 = load ptr, ptr %t201 - call void @fn_emit(ptr %t209) - call void @fn_emit(ptr @.str13574) - %t210 = load ptr, ptr @g_prog - %t211 = load i32, ptr %t4 - %t212 = getelementptr inbounds %LSlice, ptr %t210, i32 0, i32 0 - %t213 = load ptr, ptr %t212 - %t214 = getelementptr inbounds %LSlice, ptr %t210, i32 0, i32 1 - %t215 = load i32, ptr %t214 - %t216 = icmp ult i32 %t211, %t215 - br i1 %t216, label %ixok42, label %ixbad43 + call void @fn_emit(ptr @.str13706) + %t209 = load ptr, ptr %t204 + %t210 = call i32 @fn_find_arch_id(ptr %t209) + %t211 = call ptr @fn_itoa(i32 %t210) + call void @fn_emit(ptr %t211) + call void @fn_emit(ptr @.str13707) + call void @fn_emit(ptr @.str13708) + %t212 = load ptr, ptr %t207 + call void @fn_emit(ptr %t212) + call void @fn_emit(ptr @.str13709) + %t213 = load ptr, ptr %t207 + call void @fn_emit(ptr %t213) + call void @fn_emit(ptr @.str13710) + %t214 = load ptr, ptr %t207 + call void @fn_emit(ptr %t214) + call void @fn_emit(ptr @.str13711) + call void @fn_emit(ptr @.str13712) + %t215 = load ptr, ptr %t207 + call void @fn_emit(ptr %t215) + call void @fn_emit(ptr @.str13713) + %t216 = load ptr, ptr @g_prog + %t217 = load i32, ptr %t6 + %t218 = getelementptr inbounds %LSlice, ptr %t216, i32 0, i32 0 + %t219 = load ptr, ptr %t218 + %t220 = getelementptr inbounds %LSlice, ptr %t216, i32 0, i32 1 + %t221 = load i32, ptr %t220 + %t222 = icmp ult i32 %t217, %t221 + br i1 %t222, label %ixok42, label %ixbad43 ixbad43: - %t217 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t217, ptr @.fmt_bounds, ptr @.str13575, i32 %t211, i32 %t215) + %t223 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t223, ptr @.fmt_bounds, ptr @.str13714, i32 %t217, i32 %t221) call void @exit(i32 1) unreachable ixok42: - %t218 = getelementptr inbounds ptr, ptr %t213, i32 %t211 - %t219 = load ptr, ptr %t218 - %t220 = call i32 @fn_net_model_bytes(ptr %t219) - %t221 = call ptr @fn_itoa(i32 %t220) - call void @fn_emit(ptr %t221) - call void @fn_emit(ptr @.str13576) - call void @fn_emit(ptr @.str13577) - %t222 = load ptr, ptr %t201 - call void @fn_emit(ptr %t222) - call void @fn_emit(ptr @.str13578) - %t223 = load i32, ptr %t3 - %t224 = add i32 %t223, 1 - store i32 %t224, ptr %t3 + %t224 = getelementptr inbounds ptr, ptr %t219, i32 %t217 + %t225 = load ptr, ptr %t224 + %t226 = call i32 @fn_net_model_bytes(ptr %t225) + %t227 = call ptr @fn_itoa(i32 %t226) + call void @fn_emit(ptr %t227) + call void @fn_emit(ptr @.str13715) + call void @fn_emit(ptr @.str13716) + %t228 = load ptr, ptr %t207 + call void @fn_emit(ptr %t228) + call void @fn_emit(ptr @.str13717) + %t229 = load i32, ptr %t5 + %t230 = add i32 %t229, 1 + store i32 %t230, ptr %t5 br label %ifend39 ifend39: - %t225 = load i32, ptr %t4 - %t226 = add i32 %t225, 1 - store i32 %t226, ptr %t4 + %t231 = load i32, ptr %t6 + %t232 = add i32 %t231, 1 + store i32 %t232, ptr %t6 br label %wcond28 wend30: - call void @fn_emit(ptr @.str13579) + call void @fn_emit(ptr @.str13718) br label %ret ret: ret void @@ -173900,24 +174651,33 @@ ret: define void @fn_emit_net_owner() { entry: %t1 = alloca ptr + %t3 = alloca ptr + %t6 = alloca ptr + %t9 = alloca ptr %t0 = call ptr @fn_itoa(i32 1024) store ptr %t0, ptr %t1 - call void @fn_emit(ptr @.str13580) - call void @fn_emit(ptr @.str13581) - %t2 = load ptr, ptr %t1 - call void @fn_emit(ptr %t2) - call void @fn_emit(ptr @.str13582) - call void @fn_emit(ptr @.str13583) - call void @fn_emit(ptr @.str13584) - %t3 = load ptr, ptr %t1 - call void @fn_emit(ptr %t3) - call void @fn_emit(ptr @.str13585) - call void @fn_emit(ptr @.str13586) - call void @fn_emit(ptr @.str13587) - %t4 = load ptr, ptr %t1 + call void @fn_emit(ptr @.str13719) + %t2 = call ptr @fn_ecs_base(ptr @.str13720) + store ptr %t2, ptr %t3 + call void @fn_emit(ptr @.str13721) + %t4 = load ptr, ptr %t3 call void @fn_emit(ptr %t4) - call void @fn_emit(ptr @.str13588) - call void @fn_emit(ptr @.str13589) + call void @fn_emit(ptr @.str13722) + call void @fn_emit(ptr @.str13723) + %t5 = call ptr @fn_ecs_base(ptr @.str13724) + store ptr %t5, ptr %t6 + call void @fn_emit(ptr @.str13725) + %t7 = load ptr, ptr %t6 + call void @fn_emit(ptr %t7) + call void @fn_emit(ptr @.str13726) + call void @fn_emit(ptr @.str13727) + %t8 = call ptr @fn_ecs_base(ptr @.str13728) + store ptr %t8, ptr %t9 + call void @fn_emit(ptr @.str13729) + %t10 = load ptr, ptr %t9 + call void @fn_emit(ptr %t10) + call void @fn_emit(ptr @.str13730) + call void @fn_emit(ptr @.str13731) br label %ret ret: ret void @@ -173925,32 +174685,32 @@ ret: define void @fn_emit_loopback() { entry: - call void @fn_emith(ptr @.str13590) - call void @fn_emith(ptr @.str13591) - call void @fn_emith(ptr @.str13592) - call void @fn_emith(ptr @.str13593) - call void @fn_emit(ptr @.str13594) - call void @fn_emit(ptr @.str13595) - call void @fn_emit(ptr @.str13596) - call void @fn_emit(ptr @.str13597) - call void @fn_emit(ptr @.str13598) - call void @fn_emit(ptr @.str13599) - call void @fn_emit(ptr @.str13600) - call void @fn_emit(ptr @.str13601) - call void @fn_emit(ptr @.str13602) - call void @fn_emit(ptr @.str13603) - call void @fn_emit(ptr @.str13604) - call void @fn_emit(ptr @.str13605) - call void @fn_emit(ptr @.str13606) - call void @fn_emit(ptr @.str13607) - call void @fn_emit(ptr @.str13608) - call void @fn_emit(ptr @.str13609) - call void @fn_emit(ptr @.str13610) - call void @fn_emit(ptr @.str13611) - call void @fn_emit(ptr @.str13612) - call void @fn_emit(ptr @.str13613) - call void @fn_emit(ptr @.str13614) - call void @fn_emit(ptr @.str13615) + call void @fn_emith(ptr @.str13732) + call void @fn_emith(ptr @.str13733) + call void @fn_emith(ptr @.str13734) + call void @fn_emith(ptr @.str13735) + call void @fn_emit(ptr @.str13736) + call void @fn_emit(ptr @.str13737) + call void @fn_emit(ptr @.str13738) + call void @fn_emit(ptr @.str13739) + call void @fn_emit(ptr @.str13740) + call void @fn_emit(ptr @.str13741) + call void @fn_emit(ptr @.str13742) + call void @fn_emit(ptr @.str13743) + call void @fn_emit(ptr @.str13744) + call void @fn_emit(ptr @.str13745) + call void @fn_emit(ptr @.str13746) + call void @fn_emit(ptr @.str13747) + call void @fn_emit(ptr @.str13748) + call void @fn_emit(ptr @.str13749) + call void @fn_emit(ptr @.str13750) + call void @fn_emit(ptr @.str13751) + call void @fn_emit(ptr @.str13752) + call void @fn_emit(ptr @.str13753) + call void @fn_emit(ptr @.str13754) + call void @fn_emit(ptr @.str13755) + call void @fn_emit(ptr @.str13756) + call void @fn_emit(ptr @.str13757) br label %ret ret: ret void @@ -173982,7 +174742,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13616, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13758, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -174038,7 +174798,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13617, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13759, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -174072,7 +174832,7 @@ define ptr @fn_net_send_sym() { entry: %retval = alloca ptr %t1 = alloca ptr - %t0 = call ptr @fn_find_extern(ptr @.str13618) + %t0 = call ptr @fn_find_extern(ptr @.str13760) store ptr %t0, ptr %t1 %t2 = load ptr, ptr %t1 %t3 = icmp ne ptr %t2, null @@ -174088,7 +174848,7 @@ then0: store ptr %t10, ptr %retval br label %ret ifend2: - store ptr @.str13619, ptr %retval + store ptr @.str13761, ptr %retval br label %ret ret: %t11 = load ptr, ptr %retval @@ -174099,7 +174859,7 @@ define ptr @fn_net_poll_sym() { entry: %retval = alloca ptr %t1 = alloca ptr - %t0 = call ptr @fn_find_extern(ptr @.str13620) + %t0 = call ptr @fn_find_extern(ptr @.str13762) store ptr %t0, ptr %t1 %t2 = load ptr, ptr %t1 %t3 = icmp ne ptr %t2, null @@ -174115,7 +174875,7 @@ then0: store ptr %t10, ptr %retval br label %ret ifend2: - store ptr @.str13621, ptr %retval + store ptr @.str13763, ptr %retval br label %ret ret: %t11 = load ptr, ptr %retval @@ -174133,8 +174893,8 @@ entry: %t48 = alloca ptr %t73 = alloca ptr %t79 = alloca ptr - call void @fn_emith(ptr @.str13622) - %t0 = call ptr @fn_find_extern(ptr @.str13623) + call void @fn_emith(ptr @.str13764) + %t0 = call ptr @fn_find_extern(ptr @.str13765) %t1 = icmp eq ptr %t0, null %t2 = zext i1 %t1 to i32 %t3 = icmp ne i32 %t2, 0 @@ -174145,13 +174905,13 @@ then0: ifend2: %t4 = call ptr @fn_net_poll_sym() store ptr %t4, ptr %t5 - call void @fn_emit(ptr @.str13624) - call void @fn_emit(ptr @.str13625) + call void @fn_emit(ptr @.str13766) + call void @fn_emit(ptr @.str13767) %t6 = load ptr, ptr %t5 call void @fn_emit(ptr %t6) - call void @fn_emit(ptr @.str13626) - call void @fn_emit(ptr @.str13627) - call void @fn_emit(ptr @.str13628) + call void @fn_emit(ptr @.str13768) + call void @fn_emit(ptr @.str13769) + call void @fn_emit(ptr @.str13770) store i32 0, ptr %t7 br label %wcond3 wcond3: @@ -174174,7 +174934,7 @@ wbody4: br i1 %t21, label %ixok6, label %ixbad7 ixbad7: %t22 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str13629, i32 %t16, i32 %t20) + call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str13771, i32 %t16, i32 %t20) call void @exit(i32 1) unreachable ixok6: @@ -174192,31 +174952,31 @@ then8: %t32 = load i32, ptr %t7 %t33 = call ptr @fn_itoa(i32 %t32) store ptr %t33, ptr %t34 - call void @fn_emit(ptr @.str13630) + call void @fn_emit(ptr @.str13772) %t35 = load ptr, ptr %t34 call void @fn_emit(ptr %t35) - call void @fn_emit(ptr @.str13631) + call void @fn_emit(ptr @.str13773) %t36 = load ptr, ptr %t25 %t37 = getelementptr inbounds %Cmp_Node, ptr %t36, i32 0, i32 1 %t38 = load ptr, ptr %t37 %t39 = call i32 @fn_net_event_id(ptr %t38) %t40 = call ptr @fn_itoa(i32 %t39) call void @fn_emit(ptr %t40) - call void @fn_emit(ptr @.str13632) - call void @fn_emit(ptr @.str13633) + call void @fn_emit(ptr @.str13774) + call void @fn_emit(ptr @.str13775) %t41 = load ptr, ptr %t34 call void @fn_emit(ptr %t41) - call void @fn_emit(ptr @.str13634) + call void @fn_emit(ptr @.str13776) %t42 = load ptr, ptr %t34 call void @fn_emit(ptr %t42) - call void @fn_emit(ptr @.str13635) + call void @fn_emit(ptr @.str13777) %t43 = load ptr, ptr %t34 call void @fn_emit(ptr %t43) - call void @fn_emit(ptr @.str13636) - call void @fn_emit(ptr @.str13637) + call void @fn_emit(ptr @.str13778) + call void @fn_emit(ptr @.str13779) %t44 = load ptr, ptr %t34 call void @fn_emit(ptr %t44) - call void @fn_emit(ptr @.str13638) + call void @fn_emit(ptr @.str13780) store i32 4, ptr %t45 store i32 0, ptr %t46 %t47 = call ptr @fn_buf_new() @@ -174246,7 +175006,7 @@ wbody12: br i1 %t66, label %ixok14, label %ixbad15 ixbad15: %t67 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t67, ptr @.fmt_bounds, ptr @.str13639, i32 %t61, i32 %t65) + call i32 (ptr, ptr, ...) @fprintf(ptr %t67, ptr @.fmt_bounds, ptr @.str13781, i32 %t61, i32 %t65) call void @exit(i32 1) unreachable ixok14: @@ -174257,29 +175017,29 @@ ixok14: %t72 = call ptr @fn_llty(ptr %t71) store ptr %t72, ptr %t73 %t74 = load ptr, ptr %t34 - %t75 = call ptr @lp_str_concat(ptr %t74, ptr @.str13640) + %t75 = call ptr @lp_str_concat(ptr %t74, ptr @.str13782) %t76 = load i32, ptr %t46 %t77 = call ptr @fn_itoa(i32 %t76) %t78 = call ptr @lp_str_concat(ptr %t75, ptr %t77) store ptr %t78, ptr %t79 - call void @fn_emit(ptr @.str13641) + call void @fn_emit(ptr @.str13783) %t80 = load ptr, ptr %t79 call void @fn_emit(ptr %t80) - call void @fn_emit(ptr @.str13642) + call void @fn_emit(ptr @.str13784) %t81 = load i32, ptr %t45 %t82 = call ptr @fn_itoa(i32 %t81) call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str13643) - call void @fn_emit(ptr @.str13644) + call void @fn_emit(ptr @.str13785) + call void @fn_emit(ptr @.str13786) %t83 = load ptr, ptr %t79 call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str13645) + call void @fn_emit(ptr @.str13787) %t84 = load ptr, ptr %t73 call void @fn_emit(ptr %t84) - call void @fn_emit(ptr @.str13646) + call void @fn_emit(ptr @.str13788) %t85 = load ptr, ptr %t79 call void @fn_emit(ptr %t85) - call void @fn_emit(ptr @.str13647) + call void @fn_emit(ptr @.str13789) %t86 = load i32, ptr %t46 %t87 = icmp sgt i32 %t86, 0 %t88 = zext i1 %t87 to i32 @@ -174287,14 +175047,14 @@ ixok14: br i1 %t89, label %then16, label %ifend18 then16: %t90 = load ptr, ptr %t48 - call void @fn_buf_puts(ptr %t90, ptr @.str13648) + call void @fn_buf_puts(ptr %t90, ptr @.str13790) br label %ifend18 ifend18: %t91 = load ptr, ptr %t48 %t92 = load ptr, ptr %t73 call void @fn_buf_puts(ptr %t91, ptr %t92) %t93 = load ptr, ptr %t48 - call void @fn_buf_puts(ptr %t93, ptr @.str13649) + call void @fn_buf_puts(ptr %t93, ptr @.str13791) %t94 = load ptr, ptr %t48 %t95 = load ptr, ptr %t79 call void @fn_buf_puts(ptr %t94, ptr %t95) @@ -174310,7 +175070,7 @@ ifend18: br i1 %t104, label %ixok19, label %ixbad20 ixbad20: %t105 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t105, ptr @.fmt_bounds, ptr @.str13650, i32 %t99, i32 %t103) + call i32 (ptr, ptr, ...) @fprintf(ptr %t105, ptr @.fmt_bounds, ptr @.str13792, i32 %t99, i32 %t103) call void @exit(i32 1) unreachable ixok19: @@ -174327,21 +175087,21 @@ ixok19: store i32 %t114, ptr %t46 br label %wcond11 wend13: - call void @fn_emit(ptr @.str13651) + call void @fn_emit(ptr @.str13793) %t115 = load ptr, ptr %t25 %t116 = getelementptr inbounds %Cmp_Node, ptr %t115, i32 0, i32 1 %t117 = load ptr, ptr %t116 call void @fn_emit(ptr %t117) - call void @fn_emit(ptr @.str13652) + call void @fn_emit(ptr @.str13794) %t118 = load ptr, ptr %t48 %t119 = call ptr @fn_buf_str(ptr %t118) call void @fn_emit(ptr %t119) - call void @fn_emit(ptr @.str13653) - call void @fn_emit(ptr @.str13654) - call void @fn_emit(ptr @.str13655) + call void @fn_emit(ptr @.str13795) + call void @fn_emit(ptr @.str13796) + call void @fn_emit(ptr @.str13797) %t120 = load ptr, ptr %t34 call void @fn_emit(ptr %t120) - call void @fn_emit(ptr @.str13656) + call void @fn_emit(ptr @.str13798) br label %ifend10 ifend10: %t121 = load i32, ptr %t7 @@ -174349,8 +175109,8 @@ ifend10: store i32 %t122, ptr %t7 br label %wcond3 wend5: - call void @fn_emit(ptr @.str13657) - call void @fn_emit(ptr @.str13658) + call void @fn_emit(ptr @.str13799) + call void @fn_emit(ptr @.str13800) br label %ret ret: ret void @@ -174387,7 +175147,7 @@ wbody4: br i1 %t17, label %ixok6, label %ixbad7 ixbad7: %t18 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str13659, i32 %t12, i32 %t16) + call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str13801, i32 %t12, i32 %t16) call void @exit(i32 1) unreachable ixok6: @@ -174412,7 +175172,7 @@ sc8: br i1 %t33, label %ixok10, label %ixbad11 ixbad11: %t34 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str13660, i32 %t28, i32 %t32) + call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str13802, i32 %t28, i32 %t32) call void @exit(i32 1) unreachable ixok10: @@ -174438,7 +175198,7 @@ then12: br i1 %t48, label %ixok15, label %ixbad16 ixbad16: %t49 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str13661, i32 %t43, i32 %t47) + call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str13803, i32 %t43, i32 %t47) call void @exit(i32 1) unreachable ixok15: @@ -174455,7 +175215,7 @@ ixok15: br i1 %t58, label %ixok17, label %ixbad18 ixbad18: %t59 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t59, ptr @.fmt_bounds, ptr @.str13662, i32 %t53, i32 %t57) + call i32 (ptr, ptr, ...) @fprintf(ptr %t59, ptr @.fmt_bounds, ptr @.str13804, i32 %t53, i32 %t57) call void @exit(i32 1) unreachable ixok17: @@ -174483,7 +175243,7 @@ ifend21: %t67 = icmp ne i32 %t66, 0 br i1 %t67, label %then22, label %ifend24 then22: - call void @fn_emith(ptr @.str13663) + call void @fn_emith(ptr @.str13805) call void @fn_emit_net_pump() br label %ifend24 ifend24: @@ -174503,7 +175263,7 @@ entry: %t3 = load ptr, ptr %t2 store ptr %t3, ptr %t4 %t5 = load ptr, ptr %t4 - %t6 = call i32 @lp_str_eq(ptr %t5, ptr @.str13664) + %t6 = call i32 @lp_str_eq(ptr %t5, ptr @.str13806) %t7 = icmp ne i32 %t6, 0 br i1 %t7, label %then0, label %ifend2 then0: @@ -174511,7 +175271,7 @@ then0: br label %ret ifend2: %t8 = load ptr, ptr %t4 - %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str13665) + %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str13807) %t10 = icmp ne i32 %t9, 0 br i1 %t10, label %then3, label %ifend5 then3: @@ -174519,7 +175279,7 @@ then3: br label %ret ifend5: %t11 = load ptr, ptr %t4 - %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str13666) + %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str13808) %t13 = icmp ne i32 %t12, 0 br i1 %t13, label %then6, label %ifend8 then6: @@ -174527,7 +175287,7 @@ then6: br label %ret ifend8: %t14 = load ptr, ptr %t4 - %t15 = call i32 @lp_str_eq(ptr %t14, ptr @.str13667) + %t15 = call i32 @lp_str_eq(ptr %t14, ptr @.str13809) %t16 = icmp ne i32 %t15, 0 br i1 %t16, label %then9, label %ifend11 then9: @@ -174535,7 +175295,7 @@ then9: br label %ret ifend11: %t17 = load ptr, ptr %t4 - %t18 = call i32 @lp_str_eq(ptr %t17, ptr @.str13668) + %t18 = call i32 @lp_str_eq(ptr %t17, ptr @.str13810) %t19 = icmp ne i32 %t18, 0 br i1 %t19, label %then12, label %ifend14 then12: @@ -174543,7 +175303,7 @@ then12: br label %ret ifend14: %t20 = load ptr, ptr %t4 - %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str13669) + %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str13811) %t22 = icmp ne i32 %t21, 0 br i1 %t22, label %then15, label %ifend17 then15: @@ -174551,7 +175311,7 @@ then15: br label %ret ifend17: %t23 = load ptr, ptr %t4 - %t24 = call i32 @lp_str_eq(ptr %t23, ptr @.str13670) + %t24 = call i32 @lp_str_eq(ptr %t23, ptr @.str13812) %t25 = icmp ne i32 %t24, 0 br i1 %t25, label %then18, label %ifend20 then18: @@ -174603,7 +175363,7 @@ wbody1: br i1 %t24, label %ixok3, label %ixbad4 ixbad4: %t25 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str13671, i32 %t19, i32 %t23) + call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str13813, i32 %t19, i32 %t23) call void @exit(i32 1) unreachable ixok3: @@ -174630,7 +175390,7 @@ then5: br i1 %t43, label %ixok8, label %ixbad9 ixbad9: %t44 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str13672, i32 %t38, i32 %t42) + call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str13814, i32 %t38, i32 %t42) call void @exit(i32 1) unreachable ixok8: @@ -174676,7 +175436,7 @@ entry: br i1 %t7, label %ixok0, label %ixbad1 ixbad1: %t8 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t8, ptr @.fmt_bounds, ptr @.str13673, i32 %t2, i32 %t6) + call i32 (ptr, ptr, ...) @fprintf(ptr %t8, ptr @.fmt_bounds, ptr @.str13815, i32 %t2, i32 %t6) call void @exit(i32 1) unreachable ixok0: @@ -174724,7 +175484,7 @@ wbody3: br i1 %t42, label %ixok5, label %ixbad6 ixbad6: %t43 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13674, i32 %t37, i32 %t41) + call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13816, i32 %t37, i32 %t41) call void @exit(i32 1) unreachable ixok5: @@ -174795,7 +175555,7 @@ grow9: put10: %t89 = load ptr, ptr %t76 %t90 = getelementptr inbounds ptr, ptr %t89, i32 %t77 - store ptr @.str13675, ptr %t90 + store ptr @.str13817, ptr %t90 %t91 = add i32 %t77, 1 store i32 %t91, ptr %t74 %t92 = load ptr, ptr %t72 @@ -174822,7 +175582,7 @@ grow11: put12: %t108 = load ptr, ptr %t95 %t109 = getelementptr inbounds ptr, ptr %t108, i32 %t96 - store ptr @.str13676, ptr %t109 + store ptr @.str13818, ptr %t109 %t110 = add i32 %t96, 1 store i32 %t110, ptr %t93 %t111 = load ptr, ptr %t72 @@ -174849,7 +175609,7 @@ grow13: put14: %t127 = load ptr, ptr %t114 %t128 = getelementptr inbounds ptr, ptr %t127, i32 %t115 - store ptr @.str13677, ptr %t128 + store ptr @.str13819, ptr %t128 %t129 = add i32 %t115, 1 store i32 %t129, ptr %t112 %t130 = load ptr, ptr %t72 @@ -174876,7 +175636,7 @@ grow15: put16: %t146 = load ptr, ptr %t133 %t147 = getelementptr inbounds ptr, ptr %t146, i32 %t134 - store ptr @.str13678, ptr %t147 + store ptr @.str13820, ptr %t147 %t148 = add i32 %t134, 1 store i32 %t148, ptr %t131 store i32 0, ptr %t149 @@ -174902,7 +175662,7 @@ wbody18: br i1 %t164, label %ixok20, label %ixbad21 ixbad21: %t165 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t165, ptr @.fmt_bounds, ptr @.str13679, i32 %t159, i32 %t163) + call i32 (ptr, ptr, ...) @fprintf(ptr %t165, ptr @.fmt_bounds, ptr @.str13821, i32 %t159, i32 %t163) call void @exit(i32 1) unreachable ixok20: @@ -174924,7 +175684,7 @@ then22: br i1 %t178, label %ixok25, label %ixbad26 ixbad26: %t179 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t179, ptr @.fmt_bounds, ptr @.str13680, i32 %t173, i32 %t177) + call i32 (ptr, ptr, ...) @fprintf(ptr %t179, ptr @.fmt_bounds, ptr @.str13822, i32 %t173, i32 %t177) call void @exit(i32 1) unreachable ixok25: @@ -174949,7 +175709,7 @@ wbody28: br i1 %t193, label %ixok30, label %ixbad31 ixbad31: %t194 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t194, ptr @.fmt_bounds, ptr @.str13681, i32 %t188, i32 %t192) + call i32 (ptr, ptr, ...) @fprintf(ptr %t194, ptr @.fmt_bounds, ptr @.str13823, i32 %t188, i32 %t192) call void @exit(i32 1) unreachable ixok30: @@ -174965,7 +175725,7 @@ ixok30: br i1 %t203, label %ixok32, label %ixbad33 ixbad33: %t204 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t204, ptr @.fmt_bounds, ptr @.str13682, i32 %t198, i32 %t202) + call i32 (ptr, ptr, ...) @fprintf(ptr %t204, ptr @.fmt_bounds, ptr @.str13824, i32 %t198, i32 %t202) call void @exit(i32 1) unreachable ixok32: @@ -174993,7 +175753,7 @@ then34: br i1 %t223, label %ixok37, label %ixbad38 ixbad38: %t224 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t224, ptr @.fmt_bounds, ptr @.str13683, i32 %t218, i32 %t222) + call i32 (ptr, ptr, ...) @fprintf(ptr %t224, ptr @.fmt_bounds, ptr @.str13825, i32 %t218, i32 %t222) call void @exit(i32 1) unreachable ixok37: @@ -175046,7 +175806,7 @@ else35: br i1 %t257, label %ixok41, label %ixbad42 ixbad42: %t258 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t258, ptr @.fmt_bounds, ptr @.str13684, i32 %t252, i32 %t256) + call i32 (ptr, ptr, ...) @fprintf(ptr %t258, ptr @.fmt_bounds, ptr @.str13826, i32 %t252, i32 %t256) call void @exit(i32 1) unreachable ixok41: @@ -175166,7 +175926,7 @@ wbody5: br i1 %t64, label %ixok7, label %ixbad8 ixbad8: %t65 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t65, ptr @.fmt_bounds, ptr @.str13685, i32 %t59, i32 %t63) + call i32 (ptr, ptr, ...) @fprintf(ptr %t65, ptr @.fmt_bounds, ptr @.str13827, i32 %t59, i32 %t63) call void @exit(i32 1) unreachable ixok7: @@ -175240,7 +176000,7 @@ wbody1: br i1 %t33, label %ixok3, label %ixbad4 ixbad4: %t34 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str13686, i32 %t28, i32 %t32) + call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str13828, i32 %t28, i32 %t32) call void @exit(i32 1) unreachable ixok3: @@ -175265,7 +176025,7 @@ sc5: br i1 %t49, label %ixok7, label %ixbad8 ixbad8: %t50 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str13687, i32 %t44, i32 %t48) + call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str13829, i32 %t44, i32 %t48) call void @exit(i32 1) unreachable ixok7: @@ -175324,7 +176084,7 @@ put13: br i1 %t89, label %ixok14, label %ixbad15 ixbad15: %t90 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t90, ptr @.fmt_bounds, ptr @.str13688, i32 %t84, i32 %t88) + call i32 (ptr, ptr, ...) @fprintf(ptr %t90, ptr @.fmt_bounds, ptr @.str13830, i32 %t84, i32 %t88) call void @exit(i32 1) unreachable ixok14: @@ -175373,7 +176133,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13689, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13831, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -175398,7 +176158,7 @@ sc5: br i1 %t31, label %ixok7, label %ixbad8 ixbad8: %t32 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str13690, i32 %t26, i32 %t30) + call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str13832, i32 %t26, i32 %t30) call void @exit(i32 1) unreachable ixok7: @@ -175483,7 +176243,7 @@ wbody4: br i1 %t28, label %ixok6, label %ixbad7 ixbad7: %t29 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str13691, i32 %t23, i32 %t27) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str13833, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok6: @@ -175508,7 +176268,7 @@ sc8: br i1 %t44, label %ixok10, label %ixbad11 ixbad11: %t45 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t45, ptr @.fmt_bounds, ptr @.str13692, i32 %t39, i32 %t43) + call i32 (ptr, ptr, ...) @fprintf(ptr %t45, ptr @.fmt_bounds, ptr @.str13834, i32 %t39, i32 %t43) call void @exit(i32 1) unreachable ixok10: @@ -175537,7 +176297,7 @@ then12: br i1 %t62, label %ixok15, label %ixbad16 ixbad16: %t63 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t63, ptr @.fmt_bounds, ptr @.str13693, i32 %t57, i32 %t61) + call i32 (ptr, ptr, ...) @fprintf(ptr %t63, ptr @.fmt_bounds, ptr @.str13835, i32 %t57, i32 %t61) call void @exit(i32 1) unreachable ixok15: @@ -175560,7 +176320,7 @@ then17: br i1 %t77, label %ixok20, label %ixbad21 ixbad21: %t78 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t78, ptr @.fmt_bounds, ptr @.str13694, i32 %t72, i32 %t76) + call i32 (ptr, ptr, ...) @fprintf(ptr %t78, ptr @.fmt_bounds, ptr @.str13836, i32 %t72, i32 %t76) call void @exit(i32 1) unreachable ixok20: @@ -175601,13 +176361,13 @@ wbody23: br i1 %t98, label %ixok25, label %ixbad26 ixbad26: %t99 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t99, ptr @.fmt_bounds, ptr @.str13695, i32 %t93, i32 %t97) + call i32 (ptr, ptr, ...) @fprintf(ptr %t99, ptr @.fmt_bounds, ptr @.str13837, i32 %t93, i32 %t97) call void @exit(i32 1) unreachable ixok25: %t100 = getelementptr inbounds ptr, ptr %t95, i32 %t93 %t101 = load ptr, ptr %t100 - %t102 = call ptr @fn_ui_prop(ptr %t101, ptr @.str13696) + %t102 = call ptr @fn_ui_prop(ptr %t101, ptr @.str13838) store ptr %t102, ptr %t103 %t104 = load ptr, ptr %t103 %t105 = icmp ne ptr %t104, null @@ -175736,21 +176496,21 @@ entry: store i32 %arg_idx, ptr %t0 store i32 %arg_key, ptr %t1 store ptr %arg_val, ptr %t2 - %t3 = call ptr @fn_fn_sym(ptr @.str13698) - %t4 = call ptr @lp_str_concat(ptr @.str13697, ptr %t3) - %t5 = call ptr @lp_str_concat(ptr %t4, ptr @.str13699) + %t3 = call ptr @fn_fn_sym(ptr @.str13840) + %t4 = call ptr @lp_str_concat(ptr @.str13839, ptr %t3) + %t5 = call ptr @lp_str_concat(ptr %t4, ptr @.str13841) call void @fn_emit(ptr %t5) %t6 = load i32, ptr %t0 %t7 = call ptr @fn_itoa(i32 %t6) call void @fn_emit(ptr %t7) - call void @fn_emit(ptr @.str13700) + call void @fn_emit(ptr @.str13842) %t8 = load i32, ptr %t1 %t9 = call ptr @fn_itoa(i32 %t8) call void @fn_emit(ptr %t9) - call void @fn_emit(ptr @.str13701) + call void @fn_emit(ptr @.str13843) %t10 = load ptr, ptr %t2 call void @fn_emit(ptr %t10) - call void @fn_emit(ptr @.str13702) + call void @fn_emit(ptr @.str13844) br label %ret ret: ret void @@ -175762,7 +176522,7 @@ entry: %t0 = alloca ptr store ptr %arg_k, ptr %t0 %t1 = load ptr, ptr %t0 - %t2 = call i32 @lp_str_eq(ptr %t1, ptr @.str13703) + %t2 = call i32 @lp_str_eq(ptr %t1, ptr @.str13845) %t3 = icmp ne i32 %t2, 0 br i1 %t3, label %then0, label %ifend2 then0: @@ -175770,7 +176530,7 @@ then0: br label %ret ifend2: %t4 = load ptr, ptr %t0 - %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str13704) + %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str13846) %t6 = icmp ne i32 %t5, 0 br i1 %t6, label %then3, label %ifend5 then3: @@ -175778,7 +176538,7 @@ then3: br label %ret ifend5: %t7 = load ptr, ptr %t0 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str13705) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str13847) %t9 = icmp ne i32 %t8, 0 br i1 %t9, label %then6, label %ifend8 then6: @@ -175786,7 +176546,7 @@ then6: br label %ret ifend8: %t10 = load ptr, ptr %t0 - %t11 = call i32 @lp_str_eq(ptr %t10, ptr @.str13706) + %t11 = call i32 @lp_str_eq(ptr %t10, ptr @.str13848) %t12 = icmp ne i32 %t11, 0 br i1 %t12, label %then9, label %ifend11 then9: @@ -175794,7 +176554,7 @@ then9: br label %ret ifend11: %t13 = load ptr, ptr %t0 - %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str13707) + %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str13849) %t15 = icmp ne i32 %t14, 0 br i1 %t15, label %then12, label %ifend14 then12: @@ -175802,7 +176562,7 @@ then12: br label %ret ifend14: %t16 = load ptr, ptr %t0 - %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str13708) + %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str13850) %t18 = icmp ne i32 %t17, 0 br i1 %t18, label %then15, label %ifend17 then15: @@ -175810,7 +176570,7 @@ then15: br label %ret ifend17: %t19 = load ptr, ptr %t0 - %t20 = call i32 @lp_str_eq(ptr %t19, ptr @.str13709) + %t20 = call i32 @lp_str_eq(ptr %t19, ptr @.str13851) %t21 = icmp ne i32 %t20, 0 br i1 %t21, label %then18, label %ifend20 then18: @@ -175818,7 +176578,7 @@ then18: br label %ret ifend20: %t22 = load ptr, ptr %t0 - %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str13710) + %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str13852) %t24 = icmp ne i32 %t23, 0 br i1 %t24, label %then21, label %ifend23 then21: @@ -175826,7 +176586,7 @@ then21: br label %ret ifend23: %t25 = load ptr, ptr %t0 - %t26 = call i32 @lp_str_eq(ptr %t25, ptr @.str13711) + %t26 = call i32 @lp_str_eq(ptr %t25, ptr @.str13853) %t27 = icmp ne i32 %t26, 0 br i1 %t27, label %then24, label %ifend26 then24: @@ -175834,7 +176594,7 @@ then24: br label %ret ifend26: %t28 = load ptr, ptr %t0 - %t29 = call i32 @lp_str_eq(ptr %t28, ptr @.str13712) + %t29 = call i32 @lp_str_eq(ptr %t28, ptr @.str13854) %t30 = icmp ne i32 %t29, 0 br i1 %t30, label %then27, label %ifend29 then27: @@ -175842,7 +176602,7 @@ then27: br label %ret ifend29: %t31 = load ptr, ptr %t0 - %t32 = call i32 @lp_str_eq(ptr %t31, ptr @.str13713) + %t32 = call i32 @lp_str_eq(ptr %t31, ptr @.str13855) %t33 = icmp ne i32 %t32, 0 br i1 %t33, label %then30, label %ifend32 then30: @@ -175850,7 +176610,7 @@ then30: br label %ret ifend32: %t34 = load ptr, ptr %t0 - %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str13714) + %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str13856) %t36 = icmp ne i32 %t35, 0 br i1 %t36, label %then33, label %ifend35 then33: @@ -175858,7 +176618,7 @@ then33: br label %ret ifend35: %t37 = load ptr, ptr %t0 - %t38 = call i32 @lp_str_eq(ptr %t37, ptr @.str13715) + %t38 = call i32 @lp_str_eq(ptr %t37, ptr @.str13857) %t39 = icmp ne i32 %t38, 0 br i1 %t39, label %then36, label %ifend38 then36: @@ -175866,7 +176626,7 @@ then36: br label %ret ifend38: %t40 = load ptr, ptr %t0 - %t41 = call i32 @lp_str_eq(ptr %t40, ptr @.str13716) + %t41 = call i32 @lp_str_eq(ptr %t40, ptr @.str13858) %t42 = icmp ne i32 %t41, 0 br i1 %t42, label %then39, label %ifend41 then39: @@ -175917,16 +176677,16 @@ entry: store ptr %t3, ptr %t4 %t5 = load ptr, ptr %t1 store ptr %t5, ptr @g_code - %t6 = call ptr @fn_fn_sym(ptr @.str13718) - %t7 = call ptr @lp_str_concat(ptr @.str13717, ptr %t6) - %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str13719) + %t6 = call ptr @fn_fn_sym(ptr @.str13860) + %t7 = call ptr @lp_str_concat(ptr @.str13859, ptr %t6) + %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str13861) call void @fn_emit(ptr %t8) %t9 = load ptr, ptr @g_uiw %t10 = getelementptr inbounds %LSlice, ptr %t9, i32 0, i32 1 %t11 = load i32, ptr %t10 %t12 = call ptr @fn_itoa(i32 %t11) call void @fn_emit(ptr %t12) - call void @fn_emit(ptr @.str13720) + call void @fn_emit(ptr @.str13862) store i32 0, ptr %t13 br label %wcond0 wcond0: @@ -175949,7 +176709,7 @@ wbody1: br i1 %t27, label %ixok3, label %ixbad4 ixbad4: %t28 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t28, ptr @.fmt_bounds, ptr @.str13721, i32 %t22, i32 %t26) + call i32 (ptr, ptr, ...) @fprintf(ptr %t28, ptr @.fmt_bounds, ptr @.str13863, i32 %t22, i32 %t26) call void @exit(i32 1) unreachable ixok3: @@ -175974,7 +176734,7 @@ ixok3: br i1 %t45, label %ixok5, label %ixbad6 ixbad6: %t46 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t46, ptr @.fmt_bounds, ptr @.str13722, i32 %t40, i32 %t44) + call i32 (ptr, ptr, ...) @fprintf(ptr %t46, ptr @.fmt_bounds, ptr @.str13864, i32 %t40, i32 %t44) call void @exit(i32 1) unreachable ixok5: @@ -175989,7 +176749,7 @@ ixok5: br i1 %t53, label %then7, label %ifend9 then7: %t54 = load i32, ptr %t13 - call void @fn_ll_ui_set(i32 %t54, i32 17, ptr @.str13723) + call void @fn_ll_ui_set(i32 %t54, i32 17, ptr @.str13865) br label %ifend9 ifend9: %t55 = load i32, ptr %t13 @@ -176017,7 +176777,7 @@ wbody11: br i1 %t72, label %ixok13, label %ixbad14 ixbad14: %t73 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t73, ptr @.fmt_bounds, ptr @.str13724, i32 %t67, i32 %t71) + call i32 (ptr, ptr, ...) @fprintf(ptr %t73, ptr @.fmt_bounds, ptr @.str13866, i32 %t67, i32 %t71) call void @exit(i32 1) unreachable ixok13: @@ -176033,14 +176793,14 @@ ixok13: %t83 = load ptr, ptr %t82 store ptr %t83, ptr %t84 %t86 = load ptr, ptr %t80 - %t87 = call i32 @lp_str_eq(ptr %t86, ptr @.str13725) + %t87 = call i32 @lp_str_eq(ptr %t86, ptr @.str13867) %t88 = icmp ne i32 %t87, 0 %t89 = zext i1 %t88 to i32 store i32 %t89, ptr %t85 br i1 %t88, label %scend16, label %sc15 sc15: %t90 = load ptr, ptr %t80 - %t91 = call i32 @lp_str_eq(ptr %t90, ptr @.str13726) + %t91 = call i32 @lp_str_eq(ptr %t90, ptr @.str13868) %t92 = icmp ne i32 %t91, 0 %t93 = zext i1 %t92 to i32 store i32 %t93, ptr %t85 @@ -176056,37 +176816,37 @@ then17: br label %wcond10 ifend19: %t98 = load ptr, ptr %t80 - %t99 = call i32 @lp_str_eq(ptr %t98, ptr @.str13727) + %t99 = call i32 @lp_str_eq(ptr %t98, ptr @.str13869) %t100 = icmp ne i32 %t99, 0 br i1 %t100, label %then20, label %else21 then20: %t101 = load ptr, ptr %t84 %t102 = call ptr @fn_emit_expr(ptr %t101) store ptr %t102, ptr %t103 - %t104 = call ptr @fn_fn_sym(ptr @.str13729) - %t105 = call ptr @lp_str_concat(ptr @.str13728, ptr %t104) - %t106 = call ptr @lp_str_concat(ptr %t105, ptr @.str13730) + %t104 = call ptr @fn_fn_sym(ptr @.str13871) + %t105 = call ptr @lp_str_concat(ptr @.str13870, ptr %t104) + %t106 = call ptr @lp_str_concat(ptr %t105, ptr @.str13872) call void @fn_emit(ptr %t106) %t107 = load i32, ptr %t13 %t108 = call ptr @fn_itoa(i32 %t107) call void @fn_emit(ptr %t108) - call void @fn_emit(ptr @.str13731) + call void @fn_emit(ptr @.str13873) %t109 = load ptr, ptr %t103 %t110 = getelementptr inbounds %Cmp_Val, ptr %t109, i32 0, i32 0 %t111 = load ptr, ptr %t110 call void @fn_emit(ptr %t111) - call void @fn_emit(ptr @.str13732) + call void @fn_emit(ptr @.str13874) br label %ifend22 else21: %t113 = load ptr, ptr %t80 - %t114 = call i32 @lp_str_eq(ptr %t113, ptr @.str13733) + %t114 = call i32 @lp_str_eq(ptr %t113, ptr @.str13875) %t115 = icmp ne i32 %t114, 0 %t116 = zext i1 %t115 to i32 store i32 %t116, ptr %t112 br i1 %t115, label %scend24, label %sc23 sc23: %t117 = load ptr, ptr %t80 - %t118 = call i32 @lp_str_eq(ptr %t117, ptr @.str13734) + %t118 = call i32 @lp_str_eq(ptr %t117, ptr @.str13876) %t119 = icmp ne i32 %t118, 0 %t120 = zext i1 %t119 to i32 store i32 %t120, ptr %t112 @@ -176099,18 +176859,18 @@ then25: %t123 = load ptr, ptr %t84 %t124 = call ptr @fn_emit_expr(ptr %t123) store ptr %t124, ptr %t125 - %t126 = call ptr @fn_fn_sym(ptr @.str13736) - %t127 = call ptr @lp_str_concat(ptr @.str13735, ptr %t126) - %t128 = call ptr @lp_str_concat(ptr %t127, ptr @.str13737) + %t126 = call ptr @fn_fn_sym(ptr @.str13878) + %t127 = call ptr @lp_str_concat(ptr @.str13877, ptr %t126) + %t128 = call ptr @lp_str_concat(ptr %t127, ptr @.str13879) %t129 = load ptr, ptr %t125 %t130 = getelementptr inbounds %Cmp_Val, ptr %t129, i32 0, i32 0 %t131 = load ptr, ptr %t130 %t132 = call ptr @lp_str_concat(ptr %t128, ptr %t131) - %t133 = call ptr @lp_str_concat(ptr %t132, ptr @.str13738) + %t133 = call ptr @lp_str_concat(ptr %t132, ptr @.str13880) %t134 = call ptr @fn_emit_bind(ptr %t133) store ptr %t134, ptr %t135 %t136 = load ptr, ptr %t80 - %t137 = call i32 @lp_str_eq(ptr %t136, ptr @.str13739) + %t137 = call i32 @lp_str_eq(ptr %t136, ptr @.str13881) %t138 = icmp ne i32 %t137, 0 br i1 %t138, label %then28, label %else29 then28: @@ -176127,7 +176887,7 @@ ifend30: br label %ifend27 else26: %t143 = load ptr, ptr %t80 - %t144 = call i32 @lp_str_eq(ptr %t143, ptr @.str13740) + %t144 = call i32 @lp_str_eq(ptr %t143, ptr @.str13882) %t145 = icmp ne i32 %t144, 0 br i1 %t145, label %then31, label %else32 then31: @@ -176143,7 +176903,7 @@ then34: %t153 = load ptr, ptr %t84 %t154 = getelementptr inbounds %Cmp_Node, ptr %t153, i32 0, i32 1 %t155 = load ptr, ptr %t154 - %t156 = call i32 @lp_str_eq(ptr %t155, ptr @.str13741) + %t156 = call i32 @lp_str_eq(ptr %t155, ptr @.str13883) %t157 = icmp ne i32 %t156, 0 br i1 %t157, label %then37, label %ifend39 then37: @@ -176153,7 +176913,7 @@ ifend39: %t158 = load ptr, ptr %t84 %t159 = getelementptr inbounds %Cmp_Node, ptr %t158, i32 0, i32 1 %t160 = load ptr, ptr %t159 - %t161 = call i32 @lp_str_eq(ptr %t160, ptr @.str13742) + %t161 = call i32 @lp_str_eq(ptr %t160, ptr @.str13884) %t162 = icmp ne i32 %t161, 0 br i1 %t162, label %then40, label %ifend42 then40: @@ -176217,7 +176977,7 @@ scend47: br i1 %t200, label %then48, label %ifend50 then48: %t201 = load i32, ptr %t13 - call void @fn_ll_ui_set(i32 %t201, i32 6, ptr @.str13743) + call void @fn_ll_ui_set(i32 %t201, i32 6, ptr @.str13885) br label %ifend50 ifend50: br label %ifend45 @@ -176240,14 +177000,14 @@ wend12: wend2: %t206 = load ptr, ptr %t4 store ptr %t206, ptr @g_code - call void @fn_emit(ptr @.str13744) + call void @fn_emit(ptr @.str13886) %t207 = load ptr, ptr @g_falloc %t208 = call ptr @fn_buf_str(ptr %t207) call void @fn_emit(ptr %t208) %t209 = load ptr, ptr %t1 %t210 = call ptr @fn_buf_str(ptr %t209) call void @fn_emit(ptr %t210) - call void @fn_emit(ptr @.str13745) + call void @fn_emit(ptr @.str13887) br label %ret ret: ret void @@ -176278,7 +177038,7 @@ wbody1: %t14 = icmp ne i32 %t13, 0 br i1 %t14, label %then3, label %ifend5 then3: - call void @fn_emit(ptr @.str13746) + call void @fn_emit(ptr @.str13888) br label %ifend5 ifend5: %t15 = load ptr, ptr %t0 @@ -176293,7 +177053,7 @@ ifend5: br i1 %t23, label %ixok6, label %ixbad7 ixbad7: %t24 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str13747, i32 %t18, i32 %t22) + call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str13889, i32 %t18, i32 %t22) call void @exit(i32 1) unreachable ixok6: @@ -176303,7 +177063,7 @@ ixok6: %t28 = load ptr, ptr %t27 %t29 = call ptr @fn_llty(ptr %t28) call void @fn_emit(ptr %t29) - call void @fn_emit(ptr @.str13748) + call void @fn_emit(ptr @.str13890) %t30 = load ptr, ptr %t0 %t31 = getelementptr inbounds %Cmp_Node, ptr %t30, i32 0, i32 7 %t32 = load ptr, ptr %t31 @@ -176316,7 +177076,7 @@ ixok6: br i1 %t38, label %ixok8, label %ixbad9 ixbad9: %t39 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str13749, i32 %t33, i32 %t37) + call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str13891, i32 %t33, i32 %t37) call void @exit(i32 1) unreachable ixok8: @@ -176373,19 +177133,19 @@ entry: %t14 = call ptr @fn_llty(ptr %t13) store ptr %t14, ptr %t15 %t16 = load ptr, ptr %t15 - %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str13750) + %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str13892) %t18 = icmp eq i32 %t17, 0 %t19 = zext i1 %t18 to i32 %t20 = icmp ne i32 %t19, 0 br i1 %t20, label %then0, label %ifend2 then0: %t21 = load ptr, ptr @g_falloc - call void @fn_buf_puts(ptr %t21, ptr @.str13751) + call void @fn_buf_puts(ptr %t21, ptr @.str13893) %t22 = load ptr, ptr @g_falloc %t23 = load ptr, ptr %t15 call void @fn_buf_puts(ptr %t22, ptr %t23) %t24 = load ptr, ptr @g_falloc - call void @fn_buf_puts(ptr %t24, ptr @.str13752) + call void @fn_buf_puts(ptr %t24, ptr @.str13894) br label %ifend2 ifend2: store i32 0, ptr %t25 @@ -176414,7 +177174,7 @@ wbody4: br i1 %t43, label %ixok6, label %ixbad7 ixbad7: %t44 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str13753, i32 %t38, i32 %t42) + call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str13895, i32 %t38, i32 %t42) call void @exit(i32 1) unreachable ixok6: @@ -176427,21 +177187,21 @@ ixok6: %t51 = call ptr @fn_llty(ptr %t50) %t52 = call ptr @fn_emit_alloca(ptr %t51) store ptr %t52, ptr %t53 - call void @fn_emit(ptr @.str13754) + call void @fn_emit(ptr @.str13896) %t54 = load ptr, ptr %t47 %t55 = getelementptr inbounds %Cmp_Node, ptr %t54, i32 0, i32 3 %t56 = load ptr, ptr %t55 %t57 = call ptr @fn_llty(ptr %t56) call void @fn_emit(ptr %t57) - call void @fn_emit(ptr @.str13755) + call void @fn_emit(ptr @.str13897) %t58 = load ptr, ptr %t47 %t59 = getelementptr inbounds %Cmp_Node, ptr %t58, i32 0, i32 1 %t60 = load ptr, ptr %t59 call void @fn_emit(ptr %t60) - call void @fn_emit(ptr @.str13756) + call void @fn_emit(ptr @.str13898) %t61 = load ptr, ptr %t53 call void @fn_emit(ptr %t61) - call void @fn_emit(ptr @.str13757) + call void @fn_emit(ptr @.str13899) %t62 = load ptr, ptr %t47 %t63 = getelementptr inbounds %Cmp_Node, ptr %t62, i32 0, i32 1 %t64 = load ptr, ptr %t63 @@ -176460,7 +177220,7 @@ wend5: %t73 = load ptr, ptr %t72 call void @fn_emit_block(ptr %t73) %t75 = load ptr, ptr %t15 - %t76 = call i32 @lp_str_eq(ptr %t75, ptr @.str13758) + %t76 = call i32 @lp_str_eq(ptr %t75, ptr @.str13900) %t77 = icmp eq i32 %t76, 0 %t78 = zext i1 %t77 to i32 %t79 = icmp ne i32 %t78, 0 @@ -176486,8 +177246,8 @@ then10: %t91 = load ptr, ptr %t0 %t92 = getelementptr inbounds %Cmp_Node, ptr %t91, i32 0, i32 1 %t93 = load ptr, ptr %t92 - %t94 = call ptr @lp_str_concat(ptr @.str13759, ptr %t93) - %t95 = call ptr @lp_str_concat(ptr %t94, ptr @.str13760) + %t94 = call ptr @lp_str_concat(ptr @.str13901, ptr %t93) + %t95 = call ptr @lp_str_concat(ptr %t94, ptr @.str13902) %t96 = load ptr, ptr @g_ret_ty %t97 = call ptr @lp_str_concat(ptr %t95, ptr %t96) call void @fn_perr(ptr %t97) @@ -176499,54 +177259,54 @@ ifend12: %t101 = icmp ne i32 %t100, 0 br i1 %t101, label %then13, label %ifend15 then13: - call void @fn_emit(ptr @.str13761) + call void @fn_emit(ptr @.str13903) br label %ifend15 ifend15: - call void @fn_emit(ptr @.str13762) + call void @fn_emit(ptr @.str13904) %t102 = load ptr, ptr %t15 - %t103 = call i32 @lp_str_eq(ptr %t102, ptr @.str13763) + %t103 = call i32 @lp_str_eq(ptr %t102, ptr @.str13905) %t104 = icmp ne i32 %t103, 0 br i1 %t104, label %then16, label %else17 then16: - call void @fn_emit(ptr @.str13764) + call void @fn_emit(ptr @.str13906) br label %ifend18 else17: %t105 = load ptr, ptr %t15 - %t106 = call ptr @lp_str_concat(ptr @.str13765, ptr %t105) - %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str13766) + %t106 = call ptr @lp_str_concat(ptr @.str13907, ptr %t105) + %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str13908) %t108 = call ptr @fn_emit_bind(ptr %t107) store ptr %t108, ptr %t109 - call void @fn_emit(ptr @.str13767) + call void @fn_emit(ptr @.str13909) %t110 = load ptr, ptr %t15 call void @fn_emit(ptr %t110) - call void @fn_emit(ptr @.str13768) + call void @fn_emit(ptr @.str13910) %t111 = load ptr, ptr %t109 call void @fn_emit(ptr %t111) - call void @fn_emit(ptr @.str13769) + call void @fn_emit(ptr @.str13911) br label %ifend18 ifend18: %t112 = load ptr, ptr %t11 store ptr %t112, ptr @g_code - call void @fn_emit(ptr @.str13770) + call void @fn_emit(ptr @.str13912) %t113 = load ptr, ptr %t15 call void @fn_emit(ptr %t113) - call void @fn_emit(ptr @.str13771) + call void @fn_emit(ptr @.str13913) %t114 = load ptr, ptr %t0 %t115 = getelementptr inbounds %Cmp_Node, ptr %t114, i32 0, i32 1 %t116 = load ptr, ptr %t115 call void @fn_emit(ptr %t116) - call void @fn_emit(ptr @.str13772) + call void @fn_emit(ptr @.str13914) %t117 = load ptr, ptr %t0 call void @fn_emit_params_sig(ptr %t117) - call void @fn_emit(ptr @.str13773) + call void @fn_emit(ptr @.str13915) %t118 = load ptr, ptr @g_falloc %t119 = call ptr @fn_buf_str(ptr %t118) call void @fn_emit(ptr %t119) %t120 = load ptr, ptr %t8 %t121 = call ptr @fn_buf_str(ptr %t120) call void @fn_emit(ptr %t121) - call void @fn_emit(ptr @.str13774) - store ptr @.str13775, ptr @g_g_det_ctx + call void @fn_emit(ptr @.str13916) + store ptr @.str13917, ptr @g_g_det_ctx br label %ret ret: ret void @@ -176557,14 +177317,14 @@ entry: %t0 = alloca ptr %t2 = alloca ptr %t5 = alloca ptr - %t23 = alloca ptr + %t25 = alloca ptr store ptr %arg_d, ptr %t0 store i32 0, ptr @g_ll_t store i32 0, ptr @g_ll_lbl store i32 0, ptr @g_g_term call void @fn_loc_reset() store i32 0, ptr @g_nloop - store ptr @.str13776, ptr @g_ret_ty + store ptr @.str13918, ptr @g_ret_ty %t1 = call ptr @fn_buf_new() store ptr %t1, ptr %t2 %t3 = call ptr @fn_buf_new() @@ -176574,54 +177334,61 @@ entry: %t6 = load ptr, ptr %t2 store ptr %t6, ptr @g_code %t7 = load ptr, ptr @g_falloc - call void @fn_buf_puts(ptr %t7, ptr @.str13777) - call void @fn_emit(ptr @.str13778) - call void @fn_emit(ptr @.str13779) - call void @fn_emit(ptr @.str13780) - call void @fn_emit(ptr @.str13781) - %t8 = call ptr @fn_find_fn(ptr @.str13782) - %t9 = icmp ne ptr %t8, null - %t10 = zext i1 %t9 to i32 - %t11 = icmp ne i32 %t10, 0 - br i1 %t11, label %then0, label %ifend2 + call void @fn_buf_puts(ptr %t7, ptr @.str13919) + call void @fn_emit(ptr @.str13920) + call void @fn_emit(ptr @.str13921) + call void @fn_emit(ptr @.str13922) + call void @fn_emit(ptr @.str13923) + %t8 = call i32 @fn_has_ecs() + %t9 = icmp ne i32 %t8, 0 + br i1 %t9, label %then0, label %ifend2 then0: - %t12 = call ptr @fn_fn_sym(ptr @.str13784) - %t13 = call ptr @lp_str_concat(ptr @.str13783, ptr %t12) - %t14 = call ptr @lp_str_concat(ptr %t13, ptr @.str13785) - call void @fn_emit(ptr %t14) + call void @fn_emit(ptr @.str13924) br label %ifend2 ifend2: - call void @fn_emit(ptr @.str13786) - %t15 = load ptr, ptr %t0 - %t16 = getelementptr inbounds %Cmp_Node, ptr %t15, i32 0, i32 4 - %t17 = load ptr, ptr %t16 - call void @fn_emit_block(ptr %t17) - %t18 = load i32, ptr @g_g_term - %t19 = icmp eq i32 %t18, 0 - %t20 = zext i1 %t19 to i32 - %t21 = icmp ne i32 %t20, 0 - br i1 %t21, label %then3, label %ifend5 + %t10 = call ptr @fn_find_fn(ptr @.str13925) + %t11 = icmp ne ptr %t10, null + %t12 = zext i1 %t11 to i32 + %t13 = icmp ne i32 %t12, 0 + br i1 %t13, label %then3, label %ifend5 then3: - call void @fn_emit(ptr @.str13787) + %t14 = call ptr @fn_fn_sym(ptr @.str13927) + %t15 = call ptr @lp_str_concat(ptr @.str13926, ptr %t14) + %t16 = call ptr @lp_str_concat(ptr %t15, ptr @.str13928) + call void @fn_emit(ptr %t16) br label %ifend5 ifend5: - call void @fn_emit(ptr @.str13788) - %t22 = call ptr @fn_emit_bind(ptr @.str13789) - store ptr %t22, ptr %t23 - call void @fn_emit(ptr @.str13790) - %t24 = load ptr, ptr %t23 - call void @fn_emit(ptr %t24) - call void @fn_emit(ptr @.str13791) - %t25 = load ptr, ptr %t5 - store ptr %t25, ptr @g_code - call void @fn_emit(ptr @.str13792) - %t26 = load ptr, ptr @g_falloc - %t27 = call ptr @fn_buf_str(ptr %t26) - call void @fn_emit(ptr %t27) - %t28 = load ptr, ptr %t2 + call void @fn_emit(ptr @.str13929) + %t17 = load ptr, ptr %t0 + %t18 = getelementptr inbounds %Cmp_Node, ptr %t17, i32 0, i32 4 + %t19 = load ptr, ptr %t18 + call void @fn_emit_block(ptr %t19) + %t20 = load i32, ptr @g_g_term + %t21 = icmp eq i32 %t20, 0 + %t22 = zext i1 %t21 to i32 + %t23 = icmp ne i32 %t22, 0 + br i1 %t23, label %then6, label %ifend8 +then6: + call void @fn_emit(ptr @.str13930) + br label %ifend8 +ifend8: + call void @fn_emit(ptr @.str13931) + %t24 = call ptr @fn_emit_bind(ptr @.str13932) + store ptr %t24, ptr %t25 + call void @fn_emit(ptr @.str13933) + %t26 = load ptr, ptr %t25 + call void @fn_emit(ptr %t26) + call void @fn_emit(ptr @.str13934) + %t27 = load ptr, ptr %t5 + store ptr %t27, ptr @g_code + call void @fn_emit(ptr @.str13935) + %t28 = load ptr, ptr @g_falloc %t29 = call ptr @fn_buf_str(ptr %t28) call void @fn_emit(ptr %t29) - call void @fn_emit(ptr @.str13793) + %t30 = load ptr, ptr %t2 + %t31 = call ptr @fn_buf_str(ptr %t30) + call void @fn_emit(ptr %t31) + call void @fn_emit(ptr @.str13936) br label %ret ret: ret void @@ -176640,7 +177407,7 @@ entry: store i32 0, ptr @g_g_term call void @fn_loc_reset() store i32 0, ptr @g_nloop - store ptr @.str13794, ptr @g_ret_ty + store ptr @.str13937, ptr @g_ret_ty %t2 = call ptr @fn_buf_new() store ptr %t2, ptr %t3 %t4 = call ptr @fn_buf_new() @@ -176659,24 +177426,24 @@ entry: %t14 = icmp ne i32 %t13, 0 br i1 %t14, label %then0, label %ifend2 then0: - call void @fn_emit(ptr @.str13795) + call void @fn_emit(ptr @.str13938) br label %ifend2 ifend2: - call void @fn_emit(ptr @.str13796) + call void @fn_emit(ptr @.str13939) %t15 = load ptr, ptr %t6 store ptr %t15, ptr @g_code - call void @fn_emit(ptr @.str13797) + call void @fn_emit(ptr @.str13940) %t16 = load i32, ptr %t1 %t17 = call ptr @fn_itoa(i32 %t16) call void @fn_emit(ptr %t17) - call void @fn_emit(ptr @.str13798) + call void @fn_emit(ptr @.str13941) %t18 = load ptr, ptr @g_falloc %t19 = call ptr @fn_buf_str(ptr %t18) call void @fn_emit(ptr %t19) %t20 = load ptr, ptr %t3 %t21 = call ptr @fn_buf_str(ptr %t20) call void @fn_emit(ptr %t21) - call void @fn_emit(ptr @.str13799) + call void @fn_emit(ptr @.str13942) br label %ret ret: ret void @@ -176700,39 +177467,39 @@ entry: %t96 = alloca ptr %t108 = alloca i32 %t129 = alloca ptr - %t160 = alloca ptr - %t175 = alloca ptr - %t189 = alloca ptr + %t162 = alloca ptr + %t177 = alloca ptr %t191 = alloca ptr %t193 = alloca ptr %t195 = alloca ptr %t197 = alloca ptr - %t202 = alloca ptr - %t221 = alloca ptr - %t226 = alloca ptr - %t239 = alloca ptr - %t244 = alloca ptr - %t257 = alloca ptr - %t262 = alloca ptr + %t199 = alloca ptr + %t204 = alloca ptr + %t223 = alloca ptr + %t228 = alloca ptr + %t241 = alloca ptr + %t246 = alloca ptr + %t259 = alloca ptr %t264 = alloca ptr %t266 = alloca ptr %t268 = alloca ptr - %t289 = alloca ptr - %t294 = alloca ptr - %t314 = alloca ptr + %t270 = alloca ptr + %t291 = alloca ptr + %t296 = alloca ptr %t316 = alloca ptr %t318 = alloca ptr %t320 = alloca ptr - %t325 = alloca ptr - %t330 = alloca ptr - %t337 = alloca ptr - %t355 = alloca ptr - %t362 = alloca ptr - %t373 = alloca ptr - %t378 = alloca ptr - call void @fn_emith(ptr @.str13800) - call void @fn_emith(ptr @.str13801) - call void @fn_emith(ptr @.str13802) + %t322 = alloca ptr + %t327 = alloca ptr + %t332 = alloca ptr + %t339 = alloca ptr + %t357 = alloca ptr + %t364 = alloca ptr + %t375 = alloca ptr + %t380 = alloca ptr + call void @fn_emith(ptr @.str13943) + call void @fn_emith(ptr @.str13944) + call void @fn_emith(ptr @.str13945) store i32 0, ptr %t0 br label %wcond0 wcond0: @@ -176755,7 +177522,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13803, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13946, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -176772,120 +177539,120 @@ wend2: %t22 = icmp ne i32 %t21, 0 br i1 %t22, label %then5, label %ifend7 then5: - call void @fn_emith(ptr @.str13804) + call void @fn_emith(ptr @.str13947) br label %ifend7 ifend7: %t23 = load i32, ptr @g_g_uses_expect_str %t24 = icmp ne i32 %t23, 0 br i1 %t24, label %then8, label %ifend10 then8: - call void @fn_emith(ptr @.str13805) + call void @fn_emith(ptr @.str13948) br label %ifend10 ifend10: %t25 = load i32, ptr @g_g_uses_expect_fp %t26 = icmp ne i32 %t25, 0 br i1 %t26, label %then11, label %ifend13 then11: - call void @fn_emith(ptr @.str13806) + call void @fn_emith(ptr @.str13949) br label %ifend13 ifend13: store i32 0, ptr @g_ll_t store i32 0, ptr @g_ll_lbl - call void @fn_emit(ptr @.str13807) - call void @fn_emit(ptr @.str13808) - call void @fn_emit(ptr @.str13809) - call void @fn_emit(ptr @.str13810) - call void @fn_emit(ptr @.str13811) - call void @fn_emit(ptr @.str13812) - %t27 = call ptr @fn_lbl(ptr @.str13813) + call void @fn_emit(ptr @.str13950) + call void @fn_emit(ptr @.str13951) + call void @fn_emit(ptr @.str13952) + call void @fn_emit(ptr @.str13953) + call void @fn_emit(ptr @.str13954) + call void @fn_emit(ptr @.str13955) + %t27 = call ptr @fn_lbl(ptr @.str13956) store ptr %t27, ptr %t28 - %t29 = call ptr @fn_lbl(ptr @.str13814) + %t29 = call ptr @fn_lbl(ptr @.str13957) store ptr %t29, ptr %t30 - %t31 = call ptr @fn_emit_bind(ptr @.str13815) + %t31 = call ptr @fn_emit_bind(ptr @.str13958) store ptr %t31, ptr %t32 %t33 = load ptr, ptr %t32 - %t34 = call ptr @lp_str_concat(ptr @.str13816, ptr %t33) - %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str13817) + %t34 = call ptr @lp_str_concat(ptr @.str13959, ptr %t33) + %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str13960) %t36 = load ptr, ptr %t28 %t37 = call ptr @lp_str_concat(ptr %t35, ptr %t36) - %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str13818) + %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str13961) %t39 = load ptr, ptr %t30 %t40 = call ptr @lp_str_concat(ptr %t38, ptr %t39) - %t41 = call ptr @lp_str_concat(ptr %t40, ptr @.str13819) + %t41 = call ptr @lp_str_concat(ptr %t40, ptr @.str13962) call void @fn_emit(ptr %t41) %t42 = load ptr, ptr %t28 - %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str13820) + %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str13963) call void @fn_emit(ptr %t43) - %t44 = call ptr @fn_emit_bind(ptr @.str13821) + %t44 = call ptr @fn_emit_bind(ptr @.str13964) store ptr %t44, ptr %t45 %t46 = load ptr, ptr %t45 - %t47 = call ptr @lp_str_concat(ptr @.str13822, ptr %t46) + %t47 = call ptr @lp_str_concat(ptr @.str13965, ptr %t46) %t48 = call ptr @fn_emit_bind(ptr %t47) store ptr %t48, ptr %t49 %t50 = load ptr, ptr %t49 - %t51 = call ptr @lp_str_concat(ptr @.str13823, ptr %t50) - %t52 = call ptr @lp_str_concat(ptr %t51, ptr @.str13824) + %t51 = call ptr @lp_str_concat(ptr @.str13966, ptr %t50) + %t52 = call ptr @lp_str_concat(ptr %t51, ptr @.str13967) call void @fn_emit(ptr %t52) %t53 = load ptr, ptr %t30 - %t54 = call ptr @lp_str_concat(ptr @.str13825, ptr %t53) - %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str13826) + %t54 = call ptr @lp_str_concat(ptr @.str13968, ptr %t53) + %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str13969) call void @fn_emit(ptr %t55) %t56 = load ptr, ptr %t30 - %t57 = call ptr @lp_str_concat(ptr %t56, ptr @.str13827) + %t57 = call ptr @lp_str_concat(ptr %t56, ptr @.str13970) call void @fn_emit(ptr %t57) - %t58 = call ptr @fn_lbl(ptr @.str13828) + %t58 = call ptr @fn_lbl(ptr @.str13971) store ptr %t58, ptr %t59 - %t60 = call ptr @fn_lbl(ptr @.str13829) + %t60 = call ptr @fn_lbl(ptr @.str13972) store ptr %t60, ptr %t61 - %t62 = call ptr @fn_emit_bind(ptr @.str13830) + %t62 = call ptr @fn_emit_bind(ptr @.str13973) store ptr %t62, ptr %t63 %t64 = load ptr, ptr %t63 - %t65 = call ptr @lp_str_concat(ptr @.str13831, ptr %t64) - %t66 = call ptr @lp_str_concat(ptr %t65, ptr @.str13832) + %t65 = call ptr @lp_str_concat(ptr @.str13974, ptr %t64) + %t66 = call ptr @lp_str_concat(ptr %t65, ptr @.str13975) %t67 = call ptr @fn_emit_bind(ptr %t66) store ptr %t67, ptr %t68 - %t69 = call ptr @fn_lbl(ptr @.str13833) + %t69 = call ptr @fn_lbl(ptr @.str13976) store ptr %t69, ptr %t70 %t71 = load ptr, ptr %t68 - %t72 = call ptr @lp_str_concat(ptr @.str13834, ptr %t71) - %t73 = call ptr @lp_str_concat(ptr %t72, ptr @.str13835) + %t72 = call ptr @lp_str_concat(ptr @.str13977, ptr %t71) + %t73 = call ptr @lp_str_concat(ptr %t72, ptr @.str13978) %t74 = load ptr, ptr %t70 %t75 = call ptr @lp_str_concat(ptr %t73, ptr %t74) - %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str13836) + %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str13979) %t77 = load ptr, ptr %t61 %t78 = call ptr @lp_str_concat(ptr %t76, ptr %t77) - %t79 = call ptr @lp_str_concat(ptr %t78, ptr @.str13837) + %t79 = call ptr @lp_str_concat(ptr %t78, ptr @.str13980) call void @fn_emit(ptr %t79) %t80 = load ptr, ptr %t70 - %t81 = call ptr @lp_str_concat(ptr %t80, ptr @.str13838) + %t81 = call ptr @lp_str_concat(ptr %t80, ptr @.str13981) call void @fn_emit(ptr %t81) - %t82 = call ptr @fn_emit_str_const(ptr @.str13839) + %t82 = call ptr @fn_emit_str_const(ptr @.str13982) store ptr %t82, ptr %t83 %t84 = load ptr, ptr %t63 - %t85 = call ptr @lp_str_concat(ptr @.str13840, ptr %t84) - %t86 = call ptr @lp_str_concat(ptr %t85, ptr @.str13841) + %t85 = call ptr @lp_str_concat(ptr @.str13983, ptr %t84) + %t86 = call ptr @lp_str_concat(ptr %t85, ptr @.str13984) %t87 = load ptr, ptr %t83 %t88 = call ptr @lp_str_concat(ptr %t86, ptr %t87) - %t89 = call ptr @lp_str_concat(ptr %t88, ptr @.str13842) + %t89 = call ptr @lp_str_concat(ptr %t88, ptr @.str13985) %t90 = call ptr @fn_emit_bind(ptr %t89) store ptr %t90, ptr %t91 %t92 = load ptr, ptr %t91 - %t93 = call ptr @lp_str_concat(ptr @.str13843, ptr %t92) - %t94 = call ptr @lp_str_concat(ptr %t93, ptr @.str13844) + %t93 = call ptr @lp_str_concat(ptr @.str13986, ptr %t92) + %t94 = call ptr @lp_str_concat(ptr %t93, ptr @.str13987) %t95 = call ptr @fn_emit_bind(ptr %t94) store ptr %t95, ptr %t96 %t97 = load ptr, ptr %t96 - %t98 = call ptr @lp_str_concat(ptr @.str13845, ptr %t97) - %t99 = call ptr @lp_str_concat(ptr %t98, ptr @.str13846) + %t98 = call ptr @lp_str_concat(ptr @.str13988, ptr %t97) + %t99 = call ptr @lp_str_concat(ptr %t98, ptr @.str13989) %t100 = load ptr, ptr %t59 %t101 = call ptr @lp_str_concat(ptr %t99, ptr %t100) - %t102 = call ptr @lp_str_concat(ptr %t101, ptr @.str13847) + %t102 = call ptr @lp_str_concat(ptr %t101, ptr @.str13990) %t103 = load ptr, ptr %t61 %t104 = call ptr @lp_str_concat(ptr %t102, ptr %t103) - %t105 = call ptr @lp_str_concat(ptr %t104, ptr @.str13848) + %t105 = call ptr @lp_str_concat(ptr %t104, ptr @.str13991) call void @fn_emit(ptr %t105) %t106 = load ptr, ptr %t59 - %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str13849) + %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str13992) call void @fn_emit(ptr %t107) store i32 0, ptr %t108 br label %wcond14 @@ -176909,7 +177676,7 @@ wbody15: br i1 %t122, label %ixok17, label %ixbad18 ixbad18: %t123 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t123, ptr @.fmt_bounds, ptr @.str13850, i32 %t117, i32 %t121) + call i32 (ptr, ptr, ...) @fprintf(ptr %t123, ptr @.fmt_bounds, ptr @.str13993, i32 %t117, i32 %t121) call void @exit(i32 1) unreachable ixok17: @@ -176920,326 +177687,333 @@ ixok17: %t128 = call ptr @fn_emit_str_const(ptr %t127) store ptr %t128, ptr %t129 %t130 = load ptr, ptr %t129 - %t131 = call ptr @lp_str_concat(ptr @.str13851, ptr %t130) - %t132 = call ptr @lp_str_concat(ptr %t131, ptr @.str13852) + %t131 = call ptr @lp_str_concat(ptr @.str13994, ptr %t130) + %t132 = call ptr @lp_str_concat(ptr %t131, ptr @.str13995) call void @fn_emit(ptr %t132) %t133 = load i32, ptr %t108 %t134 = add i32 %t133, 1 store i32 %t134, ptr %t108 br label %wcond14 wend16: - call void @fn_emit(ptr @.str13853) + call void @fn_emit(ptr @.str13996) %t135 = load ptr, ptr %t61 - %t136 = call ptr @lp_str_concat(ptr %t135, ptr @.str13854) + %t136 = call ptr @lp_str_concat(ptr %t135, ptr @.str13997) call void @fn_emit(ptr %t136) - call void @fn_emit(ptr @.str13855) + call void @fn_emit(ptr @.str13998) %t137 = call i32 @fn_has_ecs() %t138 = icmp ne i32 %t137, 0 br i1 %t138, label %then19, label %ifend21 then19: - call void @fn_emit(ptr @.str13856) + call void @fn_emit(ptr @.str13999) br label %ifend21 ifend21: - call void @fn_emit(ptr @.str13857) + %t139 = call i32 @fn_has_ecs() + %t140 = icmp ne i32 %t139, 0 + br i1 %t140, label %then22, label %ifend24 +then22: + call void @fn_emit(ptr @.str14000) + br label %ifend24 +ifend24: + call void @fn_emit(ptr @.str14001) store i32 0, ptr %t0 - br label %wcond22 -wcond22: - %t139 = load i32, ptr %t0 - %t140 = load ptr, ptr @g_g_tests - %t141 = getelementptr inbounds %LSlice, ptr %t140, i32 0, i32 1 - %t142 = load i32, ptr %t141 - %t143 = icmp slt i32 %t139, %t142 - %t144 = zext i1 %t143 to i32 - %t145 = icmp ne i32 %t144, 0 - br i1 %t145, label %wbody23, label %wend24 -wbody23: - %t146 = load ptr, ptr @g_g_tests - %t147 = load i32, ptr %t0 - %t148 = getelementptr inbounds %LSlice, ptr %t146, i32 0, i32 0 - %t149 = load ptr, ptr %t148 - %t150 = getelementptr inbounds %LSlice, ptr %t146, i32 0, i32 1 - %t151 = load i32, ptr %t150 - %t152 = icmp ult i32 %t147, %t151 - br i1 %t152, label %ixok25, label %ixbad26 -ixbad26: - %t153 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t153, ptr @.fmt_bounds, ptr @.str13859, i32 %t147, i32 %t151) + br label %wcond25 +wcond25: + %t141 = load i32, ptr %t0 + %t142 = load ptr, ptr @g_g_tests + %t143 = getelementptr inbounds %LSlice, ptr %t142, i32 0, i32 1 + %t144 = load i32, ptr %t143 + %t145 = icmp slt i32 %t141, %t144 + %t146 = zext i1 %t145 to i32 + %t147 = icmp ne i32 %t146, 0 + br i1 %t147, label %wbody26, label %wend27 +wbody26: + %t148 = load ptr, ptr @g_g_tests + %t149 = load i32, ptr %t0 + %t150 = getelementptr inbounds %LSlice, ptr %t148, i32 0, i32 0 + %t151 = load ptr, ptr %t150 + %t152 = getelementptr inbounds %LSlice, ptr %t148, i32 0, i32 1 + %t153 = load i32, ptr %t152 + %t154 = icmp ult i32 %t149, %t153 + br i1 %t154, label %ixok28, label %ixbad29 +ixbad29: + %t155 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t155, ptr @.fmt_bounds, ptr @.str14003, i32 %t149, i32 %t153) call void @exit(i32 1) unreachable -ixok25: - %t154 = getelementptr inbounds ptr, ptr %t149, i32 %t147 - %t155 = load ptr, ptr %t154 - %t156 = getelementptr inbounds %Cmp_Node, ptr %t155, i32 0, i32 1 +ixok28: + %t156 = getelementptr inbounds ptr, ptr %t151, i32 %t149 %t157 = load ptr, ptr %t156 - %t158 = call ptr @lp_str_concat(ptr @.str13858, ptr %t157) - %t159 = call ptr @fn_emit_str_const(ptr %t158) - store ptr %t159, ptr %t160 - %t161 = load ptr, ptr @g_g_tests - %t162 = load i32, ptr %t0 - %t163 = getelementptr inbounds %LSlice, ptr %t161, i32 0, i32 0 - %t164 = load ptr, ptr %t163 - %t165 = getelementptr inbounds %LSlice, ptr %t161, i32 0, i32 1 - %t166 = load i32, ptr %t165 - %t167 = icmp ult i32 %t162, %t166 - br i1 %t167, label %ixok27, label %ixbad28 -ixbad28: - %t168 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t168, ptr @.fmt_bounds, ptr @.str13861, i32 %t162, i32 %t166) + %t158 = getelementptr inbounds %Cmp_Node, ptr %t157, i32 0, i32 1 + %t159 = load ptr, ptr %t158 + %t160 = call ptr @lp_str_concat(ptr @.str14002, ptr %t159) + %t161 = call ptr @fn_emit_str_const(ptr %t160) + store ptr %t161, ptr %t162 + %t163 = load ptr, ptr @g_g_tests + %t164 = load i32, ptr %t0 + %t165 = getelementptr inbounds %LSlice, ptr %t163, i32 0, i32 0 + %t166 = load ptr, ptr %t165 + %t167 = getelementptr inbounds %LSlice, ptr %t163, i32 0, i32 1 + %t168 = load i32, ptr %t167 + %t169 = icmp ult i32 %t164, %t168 + br i1 %t169, label %ixok30, label %ixbad31 +ixbad31: + %t170 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t170, ptr @.fmt_bounds, ptr @.str14005, i32 %t164, i32 %t168) call void @exit(i32 1) unreachable -ixok27: - %t169 = getelementptr inbounds ptr, ptr %t164, i32 %t162 - %t170 = load ptr, ptr %t169 - %t171 = getelementptr inbounds %Cmp_Node, ptr %t170, i32 0, i32 1 +ixok30: + %t171 = getelementptr inbounds ptr, ptr %t166, i32 %t164 %t172 = load ptr, ptr %t171 - %t173 = call ptr @lp_str_concat(ptr @.str13860, ptr %t172) - %t174 = call ptr @fn_emit_str_const(ptr %t173) - store ptr %t174, ptr %t175 - %t176 = load ptr, ptr @g_g_tests - %t177 = load i32, ptr %t0 - %t178 = getelementptr inbounds %LSlice, ptr %t176, i32 0, i32 0 - %t179 = load ptr, ptr %t178 - %t180 = getelementptr inbounds %LSlice, ptr %t176, i32 0, i32 1 - %t181 = load i32, ptr %t180 - %t182 = icmp ult i32 %t177, %t181 - br i1 %t182, label %ixok29, label %ixbad30 -ixbad30: - %t183 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t183, ptr @.fmt_bounds, ptr @.str13862, i32 %t177, i32 %t181) + %t173 = getelementptr inbounds %Cmp_Node, ptr %t172, i32 0, i32 1 + %t174 = load ptr, ptr %t173 + %t175 = call ptr @lp_str_concat(ptr @.str14004, ptr %t174) + %t176 = call ptr @fn_emit_str_const(ptr %t175) + store ptr %t176, ptr %t177 + %t178 = load ptr, ptr @g_g_tests + %t179 = load i32, ptr %t0 + %t180 = getelementptr inbounds %LSlice, ptr %t178, i32 0, i32 0 + %t181 = load ptr, ptr %t180 + %t182 = getelementptr inbounds %LSlice, ptr %t178, i32 0, i32 1 + %t183 = load i32, ptr %t182 + %t184 = icmp ult i32 %t179, %t183 + br i1 %t184, label %ixok32, label %ixbad33 +ixbad33: + %t185 = load ptr, ptr @__stderrp + call i32 (ptr, ptr, ...) @fprintf(ptr %t185, ptr @.fmt_bounds, ptr @.str14006, i32 %t179, i32 %t183) call void @exit(i32 1) unreachable -ixok29: - %t184 = getelementptr inbounds ptr, ptr %t179, i32 %t177 - %t185 = load ptr, ptr %t184 - %t186 = getelementptr inbounds %Cmp_Node, ptr %t185, i32 0, i32 1 +ixok32: + %t186 = getelementptr inbounds ptr, ptr %t181, i32 %t179 %t187 = load ptr, ptr %t186 - %t188 = call ptr @fn_emit_str_const(ptr %t187) - store ptr %t188, ptr %t189 - %t190 = call ptr @fn_lbl(ptr @.str13863) + %t188 = getelementptr inbounds %Cmp_Node, ptr %t187, i32 0, i32 1 + %t189 = load ptr, ptr %t188 + %t190 = call ptr @fn_emit_str_const(ptr %t189) store ptr %t190, ptr %t191 - %t192 = call ptr @fn_lbl(ptr @.str13864) + %t192 = call ptr @fn_lbl(ptr @.str14007) store ptr %t192, ptr %t193 - %t194 = call ptr @fn_lbl(ptr @.str13865) + %t194 = call ptr @fn_lbl(ptr @.str14008) store ptr %t194, ptr %t195 - %t196 = call ptr @fn_emit_bind(ptr @.str13866) + %t196 = call ptr @fn_lbl(ptr @.str14009) store ptr %t196, ptr %t197 - %t198 = load ptr, ptr %t197 - %t199 = call ptr @lp_str_concat(ptr @.str13867, ptr %t198) - %t200 = call ptr @lp_str_concat(ptr %t199, ptr @.str13868) - %t201 = call ptr @fn_emit_bind(ptr %t200) - store ptr %t201, ptr %t202 - %t203 = load ptr, ptr %t202 - %t204 = call ptr @lp_str_concat(ptr @.str13869, ptr %t203) - %t205 = call ptr @lp_str_concat(ptr %t204, ptr @.str13870) - %t206 = load ptr, ptr %t193 - %t207 = call ptr @lp_str_concat(ptr %t205, ptr %t206) - %t208 = call ptr @lp_str_concat(ptr %t207, ptr @.str13871) - %t209 = load ptr, ptr %t191 - %t210 = call ptr @lp_str_concat(ptr %t208, ptr %t209) - %t211 = call ptr @lp_str_concat(ptr %t210, ptr @.str13872) - call void @fn_emit(ptr %t211) - %t212 = load ptr, ptr %t191 - %t213 = call ptr @lp_str_concat(ptr %t212, ptr @.str13873) + %t198 = call ptr @fn_emit_bind(ptr @.str14010) + store ptr %t198, ptr %t199 + %t200 = load ptr, ptr %t199 + %t201 = call ptr @lp_str_concat(ptr @.str14011, ptr %t200) + %t202 = call ptr @lp_str_concat(ptr %t201, ptr @.str14012) + %t203 = call ptr @fn_emit_bind(ptr %t202) + store ptr %t203, ptr %t204 + %t205 = load ptr, ptr %t204 + %t206 = call ptr @lp_str_concat(ptr @.str14013, ptr %t205) + %t207 = call ptr @lp_str_concat(ptr %t206, ptr @.str14014) + %t208 = load ptr, ptr %t195 + %t209 = call ptr @lp_str_concat(ptr %t207, ptr %t208) + %t210 = call ptr @lp_str_concat(ptr %t209, ptr @.str14015) + %t211 = load ptr, ptr %t193 + %t212 = call ptr @lp_str_concat(ptr %t210, ptr %t211) + %t213 = call ptr @lp_str_concat(ptr %t212, ptr @.str14016) call void @fn_emit(ptr %t213) - %t214 = load ptr, ptr %t197 - %t215 = call ptr @lp_str_concat(ptr @.str13874, ptr %t214) - %t216 = call ptr @lp_str_concat(ptr %t215, ptr @.str13875) - %t217 = load ptr, ptr %t189 - %t218 = call ptr @lp_str_concat(ptr %t216, ptr %t217) - %t219 = call ptr @lp_str_concat(ptr %t218, ptr @.str13876) - %t220 = call ptr @fn_emit_bind(ptr %t219) - store ptr %t220, ptr %t221 - %t222 = load ptr, ptr %t221 - %t223 = call ptr @lp_str_concat(ptr @.str13877, ptr %t222) - %t224 = call ptr @lp_str_concat(ptr %t223, ptr @.str13878) - %t225 = call ptr @fn_emit_bind(ptr %t224) - store ptr %t225, ptr %t226 - %t227 = load ptr, ptr %t226 - %t228 = call ptr @lp_str_concat(ptr @.str13879, ptr %t227) - %t229 = call ptr @lp_str_concat(ptr %t228, ptr @.str13880) - %t230 = load ptr, ptr %t193 - %t231 = call ptr @lp_str_concat(ptr %t229, ptr %t230) - %t232 = call ptr @lp_str_concat(ptr %t231, ptr @.str13881) - %t233 = load ptr, ptr %t195 - %t234 = call ptr @lp_str_concat(ptr %t232, ptr %t233) - %t235 = call ptr @lp_str_concat(ptr %t234, ptr @.str13882) - call void @fn_emit(ptr %t235) - %t236 = load ptr, ptr %t193 - %t237 = call ptr @lp_str_concat(ptr %t236, ptr @.str13883) + %t214 = load ptr, ptr %t193 + %t215 = call ptr @lp_str_concat(ptr %t214, ptr @.str14017) + call void @fn_emit(ptr %t215) + %t216 = load ptr, ptr %t199 + %t217 = call ptr @lp_str_concat(ptr @.str14018, ptr %t216) + %t218 = call ptr @lp_str_concat(ptr %t217, ptr @.str14019) + %t219 = load ptr, ptr %t191 + %t220 = call ptr @lp_str_concat(ptr %t218, ptr %t219) + %t221 = call ptr @lp_str_concat(ptr %t220, ptr @.str14020) + %t222 = call ptr @fn_emit_bind(ptr %t221) + store ptr %t222, ptr %t223 + %t224 = load ptr, ptr %t223 + %t225 = call ptr @lp_str_concat(ptr @.str14021, ptr %t224) + %t226 = call ptr @lp_str_concat(ptr %t225, ptr @.str14022) + %t227 = call ptr @fn_emit_bind(ptr %t226) + store ptr %t227, ptr %t228 + %t229 = load ptr, ptr %t228 + %t230 = call ptr @lp_str_concat(ptr @.str14023, ptr %t229) + %t231 = call ptr @lp_str_concat(ptr %t230, ptr @.str14024) + %t232 = load ptr, ptr %t195 + %t233 = call ptr @lp_str_concat(ptr %t231, ptr %t232) + %t234 = call ptr @lp_str_concat(ptr %t233, ptr @.str14025) + %t235 = load ptr, ptr %t197 + %t236 = call ptr @lp_str_concat(ptr %t234, ptr %t235) + %t237 = call ptr @lp_str_concat(ptr %t236, ptr @.str14026) call void @fn_emit(ptr %t237) - %t238 = call ptr @fn_emit_bind(ptr @.str13884) - store ptr %t238, ptr %t239 - %t240 = load ptr, ptr %t239 - %t241 = call ptr @lp_str_concat(ptr @.str13885, ptr %t240) - %t242 = call ptr @lp_str_concat(ptr %t241, ptr @.str13886) - %t243 = call ptr @fn_emit_bind(ptr %t242) - store ptr %t243, ptr %t244 - %t245 = load ptr, ptr %t244 - %t246 = call ptr @lp_str_concat(ptr @.str13887, ptr %t245) - %t247 = call ptr @lp_str_concat(ptr %t246, ptr @.str13888) - call void @fn_emit(ptr %t247) - call void @fn_emit(ptr @.str13889) - %t248 = load i32, ptr %t0 - %t249 = icmp sgt i32 %t248, 0 - %t250 = zext i1 %t249 to i32 - %t251 = icmp ne i32 %t250, 0 - br i1 %t251, label %then31, label %ifend33 -then31: - call void @fn_emit(ptr @.str13890) - br label %ifend33 -ifend33: - %t252 = load i32, ptr %t0 - %t253 = call ptr @fn_itoa(i32 %t252) - %t254 = call ptr @lp_str_concat(ptr @.str13891, ptr %t253) - %t255 = call ptr @lp_str_concat(ptr %t254, ptr @.str13892) - call void @fn_emit(ptr %t255) - %t256 = call ptr @fn_emit_bind(ptr @.str13893) - store ptr %t256, ptr %t257 - %t258 = load ptr, ptr %t257 - %t259 = call ptr @lp_str_concat(ptr @.str13894, ptr %t258) - %t260 = call ptr @lp_str_concat(ptr %t259, ptr @.str13895) - %t261 = call ptr @fn_emit_bind(ptr %t260) - store ptr %t261, ptr %t262 - %t263 = call ptr @fn_lbl(ptr @.str13896) + %t238 = load ptr, ptr %t195 + %t239 = call ptr @lp_str_concat(ptr %t238, ptr @.str14027) + call void @fn_emit(ptr %t239) + %t240 = call ptr @fn_emit_bind(ptr @.str14028) + store ptr %t240, ptr %t241 + %t242 = load ptr, ptr %t241 + %t243 = call ptr @lp_str_concat(ptr @.str14029, ptr %t242) + %t244 = call ptr @lp_str_concat(ptr %t243, ptr @.str14030) + %t245 = call ptr @fn_emit_bind(ptr %t244) + store ptr %t245, ptr %t246 + %t247 = load ptr, ptr %t246 + %t248 = call ptr @lp_str_concat(ptr @.str14031, ptr %t247) + %t249 = call ptr @lp_str_concat(ptr %t248, ptr @.str14032) + call void @fn_emit(ptr %t249) + call void @fn_emit(ptr @.str14033) + %t250 = load i32, ptr %t0 + %t251 = icmp sgt i32 %t250, 0 + %t252 = zext i1 %t251 to i32 + %t253 = icmp ne i32 %t252, 0 + br i1 %t253, label %then34, label %ifend36 +then34: + call void @fn_emit(ptr @.str14034) + br label %ifend36 +ifend36: + %t254 = load i32, ptr %t0 + %t255 = call ptr @fn_itoa(i32 %t254) + %t256 = call ptr @lp_str_concat(ptr @.str14035, ptr %t255) + %t257 = call ptr @lp_str_concat(ptr %t256, ptr @.str14036) + call void @fn_emit(ptr %t257) + %t258 = call ptr @fn_emit_bind(ptr @.str14037) + store ptr %t258, ptr %t259 + %t260 = load ptr, ptr %t259 + %t261 = call ptr @lp_str_concat(ptr @.str14038, ptr %t260) + %t262 = call ptr @lp_str_concat(ptr %t261, ptr @.str14039) + %t263 = call ptr @fn_emit_bind(ptr %t262) store ptr %t263, ptr %t264 - %t265 = call ptr @fn_lbl(ptr @.str13897) + %t265 = call ptr @fn_lbl(ptr @.str14040) store ptr %t265, ptr %t266 - %t267 = call ptr @fn_lbl(ptr @.str13898) + %t267 = call ptr @fn_lbl(ptr @.str14041) store ptr %t267, ptr %t268 - %t269 = load ptr, ptr %t262 - %t270 = call ptr @lp_str_concat(ptr @.str13899, ptr %t269) - %t271 = call ptr @lp_str_concat(ptr %t270, ptr @.str13900) - %t272 = load ptr, ptr %t266 - %t273 = call ptr @lp_str_concat(ptr %t271, ptr %t272) - %t274 = call ptr @lp_str_concat(ptr %t273, ptr @.str13901) - %t275 = load ptr, ptr %t264 - %t276 = call ptr @lp_str_concat(ptr %t274, ptr %t275) - %t277 = call ptr @lp_str_concat(ptr %t276, ptr @.str13902) - call void @fn_emit(ptr %t277) - %t278 = load ptr, ptr %t264 - %t279 = call ptr @lp_str_concat(ptr %t278, ptr @.str13903) + %t269 = call ptr @fn_lbl(ptr @.str14042) + store ptr %t269, ptr %t270 + %t271 = load ptr, ptr %t264 + %t272 = call ptr @lp_str_concat(ptr @.str14043, ptr %t271) + %t273 = call ptr @lp_str_concat(ptr %t272, ptr @.str14044) + %t274 = load ptr, ptr %t268 + %t275 = call ptr @lp_str_concat(ptr %t273, ptr %t274) + %t276 = call ptr @lp_str_concat(ptr %t275, ptr @.str14045) + %t277 = load ptr, ptr %t266 + %t278 = call ptr @lp_str_concat(ptr %t276, ptr %t277) + %t279 = call ptr @lp_str_concat(ptr %t278, ptr @.str14046) call void @fn_emit(ptr %t279) - %t280 = load ptr, ptr %t160 - %t281 = call ptr @lp_str_concat(ptr @.str13904, ptr %t280) - %t282 = call ptr @lp_str_concat(ptr %t281, ptr @.str13905) - call void @fn_emit(ptr %t282) - %t283 = load ptr, ptr %t268 - %t284 = call ptr @lp_str_concat(ptr @.str13906, ptr %t283) - %t285 = call ptr @lp_str_concat(ptr %t284, ptr @.str13907) - call void @fn_emit(ptr %t285) - %t286 = load ptr, ptr %t266 - %t287 = call ptr @lp_str_concat(ptr %t286, ptr @.str13908) + %t280 = load ptr, ptr %t266 + %t281 = call ptr @lp_str_concat(ptr %t280, ptr @.str14047) + call void @fn_emit(ptr %t281) + %t282 = load ptr, ptr %t162 + %t283 = call ptr @lp_str_concat(ptr @.str14048, ptr %t282) + %t284 = call ptr @lp_str_concat(ptr %t283, ptr @.str14049) + call void @fn_emit(ptr %t284) + %t285 = load ptr, ptr %t270 + %t286 = call ptr @lp_str_concat(ptr @.str14050, ptr %t285) + %t287 = call ptr @lp_str_concat(ptr %t286, ptr @.str14051) call void @fn_emit(ptr %t287) - %t288 = call ptr @fn_emit_bind(ptr @.str13909) - store ptr %t288, ptr %t289 - %t290 = load ptr, ptr %t289 - %t291 = call ptr @lp_str_concat(ptr @.str13910, ptr %t290) - %t292 = call ptr @lp_str_concat(ptr %t291, ptr @.str13911) - %t293 = call ptr @fn_emit_bind(ptr %t292) - store ptr %t293, ptr %t294 - %t295 = load ptr, ptr %t294 - %t296 = call ptr @lp_str_concat(ptr @.str13912, ptr %t295) - %t297 = call ptr @lp_str_concat(ptr %t296, ptr @.str13913) - call void @fn_emit(ptr %t297) - %t298 = load ptr, ptr %t175 - %t299 = call ptr @lp_str_concat(ptr @.str13914, ptr %t298) - %t300 = call ptr @lp_str_concat(ptr %t299, ptr @.str13915) - call void @fn_emit(ptr %t300) - %t301 = load ptr, ptr %t268 - %t302 = call ptr @lp_str_concat(ptr @.str13916, ptr %t301) - %t303 = call ptr @lp_str_concat(ptr %t302, ptr @.str13917) - call void @fn_emit(ptr %t303) - %t304 = load ptr, ptr %t268 - %t305 = call ptr @lp_str_concat(ptr %t304, ptr @.str13918) + %t288 = load ptr, ptr %t268 + %t289 = call ptr @lp_str_concat(ptr %t288, ptr @.str14052) + call void @fn_emit(ptr %t289) + %t290 = call ptr @fn_emit_bind(ptr @.str14053) + store ptr %t290, ptr %t291 + %t292 = load ptr, ptr %t291 + %t293 = call ptr @lp_str_concat(ptr @.str14054, ptr %t292) + %t294 = call ptr @lp_str_concat(ptr %t293, ptr @.str14055) + %t295 = call ptr @fn_emit_bind(ptr %t294) + store ptr %t295, ptr %t296 + %t297 = load ptr, ptr %t296 + %t298 = call ptr @lp_str_concat(ptr @.str14056, ptr %t297) + %t299 = call ptr @lp_str_concat(ptr %t298, ptr @.str14057) + call void @fn_emit(ptr %t299) + %t300 = load ptr, ptr %t177 + %t301 = call ptr @lp_str_concat(ptr @.str14058, ptr %t300) + %t302 = call ptr @lp_str_concat(ptr %t301, ptr @.str14059) + call void @fn_emit(ptr %t302) + %t303 = load ptr, ptr %t270 + %t304 = call ptr @lp_str_concat(ptr @.str14060, ptr %t303) + %t305 = call ptr @lp_str_concat(ptr %t304, ptr @.str14061) call void @fn_emit(ptr %t305) - %t306 = load ptr, ptr %t195 - %t307 = call ptr @lp_str_concat(ptr @.str13919, ptr %t306) - %t308 = call ptr @lp_str_concat(ptr %t307, ptr @.str13920) - call void @fn_emit(ptr %t308) - %t309 = load ptr, ptr %t195 - %t310 = call ptr @lp_str_concat(ptr %t309, ptr @.str13921) + %t306 = load ptr, ptr %t270 + %t307 = call ptr @lp_str_concat(ptr %t306, ptr @.str14062) + call void @fn_emit(ptr %t307) + %t308 = load ptr, ptr %t197 + %t309 = call ptr @lp_str_concat(ptr @.str14063, ptr %t308) + %t310 = call ptr @lp_str_concat(ptr %t309, ptr @.str14064) call void @fn_emit(ptr %t310) - %t311 = load i32, ptr %t0 - %t312 = add i32 %t311, 1 - store i32 %t312, ptr %t0 - br label %wcond22 -wend24: - %t313 = call ptr @fn_lbl(ptr @.str13922) - store ptr %t313, ptr %t314 - %t315 = call ptr @fn_lbl(ptr @.str13923) + %t311 = load ptr, ptr %t197 + %t312 = call ptr @lp_str_concat(ptr %t311, ptr @.str14065) + call void @fn_emit(ptr %t312) + %t313 = load i32, ptr %t0 + %t314 = add i32 %t313, 1 + store i32 %t314, ptr %t0 + br label %wcond25 +wend27: + %t315 = call ptr @fn_lbl(ptr @.str14066) store ptr %t315, ptr %t316 - %t317 = call ptr @fn_emit_bind(ptr @.str13924) + %t317 = call ptr @fn_lbl(ptr @.str14067) store ptr %t317, ptr %t318 - %t319 = call ptr @fn_emit_bind(ptr @.str13925) + %t319 = call ptr @fn_emit_bind(ptr @.str14068) store ptr %t319, ptr %t320 - %t321 = load ptr, ptr %t320 - %t322 = call ptr @lp_str_concat(ptr @.str13926, ptr %t321) - %t323 = call ptr @lp_str_concat(ptr %t322, ptr @.str13927) - %t324 = call ptr @fn_emit_bind(ptr %t323) - store ptr %t324, ptr %t325 - %t326 = load ptr, ptr %t318 - %t327 = call ptr @lp_str_concat(ptr @.str13928, ptr %t326) - %t328 = call ptr @lp_str_concat(ptr %t327, ptr @.str13929) - %t329 = call ptr @fn_emit_bind(ptr %t328) - store ptr %t329, ptr %t330 - %t331 = load ptr, ptr %t325 - %t332 = call ptr @lp_str_concat(ptr @.str13930, ptr %t331) - %t333 = call ptr @lp_str_concat(ptr %t332, ptr @.str13931) - %t334 = load ptr, ptr %t330 - %t335 = call ptr @lp_str_concat(ptr %t333, ptr %t334) - %t336 = call ptr @fn_emit_bind(ptr %t335) - store ptr %t336, ptr %t337 - %t338 = load ptr, ptr %t337 - %t339 = call ptr @lp_str_concat(ptr @.str13932, ptr %t338) - %t340 = call ptr @lp_str_concat(ptr %t339, ptr @.str13933) - %t341 = load ptr, ptr %t314 - %t342 = call ptr @lp_str_concat(ptr %t340, ptr %t341) - %t343 = call ptr @lp_str_concat(ptr %t342, ptr @.str13934) - %t344 = load ptr, ptr %t316 - %t345 = call ptr @lp_str_concat(ptr %t343, ptr %t344) - %t346 = call ptr @lp_str_concat(ptr %t345, ptr @.str13935) - call void @fn_emit(ptr %t346) - %t347 = load ptr, ptr %t314 - %t348 = call ptr @lp_str_concat(ptr %t347, ptr @.str13936) + %t321 = call ptr @fn_emit_bind(ptr @.str14069) + store ptr %t321, ptr %t322 + %t323 = load ptr, ptr %t322 + %t324 = call ptr @lp_str_concat(ptr @.str14070, ptr %t323) + %t325 = call ptr @lp_str_concat(ptr %t324, ptr @.str14071) + %t326 = call ptr @fn_emit_bind(ptr %t325) + store ptr %t326, ptr %t327 + %t328 = load ptr, ptr %t320 + %t329 = call ptr @lp_str_concat(ptr @.str14072, ptr %t328) + %t330 = call ptr @lp_str_concat(ptr %t329, ptr @.str14073) + %t331 = call ptr @fn_emit_bind(ptr %t330) + store ptr %t331, ptr %t332 + %t333 = load ptr, ptr %t327 + %t334 = call ptr @lp_str_concat(ptr @.str14074, ptr %t333) + %t335 = call ptr @lp_str_concat(ptr %t334, ptr @.str14075) + %t336 = load ptr, ptr %t332 + %t337 = call ptr @lp_str_concat(ptr %t335, ptr %t336) + %t338 = call ptr @fn_emit_bind(ptr %t337) + store ptr %t338, ptr %t339 + %t340 = load ptr, ptr %t339 + %t341 = call ptr @lp_str_concat(ptr @.str14076, ptr %t340) + %t342 = call ptr @lp_str_concat(ptr %t341, ptr @.str14077) + %t343 = load ptr, ptr %t316 + %t344 = call ptr @lp_str_concat(ptr %t342, ptr %t343) + %t345 = call ptr @lp_str_concat(ptr %t344, ptr @.str14078) + %t346 = load ptr, ptr %t318 + %t347 = call ptr @lp_str_concat(ptr %t345, ptr %t346) + %t348 = call ptr @lp_str_concat(ptr %t347, ptr @.str14079) call void @fn_emit(ptr %t348) - %t349 = load ptr, ptr %t320 - %t350 = call ptr @lp_str_concat(ptr @.str13937, ptr %t349) - %t351 = call ptr @lp_str_concat(ptr %t350, ptr @.str13938) - call void @fn_emit(ptr %t351) - call void @fn_emit(ptr @.str13939) - %t352 = load ptr, ptr %t316 - %t353 = call ptr @lp_str_concat(ptr %t352, ptr @.str13940) + %t349 = load ptr, ptr %t316 + %t350 = call ptr @lp_str_concat(ptr %t349, ptr @.str14080) + call void @fn_emit(ptr %t350) + %t351 = load ptr, ptr %t322 + %t352 = call ptr @lp_str_concat(ptr @.str14081, ptr %t351) + %t353 = call ptr @lp_str_concat(ptr %t352, ptr @.str14082) call void @fn_emit(ptr %t353) - %t354 = call ptr @fn_emit_bind(ptr @.str13941) - store ptr %t354, ptr %t355 - %t356 = load ptr, ptr %t318 - %t357 = call ptr @lp_str_concat(ptr @.str13942, ptr %t356) - %t358 = call ptr @lp_str_concat(ptr %t357, ptr @.str13943) - %t359 = load ptr, ptr %t355 - %t360 = call ptr @lp_str_concat(ptr %t358, ptr %t359) - %t361 = call ptr @fn_emit_bind(ptr %t360) - store ptr %t361, ptr %t362 - %t363 = load ptr, ptr %t362 - %t364 = call ptr @lp_str_concat(ptr @.str13944, ptr %t363) - %t365 = call ptr @lp_str_concat(ptr %t364, ptr @.str13945) - %t366 = load ptr, ptr %t355 - %t367 = call ptr @lp_str_concat(ptr %t365, ptr %t366) - %t368 = call ptr @lp_str_concat(ptr %t367, ptr @.str13946) - call void @fn_emit(ptr %t368) - %t369 = load ptr, ptr %t355 - %t370 = call ptr @lp_str_concat(ptr @.str13947, ptr %t369) - %t371 = call ptr @lp_str_concat(ptr %t370, ptr @.str13948) - %t372 = call ptr @fn_emit_bind(ptr %t371) - store ptr %t372, ptr %t373 - %t374 = load ptr, ptr %t373 - %t375 = call ptr @lp_str_concat(ptr @.str13949, ptr %t374) - %t376 = call ptr @lp_str_concat(ptr %t375, ptr @.str13950) - %t377 = call ptr @fn_emit_bind(ptr %t376) - store ptr %t377, ptr %t378 - %t379 = load ptr, ptr %t378 - %t380 = call ptr @lp_str_concat(ptr @.str13951, ptr %t379) - %t381 = call ptr @lp_str_concat(ptr %t380, ptr @.str13952) - call void @fn_emit(ptr %t381) + call void @fn_emit(ptr @.str14083) + %t354 = load ptr, ptr %t318 + %t355 = call ptr @lp_str_concat(ptr %t354, ptr @.str14084) + call void @fn_emit(ptr %t355) + %t356 = call ptr @fn_emit_bind(ptr @.str14085) + store ptr %t356, ptr %t357 + %t358 = load ptr, ptr %t320 + %t359 = call ptr @lp_str_concat(ptr @.str14086, ptr %t358) + %t360 = call ptr @lp_str_concat(ptr %t359, ptr @.str14087) + %t361 = load ptr, ptr %t357 + %t362 = call ptr @lp_str_concat(ptr %t360, ptr %t361) + %t363 = call ptr @fn_emit_bind(ptr %t362) + store ptr %t363, ptr %t364 + %t365 = load ptr, ptr %t364 + %t366 = call ptr @lp_str_concat(ptr @.str14088, ptr %t365) + %t367 = call ptr @lp_str_concat(ptr %t366, ptr @.str14089) + %t368 = load ptr, ptr %t357 + %t369 = call ptr @lp_str_concat(ptr %t367, ptr %t368) + %t370 = call ptr @lp_str_concat(ptr %t369, ptr @.str14090) + call void @fn_emit(ptr %t370) + %t371 = load ptr, ptr %t357 + %t372 = call ptr @lp_str_concat(ptr @.str14091, ptr %t371) + %t373 = call ptr @lp_str_concat(ptr %t372, ptr @.str14092) + %t374 = call ptr @fn_emit_bind(ptr %t373) + store ptr %t374, ptr %t375 + %t376 = load ptr, ptr %t375 + %t377 = call ptr @lp_str_concat(ptr @.str14093, ptr %t376) + %t378 = call ptr @lp_str_concat(ptr %t377, ptr @.str14094) + %t379 = call ptr @fn_emit_bind(ptr %t378) + store ptr %t379, ptr %t380 + %t381 = load ptr, ptr %t380 + %t382 = call ptr @lp_str_concat(ptr @.str14095, ptr %t381) + %t383 = call ptr @lp_str_concat(ptr %t382, ptr @.str14096) + call void @fn_emit(ptr %t383) br label %ret ret: ret void @@ -177297,7 +178071,7 @@ wbody1: br i1 %t30, label %ixok3, label %ixbad4 ixbad4: %t31 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t31, ptr @.fmt_bounds, ptr @.str13953, i32 %t25, i32 %t29) + call i32 (ptr, ptr, ...) @fprintf(ptr %t31, ptr @.fmt_bounds, ptr @.str14097, i32 %t25, i32 %t29) call void @exit(i32 1) unreachable ixok3: @@ -177336,19 +178110,19 @@ then8: %t58 = load ptr, ptr %t34 %t59 = getelementptr inbounds %Cmp_Node, ptr %t58, i32 0, i32 1 %t60 = load ptr, ptr %t59 - %t61 = call ptr @lp_str_concat(ptr @.str13954, ptr %t60) - %t62 = call ptr @lp_str_concat(ptr %t61, ptr @.str13955) + %t61 = call ptr @lp_str_concat(ptr @.str14098, ptr %t60) + %t62 = call ptr @lp_str_concat(ptr %t61, ptr @.str14099) %t63 = load ptr, ptr %t47 %t64 = getelementptr inbounds %Cmp_Node, ptr %t63, i32 0, i32 9 %t65 = load ptr, ptr %t64 %t66 = call ptr @lp_str_concat(ptr %t62, ptr %t65) - %t67 = call ptr @lp_str_concat(ptr %t66, ptr @.str13956) + %t67 = call ptr @lp_str_concat(ptr %t66, ptr @.str14100) %t68 = load ptr, ptr %t47 %t69 = getelementptr inbounds %Cmp_Node, ptr %t68, i32 0, i32 8 %t70 = load i32, ptr %t69 %t71 = call ptr @fn_itoa(i32 %t70) %t72 = call ptr @lp_str_concat(ptr %t67, ptr %t71) - %t73 = call ptr @lp_str_concat(ptr %t72, ptr @.str13957) + %t73 = call ptr @lp_str_concat(ptr %t72, ptr @.str14101) call void @fn_perr(ptr %t73) br label %ifend10 ifend10: @@ -177476,7 +178250,7 @@ entry: %t5 = call ptr @fn_pkg_of_file(ptr %t4) store ptr %t5, ptr %t6 %t7 = load ptr, ptr %t6 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str13958) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str14102) %t9 = icmp ne i32 %t8, 0 br i1 %t9, label %then0, label %ifend2 then0: @@ -177488,18 +178262,18 @@ then0: br label %ifend2 ifend2: %t14 = load ptr, ptr %t6 - %t15 = call i32 @lp_str_eq(ptr %t14, ptr @.str13959) + %t15 = call i32 @lp_str_eq(ptr %t14, ptr @.str14103) %t16 = icmp ne i32 %t15, 0 br i1 %t16, label %then3, label %ifend5 then3: - store ptr @.str13960, ptr %retval + store ptr @.str14104, ptr %retval br label %ret ifend5: %t18 = load ptr, ptr %t0 %t19 = getelementptr inbounds %Cmp_Node, ptr %t18, i32 0, i32 9 %t20 = load ptr, ptr %t19 %t21 = call ptr @fn_pkg_of_file(ptr %t20) - %t22 = call i32 @lp_str_eq(ptr %t21, ptr @.str13961) + %t22 = call i32 @lp_str_eq(ptr %t21, ptr @.str14105) %t23 = icmp eq i32 %t22, 0 %t24 = zext i1 %t23 to i32 %t25 = icmp ne i32 %t24, 0 @@ -177511,7 +178285,7 @@ sc6: %t28 = getelementptr inbounds %Cmp_Node, ptr %t27, i32 0, i32 9 %t29 = load ptr, ptr %t28 %t30 = call ptr @fn_pkg_of_file(ptr %t29) - %t31 = call i32 @lp_str_eq(ptr %t30, ptr @.str13962) + %t31 = call i32 @lp_str_eq(ptr %t30, ptr @.str14106) %t32 = icmp eq i32 %t31, 0 %t33 = zext i1 %t32 to i32 %t34 = icmp ne i32 %t33, 0 @@ -177523,12 +178297,12 @@ scend7: %t37 = icmp ne i32 %t36, 0 br i1 %t37, label %then8, label %ifend10 then8: - store ptr @.str13963, ptr %retval + store ptr @.str14107, ptr %retval br label %ret ifend10: %t38 = load ptr, ptr %t6 - %t39 = call ptr @lp_str_concat(ptr @.str13964, ptr %t38) - %t40 = call ptr @lp_str_concat(ptr %t39, ptr @.str13965) + %t39 = call ptr @lp_str_concat(ptr @.str14108, ptr %t38) + %t40 = call ptr @lp_str_concat(ptr %t39, ptr @.str14109) store ptr %t40, ptr %retval br label %ret ret: @@ -177609,7 +178383,7 @@ wbody1: br i1 %t42, label %ixok5, label %ixbad6 ixbad6: %t43 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13966, i32 %t37, i32 %t41) + call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str14110, i32 %t37, i32 %t41) call void @exit(i32 1) unreachable ixok5: @@ -177629,7 +178403,7 @@ ixok5: then7: %t56 = load i32, ptr %t51 %t57 = call ptr @fn_itoa(i32 %t56) - %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str13967) + %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str14111) %t59 = load ptr, ptr %t46 %t60 = getelementptr inbounds %Cmp_Node, ptr %t59, i32 0, i32 1 %t61 = load ptr, ptr %t60 @@ -177657,19 +178431,19 @@ then10: %t79 = load ptr, ptr %t46 %t80 = getelementptr inbounds %Cmp_Node, ptr %t79, i32 0, i32 1 %t81 = load ptr, ptr %t80 - %t82 = call ptr @lp_str_concat(ptr @.str13968, ptr %t81) - %t83 = call ptr @lp_str_concat(ptr %t82, ptr @.str13969) + %t82 = call ptr @lp_str_concat(ptr @.str14112, ptr %t81) + %t83 = call ptr @lp_str_concat(ptr %t82, ptr @.str14113) %t84 = load ptr, ptr %t68 %t85 = getelementptr inbounds %Cmp_Node, ptr %t84, i32 0, i32 9 %t86 = load ptr, ptr %t85 %t87 = call ptr @lp_str_concat(ptr %t83, ptr %t86) - %t88 = call ptr @lp_str_concat(ptr %t87, ptr @.str13970) + %t88 = call ptr @lp_str_concat(ptr %t87, ptr @.str14114) %t89 = load ptr, ptr %t68 %t90 = getelementptr inbounds %Cmp_Node, ptr %t89, i32 0, i32 8 %t91 = load i32, ptr %t90 %t92 = call ptr @fn_itoa(i32 %t91) %t93 = call ptr @lp_str_concat(ptr %t88, ptr %t92) - %t94 = call ptr @lp_str_concat(ptr %t93, ptr @.str13971) + %t94 = call ptr @lp_str_concat(ptr %t93, ptr @.str14115) %t95 = load ptr, ptr %t68 %t96 = load ptr, ptr %t46 %t97 = call ptr @fn_dup_whose(ptr %t95, ptr %t96) @@ -177861,7 +178635,7 @@ wbody4: br i1 %t84, label %ixok6, label %ixbad7 ixbad7: %t85 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str13972, i32 %t79, i32 %t83) + call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str14116, i32 %t79, i32 %t83) call void @exit(i32 1) unreachable ixok6: @@ -177889,7 +178663,7 @@ then8: br i1 %t103, label %ixok11, label %ixbad12 ixbad12: %t104 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t104, ptr @.fmt_bounds, ptr @.str13973, i32 %t98, i32 %t102) + call i32 (ptr, ptr, ...) @fprintf(ptr %t104, ptr @.fmt_bounds, ptr @.str14117, i32 %t98, i32 %t102) call void @exit(i32 1) unreachable ixok11: @@ -178002,7 +178776,7 @@ wbody40: br i1 %t153, label %ixok42, label %ixbad43 ixbad43: %t154 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t154, ptr @.fmt_bounds, ptr @.str13974, i32 %t148, i32 %t152) + call i32 (ptr, ptr, ...) @fprintf(ptr %t154, ptr @.fmt_bounds, ptr @.str14118, i32 %t148, i32 %t152) call void @exit(i32 1) unreachable ixok42: @@ -178025,7 +178799,7 @@ then44: br i1 %t168, label %ixok47, label %ixbad48 ixbad48: %t169 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t169, ptr @.fmt_bounds, ptr @.str13975, i32 %t163, i32 %t167) + call i32 (ptr, ptr, ...) @fprintf(ptr %t169, ptr @.fmt_bounds, ptr @.str14119, i32 %t163, i32 %t167) call void @exit(i32 1) unreachable ixok47: @@ -178070,7 +178844,7 @@ wbody53: br i1 %t189, label %ixok55, label %ixbad56 ixbad56: %t190 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t190, ptr @.fmt_bounds, ptr @.str13976, i32 %t184, i32 %t188) + call i32 (ptr, ptr, ...) @fprintf(ptr %t190, ptr @.fmt_bounds, ptr @.str14120, i32 %t184, i32 %t188) call void @exit(i32 1) unreachable ixok55: @@ -178093,7 +178867,7 @@ then57: br i1 %t204, label %ixok60, label %ixbad61 ixbad61: %t205 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t205, ptr @.fmt_bounds, ptr @.str13977, i32 %t199, i32 %t203) + call i32 (ptr, ptr, ...) @fprintf(ptr %t205, ptr @.fmt_bounds, ptr @.str14121, i32 %t199, i32 %t203) call void @exit(i32 1) unreachable ixok60: @@ -178131,7 +178905,7 @@ scend63: %t220 = icmp ne i32 %t219, 0 br i1 %t220, label %then64, label %ifend66 then64: - call void @fn_emith(ptr @.str13978) + call void @fn_emith(ptr @.str14122) br label %ifend66 ifend66: %t221 = load i32, ptr @g_g_uses_world_despawn @@ -178264,7 +179038,7 @@ scend116: %t263 = icmp ne i32 %t262, 0 br i1 %t263, label %then117, label %ifend119 then117: - call void @fn_emith(ptr @.str13979) + call void @fn_emith(ptr @.str14123) br label %ifend119 ifend119: %t264 = load i32, ptr @g_g_uses_unicodert @@ -178299,9 +179073,9 @@ ifend131: %t273 = icmp ne i32 %t272, 0 br i1 %t273, label %then132, label %ifend134 then132: - call void @fn_emith(ptr @.str13980) + call void @fn_emith(ptr @.str14124) store i32 1, ptr @g_g_fprintf_declared - call void @fn_emith(ptr @.str13981) + call void @fn_emith(ptr @.str14125) br label %ifend134 ifend134: %t274 = load i32, ptr @g_g_uses_bounds @@ -178314,25 +179088,25 @@ then135: %t279 = icmp ne i32 %t278, 0 br i1 %t279, label %then138, label %ifend140 then138: - call void @fn_emith(ptr @.str13982) + call void @fn_emith(ptr @.str14126) store i32 1, ptr @g_g_fprintf_declared br label %ifend140 ifend140: - call void @fn_emith(ptr @.str13983) + call void @fn_emith(ptr @.str14127) br label %ifend137 ifend137: %t280 = load i32, ptr @g_g_uses_result %t281 = icmp ne i32 %t280, 0 br i1 %t281, label %then141, label %ifend143 then141: - call void @fn_emith(ptr @.str13984) + call void @fn_emith(ptr @.str14128) br label %ifend143 ifend143: %t282 = load i32, ptr @g_g_uses_option %t283 = icmp ne i32 %t282, 0 br i1 %t283, label %then144, label %ifend146 then144: - call void @fn_emith(ptr @.str13985) + call void @fn_emith(ptr @.str14129) br label %ifend146 ifend146: call void @fn_emit_cov_runtime() @@ -178380,10 +179154,10 @@ ifend5: %t12 = load i32, ptr %t7 %t13 = call ptr @fn_itoa(i32 %t12) store ptr %t13, ptr %t14 - call void @fn_emith(ptr @.str13986) + call void @fn_emith(ptr @.str14130) %t15 = load ptr, ptr %t14 call void @fn_emith(ptr %t15) - call void @fn_emith(ptr @.str13987) + call void @fn_emith(ptr @.str14131) store i32 0, ptr %t16 br label %wcond6 wcond6: @@ -178400,10 +179174,10 @@ wbody7: %t25 = icmp ne i32 %t24, 0 br i1 %t25, label %then9, label %ifend11 then9: - call void @fn_emith(ptr @.str13988) + call void @fn_emith(ptr @.str14132) br label %ifend11 ifend11: - call void @fn_emith(ptr @.str13989) + call void @fn_emith(ptr @.str14133) %t26 = load ptr, ptr @g_g_cov_lines %t27 = load i32, ptr %t16 %t28 = getelementptr inbounds %LSlice, ptr %t26, i32 0, i32 0 @@ -178414,7 +179188,7 @@ ifend11: br i1 %t32, label %ixok12, label %ixbad13 ixbad13: %t33 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str13990, i32 %t27, i32 %t31) + call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str14134, i32 %t27, i32 %t31) call void @exit(i32 1) unreachable ixok12: @@ -178427,88 +179201,88 @@ ixok12: store i32 %t38, ptr %t16 br label %wcond6 wend8: - call void @fn_emith(ptr @.str13991) - call void @fn_emith(ptr @.str13992) + call void @fn_emith(ptr @.str14135) + call void @fn_emith(ptr @.str14136) %t39 = load ptr, ptr %t14 call void @fn_emith(ptr %t39) - call void @fn_emith(ptr @.str13993) + call void @fn_emith(ptr @.str14137) %t40 = load ptr, ptr %t14 - %t41 = call ptr @lp_str_concat(ptr @.str13994, ptr %t40) - %t42 = call ptr @lp_str_concat(ptr %t41, ptr @.str13995) + %t41 = call ptr @lp_str_concat(ptr @.str14138, ptr %t40) + %t42 = call ptr @lp_str_concat(ptr %t41, ptr @.str14139) call void @fn_emith(ptr %t42) %t43 = load ptr, ptr @g_g_src_name %t44 = call ptr @fn_emit_str_const(ptr %t43) store ptr %t44, ptr %t45 - %t46 = call ptr @fn_emit_str_const(ptr @.str13996) + %t46 = call ptr @fn_emit_str_const(ptr @.str14140) store ptr %t46, ptr %t47 - %t48 = call ptr @fn_emit_str_const(ptr @.str13997) + %t48 = call ptr @fn_emit_str_const(ptr @.str14141) store ptr %t48, ptr %t49 - %t50 = call ptr @fn_emit_str_const(ptr @.str13998) + %t50 = call ptr @fn_emit_str_const(ptr @.str14142) store ptr %t50, ptr %t51 - call void @fn_emith(ptr @.str13999) - call void @fn_emith(ptr @.str14000) + call void @fn_emith(ptr @.str14143) + call void @fn_emith(ptr @.str14144) %t52 = load i32, ptr @g_g_fprintf_declared %t53 = icmp eq i32 %t52, 0 %t54 = zext i1 %t53 to i32 %t55 = icmp ne i32 %t54, 0 br i1 %t55, label %then14, label %ifend16 then14: - call void @fn_emith(ptr @.str14001) + call void @fn_emith(ptr @.str14145) store i32 1, ptr @g_g_fprintf_declared br label %ifend16 ifend16: - call void @fn_emith(ptr @.str14002) - call void @fn_emit(ptr @.str14003) + call void @fn_emith(ptr @.str14146) + call void @fn_emit(ptr @.str14147) %t56 = load ptr, ptr %t47 - %t57 = call ptr @lp_str_concat(ptr @.str14004, ptr %t56) - %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str14005) + %t57 = call ptr @lp_str_concat(ptr @.str14148, ptr %t56) + %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str14149) call void @fn_emit(ptr %t58) - call void @fn_emit(ptr @.str14006) + call void @fn_emit(ptr @.str14150) %t59 = load ptr, ptr %t49 - %t60 = call ptr @lp_str_concat(ptr @.str14007, ptr %t59) - %t61 = call ptr @lp_str_concat(ptr %t60, ptr @.str14008) + %t60 = call ptr @lp_str_concat(ptr @.str14151, ptr %t59) + %t61 = call ptr @lp_str_concat(ptr %t60, ptr @.str14152) call void @fn_emit(ptr %t61) %t62 = load ptr, ptr %t51 - %t63 = call ptr @lp_str_concat(ptr @.str14009, ptr %t62) - %t64 = call ptr @lp_str_concat(ptr %t63, ptr @.str14010) + %t63 = call ptr @lp_str_concat(ptr @.str14153, ptr %t62) + %t64 = call ptr @lp_str_concat(ptr %t63, ptr @.str14154) call void @fn_emit(ptr %t64) - call void @fn_emit(ptr @.str14011) - call void @fn_emit(ptr @.str14012) - call void @fn_emit(ptr @.str14013) + call void @fn_emit(ptr @.str14155) + call void @fn_emit(ptr @.str14156) + call void @fn_emit(ptr @.str14157) %t65 = load ptr, ptr %t45 - %t66 = call ptr @lp_str_concat(ptr @.str14014, ptr %t65) - %t67 = call ptr @lp_str_concat(ptr %t66, ptr @.str14015) + %t66 = call ptr @lp_str_concat(ptr @.str14158, ptr %t65) + %t67 = call ptr @lp_str_concat(ptr %t66, ptr @.str14159) call void @fn_emit(ptr %t67) - call void @fn_emit(ptr @.str14016) - call void @fn_emit(ptr @.str14017) - call void @fn_emit(ptr @.str14018) + call void @fn_emit(ptr @.str14160) + call void @fn_emit(ptr @.str14161) + call void @fn_emit(ptr @.str14162) %t68 = load ptr, ptr %t14 - %t69 = call ptr @lp_str_concat(ptr @.str14019, ptr %t68) - %t70 = call ptr @lp_str_concat(ptr %t69, ptr @.str14020) + %t69 = call ptr @lp_str_concat(ptr @.str14163, ptr %t68) + %t70 = call ptr @lp_str_concat(ptr %t69, ptr @.str14164) call void @fn_emit(ptr %t70) - call void @fn_emit(ptr @.str14021) - call void @fn_emit(ptr @.str14022) - call void @fn_emit(ptr @.str14023) + call void @fn_emit(ptr @.str14165) + call void @fn_emit(ptr @.str14166) + call void @fn_emit(ptr @.str14167) %t71 = load ptr, ptr %t14 call void @fn_emit(ptr %t71) - call void @fn_emit(ptr @.str14024) - call void @fn_emit(ptr @.str14025) - call void @fn_emit(ptr @.str14026) + call void @fn_emit(ptr @.str14168) + call void @fn_emit(ptr @.str14169) + call void @fn_emit(ptr @.str14170) %t72 = load ptr, ptr %t14 call void @fn_emit(ptr %t72) - call void @fn_emit(ptr @.str14027) - call void @fn_emit(ptr @.str14028) - call void @fn_emit(ptr @.str14029) - call void @fn_emit(ptr @.str14030) - call void @fn_emit(ptr @.str14031) - call void @fn_emit(ptr @.str14032) - call void @fn_emit(ptr @.str14033) - call void @fn_emit(ptr @.str14034) - call void @fn_emit(ptr @.str14035) - call void @fn_emit(ptr @.str14036) - call void @fn_emit(ptr @.str14037) - call void @fn_emit(ptr @.str14038) - call void @fn_emith(ptr @.str14039) + call void @fn_emit(ptr @.str14171) + call void @fn_emit(ptr @.str14172) + call void @fn_emit(ptr @.str14173) + call void @fn_emit(ptr @.str14174) + call void @fn_emit(ptr @.str14175) + call void @fn_emit(ptr @.str14176) + call void @fn_emit(ptr @.str14177) + call void @fn_emit(ptr @.str14178) + call void @fn_emit(ptr @.str14179) + call void @fn_emit(ptr @.str14180) + call void @fn_emit(ptr @.str14181) + call void @fn_emit(ptr @.str14182) + call void @fn_emith(ptr @.str14183) br label %ret ret: ret void @@ -178559,7 +179333,7 @@ then0: br label %ret ifend2: %t31 = load ptr, ptr %t0 - %t32 = call ptr @lp_pak_open(ptr %t31, ptr @.str14040) + %t32 = call ptr @lp_pak_open(ptr %t31, ptr @.str14184) store ptr %t32, ptr %t33 %t34 = load ptr, ptr %t33 %t35 = icmp eq ptr %t34, null @@ -178668,7 +179442,7 @@ then0: %t11 = sub i32 %t10, 6 %t12 = load i32, ptr %t4 %t13 = call ptr @lp_str_slice(ptr %t9, i32 %t11, i32 %t12) - %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str14041) + %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str14185) %t15 = icmp ne i32 %t14, 0 br i1 %t15, label %then3, label %ifend5 then3: @@ -178754,7 +179528,7 @@ then3: br label %ret ifend5: %t20 = load ptr, ptr %t0 - %t21 = call ptr @lp_str_concat(ptr %t20, ptr @.str14042) + %t21 = call ptr @lp_str_concat(ptr %t20, ptr @.str14186) store ptr %t21, ptr %retval br label %ret ret: @@ -179016,16 +179790,16 @@ then0: %t4 = call ptr @fn_win_path(ptr %t3) store ptr %t4, ptr %t5 %t6 = load ptr, ptr %t5 - %t7 = call ptr @lp_str_concat(ptr @.str14043, ptr %t6) - %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str14044) + %t7 = call ptr @lp_str_concat(ptr @.str14187, ptr %t6) + %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str14188) %t9 = load ptr, ptr %t5 %t10 = call ptr @lp_str_concat(ptr %t8, ptr %t9) - %t11 = call ptr @lp_str_concat(ptr %t10, ptr @.str14045) + %t11 = call ptr @lp_str_concat(ptr %t10, ptr @.str14189) %t12 = call i32 @system(ptr %t11) br label %ifend2 else1: %t13 = load ptr, ptr %t0 - %t14 = call ptr @lp_str_concat(ptr @.str14046, ptr %t13) + %t14 = call ptr @lp_str_concat(ptr @.str14190, ptr %t13) %t15 = call i32 @system(ptr %t14) br label %ifend2 ifend2: @@ -179044,13 +179818,13 @@ entry: then0: %t3 = load ptr, ptr %t0 %t4 = call ptr @fn_win_path(ptr %t3) - %t5 = call ptr @lp_str_concat(ptr @.str14047, ptr %t4) - %t6 = call ptr @lp_str_concat(ptr %t5, ptr @.str14048) + %t5 = call ptr @lp_str_concat(ptr @.str14191, ptr %t4) + %t6 = call ptr @lp_str_concat(ptr %t5, ptr @.str14192) %t7 = call i32 @system(ptr %t6) br label %ifend2 else1: %t8 = load ptr, ptr %t0 - %t9 = call ptr @lp_str_concat(ptr @.str14049, ptr %t8) + %t9 = call ptr @lp_str_concat(ptr @.str14193, ptr %t8) %t10 = call i32 @system(ptr %t9) br label %ifend2 ifend2: @@ -179065,7 +179839,7 @@ entry: %t1 = alloca ptr %t9 = alloca ptr %t12 = alloca ptr - %t0 = call ptr @getenv(ptr @.str14050) + %t0 = call ptr @getenv(ptr @.str14194) store ptr %t0, ptr %t1 %t2 = load ptr, ptr %t1 %t3 = icmp ne ptr %t2, null @@ -179081,9 +179855,9 @@ ifend2: %t8 = icmp ne i32 %t7, 0 br i1 %t8, label %then3, label %ifend5 then3: - store ptr @.str14051, ptr %t9 + store ptr @.str14195, ptr %t9 %t10 = load ptr, ptr %t9 - %t11 = call ptr @lp_pak_open(ptr %t10, ptr @.str14052) + %t11 = call ptr @lp_pak_open(ptr %t10, ptr @.str14196) store ptr %t11, ptr %t12 %t13 = load ptr, ptr %t12 %t14 = icmp ne ptr %t13, null @@ -179094,14 +179868,14 @@ then6: %t17 = load ptr, ptr %t12 call i32 @fclose(ptr %t17) %t18 = load ptr, ptr %t9 - %t19 = call ptr @lp_str_concat(ptr @.str14053, ptr %t18) - %t20 = call ptr @lp_str_concat(ptr %t19, ptr @.str14054) + %t19 = call ptr @lp_str_concat(ptr @.str14197, ptr %t18) + %t20 = call ptr @lp_str_concat(ptr %t19, ptr @.str14198) store ptr %t20, ptr %retval br label %ret ifend8: br label %ifend5 ifend5: - store ptr @.str14055, ptr %retval + store ptr @.str14199, ptr %retval br label %ret ret: %t21 = load ptr, ptr %retval @@ -179112,7 +179886,7 @@ define void @fn_show_version() { entry: %t3 = alloca ptr %t0 = call ptr @fn_ludic_home() - %t1 = call ptr @fn_join_path(ptr %t0, ptr @.str14056) + %t1 = call ptr @fn_join_path(ptr %t0, ptr @.str14200) %t2 = call ptr @fn_read_file(ptr %t1) store ptr %t2, ptr %t3 %t4 = load ptr, ptr %t3 @@ -179121,12 +179895,12 @@ entry: %t7 = icmp ne i32 %t6, 0 br i1 %t7, label %then0, label %else1 then0: - call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr @.str14057) + call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr @.str14201) br label %ifend2 else1: %t8 = load ptr, ptr %t3 %t9 = call ptr @fn_chomp(ptr %t8) - %t10 = call ptr @lp_str_concat(ptr @.str14058, ptr %t9) + %t10 = call ptr @lp_str_concat(ptr @.str14202, ptr %t9) call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr %t10) br label %ifend2 ifend2: @@ -179150,7 +179924,7 @@ entry: define void @L_init_globals() { entry: - store ptr @.str14059, ptr @g_g_parse_file + store ptr @.str14203, ptr @g_g_parse_file %t0 = getelementptr %LSlice, ptr null, i32 1 %t1 = ptrtoint ptr %t0 to i64 %t2 = call ptr @malloc(i64 %t1) @@ -179209,7 +179983,7 @@ entry: store ptr %t29, ptr @g_g_mod_friends %t33 = call ptr @fn_fm_new() store ptr %t33, ptr @g_g_fm_float - store ptr @.str14060, ptr @g_g_err_file + store ptr @.str14204, ptr @g_g_err_file %t34 = getelementptr %LSlice, ptr null, i32 1 %t35 = ptrtoint ptr %t34 to i64 %t36 = call ptr @malloc(i64 %t35) @@ -179420,7 +180194,7 @@ entry: %t159 = getelementptr inbounds %LSlice, ptr %t156, i32 0, i32 2 store i32 0, ptr %t159 store ptr %t156, ptr @g_g_pk_name - store ptr @.str14061, ptr @g_g_mu_done + store ptr @.str14205, ptr @g_g_mu_done %t160 = getelementptr %LSlice, ptr null, i32 1 %t161 = ptrtoint ptr %t160 to i64 %t162 = call ptr @malloc(i64 %t161) @@ -179921,7 +180695,7 @@ entry: %t459 = getelementptr inbounds %LSlice, ptr %t456, i32 0, i32 2 store i32 0, ptr %t459 store ptr %t456, ptr @g_g_mg_report - store ptr @.str14062, ptr @g_g_mg_entry + store ptr @.str14206, ptr @g_g_mg_entry %t460 = getelementptr %LSlice, ptr null, i32 1 %t461 = ptrtoint ptr %t460 to i64 %t462 = call ptr @malloc(i64 %t461) @@ -179962,7 +180736,7 @@ entry: %t483 = getelementptr inbounds %LSlice, ptr %t480, i32 0, i32 2 store i32 0, ptr %t483 store ptr %t480, ptr @g_g_mg_lines - store ptr @.str14063, ptr @g_g_mg_keys + store ptr @.str14207, ptr @g_g_mg_keys %t484 = getelementptr %LSlice, ptr null, i32 1 %t485 = ptrtoint ptr %t484 to i64 %t486 = call ptr @malloc(i64 %t485) @@ -180343,7 +181117,7 @@ entry: %t711 = getelementptr inbounds %LSlice, ptr %t708, i32 0, i32 2 store i32 0, ptr %t711 store ptr %t708, ptr @g_g_cm_ps - store ptr @.str14064, ptr @g_g_src_name + store ptr @.str14208, ptr @g_g_src_name %t712 = getelementptr %LSlice, ptr null, i32 1 %t713 = ptrtoint ptr %t712 to i64 %t714 = call ptr @malloc(i64 %t713) @@ -180374,7 +181148,7 @@ entry: %t729 = getelementptr inbounds %LSlice, ptr %t726, i32 0, i32 2 store i32 0, ptr %t729 store ptr %t726, ptr @g_g_ix_vals - store ptr @.str14065, ptr @g_g_ret_label + store ptr @.str14209, ptr @g_g_ret_label %t730 = getelementptr %LSlice, ptr null, i32 1 %t731 = ptrtoint ptr %t730 to i64 %t732 = call ptr @malloc(i64 %t731) @@ -180555,7 +181329,7 @@ entry: %t837 = getelementptr inbounds %LSlice, ptr %t834, i32 0, i32 2 store i32 0, ptr %t837 store ptr %t834, ptr @g_g_det_names - store ptr @.str14066, ptr @g_g_det_ctx + store ptr @.str14210, ptr @g_g_det_ctx %t838 = getelementptr %LSlice, ptr null, i32 1 %t839 = ptrtoint ptr %t838 to i64 %t840 = call ptr @malloc(i64 %t839) @@ -180726,7 +181500,7 @@ entry: %t939 = getelementptr inbounds %LSlice, ptr %t936, i32 0, i32 2 store i32 0, ptr %t939 store ptr %t936, ptr @g_ck_tys - store ptr @.str14067, ptr @g_ck_ret + store ptr @.str14211, ptr @g_ck_ret %t940 = getelementptr %LSlice, ptr null, i32 1 %t941 = ptrtoint ptr %t940 to i64 %t942 = call ptr @malloc(i64 %t941) @@ -180896,7 +181670,7 @@ wbody1: %t27 = load ptr, ptr %t26 store ptr %t27, ptr %t28 %t29 = load ptr, ptr %t28 - %t30 = call i32 @lp_str_eq(ptr %t29, ptr @.str14068) + %t30 = call i32 @lp_str_eq(ptr %t29, ptr @.str14212) %t31 = icmp ne i32 %t30, 0 br i1 %t31, label %then3, label %else4 then3: @@ -180904,7 +181678,7 @@ then3: br label %ifend5 else4: %t32 = load ptr, ptr %t28 - %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str14069) + %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str14213) %t34 = icmp ne i32 %t33, 0 br i1 %t34, label %then6, label %else7 then6: @@ -180912,7 +181686,7 @@ then6: br label %ifend8 else7: %t35 = load ptr, ptr %t28 - %t36 = call i32 @lp_str_eq(ptr %t35, ptr @.str14070) + %t36 = call i32 @lp_str_eq(ptr %t35, ptr @.str14214) %t37 = icmp ne i32 %t36, 0 br i1 %t37, label %then9, label %else10 then9: @@ -180920,7 +181694,7 @@ then9: br label %ifend11 else10: %t38 = load ptr, ptr %t28 - %t39 = call i32 @lp_str_eq(ptr %t38, ptr @.str14071) + %t39 = call i32 @lp_str_eq(ptr %t38, ptr @.str14215) %t40 = icmp ne i32 %t39, 0 br i1 %t40, label %then12, label %else13 then12: @@ -180928,7 +181702,7 @@ then12: br label %ifend14 else13: %t41 = load ptr, ptr %t28 - %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str14072) + %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str14216) %t43 = icmp ne i32 %t42, 0 br i1 %t43, label %then15, label %else16 then15: @@ -180936,7 +181710,7 @@ then15: br label %ifend17 else16: %t44 = load ptr, ptr %t28 - %t45 = call i32 @lp_str_eq(ptr %t44, ptr @.str14073) + %t45 = call i32 @lp_str_eq(ptr %t44, ptr @.str14217) %t46 = icmp ne i32 %t45, 0 br i1 %t46, label %then18, label %else19 then18: @@ -180945,7 +181719,7 @@ then18: br label %ifend20 else19: %t47 = load ptr, ptr %t28 - %t48 = call i32 @lp_str_eq(ptr %t47, ptr @.str14074) + %t48 = call i32 @lp_str_eq(ptr %t47, ptr @.str14218) %t49 = icmp ne i32 %t48, 0 br i1 %t49, label %then21, label %else22 then21: @@ -180953,7 +181727,7 @@ then21: br label %ifend23 else22: %t50 = load ptr, ptr %t28 - %t51 = call i32 @lp_str_eq(ptr %t50, ptr @.str14075) + %t51 = call i32 @lp_str_eq(ptr %t50, ptr @.str14219) %t52 = icmp ne i32 %t51, 0 br i1 %t52, label %then24, label %else25 then24: @@ -180961,7 +181735,7 @@ then24: br label %ifend26 else25: %t53 = load ptr, ptr %t28 - %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str14076) + %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str14220) %t55 = icmp ne i32 %t54, 0 br i1 %t55, label %then27, label %else28 then27: @@ -180969,7 +181743,7 @@ then27: br label %ifend29 else28: %t56 = load ptr, ptr %t28 - %t57 = call i32 @lp_str_eq(ptr %t56, ptr @.str14077) + %t57 = call i32 @lp_str_eq(ptr %t56, ptr @.str14221) %t58 = icmp ne i32 %t57, 0 br i1 %t58, label %then30, label %else31 then30: @@ -180977,7 +181751,7 @@ then30: br label %ifend32 else31: %t59 = load ptr, ptr %t28 - %t60 = call i32 @lp_str_eq(ptr %t59, ptr @.str14078) + %t60 = call i32 @lp_str_eq(ptr %t59, ptr @.str14222) %t61 = icmp ne i32 %t60, 0 br i1 %t61, label %then33, label %else34 then33: @@ -180985,7 +181759,7 @@ then33: br label %ifend35 else34: %t62 = load ptr, ptr %t28 - %t63 = call i32 @lp_str_eq(ptr %t62, ptr @.str14079) + %t63 = call i32 @lp_str_eq(ptr %t62, ptr @.str14223) %t64 = icmp ne i32 %t63, 0 br i1 %t64, label %then36, label %else37 then36: @@ -181011,7 +181785,7 @@ ifend41: br label %ifend38 else37: %t76 = load ptr, ptr %t28 - %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str14080) + %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str14224) %t78 = icmp ne i32 %t77, 0 br i1 %t78, label %then42, label %else43 then42: @@ -181019,7 +181793,7 @@ then42: br label %ifend44 else43: %t79 = load ptr, ptr %t28 - %t80 = call i32 @lp_str_eq(ptr %t79, ptr @.str14081) + %t80 = call i32 @lp_str_eq(ptr %t79, ptr @.str14225) %t81 = icmp ne i32 %t80, 0 br i1 %t81, label %then45, label %else46 then45: @@ -181028,7 +181802,7 @@ then45: br label %ifend47 else46: %t82 = load ptr, ptr %t28 - %t83 = call i32 @lp_str_eq(ptr %t82, ptr @.str14082) + %t83 = call i32 @lp_str_eq(ptr %t82, ptr @.str14226) %t84 = icmp ne i32 %t83, 0 br i1 %t84, label %then48, label %else49 then48: @@ -181036,7 +181810,7 @@ then48: br label %ifend50 else49: %t85 = load ptr, ptr %t28 - %t86 = call i32 @lp_str_eq(ptr %t85, ptr @.str14083) + %t86 = call i32 @lp_str_eq(ptr %t85, ptr @.str14227) %t87 = icmp ne i32 %t86, 0 br i1 %t87, label %then51, label %else52 then51: @@ -181044,7 +181818,7 @@ then51: br label %ifend53 else52: %t88 = load ptr, ptr %t28 - %t89 = call i32 @lp_str_eq(ptr %t88, ptr @.str14084) + %t89 = call i32 @lp_str_eq(ptr %t88, ptr @.str14228) %t90 = icmp ne i32 %t89, 0 br i1 %t90, label %then54, label %else55 then54: @@ -181068,7 +181842,7 @@ ifend59: br label %ifend56 else55: %t102 = load ptr, ptr %t28 - %t103 = call i32 @lp_str_eq(ptr %t102, ptr @.str14085) + %t103 = call i32 @lp_str_eq(ptr %t102, ptr @.str14229) %t104 = icmp ne i32 %t103, 0 br i1 %t104, label %then60, label %else61 then60: @@ -181076,7 +181850,7 @@ then60: br label %ifend62 else61: %t105 = load ptr, ptr %t28 - %t106 = call i32 @lp_str_eq(ptr %t105, ptr @.str14086) + %t106 = call i32 @lp_str_eq(ptr %t105, ptr @.str14230) %t107 = icmp ne i32 %t106, 0 br i1 %t107, label %then63, label %else64 then63: @@ -181100,7 +181874,7 @@ ifend68: br label %ifend65 else64: %t119 = load ptr, ptr %t28 - %t120 = call i32 @lp_str_eq(ptr %t119, ptr @.str14087) + %t120 = call i32 @lp_str_eq(ptr %t119, ptr @.str14231) %t121 = icmp ne i32 %t120, 0 br i1 %t121, label %then69, label %else70 then69: @@ -181124,7 +181898,7 @@ ifend74: br label %ifend71 else70: %t133 = load ptr, ptr %t28 - %t134 = call i32 @lp_str_eq(ptr %t133, ptr @.str14088) + %t134 = call i32 @lp_str_eq(ptr %t133, ptr @.str14232) %t135 = icmp ne i32 %t134, 0 br i1 %t135, label %then75, label %else76 then75: @@ -181174,7 +181948,7 @@ ifend80: br label %ifend77 else76: %t166 = load ptr, ptr %t28 - %t167 = call i32 @lp_str_eq(ptr %t166, ptr @.str14089) + %t167 = call i32 @lp_str_eq(ptr %t166, ptr @.str14233) %t168 = icmp ne i32 %t167, 0 br i1 %t168, label %then83, label %else84 then83: @@ -181207,8 +181981,8 @@ else84: br i1 %t186, label %then89, label %else90 then89: %t187 = load ptr, ptr %t28 - %t188 = call ptr @lp_str_concat(ptr @.str14090, ptr %t187) - %t189 = call ptr @lp_str_concat(ptr %t188, ptr @.str14091) + %t188 = call ptr @lp_str_concat(ptr @.str14234, ptr %t187) + %t189 = call ptr @lp_str_concat(ptr %t188, ptr @.str14235) store ptr %t189, ptr %t190 %t191 = load ptr, ptr @__stderrp %t192 = load ptr, ptr %t190 @@ -181279,7 +182053,7 @@ wend2: %t205 = icmp ne i32 %t204, 0 br i1 %t205, label %then92, label %ifend94 then92: - call void @fn_die(ptr @.str14092) + call void @fn_die(ptr @.str14236) br label %ifend94 ifend94: %t206 = load ptr, ptr %t7 @@ -181289,7 +182063,7 @@ ifend94: br i1 %t209, label %then95, label %else96 then95: %t210 = load ptr, ptr %t7 - %t211 = call i32 @fn_has_sub(ptr %t210, ptr @.str14093) + %t211 = call i32 @fn_has_sub(ptr %t210, ptr @.str14237) store i32 %t211, ptr @g_g_target_win br label %ifend97 else96: @@ -181306,7 +182080,7 @@ ifend97: %t219 = icmp ne i32 %t218, 0 br i1 %t219, label %then98, label %ifend100 then98: - call void @fn_die(ptr @.str14094) + call void @fn_die(ptr @.str14238) br label %ifend100 ifend100: %t220 = load ptr, ptr %t0 @@ -181484,9 +182258,9 @@ then136: %t303 = icmp ne i32 %t302, 0 br i1 %t303, label %then139, label %else140 then139: - %t304 = call ptr @fn_getenv_or(ptr @.str14095, ptr @.str14096) + %t304 = call ptr @fn_getenv_or(ptr @.str14239, ptr @.str14240) %t305 = call ptr @fn_fwd_slashes(ptr %t304) - %t306 = call ptr @lp_str_concat(ptr %t305, ptr @.str14097) + %t306 = call ptr @lp_str_concat(ptr %t305, ptr @.str14241) %t307 = load ptr, ptr %t0 %t308 = call ptr @fn_base_name(ptr %t307) %t309 = call ptr @fn_strip_ludic(ptr %t308) @@ -181497,7 +182271,7 @@ else140: %t311 = load ptr, ptr %t0 %t312 = call ptr @fn_base_name(ptr %t311) %t313 = call ptr @fn_strip_ludic(ptr %t312) - %t314 = call ptr @lp_str_concat(ptr @.str14098, ptr %t313) + %t314 = call ptr @lp_str_concat(ptr @.str14242, ptr %t313) store ptr %t314, ptr %t1 br label %ifend141 ifend141: @@ -181523,7 +182297,7 @@ then145: %t328 = sub i32 %t327, 4 %t329 = load i32, ptr %t320 %t330 = call ptr @lp_str_slice(ptr %t326, i32 %t328, i32 %t329) - %t331 = call i32 @lp_str_eq(ptr %t330, ptr @.str14099) + %t331 = call i32 @lp_str_eq(ptr %t330, ptr @.str14243) store i32 %t331, ptr %t321 br label %ifend147 ifend147: @@ -181534,7 +182308,7 @@ ifend147: br i1 %t335, label %then148, label %ifend150 then148: %t336 = load ptr, ptr %t1 - %t337 = call ptr @lp_str_concat(ptr %t336, ptr @.str14100) + %t337 = call ptr @lp_str_concat(ptr %t336, ptr @.str14244) store ptr %t337, ptr %t1 br label %ifend150 ifend150: @@ -181556,7 +182330,7 @@ then151: br label %ifend153 ifend153: %t348 = load ptr, ptr %t1 - %t349 = call ptr @lp_str_concat(ptr %t348, ptr @.str14101) + %t349 = call ptr @lp_str_concat(ptr %t348, ptr @.str14245) store ptr %t349, ptr %t350 %t351 = load ptr, ptr %t350 %t352 = call i32 @fn_ir_flush(ptr %t351) @@ -181565,7 +182339,7 @@ ifend153: %t355 = icmp ne i32 %t354, 0 br i1 %t355, label %then154, label %ifend156 then154: - call void @fn_die(ptr @.str14102) + call void @fn_die(ptr @.str14246) br label %ifend156 ifend156: %t356 = call ptr @fn_find_cc() @@ -181573,7 +182347,7 @@ ifend156: %t358 = call ptr @fn_ludic_home() store ptr %t358, ptr %t359 %t360 = load ptr, ptr %t357 - %t361 = call ptr @lp_str_concat(ptr %t360, ptr @.str14103) + %t361 = call ptr @lp_str_concat(ptr %t360, ptr @.str14247) %t362 = load ptr, ptr %t350 %t363 = call ptr @lp_str_concat(ptr %t361, ptr %t362) store ptr %t363, ptr %t364 @@ -181586,26 +182360,26 @@ then157: br i1 %t368, label %then160, label %ifend162 then160: %t369 = load ptr, ptr %t359 - %t370 = call ptr @fn_join_path(ptr %t369, ptr @.str14104) + %t370 = call ptr @fn_join_path(ptr %t369, ptr @.str14248) store ptr %t370, ptr %t371 %t372 = load ptr, ptr %t364 - %t373 = call ptr @lp_str_concat(ptr %t372, ptr @.str14105) + %t373 = call ptr @lp_str_concat(ptr %t372, ptr @.str14249) %t374 = load ptr, ptr %t371 %t375 = call ptr @lp_str_concat(ptr %t373, ptr %t374) - %t376 = call ptr @lp_str_concat(ptr %t375, ptr @.str14106) + %t376 = call ptr @lp_str_concat(ptr %t375, ptr @.str14250) store ptr %t376, ptr %t364 %t377 = load i32, ptr @g_g_uses_audio %t378 = icmp ne i32 %t377, 0 br i1 %t378, label %then163, label %ifend165 then163: %t379 = load ptr, ptr %t359 - %t380 = call ptr @fn_join_path(ptr %t379, ptr @.str14107) + %t380 = call ptr @fn_join_path(ptr %t379, ptr @.str14251) store ptr %t380, ptr %t381 %t382 = load ptr, ptr %t364 - %t383 = call ptr @lp_str_concat(ptr %t382, ptr @.str14108) + %t383 = call ptr @lp_str_concat(ptr %t382, ptr @.str14252) %t384 = load ptr, ptr %t381 %t385 = call ptr @lp_str_concat(ptr %t383, ptr %t384) - %t386 = call ptr @lp_str_concat(ptr %t385, ptr @.str14109) + %t386 = call ptr @lp_str_concat(ptr %t385, ptr @.str14253) store ptr %t386, ptr %t364 br label %ifend165 ifend165: @@ -181618,26 +182392,26 @@ else158: br i1 %t388, label %then166, label %ifend168 then166: %t389 = load ptr, ptr %t359 - %t390 = call ptr @fn_join_path(ptr %t389, ptr @.str14110) + %t390 = call ptr @fn_join_path(ptr %t389, ptr @.str14254) store ptr %t390, ptr %t391 %t392 = load ptr, ptr %t364 - %t393 = call ptr @lp_str_concat(ptr %t392, ptr @.str14111) + %t393 = call ptr @lp_str_concat(ptr %t392, ptr @.str14255) %t394 = load ptr, ptr %t391 %t395 = call ptr @lp_str_concat(ptr %t393, ptr %t394) - %t396 = call ptr @lp_str_concat(ptr %t395, ptr @.str14112) + %t396 = call ptr @lp_str_concat(ptr %t395, ptr @.str14256) store ptr %t396, ptr %t364 %t397 = load i32, ptr @g_g_uses_audio %t398 = icmp ne i32 %t397, 0 br i1 %t398, label %then169, label %ifend171 then169: %t399 = load ptr, ptr %t359 - %t400 = call ptr @fn_join_path(ptr %t399, ptr @.str14113) + %t400 = call ptr @fn_join_path(ptr %t399, ptr @.str14257) store ptr %t400, ptr %t401 %t402 = load ptr, ptr %t364 - %t403 = call ptr @lp_str_concat(ptr %t402, ptr @.str14114) + %t403 = call ptr @lp_str_concat(ptr %t402, ptr @.str14258) %t404 = load ptr, ptr %t401 %t405 = call ptr @lp_str_concat(ptr %t403, ptr %t404) - %t406 = call ptr @lp_str_concat(ptr %t405, ptr @.str14115) + %t406 = call ptr @lp_str_concat(ptr %t405, ptr @.str14259) store ptr %t406, ptr %t364 br label %ifend171 ifend171: @@ -181654,17 +182428,17 @@ then172: br i1 %t410, label %then175, label %else176 then175: %t411 = load ptr, ptr %t364 - %t412 = call ptr @lp_str_concat(ptr %t411, ptr @.str14116) + %t412 = call ptr @lp_str_concat(ptr %t411, ptr @.str14260) %t413 = load ptr, ptr %t359 - %t414 = call ptr @fn_join_path(ptr %t413, ptr @.str14117) + %t414 = call ptr @fn_join_path(ptr %t413, ptr @.str14261) %t415 = call ptr @lp_str_concat(ptr %t412, ptr %t414) store ptr %t415, ptr %t364 br label %ifend177 else176: %t416 = load ptr, ptr %t364 - %t417 = call ptr @lp_str_concat(ptr %t416, ptr @.str14118) + %t417 = call ptr @lp_str_concat(ptr %t416, ptr @.str14262) %t418 = load ptr, ptr %t359 - %t419 = call ptr @fn_join_path(ptr %t418, ptr @.str14119) + %t419 = call ptr @fn_join_path(ptr %t418, ptr @.str14263) %t420 = call ptr @lp_str_concat(ptr %t417, ptr %t419) store ptr %t420, ptr %t364 br label %ifend177 @@ -181680,18 +182454,18 @@ then178: br i1 %t424, label %then181, label %else182 then181: %t425 = load ptr, ptr %t364 - %t426 = call ptr @lp_str_concat(ptr %t425, ptr @.str14120) + %t426 = call ptr @lp_str_concat(ptr %t425, ptr @.str14264) %t427 = load ptr, ptr %t359 - %t428 = call ptr @fn_join_path(ptr %t427, ptr @.str14121) + %t428 = call ptr @fn_join_path(ptr %t427, ptr @.str14265) %t429 = call ptr @lp_str_concat(ptr %t426, ptr %t428) - %t430 = call ptr @lp_str_concat(ptr %t429, ptr @.str14122) + %t430 = call ptr @lp_str_concat(ptr %t429, ptr @.str14266) store ptr %t430, ptr %t364 br label %ifend183 else182: %t431 = load ptr, ptr %t364 - %t432 = call ptr @lp_str_concat(ptr %t431, ptr @.str14123) + %t432 = call ptr @lp_str_concat(ptr %t431, ptr @.str14267) %t433 = load ptr, ptr %t359 - %t434 = call ptr @fn_join_path(ptr %t433, ptr @.str14124) + %t434 = call ptr @fn_join_path(ptr %t433, ptr @.str14268) %t435 = call ptr @lp_str_concat(ptr %t432, ptr %t434) store ptr %t435, ptr %t364 br label %ifend183 @@ -181715,7 +182489,7 @@ scend185: br i1 %t444, label %then186, label %ifend188 then186: %t445 = load ptr, ptr %t364 - %t446 = call ptr @lp_str_concat(ptr %t445, ptr @.str14125) + %t446 = call ptr @lp_str_concat(ptr %t445, ptr @.str14269) store ptr %t446, ptr %t364 br label %ifend188 ifend188: @@ -181728,17 +182502,17 @@ then189: br i1 %t450, label %then192, label %else193 then192: %t451 = load ptr, ptr %t364 - %t452 = call ptr @lp_str_concat(ptr %t451, ptr @.str14126) + %t452 = call ptr @lp_str_concat(ptr %t451, ptr @.str14270) %t453 = load ptr, ptr %t359 - %t454 = call ptr @fn_join_path(ptr %t453, ptr @.str14127) + %t454 = call ptr @fn_join_path(ptr %t453, ptr @.str14271) %t455 = call ptr @lp_str_concat(ptr %t452, ptr %t454) store ptr %t455, ptr %t364 br label %ifend194 else193: %t456 = load ptr, ptr %t364 - %t457 = call ptr @lp_str_concat(ptr %t456, ptr @.str14128) + %t457 = call ptr @lp_str_concat(ptr %t456, ptr @.str14272) %t458 = load ptr, ptr %t359 - %t459 = call ptr @fn_join_path(ptr %t458, ptr @.str14129) + %t459 = call ptr @fn_join_path(ptr %t458, ptr @.str14273) %t460 = call ptr @lp_str_concat(ptr %t457, ptr %t459) store ptr %t460, ptr %t364 br label %ifend194 @@ -181754,24 +182528,24 @@ then195: br i1 %t464, label %then198, label %else199 then198: %t465 = load ptr, ptr %t359 - %t466 = call ptr @fn_join_path(ptr %t465, ptr @.str14130) + %t466 = call ptr @fn_join_path(ptr %t465, ptr @.str14274) store ptr %t466, ptr %t467 %t468 = load ptr, ptr %t364 - %t469 = call ptr @lp_str_concat(ptr %t468, ptr @.str14131) + %t469 = call ptr @lp_str_concat(ptr %t468, ptr @.str14275) %t470 = load ptr, ptr %t467 %t471 = call ptr @lp_str_concat(ptr %t469, ptr %t470) - %t472 = call ptr @lp_str_concat(ptr %t471, ptr @.str14132) + %t472 = call ptr @lp_str_concat(ptr %t471, ptr @.str14276) store ptr %t472, ptr %t364 br label %ifend200 else199: %t473 = load ptr, ptr %t359 - %t474 = call ptr @fn_join_path(ptr %t473, ptr @.str14133) + %t474 = call ptr @fn_join_path(ptr %t473, ptr @.str14277) store ptr %t474, ptr %t475 %t476 = load ptr, ptr %t364 - %t477 = call ptr @lp_str_concat(ptr %t476, ptr @.str14134) + %t477 = call ptr @lp_str_concat(ptr %t476, ptr @.str14278) %t478 = load ptr, ptr %t475 %t479 = call ptr @lp_str_concat(ptr %t477, ptr %t478) - %t480 = call ptr @lp_str_concat(ptr %t479, ptr @.str14135) + %t480 = call ptr @lp_str_concat(ptr %t479, ptr @.str14279) store ptr %t480, ptr %t364 br label %ifend200 ifend200: @@ -181786,51 +182560,51 @@ then201: br i1 %t484, label %then204, label %else205 then204: %t485 = load ptr, ptr %t359 - %t486 = call ptr @fn_join_path(ptr %t485, ptr @.str14136) + %t486 = call ptr @fn_join_path(ptr %t485, ptr @.str14280) store ptr %t486, ptr %t487 %t488 = load ptr, ptr %t359 - %t489 = call ptr @fn_join_path(ptr %t488, ptr @.str14137) + %t489 = call ptr @fn_join_path(ptr %t488, ptr @.str14281) store ptr %t489, ptr %t490 %t491 = load ptr, ptr %t359 - %t492 = call ptr @fn_join_path(ptr %t491, ptr @.str14138) + %t492 = call ptr @fn_join_path(ptr %t491, ptr @.str14282) store ptr %t492, ptr %t493 %t494 = load i32, ptr @g_g_windowed %t495 = icmp ne i32 %t494, 0 br i1 %t495, label %then207, label %ifend209 then207: %t496 = load ptr, ptr %t359 - %t497 = call ptr @fn_join_path(ptr %t496, ptr @.str14139) + %t497 = call ptr @fn_join_path(ptr %t496, ptr @.str14283) store ptr %t497, ptr %t493 br label %ifend209 ifend209: %t498 = load ptr, ptr %t364 - %t499 = call ptr @lp_str_concat(ptr %t498, ptr @.str14140) + %t499 = call ptr @lp_str_concat(ptr %t498, ptr @.str14284) %t500 = load ptr, ptr %t487 %t501 = call ptr @lp_str_concat(ptr %t499, ptr %t500) - %t502 = call ptr @lp_str_concat(ptr %t501, ptr @.str14141) + %t502 = call ptr @lp_str_concat(ptr %t501, ptr @.str14285) %t503 = load ptr, ptr %t490 %t504 = call ptr @lp_str_concat(ptr %t502, ptr %t503) - %t505 = call ptr @lp_str_concat(ptr %t504, ptr @.str14142) + %t505 = call ptr @lp_str_concat(ptr %t504, ptr @.str14286) %t506 = load ptr, ptr %t493 %t507 = call ptr @lp_str_concat(ptr %t505, ptr %t506) - %t508 = call ptr @lp_str_concat(ptr %t507, ptr @.str14143) + %t508 = call ptr @lp_str_concat(ptr %t507, ptr @.str14287) store ptr %t508, ptr %t364 br label %ifend206 else205: %t509 = load ptr, ptr %t359 - %t510 = call ptr @fn_join_path(ptr %t509, ptr @.str14144) + %t510 = call ptr @fn_join_path(ptr %t509, ptr @.str14288) store ptr %t510, ptr %t511 %t512 = load ptr, ptr %t359 - %t513 = call ptr @fn_join_path(ptr %t512, ptr @.str14145) + %t513 = call ptr @fn_join_path(ptr %t512, ptr @.str14289) store ptr %t513, ptr %t514 %t515 = load ptr, ptr %t364 - %t516 = call ptr @lp_str_concat(ptr %t515, ptr @.str14146) + %t516 = call ptr @lp_str_concat(ptr %t515, ptr @.str14290) %t517 = load ptr, ptr %t511 %t518 = call ptr @lp_str_concat(ptr %t516, ptr %t517) - %t519 = call ptr @lp_str_concat(ptr %t518, ptr @.str14147) + %t519 = call ptr @lp_str_concat(ptr %t518, ptr @.str14291) %t520 = load ptr, ptr %t514 %t521 = call ptr @lp_str_concat(ptr %t519, ptr %t520) - %t522 = call ptr @lp_str_concat(ptr %t521, ptr @.str14148) + %t522 = call ptr @lp_str_concat(ptr %t521, ptr @.str14292) store ptr %t522, ptr %t364 br label %ifend206 ifend206: @@ -181841,25 +182615,25 @@ ifend203: br i1 %t524, label %then210, label %ifend212 then210: %t525 = load ptr, ptr %t359 - %t526 = call ptr @fn_join_path(ptr %t525, ptr @.str14149) + %t526 = call ptr @fn_join_path(ptr %t525, ptr @.str14293) store ptr %t526, ptr %t527 %t528 = load ptr, ptr %t359 - %t529 = call ptr @fn_join_path(ptr %t528, ptr @.str14150) + %t529 = call ptr @fn_join_path(ptr %t528, ptr @.str14294) store ptr %t529, ptr %t530 %t531 = load i32, ptr @g_g_target_win %t532 = icmp ne i32 %t531, 0 br i1 %t532, label %then213, label %ifend215 then213: %t533 = load ptr, ptr %t359 - %t534 = call ptr @fn_join_path(ptr %t533, ptr @.str14151) + %t534 = call ptr @fn_join_path(ptr %t533, ptr @.str14295) store ptr %t534, ptr %t530 br label %ifend215 ifend215: %t535 = load ptr, ptr %t364 - %t536 = call ptr @lp_str_concat(ptr %t535, ptr @.str14152) + %t536 = call ptr @lp_str_concat(ptr %t535, ptr @.str14296) %t537 = load ptr, ptr %t527 %t538 = call ptr @lp_str_concat(ptr %t536, ptr %t537) - %t539 = call ptr @lp_str_concat(ptr %t538, ptr @.str14153) + %t539 = call ptr @lp_str_concat(ptr %t538, ptr @.str14297) %t540 = load ptr, ptr %t530 %t541 = call ptr @lp_str_concat(ptr %t539, ptr %t540) store ptr %t541, ptr %t364 @@ -181870,7 +182644,7 @@ ifend215: br i1 %t545, label %then216, label %ifend218 then216: %t546 = load ptr, ptr %t364 - %t547 = call ptr @lp_str_concat(ptr %t546, ptr @.str14154) + %t547 = call ptr @lp_str_concat(ptr %t546, ptr @.str14298) store ptr %t547, ptr %t364 br label %ifend218 ifend218: @@ -181893,7 +182667,7 @@ scend220: br i1 %t556, label %then221, label %ifend223 then221: %t557 = load ptr, ptr %t364 - %t558 = call ptr @lp_str_concat(ptr %t557, ptr @.str14155) + %t558 = call ptr @lp_str_concat(ptr %t557, ptr @.str14299) store ptr %t558, ptr %t364 br label %ifend223 ifend223: @@ -181915,7 +182689,7 @@ wcond224: br i1 %t570, label %wbody225, label %wend226 wbody225: %t571 = load ptr, ptr %t364 - %t572 = call ptr @lp_str_concat(ptr %t571, ptr @.str14156) + %t572 = call ptr @lp_str_concat(ptr %t571, ptr @.str14300) %t573 = load ptr, ptr %t16 %t574 = load i32, ptr %t563 %t575 = getelementptr inbounds %LSlice, ptr %t573, i32 0, i32 0 @@ -181926,14 +182700,14 @@ wbody225: br i1 %t579, label %ixok227, label %ixbad228 ixbad228: %t580 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t580, ptr @.fmt_bounds, ptr @.str14157, i32 %t574, i32 %t578) + call i32 (ptr, ptr, ...) @fprintf(ptr %t580, ptr @.fmt_bounds, ptr @.str14301, i32 %t574, i32 %t578) call void @exit(i32 1) unreachable ixok227: %t581 = getelementptr inbounds ptr, ptr %t576, i32 %t574 %t582 = load ptr, ptr %t581 %t583 = call ptr @lp_str_concat(ptr %t572, ptr %t582) - %t584 = call ptr @lp_str_concat(ptr %t583, ptr @.str14158) + %t584 = call ptr @lp_str_concat(ptr %t583, ptr @.str14302) store ptr %t584, ptr %t364 %t585 = load i32, ptr %t563 %t586 = add i32 %t585, 1 @@ -181941,7 +182715,7 @@ ixok227: br label %wcond224 wend226: %t587 = load ptr, ptr %t364 - %t588 = call ptr @lp_str_concat(ptr %t587, ptr @.str14159) + %t588 = call ptr @lp_str_concat(ptr %t587, ptr @.str14303) %t589 = load ptr, ptr %t1 %t590 = call ptr @lp_str_concat(ptr %t588, ptr %t589) store ptr %t590, ptr %t364 @@ -181952,8 +182726,8 @@ wend226: br i1 %t594, label %then229, label %ifend231 then229: %t595 = load ptr, ptr %t364 - %t596 = call ptr @lp_str_concat(ptr @.str14160, ptr %t595) - %t597 = call ptr @lp_str_concat(ptr %t596, ptr @.str14161) + %t596 = call ptr @lp_str_concat(ptr @.str14304, ptr %t595) + %t597 = call ptr @lp_str_concat(ptr %t596, ptr @.str14305) store ptr %t597, ptr %t592 br label %ifend231 ifend231: @@ -181976,7 +182750,7 @@ ifend234: %t609 = icmp ne i32 %t608, 0 br i1 %t609, label %then235, label %ifend237 then235: - call void @fn_die(ptr @.str14162) + call void @fn_die(ptr @.str14306) br label %ifend237 ifend237: %t610 = load ptr, ptr %t17 @@ -181985,7 +182759,7 @@ ifend237: %t613 = icmp ne i32 %t612, 0 br i1 %t613, label %then238, label %ifend240 then238: - store ptr @.str14163, ptr %t614 + store ptr @.str14307, ptr %t614 store i32 0, ptr %t615 br label %wcond241 wcond241: @@ -182009,14 +182783,14 @@ wbody242: br i1 %t630, label %ixok244, label %ixbad245 ixbad245: %t631 = load ptr, ptr @__stderrp - call i32 (ptr, ptr, ...) @fprintf(ptr %t631, ptr @.fmt_bounds, ptr @.str14164, i32 %t625, i32 %t629) + call i32 (ptr, ptr, ...) @fprintf(ptr %t631, ptr @.fmt_bounds, ptr @.str14308, i32 %t625, i32 %t629) call void @exit(i32 1) unreachable ixok244: %t632 = getelementptr inbounds ptr, ptr %t627, i32 %t625 %t633 = load ptr, ptr %t632 %t634 = call ptr @lp_str_concat(ptr %t623, ptr %t633) - %t635 = call ptr @lp_str_concat(ptr %t634, ptr @.str14165) + %t635 = call ptr @lp_str_concat(ptr %t634, ptr @.str14309) store ptr %t635, ptr %t614 %t636 = load i32, ptr %t615 %t637 = add i32 %t636, 1 @@ -182024,7 +182798,7 @@ ixok244: br label %wcond241 wend243: %t638 = load ptr, ptr %t17 - %t639 = call ptr @lp_pak_open(ptr %t638, ptr @.str14166) + %t639 = call ptr @lp_pak_open(ptr %t638, ptr @.str14310) store ptr %t639, ptr %t640 %t641 = load ptr, ptr %t640 %t642 = icmp ne ptr %t641, null @@ -182056,8 +182830,8 @@ then249: then252: %t658 = load ptr, ptr %t1 %t659 = call ptr @fn_win_path(ptr %t658) - %t660 = call ptr @lp_str_concat(ptr @.str14167, ptr %t659) - %t661 = call ptr @lp_str_concat(ptr %t660, ptr @.str14168) + %t660 = call ptr @lp_str_concat(ptr @.str14311, ptr %t659) + %t661 = call ptr @lp_str_concat(ptr %t660, ptr @.str14312) %t662 = call i32 @system(ptr %t661) call void @exit(i32 %t662) unreachable diff --git a/selfhost/ludicc.win.seed.ll b/selfhost/ludicc.win.seed.ll index 303f1af1..b4d2bade 100644 --- a/selfhost/ludicc.win.seed.ll +++ b/selfhost/ludicc.win.seed.ll @@ -2045,7 +2045,7 @@ entry: @.str1311 = private unnamed_addr constant [2 x i8] c")\00" @.str1312 = private unnamed_addr constant [125 x i8] c"export state LudicActions {\0A kinds: []int = new []int\0A vals: []pointer = new []pointer\0A head: int = 0\0A depth: int = 0\0A}\0A\00" @.str1313 = private unnamed_addr constant [122 x i8] c"export function ludic_act_push(q: mut LudicActions, k: int, v: pointer) -> void {\0A push(q.kinds, k)\0A push(q.vals, v)\0A}\0A\00" -@.str1314 = private unnamed_addr constant [150 x i8] c"export function drain_actions(q: mut LudicActions) -> void {\0A if q.depth > 0 { return }\0A q.depth = 1\0A var pass = 0\0A var round_end = len(q.kinds)\0A\00" +@.str1314 = private unnamed_addr constant [171 x i8] c"export function drain_actions(q: mut LudicActions) -> void {\0A if q.depth > 0 or len(q.kinds) == 0 { return }\0A q.depth = 1\0A var pass = 0\0A var round_end = len(q.kinds)\0A\00" @.str1315 = private unnamed_addr constant [109 x i8] c" while q.head < len(q.kinds) {\0A if q.head == round_end {\0A pass += 1\0A round_end = len(q.kinds)\0A\00" @.str1316 = private unnamed_addr constant [18 x i8] c" if pass >= \00" @.str1317 = private unnamed_addr constant [47 x i8] c" { ludic_act_runaway(q.kinds[q.head]) }\0A }\0A\00" @@ -2058,7 +2058,7 @@ entry: @.str1324 = private unnamed_addr constant [54 x i8] c"build/cfree/selfhost.ludic:4082: index out of range: \00" @.str1325 = private unnamed_addr constant [5 x i8] c"(v)\0A\00" @.str1326 = private unnamed_addr constant [7 x i8] c" }\0A\00" -@.str1327 = private unnamed_addr constant [81 x i8] c" }\0A q.kinds = new []int\0A q.vals = new []pointer\0A q.head = 0\0A q.depth = 0\0A}\0A\00" +@.str1327 = private unnamed_addr constant [77 x i8] c" }\0A List.clear(q.kinds)\0A List.clear(q.vals)\0A q.head = 0\0A q.depth = 0\0A}\0A\00" @.str1328 = private unnamed_addr constant [70 x i8] c"export function ludic_act_runaway(k: int) -> void {\0A var name = \22?\22\0A\00" @.str1329 = private unnamed_addr constant [11 x i8] c" if k == \00" @.str1330 = private unnamed_addr constant [12 x i8] c" { name = \22\00" @@ -10590,4316 +10590,4460 @@ entry: @.str9856 = private unnamed_addr constant [10 x i8] c", label %\00" @.str9857 = private unnamed_addr constant [2 x i8] c"\0A\00" @.str9858 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str9859 = private unnamed_addr constant [25 x i8] c"getelementptr inbounds [\00" -@.str9860 = private unnamed_addr constant [35 x i8] c" x i32], ptr @L_alive, i32 0, i32 \00" -@.str9861 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str9862 = private unnamed_addr constant [25 x i8] c"getelementptr inbounds [\00" -@.str9863 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str9864 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str9865 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" -@.str9866 = private unnamed_addr constant [9 x i8] c"zext i8 \00" -@.str9867 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str9868 = private unnamed_addr constant [9 x i8] c"and i32 \00" -@.str9869 = private unnamed_addr constant [3 x i8] c", \00" -@.str9870 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str9871 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str9872 = private unnamed_addr constant [3 x i8] c", \00" -@.str9873 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str9874 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str9875 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str9876 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str9877 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str9878 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str9879 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str9880 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str9881 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str9882 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str9883 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str9884 = private unnamed_addr constant [4 x i8] c"int\00" -@.str9885 = private unnamed_addr constant [2 x i8] c".\00" -@.str9886 = private unnamed_addr constant [32 x i8] c" takes one argument: the entity\00" -@.str9887 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15344: index out of range: \00" -@.str9888 = private unnamed_addr constant [3 x i8] c"of\00" -@.str9889 = private unnamed_addr constant [25 x i8] c"getelementptr inbounds [\00" -@.str9890 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str9891 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str9892 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str9893 = private unnamed_addr constant [14 x i8] c"icmp ult i32 \00" -@.str9894 = private unnamed_addr constant [3 x i8] c", \00" -@.str9895 = private unnamed_addr constant [11 x i8] c"select i1 \00" -@.str9896 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str9897 = private unnamed_addr constant [8 x i8] c", i32 0\00" -@.str9898 = private unnamed_addr constant [25 x i8] c"getelementptr inbounds [\00" -@.str9899 = private unnamed_addr constant [35 x i8] c" x i32], ptr @L_alive, i32 0, i32 \00" -@.str9900 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str9901 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str9902 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str9903 = private unnamed_addr constant [25 x i8] c"getelementptr inbounds [\00" -@.str9904 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str9905 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str9906 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" -@.str9907 = private unnamed_addr constant [12 x i8] c"icmp ne i8 \00" -@.str9908 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str9909 = private unnamed_addr constant [8 x i8] c"and i1 \00" -@.str9910 = private unnamed_addr constant [3 x i8] c", \00" -@.str9911 = private unnamed_addr constant [8 x i8] c"and i1 \00" -@.str9912 = private unnamed_addr constant [3 x i8] c", \00" -@.str9913 = private unnamed_addr constant [9 x i8] c"zext i1 \00" -@.str9914 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str9915 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str9916 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15366: index out of range: \00" -@.str9917 = private unnamed_addr constant [5 x i8] c"name\00" -@.str9918 = private unnamed_addr constant [7 x i8] c"string\00" -@.str9919 = private unnamed_addr constant [17 x i8] c"unknown builtin \00" -@.str9920 = private unnamed_addr constant [2 x i8] c".\00" -@.str9921 = private unnamed_addr constant [3 x i8] c"of\00" -@.str9922 = private unnamed_addr constant [4 x i8] c"has\00" -@.str9923 = private unnamed_addr constant [6 x i8] c"count\00" -@.str9924 = private unnamed_addr constant [12 x i8] c"despawn_all\00" -@.str9925 = private unnamed_addr constant [2 x i8] c"_\00" -@.str9926 = private unnamed_addr constant [5 x i8] c"Math\00" -@.str9927 = private unnamed_addr constant [5 x i8] c"Math\00" -@.str9928 = private unnamed_addr constant [5 x i8] c"Text\00" -@.str9929 = private unnamed_addr constant [5 x i8] c"Text\00" -@.str9930 = private unnamed_addr constant [5 x i8] c"List\00" -@.str9931 = private unnamed_addr constant [5 x i8] c"List\00" -@.str9932 = private unnamed_addr constant [5 x i8] c"Ease\00" -@.str9933 = private unnamed_addr constant [5 x i8] c"Ease\00" -@.str9934 = private unnamed_addr constant [5 x i8] c"Anim\00" -@.str9935 = private unnamed_addr constant [6 x i8] c"Tween\00" -@.str9936 = private unnamed_addr constant [10 x i8] c"Collision\00" -@.str9937 = private unnamed_addr constant [10 x i8] c"Collision\00" -@.str9938 = private unnamed_addr constant [7 x i8] c"Memory\00" -@.str9939 = private unnamed_addr constant [7 x i8] c"Memory\00" -@.str9940 = private unnamed_addr constant [6 x i8] c"Color\00" -@.str9941 = private unnamed_addr constant [6 x i8] c"Color\00" -@.str9942 = private unnamed_addr constant [5 x i8] c"Time\00" -@.str9943 = private unnamed_addr constant [5 x i8] c"Time\00" -@.str9944 = private unnamed_addr constant [5 x i8] c"Hash\00" -@.str9945 = private unnamed_addr constant [5 x i8] c"Hash\00" -@.str9946 = private unnamed_addr constant [7 x i8] c"Crypto\00" -@.str9947 = private unnamed_addr constant [7 x i8] c"Crypto\00" -@.str9948 = private unnamed_addr constant [5 x i8] c"Uuid\00" -@.str9949 = private unnamed_addr constant [5 x i8] c"Uuid\00" -@.str9950 = private unnamed_addr constant [6 x i8] c"Noise\00" -@.str9951 = private unnamed_addr constant [6 x i8] c"Noise\00" -@.str9952 = private unnamed_addr constant [4 x i8] c"Log\00" -@.str9953 = private unnamed_addr constant [4 x i8] c"Log\00" -@.str9954 = private unnamed_addr constant [3 x i8] c"Os\00" -@.str9955 = private unnamed_addr constant [3 x i8] c"Os\00" -@.str9956 = private unnamed_addr constant [8 x i8] c"Unicode\00" -@.str9957 = private unnamed_addr constant [8 x i8] c"Unicode\00" -@.str9958 = private unnamed_addr constant [3 x i8] c"Fs\00" -@.str9959 = private unnamed_addr constant [3 x i8] c"Fs\00" -@.str9960 = private unnamed_addr constant [5 x i8] c"Path\00" -@.str9961 = private unnamed_addr constant [5 x i8] c"Path\00" -@.str9962 = private unnamed_addr constant [5 x i8] c"Mime\00" -@.str9963 = private unnamed_addr constant [5 x i8] c"Mime\00" -@.str9964 = private unnamed_addr constant [7 x i8] c"Vector\00" -@.str9965 = private unnamed_addr constant [7 x i8] c"Vector\00" -@.str9966 = private unnamed_addr constant [6 x i8] c"IVec2\00" -@.str9967 = private unnamed_addr constant [6 x i8] c"IVec2\00" -@.str9968 = private unnamed_addr constant [5 x i8] c"Rect\00" -@.str9969 = private unnamed_addr constant [5 x i8] c"Rect\00" -@.str9970 = private unnamed_addr constant [9 x i8] c"Duration\00" -@.str9971 = private unnamed_addr constant [9 x i8] c"Duration\00" -@.str9972 = private unnamed_addr constant [5 x i8] c"Date\00" -@.str9973 = private unnamed_addr constant [5 x i8] c"Date\00" -@.str9974 = private unnamed_addr constant [9 x i8] c"DateTime\00" -@.str9975 = private unnamed_addr constant [9 x i8] c"DateTime\00" -@.str9976 = private unnamed_addr constant [6 x i8] c"Clock\00" -@.str9977 = private unnamed_addr constant [6 x i8] c"Clock\00" -@.str9978 = private unnamed_addr constant [4 x i8] c"App\00" -@.str9979 = private unnamed_addr constant [12 x i8] c"splash_hide\00" -@.str9980 = private unnamed_addr constant [28 x i8] c" call void @splash_hide()\0A\00" -@.str9981 = private unnamed_addr constant [2 x i8] c"0\00" -@.str9982 = private unnamed_addr constant [5 x i8] c"void\00" -@.str9983 = private unnamed_addr constant [9 x i8] c"set_icon\00" -@.str9984 = private unnamed_addr constant [30 x i8] c" call void @lp_app_icon(ptr \00" -@.str9985 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str9986 = private unnamed_addr constant [2 x i8] c"0\00" -@.str9987 = private unnamed_addr constant [5 x i8] c"void\00" -@.str9988 = private unnamed_addr constant [14 x i8] c"monitor_count\00" -@.str9989 = private unnamed_addr constant [30 x i8] c"call i32 @win_monitor_count()\00" -@.str9990 = private unnamed_addr constant [4 x i8] c"int\00" -@.str9991 = private unnamed_addr constant [2 x i8] c"1\00" -@.str9992 = private unnamed_addr constant [4 x i8] c"int\00" -@.str9993 = private unnamed_addr constant [18 x i8] c"window_to_monitor\00" -@.str9994 = private unnamed_addr constant [40 x i8] c" call void @app_window_to_monitor(i32 \00" -@.str9995 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str9996 = private unnamed_addr constant [2 x i8] c"0\00" -@.str9997 = private unnamed_addr constant [5 x i8] c"void\00" -@.str9998 = private unnamed_addr constant [13 x i8] c"window_fixed\00" -@.str9999 = private unnamed_addr constant [35 x i8] c" call void @app_window_fixed(i32 \00" -@.str10000 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10001 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10002 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10003 = private unnamed_addr constant [12 x i8] c"window_hide\00" -@.str10004 = private unnamed_addr constant [12 x i8] c"window_show\00" -@.str10005 = private unnamed_addr constant [18 x i8] c" call void @app_\00" -@.str10006 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str10007 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10008 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10009 = private unnamed_addr constant [4 x i8] c"App\00" -@.str10010 = private unnamed_addr constant [5 x i8] c"Pool\00" -@.str10011 = private unnamed_addr constant [9 x i8] c"capacity\00" -@.str10012 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10013 = private unnamed_addr constant [9 x i8] c"reserved\00" -@.str10014 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_entc\00" -@.str10015 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10016 = private unnamed_addr constant [5 x i8] c"free\00" -@.str10017 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_freen\00" -@.str10018 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10019 = private unnamed_addr constant [5 x i8] c"live\00" -@.str10020 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_entc\00" +@.str9859 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str9860 = private unnamed_addr constant [33 x i8] c"getelementptr inbounds i32, ptr \00" +@.str9861 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str9862 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str9863 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str9864 = private unnamed_addr constant [32 x i8] c"getelementptr inbounds i8, ptr \00" +@.str9865 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str9866 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" +@.str9867 = private unnamed_addr constant [9 x i8] c"zext i8 \00" +@.str9868 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str9869 = private unnamed_addr constant [9 x i8] c"and i32 \00" +@.str9870 = private unnamed_addr constant [3 x i8] c", \00" +@.str9871 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str9872 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str9873 = private unnamed_addr constant [3 x i8] c", \00" +@.str9874 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str9875 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str9876 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str9877 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str9878 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str9879 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str9880 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str9881 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str9882 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str9883 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str9884 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str9885 = private unnamed_addr constant [4 x i8] c"int\00" +@.str9886 = private unnamed_addr constant [2 x i8] c".\00" +@.str9887 = private unnamed_addr constant [32 x i8] c" takes one argument: the entity\00" +@.str9888 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15346: index out of range: \00" +@.str9889 = private unnamed_addr constant [3 x i8] c"of\00" +@.str9890 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str9891 = private unnamed_addr constant [29 x i8] c"getelementptr inbounds %Cmp_\00" +@.str9892 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str9893 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str9894 = private unnamed_addr constant [21 x i8] c"load i32, ptr @L_cap\00" +@.str9895 = private unnamed_addr constant [14 x i8] c"icmp ult i32 \00" +@.str9896 = private unnamed_addr constant [3 x i8] c", \00" +@.str9897 = private unnamed_addr constant [11 x i8] c"select i1 \00" +@.str9898 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str9899 = private unnamed_addr constant [8 x i8] c", i32 0\00" +@.str9900 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str9901 = private unnamed_addr constant [33 x i8] c"getelementptr inbounds i32, ptr \00" +@.str9902 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str9903 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str9904 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str9905 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str9906 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str9907 = private unnamed_addr constant [32 x i8] c"getelementptr inbounds i8, ptr \00" +@.str9908 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str9909 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" +@.str9910 = private unnamed_addr constant [12 x i8] c"icmp ne i8 \00" +@.str9911 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str9912 = private unnamed_addr constant [8 x i8] c"and i1 \00" +@.str9913 = private unnamed_addr constant [3 x i8] c", \00" +@.str9914 = private unnamed_addr constant [8 x i8] c"and i1 \00" +@.str9915 = private unnamed_addr constant [3 x i8] c", \00" +@.str9916 = private unnamed_addr constant [9 x i8] c"zext i1 \00" +@.str9917 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str9918 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str9919 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15372: index out of range: \00" +@.str9920 = private unnamed_addr constant [5 x i8] c"name\00" +@.str9921 = private unnamed_addr constant [7 x i8] c"string\00" +@.str9922 = private unnamed_addr constant [17 x i8] c"unknown builtin \00" +@.str9923 = private unnamed_addr constant [2 x i8] c".\00" +@.str9924 = private unnamed_addr constant [3 x i8] c"of\00" +@.str9925 = private unnamed_addr constant [4 x i8] c"has\00" +@.str9926 = private unnamed_addr constant [6 x i8] c"count\00" +@.str9927 = private unnamed_addr constant [12 x i8] c"despawn_all\00" +@.str9928 = private unnamed_addr constant [2 x i8] c"_\00" +@.str9929 = private unnamed_addr constant [5 x i8] c"Math\00" +@.str9930 = private unnamed_addr constant [5 x i8] c"Math\00" +@.str9931 = private unnamed_addr constant [5 x i8] c"Text\00" +@.str9932 = private unnamed_addr constant [5 x i8] c"Text\00" +@.str9933 = private unnamed_addr constant [5 x i8] c"List\00" +@.str9934 = private unnamed_addr constant [5 x i8] c"List\00" +@.str9935 = private unnamed_addr constant [5 x i8] c"Ease\00" +@.str9936 = private unnamed_addr constant [5 x i8] c"Ease\00" +@.str9937 = private unnamed_addr constant [5 x i8] c"Anim\00" +@.str9938 = private unnamed_addr constant [6 x i8] c"Tween\00" +@.str9939 = private unnamed_addr constant [10 x i8] c"Collision\00" +@.str9940 = private unnamed_addr constant [10 x i8] c"Collision\00" +@.str9941 = private unnamed_addr constant [7 x i8] c"Memory\00" +@.str9942 = private unnamed_addr constant [7 x i8] c"Memory\00" +@.str9943 = private unnamed_addr constant [6 x i8] c"Color\00" +@.str9944 = private unnamed_addr constant [6 x i8] c"Color\00" +@.str9945 = private unnamed_addr constant [5 x i8] c"Time\00" +@.str9946 = private unnamed_addr constant [5 x i8] c"Time\00" +@.str9947 = private unnamed_addr constant [5 x i8] c"Hash\00" +@.str9948 = private unnamed_addr constant [5 x i8] c"Hash\00" +@.str9949 = private unnamed_addr constant [7 x i8] c"Crypto\00" +@.str9950 = private unnamed_addr constant [7 x i8] c"Crypto\00" +@.str9951 = private unnamed_addr constant [5 x i8] c"Uuid\00" +@.str9952 = private unnamed_addr constant [5 x i8] c"Uuid\00" +@.str9953 = private unnamed_addr constant [6 x i8] c"Noise\00" +@.str9954 = private unnamed_addr constant [6 x i8] c"Noise\00" +@.str9955 = private unnamed_addr constant [4 x i8] c"Log\00" +@.str9956 = private unnamed_addr constant [4 x i8] c"Log\00" +@.str9957 = private unnamed_addr constant [3 x i8] c"Os\00" +@.str9958 = private unnamed_addr constant [3 x i8] c"Os\00" +@.str9959 = private unnamed_addr constant [8 x i8] c"Unicode\00" +@.str9960 = private unnamed_addr constant [8 x i8] c"Unicode\00" +@.str9961 = private unnamed_addr constant [3 x i8] c"Fs\00" +@.str9962 = private unnamed_addr constant [3 x i8] c"Fs\00" +@.str9963 = private unnamed_addr constant [5 x i8] c"Path\00" +@.str9964 = private unnamed_addr constant [5 x i8] c"Path\00" +@.str9965 = private unnamed_addr constant [5 x i8] c"Mime\00" +@.str9966 = private unnamed_addr constant [5 x i8] c"Mime\00" +@.str9967 = private unnamed_addr constant [7 x i8] c"Vector\00" +@.str9968 = private unnamed_addr constant [7 x i8] c"Vector\00" +@.str9969 = private unnamed_addr constant [6 x i8] c"IVec2\00" +@.str9970 = private unnamed_addr constant [6 x i8] c"IVec2\00" +@.str9971 = private unnamed_addr constant [5 x i8] c"Rect\00" +@.str9972 = private unnamed_addr constant [5 x i8] c"Rect\00" +@.str9973 = private unnamed_addr constant [9 x i8] c"Duration\00" +@.str9974 = private unnamed_addr constant [9 x i8] c"Duration\00" +@.str9975 = private unnamed_addr constant [5 x i8] c"Date\00" +@.str9976 = private unnamed_addr constant [5 x i8] c"Date\00" +@.str9977 = private unnamed_addr constant [9 x i8] c"DateTime\00" +@.str9978 = private unnamed_addr constant [9 x i8] c"DateTime\00" +@.str9979 = private unnamed_addr constant [6 x i8] c"Clock\00" +@.str9980 = private unnamed_addr constant [6 x i8] c"Clock\00" +@.str9981 = private unnamed_addr constant [4 x i8] c"App\00" +@.str9982 = private unnamed_addr constant [12 x i8] c"splash_hide\00" +@.str9983 = private unnamed_addr constant [28 x i8] c" call void @splash_hide()\0A\00" +@.str9984 = private unnamed_addr constant [2 x i8] c"0\00" +@.str9985 = private unnamed_addr constant [5 x i8] c"void\00" +@.str9986 = private unnamed_addr constant [9 x i8] c"set_icon\00" +@.str9987 = private unnamed_addr constant [30 x i8] c" call void @lp_app_icon(ptr \00" +@.str9988 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str9989 = private unnamed_addr constant [2 x i8] c"0\00" +@.str9990 = private unnamed_addr constant [5 x i8] c"void\00" +@.str9991 = private unnamed_addr constant [14 x i8] c"monitor_count\00" +@.str9992 = private unnamed_addr constant [30 x i8] c"call i32 @win_monitor_count()\00" +@.str9993 = private unnamed_addr constant [4 x i8] c"int\00" +@.str9994 = private unnamed_addr constant [2 x i8] c"1\00" +@.str9995 = private unnamed_addr constant [4 x i8] c"int\00" +@.str9996 = private unnamed_addr constant [18 x i8] c"window_to_monitor\00" +@.str9997 = private unnamed_addr constant [40 x i8] c" call void @app_window_to_monitor(i32 \00" +@.str9998 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str9999 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10000 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10001 = private unnamed_addr constant [13 x i8] c"window_fixed\00" +@.str10002 = private unnamed_addr constant [35 x i8] c" call void @app_window_fixed(i32 \00" +@.str10003 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10004 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10005 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10006 = private unnamed_addr constant [12 x i8] c"window_hide\00" +@.str10007 = private unnamed_addr constant [12 x i8] c"window_show\00" +@.str10008 = private unnamed_addr constant [18 x i8] c" call void @app_\00" +@.str10009 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str10010 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10011 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10012 = private unnamed_addr constant [4 x i8] c"App\00" +@.str10013 = private unnamed_addr constant [5 x i8] c"Pool\00" +@.str10014 = private unnamed_addr constant [9 x i8] c"capacity\00" +@.str10015 = private unnamed_addr constant [21 x i8] c"load i32, ptr @L_cap\00" +@.str10016 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10017 = private unnamed_addr constant [9 x i8] c"reserved\00" +@.str10018 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_entc\00" +@.str10019 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10020 = private unnamed_addr constant [5 x i8] c"free\00" @.str10021 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_freen\00" -@.str10022 = private unnamed_addr constant [9 x i8] c"sub i32 \00" -@.str10023 = private unnamed_addr constant [3 x i8] c", \00" -@.str10024 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10025 = private unnamed_addr constant [5 x i8] c"Pool\00" -@.str10026 = private unnamed_addr constant [7 x i8] c"Prefab\00" -@.str10027 = private unnamed_addr constant [9 x i8] c"spawn_at\00" -@.str10028 = private unnamed_addr constant [48 x i8] c"Prefab.spawn_at: the program declares no prefab\00" -@.str10029 = private unnamed_addr constant [9 x i8] c"Position\00" -@.str10030 = private unnamed_addr constant [42 x i8] c"Prefab.spawn_at needs a Position property\00" -@.str10031 = private unnamed_addr constant [5 x i8] c"name\00" -@.str10032 = private unnamed_addr constant [3 x i8] c"at\00" -@.str10033 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15595: index out of range: \00" -@.str10034 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15596: index out of range: \00" -@.str10035 = private unnamed_addr constant [30 x i8] c"call i32 @L_spawn_prefab(ptr \00" -@.str10036 = private unnamed_addr constant [2 x i8] c")\00" -@.str10037 = private unnamed_addr constant [25 x i8] c"getelementptr inbounds [\00" -@.str10038 = private unnamed_addr constant [48 x i8] c" x %Cmp_Position], ptr @S_Position, i32 0, i32 \00" -@.str10039 = private unnamed_addr constant [43 x i8] c"getelementptr inbounds %Cmp_Position, ptr \00" -@.str10040 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str10041 = private unnamed_addr constant [2 x i8] c"x\00" +@.str10022 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10023 = private unnamed_addr constant [5 x i8] c"live\00" +@.str10024 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_entc\00" +@.str10025 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_freen\00" +@.str10026 = private unnamed_addr constant [9 x i8] c"sub i32 \00" +@.str10027 = private unnamed_addr constant [3 x i8] c", \00" +@.str10028 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10029 = private unnamed_addr constant [5 x i8] c"Pool\00" +@.str10030 = private unnamed_addr constant [7 x i8] c"Prefab\00" +@.str10031 = private unnamed_addr constant [9 x i8] c"spawn_at\00" +@.str10032 = private unnamed_addr constant [48 x i8] c"Prefab.spawn_at: the program declares no prefab\00" +@.str10033 = private unnamed_addr constant [9 x i8] c"Position\00" +@.str10034 = private unnamed_addr constant [42 x i8] c"Prefab.spawn_at needs a Position property\00" +@.str10035 = private unnamed_addr constant [5 x i8] c"name\00" +@.str10036 = private unnamed_addr constant [3 x i8] c"at\00" +@.str10037 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15601: index out of range: \00" +@.str10038 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15602: index out of range: \00" +@.str10039 = private unnamed_addr constant [30 x i8] c"call i32 @L_spawn_prefab(ptr \00" +@.str10040 = private unnamed_addr constant [2 x i8] c")\00" +@.str10041 = private unnamed_addr constant [11 x i8] c"S_Position\00" @.str10042 = private unnamed_addr constant [43 x i8] c"getelementptr inbounds %Cmp_Position, ptr \00" -@.str10043 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str10044 = private unnamed_addr constant [2 x i8] c"y\00" -@.str10045 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str10046 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10047 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10048 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str10049 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10050 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10051 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10052 = private unnamed_addr constant [6 x i8] c"spawn\00" -@.str10053 = private unnamed_addr constant [45 x i8] c"Prefab.spawn: the program declares no prefab\00" -@.str10054 = private unnamed_addr constant [5 x i8] c"name\00" -@.str10055 = private unnamed_addr constant [51 x i8] c"Prefab.spawn takes one argument: the prefab's name\00" -@.str10056 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15613: index out of range: \00" -@.str10057 = private unnamed_addr constant [30 x i8] c"call i32 @L_spawn_prefab(ptr \00" -@.str10058 = private unnamed_addr constant [2 x i8] c")\00" -@.str10059 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10060 = private unnamed_addr constant [7 x i8] c"Prefab\00" -@.str10061 = private unnamed_addr constant [6 x i8] c"Audio\00" -@.str10062 = private unnamed_addr constant [5 x i8] c"play\00" -@.str10063 = private unnamed_addr constant [17 x i8] c"audio_play_named\00" -@.str10064 = private unnamed_addr constant [5 x i8] c"name\00" -@.str10065 = private unnamed_addr constant [11 x i8] c"audio_play\00" -@.str10066 = private unnamed_addr constant [3 x i8] c"id\00" -@.str10067 = private unnamed_addr constant [11 x i8] c"play_music\00" -@.str10068 = private unnamed_addr constant [23 x i8] c"audio_play_music_named\00" +@.str10043 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10044 = private unnamed_addr constant [43 x i8] c"getelementptr inbounds %Cmp_Position, ptr \00" +@.str10045 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str10046 = private unnamed_addr constant [2 x i8] c"x\00" +@.str10047 = private unnamed_addr constant [43 x i8] c"getelementptr inbounds %Cmp_Position, ptr \00" +@.str10048 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str10049 = private unnamed_addr constant [2 x i8] c"y\00" +@.str10050 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str10051 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10052 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10053 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str10054 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10055 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10056 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10057 = private unnamed_addr constant [6 x i8] c"spawn\00" +@.str10058 = private unnamed_addr constant [45 x i8] c"Prefab.spawn: the program declares no prefab\00" +@.str10059 = private unnamed_addr constant [5 x i8] c"name\00" +@.str10060 = private unnamed_addr constant [51 x i8] c"Prefab.spawn takes one argument: the prefab's name\00" +@.str10061 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15620: index out of range: \00" +@.str10062 = private unnamed_addr constant [30 x i8] c"call i32 @L_spawn_prefab(ptr \00" +@.str10063 = private unnamed_addr constant [2 x i8] c")\00" +@.str10064 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10065 = private unnamed_addr constant [7 x i8] c"Prefab\00" +@.str10066 = private unnamed_addr constant [6 x i8] c"Audio\00" +@.str10067 = private unnamed_addr constant [5 x i8] c"play\00" +@.str10068 = private unnamed_addr constant [17 x i8] c"audio_play_named\00" @.str10069 = private unnamed_addr constant [5 x i8] c"name\00" -@.str10070 = private unnamed_addr constant [17 x i8] c"audio_play_music\00" +@.str10070 = private unnamed_addr constant [11 x i8] c"audio_play\00" @.str10071 = private unnamed_addr constant [3 x i8] c"id\00" -@.str10072 = private unnamed_addr constant [4 x i8] c"Job\00" -@.str10073 = private unnamed_addr constant [13 x i8] c"parallel_for\00" -@.str10074 = private unnamed_addr constant [17 x i8] c"job_parallel_for\00" -@.str10075 = private unnamed_addr constant [6 x i8] c"count\00" -@.str10076 = private unnamed_addr constant [5 x i8] c"work\00" -@.str10077 = private unnamed_addr constant [4 x i8] c"ctx\00" -@.str10078 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15659: index out of range: \00" -@.str10079 = private unnamed_addr constant [5 x i8] c"Anim\00" -@.str10080 = private unnamed_addr constant [5 x i8] c"clip\00" -@.str10081 = private unnamed_addr constant [10 x i8] c"anim_clip\00" -@.str10082 = private unnamed_addr constant [5 x i8] c"name\00" -@.str10083 = private unnamed_addr constant [7 x i8] c"frames\00" -@.str10084 = private unnamed_addr constant [4 x i8] c"fps\00" -@.str10085 = private unnamed_addr constant [5 x i8] c"mode\00" -@.str10086 = private unnamed_addr constant [9 x i8] c"on_frame\00" -@.str10087 = private unnamed_addr constant [14 x i8] c"anim_on_frame\00" -@.str10088 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10089 = private unnamed_addr constant [6 x i8] c"frame\00" -@.str10090 = private unnamed_addr constant [6 x i8] c"fired\00" -@.str10091 = private unnamed_addr constant [11 x i8] c"anim_fired\00" -@.str10092 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10093 = private unnamed_addr constant [5 x i8] c"play\00" -@.str10094 = private unnamed_addr constant [16 x i8] c"anim_play_named\00" -@.str10095 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10096 = private unnamed_addr constant [5 x i8] c"clip\00" -@.str10097 = private unnamed_addr constant [10 x i8] c"anim_play\00" -@.str10098 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10099 = private unnamed_addr constant [4 x i8] c"fps\00" -@.str10100 = private unnamed_addr constant [7 x i8] c"frames\00" -@.str10101 = private unnamed_addr constant [5 x i8] c"mode\00" -@.str10102 = private unnamed_addr constant [3 x i8] c"Vk\00" -@.str10103 = private unnamed_addr constant [4 x i8] c"vk_\00" -@.str10104 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15725: index out of range: \00" -@.str10105 = private unnamed_addr constant [3 x i8] c"Gl\00" -@.str10106 = private unnamed_addr constant [4 x i8] c"gl_\00" -@.str10107 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15739: index out of range: \00" -@.str10108 = private unnamed_addr constant [2 x i8] c"_\00" -@.str10109 = private unnamed_addr constant [2 x i8] c".\00" -@.str10110 = private unnamed_addr constant [27 x i8] c" is internal to namespace \00" -@.str10111 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15753: index out of range: \00" -@.str10112 = private unnamed_addr constant [17 x i8] c"unknown builtin \00" -@.str10113 = private unnamed_addr constant [2 x i8] c".\00" -@.str10114 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15769: index out of range: \00" -@.str10115 = private unnamed_addr constant [14 x i8] c"enum variant \00" -@.str10116 = private unnamed_addr constant [8 x i8] c" takes \00" -@.str10117 = private unnamed_addr constant [18 x i8] c" payload(s), got \00" -@.str10118 = private unnamed_addr constant [22 x i8] c"call ptr @malloc(i64 \00" -@.str10119 = private unnamed_addr constant [2 x i8] c")\00" -@.str10120 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str10121 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10122 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10123 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15776: index out of range: \00" -@.str10124 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15777: index out of range: \00" -@.str10125 = private unnamed_addr constant [3 x i8] c" \00" -@.str10126 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" -@.str10127 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10128 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10129 = private unnamed_addr constant [9 x i8] c" store \00" -@.str10130 = private unnamed_addr constant [2 x i8] c" \00" -@.str10131 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10132 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10133 = private unnamed_addr constant [30 x i8] c"call target is not a function\00" -@.str10134 = private unnamed_addr constant [5 x i8] c"self\00" -@.str10135 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10136 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10137 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str10138 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15797: index out of range: \00" -@.str10139 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10140 = private unnamed_addr constant [4 x i8] c"key\00" -@.str10141 = private unnamed_addr constant [21 x i8] c"load i32, ptr @L_key\00" -@.str10142 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10143 = private unnamed_addr constant [5 x i8] c"save\00" -@.str10144 = private unnamed_addr constant [23 x i8] c" call void @L_save()\0A\00" -@.str10145 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10146 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10147 = private unnamed_addr constant [9 x i8] c"ui_build\00" -@.str10148 = private unnamed_addr constant [25 x i8] c" call void @ui_build()\0A\00" -@.str10149 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10150 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10151 = private unnamed_addr constant [5 x i8] c"load\00" -@.str10152 = private unnamed_addr constant [19 x i8] c"call i32 @L_load()\00" -@.str10153 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10154 = private unnamed_addr constant [11 x i8] c"world_size\00" -@.str10155 = private unnamed_addr constant [25 x i8] c"call i32 @L_world_size()\00" -@.str10156 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10157 = private unnamed_addr constant [11 x i8] c"world_save\00" -@.str10158 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15804: index out of range: \00" -@.str10159 = private unnamed_addr constant [28 x i8] c"call i32 @L_world_save(ptr \00" -@.str10160 = private unnamed_addr constant [2 x i8] c")\00" +@.str10072 = private unnamed_addr constant [11 x i8] c"play_music\00" +@.str10073 = private unnamed_addr constant [23 x i8] c"audio_play_music_named\00" +@.str10074 = private unnamed_addr constant [5 x i8] c"name\00" +@.str10075 = private unnamed_addr constant [17 x i8] c"audio_play_music\00" +@.str10076 = private unnamed_addr constant [3 x i8] c"id\00" +@.str10077 = private unnamed_addr constant [4 x i8] c"Job\00" +@.str10078 = private unnamed_addr constant [13 x i8] c"parallel_for\00" +@.str10079 = private unnamed_addr constant [17 x i8] c"job_parallel_for\00" +@.str10080 = private unnamed_addr constant [6 x i8] c"count\00" +@.str10081 = private unnamed_addr constant [5 x i8] c"work\00" +@.str10082 = private unnamed_addr constant [4 x i8] c"ctx\00" +@.str10083 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15666: index out of range: \00" +@.str10084 = private unnamed_addr constant [5 x i8] c"Anim\00" +@.str10085 = private unnamed_addr constant [5 x i8] c"clip\00" +@.str10086 = private unnamed_addr constant [10 x i8] c"anim_clip\00" +@.str10087 = private unnamed_addr constant [5 x i8] c"name\00" +@.str10088 = private unnamed_addr constant [7 x i8] c"frames\00" +@.str10089 = private unnamed_addr constant [4 x i8] c"fps\00" +@.str10090 = private unnamed_addr constant [5 x i8] c"mode\00" +@.str10091 = private unnamed_addr constant [9 x i8] c"on_frame\00" +@.str10092 = private unnamed_addr constant [14 x i8] c"anim_on_frame\00" +@.str10093 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10094 = private unnamed_addr constant [6 x i8] c"frame\00" +@.str10095 = private unnamed_addr constant [6 x i8] c"fired\00" +@.str10096 = private unnamed_addr constant [11 x i8] c"anim_fired\00" +@.str10097 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10098 = private unnamed_addr constant [5 x i8] c"play\00" +@.str10099 = private unnamed_addr constant [16 x i8] c"anim_play_named\00" +@.str10100 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10101 = private unnamed_addr constant [5 x i8] c"clip\00" +@.str10102 = private unnamed_addr constant [10 x i8] c"anim_play\00" +@.str10103 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10104 = private unnamed_addr constant [4 x i8] c"fps\00" +@.str10105 = private unnamed_addr constant [7 x i8] c"frames\00" +@.str10106 = private unnamed_addr constant [5 x i8] c"mode\00" +@.str10107 = private unnamed_addr constant [3 x i8] c"Vk\00" +@.str10108 = private unnamed_addr constant [4 x i8] c"vk_\00" +@.str10109 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15732: index out of range: \00" +@.str10110 = private unnamed_addr constant [3 x i8] c"Gl\00" +@.str10111 = private unnamed_addr constant [4 x i8] c"gl_\00" +@.str10112 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15746: index out of range: \00" +@.str10113 = private unnamed_addr constant [2 x i8] c"_\00" +@.str10114 = private unnamed_addr constant [2 x i8] c".\00" +@.str10115 = private unnamed_addr constant [27 x i8] c" is internal to namespace \00" +@.str10116 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15760: index out of range: \00" +@.str10117 = private unnamed_addr constant [17 x i8] c"unknown builtin \00" +@.str10118 = private unnamed_addr constant [2 x i8] c".\00" +@.str10119 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15776: index out of range: \00" +@.str10120 = private unnamed_addr constant [14 x i8] c"enum variant \00" +@.str10121 = private unnamed_addr constant [8 x i8] c" takes \00" +@.str10122 = private unnamed_addr constant [18 x i8] c" payload(s), got \00" +@.str10123 = private unnamed_addr constant [22 x i8] c"call ptr @malloc(i64 \00" +@.str10124 = private unnamed_addr constant [2 x i8] c")\00" +@.str10125 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str10126 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10127 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10128 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15783: index out of range: \00" +@.str10129 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15784: index out of range: \00" +@.str10130 = private unnamed_addr constant [3 x i8] c" \00" +@.str10131 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str10132 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10133 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10134 = private unnamed_addr constant [9 x i8] c" store \00" +@.str10135 = private unnamed_addr constant [2 x i8] c" \00" +@.str10136 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10137 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10138 = private unnamed_addr constant [30 x i8] c"call target is not a function\00" +@.str10139 = private unnamed_addr constant [5 x i8] c"self\00" +@.str10140 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10141 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10142 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str10143 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15804: index out of range: \00" +@.str10144 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10145 = private unnamed_addr constant [4 x i8] c"key\00" +@.str10146 = private unnamed_addr constant [21 x i8] c"load i32, ptr @L_key\00" +@.str10147 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10148 = private unnamed_addr constant [5 x i8] c"save\00" +@.str10149 = private unnamed_addr constant [23 x i8] c" call void @L_save()\0A\00" +@.str10150 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10151 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10152 = private unnamed_addr constant [9 x i8] c"ui_build\00" +@.str10153 = private unnamed_addr constant [25 x i8] c" call void @ui_build()\0A\00" +@.str10154 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10155 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10156 = private unnamed_addr constant [5 x i8] c"load\00" +@.str10157 = private unnamed_addr constant [19 x i8] c"call i32 @L_load()\00" +@.str10158 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10159 = private unnamed_addr constant [11 x i8] c"world_size\00" +@.str10160 = private unnamed_addr constant [25 x i8] c"call i32 @L_world_size()\00" @.str10161 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10162 = private unnamed_addr constant [11 x i8] c"world_load\00" -@.str10163 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15808: index out of range: \00" -@.str10164 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15809: index out of range: \00" -@.str10165 = private unnamed_addr constant [31 x i8] c" call void @L_world_load(ptr \00" -@.str10166 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10167 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10168 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10169 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10170 = private unnamed_addr constant [5 x i8] c"quit\00" -@.str10171 = private unnamed_addr constant [31 x i8] c" store i32 0, ptr @L_running\0A\00" -@.str10172 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10173 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10174 = private unnamed_addr constant [10 x i8] c"serialize\00" -@.str10175 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15820: index out of range: \00" -@.str10176 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15820: index out of range: \00" -@.str10177 = private unnamed_addr constant [31 x i8] c"call i32 @ludic_serialize(i32 \00" -@.str10178 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10179 = private unnamed_addr constant [2 x i8] c")\00" -@.str10180 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10181 = private unnamed_addr constant [6 x i8] c"apply\00" -@.str10182 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15824: index out of range: \00" -@.str10183 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15824: index out of range: \00" -@.str10184 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15824: index out of range: \00" -@.str10185 = private unnamed_addr constant [30 x i8] c" call void @ludic_apply(i32 \00" -@.str10186 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10187 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10188 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10189 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10190 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10191 = private unnamed_addr constant [10 x i8] c"sync_size\00" -@.str10192 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15829: index out of range: \00" -@.str10193 = private unnamed_addr constant [31 x i8] c"call i32 @ludic_sync_size(i32 \00" -@.str10194 = private unnamed_addr constant [2 x i8] c")\00" -@.str10195 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10196 = private unnamed_addr constant [6 x i8] c"owner\00" -@.str10197 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15833: index out of range: \00" -@.str10198 = private unnamed_addr constant [23 x i8] c"call i32 @L_owner(i32 \00" +@.str10162 = private unnamed_addr constant [11 x i8] c"world_save\00" +@.str10163 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15811: index out of range: \00" +@.str10164 = private unnamed_addr constant [28 x i8] c"call i32 @L_world_save(ptr \00" +@.str10165 = private unnamed_addr constant [2 x i8] c")\00" +@.str10166 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10167 = private unnamed_addr constant [11 x i8] c"world_load\00" +@.str10168 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15815: index out of range: \00" +@.str10169 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15816: index out of range: \00" +@.str10170 = private unnamed_addr constant [31 x i8] c" call void @L_world_load(ptr \00" +@.str10171 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10172 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10173 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10174 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10175 = private unnamed_addr constant [5 x i8] c"quit\00" +@.str10176 = private unnamed_addr constant [31 x i8] c" store i32 0, ptr @L_running\0A\00" +@.str10177 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10178 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10179 = private unnamed_addr constant [10 x i8] c"serialize\00" +@.str10180 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15827: index out of range: \00" +@.str10181 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15827: index out of range: \00" +@.str10182 = private unnamed_addr constant [31 x i8] c"call i32 @ludic_serialize(i32 \00" +@.str10183 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10184 = private unnamed_addr constant [2 x i8] c")\00" +@.str10185 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10186 = private unnamed_addr constant [6 x i8] c"apply\00" +@.str10187 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15831: index out of range: \00" +@.str10188 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15831: index out of range: \00" +@.str10189 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15831: index out of range: \00" +@.str10190 = private unnamed_addr constant [30 x i8] c" call void @ludic_apply(i32 \00" +@.str10191 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10192 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10193 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10194 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10195 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10196 = private unnamed_addr constant [10 x i8] c"sync_size\00" +@.str10197 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15836: index out of range: \00" +@.str10198 = private unnamed_addr constant [31 x i8] c"call i32 @ludic_sync_size(i32 \00" @.str10199 = private unnamed_addr constant [2 x i8] c")\00" @.str10200 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10201 = private unnamed_addr constant [10 x i8] c"set_owner\00" -@.str10202 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15837: index out of range: \00" -@.str10203 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15837: index out of range: \00" -@.str10204 = private unnamed_addr constant [30 x i8] c" call void @L_set_owner(i32 \00" -@.str10205 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10206 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10207 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10208 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10209 = private unnamed_addr constant [9 x i8] c"is_owner\00" -@.str10210 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15842: index out of range: \00" -@.str10211 = private unnamed_addr constant [26 x i8] c"call i32 @L_is_owner(i32 \00" -@.str10212 = private unnamed_addr constant [2 x i8] c")\00" -@.str10213 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10214 = private unnamed_addr constant [10 x i8] c"is_server\00" -@.str10215 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_role\00" -@.str10216 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str10217 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str10218 = private unnamed_addr constant [9 x i8] c"zext i1 \00" -@.str10219 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10220 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10221 = private unnamed_addr constant [9 x i8] c"local_id\00" -@.str10222 = private unnamed_addr constant [25 x i8] c"load i32, ptr @L_localid\00" -@.str10223 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10224 = private unnamed_addr constant [9 x i8] c"net_pump\00" -@.str10225 = private unnamed_addr constant [27 x i8] c" call void @L_net_pump()\0A\00" -@.str10226 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10227 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10228 = private unnamed_addr constant [11 x i8] c"tick_fixed\00" -@.str10229 = private unnamed_addr constant [29 x i8] c" call void @L_tick_fixed()\0A\00" -@.str10230 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10231 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10232 = private unnamed_addr constant [12 x i8] c"tick_render\00" -@.str10233 = private unnamed_addr constant [30 x i8] c" call void @L_tick_render()\0A\00" -@.str10234 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10235 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10236 = private unnamed_addr constant [9 x i8] c"set_role\00" -@.str10237 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15855: index out of range: \00" -@.str10238 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str10239 = private unnamed_addr constant [15 x i8] c", ptr @L_role\0A\00" -@.str10240 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10241 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10242 = private unnamed_addr constant [13 x i8] c"set_local_id\00" -@.str10243 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15858: index out of range: \00" -@.str10244 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str10245 = private unnamed_addr constant [18 x i8] c", ptr @L_localid\0A\00" -@.str10246 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10247 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10248 = private unnamed_addr constant [9 x i8] c"net_send\00" -@.str10249 = private unnamed_addr constant [9 x i8] c"net_send\00" -@.str10250 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15865: index out of range: \00" -@.str10251 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15865: index out of range: \00" -@.str10252 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15865: index out of range: \00" -@.str10253 = private unnamed_addr constant [29 x i8] c" call void @L_net_send(i32 \00" -@.str10254 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10255 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10256 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10257 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10258 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10259 = private unnamed_addr constant [9 x i8] c"net_poll\00" -@.str10260 = private unnamed_addr constant [9 x i8] c"net_poll\00" -@.str10261 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15871: index out of range: \00" -@.str10262 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15871: index out of range: \00" -@.str10263 = private unnamed_addr constant [26 x i8] c"call i32 @L_net_poll(ptr \00" -@.str10264 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10265 = private unnamed_addr constant [2 x i8] c")\00" -@.str10266 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10267 = private unnamed_addr constant [4 x i8] c"len\00" -@.str10268 = private unnamed_addr constant [5 x i8] c"push\00" -@.str10269 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10270 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15877: index out of range: \00" -@.str10271 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str10272 = private unnamed_addr constant [4 x i8] c"i64\00" -@.str10273 = private unnamed_addr constant [27 x i8] c"call ptr @lp_long_str(i64 \00" -@.str10274 = private unnamed_addr constant [2 x i8] c")\00" -@.str10275 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10276 = private unnamed_addr constant [26 x i8] c"call ptr @lp_int_str(i32 \00" -@.str10277 = private unnamed_addr constant [2 x i8] c")\00" -@.str10278 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10279 = private unnamed_addr constant [6 x i8] c"print\00" -@.str10280 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15885: index out of range: \00" -@.str10281 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str10282 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" -@.str10283 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10284 = private unnamed_addr constant [4 x i8] c"i64\00" -@.str10285 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_long, i64 \00" -@.str10286 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10287 = private unnamed_addr constant [50 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_int, i32 \00" +@.str10201 = private unnamed_addr constant [6 x i8] c"owner\00" +@.str10202 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15840: index out of range: \00" +@.str10203 = private unnamed_addr constant [23 x i8] c"call i32 @L_owner(i32 \00" +@.str10204 = private unnamed_addr constant [2 x i8] c")\00" +@.str10205 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10206 = private unnamed_addr constant [10 x i8] c"set_owner\00" +@.str10207 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15844: index out of range: \00" +@.str10208 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15844: index out of range: \00" +@.str10209 = private unnamed_addr constant [30 x i8] c" call void @L_set_owner(i32 \00" +@.str10210 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10211 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10212 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10213 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10214 = private unnamed_addr constant [9 x i8] c"is_owner\00" +@.str10215 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15849: index out of range: \00" +@.str10216 = private unnamed_addr constant [26 x i8] c"call i32 @L_is_owner(i32 \00" +@.str10217 = private unnamed_addr constant [2 x i8] c")\00" +@.str10218 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10219 = private unnamed_addr constant [10 x i8] c"is_server\00" +@.str10220 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_role\00" +@.str10221 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str10222 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str10223 = private unnamed_addr constant [9 x i8] c"zext i1 \00" +@.str10224 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10225 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10226 = private unnamed_addr constant [9 x i8] c"local_id\00" +@.str10227 = private unnamed_addr constant [25 x i8] c"load i32, ptr @L_localid\00" +@.str10228 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10229 = private unnamed_addr constant [9 x i8] c"net_pump\00" +@.str10230 = private unnamed_addr constant [27 x i8] c" call void @L_net_pump()\0A\00" +@.str10231 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10232 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10233 = private unnamed_addr constant [11 x i8] c"tick_fixed\00" +@.str10234 = private unnamed_addr constant [29 x i8] c" call void @L_tick_fixed()\0A\00" +@.str10235 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10236 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10237 = private unnamed_addr constant [12 x i8] c"tick_render\00" +@.str10238 = private unnamed_addr constant [30 x i8] c" call void @L_tick_render()\0A\00" +@.str10239 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10240 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10241 = private unnamed_addr constant [9 x i8] c"set_role\00" +@.str10242 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15862: index out of range: \00" +@.str10243 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str10244 = private unnamed_addr constant [15 x i8] c", ptr @L_role\0A\00" +@.str10245 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10246 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10247 = private unnamed_addr constant [13 x i8] c"set_local_id\00" +@.str10248 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15865: index out of range: \00" +@.str10249 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str10250 = private unnamed_addr constant [18 x i8] c", ptr @L_localid\0A\00" +@.str10251 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10252 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10253 = private unnamed_addr constant [9 x i8] c"net_send\00" +@.str10254 = private unnamed_addr constant [9 x i8] c"net_send\00" +@.str10255 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15872: index out of range: \00" +@.str10256 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15872: index out of range: \00" +@.str10257 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15872: index out of range: \00" +@.str10258 = private unnamed_addr constant [29 x i8] c" call void @L_net_send(i32 \00" +@.str10259 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10260 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10261 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10262 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10263 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10264 = private unnamed_addr constant [9 x i8] c"net_poll\00" +@.str10265 = private unnamed_addr constant [9 x i8] c"net_poll\00" +@.str10266 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15878: index out of range: \00" +@.str10267 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15878: index out of range: \00" +@.str10268 = private unnamed_addr constant [26 x i8] c"call i32 @L_net_poll(ptr \00" +@.str10269 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10270 = private unnamed_addr constant [2 x i8] c")\00" +@.str10271 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10272 = private unnamed_addr constant [4 x i8] c"len\00" +@.str10273 = private unnamed_addr constant [5 x i8] c"push\00" +@.str10274 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10275 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15884: index out of range: \00" +@.str10276 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str10277 = private unnamed_addr constant [4 x i8] c"i64\00" +@.str10278 = private unnamed_addr constant [27 x i8] c"call ptr @lp_long_str(i64 \00" +@.str10279 = private unnamed_addr constant [2 x i8] c")\00" +@.str10280 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10281 = private unnamed_addr constant [26 x i8] c"call ptr @lp_int_str(i32 \00" +@.str10282 = private unnamed_addr constant [2 x i8] c")\00" +@.str10283 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10284 = private unnamed_addr constant [6 x i8] c"print\00" +@.str10285 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15892: index out of range: \00" +@.str10286 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str10287 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" @.str10288 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10289 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10290 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10291 = private unnamed_addr constant [6 x i8] c"bytes\00" -@.str10292 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15893: index out of range: \00" -@.str10293 = private unnamed_addr constant [10 x i8] c"zext i32 \00" -@.str10294 = private unnamed_addr constant [8 x i8] c" to i64\00" -@.str10295 = private unnamed_addr constant [22 x i8] c"call ptr @malloc(i64 \00" -@.str10296 = private unnamed_addr constant [2 x i8] c")\00" -@.str10297 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str10298 = private unnamed_addr constant [6 x i8] c"words\00" -@.str10299 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10300 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15897: index out of range: \00" -@.str10301 = private unnamed_addr constant [7 x i8] c"buffer\00" -@.str10302 = private unnamed_addr constant [5 x i8] c"byte\00" -@.str10303 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15898: index out of range: \00" -@.str10304 = private unnamed_addr constant [7 x i8] c"fixeds\00" -@.str10305 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10306 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15899: index out of range: \00" -@.str10307 = private unnamed_addr constant [9 x i8] c"pointers\00" -@.str10308 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str10309 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15900: index out of range: \00" -@.str10310 = private unnamed_addr constant [5 x i8] c"view\00" -@.str10311 = private unnamed_addr constant [8 x i8] c"data_of\00" -@.str10312 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15906: index out of range: \00" -@.str10313 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" -@.str10314 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str10315 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10316 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15910: index out of range: \00" -@.str10317 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10318 = private unnamed_addr constant [9 x i8] c"shl i32 \00" -@.str10319 = private unnamed_addr constant [5 x i8] c", 16\00" +@.str10289 = private unnamed_addr constant [4 x i8] c"i64\00" +@.str10290 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_long, i64 \00" +@.str10291 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10292 = private unnamed_addr constant [50 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_int, i32 \00" +@.str10293 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10294 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10295 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10296 = private unnamed_addr constant [6 x i8] c"bytes\00" +@.str10297 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15900: index out of range: \00" +@.str10298 = private unnamed_addr constant [10 x i8] c"zext i32 \00" +@.str10299 = private unnamed_addr constant [8 x i8] c" to i64\00" +@.str10300 = private unnamed_addr constant [22 x i8] c"call ptr @malloc(i64 \00" +@.str10301 = private unnamed_addr constant [2 x i8] c")\00" +@.str10302 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str10303 = private unnamed_addr constant [6 x i8] c"words\00" +@.str10304 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10305 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15904: index out of range: \00" +@.str10306 = private unnamed_addr constant [7 x i8] c"buffer\00" +@.str10307 = private unnamed_addr constant [5 x i8] c"byte\00" +@.str10308 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15905: index out of range: \00" +@.str10309 = private unnamed_addr constant [7 x i8] c"fixeds\00" +@.str10310 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10311 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15906: index out of range: \00" +@.str10312 = private unnamed_addr constant [9 x i8] c"pointers\00" +@.str10313 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str10314 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15907: index out of range: \00" +@.str10315 = private unnamed_addr constant [5 x i8] c"view\00" +@.str10316 = private unnamed_addr constant [8 x i8] c"data_of\00" +@.str10317 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15913: index out of range: \00" +@.str10318 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" +@.str10319 = private unnamed_addr constant [8 x i8] c"pointer\00" @.str10320 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10321 = private unnamed_addr constant [6 x i8] c"float\00" -@.str10322 = private unnamed_addr constant [7 x i8] c"double\00" -@.str10323 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15917: index out of range: \00" -@.str10324 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10325 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15920: index out of range: \00" -@.str10326 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10327 = private unnamed_addr constant [10 x i8] c"ashr i32 \00" -@.str10328 = private unnamed_addr constant [5 x i8] c", 16\00" +@.str10321 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15917: index out of range: \00" +@.str10322 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10323 = private unnamed_addr constant [9 x i8] c"shl i32 \00" +@.str10324 = private unnamed_addr constant [5 x i8] c", 16\00" +@.str10325 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10326 = private unnamed_addr constant [6 x i8] c"float\00" +@.str10327 = private unnamed_addr constant [7 x i8] c"double\00" +@.str10328 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15924: index out of range: \00" @.str10329 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10330 = private unnamed_addr constant [4 x i8] c"i64\00" -@.str10331 = private unnamed_addr constant [11 x i8] c"trunc i64 \00" -@.str10332 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10333 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10330 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15927: index out of range: \00" +@.str10331 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10332 = private unnamed_addr constant [10 x i8] c"ashr i32 \00" +@.str10333 = private unnamed_addr constant [5 x i8] c", 16\00" @.str10334 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10335 = private unnamed_addr constant [5 x i8] c"long\00" -@.str10336 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15927: index out of range: \00" -@.str10337 = private unnamed_addr constant [5 x i8] c"long\00" -@.str10338 = private unnamed_addr constant [11 x i8] c"float_bits\00" -@.str10339 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15931: index out of range: \00" -@.str10340 = private unnamed_addr constant [16 x i8] c"float_from_bits\00" -@.str10341 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15932: index out of range: \00" -@.str10342 = private unnamed_addr constant [12 x i8] c"double_bits\00" -@.str10343 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15933: index out of range: \00" -@.str10344 = private unnamed_addr constant [17 x i8] c"double_from_bits\00" -@.str10345 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15934: index out of range: \00" -@.str10346 = private unnamed_addr constant [7 x i8] c"floats\00" -@.str10347 = private unnamed_addr constant [8 x i8] c"doubles\00" -@.str10348 = private unnamed_addr constant [6 x i8] c"float\00" -@.str10349 = private unnamed_addr constant [8 x i8] c"doubles\00" -@.str10350 = private unnamed_addr constant [7 x i8] c"double\00" -@.str10351 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15938: index out of range: \00" -@.str10352 = private unnamed_addr constant [6 x i8] c"floor\00" -@.str10353 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15940: index out of range: \00" -@.str10354 = private unnamed_addr constant [10 x i8] c"ashr i32 \00" -@.str10355 = private unnamed_addr constant [5 x i8] c", 16\00" -@.str10356 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10357 = private unnamed_addr constant [7 x i8] c"expect\00" -@.str10358 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15948: index out of range: \00" -@.str10359 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str10360 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10361 = private unnamed_addr constant [16 x i8] c": expect failed\00" -@.str10362 = private unnamed_addr constant [1 x i8] c"\00" -@.str10363 = private unnamed_addr constant [1 x i8] c"\00" -@.str10364 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10365 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10366 = private unnamed_addr constant [10 x i8] c"expect_eq\00" -@.str10367 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15956: index out of range: \00" -@.str10368 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15956: index out of range: \00" -@.str10369 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10370 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10371 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str10372 = private unnamed_addr constant [3 x i8] c", \00" -@.str10373 = private unnamed_addr constant [19 x i8] c": expect_eq failed\00" -@.str10374 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10375 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10376 = private unnamed_addr constant [12 x i8] c"expect_near\00" -@.str10377 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15966: index out of range: \00" -@.str10378 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15966: index out of range: \00" -@.str10379 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15966: index out of range: \00" -@.str10380 = private unnamed_addr constant [9 x i8] c"sub i32 \00" -@.str10381 = private unnamed_addr constant [3 x i8] c", \00" -@.str10382 = private unnamed_addr constant [12 x i8] c"sub i32 0, \00" -@.str10383 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" -@.str10384 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10385 = private unnamed_addr constant [11 x i8] c"select i1 \00" -@.str10386 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10387 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10388 = private unnamed_addr constant [14 x i8] c"icmp sle i32 \00" -@.str10389 = private unnamed_addr constant [3 x i8] c", \00" -@.str10390 = private unnamed_addr constant [21 x i8] c": expect_near failed\00" -@.str10391 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10392 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10393 = private unnamed_addr constant [6 x i8] c"panic\00" -@.str10394 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15985: index out of range: \00" -@.str10395 = private unnamed_addr constant [2 x i8] c":\00" -@.str10396 = private unnamed_addr constant [10 x i8] c": panic: \00" -@.str10397 = private unnamed_addr constant [41 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr \00" -@.str10398 = private unnamed_addr constant [24 x i8] c", ptr @.fmt_panic, ptr \00" -@.str10399 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10400 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10401 = private unnamed_addr constant [40 x i8] c" call void @exit(i32 1)\0A unreachable\0A\00" -@.str10402 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10403 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10404 = private unnamed_addr constant [7 x i8] c"assert\00" -@.str10405 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15995: index out of range: \00" -@.str10406 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str10407 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10408 = private unnamed_addr constant [5 x i8] c"asok\00" -@.str10409 = private unnamed_addr constant [6 x i8] c"asbad\00" -@.str10410 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str10411 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str10412 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str10413 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10414 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str10415 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16000: index out of range: \00" -@.str10416 = private unnamed_addr constant [2 x i8] c":\00" -@.str10417 = private unnamed_addr constant [21 x i8] c": assertion failed: \00" -@.str10418 = private unnamed_addr constant [41 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr \00" -@.str10419 = private unnamed_addr constant [24 x i8] c", ptr @.fmt_panic, ptr \00" -@.str10420 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10421 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10422 = private unnamed_addr constant [40 x i8] c" call void @exit(i32 1)\0A unreachable\0A\00" -@.str10423 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str10424 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10425 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10426 = private unnamed_addr constant [3 x i8] c"ok\00" -@.str10427 = private unnamed_addr constant [3 x i8] c"ok\00" -@.str10428 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16016: index out of range: \00" -@.str10429 = private unnamed_addr constant [25 x i8] c"call ptr @malloc(i64 16)\00" -@.str10430 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10431 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10432 = private unnamed_addr constant [20 x i8] c" store i32 1, ptr \00" -@.str10433 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10434 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10435 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" -@.str10436 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str10437 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10438 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10439 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10440 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10441 = private unnamed_addr constant [15 x i8] c", i32 0, i32 2\00" -@.str10442 = private unnamed_addr constant [23 x i8] c" store ptr null, ptr \00" -@.str10443 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10444 = private unnamed_addr constant [7 x i8] c"result\00" -@.str10445 = private unnamed_addr constant [4 x i8] c"err\00" -@.str10446 = private unnamed_addr constant [4 x i8] c"err\00" -@.str10447 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16028: index out of range: \00" -@.str10448 = private unnamed_addr constant [25 x i8] c"call ptr @malloc(i64 16)\00" -@.str10449 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10450 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10451 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" -@.str10452 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10453 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10454 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" -@.str10455 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" -@.str10456 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10457 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10458 = private unnamed_addr constant [15 x i8] c", i32 0, i32 2\00" -@.str10459 = private unnamed_addr constant [13 x i8] c" store ptr \00" -@.str10460 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10335 = private unnamed_addr constant [4 x i8] c"i64\00" +@.str10336 = private unnamed_addr constant [11 x i8] c"trunc i64 \00" +@.str10337 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10338 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10339 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10340 = private unnamed_addr constant [5 x i8] c"long\00" +@.str10341 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15934: index out of range: \00" +@.str10342 = private unnamed_addr constant [5 x i8] c"long\00" +@.str10343 = private unnamed_addr constant [11 x i8] c"float_bits\00" +@.str10344 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15938: index out of range: \00" +@.str10345 = private unnamed_addr constant [16 x i8] c"float_from_bits\00" +@.str10346 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15939: index out of range: \00" +@.str10347 = private unnamed_addr constant [12 x i8] c"double_bits\00" +@.str10348 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15940: index out of range: \00" +@.str10349 = private unnamed_addr constant [17 x i8] c"double_from_bits\00" +@.str10350 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15941: index out of range: \00" +@.str10351 = private unnamed_addr constant [7 x i8] c"floats\00" +@.str10352 = private unnamed_addr constant [8 x i8] c"doubles\00" +@.str10353 = private unnamed_addr constant [6 x i8] c"float\00" +@.str10354 = private unnamed_addr constant [8 x i8] c"doubles\00" +@.str10355 = private unnamed_addr constant [7 x i8] c"double\00" +@.str10356 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15945: index out of range: \00" +@.str10357 = private unnamed_addr constant [6 x i8] c"floor\00" +@.str10358 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15947: index out of range: \00" +@.str10359 = private unnamed_addr constant [10 x i8] c"ashr i32 \00" +@.str10360 = private unnamed_addr constant [5 x i8] c", 16\00" +@.str10361 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10362 = private unnamed_addr constant [7 x i8] c"expect\00" +@.str10363 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15955: index out of range: \00" +@.str10364 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str10365 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10366 = private unnamed_addr constant [16 x i8] c": expect failed\00" +@.str10367 = private unnamed_addr constant [1 x i8] c"\00" +@.str10368 = private unnamed_addr constant [1 x i8] c"\00" +@.str10369 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10370 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10371 = private unnamed_addr constant [10 x i8] c"expect_eq\00" +@.str10372 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15963: index out of range: \00" +@.str10373 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15963: index out of range: \00" +@.str10374 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10375 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10376 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str10377 = private unnamed_addr constant [3 x i8] c", \00" +@.str10378 = private unnamed_addr constant [19 x i8] c": expect_eq failed\00" +@.str10379 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10380 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10381 = private unnamed_addr constant [12 x i8] c"expect_near\00" +@.str10382 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15973: index out of range: \00" +@.str10383 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15973: index out of range: \00" +@.str10384 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15973: index out of range: \00" +@.str10385 = private unnamed_addr constant [9 x i8] c"sub i32 \00" +@.str10386 = private unnamed_addr constant [3 x i8] c", \00" +@.str10387 = private unnamed_addr constant [12 x i8] c"sub i32 0, \00" +@.str10388 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" +@.str10389 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10390 = private unnamed_addr constant [11 x i8] c"select i1 \00" +@.str10391 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10392 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10393 = private unnamed_addr constant [14 x i8] c"icmp sle i32 \00" +@.str10394 = private unnamed_addr constant [3 x i8] c", \00" +@.str10395 = private unnamed_addr constant [21 x i8] c": expect_near failed\00" +@.str10396 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10397 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10398 = private unnamed_addr constant [6 x i8] c"panic\00" +@.str10399 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:15992: index out of range: \00" +@.str10400 = private unnamed_addr constant [2 x i8] c":\00" +@.str10401 = private unnamed_addr constant [10 x i8] c": panic: \00" +@.str10402 = private unnamed_addr constant [41 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr \00" +@.str10403 = private unnamed_addr constant [24 x i8] c", ptr @.fmt_panic, ptr \00" +@.str10404 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10405 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10406 = private unnamed_addr constant [40 x i8] c" call void @exit(i32 1)\0A unreachable\0A\00" +@.str10407 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10408 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10409 = private unnamed_addr constant [7 x i8] c"assert\00" +@.str10410 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16002: index out of range: \00" +@.str10411 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str10412 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10413 = private unnamed_addr constant [5 x i8] c"asok\00" +@.str10414 = private unnamed_addr constant [6 x i8] c"asbad\00" +@.str10415 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str10416 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str10417 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str10418 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10419 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str10420 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16007: index out of range: \00" +@.str10421 = private unnamed_addr constant [2 x i8] c":\00" +@.str10422 = private unnamed_addr constant [21 x i8] c": assertion failed: \00" +@.str10423 = private unnamed_addr constant [41 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr \00" +@.str10424 = private unnamed_addr constant [24 x i8] c", ptr @.fmt_panic, ptr \00" +@.str10425 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10426 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10427 = private unnamed_addr constant [40 x i8] c" call void @exit(i32 1)\0A unreachable\0A\00" +@.str10428 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str10429 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10430 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10431 = private unnamed_addr constant [3 x i8] c"ok\00" +@.str10432 = private unnamed_addr constant [3 x i8] c"ok\00" +@.str10433 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16023: index out of range: \00" +@.str10434 = private unnamed_addr constant [25 x i8] c"call ptr @malloc(i64 16)\00" +@.str10435 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10436 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10437 = private unnamed_addr constant [20 x i8] c" store i32 1, ptr \00" +@.str10438 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10439 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10440 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" +@.str10441 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str10442 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10443 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10444 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10445 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10446 = private unnamed_addr constant [15 x i8] c", i32 0, i32 2\00" +@.str10447 = private unnamed_addr constant [23 x i8] c" store ptr null, ptr \00" +@.str10448 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10449 = private unnamed_addr constant [7 x i8] c"result\00" +@.str10450 = private unnamed_addr constant [4 x i8] c"err\00" +@.str10451 = private unnamed_addr constant [4 x i8] c"err\00" +@.str10452 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16035: index out of range: \00" +@.str10453 = private unnamed_addr constant [25 x i8] c"call ptr @malloc(i64 16)\00" +@.str10454 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10455 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10456 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" +@.str10457 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10458 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10459 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" +@.str10460 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" @.str10461 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10462 = private unnamed_addr constant [7 x i8] c"result\00" -@.str10463 = private unnamed_addr constant [6 x i8] c"is_ok\00" -@.str10464 = private unnamed_addr constant [6 x i8] c"is_ok\00" -@.str10465 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16039: index out of range: \00" -@.str10466 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10467 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10468 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str10469 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str10470 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10471 = private unnamed_addr constant [9 x i8] c"zext i1 \00" -@.str10472 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10473 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10474 = private unnamed_addr constant [7 x i8] c"is_err\00" -@.str10475 = private unnamed_addr constant [7 x i8] c"is_err\00" -@.str10476 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16046: index out of range: \00" -@.str10477 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" -@.str10478 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10479 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str10480 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str10481 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10482 = private unnamed_addr constant [9 x i8] c"zext i1 \00" -@.str10483 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10484 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10485 = private unnamed_addr constant [5 x i8] c"some\00" -@.str10486 = private unnamed_addr constant [5 x i8] c"some\00" -@.str10487 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16060: index out of range: \00" -@.str10488 = private unnamed_addr constant [24 x i8] c"call ptr @malloc(i64 8)\00" -@.str10489 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10490 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10491 = private unnamed_addr constant [20 x i8] c" store i32 1, ptr \00" -@.str10492 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10493 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10494 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" -@.str10495 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str10496 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10497 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10498 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10499 = private unnamed_addr constant [7 x i8] c"option\00" -@.str10500 = private unnamed_addr constant [5 x i8] c"none\00" -@.str10501 = private unnamed_addr constant [5 x i8] c"none\00" -@.str10502 = private unnamed_addr constant [24 x i8] c"call ptr @malloc(i64 8)\00" -@.str10503 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10504 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10505 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" -@.str10506 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10507 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10508 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" -@.str10509 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" -@.str10510 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10511 = private unnamed_addr constant [7 x i8] c"option\00" -@.str10512 = private unnamed_addr constant [8 x i8] c"is_some\00" -@.str10513 = private unnamed_addr constant [8 x i8] c"is_some\00" -@.str10514 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16078: index out of range: \00" -@.str10515 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10516 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10517 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str10518 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str10519 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10520 = private unnamed_addr constant [9 x i8] c"zext i1 \00" -@.str10521 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10522 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10523 = private unnamed_addr constant [8 x i8] c"is_none\00" -@.str10524 = private unnamed_addr constant [8 x i8] c"is_none\00" -@.str10525 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16085: index out of range: \00" -@.str10526 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10527 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10528 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str10529 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str10530 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10531 = private unnamed_addr constant [9 x i8] c"zext i1 \00" -@.str10532 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10533 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10534 = private unnamed_addr constant [10 x i8] c"unwrap_or\00" -@.str10535 = private unnamed_addr constant [10 x i8] c"unwrap_or\00" -@.str10536 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16092: index out of range: \00" -@.str10537 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16093: index out of range: \00" -@.str10538 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10539 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" -@.str10540 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str10541 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" -@.str10542 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" -@.str10543 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str10544 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str10545 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10546 = private unnamed_addr constant [11 x i8] c"select i1 \00" -@.str10547 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10548 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10549 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10550 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10551 = private unnamed_addr constant [14 x i8] c"world_prop_id\00" -@.str10552 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16104: index out of range: \00" -@.str10553 = private unnamed_addr constant [29 x i8] c"call i32 @ludic_prop_id(ptr \00" -@.str10554 = private unnamed_addr constant [2 x i8] c")\00" +@.str10462 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10463 = private unnamed_addr constant [15 x i8] c", i32 0, i32 2\00" +@.str10464 = private unnamed_addr constant [13 x i8] c" store ptr \00" +@.str10465 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10466 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10467 = private unnamed_addr constant [7 x i8] c"result\00" +@.str10468 = private unnamed_addr constant [6 x i8] c"is_ok\00" +@.str10469 = private unnamed_addr constant [6 x i8] c"is_ok\00" +@.str10470 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16046: index out of range: \00" +@.str10471 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10472 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10473 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str10474 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str10475 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10476 = private unnamed_addr constant [9 x i8] c"zext i1 \00" +@.str10477 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10478 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10479 = private unnamed_addr constant [7 x i8] c"is_err\00" +@.str10480 = private unnamed_addr constant [7 x i8] c"is_err\00" +@.str10481 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16053: index out of range: \00" +@.str10482 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Result, ptr \00" +@.str10483 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10484 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str10485 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str10486 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10487 = private unnamed_addr constant [9 x i8] c"zext i1 \00" +@.str10488 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10489 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10490 = private unnamed_addr constant [5 x i8] c"some\00" +@.str10491 = private unnamed_addr constant [5 x i8] c"some\00" +@.str10492 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16067: index out of range: \00" +@.str10493 = private unnamed_addr constant [24 x i8] c"call ptr @malloc(i64 8)\00" +@.str10494 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10495 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10496 = private unnamed_addr constant [20 x i8] c" store i32 1, ptr \00" +@.str10497 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10498 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10499 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" +@.str10500 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str10501 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10502 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10503 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10504 = private unnamed_addr constant [7 x i8] c"option\00" +@.str10505 = private unnamed_addr constant [5 x i8] c"none\00" +@.str10506 = private unnamed_addr constant [5 x i8] c"none\00" +@.str10507 = private unnamed_addr constant [24 x i8] c"call ptr @malloc(i64 8)\00" +@.str10508 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10509 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10510 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" +@.str10511 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10512 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10513 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" +@.str10514 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" +@.str10515 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10516 = private unnamed_addr constant [7 x i8] c"option\00" +@.str10517 = private unnamed_addr constant [8 x i8] c"is_some\00" +@.str10518 = private unnamed_addr constant [8 x i8] c"is_some\00" +@.str10519 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16085: index out of range: \00" +@.str10520 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10521 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10522 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str10523 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str10524 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10525 = private unnamed_addr constant [9 x i8] c"zext i1 \00" +@.str10526 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10527 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10528 = private unnamed_addr constant [8 x i8] c"is_none\00" +@.str10529 = private unnamed_addr constant [8 x i8] c"is_none\00" +@.str10530 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16092: index out of range: \00" +@.str10531 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10532 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10533 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str10534 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str10535 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10536 = private unnamed_addr constant [9 x i8] c"zext i1 \00" +@.str10537 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10538 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10539 = private unnamed_addr constant [10 x i8] c"unwrap_or\00" +@.str10540 = private unnamed_addr constant [10 x i8] c"unwrap_or\00" +@.str10541 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16099: index out of range: \00" +@.str10542 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16100: index out of range: \00" +@.str10543 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10544 = private unnamed_addr constant [15 x i8] c", i32 0, i32 0\00" +@.str10545 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str10546 = private unnamed_addr constant [37 x i8] c"getelementptr inbounds %Option, ptr \00" +@.str10547 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" +@.str10548 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str10549 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str10550 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10551 = private unnamed_addr constant [11 x i8] c"select i1 \00" +@.str10552 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10553 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10554 = private unnamed_addr constant [4 x i8] c"int\00" @.str10555 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10556 = private unnamed_addr constant [15 x i8] c"world_field_id\00" -@.str10557 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16105: index out of range: \00" -@.str10558 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16105: index out of range: \00" -@.str10559 = private unnamed_addr constant [30 x i8] c"call i32 @ludic_field_id(i32 \00" -@.str10560 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str10561 = private unnamed_addr constant [2 x i8] c")\00" -@.str10562 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10563 = private unnamed_addr constant [10 x i8] c"world_get\00" -@.str10564 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16107: index out of range: \00" -@.str10565 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16107: index out of range: \00" -@.str10566 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16107: index out of range: \00" -@.str10567 = private unnamed_addr constant [25 x i8] c"call i64 @ludic_get(i32 \00" -@.str10568 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10569 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10570 = private unnamed_addr constant [2 x i8] c")\00" -@.str10571 = private unnamed_addr constant [11 x i8] c"trunc i64 \00" -@.str10572 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10573 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10574 = private unnamed_addr constant [10 x i8] c"world_set\00" -@.str10575 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16112: index out of range: \00" -@.str10576 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16112: index out of range: \00" -@.str10577 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16112: index out of range: \00" -@.str10578 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16112: index out of range: \00" -@.str10579 = private unnamed_addr constant [10 x i8] c"sext i32 \00" -@.str10580 = private unnamed_addr constant [8 x i8] c" to i64\00" -@.str10581 = private unnamed_addr constant [28 x i8] c" call void @ludic_set(i32 \00" -@.str10582 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10583 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10584 = private unnamed_addr constant [7 x i8] c", i64 \00" -@.str10585 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10586 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10587 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10588 = private unnamed_addr constant [10 x i8] c"world_has\00" -@.str10589 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16117: index out of range: \00" -@.str10590 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16117: index out of range: \00" -@.str10591 = private unnamed_addr constant [25 x i8] c"call i32 @ludic_has(i32 \00" -@.str10592 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10593 = private unnamed_addr constant [2 x i8] c")\00" -@.str10594 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10595 = private unnamed_addr constant [12 x i8] c"world_count\00" -@.str10596 = private unnamed_addr constant [31 x i8] c"call i32 @ludic_entity_count()\00" -@.str10597 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10598 = private unnamed_addr constant [11 x i8] c"world_kind\00" -@.str10599 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16119: index out of range: \00" -@.str10600 = private unnamed_addr constant [26 x i8] c"call i32 @ludic_kind(i32 \00" -@.str10601 = private unnamed_addr constant [2 x i8] c")\00" +@.str10556 = private unnamed_addr constant [14 x i8] c"world_prop_id\00" +@.str10557 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16111: index out of range: \00" +@.str10558 = private unnamed_addr constant [29 x i8] c"call i32 @ludic_prop_id(ptr \00" +@.str10559 = private unnamed_addr constant [2 x i8] c")\00" +@.str10560 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10561 = private unnamed_addr constant [15 x i8] c"world_field_id\00" +@.str10562 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16112: index out of range: \00" +@.str10563 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16112: index out of range: \00" +@.str10564 = private unnamed_addr constant [30 x i8] c"call i32 @ludic_field_id(i32 \00" +@.str10565 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str10566 = private unnamed_addr constant [2 x i8] c")\00" +@.str10567 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10568 = private unnamed_addr constant [10 x i8] c"world_get\00" +@.str10569 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16114: index out of range: \00" +@.str10570 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16114: index out of range: \00" +@.str10571 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16114: index out of range: \00" +@.str10572 = private unnamed_addr constant [25 x i8] c"call i64 @ludic_get(i32 \00" +@.str10573 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10574 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10575 = private unnamed_addr constant [2 x i8] c")\00" +@.str10576 = private unnamed_addr constant [11 x i8] c"trunc i64 \00" +@.str10577 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10578 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10579 = private unnamed_addr constant [10 x i8] c"world_set\00" +@.str10580 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16119: index out of range: \00" +@.str10581 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16119: index out of range: \00" +@.str10582 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16119: index out of range: \00" +@.str10583 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16119: index out of range: \00" +@.str10584 = private unnamed_addr constant [10 x i8] c"sext i32 \00" +@.str10585 = private unnamed_addr constant [8 x i8] c" to i64\00" +@.str10586 = private unnamed_addr constant [28 x i8] c" call void @ludic_set(i32 \00" +@.str10587 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10588 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10589 = private unnamed_addr constant [7 x i8] c", i64 \00" +@.str10590 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10591 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10592 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10593 = private unnamed_addr constant [10 x i8] c"world_has\00" +@.str10594 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16124: index out of range: \00" +@.str10595 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16124: index out of range: \00" +@.str10596 = private unnamed_addr constant [25 x i8] c"call i32 @ludic_has(i32 \00" +@.str10597 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10598 = private unnamed_addr constant [2 x i8] c")\00" +@.str10599 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10600 = private unnamed_addr constant [12 x i8] c"world_count\00" +@.str10601 = private unnamed_addr constant [31 x i8] c"call i32 @ludic_entity_count()\00" @.str10602 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10603 = private unnamed_addr constant [15 x i8] c"world_model_id\00" -@.str10604 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16120: index out of range: \00" -@.str10605 = private unnamed_addr constant [30 x i8] c"call i32 @ludic_model_id(ptr \00" +@.str10603 = private unnamed_addr constant [11 x i8] c"world_kind\00" +@.str10604 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16126: index out of range: \00" +@.str10605 = private unnamed_addr constant [26 x i8] c"call i32 @ludic_kind(i32 \00" @.str10606 = private unnamed_addr constant [2 x i8] c")\00" @.str10607 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10608 = private unnamed_addr constant [17 x i8] c"world_query_next\00" -@.str10609 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16121: index out of range: \00" -@.str10610 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16121: index out of range: \00" -@.str10611 = private unnamed_addr constant [32 x i8] c"call i32 @ludic_query_next(i32 \00" -@.str10612 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10613 = private unnamed_addr constant [2 x i8] c")\00" -@.str10614 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10615 = private unnamed_addr constant [20 x i8] c"world_register_prop\00" -@.str10616 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16122: index out of range: \00" -@.str10617 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16122: index out of range: \00" -@.str10618 = private unnamed_addr constant [35 x i8] c"call i32 @ludic_register_prop(ptr \00" -@.str10619 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10620 = private unnamed_addr constant [2 x i8] c")\00" -@.str10621 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10622 = private unnamed_addr constant [17 x i8] c"world_attach_dyn\00" -@.str10623 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16123: index out of range: \00" -@.str10624 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16123: index out of range: \00" -@.str10625 = private unnamed_addr constant [35 x i8] c" call void @ludic_attach_dyn(i32 \00" -@.str10626 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10627 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10628 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10629 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10630 = private unnamed_addr constant [17 x i8] c"world_detach_dyn\00" -@.str10631 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16124: index out of range: \00" -@.str10632 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16124: index out of range: \00" -@.str10633 = private unnamed_addr constant [35 x i8] c" call void @ludic_detach_dyn(i32 \00" -@.str10634 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10635 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10636 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10637 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10638 = private unnamed_addr constant [12 x i8] c"world_spawn\00" -@.str10639 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16125: index out of range: \00" -@.str10640 = private unnamed_addr constant [27 x i8] c"call i32 @ludic_spawn(i32 \00" -@.str10641 = private unnamed_addr constant [2 x i8] c")\00" -@.str10642 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10643 = private unnamed_addr constant [17 x i8] c"world_prop_count\00" -@.str10644 = private unnamed_addr constant [29 x i8] c"call i32 @ludic_prop_count()\00" -@.str10645 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10646 = private unnamed_addr constant [16 x i8] c"world_prop_name\00" -@.str10647 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16128: index out of range: \00" -@.str10648 = private unnamed_addr constant [31 x i8] c"call ptr @ludic_prop_name(i32 \00" -@.str10649 = private unnamed_addr constant [2 x i8] c")\00" -@.str10650 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10651 = private unnamed_addr constant [18 x i8] c"world_field_count\00" -@.str10652 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16129: index out of range: \00" -@.str10653 = private unnamed_addr constant [33 x i8] c"call i32 @ludic_field_count(i32 \00" +@.str10608 = private unnamed_addr constant [15 x i8] c"world_model_id\00" +@.str10609 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16127: index out of range: \00" +@.str10610 = private unnamed_addr constant [30 x i8] c"call i32 @ludic_model_id(ptr \00" +@.str10611 = private unnamed_addr constant [2 x i8] c")\00" +@.str10612 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10613 = private unnamed_addr constant [17 x i8] c"world_query_next\00" +@.str10614 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16128: index out of range: \00" +@.str10615 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16128: index out of range: \00" +@.str10616 = private unnamed_addr constant [32 x i8] c"call i32 @ludic_query_next(i32 \00" +@.str10617 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10618 = private unnamed_addr constant [2 x i8] c")\00" +@.str10619 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10620 = private unnamed_addr constant [20 x i8] c"world_register_prop\00" +@.str10621 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16129: index out of range: \00" +@.str10622 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16129: index out of range: \00" +@.str10623 = private unnamed_addr constant [35 x i8] c"call i32 @ludic_register_prop(ptr \00" +@.str10624 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10625 = private unnamed_addr constant [2 x i8] c")\00" +@.str10626 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10627 = private unnamed_addr constant [17 x i8] c"world_attach_dyn\00" +@.str10628 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16130: index out of range: \00" +@.str10629 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16130: index out of range: \00" +@.str10630 = private unnamed_addr constant [35 x i8] c" call void @ludic_attach_dyn(i32 \00" +@.str10631 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10632 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10633 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10634 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10635 = private unnamed_addr constant [17 x i8] c"world_detach_dyn\00" +@.str10636 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16131: index out of range: \00" +@.str10637 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16131: index out of range: \00" +@.str10638 = private unnamed_addr constant [35 x i8] c" call void @ludic_detach_dyn(i32 \00" +@.str10639 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10640 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10641 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10642 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10643 = private unnamed_addr constant [12 x i8] c"world_spawn\00" +@.str10644 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16132: index out of range: \00" +@.str10645 = private unnamed_addr constant [27 x i8] c"call i32 @ludic_spawn(i32 \00" +@.str10646 = private unnamed_addr constant [2 x i8] c")\00" +@.str10647 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10648 = private unnamed_addr constant [17 x i8] c"world_prop_count\00" +@.str10649 = private unnamed_addr constant [29 x i8] c"call i32 @ludic_prop_count()\00" +@.str10650 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10651 = private unnamed_addr constant [16 x i8] c"world_prop_name\00" +@.str10652 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16135: index out of range: \00" +@.str10653 = private unnamed_addr constant [31 x i8] c"call ptr @ludic_prop_name(i32 \00" @.str10654 = private unnamed_addr constant [2 x i8] c")\00" -@.str10655 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10656 = private unnamed_addr constant [17 x i8] c"world_field_name\00" -@.str10657 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16130: index out of range: \00" -@.str10658 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16130: index out of range: \00" -@.str10659 = private unnamed_addr constant [32 x i8] c"call ptr @ludic_field_name(i32 \00" -@.str10660 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10661 = private unnamed_addr constant [2 x i8] c")\00" -@.str10662 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10663 = private unnamed_addr constant [17 x i8] c"world_field_type\00" -@.str10664 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16131: index out of range: \00" -@.str10665 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16131: index out of range: \00" -@.str10666 = private unnamed_addr constant [32 x i8] c"call ptr @ludic_field_type(i32 \00" -@.str10667 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10668 = private unnamed_addr constant [2 x i8] c")\00" -@.str10669 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10670 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16147: index out of range: \00" -@.str10671 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" -@.str10672 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str10673 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16151: index out of range: \00" -@.str10674 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str10675 = private unnamed_addr constant [3 x i8] c" \00" -@.str10676 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10677 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10678 = private unnamed_addr constant [4 x i8] c" = \00" -@.str10679 = private unnamed_addr constant [6 x i8] c"call \00" -@.str10680 = private unnamed_addr constant [3 x i8] c" @\00" -@.str10681 = private unnamed_addr constant [2 x i8] c"(\00" -@.str10682 = private unnamed_addr constant [3 x i8] c", \00" -@.str10683 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16165: index out of range: \00" -@.str10684 = private unnamed_addr constant [2 x i8] c" \00" -@.str10685 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16165: index out of range: \00" -@.str10686 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10687 = private unnamed_addr constant [4 x i8] c"rt_\00" -@.str10688 = private unnamed_addr constant [18 x i8] c"unknown function \00" -@.str10689 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16199: index out of range: \00" -@.str10690 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16201: index out of range: \00" -@.str10691 = private unnamed_addr constant [3 x i8] c" \00" -@.str10692 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10693 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10694 = private unnamed_addr constant [4 x i8] c" = \00" -@.str10695 = private unnamed_addr constant [6 x i8] c"call \00" -@.str10696 = private unnamed_addr constant [6 x i8] c" @fn_\00" -@.str10697 = private unnamed_addr constant [2 x i8] c"(\00" -@.str10698 = private unnamed_addr constant [3 x i8] c", \00" -@.str10699 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16212: index out of range: \00" -@.str10700 = private unnamed_addr constant [2 x i8] c" \00" -@.str10701 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16212: index out of range: \00" -@.str10702 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10703 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10704 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10705 = private unnamed_addr constant [5 x i8] c"long\00" -@.str10706 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10707 = private unnamed_addr constant [6 x i8] c"float\00" -@.str10708 = private unnamed_addr constant [6 x i8] c"float\00" -@.str10709 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10710 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16231: index out of range: \00" -@.str10711 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10712 = private unnamed_addr constant [5 x i8] c"null\00" -@.str10713 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str10714 = private unnamed_addr constant [7 x i8] c"entity\00" -@.str10715 = private unnamed_addr constant [28 x i8] c"call ptr @lp_str_slice(ptr \00" -@.str10716 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10717 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str10718 = private unnamed_addr constant [2 x i8] c")\00" -@.str10719 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10720 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10721 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16253: index out of range: \00" -@.str10722 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16253: index out of range: \00" -@.str10723 = private unnamed_addr constant [7 x i8] c"const \00" -@.str10724 = private unnamed_addr constant [6 x i8] c"load \00" -@.str10725 = private unnamed_addr constant [10 x i8] c", ptr @g_\00" -@.str10726 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10727 = private unnamed_addr constant [20 x i8] c"unknown identifier \00" -@.str10728 = private unnamed_addr constant [6 x i8] c"Color\00" -@.str10729 = private unnamed_addr constant [21 x i8] c"unknown color Color.\00" -@.str10730 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10731 = private unnamed_addr constant [4 x i8] c"Key\00" -@.str10732 = private unnamed_addr constant [17 x i8] c"unknown key Key.\00" -@.str10733 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10734 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10735 = private unnamed_addr constant [6 x i8] c"IVec2\00" -@.str10736 = private unnamed_addr constant [2 x i8] c"x\00" -@.str10737 = private unnamed_addr constant [2 x i8] c"y\00" -@.str10738 = private unnamed_addr constant [2 x i8] c"x\00" +@.str10655 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10656 = private unnamed_addr constant [18 x i8] c"world_field_count\00" +@.str10657 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16136: index out of range: \00" +@.str10658 = private unnamed_addr constant [33 x i8] c"call i32 @ludic_field_count(i32 \00" +@.str10659 = private unnamed_addr constant [2 x i8] c")\00" +@.str10660 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10661 = private unnamed_addr constant [17 x i8] c"world_field_name\00" +@.str10662 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16137: index out of range: \00" +@.str10663 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16137: index out of range: \00" +@.str10664 = private unnamed_addr constant [32 x i8] c"call ptr @ludic_field_name(i32 \00" +@.str10665 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10666 = private unnamed_addr constant [2 x i8] c")\00" +@.str10667 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10668 = private unnamed_addr constant [17 x i8] c"world_field_type\00" +@.str10669 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16138: index out of range: \00" +@.str10670 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16138: index out of range: \00" +@.str10671 = private unnamed_addr constant [32 x i8] c"call ptr @ludic_field_type(i32 \00" +@.str10672 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10673 = private unnamed_addr constant [2 x i8] c")\00" +@.str10674 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10675 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16154: index out of range: \00" +@.str10676 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" +@.str10677 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str10678 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16158: index out of range: \00" +@.str10679 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str10680 = private unnamed_addr constant [3 x i8] c" \00" +@.str10681 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10682 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10683 = private unnamed_addr constant [4 x i8] c" = \00" +@.str10684 = private unnamed_addr constant [6 x i8] c"call \00" +@.str10685 = private unnamed_addr constant [3 x i8] c" @\00" +@.str10686 = private unnamed_addr constant [2 x i8] c"(\00" +@.str10687 = private unnamed_addr constant [3 x i8] c", \00" +@.str10688 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16172: index out of range: \00" +@.str10689 = private unnamed_addr constant [2 x i8] c" \00" +@.str10690 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16172: index out of range: \00" +@.str10691 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10692 = private unnamed_addr constant [4 x i8] c"rt_\00" +@.str10693 = private unnamed_addr constant [18 x i8] c"unknown function \00" +@.str10694 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16206: index out of range: \00" +@.str10695 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16208: index out of range: \00" +@.str10696 = private unnamed_addr constant [3 x i8] c" \00" +@.str10697 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10698 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10699 = private unnamed_addr constant [4 x i8] c" = \00" +@.str10700 = private unnamed_addr constant [6 x i8] c"call \00" +@.str10701 = private unnamed_addr constant [6 x i8] c" @fn_\00" +@.str10702 = private unnamed_addr constant [2 x i8] c"(\00" +@.str10703 = private unnamed_addr constant [3 x i8] c", \00" +@.str10704 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16219: index out of range: \00" +@.str10705 = private unnamed_addr constant [2 x i8] c" \00" +@.str10706 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16219: index out of range: \00" +@.str10707 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10708 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10709 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10710 = private unnamed_addr constant [5 x i8] c"long\00" +@.str10711 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10712 = private unnamed_addr constant [6 x i8] c"float\00" +@.str10713 = private unnamed_addr constant [6 x i8] c"float\00" +@.str10714 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10715 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16238: index out of range: \00" +@.str10716 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10717 = private unnamed_addr constant [5 x i8] c"null\00" +@.str10718 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str10719 = private unnamed_addr constant [7 x i8] c"entity\00" +@.str10720 = private unnamed_addr constant [28 x i8] c"call ptr @lp_str_slice(ptr \00" +@.str10721 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10722 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str10723 = private unnamed_addr constant [2 x i8] c")\00" +@.str10724 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10725 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10726 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16260: index out of range: \00" +@.str10727 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16260: index out of range: \00" +@.str10728 = private unnamed_addr constant [7 x i8] c"const \00" +@.str10729 = private unnamed_addr constant [6 x i8] c"load \00" +@.str10730 = private unnamed_addr constant [10 x i8] c", ptr @g_\00" +@.str10731 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10732 = private unnamed_addr constant [20 x i8] c"unknown identifier \00" +@.str10733 = private unnamed_addr constant [6 x i8] c"Color\00" +@.str10734 = private unnamed_addr constant [21 x i8] c"unknown color Color.\00" +@.str10735 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10736 = private unnamed_addr constant [4 x i8] c"Key\00" +@.str10737 = private unnamed_addr constant [17 x i8] c"unknown key Key.\00" +@.str10738 = private unnamed_addr constant [4 x i8] c"int\00" @.str10739 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10740 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10741 = private unnamed_addr constant [5 x i8] c"byte\00" -@.str10742 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" -@.str10743 = private unnamed_addr constant [9 x i8] c"zext i8 \00" -@.str10744 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10740 = private unnamed_addr constant [6 x i8] c"IVec2\00" +@.str10741 = private unnamed_addr constant [2 x i8] c"x\00" +@.str10742 = private unnamed_addr constant [2 x i8] c"y\00" +@.str10743 = private unnamed_addr constant [2 x i8] c"x\00" +@.str10744 = private unnamed_addr constant [4 x i8] c"int\00" @.str10745 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10746 = private unnamed_addr constant [2 x i8] c"-\00" -@.str10747 = private unnamed_addr constant [6 x i8] c"fneg \00" -@.str10748 = private unnamed_addr constant [2 x i8] c" \00" -@.str10749 = private unnamed_addr constant [10 x i8] c"operator \00" -@.str10750 = private unnamed_addr constant [20 x i8] c" does not apply to \00" +@.str10746 = private unnamed_addr constant [5 x i8] c"byte\00" +@.str10747 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" +@.str10748 = private unnamed_addr constant [9 x i8] c"zext i8 \00" +@.str10749 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10750 = private unnamed_addr constant [4 x i8] c"int\00" @.str10751 = private unnamed_addr constant [2 x i8] c"-\00" -@.str10752 = private unnamed_addr constant [12 x i8] c"sub i32 0, \00" -@.str10753 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10754 = private unnamed_addr constant [4 x i8] c"i64\00" -@.str10755 = private unnamed_addr constant [2 x i8] c"-\00" -@.str10756 = private unnamed_addr constant [12 x i8] c"sub i64 0, \00" -@.str10757 = private unnamed_addr constant [5 x i8] c"long\00" -@.str10758 = private unnamed_addr constant [2 x i8] c"~\00" -@.str10759 = private unnamed_addr constant [9 x i8] c"xor i64 \00" -@.str10760 = private unnamed_addr constant [5 x i8] c", -1\00" -@.str10761 = private unnamed_addr constant [5 x i8] c"long\00" -@.str10762 = private unnamed_addr constant [2 x i8] c"-\00" -@.str10763 = private unnamed_addr constant [12 x i8] c"sub i32 0, \00" -@.str10764 = private unnamed_addr constant [2 x i8] c"~\00" -@.str10765 = private unnamed_addr constant [9 x i8] c"xor i32 \00" -@.str10766 = private unnamed_addr constant [5 x i8] c", -1\00" -@.str10767 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str10768 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str10769 = private unnamed_addr constant [9 x i8] c"zext i1 \00" -@.str10770 = private unnamed_addr constant [8 x i8] c" to i32\00" -@.str10771 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10772 = private unnamed_addr constant [35 x i8] c"cannot emit expression (node kind \00" -@.str10773 = private unnamed_addr constant [2 x i8] c")\00" -@.str10774 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10775 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10776 = private unnamed_addr constant [4 x i8] c"fn(\00" -@.str10777 = private unnamed_addr constant [2 x i8] c",\00" -@.str10778 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16363: index out of range: \00" -@.str10779 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10780 = private unnamed_addr constant [4 x i8] c")->\00" -@.str10781 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10782 = private unnamed_addr constant [4 x i8] c"fn \00" -@.str10783 = private unnamed_addr constant [22 x i8] c": no function called \00" -@.str10784 = private unnamed_addr constant [5 x i8] c"@fn_\00" -@.str10785 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16420: index out of range: \00" -@.str10786 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16420: index out of range: \00" -@.str10787 = private unnamed_addr constant [5 x i8] c"@fn_\00" -@.str10788 = private unnamed_addr constant [5 x i8] c"$inj\00" -@.str10789 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16431: index out of range: \00" -@.str10790 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10791 = private unnamed_addr constant [1 x i8] c"\00" -@.str10792 = private unnamed_addr constant [1 x i8] c"\00" -@.str10793 = private unnamed_addr constant [1 x i8] c"\00" -@.str10794 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16443: index out of range: \00" -@.str10795 = private unnamed_addr constant [5 x i8] c" %s\00" -@.str10796 = private unnamed_addr constant [27 x i8] c" = load ptr, ptr @g_state$\00" -@.str10797 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10798 = private unnamed_addr constant [3 x i8] c", \00" -@.str10799 = private unnamed_addr constant [7 x i8] c"ptr %s\00" -@.str10800 = private unnamed_addr constant [3 x i8] c", \00" -@.str10801 = private unnamed_addr constant [4 x i8] c" %p\00" -@.str10802 = private unnamed_addr constant [3 x i8] c", \00" -@.str10803 = private unnamed_addr constant [4 x i8] c" %p\00" -@.str10804 = private unnamed_addr constant [8 x i8] c" call \00" -@.str10805 = private unnamed_addr constant [6 x i8] c" @fn_\00" -@.str10806 = private unnamed_addr constant [2 x i8] c"(\00" -@.str10807 = private unnamed_addr constant [14 x i8] c")\0A ret void\0A\00" -@.str10808 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10809 = private unnamed_addr constant [13 x i8] c" %r = call \00" +@.str10752 = private unnamed_addr constant [6 x i8] c"fneg \00" +@.str10753 = private unnamed_addr constant [2 x i8] c" \00" +@.str10754 = private unnamed_addr constant [10 x i8] c"operator \00" +@.str10755 = private unnamed_addr constant [20 x i8] c" does not apply to \00" +@.str10756 = private unnamed_addr constant [2 x i8] c"-\00" +@.str10757 = private unnamed_addr constant [12 x i8] c"sub i32 0, \00" +@.str10758 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10759 = private unnamed_addr constant [4 x i8] c"i64\00" +@.str10760 = private unnamed_addr constant [2 x i8] c"-\00" +@.str10761 = private unnamed_addr constant [12 x i8] c"sub i64 0, \00" +@.str10762 = private unnamed_addr constant [5 x i8] c"long\00" +@.str10763 = private unnamed_addr constant [2 x i8] c"~\00" +@.str10764 = private unnamed_addr constant [9 x i8] c"xor i64 \00" +@.str10765 = private unnamed_addr constant [5 x i8] c", -1\00" +@.str10766 = private unnamed_addr constant [5 x i8] c"long\00" +@.str10767 = private unnamed_addr constant [2 x i8] c"-\00" +@.str10768 = private unnamed_addr constant [12 x i8] c"sub i32 0, \00" +@.str10769 = private unnamed_addr constant [2 x i8] c"~\00" +@.str10770 = private unnamed_addr constant [9 x i8] c"xor i32 \00" +@.str10771 = private unnamed_addr constant [5 x i8] c", -1\00" +@.str10772 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str10773 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str10774 = private unnamed_addr constant [9 x i8] c"zext i1 \00" +@.str10775 = private unnamed_addr constant [8 x i8] c" to i32\00" +@.str10776 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10777 = private unnamed_addr constant [35 x i8] c"cannot emit expression (node kind \00" +@.str10778 = private unnamed_addr constant [2 x i8] c")\00" +@.str10779 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10780 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10781 = private unnamed_addr constant [4 x i8] c"fn(\00" +@.str10782 = private unnamed_addr constant [2 x i8] c",\00" +@.str10783 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16370: index out of range: \00" +@.str10784 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10785 = private unnamed_addr constant [4 x i8] c")->\00" +@.str10786 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10787 = private unnamed_addr constant [4 x i8] c"fn \00" +@.str10788 = private unnamed_addr constant [22 x i8] c": no function called \00" +@.str10789 = private unnamed_addr constant [5 x i8] c"@fn_\00" +@.str10790 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16427: index out of range: \00" +@.str10791 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16427: index out of range: \00" +@.str10792 = private unnamed_addr constant [5 x i8] c"@fn_\00" +@.str10793 = private unnamed_addr constant [5 x i8] c"$inj\00" +@.str10794 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16438: index out of range: \00" +@.str10795 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10796 = private unnamed_addr constant [1 x i8] c"\00" +@.str10797 = private unnamed_addr constant [1 x i8] c"\00" +@.str10798 = private unnamed_addr constant [1 x i8] c"\00" +@.str10799 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16450: index out of range: \00" +@.str10800 = private unnamed_addr constant [5 x i8] c" %s\00" +@.str10801 = private unnamed_addr constant [27 x i8] c" = load ptr, ptr @g_state$\00" +@.str10802 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10803 = private unnamed_addr constant [3 x i8] c", \00" +@.str10804 = private unnamed_addr constant [7 x i8] c"ptr %s\00" +@.str10805 = private unnamed_addr constant [3 x i8] c", \00" +@.str10806 = private unnamed_addr constant [4 x i8] c" %p\00" +@.str10807 = private unnamed_addr constant [3 x i8] c", \00" +@.str10808 = private unnamed_addr constant [4 x i8] c" %p\00" +@.str10809 = private unnamed_addr constant [8 x i8] c" call \00" @.str10810 = private unnamed_addr constant [6 x i8] c" @fn_\00" @.str10811 = private unnamed_addr constant [2 x i8] c"(\00" -@.str10812 = private unnamed_addr constant [9 x i8] c")\0A ret \00" -@.str10813 = private unnamed_addr constant [5 x i8] c" %r\0A\00" -@.str10814 = private unnamed_addr constant [8 x i8] c"define \00" -@.str10815 = private unnamed_addr constant [2 x i8] c" \00" +@.str10812 = private unnamed_addr constant [14 x i8] c")\0A ret void\0A\00" +@.str10813 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10814 = private unnamed_addr constant [13 x i8] c" %r = call \00" +@.str10815 = private unnamed_addr constant [6 x i8] c" @fn_\00" @.str10816 = private unnamed_addr constant [2 x i8] c"(\00" -@.str10817 = private unnamed_addr constant [12 x i8] c") {\0Aentry:\0A\00" -@.str10818 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str10819 = private unnamed_addr constant [5 x i8] c"@fn_\00" -@.str10820 = private unnamed_addr constant [3 x i8] c"a \00" -@.str10821 = private unnamed_addr constant [8 x i8] c" takes \00" -@.str10822 = private unnamed_addr constant [35 x i8] c" argument(s), and this call gives \00" -@.str10823 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16476: index out of range: \00" -@.str10824 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16477: index out of range: \00" -@.str10825 = private unnamed_addr constant [3 x i8] c" \00" -@.str10826 = private unnamed_addr constant [2 x i8] c"0\00" -@.str10827 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10828 = private unnamed_addr constant [4 x i8] c" = \00" -@.str10829 = private unnamed_addr constant [6 x i8] c"call \00" -@.str10830 = private unnamed_addr constant [2 x i8] c" \00" -@.str10831 = private unnamed_addr constant [2 x i8] c"(\00" -@.str10832 = private unnamed_addr constant [3 x i8] c", \00" -@.str10833 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16492: index out of range: \00" -@.str10834 = private unnamed_addr constant [2 x i8] c" \00" -@.str10835 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16492: index out of range: \00" -@.str10836 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10837 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16504: index out of range: \00" -@.str10838 = private unnamed_addr constant [3 x i8] c"a \00" -@.str10839 = private unnamed_addr constant [40 x i8] c" is not a function and cannot be called\00" -@.str10840 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10841 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16531: index out of range: \00" -@.str10842 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str10843 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16531: index out of range: \00" -@.str10844 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str10845 = private unnamed_addr constant [4 x i8] c"fn \00" -@.str10846 = private unnamed_addr constant [69 x i8] c": a worker function takes (i: int, ctx: pointer) and returns nothing\00" -@.str10847 = private unnamed_addr constant [17 x i8] c"LUDIC_VIS_REPORT\00" -@.str10848 = private unnamed_addr constant [7 x i8] c"state$\00" -@.str10849 = private unnamed_addr constant [15 x i8] c"ludic_reduce__\00" -@.str10850 = private unnamed_addr constant [1 x i8] c"\00" -@.str10851 = private unnamed_addr constant [7 x i8] c"uses: \00" -@.str10852 = private unnamed_addr constant [2 x i8] c":\00" -@.str10853 = private unnamed_addr constant [3 x i8] c": \00" -@.str10854 = private unnamed_addr constant [2 x i8] c".\00" -@.str10855 = private unnamed_addr constant [12 x i8] c" used from \00" -@.str10856 = private unnamed_addr constant [10 x i8] c" (module \00" -@.str10857 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str10858 = private unnamed_addr constant [7 x i8] c" uses \00" -@.str10859 = private unnamed_addr constant [2 x i8] c".\00" -@.str10860 = private unnamed_addr constant [3 x i8] c" (\00" -@.str10861 = private unnamed_addr constant [2 x i8] c":\00" -@.str10862 = private unnamed_addr constant [14 x i8] c"): add 'uses \00" -@.str10863 = private unnamed_addr constant [6 x i8] c"' to \00" -@.str10864 = private unnamed_addr constant [42 x i8] c"'s module line, or take it through a port\00" -@.str10865 = private unnamed_addr constant [1 x i8] c"\00" -@.str10866 = private unnamed_addr constant [6 x i8] c"vis: \00" -@.str10867 = private unnamed_addr constant [2 x i8] c":\00" -@.str10868 = private unnamed_addr constant [3 x i8] c": \00" -@.str10869 = private unnamed_addr constant [2 x i8] c".\00" -@.str10870 = private unnamed_addr constant [12 x i8] c" used from \00" -@.str10871 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str10872 = private unnamed_addr constant [23 x i8] c" is private to module \00" -@.str10873 = private unnamed_addr constant [42 x i8] c"; mark it 'export' where it is declared (\00" -@.str10874 = private unnamed_addr constant [2 x i8] c")\00" -@.str10875 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16629: index out of range: \00" -@.str10876 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16629: index out of range: \00" -@.str10877 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16630: index out of range: \00" -@.str10878 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16631: index out of range: \00" -@.str10879 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16632: index out of range: \00" -@.str10880 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16633: index out of range: \00" -@.str10881 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16633: index out of range: \00" -@.str10882 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16633: index out of range: \00" -@.str10883 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16634: index out of range: \00" -@.str10884 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16634: index out of range: \00" -@.str10885 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16639: index out of range: \00" -@.str10886 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16640: index out of range: \00" -@.str10887 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16640: index out of range: \00" -@.str10888 = private unnamed_addr constant [2 x i8] c"?\00" -@.str10889 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10890 = private unnamed_addr constant [6 x i8] c"float\00" -@.str10891 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10892 = private unnamed_addr constant [5 x i8] c"long\00" -@.str10893 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10894 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10895 = private unnamed_addr constant [5 x i8] c"byte\00" -@.str10896 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str10897 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16659: index out of range: \00" -@.str10898 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16659: index out of range: \00" -@.str10899 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16660: index out of range: \00" -@.str10900 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16660: index out of range: \00" -@.str10901 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16666: index out of range: \00" -@.str10902 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16670: index out of range: \00" -@.str10903 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16692: index out of range: \00" -@.str10904 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16693: index out of range: \00" -@.str10905 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16694: index out of range: \00" -@.str10906 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16694: index out of range: \00" -@.str10907 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16695: index out of range: \00" -@.str10908 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16696: index out of range: \00" -@.str10909 = private unnamed_addr constant [6 x i8] c"state\00" -@.str10910 = private unnamed_addr constant [3 x i8] c": \00" -@.str10911 = private unnamed_addr constant [16 x i8] c" holds part of \00" -@.str10912 = private unnamed_addr constant [55 x i8] c", which is module-level and immutable all the way down\00" -@.str10913 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16700: index out of range: \00" -@.str10914 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16701: index out of range: \00" -@.str10915 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16704: index out of range: \00" -@.str10916 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16704: index out of range: \00" -@.str10917 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16704: index out of range: \00" -@.str10918 = private unnamed_addr constant [6 x i8] c"state\00" -@.str10919 = private unnamed_addr constant [3 x i8] c": \00" -@.str10920 = private unnamed_addr constant [28 x i8] c" holds part of a read-only \00" -@.str10921 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16705: index out of range: \00" -@.str10922 = private unnamed_addr constant [25 x i8] c"; take the state as mut \00" -@.str10923 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16705: index out of range: \00" -@.str10924 = private unnamed_addr constant [14 x i8] c" to change it\00" -@.str10925 = private unnamed_addr constant [6 x i8] c"state\00" -@.str10926 = private unnamed_addr constant [3 x i8] c": \00" -@.str10927 = private unnamed_addr constant [21 x i8] c" is read-only here (\00" -@.str10928 = private unnamed_addr constant [3 x i8] c": \00" -@.str10929 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16709: index out of range: \00" -@.str10930 = private unnamed_addr constant [15 x i8] c"); take it as \00" -@.str10931 = private unnamed_addr constant [7 x i8] c": mut \00" -@.str10932 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16709: index out of range: \00" -@.str10933 = private unnamed_addr constant [14 x i8] c" to change it\00" -@.str10934 = private unnamed_addr constant [11 x i8] c"the state \00" -@.str10935 = private unnamed_addr constant [6 x i8] c"state\00" -@.str10936 = private unnamed_addr constant [3 x i8] c": \00" -@.str10937 = private unnamed_addr constant [109 x i8] c" is module-level and immutable all the way down; changing data belongs in a state, passed as a mut parameter\00" -@.str10938 = private unnamed_addr constant [6 x i8] c"state\00" -@.str10939 = private unnamed_addr constant [7 x i8] c": mut \00" -@.str10940 = private unnamed_addr constant [38 x i8] c" - mut is for a state parameter, and \00" -@.str10941 = private unnamed_addr constant [16 x i8] c" is not a state\00" -@.str10942 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16735: index out of range: \00" -@.str10943 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16738: index out of range: \00" -@.str10944 = private unnamed_addr constant [6 x i8] c"state\00" -@.str10945 = private unnamed_addr constant [10 x i8] c" changes \00" -@.str10946 = private unnamed_addr constant [3 x i8] c" (\00" -@.str10947 = private unnamed_addr constant [7 x i8] c": mut \00" -@.str10948 = private unnamed_addr constant [8 x i8] c"), and \00" -@.str10949 = private unnamed_addr constant [19 x i8] c" is read-only here\00" -@.str10950 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16756: index out of range: \00" -@.str10951 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16761: index out of range: \00" -@.str10952 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16761: index out of range: \00" -@.str10953 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16803: index out of range: \00" -@.str10954 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16804: index out of range: \00" -@.str10955 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16807: index out of range: \00" -@.str10956 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16808: index out of range: \00" -@.str10957 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16813: index out of range: \00" -@.str10958 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16814: index out of range: \00" -@.str10959 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16814: index out of range: \00" -@.str10960 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16827: index out of range: \00" -@.str10961 = private unnamed_addr constant [2 x i8] c"?\00" -@.str10962 = private unnamed_addr constant [4 x i8] c"int\00" -@.str10963 = private unnamed_addr constant [5 x i8] c"long\00" -@.str10964 = private unnamed_addr constant [5 x i8] c"byte\00" -@.str10965 = private unnamed_addr constant [4 x i8] c"i64\00" -@.str10966 = private unnamed_addr constant [3 x i8] c"u8\00" -@.str10967 = private unnamed_addr constant [4 x i8] c"an \00" -@.str10968 = private unnamed_addr constant [3 x i8] c"a \00" -@.str10969 = private unnamed_addr constant [6 x i8] c"float\00" -@.str10970 = private unnamed_addr constant [7 x i8] c"double\00" -@.str10971 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10972 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10973 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10974 = private unnamed_addr constant [5 x i8] c"null\00" -@.str10975 = private unnamed_addr constant [2 x i8] c"-\00" -@.str10976 = private unnamed_addr constant [7 x i8] c"number\00" -@.str10977 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10978 = private unnamed_addr constant [7 x i8] c"string\00" -@.str10979 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10980 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10981 = private unnamed_addr constant [10 x i8] c"reference\00" -@.str10982 = private unnamed_addr constant [5 x i8] c"void\00" -@.str10983 = private unnamed_addr constant [5 x i8] c"null\00" -@.str10984 = private unnamed_addr constant [5 x i8] c"null\00" -@.str10985 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10986 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10987 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str10988 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10989 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10990 = private unnamed_addr constant [10 x i8] c"narrowing\00" -@.str10991 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str10992 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10993 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10994 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str10995 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10996 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str10997 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str10998 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str10999 = private unnamed_addr constant [6 x i8] c"bytes\00" -@.str11000 = private unnamed_addr constant [14 x i8] c"slice-pointer\00" -@.str11001 = private unnamed_addr constant [6 x i8] c"bytes\00" -@.str11002 = private unnamed_addr constant [14 x i8] c"pointer-slice\00" -@.str11003 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11004 = private unnamed_addr constant [14 x i8] c"slice-pointer\00" -@.str11005 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11006 = private unnamed_addr constant [14 x i8] c"pointer-slice\00" -@.str11007 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11008 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11009 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11010 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str11011 = private unnamed_addr constant [7 x i8] c"record\00" -@.str11012 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11013 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str11014 = private unnamed_addr constant [10 x i8] c"[]pointer\00" -@.str11015 = private unnamed_addr constant [10 x i8] c"[]pointer\00" -@.str11016 = private unnamed_addr constant [6 x i8] c"slice\00" -@.str11017 = private unnamed_addr constant [3 x i8] c"fn\00" -@.str11018 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11019 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str11020 = private unnamed_addr constant [5 x i8] c"null\00" -@.str11021 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11022 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16957: index out of range: \00" -@.str11023 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16958: index out of range: \00" -@.str11024 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16971: index out of range: \00" -@.str11025 = private unnamed_addr constant [19 x i8] c"LUDIC_CHECK_REPORT\00" -@.str11026 = private unnamed_addr constant [1 x i8] c"\00" -@.str11027 = private unnamed_addr constant [2 x i8] c":\00" -@.str11028 = private unnamed_addr constant [10 x i8] c": error: \00" -@.str11029 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11030 = private unnamed_addr constant [7 x i8] c"check[\00" -@.str11031 = private unnamed_addr constant [4 x i8] c"]: \00" -@.str11032 = private unnamed_addr constant [2 x i8] c":\00" -@.str11033 = private unnamed_addr constant [3 x i8] c": \00" -@.str11034 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11035 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11036 = private unnamed_addr constant [5 x i8] c"byte\00" -@.str11037 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11038 = private unnamed_addr constant [8 x i8] c"literal\00" -@.str11039 = private unnamed_addr constant [8 x i8] c" wants \00" -@.str11040 = private unnamed_addr constant [6 x i8] c" and \00" -@.str11041 = private unnamed_addr constant [32 x i8] c" does not fit one; it is a long\00" -@.str11042 = private unnamed_addr constant [14 x i8] c"slice-pointer\00" -@.str11043 = private unnamed_addr constant [30 x i8] c" wants a pointer and this is \00" -@.str11044 = private unnamed_addr constant [55 x i8] c": take the slice itself, or data_of(xs) in unsafe code\00" -@.str11045 = private unnamed_addr constant [14 x i8] c"pointer-slice\00" -@.str11046 = private unnamed_addr constant [8 x i8] c" wants \00" -@.str11047 = private unnamed_addr constant [93 x i8] c" and this is a pointer: a slice is made with words(n), floats(n) or new, not from an address\00" -@.str11048 = private unnamed_addr constant [8 x i8] c" wants \00" -@.str11049 = private unnamed_addr constant [14 x i8] c" and this is \00" -@.str11050 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17021: index out of range: \00" -@.str11051 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17021: index out of range: \00" -@.str11052 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17034: index out of range: \00" -@.str11053 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11054 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11055 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11056 = private unnamed_addr constant [6 x i8] c"float\00" -@.str11057 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11058 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11059 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11060 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11061 = private unnamed_addr constant [5 x i8] c"null\00" -@.str11062 = private unnamed_addr constant [6 x i8] c"fnref\00" -@.str11063 = private unnamed_addr constant [4 x i8] c"fn \00" -@.str11064 = private unnamed_addr constant [22 x i8] c": no function called \00" -@.str11065 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11066 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11067 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11068 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17089: index out of range: \00" -@.str11069 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17090: index out of range: \00" -@.str11070 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11071 = private unnamed_addr constant [5 x i8] c"port\00" -@.str11072 = private unnamed_addr constant [42 x i8] c" is a port: it is filled once with 'bind \00" -@.str11073 = private unnamed_addr constant [63 x i8] c" { ... }' where the program is put together, not made with new\00" -@.str11074 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17126: index out of range: \00" -@.str11075 = private unnamed_addr constant [7 x i8] c"field \00" -@.str11076 = private unnamed_addr constant [5 x i8] c" of \00" -@.str11077 = private unnamed_addr constant [6 x i8] c"field\00" -@.str11078 = private unnamed_addr constant [15 x i8] c" has no field \00" -@.str11079 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11080 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17144: index out of range: \00" -@.str11081 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17144: index out of range: \00" -@.str11082 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17145: index out of range: \00" -@.str11083 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17148: index out of range: \00" -@.str11084 = private unnamed_addr constant [19 x i8] c"an element of a []\00" -@.str11085 = private unnamed_addr constant [5 x i8] c"null\00" -@.str11086 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11087 = private unnamed_addr constant [3 x i8] c"[]\00" -@.str11088 = private unnamed_addr constant [4 x i8] c"not\00" -@.str11089 = private unnamed_addr constant [2 x i8] c"!\00" -@.str11090 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11091 = private unnamed_addr constant [2 x i8] c"-\00" -@.str11092 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11093 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11094 = private unnamed_addr constant [12 x i8] c"- on a bool\00" -@.str11095 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11096 = private unnamed_addr constant [2 x i8] c"?\00" +@.str10817 = private unnamed_addr constant [9 x i8] c")\0A ret \00" +@.str10818 = private unnamed_addr constant [5 x i8] c" %r\0A\00" +@.str10819 = private unnamed_addr constant [8 x i8] c"define \00" +@.str10820 = private unnamed_addr constant [2 x i8] c" \00" +@.str10821 = private unnamed_addr constant [2 x i8] c"(\00" +@.str10822 = private unnamed_addr constant [12 x i8] c") {\0Aentry:\0A\00" +@.str10823 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str10824 = private unnamed_addr constant [5 x i8] c"@fn_\00" +@.str10825 = private unnamed_addr constant [3 x i8] c"a \00" +@.str10826 = private unnamed_addr constant [8 x i8] c" takes \00" +@.str10827 = private unnamed_addr constant [35 x i8] c" argument(s), and this call gives \00" +@.str10828 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16483: index out of range: \00" +@.str10829 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16484: index out of range: \00" +@.str10830 = private unnamed_addr constant [3 x i8] c" \00" +@.str10831 = private unnamed_addr constant [2 x i8] c"0\00" +@.str10832 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10833 = private unnamed_addr constant [4 x i8] c" = \00" +@.str10834 = private unnamed_addr constant [6 x i8] c"call \00" +@.str10835 = private unnamed_addr constant [2 x i8] c" \00" +@.str10836 = private unnamed_addr constant [2 x i8] c"(\00" +@.str10837 = private unnamed_addr constant [3 x i8] c", \00" +@.str10838 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16499: index out of range: \00" +@.str10839 = private unnamed_addr constant [2 x i8] c" \00" +@.str10840 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16499: index out of range: \00" +@.str10841 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10842 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16511: index out of range: \00" +@.str10843 = private unnamed_addr constant [3 x i8] c"a \00" +@.str10844 = private unnamed_addr constant [40 x i8] c" is not a function and cannot be called\00" +@.str10845 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10846 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16538: index out of range: \00" +@.str10847 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str10848 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16538: index out of range: \00" +@.str10849 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str10850 = private unnamed_addr constant [4 x i8] c"fn \00" +@.str10851 = private unnamed_addr constant [69 x i8] c": a worker function takes (i: int, ctx: pointer) and returns nothing\00" +@.str10852 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16543: index out of range: \00" +@.str10853 = private unnamed_addr constant [4 x i8] c"fn \00" +@.str10854 = private unnamed_addr constant [55 x i8] c": a worker runs on every core at once, so it may read \00" +@.str10855 = private unnamed_addr constant [21 x i8] c" but not change it (\00" +@.str10856 = private unnamed_addr constant [7 x i8] c": mut \00" +@.str10857 = private unnamed_addr constant [58 x i8] c"); write results into ctx, shared counts through Sync.add\00" +@.str10858 = private unnamed_addr constant [17 x i8] c"LUDIC_VIS_REPORT\00" +@.str10859 = private unnamed_addr constant [7 x i8] c"state$\00" +@.str10860 = private unnamed_addr constant [15 x i8] c"ludic_reduce__\00" +@.str10861 = private unnamed_addr constant [1 x i8] c"\00" +@.str10862 = private unnamed_addr constant [7 x i8] c"uses: \00" +@.str10863 = private unnamed_addr constant [2 x i8] c":\00" +@.str10864 = private unnamed_addr constant [3 x i8] c": \00" +@.str10865 = private unnamed_addr constant [2 x i8] c".\00" +@.str10866 = private unnamed_addr constant [12 x i8] c" used from \00" +@.str10867 = private unnamed_addr constant [10 x i8] c" (module \00" +@.str10868 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str10869 = private unnamed_addr constant [7 x i8] c" uses \00" +@.str10870 = private unnamed_addr constant [2 x i8] c".\00" +@.str10871 = private unnamed_addr constant [3 x i8] c" (\00" +@.str10872 = private unnamed_addr constant [2 x i8] c":\00" +@.str10873 = private unnamed_addr constant [14 x i8] c"): add 'uses \00" +@.str10874 = private unnamed_addr constant [6 x i8] c"' to \00" +@.str10875 = private unnamed_addr constant [42 x i8] c"'s module line, or take it through a port\00" +@.str10876 = private unnamed_addr constant [1 x i8] c"\00" +@.str10877 = private unnamed_addr constant [6 x i8] c"vis: \00" +@.str10878 = private unnamed_addr constant [2 x i8] c":\00" +@.str10879 = private unnamed_addr constant [3 x i8] c": \00" +@.str10880 = private unnamed_addr constant [2 x i8] c".\00" +@.str10881 = private unnamed_addr constant [12 x i8] c" used from \00" +@.str10882 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str10883 = private unnamed_addr constant [23 x i8] c" is private to module \00" +@.str10884 = private unnamed_addr constant [42 x i8] c"; mark it 'export' where it is declared (\00" +@.str10885 = private unnamed_addr constant [2 x i8] c")\00" +@.str10886 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16643: index out of range: \00" +@.str10887 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16643: index out of range: \00" +@.str10888 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16644: index out of range: \00" +@.str10889 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16645: index out of range: \00" +@.str10890 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16646: index out of range: \00" +@.str10891 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16647: index out of range: \00" +@.str10892 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16647: index out of range: \00" +@.str10893 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16647: index out of range: \00" +@.str10894 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16648: index out of range: \00" +@.str10895 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16648: index out of range: \00" +@.str10896 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16653: index out of range: \00" +@.str10897 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16654: index out of range: \00" +@.str10898 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16654: index out of range: \00" +@.str10899 = private unnamed_addr constant [2 x i8] c"?\00" +@.str10900 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10901 = private unnamed_addr constant [6 x i8] c"float\00" +@.str10902 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10903 = private unnamed_addr constant [5 x i8] c"long\00" +@.str10904 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10905 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10906 = private unnamed_addr constant [5 x i8] c"byte\00" +@.str10907 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str10908 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16673: index out of range: \00" +@.str10909 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16673: index out of range: \00" +@.str10910 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16674: index out of range: \00" +@.str10911 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16674: index out of range: \00" +@.str10912 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16680: index out of range: \00" +@.str10913 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16684: index out of range: \00" +@.str10914 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16706: index out of range: \00" +@.str10915 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16707: index out of range: \00" +@.str10916 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16708: index out of range: \00" +@.str10917 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16708: index out of range: \00" +@.str10918 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16709: index out of range: \00" +@.str10919 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16710: index out of range: \00" +@.str10920 = private unnamed_addr constant [6 x i8] c"state\00" +@.str10921 = private unnamed_addr constant [3 x i8] c": \00" +@.str10922 = private unnamed_addr constant [16 x i8] c" holds part of \00" +@.str10923 = private unnamed_addr constant [55 x i8] c", which is module-level and immutable all the way down\00" +@.str10924 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16714: index out of range: \00" +@.str10925 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16715: index out of range: \00" +@.str10926 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16718: index out of range: \00" +@.str10927 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16718: index out of range: \00" +@.str10928 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16718: index out of range: \00" +@.str10929 = private unnamed_addr constant [6 x i8] c"state\00" +@.str10930 = private unnamed_addr constant [3 x i8] c": \00" +@.str10931 = private unnamed_addr constant [28 x i8] c" holds part of a read-only \00" +@.str10932 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16719: index out of range: \00" +@.str10933 = private unnamed_addr constant [25 x i8] c"; take the state as mut \00" +@.str10934 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16719: index out of range: \00" +@.str10935 = private unnamed_addr constant [14 x i8] c" to change it\00" +@.str10936 = private unnamed_addr constant [6 x i8] c"state\00" +@.str10937 = private unnamed_addr constant [3 x i8] c": \00" +@.str10938 = private unnamed_addr constant [21 x i8] c" is read-only here (\00" +@.str10939 = private unnamed_addr constant [3 x i8] c": \00" +@.str10940 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16723: index out of range: \00" +@.str10941 = private unnamed_addr constant [15 x i8] c"); take it as \00" +@.str10942 = private unnamed_addr constant [7 x i8] c": mut \00" +@.str10943 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16723: index out of range: \00" +@.str10944 = private unnamed_addr constant [14 x i8] c" to change it\00" +@.str10945 = private unnamed_addr constant [11 x i8] c"the state \00" +@.str10946 = private unnamed_addr constant [6 x i8] c"state\00" +@.str10947 = private unnamed_addr constant [3 x i8] c": \00" +@.str10948 = private unnamed_addr constant [109 x i8] c" is module-level and immutable all the way down; changing data belongs in a state, passed as a mut parameter\00" +@.str10949 = private unnamed_addr constant [6 x i8] c"state\00" +@.str10950 = private unnamed_addr constant [7 x i8] c": mut \00" +@.str10951 = private unnamed_addr constant [38 x i8] c" - mut is for a state parameter, and \00" +@.str10952 = private unnamed_addr constant [16 x i8] c" is not a state\00" +@.str10953 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16749: index out of range: \00" +@.str10954 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16752: index out of range: \00" +@.str10955 = private unnamed_addr constant [6 x i8] c"state\00" +@.str10956 = private unnamed_addr constant [10 x i8] c" changes \00" +@.str10957 = private unnamed_addr constant [3 x i8] c" (\00" +@.str10958 = private unnamed_addr constant [7 x i8] c": mut \00" +@.str10959 = private unnamed_addr constant [8 x i8] c"), and \00" +@.str10960 = private unnamed_addr constant [19 x i8] c" is read-only here\00" +@.str10961 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16770: index out of range: \00" +@.str10962 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16775: index out of range: \00" +@.str10963 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16775: index out of range: \00" +@.str10964 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16817: index out of range: \00" +@.str10965 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16818: index out of range: \00" +@.str10966 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16821: index out of range: \00" +@.str10967 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16822: index out of range: \00" +@.str10968 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16827: index out of range: \00" +@.str10969 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16828: index out of range: \00" +@.str10970 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16828: index out of range: \00" +@.str10971 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16841: index out of range: \00" +@.str10972 = private unnamed_addr constant [2 x i8] c"?\00" +@.str10973 = private unnamed_addr constant [4 x i8] c"int\00" +@.str10974 = private unnamed_addr constant [5 x i8] c"long\00" +@.str10975 = private unnamed_addr constant [5 x i8] c"byte\00" +@.str10976 = private unnamed_addr constant [4 x i8] c"i64\00" +@.str10977 = private unnamed_addr constant [3 x i8] c"u8\00" +@.str10978 = private unnamed_addr constant [4 x i8] c"an \00" +@.str10979 = private unnamed_addr constant [3 x i8] c"a \00" +@.str10980 = private unnamed_addr constant [6 x i8] c"float\00" +@.str10981 = private unnamed_addr constant [7 x i8] c"double\00" +@.str10982 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str10983 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10984 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10985 = private unnamed_addr constant [5 x i8] c"null\00" +@.str10986 = private unnamed_addr constant [2 x i8] c"-\00" +@.str10987 = private unnamed_addr constant [7 x i8] c"number\00" +@.str10988 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10989 = private unnamed_addr constant [7 x i8] c"string\00" +@.str10990 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10991 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10992 = private unnamed_addr constant [10 x i8] c"reference\00" +@.str10993 = private unnamed_addr constant [5 x i8] c"void\00" +@.str10994 = private unnamed_addr constant [5 x i8] c"null\00" +@.str10995 = private unnamed_addr constant [5 x i8] c"null\00" +@.str10996 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10997 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10998 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str10999 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11000 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11001 = private unnamed_addr constant [10 x i8] c"narrowing\00" +@.str11002 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11003 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11004 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11005 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11006 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11007 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11008 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11009 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11010 = private unnamed_addr constant [6 x i8] c"bytes\00" +@.str11011 = private unnamed_addr constant [14 x i8] c"slice-pointer\00" +@.str11012 = private unnamed_addr constant [6 x i8] c"bytes\00" +@.str11013 = private unnamed_addr constant [14 x i8] c"pointer-slice\00" +@.str11014 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11015 = private unnamed_addr constant [14 x i8] c"slice-pointer\00" +@.str11016 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11017 = private unnamed_addr constant [14 x i8] c"pointer-slice\00" +@.str11018 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11019 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11020 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11021 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11022 = private unnamed_addr constant [7 x i8] c"record\00" +@.str11023 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11024 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11025 = private unnamed_addr constant [10 x i8] c"[]pointer\00" +@.str11026 = private unnamed_addr constant [10 x i8] c"[]pointer\00" +@.str11027 = private unnamed_addr constant [6 x i8] c"slice\00" +@.str11028 = private unnamed_addr constant [3 x i8] c"fn\00" +@.str11029 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11030 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11031 = private unnamed_addr constant [5 x i8] c"null\00" +@.str11032 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11033 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16971: index out of range: \00" +@.str11034 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16972: index out of range: \00" +@.str11035 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:16985: index out of range: \00" +@.str11036 = private unnamed_addr constant [19 x i8] c"LUDIC_CHECK_REPORT\00" +@.str11037 = private unnamed_addr constant [1 x i8] c"\00" +@.str11038 = private unnamed_addr constant [2 x i8] c":\00" +@.str11039 = private unnamed_addr constant [10 x i8] c": error: \00" +@.str11040 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11041 = private unnamed_addr constant [7 x i8] c"check[\00" +@.str11042 = private unnamed_addr constant [4 x i8] c"]: \00" +@.str11043 = private unnamed_addr constant [2 x i8] c":\00" +@.str11044 = private unnamed_addr constant [3 x i8] c": \00" +@.str11045 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11046 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11047 = private unnamed_addr constant [5 x i8] c"byte\00" +@.str11048 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11049 = private unnamed_addr constant [8 x i8] c"literal\00" +@.str11050 = private unnamed_addr constant [8 x i8] c" wants \00" +@.str11051 = private unnamed_addr constant [6 x i8] c" and \00" +@.str11052 = private unnamed_addr constant [32 x i8] c" does not fit one; it is a long\00" +@.str11053 = private unnamed_addr constant [14 x i8] c"slice-pointer\00" +@.str11054 = private unnamed_addr constant [30 x i8] c" wants a pointer and this is \00" +@.str11055 = private unnamed_addr constant [55 x i8] c": take the slice itself, or data_of(xs) in unsafe code\00" +@.str11056 = private unnamed_addr constant [14 x i8] c"pointer-slice\00" +@.str11057 = private unnamed_addr constant [8 x i8] c" wants \00" +@.str11058 = private unnamed_addr constant [93 x i8] c" and this is a pointer: a slice is made with words(n), floats(n) or new, not from an address\00" +@.str11059 = private unnamed_addr constant [8 x i8] c" wants \00" +@.str11060 = private unnamed_addr constant [14 x i8] c" and this is \00" +@.str11061 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17035: index out of range: \00" +@.str11062 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17035: index out of range: \00" +@.str11063 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17048: index out of range: \00" +@.str11064 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11065 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11066 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11067 = private unnamed_addr constant [6 x i8] c"float\00" +@.str11068 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11069 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11070 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11071 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11072 = private unnamed_addr constant [5 x i8] c"null\00" +@.str11073 = private unnamed_addr constant [6 x i8] c"fnref\00" +@.str11074 = private unnamed_addr constant [4 x i8] c"fn \00" +@.str11075 = private unnamed_addr constant [22 x i8] c": no function called \00" +@.str11076 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11077 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11078 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11079 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17103: index out of range: \00" +@.str11080 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17104: index out of range: \00" +@.str11081 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11082 = private unnamed_addr constant [5 x i8] c"port\00" +@.str11083 = private unnamed_addr constant [42 x i8] c" is a port: it is filled once with 'bind \00" +@.str11084 = private unnamed_addr constant [63 x i8] c" { ... }' where the program is put together, not made with new\00" +@.str11085 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17140: index out of range: \00" +@.str11086 = private unnamed_addr constant [7 x i8] c"field \00" +@.str11087 = private unnamed_addr constant [5 x i8] c" of \00" +@.str11088 = private unnamed_addr constant [6 x i8] c"field\00" +@.str11089 = private unnamed_addr constant [15 x i8] c" has no field \00" +@.str11090 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11091 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17158: index out of range: \00" +@.str11092 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17158: index out of range: \00" +@.str11093 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17159: index out of range: \00" +@.str11094 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17162: index out of range: \00" +@.str11095 = private unnamed_addr constant [19 x i8] c"an element of a []\00" +@.str11096 = private unnamed_addr constant [5 x i8] c"null\00" @.str11097 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11098 = private unnamed_addr constant [10 x i8] c"indexing \00" -@.str11099 = private unnamed_addr constant [6 x i8] c"index\00" -@.str11100 = private unnamed_addr constant [35 x i8] c"an index wants an int and this is \00" -@.str11101 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11102 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11103 = private unnamed_addr constant [6 x i8] c"words\00" -@.str11104 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11105 = private unnamed_addr constant [7 x i8] c"floats\00" -@.str11106 = private unnamed_addr constant [6 x i8] c"float\00" -@.str11107 = private unnamed_addr constant [8 x i8] c"doubles\00" -@.str11108 = private unnamed_addr constant [7 x i8] c"double\00" -@.str11109 = private unnamed_addr constant [7 x i8] c"fixeds\00" -@.str11110 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11111 = private unnamed_addr constant [9 x i8] c"pointers\00" -@.str11112 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11113 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11114 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11115 = private unnamed_addr constant [5 x i8] c"cond\00" -@.str11116 = private unnamed_addr constant [38 x i8] c"a condition wants a bool and this is \00" -@.str11117 = private unnamed_addr constant [4 x i8] c"and\00" -@.str11118 = private unnamed_addr constant [3 x i8] c"or\00" -@.str11119 = private unnamed_addr constant [3 x i8] c"&&\00" -@.str11120 = private unnamed_addr constant [3 x i8] c"||\00" -@.str11121 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11122 = private unnamed_addr constant [3 x i8] c"==\00" -@.str11123 = private unnamed_addr constant [3 x i8] c"!=\00" -@.str11124 = private unnamed_addr constant [2 x i8] c"<\00" -@.str11125 = private unnamed_addr constant [2 x i8] c">\00" -@.str11126 = private unnamed_addr constant [3 x i8] c"<=\00" -@.str11127 = private unnamed_addr constant [3 x i8] c">=\00" -@.str11128 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11129 = private unnamed_addr constant [2 x i8] c"+\00" -@.str11130 = private unnamed_addr constant [2 x i8] c"-\00" -@.str11131 = private unnamed_addr constant [2 x i8] c"*\00" -@.str11132 = private unnamed_addr constant [2 x i8] c"/\00" -@.str11133 = private unnamed_addr constant [2 x i8] c"%\00" -@.str11134 = private unnamed_addr constant [2 x i8] c"&\00" -@.str11135 = private unnamed_addr constant [2 x i8] c"|\00" -@.str11136 = private unnamed_addr constant [2 x i8] c"^\00" -@.str11137 = private unnamed_addr constant [3 x i8] c"<<\00" -@.str11138 = private unnamed_addr constant [3 x i8] c">>\00" -@.str11139 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11140 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11141 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11142 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11143 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11144 = private unnamed_addr constant [5 x i8] c"null\00" -@.str11145 = private unnamed_addr constant [5 x i8] c"null\00" -@.str11146 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11147 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11148 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11149 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11150 = private unnamed_addr constant [8 x i8] c"compare\00" -@.str11151 = private unnamed_addr constant [10 x i8] c" between \00" -@.str11152 = private unnamed_addr constant [6 x i8] c" and \00" -@.str11153 = private unnamed_addr constant [8 x i8] c"compare\00" -@.str11154 = private unnamed_addr constant [10 x i8] c" between \00" -@.str11155 = private unnamed_addr constant [6 x i8] c" and \00" -@.str11156 = private unnamed_addr constant [19 x i8] c" can never be true\00" -@.str11157 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11158 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11159 = private unnamed_addr constant [22 x i8] c" between a fixed and \00" -@.str11160 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11161 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11098 = private unnamed_addr constant [3 x i8] c"[]\00" +@.str11099 = private unnamed_addr constant [4 x i8] c"not\00" +@.str11100 = private unnamed_addr constant [2 x i8] c"!\00" +@.str11101 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11102 = private unnamed_addr constant [2 x i8] c"-\00" +@.str11103 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11104 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11105 = private unnamed_addr constant [12 x i8] c"- on a bool\00" +@.str11106 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11107 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11108 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11109 = private unnamed_addr constant [10 x i8] c"indexing \00" +@.str11110 = private unnamed_addr constant [6 x i8] c"index\00" +@.str11111 = private unnamed_addr constant [35 x i8] c"an index wants an int and this is \00" +@.str11112 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11113 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11114 = private unnamed_addr constant [6 x i8] c"words\00" +@.str11115 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11116 = private unnamed_addr constant [7 x i8] c"floats\00" +@.str11117 = private unnamed_addr constant [6 x i8] c"float\00" +@.str11118 = private unnamed_addr constant [8 x i8] c"doubles\00" +@.str11119 = private unnamed_addr constant [7 x i8] c"double\00" +@.str11120 = private unnamed_addr constant [7 x i8] c"fixeds\00" +@.str11121 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11122 = private unnamed_addr constant [9 x i8] c"pointers\00" +@.str11123 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11124 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11125 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11126 = private unnamed_addr constant [5 x i8] c"cond\00" +@.str11127 = private unnamed_addr constant [38 x i8] c"a condition wants a bool and this is \00" +@.str11128 = private unnamed_addr constant [4 x i8] c"and\00" +@.str11129 = private unnamed_addr constant [3 x i8] c"or\00" +@.str11130 = private unnamed_addr constant [3 x i8] c"&&\00" +@.str11131 = private unnamed_addr constant [3 x i8] c"||\00" +@.str11132 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11133 = private unnamed_addr constant [3 x i8] c"==\00" +@.str11134 = private unnamed_addr constant [3 x i8] c"!=\00" +@.str11135 = private unnamed_addr constant [2 x i8] c"<\00" +@.str11136 = private unnamed_addr constant [2 x i8] c">\00" +@.str11137 = private unnamed_addr constant [3 x i8] c"<=\00" +@.str11138 = private unnamed_addr constant [3 x i8] c">=\00" +@.str11139 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11140 = private unnamed_addr constant [2 x i8] c"+\00" +@.str11141 = private unnamed_addr constant [2 x i8] c"-\00" +@.str11142 = private unnamed_addr constant [2 x i8] c"*\00" +@.str11143 = private unnamed_addr constant [2 x i8] c"/\00" +@.str11144 = private unnamed_addr constant [2 x i8] c"%\00" +@.str11145 = private unnamed_addr constant [2 x i8] c"&\00" +@.str11146 = private unnamed_addr constant [2 x i8] c"|\00" +@.str11147 = private unnamed_addr constant [2 x i8] c"^\00" +@.str11148 = private unnamed_addr constant [3 x i8] c"<<\00" +@.str11149 = private unnamed_addr constant [3 x i8] c">>\00" +@.str11150 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11151 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11152 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11153 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11154 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11155 = private unnamed_addr constant [5 x i8] c"null\00" +@.str11156 = private unnamed_addr constant [5 x i8] c"null\00" +@.str11157 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11158 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11159 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11160 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11161 = private unnamed_addr constant [8 x i8] c"compare\00" @.str11162 = private unnamed_addr constant [10 x i8] c" between \00" -@.str11163 = private unnamed_addr constant [13 x i8] c" and a fixed\00" -@.str11164 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11165 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11166 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11167 = private unnamed_addr constant [2 x i8] c"+\00" -@.str11168 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11169 = private unnamed_addr constant [5 x i8] c"text\00" -@.str11170 = private unnamed_addr constant [5 x i8] c" of \00" -@.str11171 = private unnamed_addr constant [6 x i8] c" and \00" -@.str11172 = private unnamed_addr constant [54 x i8] c": text joins text only - write string(x) for a number\00" -@.str11173 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11174 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11175 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11176 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11177 = private unnamed_addr constant [5 x i8] c"bool\00" -@.str11178 = private unnamed_addr constant [11 x i8] c" on a bool\00" -@.str11179 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11180 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11163 = private unnamed_addr constant [6 x i8] c" and \00" +@.str11164 = private unnamed_addr constant [8 x i8] c"compare\00" +@.str11165 = private unnamed_addr constant [10 x i8] c" between \00" +@.str11166 = private unnamed_addr constant [6 x i8] c" and \00" +@.str11167 = private unnamed_addr constant [19 x i8] c" can never be true\00" +@.str11168 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11169 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11170 = private unnamed_addr constant [22 x i8] c" between a fixed and \00" +@.str11171 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11172 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11173 = private unnamed_addr constant [10 x i8] c" between \00" +@.str11174 = private unnamed_addr constant [13 x i8] c" and a fixed\00" +@.str11175 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11176 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11177 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11178 = private unnamed_addr constant [2 x i8] c"+\00" +@.str11179 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11180 = private unnamed_addr constant [5 x i8] c"text\00" @.str11181 = private unnamed_addr constant [5 x i8] c" of \00" @.str11182 = private unnamed_addr constant [6 x i8] c" and \00" -@.str11183 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11184 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11185 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11186 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11187 = private unnamed_addr constant [17 x i8] c" of a fixed and \00" -@.str11188 = private unnamed_addr constant [40 x i8] c": convert one with float(x) or fixed(x)\00" -@.str11189 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11190 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11191 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11192 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11193 = private unnamed_addr constant [5 x i8] c" of \00" -@.str11194 = private unnamed_addr constant [52 x i8] c" and a fixed: convert one with float(x) or fixed(x)\00" -@.str11195 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11196 = private unnamed_addr constant [7 x i8] c"double\00" -@.str11197 = private unnamed_addr constant [7 x i8] c"double\00" -@.str11198 = private unnamed_addr constant [7 x i8] c"double\00" -@.str11199 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11200 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11183 = private unnamed_addr constant [54 x i8] c": text joins text only - write string(x) for a number\00" +@.str11184 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11185 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11186 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11187 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11188 = private unnamed_addr constant [5 x i8] c"bool\00" +@.str11189 = private unnamed_addr constant [11 x i8] c" on a bool\00" +@.str11190 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11191 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11192 = private unnamed_addr constant [5 x i8] c" of \00" +@.str11193 = private unnamed_addr constant [6 x i8] c" and \00" +@.str11194 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11195 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11196 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11197 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11198 = private unnamed_addr constant [17 x i8] c" of a fixed and \00" +@.str11199 = private unnamed_addr constant [40 x i8] c": convert one with float(x) or fixed(x)\00" +@.str11200 = private unnamed_addr constant [2 x i8] c"?\00" @.str11201 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11202 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11203 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11204 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11205 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11206 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17287: index out of range: \00" -@.str11207 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17288: index out of range: \00" -@.str11208 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17289: index out of range: \00" -@.str11209 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11210 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17310: index out of range: \00" -@.str11211 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11212 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17326: index out of range: \00" -@.str11213 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17333: index out of range: \00" -@.str11214 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17336: index out of range: \00" -@.str11215 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17339: index out of range: \00" -@.str11216 = private unnamed_addr constant [10 x i8] c"argument \00" -@.str11217 = private unnamed_addr constant [5 x i8] c" of \00" -@.str11218 = private unnamed_addr constant [6 x i8] c"arity\00" -@.str11219 = private unnamed_addr constant [19 x i8] c" has no parameter \00" -@.str11220 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17345: index out of range: \00" -@.str11221 = private unnamed_addr constant [6 x i8] c"arity\00" -@.str11222 = private unnamed_addr constant [14 x i8] c"this call to \00" -@.str11223 = private unnamed_addr constant [13 x i8] c" leaves out \00" -@.str11224 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17345: index out of range: \00" -@.str11225 = private unnamed_addr constant [23 x i8] c", which has no default\00" -@.str11226 = private unnamed_addr constant [6 x i8] c"arity\00" -@.str11227 = private unnamed_addr constant [14 x i8] c"this call to \00" -@.str11228 = private unnamed_addr constant [13 x i8] c" leaves out \00" -@.str11229 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17350: index out of range: \00" -@.str11230 = private unnamed_addr constant [23 x i8] c", which has no default\00" -@.str11231 = private unnamed_addr constant [6 x i8] c"arity\00" -@.str11232 = private unnamed_addr constant [8 x i8] c" takes \00" -@.str11233 = private unnamed_addr constant [34 x i8] c" argument(s) and this call gives \00" -@.str11234 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17354: index out of range: \00" -@.str11235 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17355: index out of range: \00" -@.str11236 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17356: index out of range: \00" -@.str11237 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17356: index out of range: \00" -@.str11238 = private unnamed_addr constant [10 x i8] c"argument \00" -@.str11239 = private unnamed_addr constant [5 x i8] c" of \00" -@.str11240 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17363: index out of range: \00" -@.str11241 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17371: index out of range: \00" -@.str11242 = private unnamed_addr constant [7 x i8] c"string\00" -@.str11243 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11244 = private unnamed_addr constant [6 x i8] c"float\00" -@.str11245 = private unnamed_addr constant [6 x i8] c"fixed\00" -@.str11246 = private unnamed_addr constant [5 x i8] c"long\00" -@.str11247 = private unnamed_addr constant [7 x i8] c"double\00" -@.str11248 = private unnamed_addr constant [7 x i8] c"as_int\00" -@.str11249 = private unnamed_addr constant [9 x i8] c"as_fixed\00" -@.str11250 = private unnamed_addr constant [4 x i8] c"len\00" -@.str11251 = private unnamed_addr constant [11 x i8] c"float_bits\00" -@.str11252 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11253 = private unnamed_addr constant [5 x i8] c"view\00" -@.str11254 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17390: index out of range: \00" -@.str11255 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11256 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17391: index out of range: \00" -@.str11257 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17391: index out of range: \00" -@.str11258 = private unnamed_addr constant [20 x i8] c"the start of a view\00" -@.str11259 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11260 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17392: index out of range: \00" -@.str11261 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17392: index out of range: \00" -@.str11262 = private unnamed_addr constant [21 x i8] c"the length of a view\00" -@.str11263 = private unnamed_addr constant [5 x i8] c"kind\00" -@.str11264 = private unnamed_addr constant [33 x i8] c"view takes a slice, and this is \00" -@.str11265 = private unnamed_addr constant [6 x i8] c"bytes\00" -@.str11266 = private unnamed_addr constant [7 x i8] c"offset\00" -@.str11267 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11268 = private unnamed_addr constant [8 x i8] c"data_of\00" -@.str11269 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11270 = private unnamed_addr constant [6 x i8] c"words\00" -@.str11271 = private unnamed_addr constant [6 x i8] c"[]int\00" -@.str11272 = private unnamed_addr constant [7 x i8] c"buffer\00" -@.str11273 = private unnamed_addr constant [7 x i8] c"[]byte\00" -@.str11274 = private unnamed_addr constant [7 x i8] c"fixeds\00" -@.str11275 = private unnamed_addr constant [9 x i8] c"pointers\00" -@.str11276 = private unnamed_addr constant [3 x i8] c"[]\00" -@.str11277 = private unnamed_addr constant [7 x i8] c"floats\00" -@.str11278 = private unnamed_addr constant [8 x i8] c"doubles\00" -@.str11279 = private unnamed_addr constant [3 x i8] c"[]\00" -@.str11280 = private unnamed_addr constant [16 x i8] c"float_from_bits\00" -@.str11281 = private unnamed_addr constant [6 x i8] c"float\00" -@.str11282 = private unnamed_addr constant [6 x i8] c"print\00" -@.str11283 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11284 = private unnamed_addr constant [5 x i8] c"push\00" -@.str11285 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17429: index out of range: \00" -@.str11286 = private unnamed_addr constant [5 x i8] c"push\00" -@.str11287 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17430: index out of range: \00" -@.str11288 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17431: index out of range: \00" -@.str11289 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17432: index out of range: \00" -@.str11290 = private unnamed_addr constant [11 x i8] c"push onto \00" -@.str11291 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11292 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17442: index out of range: \00" -@.str11293 = private unnamed_addr constant [16 x i8] c"runtime/native/\00" -@.str11294 = private unnamed_addr constant [16 x i8] c"runtime/native/\00" -@.str11295 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17446: index out of range: \00" -@.str11296 = private unnamed_addr constant [7 x i8] c"shadow\00" -@.str11297 = private unnamed_addr constant [18 x i8] c" is the engine's \00" -@.str11298 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17450: index out of range: \00" -@.str11299 = private unnamed_addr constant [2 x i8] c".\00" -@.str11300 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17450: index out of range: \00" -@.str11301 = private unnamed_addr constant [29 x i8] c", which this program calls (\00" -@.str11302 = private unnamed_addr constant [2 x i8] c":\00" -@.str11303 = private unnamed_addr constant [78 x i8] c"), and every such call would reach this function instead; choose another name\00" -@.str11304 = private unnamed_addr constant [7 x i8] c"Memory\00" -@.str11305 = private unnamed_addr constant [8 x i8] c"Memory.\00" -@.str11306 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17462: index out of range: \00" -@.str11307 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17465: index out of range: \00" -@.str11308 = private unnamed_addr constant [2 x i8] c".\00" -@.str11309 = private unnamed_addr constant [15 x i8] c", a C function\00" -@.str11310 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17469: index out of range: \00" -@.str11311 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17469: index out of range: \00" -@.str11312 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17470: index out of range: \00" -@.str11313 = private unnamed_addr constant [2 x i8] c".\00" -@.str11314 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11315 = private unnamed_addr constant [2 x i8] c"_\00" -@.str11316 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11317 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11318 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11319 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17501: index out of range: \00" -@.str11320 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17501: index out of range: \00" -@.str11321 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11322 = private unnamed_addr constant [3 x i8] c"()\00" -@.str11323 = private unnamed_addr constant [16 x i8] c"the C function \00" -@.str11324 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11325 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17542: index out of range: \00" -@.str11326 = private unnamed_addr constant [7 x i8] c"field \00" -@.str11327 = private unnamed_addr constant [5 x i8] c" of \00" -@.str11328 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17566: index out of range: \00" +@.str11202 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11203 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11204 = private unnamed_addr constant [5 x i8] c" of \00" +@.str11205 = private unnamed_addr constant [52 x i8] c" and a fixed: convert one with float(x) or fixed(x)\00" +@.str11206 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11207 = private unnamed_addr constant [7 x i8] c"double\00" +@.str11208 = private unnamed_addr constant [7 x i8] c"double\00" +@.str11209 = private unnamed_addr constant [7 x i8] c"double\00" +@.str11210 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11211 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11212 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11213 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11214 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11215 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11216 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11217 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17301: index out of range: \00" +@.str11218 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17302: index out of range: \00" +@.str11219 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17303: index out of range: \00" +@.str11220 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11221 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17324: index out of range: \00" +@.str11222 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11223 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17340: index out of range: \00" +@.str11224 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17347: index out of range: \00" +@.str11225 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17350: index out of range: \00" +@.str11226 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17353: index out of range: \00" +@.str11227 = private unnamed_addr constant [10 x i8] c"argument \00" +@.str11228 = private unnamed_addr constant [5 x i8] c" of \00" +@.str11229 = private unnamed_addr constant [6 x i8] c"arity\00" +@.str11230 = private unnamed_addr constant [19 x i8] c" has no parameter \00" +@.str11231 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17359: index out of range: \00" +@.str11232 = private unnamed_addr constant [6 x i8] c"arity\00" +@.str11233 = private unnamed_addr constant [14 x i8] c"this call to \00" +@.str11234 = private unnamed_addr constant [13 x i8] c" leaves out \00" +@.str11235 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17359: index out of range: \00" +@.str11236 = private unnamed_addr constant [23 x i8] c", which has no default\00" +@.str11237 = private unnamed_addr constant [6 x i8] c"arity\00" +@.str11238 = private unnamed_addr constant [14 x i8] c"this call to \00" +@.str11239 = private unnamed_addr constant [13 x i8] c" leaves out \00" +@.str11240 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17364: index out of range: \00" +@.str11241 = private unnamed_addr constant [23 x i8] c", which has no default\00" +@.str11242 = private unnamed_addr constant [6 x i8] c"arity\00" +@.str11243 = private unnamed_addr constant [8 x i8] c" takes \00" +@.str11244 = private unnamed_addr constant [34 x i8] c" argument(s) and this call gives \00" +@.str11245 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17368: index out of range: \00" +@.str11246 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17369: index out of range: \00" +@.str11247 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17370: index out of range: \00" +@.str11248 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17370: index out of range: \00" +@.str11249 = private unnamed_addr constant [10 x i8] c"argument \00" +@.str11250 = private unnamed_addr constant [5 x i8] c" of \00" +@.str11251 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17377: index out of range: \00" +@.str11252 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17385: index out of range: \00" +@.str11253 = private unnamed_addr constant [7 x i8] c"string\00" +@.str11254 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11255 = private unnamed_addr constant [6 x i8] c"float\00" +@.str11256 = private unnamed_addr constant [6 x i8] c"fixed\00" +@.str11257 = private unnamed_addr constant [5 x i8] c"long\00" +@.str11258 = private unnamed_addr constant [7 x i8] c"double\00" +@.str11259 = private unnamed_addr constant [7 x i8] c"as_int\00" +@.str11260 = private unnamed_addr constant [9 x i8] c"as_fixed\00" +@.str11261 = private unnamed_addr constant [4 x i8] c"len\00" +@.str11262 = private unnamed_addr constant [11 x i8] c"float_bits\00" +@.str11263 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11264 = private unnamed_addr constant [5 x i8] c"view\00" +@.str11265 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17404: index out of range: \00" +@.str11266 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11267 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17405: index out of range: \00" +@.str11268 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17405: index out of range: \00" +@.str11269 = private unnamed_addr constant [20 x i8] c"the start of a view\00" +@.str11270 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11271 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17406: index out of range: \00" +@.str11272 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17406: index out of range: \00" +@.str11273 = private unnamed_addr constant [21 x i8] c"the length of a view\00" +@.str11274 = private unnamed_addr constant [5 x i8] c"kind\00" +@.str11275 = private unnamed_addr constant [33 x i8] c"view takes a slice, and this is \00" +@.str11276 = private unnamed_addr constant [6 x i8] c"bytes\00" +@.str11277 = private unnamed_addr constant [7 x i8] c"offset\00" +@.str11278 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11279 = private unnamed_addr constant [8 x i8] c"data_of\00" +@.str11280 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11281 = private unnamed_addr constant [6 x i8] c"words\00" +@.str11282 = private unnamed_addr constant [6 x i8] c"[]int\00" +@.str11283 = private unnamed_addr constant [7 x i8] c"buffer\00" +@.str11284 = private unnamed_addr constant [7 x i8] c"[]byte\00" +@.str11285 = private unnamed_addr constant [7 x i8] c"fixeds\00" +@.str11286 = private unnamed_addr constant [9 x i8] c"pointers\00" +@.str11287 = private unnamed_addr constant [3 x i8] c"[]\00" +@.str11288 = private unnamed_addr constant [7 x i8] c"floats\00" +@.str11289 = private unnamed_addr constant [8 x i8] c"doubles\00" +@.str11290 = private unnamed_addr constant [3 x i8] c"[]\00" +@.str11291 = private unnamed_addr constant [16 x i8] c"float_from_bits\00" +@.str11292 = private unnamed_addr constant [6 x i8] c"float\00" +@.str11293 = private unnamed_addr constant [6 x i8] c"print\00" +@.str11294 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11295 = private unnamed_addr constant [5 x i8] c"push\00" +@.str11296 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17443: index out of range: \00" +@.str11297 = private unnamed_addr constant [5 x i8] c"push\00" +@.str11298 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17444: index out of range: \00" +@.str11299 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17445: index out of range: \00" +@.str11300 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17446: index out of range: \00" +@.str11301 = private unnamed_addr constant [11 x i8] c"push onto \00" +@.str11302 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11303 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17456: index out of range: \00" +@.str11304 = private unnamed_addr constant [16 x i8] c"runtime/native/\00" +@.str11305 = private unnamed_addr constant [16 x i8] c"runtime/native/\00" +@.str11306 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17460: index out of range: \00" +@.str11307 = private unnamed_addr constant [7 x i8] c"shadow\00" +@.str11308 = private unnamed_addr constant [18 x i8] c" is the engine's \00" +@.str11309 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17464: index out of range: \00" +@.str11310 = private unnamed_addr constant [2 x i8] c".\00" +@.str11311 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17464: index out of range: \00" +@.str11312 = private unnamed_addr constant [29 x i8] c", which this program calls (\00" +@.str11313 = private unnamed_addr constant [2 x i8] c":\00" +@.str11314 = private unnamed_addr constant [78 x i8] c"), and every such call would reach this function instead; choose another name\00" +@.str11315 = private unnamed_addr constant [7 x i8] c"Memory\00" +@.str11316 = private unnamed_addr constant [8 x i8] c"Memory.\00" +@.str11317 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17476: index out of range: \00" +@.str11318 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17479: index out of range: \00" +@.str11319 = private unnamed_addr constant [2 x i8] c".\00" +@.str11320 = private unnamed_addr constant [15 x i8] c", a C function\00" +@.str11321 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17483: index out of range: \00" +@.str11322 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17483: index out of range: \00" +@.str11323 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17484: index out of range: \00" +@.str11324 = private unnamed_addr constant [2 x i8] c".\00" +@.str11325 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11326 = private unnamed_addr constant [2 x i8] c"_\00" +@.str11327 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11328 = private unnamed_addr constant [2 x i8] c"?\00" @.str11329 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11330 = private unnamed_addr constant [6 x i8] c"state\00" -@.str11331 = private unnamed_addr constant [6 x i8] c"state\00" -@.str11332 = private unnamed_addr constant [34 x i8] c"an entry point takes states, and \00" -@.str11333 = private unnamed_addr constant [3 x i8] c": \00" -@.str11334 = private unnamed_addr constant [12 x i8] c" is not one\00" -@.str11335 = private unnamed_addr constant [16 x i8] c"this assignment\00" -@.str11336 = private unnamed_addr constant [2 x i8] c"=\00" -@.str11337 = private unnamed_addr constant [16 x i8] c"this assignment\00" -@.str11338 = private unnamed_addr constant [7 x i8] c"field \00" -@.str11339 = private unnamed_addr constant [2 x i8] c"=\00" -@.str11340 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17617: index out of range: \00" -@.str11341 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17621: index out of range: \00" -@.str11342 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17626: index out of range: \00" -@.str11343 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17626: index out of range: \00" -@.str11344 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11345 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11346 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11347 = private unnamed_addr constant [11 x i8] c"the result\00" -@.str11348 = private unnamed_addr constant [19 x i8] c"a machine's become\00" -@.str11349 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11350 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17694: index out of range: \00" -@.str11351 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17695: index out of range: \00" -@.str11352 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17698: index out of range: \00" -@.str11353 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17712: index out of range: \00" -@.str11354 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17712: index out of range: \00" -@.str11355 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17712: index out of range: \00" -@.str11356 = private unnamed_addr constant [6 x i8] c"arity\00" -@.str11357 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17713: index out of range: \00" -@.str11358 = private unnamed_addr constant [23 x i8] c" names two parameters \00" -@.str11359 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17713: index out of range: \00" -@.str11360 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17724: index out of range: \00" -@.str11361 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17726: index out of range: \00" -@.str11362 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11363 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11364 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17750: index out of range: \00" -@.str11365 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17750: index out of range: \00" -@.str11366 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11367 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17765: index out of range: \00" -@.str11368 = private unnamed_addr constant [7 x i8] c"shadow\00" -@.str11369 = private unnamed_addr constant [102 x i8] c" is a built-in of the compiler, and a call to it would never reach this function; choose another name\00" -@.str11370 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17771: index out of range: \00" -@.str11371 = private unnamed_addr constant [7 x i8] c"shadow\00" -@.str11372 = private unnamed_addr constant [44 x i8] c" is also a function of the engine runtime (\00" -@.str11373 = private unnamed_addr constant [23 x i8] c"); choose another name\00" -@.str11374 = private unnamed_addr constant [1 x i8] c"\00" -@.str11375 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17781: index out of range: \00" -@.str11376 = private unnamed_addr constant [1 x i8] c"\00" -@.str11377 = private unnamed_addr constant [7 x i8] c"shadow\00" -@.str11378 = private unnamed_addr constant [19 x i8] c" is the runtime's \00" -@.str11379 = private unnamed_addr constant [3 x i8] c" (\00" -@.str11380 = private unnamed_addr constant [33 x i8] c"); choose another name for this \00" -@.str11381 = private unnamed_addr constant [5 x i8] c"enum\00" -@.str11382 = private unnamed_addr constant [6 x i8] c"state\00" -@.str11383 = private unnamed_addr constant [9 x i8] c"property\00" -@.str11384 = private unnamed_addr constant [7 x i8] c"record\00" -@.str11385 = private unnamed_addr constant [6 x i8] c"event\00" -@.str11386 = private unnamed_addr constant [1 x i8] c"\00" -@.str11387 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17802: index out of range: \00" -@.str11388 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17803: index out of range: \00" -@.str11389 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17819: index out of range: \00" -@.str11390 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17824: index out of range: \00" -@.str11391 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17836: index out of range: \00" -@.str11392 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17864: index out of range: \00" -@.str11393 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17876: index out of range: \00" -@.str11394 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17877: index out of range: \00" -@.str11395 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17884: index out of range: \00" -@.str11396 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17885: index out of range: \00" -@.str11397 = private unnamed_addr constant [16 x i8] c" type error(s)\0A\00" -@.str11398 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17915: index out of range: \00" -@.str11399 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17915: index out of range: \00" -@.str11400 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17926: index out of range: \00" -@.str11401 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17941: index out of range: \00" -@.str11402 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17950: index out of range: \00" -@.str11403 = private unnamed_addr constant [3 x i8] c"[]\00" -@.str11404 = private unnamed_addr constant [4 x i8] c"fn(\00" -@.str11405 = private unnamed_addr constant [2 x i8] c",\00" -@.str11406 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17958: index out of range: \00" -@.str11407 = private unnamed_addr constant [4 x i8] c")->\00" -@.str11408 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17964: index out of range: \00" -@.str11409 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17965: index out of range: \00" -@.str11410 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17969: index out of range: \00" -@.str11411 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17972: index out of range: \00" -@.str11412 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17996: index out of range: \00" -@.str11413 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18004: index out of range: \00" -@.str11414 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18005: index out of range: \00" -@.str11415 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18007: index out of range: \00" -@.str11416 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18011: index out of range: \00" -@.str11417 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18012: index out of range: \00" -@.str11418 = private unnamed_addr constant [8 x i8] c"generic\00" -@.str11419 = private unnamed_addr constant [8 x i8] c" takes \00" -@.str11420 = private unnamed_addr constant [23 x i8] c" type argument(s) and \00" -@.str11421 = private unnamed_addr constant [8 x i8] c" gives \00" -@.str11422 = private unnamed_addr constant [5 x i8] c"null\00" -@.str11423 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18027: index out of range: \00" -@.str11424 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18027: index out of range: \00" -@.str11425 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18039: index out of range: \00" -@.str11426 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18039: index out of range: \00" -@.str11427 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18047: index out of range: \00" -@.str11428 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18047: index out of range: \00" -@.str11429 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18048: index out of range: \00" -@.str11430 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18049: index out of range: \00" -@.str11431 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18052: index out of range: \00" -@.str11432 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18052: index out of range: \00" -@.str11433 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11434 = private unnamed_addr constant [3 x i8] c"[]\00" -@.str11435 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18063: index out of range: \00" -@.str11436 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18064: index out of range: \00" -@.str11437 = private unnamed_addr constant [2 x i8] c"<\00" -@.str11438 = private unnamed_addr constant [3 x i8] c", \00" -@.str11439 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18068: index out of range: \00" -@.str11440 = private unnamed_addr constant [2 x i8] c">\00" -@.str11441 = private unnamed_addr constant [2 x i8] c"$\00" -@.str11442 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18083: index out of range: \00" -@.str11443 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18109: index out of range: \00" -@.str11444 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18112: index out of range: \00" -@.str11445 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18114: index out of range: \00" -@.str11446 = private unnamed_addr constant [6 x i8] c"arity\00" -@.str11447 = private unnamed_addr constant [8 x i8] c" takes \00" -@.str11448 = private unnamed_addr constant [34 x i8] c" argument(s) and this call gives \00" -@.str11449 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11450 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18140: index out of range: \00" -@.str11451 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18140: index out of range: \00" -@.str11452 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18142: index out of range: \00" -@.str11453 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18142: index out of range: \00" -@.str11454 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18142: index out of range: \00" -@.str11455 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18148: index out of range: \00" -@.str11456 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18148: index out of range: \00" -@.str11457 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18148: index out of range: \00" -@.str11458 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18148: index out of range: \00" -@.str11459 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18153: index out of range: \00" -@.str11460 = private unnamed_addr constant [8 x i8] c"generic\00" -@.str11461 = private unnamed_addr constant [18 x i8] c"cannot tell what \00" +@.str11330 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17515: index out of range: \00" +@.str11331 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17515: index out of range: \00" +@.str11332 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11333 = private unnamed_addr constant [3 x i8] c"()\00" +@.str11334 = private unnamed_addr constant [16 x i8] c"the C function \00" +@.str11335 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11336 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17556: index out of range: \00" +@.str11337 = private unnamed_addr constant [7 x i8] c"field \00" +@.str11338 = private unnamed_addr constant [5 x i8] c" of \00" +@.str11339 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17580: index out of range: \00" +@.str11340 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11341 = private unnamed_addr constant [6 x i8] c"state\00" +@.str11342 = private unnamed_addr constant [6 x i8] c"state\00" +@.str11343 = private unnamed_addr constant [34 x i8] c"an entry point takes states, and \00" +@.str11344 = private unnamed_addr constant [3 x i8] c": \00" +@.str11345 = private unnamed_addr constant [12 x i8] c" is not one\00" +@.str11346 = private unnamed_addr constant [16 x i8] c"this assignment\00" +@.str11347 = private unnamed_addr constant [2 x i8] c"=\00" +@.str11348 = private unnamed_addr constant [16 x i8] c"this assignment\00" +@.str11349 = private unnamed_addr constant [7 x i8] c"field \00" +@.str11350 = private unnamed_addr constant [2 x i8] c"=\00" +@.str11351 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17631: index out of range: \00" +@.str11352 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17635: index out of range: \00" +@.str11353 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17640: index out of range: \00" +@.str11354 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17640: index out of range: \00" +@.str11355 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11356 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11357 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11358 = private unnamed_addr constant [11 x i8] c"the result\00" +@.str11359 = private unnamed_addr constant [19 x i8] c"a machine's become\00" +@.str11360 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11361 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17708: index out of range: \00" +@.str11362 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17709: index out of range: \00" +@.str11363 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17712: index out of range: \00" +@.str11364 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17726: index out of range: \00" +@.str11365 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17726: index out of range: \00" +@.str11366 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17726: index out of range: \00" +@.str11367 = private unnamed_addr constant [6 x i8] c"arity\00" +@.str11368 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17727: index out of range: \00" +@.str11369 = private unnamed_addr constant [23 x i8] c" names two parameters \00" +@.str11370 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17727: index out of range: \00" +@.str11371 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17738: index out of range: \00" +@.str11372 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17740: index out of range: \00" +@.str11373 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11374 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11375 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17764: index out of range: \00" +@.str11376 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17764: index out of range: \00" +@.str11377 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11378 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17779: index out of range: \00" +@.str11379 = private unnamed_addr constant [7 x i8] c"shadow\00" +@.str11380 = private unnamed_addr constant [102 x i8] c" is a built-in of the compiler, and a call to it would never reach this function; choose another name\00" +@.str11381 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17785: index out of range: \00" +@.str11382 = private unnamed_addr constant [7 x i8] c"shadow\00" +@.str11383 = private unnamed_addr constant [44 x i8] c" is also a function of the engine runtime (\00" +@.str11384 = private unnamed_addr constant [23 x i8] c"); choose another name\00" +@.str11385 = private unnamed_addr constant [1 x i8] c"\00" +@.str11386 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17795: index out of range: \00" +@.str11387 = private unnamed_addr constant [1 x i8] c"\00" +@.str11388 = private unnamed_addr constant [7 x i8] c"shadow\00" +@.str11389 = private unnamed_addr constant [19 x i8] c" is the runtime's \00" +@.str11390 = private unnamed_addr constant [3 x i8] c" (\00" +@.str11391 = private unnamed_addr constant [33 x i8] c"); choose another name for this \00" +@.str11392 = private unnamed_addr constant [5 x i8] c"enum\00" +@.str11393 = private unnamed_addr constant [6 x i8] c"state\00" +@.str11394 = private unnamed_addr constant [9 x i8] c"property\00" +@.str11395 = private unnamed_addr constant [7 x i8] c"record\00" +@.str11396 = private unnamed_addr constant [6 x i8] c"event\00" +@.str11397 = private unnamed_addr constant [1 x i8] c"\00" +@.str11398 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17816: index out of range: \00" +@.str11399 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17817: index out of range: \00" +@.str11400 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17833: index out of range: \00" +@.str11401 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17838: index out of range: \00" +@.str11402 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17850: index out of range: \00" +@.str11403 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17878: index out of range: \00" +@.str11404 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17890: index out of range: \00" +@.str11405 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17891: index out of range: \00" +@.str11406 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17898: index out of range: \00" +@.str11407 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17899: index out of range: \00" +@.str11408 = private unnamed_addr constant [16 x i8] c" type error(s)\0A\00" +@.str11409 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17929: index out of range: \00" +@.str11410 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17929: index out of range: \00" +@.str11411 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17940: index out of range: \00" +@.str11412 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17955: index out of range: \00" +@.str11413 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17964: index out of range: \00" +@.str11414 = private unnamed_addr constant [3 x i8] c"[]\00" +@.str11415 = private unnamed_addr constant [4 x i8] c"fn(\00" +@.str11416 = private unnamed_addr constant [2 x i8] c",\00" +@.str11417 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17972: index out of range: \00" +@.str11418 = private unnamed_addr constant [4 x i8] c")->\00" +@.str11419 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17978: index out of range: \00" +@.str11420 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17979: index out of range: \00" +@.str11421 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17983: index out of range: \00" +@.str11422 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:17986: index out of range: \00" +@.str11423 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18010: index out of range: \00" +@.str11424 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18018: index out of range: \00" +@.str11425 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18019: index out of range: \00" +@.str11426 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18021: index out of range: \00" +@.str11427 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18025: index out of range: \00" +@.str11428 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18026: index out of range: \00" +@.str11429 = private unnamed_addr constant [8 x i8] c"generic\00" +@.str11430 = private unnamed_addr constant [8 x i8] c" takes \00" +@.str11431 = private unnamed_addr constant [23 x i8] c" type argument(s) and \00" +@.str11432 = private unnamed_addr constant [8 x i8] c" gives \00" +@.str11433 = private unnamed_addr constant [5 x i8] c"null\00" +@.str11434 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18041: index out of range: \00" +@.str11435 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18041: index out of range: \00" +@.str11436 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18053: index out of range: \00" +@.str11437 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18053: index out of range: \00" +@.str11438 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18061: index out of range: \00" +@.str11439 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18061: index out of range: \00" +@.str11440 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18062: index out of range: \00" +@.str11441 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18063: index out of range: \00" +@.str11442 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18066: index out of range: \00" +@.str11443 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18066: index out of range: \00" +@.str11444 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11445 = private unnamed_addr constant [3 x i8] c"[]\00" +@.str11446 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18077: index out of range: \00" +@.str11447 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18078: index out of range: \00" +@.str11448 = private unnamed_addr constant [2 x i8] c"<\00" +@.str11449 = private unnamed_addr constant [3 x i8] c", \00" +@.str11450 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18082: index out of range: \00" +@.str11451 = private unnamed_addr constant [2 x i8] c">\00" +@.str11452 = private unnamed_addr constant [2 x i8] c"$\00" +@.str11453 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18097: index out of range: \00" +@.str11454 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18123: index out of range: \00" +@.str11455 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18126: index out of range: \00" +@.str11456 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18128: index out of range: \00" +@.str11457 = private unnamed_addr constant [6 x i8] c"arity\00" +@.str11458 = private unnamed_addr constant [8 x i8] c" takes \00" +@.str11459 = private unnamed_addr constant [34 x i8] c" argument(s) and this call gives \00" +@.str11460 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11461 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18154: index out of range: \00" @.str11462 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18154: index out of range: \00" -@.str11463 = private unnamed_addr constant [21 x i8] c" is in this call to \00" -@.str11464 = private unnamed_addr constant [88 x i8] c": pass it an argument that says, or write the call where its result has a declared type\00" -@.str11465 = private unnamed_addr constant [2 x i8] c"?\00" -@.str11466 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18166: index out of range: \00" -@.str11467 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18166: index out of range: \00" -@.str11468 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18166: index out of range: \00" -@.str11469 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18166: index out of range: \00" -@.str11470 = private unnamed_addr constant [10 x i8] c"argument \00" -@.str11471 = private unnamed_addr constant [5 x i8] c" of \00" -@.str11472 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18177: index out of range: \00" -@.str11473 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18182: index out of range: \00" -@.str11474 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18182: index out of range: \00" -@.str11475 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18182: index out of range: \00" -@.str11476 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18192: index out of range: \00" -@.str11477 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18196: index out of range: \00" -@.str11478 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18202: index out of range: \00" -@.str11479 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18225: index out of range: \00" -@.str11480 = private unnamed_addr constant [7 x i8] c"Vector\00" -@.str11481 = private unnamed_addr constant [6 x i8] c"IVec2\00" -@.str11482 = private unnamed_addr constant [5 x i8] c"Rect\00" -@.str11483 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18278: index out of range: \00" -@.str11484 = private unnamed_addr constant [5 x i8] c"type\00" -@.str11485 = private unnamed_addr constant [20 x i8] c": there is no type \00" -@.str11486 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18293: index out of range: \00" -@.str11487 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18297: index out of range: \00" -@.str11488 = private unnamed_addr constant [14 x i8] c"'s parameter \00" -@.str11489 = private unnamed_addr constant [10 x i8] c"'s result\00" -@.str11490 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18306: index out of range: \00" -@.str11491 = private unnamed_addr constant [2 x i8] c".\00" -@.str11492 = private unnamed_addr constant [8 x i8] c"pointer\00" -@.str11493 = private unnamed_addr constant [6 x i8] c"bytes\00" -@.str11494 = private unnamed_addr constant [6 x i8] c"bytes\00" -@.str11495 = private unnamed_addr constant [8 x i8] c"data_of\00" -@.str11496 = private unnamed_addr constant [5 x i8] c"free\00" -@.str11497 = private unnamed_addr constant [7 x i8] c"resize\00" -@.str11498 = private unnamed_addr constant [10 x i8] c"file_read\00" -@.str11499 = private unnamed_addr constant [11 x i8] c"file_write\00" -@.str11500 = private unnamed_addr constant [7 x i8] c"unsafe\00" -@.str11501 = private unnamed_addr constant [83 x i8] c" is raw memory: it belongs inside unsafe { }, and a game reaches it through an API\00" -@.str11502 = private unnamed_addr constant [13 x i8] c"unsafe-block\00" -@.str11503 = private unnamed_addr constant [95 x i8] c"unsafe is for the runtime and packages; this file may use it only when the build says --unsafe\00" -@.str11504 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18356: index out of range: \00" -@.str11505 = private unnamed_addr constant [9 x i8] c" store \00" -@.str11506 = private unnamed_addr constant [2 x i8] c" \00" -@.str11507 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11508 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11509 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11510 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11511 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18382: index out of range: \00" -@.str11512 = private unnamed_addr constant [29 x i8] c"cannot assign to immutable '\00" -@.str11513 = private unnamed_addr constant [41 x i8] c"' (declared with let; use var) \E2\80\94 line \00" -@.str11514 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18384: index out of range: \00" -@.str11515 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18384: index out of range: \00" -@.str11516 = private unnamed_addr constant [19 x i8] c"assign to unknown \00" -@.str11517 = private unnamed_addr constant [4 x i8] c"@g_\00" -@.str11518 = private unnamed_addr constant [22 x i8] c"bad assignment target\00" -@.str11519 = private unnamed_addr constant [2 x i8] c"=\00" -@.str11520 = private unnamed_addr constant [6 x i8] c"load \00" -@.str11521 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11522 = private unnamed_addr constant [3 x i8] c"i8\00" -@.str11523 = private unnamed_addr constant [11 x i8] c"trunc i32 \00" -@.str11524 = private unnamed_addr constant [7 x i8] c" to i8\00" -@.str11525 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str11526 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str11527 = private unnamed_addr constant [5 x i8] c"then\00" -@.str11528 = private unnamed_addr constant [5 x i8] c"else\00" -@.str11529 = private unnamed_addr constant [6 x i8] c"ifend\00" -@.str11530 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11531 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11532 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11533 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11534 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11535 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11536 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11537 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11538 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11539 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11540 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11541 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11542 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11543 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11544 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11545 = private unnamed_addr constant [6 x i8] c"wcond\00" -@.str11546 = private unnamed_addr constant [6 x i8] c"wbody\00" -@.str11547 = private unnamed_addr constant [5 x i8] c"wend\00" -@.str11548 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11549 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11550 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11551 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str11552 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str11553 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11554 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11555 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11556 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11557 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11558 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11559 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11560 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11561 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str11562 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str11563 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11564 = private unnamed_addr constant [6 x i8] c"fcond\00" -@.str11565 = private unnamed_addr constant [6 x i8] c"fbody\00" -@.str11566 = private unnamed_addr constant [6 x i8] c"fcont\00" -@.str11567 = private unnamed_addr constant [5 x i8] c"fend\00" -@.str11568 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11569 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11570 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11571 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11572 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" -@.str11573 = private unnamed_addr constant [3 x i8] c", \00" -@.str11574 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11575 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11576 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11577 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11578 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11463 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18156: index out of range: \00" +@.str11464 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18156: index out of range: \00" +@.str11465 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18156: index out of range: \00" +@.str11466 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18162: index out of range: \00" +@.str11467 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18162: index out of range: \00" +@.str11468 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18162: index out of range: \00" +@.str11469 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18162: index out of range: \00" +@.str11470 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18167: index out of range: \00" +@.str11471 = private unnamed_addr constant [8 x i8] c"generic\00" +@.str11472 = private unnamed_addr constant [18 x i8] c"cannot tell what \00" +@.str11473 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18168: index out of range: \00" +@.str11474 = private unnamed_addr constant [21 x i8] c" is in this call to \00" +@.str11475 = private unnamed_addr constant [88 x i8] c": pass it an argument that says, or write the call where its result has a declared type\00" +@.str11476 = private unnamed_addr constant [2 x i8] c"?\00" +@.str11477 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18180: index out of range: \00" +@.str11478 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18180: index out of range: \00" +@.str11479 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18180: index out of range: \00" +@.str11480 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18180: index out of range: \00" +@.str11481 = private unnamed_addr constant [10 x i8] c"argument \00" +@.str11482 = private unnamed_addr constant [5 x i8] c" of \00" +@.str11483 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18191: index out of range: \00" +@.str11484 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18196: index out of range: \00" +@.str11485 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18196: index out of range: \00" +@.str11486 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18196: index out of range: \00" +@.str11487 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18206: index out of range: \00" +@.str11488 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18210: index out of range: \00" +@.str11489 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18216: index out of range: \00" +@.str11490 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18239: index out of range: \00" +@.str11491 = private unnamed_addr constant [7 x i8] c"Vector\00" +@.str11492 = private unnamed_addr constant [6 x i8] c"IVec2\00" +@.str11493 = private unnamed_addr constant [5 x i8] c"Rect\00" +@.str11494 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18292: index out of range: \00" +@.str11495 = private unnamed_addr constant [5 x i8] c"type\00" +@.str11496 = private unnamed_addr constant [20 x i8] c": there is no type \00" +@.str11497 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18307: index out of range: \00" +@.str11498 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18311: index out of range: \00" +@.str11499 = private unnamed_addr constant [14 x i8] c"'s parameter \00" +@.str11500 = private unnamed_addr constant [10 x i8] c"'s result\00" +@.str11501 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18320: index out of range: \00" +@.str11502 = private unnamed_addr constant [2 x i8] c".\00" +@.str11503 = private unnamed_addr constant [8 x i8] c"pointer\00" +@.str11504 = private unnamed_addr constant [6 x i8] c"bytes\00" +@.str11505 = private unnamed_addr constant [6 x i8] c"bytes\00" +@.str11506 = private unnamed_addr constant [8 x i8] c"data_of\00" +@.str11507 = private unnamed_addr constant [5 x i8] c"free\00" +@.str11508 = private unnamed_addr constant [7 x i8] c"resize\00" +@.str11509 = private unnamed_addr constant [10 x i8] c"file_read\00" +@.str11510 = private unnamed_addr constant [11 x i8] c"file_write\00" +@.str11511 = private unnamed_addr constant [7 x i8] c"unsafe\00" +@.str11512 = private unnamed_addr constant [83 x i8] c" is raw memory: it belongs inside unsafe { }, and a game reaches it through an API\00" +@.str11513 = private unnamed_addr constant [13 x i8] c"unsafe-block\00" +@.str11514 = private unnamed_addr constant [95 x i8] c"unsafe is for the runtime and packages; this file may use it only when the build says --unsafe\00" +@.str11515 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18370: index out of range: \00" +@.str11516 = private unnamed_addr constant [9 x i8] c" store \00" +@.str11517 = private unnamed_addr constant [2 x i8] c" \00" +@.str11518 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11519 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11520 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11521 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11522 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18396: index out of range: \00" +@.str11523 = private unnamed_addr constant [29 x i8] c"cannot assign to immutable '\00" +@.str11524 = private unnamed_addr constant [41 x i8] c"' (declared with let; use var) \E2\80\94 line \00" +@.str11525 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18398: index out of range: \00" +@.str11526 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18398: index out of range: \00" +@.str11527 = private unnamed_addr constant [19 x i8] c"assign to unknown \00" +@.str11528 = private unnamed_addr constant [4 x i8] c"@g_\00" +@.str11529 = private unnamed_addr constant [22 x i8] c"bad assignment target\00" +@.str11530 = private unnamed_addr constant [2 x i8] c"=\00" +@.str11531 = private unnamed_addr constant [6 x i8] c"load \00" +@.str11532 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11533 = private unnamed_addr constant [3 x i8] c"i8\00" +@.str11534 = private unnamed_addr constant [11 x i8] c"trunc i32 \00" +@.str11535 = private unnamed_addr constant [7 x i8] c" to i8\00" +@.str11536 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str11537 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str11538 = private unnamed_addr constant [5 x i8] c"then\00" +@.str11539 = private unnamed_addr constant [5 x i8] c"else\00" +@.str11540 = private unnamed_addr constant [6 x i8] c"ifend\00" +@.str11541 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11542 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11543 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11544 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11545 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11546 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11547 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11548 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11549 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11550 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11551 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11552 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11553 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11554 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11555 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11556 = private unnamed_addr constant [6 x i8] c"wcond\00" +@.str11557 = private unnamed_addr constant [6 x i8] c"wbody\00" +@.str11558 = private unnamed_addr constant [5 x i8] c"wend\00" +@.str11559 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11560 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11561 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11562 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str11563 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str11564 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11565 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11566 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11567 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11568 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11569 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11570 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11571 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11572 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str11573 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str11574 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11575 = private unnamed_addr constant [6 x i8] c"fcond\00" +@.str11576 = private unnamed_addr constant [6 x i8] c"fbody\00" +@.str11577 = private unnamed_addr constant [6 x i8] c"fcont\00" +@.str11578 = private unnamed_addr constant [5 x i8] c"fend\00" @.str11579 = private unnamed_addr constant [13 x i8] c" br label %\00" @.str11580 = private unnamed_addr constant [2 x i8] c"\0A\00" @.str11581 = private unnamed_addr constant [3 x i8] c":\0A\00" @.str11582 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11583 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str11584 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str11585 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str11586 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11587 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11588 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11589 = private unnamed_addr constant [5 x i8] c"void\00" -@.str11590 = private unnamed_addr constant [54 x i8] c"a function that returns nothing cannot return a value\00" -@.str11591 = private unnamed_addr constant [8 x i8] c"%retval\00" -@.str11592 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11593 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11594 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18492: index out of range: \00" -@.str11595 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18509: index out of range: \00" -@.str11596 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18521: index out of range: \00" -@.str11597 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18521: index out of range: \00" -@.str11598 = private unnamed_addr constant [2 x i8] c"_\00" -@.str11599 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18531: index out of range: \00" -@.str11600 = private unnamed_addr constant [8 x i8] c"match: \00" -@.str11601 = private unnamed_addr constant [8 x i8] c" binds \00" -@.str11602 = private unnamed_addr constant [22 x i8] c" name(s) but carries \00" -@.str11603 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18537: index out of range: \00" -@.str11604 = private unnamed_addr constant [8 x i8] c"match: \00" -@.str11605 = private unnamed_addr constant [10 x i8] c" payload \00" -@.str11606 = private unnamed_addr constant [24 x i8] c" must be a binding name\00" -@.str11607 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18538: index out of range: \00" -@.str11608 = private unnamed_addr constant [3 x i8] c" \00" -@.str11609 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" -@.str11610 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str11611 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11612 = private unnamed_addr constant [6 x i8] c"load \00" -@.str11613 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11614 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18544: index out of range: \00" -@.str11615 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11616 = private unnamed_addr constant [5 x i8] c"mend\00" -@.str11617 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18560: index out of range: \00" -@.str11618 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11619 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18568: index out of range: \00" -@.str11620 = private unnamed_addr constant [8 x i8] c"match: \00" -@.str11621 = private unnamed_addr constant [27 x i8] c" is not a variant of enum \00" -@.str11622 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str11623 = private unnamed_addr constant [3 x i8] c", \00" -@.str11624 = private unnamed_addr constant [7 x i8] c"or i1 \00" -@.str11625 = private unnamed_addr constant [3 x i8] c", \00" -@.str11626 = private unnamed_addr constant [6 x i8] c"mbody\00" -@.str11627 = private unnamed_addr constant [5 x i8] c"marm\00" -@.str11628 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11629 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11630 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11631 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11632 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11633 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11634 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11635 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11636 = private unnamed_addr constant [10 x i8] c"match on \00" -@.str11637 = private unnamed_addr constant [29 x i8] c" is not exhaustive: variant \00" -@.str11638 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18596: index out of range: \00" -@.str11639 = private unnamed_addr constant [34 x i8] c" is unhandled (add it or a _ arm)\00" -@.str11640 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11641 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11642 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11643 = private unnamed_addr constant [5 x i8] c"mend\00" -@.str11644 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18613: index out of range: \00" -@.str11645 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11646 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18620: index out of range: \00" -@.str11647 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str11648 = private unnamed_addr constant [3 x i8] c", \00" -@.str11649 = private unnamed_addr constant [7 x i8] c"or i1 \00" -@.str11650 = private unnamed_addr constant [3 x i8] c", \00" -@.str11651 = private unnamed_addr constant [6 x i8] c"mbody\00" -@.str11652 = private unnamed_addr constant [5 x i8] c"marm\00" -@.str11653 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11654 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11655 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11656 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11657 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11658 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11659 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11660 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11661 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11662 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11663 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11664 = private unnamed_addr constant [21 x i8] c"emit: unknown event \00" -@.str11665 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18652: index out of range: \00" -@.str11666 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18655: index out of range: \00" -@.str11667 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18655: index out of range: \00" -@.str11668 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11669 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str11670 = private unnamed_addr constant [5 x i8] c"null\00" -@.str11671 = private unnamed_addr constant [3 x i8] c" \00" -@.str11672 = private unnamed_addr constant [53 x i8] c" = getelementptr inbounds i8, ptr @L_sendbuf, i32 0\0A\00" -@.str11673 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str11674 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11675 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11676 = private unnamed_addr constant [3 x i8] c" \00" -@.str11677 = private unnamed_addr constant [51 x i8] c" = getelementptr inbounds i8, ptr @L_sendbuf, i32 \00" -@.str11678 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11679 = private unnamed_addr constant [9 x i8] c" store \00" -@.str11680 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18674: index out of range: \00" -@.str11681 = private unnamed_addr constant [2 x i8] c" \00" -@.str11682 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18674: index out of range: \00" -@.str11683 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11684 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11685 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18675: index out of range: \00" -@.str11686 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11687 = private unnamed_addr constant [10 x i8] c"toclients\00" -@.str11688 = private unnamed_addr constant [3 x i8] c"-1\00" -@.str11689 = private unnamed_addr constant [9 x i8] c"net_send\00" -@.str11690 = private unnamed_addr constant [14 x i8] c" call void @\00" -@.str11691 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str11692 = private unnamed_addr constant [23 x i8] c", ptr @L_sendbuf, i32 \00" -@.str11693 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str11694 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11695 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11696 = private unnamed_addr constant [3 x i8] c", \00" -@.str11697 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18690: index out of range: \00" -@.str11698 = private unnamed_addr constant [2 x i8] c" \00" -@.str11699 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18690: index out of range: \00" -@.str11700 = private unnamed_addr constant [3 x i8] c" \00" -@.str11701 = private unnamed_addr constant [17 x i8] c" = call i32 @ev_\00" -@.str11702 = private unnamed_addr constant [2 x i8] c"(\00" -@.str11703 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str11704 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11705 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str11706 = private unnamed_addr constant [2 x i8] c"(\00" -@.str11707 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str11708 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11709 = private unnamed_addr constant [4 x i8] c"int\00" -@.str11710 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11711 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18725: index out of range: \00" -@.str11712 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11713 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11714 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18726: index out of range: \00" -@.str11715 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11716 = private unnamed_addr constant [44 x i8] c"cancel outside a cancellable event listener\00" -@.str11717 = private unnamed_addr constant [20 x i8] c" store i32 1, ptr \00" -@.str11718 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11719 = private unnamed_addr constant [22 x i8] c"cannot emit statement\00" -@.str11720 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18747: index out of range: \00" -@.str11721 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18747: index out of range: \00" -@.str11722 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18762: index out of range: \00" -@.str11723 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18771: index out of range: \00" -@.str11724 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18785: index out of range: \00" -@.str11725 = private unnamed_addr constant [9 x i8] c"Occluder\00" -@.str11726 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18794: index out of range: \00" -@.str11727 = private unnamed_addr constant [36 x i8] c"@L_running = internal global i32 1\0A\00" -@.str11728 = private unnamed_addr constant [32 x i8] c"@L_key = internal global i32 0\0A\00" -@.str11729 = private unnamed_addr constant [34 x i8] c"@L_frame = internal global i32 0\0A\00" -@.str11730 = private unnamed_addr constant [34 x i8] c"@L_scene = internal global i32 0\0A\00" -@.str11731 = private unnamed_addr constant [33 x i8] c"@L_entc = internal global i32 0\0A\00" -@.str11732 = private unnamed_addr constant [29 x i8] c"@L_alive = internal global [\00" -@.str11733 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" -@.str11734 = private unnamed_addr constant [28 x i8] c"@L_kind = internal global [\00" -@.str11735 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" -@.str11736 = private unnamed_addr constant [32 x i8] c"@L_freelist = internal global [\00" -@.str11737 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" -@.str11738 = private unnamed_addr constant [34 x i8] c"@L_freen = internal global i32 0\0A\00" -@.str11739 = private unnamed_addr constant [33 x i8] c"@L_role = internal global i32 1\0A\00" -@.str11740 = private unnamed_addr constant [36 x i8] c"@L_localid = internal global i32 0\0A\00" -@.str11741 = private unnamed_addr constant [33 x i8] c"@L_owner_arr = internal global [\00" -@.str11742 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" -@.str11743 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18826: index out of range: \00" -@.str11744 = private unnamed_addr constant [4 x i8] c"@S_\00" -@.str11745 = private unnamed_addr constant [21 x i8] c" = internal global [\00" -@.str11746 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str11747 = private unnamed_addr constant [19 x i8] c"] zeroinitializer\0A\00" -@.str11748 = private unnamed_addr constant [4 x i8] c"@H_\00" -@.str11749 = private unnamed_addr constant [21 x i8] c" = internal global [\00" -@.str11750 = private unnamed_addr constant [24 x i8] c" x i8] zeroinitializer\0A\00" -@.str11751 = private unnamed_addr constant [5 x i8] c"@ME_\00" -@.str11752 = private unnamed_addr constant [26 x i8] c" = internal global i32 1\0A\00" -@.str11753 = private unnamed_addr constant [5 x i8] c"@HE_\00" -@.str11754 = private unnamed_addr constant [26 x i8] c" = internal global i32 1\0A\00" -@.str11755 = private unnamed_addr constant [5 x i8] c"@LE_\00" -@.str11756 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18841: index out of range: \00" -@.str11757 = private unnamed_addr constant [26 x i8] c" = internal global i32 1\0A\00" -@.str11758 = private unnamed_addr constant [39 x i8] c"define void @L_reset(i32 %e) {\0Aentry:\0A\00" -@.str11759 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18850: index out of range: \00" -@.str11760 = private unnamed_addr constant [3 x i8] c"%h\00" -@.str11761 = private unnamed_addr constant [3 x i8] c" \00" -@.str11762 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11763 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str11764 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18852: index out of range: \00" -@.str11765 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %e\0A\00" -@.str11766 = private unnamed_addr constant [19 x i8] c" store i8 0, ptr \00" -@.str11767 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11768 = private unnamed_addr constant [32 x i8] c" %k = getelementptr inbounds [\00" -@.str11769 = private unnamed_addr constant [37 x i8] c" x i32], ptr @L_kind, i32 0, i32 %e\0A\00" -@.str11770 = private unnamed_addr constant [23 x i8] c" store i32 0, ptr %k\0A\00" -@.str11771 = private unnamed_addr constant [33 x i8] c" %ow = getelementptr inbounds [\00" -@.str11772 = private unnamed_addr constant [42 x i8] c" x i32], ptr @L_owner_arr, i32 0, i32 %e\0A\00" -@.str11773 = private unnamed_addr constant [25 x i8] c" store i32 -1, ptr %ow\0A\00" -@.str11774 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str11775 = private unnamed_addr constant [32 x i8] c"define i32 @L_alloc() {\0Aentry:\0A\00" -@.str11776 = private unnamed_addr constant [32 x i8] c" %fn = load i32, ptr @L_freen\0A\00" -@.str11777 = private unnamed_addr constant [30 x i8] c" %has = icmp sgt i32 %fn, 0\0A\00" -@.str11778 = private unnamed_addr constant [42 x i8] c" br i1 %has, label %reuse, label %fresh\0A\00" -@.str11779 = private unnamed_addr constant [8 x i8] c"reuse:\0A\00" -@.str11780 = private unnamed_addr constant [25 x i8] c" %fn1 = sub i32 %fn, 1\0A\00" -@.str11781 = private unnamed_addr constant [32 x i8] c" store i32 %fn1, ptr @L_freen\0A\00" -@.str11782 = private unnamed_addr constant [33 x i8] c" %fp = getelementptr inbounds [\00" -@.str11783 = private unnamed_addr constant [43 x i8] c" x i32], ptr @L_freelist, i32 0, i32 %fn1\0A\00" -@.str11784 = private unnamed_addr constant [27 x i8] c" %re = load i32, ptr %fp\0A\00" -@.str11785 = private unnamed_addr constant [18 x i8] c" br label %done\0A\00" -@.str11786 = private unnamed_addr constant [8 x i8] c"fresh:\0A\00" -@.str11787 = private unnamed_addr constant [31 x i8] c" %ec = load i32, ptr @L_entc\0A\00" -@.str11788 = private unnamed_addr constant [25 x i8] c" %ec1 = add i32 %ec, 1\0A\00" -@.str11789 = private unnamed_addr constant [31 x i8] c" store i32 %ec1, ptr @L_entc\0A\00" -@.str11790 = private unnamed_addr constant [18 x i8] c" br label %done\0A\00" -@.str11791 = private unnamed_addr constant [7 x i8] c"done:\0A\00" -@.str11792 = private unnamed_addr constant [49 x i8] c" %e = phi i32 [ %re, %reuse ], [ %ec, %fresh ]\0A\00" -@.str11793 = private unnamed_addr constant [30 x i8] c" call void @L_reset(i32 %e)\0A\00" -@.str11794 = private unnamed_addr constant [33 x i8] c" %ap = getelementptr inbounds [\00" -@.str11795 = private unnamed_addr constant [38 x i8] c" x i32], ptr @L_alive, i32 0, i32 %e\0A\00" -@.str11796 = private unnamed_addr constant [24 x i8] c" store i32 1, ptr %ap\0A\00" -@.str11797 = private unnamed_addr constant [17 x i8] c" ret i32 %e\0A}\0A\0A\00" -@.str11798 = private unnamed_addr constant [45 x i8] c"define void @L_free_entity(i32 %e) {\0Aentry:\0A\00" -@.str11799 = private unnamed_addr constant [33 x i8] c" %ap = getelementptr inbounds [\00" -@.str11800 = private unnamed_addr constant [38 x i8] c" x i32], ptr @L_alive, i32 0, i32 %e\0A\00" -@.str11801 = private unnamed_addr constant [24 x i8] c" store i32 0, ptr %ap\0A\00" -@.str11802 = private unnamed_addr constant [30 x i8] c" call void @L_reset(i32 %e)\0A\00" -@.str11803 = private unnamed_addr constant [32 x i8] c" %fn = load i32, ptr @L_freen\0A\00" -@.str11804 = private unnamed_addr constant [33 x i8] c" %fp = getelementptr inbounds [\00" -@.str11805 = private unnamed_addr constant [42 x i8] c" x i32], ptr @L_freelist, i32 0, i32 %fn\0A\00" -@.str11806 = private unnamed_addr constant [25 x i8] c" store i32 %e, ptr %fp\0A\00" -@.str11807 = private unnamed_addr constant [25 x i8] c" %fn1 = add i32 %fn, 1\0A\00" -@.str11808 = private unnamed_addr constant [32 x i8] c" store i32 %fn1, ptr @L_freen\0A\00" -@.str11809 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str11810 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18906: index out of range: \00" -@.str11811 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18906: index out of range: \00" -@.str11812 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str11813 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str11814 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11815 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18914: index out of range: \00" -@.str11816 = private unnamed_addr constant [6 x i8] c"qcond\00" -@.str11817 = private unnamed_addr constant [6 x i8] c"qbody\00" -@.str11818 = private unnamed_addr constant [6 x i8] c"qnext\00" -@.str11819 = private unnamed_addr constant [5 x i8] c"qend\00" -@.str11820 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11821 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11822 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11823 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11824 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_entc\00" -@.str11825 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" -@.str11826 = private unnamed_addr constant [3 x i8] c", \00" -@.str11827 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11828 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11829 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11830 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11831 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11832 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11833 = private unnamed_addr constant [3 x i8] c" \00" -@.str11834 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11835 = private unnamed_addr constant [35 x i8] c" x i32], ptr @L_alive, i32 0, i32 \00" -@.str11836 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11837 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11838 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str11839 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str11840 = private unnamed_addr constant [3 x i8] c"qa\00" -@.str11841 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11842 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11843 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11844 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11845 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11846 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18938: index out of range: \00" -@.str11847 = private unnamed_addr constant [2 x i8] c"0\00" -@.str11848 = private unnamed_addr constant [3 x i8] c" \00" -@.str11849 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11850 = private unnamed_addr constant [34 x i8] c" x i32], ptr @L_kind, i32 0, i32 \00" -@.str11851 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11852 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11853 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str11854 = private unnamed_addr constant [3 x i8] c", \00" -@.str11855 = private unnamed_addr constant [19 x i8] c"load i32, ptr @ME_\00" -@.str11856 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str11857 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str11858 = private unnamed_addr constant [8 x i8] c"and i1 \00" -@.str11859 = private unnamed_addr constant [3 x i8] c", \00" -@.str11860 = private unnamed_addr constant [3 x i8] c" \00" -@.str11861 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11862 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str11863 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str11864 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11865 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" -@.str11866 = private unnamed_addr constant [12 x i8] c"icmp ne i8 \00" -@.str11867 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str11868 = private unnamed_addr constant [3 x i8] c"qt\00" -@.str11869 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11870 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11871 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11872 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11873 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11874 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18964: index out of range: \00" -@.str11875 = private unnamed_addr constant [3 x i8] c" \00" -@.str11876 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11877 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str11878 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str11879 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str11880 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11881 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str11882 = private unnamed_addr constant [13 x i8] c" store ptr \00" -@.str11883 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11884 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11885 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18971: index out of range: \00" -@.str11886 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str11887 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str11888 = private unnamed_addr constant [3 x i8] c"qw\00" -@.str11889 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11890 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11891 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11892 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11893 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11894 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11895 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11896 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11897 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str11898 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str11899 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str11900 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str11901 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str11902 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11903 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11904 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str11905 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str11906 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11907 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11908 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19009: index out of range: \00" -@.str11909 = private unnamed_addr constant [25 x i8] c"spawn: unknown property \00" -@.str11910 = private unnamed_addr constant [3 x i8] c" \00" -@.str11911 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11912 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str11913 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str11914 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11915 = private unnamed_addr constant [19 x i8] c" store i8 1, ptr \00" -@.str11916 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11917 = private unnamed_addr constant [3 x i8] c" \00" -@.str11918 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11919 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str11920 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str11921 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str11922 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11923 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19026: index out of range: \00" -@.str11924 = private unnamed_addr constant [3 x i8] c" \00" -@.str11925 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" -@.str11926 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11927 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str11928 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11929 = private unnamed_addr constant [9 x i8] c" store \00" -@.str11930 = private unnamed_addr constant [2 x i8] c" \00" -@.str11931 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11932 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11933 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19039: index out of range: \00" -@.str11934 = private unnamed_addr constant [3 x i8] c" \00" -@.str11935 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" -@.str11936 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11937 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str11938 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11939 = private unnamed_addr constant [9 x i8] c" store \00" -@.str11940 = private unnamed_addr constant [2 x i8] c" \00" -@.str11941 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11942 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11943 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str11944 = private unnamed_addr constant [13 x i8] c" store ptr \00" -@.str11945 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11583 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" +@.str11584 = private unnamed_addr constant [3 x i8] c", \00" +@.str11585 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11586 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11587 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11588 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11589 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11590 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11591 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11592 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11593 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str11594 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str11595 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str11596 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str11597 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11598 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11599 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11600 = private unnamed_addr constant [5 x i8] c"void\00" +@.str11601 = private unnamed_addr constant [54 x i8] c"a function that returns nothing cannot return a value\00" +@.str11602 = private unnamed_addr constant [8 x i8] c"%retval\00" +@.str11603 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11604 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11605 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18506: index out of range: \00" +@.str11606 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18523: index out of range: \00" +@.str11607 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18535: index out of range: \00" +@.str11608 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18535: index out of range: \00" +@.str11609 = private unnamed_addr constant [2 x i8] c"_\00" +@.str11610 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18545: index out of range: \00" +@.str11611 = private unnamed_addr constant [8 x i8] c"match: \00" +@.str11612 = private unnamed_addr constant [8 x i8] c" binds \00" +@.str11613 = private unnamed_addr constant [22 x i8] c" name(s) but carries \00" +@.str11614 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18551: index out of range: \00" +@.str11615 = private unnamed_addr constant [8 x i8] c"match: \00" +@.str11616 = private unnamed_addr constant [10 x i8] c" payload \00" +@.str11617 = private unnamed_addr constant [24 x i8] c" must be a binding name\00" +@.str11618 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18552: index out of range: \00" +@.str11619 = private unnamed_addr constant [3 x i8] c" \00" +@.str11620 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str11621 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str11622 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11623 = private unnamed_addr constant [6 x i8] c"load \00" +@.str11624 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11625 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18558: index out of range: \00" +@.str11626 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str11627 = private unnamed_addr constant [5 x i8] c"mend\00" +@.str11628 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18574: index out of range: \00" +@.str11629 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11630 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18582: index out of range: \00" +@.str11631 = private unnamed_addr constant [8 x i8] c"match: \00" +@.str11632 = private unnamed_addr constant [27 x i8] c" is not a variant of enum \00" +@.str11633 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str11634 = private unnamed_addr constant [3 x i8] c", \00" +@.str11635 = private unnamed_addr constant [7 x i8] c"or i1 \00" +@.str11636 = private unnamed_addr constant [3 x i8] c", \00" +@.str11637 = private unnamed_addr constant [6 x i8] c"mbody\00" +@.str11638 = private unnamed_addr constant [5 x i8] c"marm\00" +@.str11639 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11640 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11641 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11642 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11643 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11644 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11645 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11646 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11647 = private unnamed_addr constant [10 x i8] c"match on \00" +@.str11648 = private unnamed_addr constant [29 x i8] c" is not exhaustive: variant \00" +@.str11649 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18610: index out of range: \00" +@.str11650 = private unnamed_addr constant [34 x i8] c" is unhandled (add it or a _ arm)\00" +@.str11651 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11652 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11653 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11654 = private unnamed_addr constant [5 x i8] c"mend\00" +@.str11655 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18627: index out of range: \00" +@.str11656 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11657 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18634: index out of range: \00" +@.str11658 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str11659 = private unnamed_addr constant [3 x i8] c", \00" +@.str11660 = private unnamed_addr constant [7 x i8] c"or i1 \00" +@.str11661 = private unnamed_addr constant [3 x i8] c", \00" +@.str11662 = private unnamed_addr constant [6 x i8] c"mbody\00" +@.str11663 = private unnamed_addr constant [5 x i8] c"marm\00" +@.str11664 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11665 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11666 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11667 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11668 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11669 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11670 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11671 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11672 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11673 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11674 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11675 = private unnamed_addr constant [21 x i8] c"emit: unknown event \00" +@.str11676 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18666: index out of range: \00" +@.str11677 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18669: index out of range: \00" +@.str11678 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18669: index out of range: \00" +@.str11679 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11680 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str11681 = private unnamed_addr constant [5 x i8] c"null\00" +@.str11682 = private unnamed_addr constant [3 x i8] c" \00" +@.str11683 = private unnamed_addr constant [53 x i8] c" = getelementptr inbounds i8, ptr @L_sendbuf, i32 0\0A\00" +@.str11684 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str11685 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11686 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11687 = private unnamed_addr constant [3 x i8] c" \00" +@.str11688 = private unnamed_addr constant [51 x i8] c" = getelementptr inbounds i8, ptr @L_sendbuf, i32 \00" +@.str11689 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11690 = private unnamed_addr constant [9 x i8] c" store \00" +@.str11691 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18688: index out of range: \00" +@.str11692 = private unnamed_addr constant [2 x i8] c" \00" +@.str11693 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18688: index out of range: \00" +@.str11694 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11695 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11696 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18689: index out of range: \00" +@.str11697 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11698 = private unnamed_addr constant [10 x i8] c"toclients\00" +@.str11699 = private unnamed_addr constant [3 x i8] c"-1\00" +@.str11700 = private unnamed_addr constant [9 x i8] c"net_send\00" +@.str11701 = private unnamed_addr constant [14 x i8] c" call void @\00" +@.str11702 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str11703 = private unnamed_addr constant [23 x i8] c", ptr @L_sendbuf, i32 \00" +@.str11704 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str11705 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11706 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11707 = private unnamed_addr constant [3 x i8] c", \00" +@.str11708 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18704: index out of range: \00" +@.str11709 = private unnamed_addr constant [2 x i8] c" \00" +@.str11710 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18704: index out of range: \00" +@.str11711 = private unnamed_addr constant [3 x i8] c" \00" +@.str11712 = private unnamed_addr constant [17 x i8] c" = call i32 @ev_\00" +@.str11713 = private unnamed_addr constant [2 x i8] c"(\00" +@.str11714 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str11715 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11716 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str11717 = private unnamed_addr constant [2 x i8] c"(\00" +@.str11718 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str11719 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11720 = private unnamed_addr constant [4 x i8] c"int\00" +@.str11721 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11722 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18739: index out of range: \00" +@.str11723 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11724 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11725 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18740: index out of range: \00" +@.str11726 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11727 = private unnamed_addr constant [44 x i8] c"cancel outside a cancellable event listener\00" +@.str11728 = private unnamed_addr constant [20 x i8] c" store i32 1, ptr \00" +@.str11729 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11730 = private unnamed_addr constant [22 x i8] c"cannot emit statement\00" +@.str11731 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18761: index out of range: \00" +@.str11732 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18761: index out of range: \00" +@.str11733 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18776: index out of range: \00" +@.str11734 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18785: index out of range: \00" +@.str11735 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18799: index out of range: \00" +@.str11736 = private unnamed_addr constant [9 x i8] c"Occluder\00" +@.str11737 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18808: index out of range: \00" +@.str11738 = private unnamed_addr constant [36 x i8] c"@L_running = internal global i32 1\0A\00" +@.str11739 = private unnamed_addr constant [32 x i8] c"@L_key = internal global i32 0\0A\00" +@.str11740 = private unnamed_addr constant [34 x i8] c"@L_frame = internal global i32 0\0A\00" +@.str11741 = private unnamed_addr constant [34 x i8] c"@L_scene = internal global i32 0\0A\00" +@.str11742 = private unnamed_addr constant [33 x i8] c"@L_entc = internal global i32 0\0A\00" +@.str11743 = private unnamed_addr constant [32 x i8] c"@L_cap = internal global i32 0\0A\00" +@.str11744 = private unnamed_addr constant [36 x i8] c"@L_snapcap = internal global i32 0\0A\00" +@.str11745 = private unnamed_addr constant [37 x i8] c"@L_alive = internal global ptr null\0A\00" +@.str11746 = private unnamed_addr constant [36 x i8] c"@L_kind = internal global ptr null\0A\00" +@.str11747 = private unnamed_addr constant [40 x i8] c"@L_freelist = internal global ptr null\0A\00" +@.str11748 = private unnamed_addr constant [34 x i8] c"@L_freen = internal global i32 0\0A\00" +@.str11749 = private unnamed_addr constant [33 x i8] c"@L_role = internal global i32 1\0A\00" +@.str11750 = private unnamed_addr constant [36 x i8] c"@L_localid = internal global i32 0\0A\00" +@.str11751 = private unnamed_addr constant [41 x i8] c"@L_owner_arr = internal global ptr null\0A\00" +@.str11752 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18843: index out of range: \00" +@.str11753 = private unnamed_addr constant [4 x i8] c"@S_\00" +@.str11754 = private unnamed_addr constant [29 x i8] c" = internal global ptr null\0A\00" +@.str11755 = private unnamed_addr constant [4 x i8] c"@H_\00" +@.str11756 = private unnamed_addr constant [29 x i8] c" = internal global ptr null\0A\00" +@.str11757 = private unnamed_addr constant [5 x i8] c"@ME_\00" +@.str11758 = private unnamed_addr constant [26 x i8] c" = internal global i32 1\0A\00" +@.str11759 = private unnamed_addr constant [5 x i8] c"@HE_\00" +@.str11760 = private unnamed_addr constant [26 x i8] c" = internal global i32 1\0A\00" +@.str11761 = private unnamed_addr constant [5 x i8] c"@LE_\00" +@.str11762 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18858: index out of range: \00" +@.str11763 = private unnamed_addr constant [26 x i8] c" = internal global i32 1\0A\00" +@.str11764 = private unnamed_addr constant [39 x i8] c"define void @L_reset(i32 %e) {\0Aentry:\0A\00" +@.str11765 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18868: index out of range: \00" +@.str11766 = private unnamed_addr constant [3 x i8] c"%h\00" +@.str11767 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str11768 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18870: index out of range: \00" +@.str11769 = private unnamed_addr constant [3 x i8] c" \00" +@.str11770 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str11771 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str11772 = private unnamed_addr constant [19 x i8] c" store i8 0, ptr \00" +@.str11773 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11774 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str11775 = private unnamed_addr constant [40 x i8] c" %k = getelementptr inbounds i32, ptr \00" +@.str11776 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str11777 = private unnamed_addr constant [23 x i8] c" store i32 0, ptr %k\0A\00" +@.str11778 = private unnamed_addr constant [12 x i8] c"L_owner_arr\00" +@.str11779 = private unnamed_addr constant [41 x i8] c" %ow = getelementptr inbounds i32, ptr \00" +@.str11780 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str11781 = private unnamed_addr constant [25 x i8] c" store i32 -1, ptr %ow\0A\00" +@.str11782 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str11783 = private unnamed_addr constant [32 x i8] c"define i32 @L_alloc() {\0Aentry:\0A\00" +@.str11784 = private unnamed_addr constant [32 x i8] c" %fn = load i32, ptr @L_freen\0A\00" +@.str11785 = private unnamed_addr constant [30 x i8] c" %has = icmp sgt i32 %fn, 0\0A\00" +@.str11786 = private unnamed_addr constant [42 x i8] c" br i1 %has, label %reuse, label %fresh\0A\00" +@.str11787 = private unnamed_addr constant [8 x i8] c"reuse:\0A\00" +@.str11788 = private unnamed_addr constant [25 x i8] c" %fn1 = sub i32 %fn, 1\0A\00" +@.str11789 = private unnamed_addr constant [32 x i8] c" store i32 %fn1, ptr @L_freen\0A\00" +@.str11790 = private unnamed_addr constant [11 x i8] c"L_freelist\00" +@.str11791 = private unnamed_addr constant [41 x i8] c" %fp = getelementptr inbounds i32, ptr \00" +@.str11792 = private unnamed_addr constant [12 x i8] c", i32 %fn1\0A\00" +@.str11793 = private unnamed_addr constant [27 x i8] c" %re = load i32, ptr %fp\0A\00" +@.str11794 = private unnamed_addr constant [18 x i8] c" br label %done\0A\00" +@.str11795 = private unnamed_addr constant [8 x i8] c"fresh:\0A\00" +@.str11796 = private unnamed_addr constant [31 x i8] c" %ec = load i32, ptr @L_entc\0A\00" +@.str11797 = private unnamed_addr constant [25 x i8] c" %ec1 = add i32 %ec, 1\0A\00" +@.str11798 = private unnamed_addr constant [31 x i8] c" call void @L_grow(i32 %ec1)\0A\00" +@.str11799 = private unnamed_addr constant [31 x i8] c" store i32 %ec1, ptr @L_entc\0A\00" +@.str11800 = private unnamed_addr constant [18 x i8] c" br label %done\0A\00" +@.str11801 = private unnamed_addr constant [7 x i8] c"done:\0A\00" +@.str11802 = private unnamed_addr constant [49 x i8] c" %e = phi i32 [ %re, %reuse ], [ %ec, %fresh ]\0A\00" +@.str11803 = private unnamed_addr constant [30 x i8] c" call void @L_reset(i32 %e)\0A\00" +@.str11804 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str11805 = private unnamed_addr constant [41 x i8] c" %ap = getelementptr inbounds i32, ptr \00" +@.str11806 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str11807 = private unnamed_addr constant [24 x i8] c" store i32 1, ptr %ap\0A\00" +@.str11808 = private unnamed_addr constant [17 x i8] c" ret i32 %e\0A}\0A\0A\00" +@.str11809 = private unnamed_addr constant [45 x i8] c"define void @L_free_entity(i32 %e) {\0Aentry:\0A\00" +@.str11810 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str11811 = private unnamed_addr constant [41 x i8] c" %ap = getelementptr inbounds i32, ptr \00" +@.str11812 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str11813 = private unnamed_addr constant [24 x i8] c" store i32 0, ptr %ap\0A\00" +@.str11814 = private unnamed_addr constant [30 x i8] c" call void @L_reset(i32 %e)\0A\00" +@.str11815 = private unnamed_addr constant [32 x i8] c" %fn = load i32, ptr @L_freen\0A\00" +@.str11816 = private unnamed_addr constant [11 x i8] c"L_freelist\00" +@.str11817 = private unnamed_addr constant [41 x i8] c" %fp = getelementptr inbounds i32, ptr \00" +@.str11818 = private unnamed_addr constant [11 x i8] c", i32 %fn\0A\00" +@.str11819 = private unnamed_addr constant [25 x i8] c" store i32 %e, ptr %fp\0A\00" +@.str11820 = private unnamed_addr constant [25 x i8] c" %fn1 = add i32 %fn, 1\0A\00" +@.str11821 = private unnamed_addr constant [32 x i8] c" store i32 %fn1, ptr @L_freen\0A\00" +@.str11822 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str11823 = private unnamed_addr constant [6 x i8] c"%ecsb\00" +@.str11824 = private unnamed_addr constant [3 x i8] c" \00" +@.str11825 = private unnamed_addr constant [19 x i8] c" = load ptr, ptr @\00" +@.str11826 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11827 = private unnamed_addr constant [71 x i8] c"define void @L_grow(i32 %need) {\0Aentry:\0A %cap = load i32, ptr @L_cap\0A\00" +@.str11828 = private unnamed_addr constant [78 x i8] c" %ok = icmp sle i32 %need, %cap\0A br i1 %ok, label %done, label %grow\0Agrow:\0A\00" +@.str11829 = private unnamed_addr constant [59 x i8] c" %c0 = icmp eq i32 %cap, 0\0A %start = select i1 %c0, i32 \00" +@.str11830 = private unnamed_addr constant [28 x i8] c", i32 %cap\0A br label %dbl\0A\00" +@.str11831 = private unnamed_addr constant [93 x i8] c"dbl:\0A %nc = phi i32 [ %start, %grow ], [ %nc2, %dbl2 ]\0A %enough = icmp sge i32 %nc, %need\0A\00" +@.str11832 = private unnamed_addr constant [90 x i8] c" br i1 %enough, label %apply, label %dbl2\0Adbl2:\0A %nc2 = mul i32 %nc, 2\0A br label %dbl\0A\00" +@.str11833 = private unnamed_addr constant [70 x i8] c"apply:\0A %cap64 = sext i32 %cap to i64\0A %nc64 = sext i32 %nc to i64\0A\00" +@.str11834 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str11835 = private unnamed_addr constant [2 x i8] c"4\00" +@.str11836 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str11837 = private unnamed_addr constant [2 x i8] c"4\00" +@.str11838 = private unnamed_addr constant [11 x i8] c"L_freelist\00" +@.str11839 = private unnamed_addr constant [2 x i8] c"4\00" +@.str11840 = private unnamed_addr constant [12 x i8] c"L_owner_arr\00" +@.str11841 = private unnamed_addr constant [2 x i8] c"4\00" +@.str11842 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18951: index out of range: \00" +@.str11843 = private unnamed_addr constant [4 x i8] c"%gs\00" +@.str11844 = private unnamed_addr constant [3 x i8] c" \00" +@.str11845 = private unnamed_addr constant [37 x i8] c" = ptrtoint ptr getelementptr (%Cmp_\00" +@.str11846 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18953: index out of range: \00" +@.str11847 = private unnamed_addr constant [27 x i8] c", ptr null, i32 1) to i64\0A\00" +@.str11848 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str11849 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18954: index out of range: \00" +@.str11850 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str11851 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18955: index out of range: \00" +@.str11852 = private unnamed_addr constant [2 x i8] c"1\00" +@.str11853 = private unnamed_addr constant [71 x i8] c"fin:\0A store i32 %nc, ptr @L_cap\0A br label %done\0Adone:\0A ret void\0A}\0A\0A\00" +@.str11854 = private unnamed_addr constant [6 x i8] c" %gp\00" +@.str11855 = private unnamed_addr constant [19 x i8] c" = load ptr, ptr @\00" +@.str11856 = private unnamed_addr constant [7 x i8] c"\0A %gb\00" +@.str11857 = private unnamed_addr constant [19 x i8] c" = mul i64 %nc64, \00" +@.str11858 = private unnamed_addr constant [7 x i8] c"\0A %gr\00" +@.str11859 = private unnamed_addr constant [15 x i8] c" = add i64 %gb\00" +@.str11860 = private unnamed_addr constant [5 x i8] c", 8\0A\00" +@.str11861 = private unnamed_addr constant [6 x i8] c" %gn\00" +@.str11862 = private unnamed_addr constant [29 x i8] c" = call ptr @realloc(ptr %gp\00" +@.str11863 = private unnamed_addr constant [10 x i8] c", i64 %gr\00" +@.str11864 = private unnamed_addr constant [8 x i8] c")\0A %go\00" +@.str11865 = private unnamed_addr constant [20 x i8] c" = mul i64 %cap64, \00" +@.str11866 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11867 = private unnamed_addr constant [6 x i8] c" %gt\00" +@.str11868 = private unnamed_addr constant [29 x i8] c" = getelementptr i8, ptr %gn\00" +@.str11869 = private unnamed_addr constant [10 x i8] c", i64 %go\00" +@.str11870 = private unnamed_addr constant [7 x i8] c"\0A %gz\00" +@.str11871 = private unnamed_addr constant [15 x i8] c" = sub i64 %gr\00" +@.str11872 = private unnamed_addr constant [6 x i8] c", %go\00" +@.str11873 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11874 = private unnamed_addr constant [6 x i8] c" %gm\00" +@.str11875 = private unnamed_addr constant [28 x i8] c" = call ptr @memset(ptr %gt\00" +@.str11876 = private unnamed_addr constant [17 x i8] c", i32 0, i64 %gz\00" +@.str11877 = private unnamed_addr constant [18 x i8] c")\0A store ptr %gn\00" +@.str11878 = private unnamed_addr constant [8 x i8] c", ptr @\00" +@.str11879 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11880 = private unnamed_addr constant [105 x i8] c" br label %dynh\0Adynh:\0A %di = phi i32 [ 0, %apply ], [ %di1, %dynb ]\0A %dcn = load i32, ptr @dyn_count\0A\00" +@.str11881 = private unnamed_addr constant [81 x i8] c" %dmore = icmp slt i32 %di, %dcn\0A br i1 %dmore, label %dynb, label %fin\0Adynb:\0A\00" +@.str11882 = private unnamed_addr constant [99 x i8] c" %dfp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %di\0A %dnf = load i32, ptr %dfp\0A\00" +@.str11883 = private unnamed_addr constant [59 x i8] c" %dnf4 = mul i32 %dnf, 4\0A %desz = sext i32 %dnf4 to i64\0A\00" +@.str11884 = private unnamed_addr constant [5 x i8] c"dynS\00" +@.str11885 = private unnamed_addr constant [6 x i8] c"%desz\00" +@.str11886 = private unnamed_addr constant [2 x i8] c"s\00" +@.str11887 = private unnamed_addr constant [5 x i8] c"dynH\00" +@.str11888 = private unnamed_addr constant [2 x i8] c"1\00" +@.str11889 = private unnamed_addr constant [2 x i8] c"h\00" +@.str11890 = private unnamed_addr constant [42 x i8] c" %di1 = add i32 %di, 1\0A br label %dynh\0A\00" +@.str11891 = private unnamed_addr constant [5 x i8] c" %d\00" +@.str11892 = private unnamed_addr constant [45 x i8] c"p = getelementptr inbounds [32 x ptr], ptr @\00" +@.str11893 = private unnamed_addr constant [22 x i8] c", i32 0, i32 %di\0A %d\00" +@.str11894 = private unnamed_addr constant [21 x i8] c"o = load ptr, ptr %d\00" +@.str11895 = private unnamed_addr constant [3 x i8] c"p\0A\00" +@.str11896 = private unnamed_addr constant [5 x i8] c" %d\00" +@.str11897 = private unnamed_addr constant [20 x i8] c"b = mul i64 %nc64, \00" +@.str11898 = private unnamed_addr constant [6 x i8] c"\0A %d\00" +@.str11899 = private unnamed_addr constant [15 x i8] c"r = add i64 %d\00" +@.str11900 = private unnamed_addr constant [10 x i8] c"b, 8\0A %d\00" +@.str11901 = private unnamed_addr constant [29 x i8] c"n = call ptr @realloc(ptr %d\00" +@.str11902 = private unnamed_addr constant [10 x i8] c"o, i64 %d\00" +@.str11903 = private unnamed_addr constant [4 x i8] c"r)\0A\00" +@.str11904 = private unnamed_addr constant [5 x i8] c" %d\00" +@.str11905 = private unnamed_addr constant [21 x i8] c"f = mul i64 %cap64, \00" +@.str11906 = private unnamed_addr constant [6 x i8] c"\0A %d\00" +@.str11907 = private unnamed_addr constant [29 x i8] c"t = getelementptr i8, ptr %d\00" +@.str11908 = private unnamed_addr constant [10 x i8] c"n, i64 %d\00" +@.str11909 = private unnamed_addr constant [7 x i8] c"f\0A %d\00" +@.str11910 = private unnamed_addr constant [15 x i8] c"z = sub i64 %d\00" +@.str11911 = private unnamed_addr constant [6 x i8] c"r, %d\00" +@.str11912 = private unnamed_addr constant [3 x i8] c"f\0A\00" +@.str11913 = private unnamed_addr constant [5 x i8] c" %d\00" +@.str11914 = private unnamed_addr constant [28 x i8] c"m = call ptr @memset(ptr %d\00" +@.str11915 = private unnamed_addr constant [17 x i8] c"t, i32 0, i64 %d\00" +@.str11916 = private unnamed_addr constant [18 x i8] c"z)\0A store ptr %d\00" +@.str11917 = private unnamed_addr constant [10 x i8] c"n, ptr %d\00" +@.str11918 = private unnamed_addr constant [3 x i8] c"p\0A\00" +@.str11919 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18998: index out of range: \00" +@.str11920 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:18998: index out of range: \00" +@.str11921 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str11922 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str11923 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11924 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19006: index out of range: \00" +@.str11925 = private unnamed_addr constant [6 x i8] c"qcond\00" +@.str11926 = private unnamed_addr constant [6 x i8] c"qbody\00" +@.str11927 = private unnamed_addr constant [6 x i8] c"qnext\00" +@.str11928 = private unnamed_addr constant [5 x i8] c"qend\00" +@.str11929 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11930 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11931 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11932 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str11933 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_entc\00" +@.str11934 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" +@.str11935 = private unnamed_addr constant [3 x i8] c", \00" +@.str11936 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11937 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11938 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11939 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11940 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11941 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str11942 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str11943 = private unnamed_addr constant [3 x i8] c" \00" +@.str11944 = private unnamed_addr constant [36 x i8] c" = getelementptr inbounds i32, ptr \00" +@.str11945 = private unnamed_addr constant [7 x i8] c", i32 \00" @.str11946 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11947 = private unnamed_addr constant [6 x i8] c"prop_\00" -@.str11948 = private unnamed_addr constant [8 x i8] c"_attach\00" -@.str11949 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str11950 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str11951 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str11952 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19073: index out of range: \00" -@.str11953 = private unnamed_addr constant [3 x i8] c" \00" -@.str11954 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11955 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str11956 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str11957 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str11958 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11959 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str11960 = private unnamed_addr constant [13 x i8] c" store ptr \00" -@.str11961 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11947 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str11948 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str11949 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str11950 = private unnamed_addr constant [3 x i8] c"qa\00" +@.str11951 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11952 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11953 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11954 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11955 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11956 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19031: index out of range: \00" +@.str11957 = private unnamed_addr constant [2 x i8] c"0\00" +@.str11958 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str11959 = private unnamed_addr constant [3 x i8] c" \00" +@.str11960 = private unnamed_addr constant [36 x i8] c" = getelementptr inbounds i32, ptr \00" +@.str11961 = private unnamed_addr constant [7 x i8] c", i32 \00" @.str11962 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11963 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19087: index out of range: \00" -@.str11964 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19087: index out of range: \00" -@.str11965 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19096: index out of range: \00" -@.str11966 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19098: index out of range: \00" -@.str11967 = private unnamed_addr constant [8 x i8] c"prefab \00" -@.str11968 = private unnamed_addr constant [45 x i8] c": the chain of prefabs never reaches a model\00" -@.str11969 = private unnamed_addr constant [26 x i8] c"call i32 @thr_is_worker()\00" -@.str11970 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str11971 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str11972 = private unnamed_addr constant [5 x i8] c"wgok\00" -@.str11973 = private unnamed_addr constant [6 x i8] c"wgbad\00" -@.str11974 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str11975 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11976 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str11977 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11978 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11979 = private unnamed_addr constant [2 x i8] c":\00" -@.str11980 = private unnamed_addr constant [10 x i8] c": panic: \00" -@.str11981 = private unnamed_addr constant [73 x i8] c" on a Job.parallel_for worker thread (workers must not change the world)\00" -@.str11982 = private unnamed_addr constant [41 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr \00" -@.str11983 = private unnamed_addr constant [24 x i8] c", ptr @.fmt_panic, ptr \00" -@.str11984 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11985 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str11986 = private unnamed_addr constant [40 x i8] c" call void @exit(i32 1)\0A unreachable\0A\00" -@.str11987 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str11988 = private unnamed_addr constant [6 x i8] c"spawn\00" -@.str11989 = private unnamed_addr constant [20 x i8] c"call i32 @L_alloc()\00" -@.str11990 = private unnamed_addr constant [8 x i8] c"prefab \00" -@.str11991 = private unnamed_addr constant [17 x i8] c": unknown model \00" -@.str11992 = private unnamed_addr constant [3 x i8] c" \00" -@.str11993 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str11994 = private unnamed_addr constant [34 x i8] c" x i32], ptr @L_kind, i32 0, i32 \00" +@.str11963 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str11964 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str11965 = private unnamed_addr constant [3 x i8] c", \00" +@.str11966 = private unnamed_addr constant [19 x i8] c"load i32, ptr @ME_\00" +@.str11967 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str11968 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str11969 = private unnamed_addr constant [8 x i8] c"and i1 \00" +@.str11970 = private unnamed_addr constant [3 x i8] c", \00" +@.str11971 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str11972 = private unnamed_addr constant [3 x i8] c" \00" +@.str11973 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str11974 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str11975 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11976 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" +@.str11977 = private unnamed_addr constant [12 x i8] c"icmp ne i8 \00" +@.str11978 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str11979 = private unnamed_addr constant [3 x i8] c"qt\00" +@.str11980 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str11981 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11982 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str11983 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11984 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str11985 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19059: index out of range: \00" +@.str11986 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str11987 = private unnamed_addr constant [3 x i8] c" \00" +@.str11988 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str11989 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str11990 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str11991 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str11992 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str11993 = private unnamed_addr constant [13 x i8] c" store ptr \00" +@.str11994 = private unnamed_addr constant [7 x i8] c", ptr \00" @.str11995 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11996 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str11997 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str11998 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str11999 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19155: index out of range: \00" -@.str12000 = private unnamed_addr constant [7 x i8] c"model_\00" -@.str12001 = private unnamed_addr constant [7 x i8] c"_spawn\00" -@.str12002 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12003 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str12004 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12005 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19172: index out of range: \00" -@.str12006 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19172: index out of range: \00" -@.str12007 = private unnamed_addr constant [8 x i8] c"despawn\00" -@.str12008 = private unnamed_addr constant [3 x i8] c" \00" -@.str12009 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12010 = private unnamed_addr constant [34 x i8] c" x i32], ptr @L_kind, i32 0, i32 \00" -@.str12011 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12012 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str12013 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19187: index out of range: \00" -@.str12014 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str12015 = private unnamed_addr constant [3 x i8] c", \00" -@.str12016 = private unnamed_addr constant [3 x i8] c"dh\00" -@.str12017 = private unnamed_addr constant [4 x i8] c"dhn\00" -@.str12018 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12019 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12020 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12021 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12022 = private unnamed_addr constant [27 x i8] c":\0A call void @on_despawn_\00" -@.str12023 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str12024 = private unnamed_addr constant [10 x i8] c", i32 0)\0A\00" -@.str12025 = private unnamed_addr constant [7 x i8] c"model_\00" -@.str12026 = private unnamed_addr constant [9 x i8] c"_despawn\00" -@.str12027 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12028 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str12029 = private unnamed_addr constant [10 x i8] c", i32 0)\0A\00" -@.str12030 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12031 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12032 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12033 = private unnamed_addr constant [37 x i8] c" call void @ludic_sweep_entity(i32 \00" -@.str12034 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12035 = private unnamed_addr constant [32 x i8] c" call void @L_free_entity(i32 \00" -@.str12036 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12037 = private unnamed_addr constant [3 x i8] c" \00" -@.str12038 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12039 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str12040 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12041 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12042 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" -@.str12043 = private unnamed_addr constant [12 x i8] c"icmp eq i8 \00" -@.str12044 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str12045 = private unnamed_addr constant [7 x i8] c"attach\00" -@.str12046 = private unnamed_addr constant [8 x i8] c"attdone\00" -@.str12047 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12048 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12049 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12050 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12051 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12052 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str11996 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19067: index out of range: \00" +@.str11997 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str11998 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str11999 = private unnamed_addr constant [3 x i8] c"qw\00" +@.str12000 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12001 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12002 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12003 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12004 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12005 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12006 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12007 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12008 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str12009 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str12010 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str12011 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str12012 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12013 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12014 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12015 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str12016 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str12017 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12018 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12019 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19105: index out of range: \00" +@.str12020 = private unnamed_addr constant [25 x i8] c"spawn: unknown property \00" +@.str12021 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str12022 = private unnamed_addr constant [3 x i8] c" \00" +@.str12023 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str12024 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12025 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12026 = private unnamed_addr constant [19 x i8] c" store i8 1, ptr \00" +@.str12027 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12028 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str12029 = private unnamed_addr constant [3 x i8] c" \00" +@.str12030 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12031 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12032 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12033 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12034 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19124: index out of range: \00" +@.str12035 = private unnamed_addr constant [3 x i8] c" \00" +@.str12036 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12037 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12038 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str12039 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12040 = private unnamed_addr constant [9 x i8] c" store \00" +@.str12041 = private unnamed_addr constant [2 x i8] c" \00" +@.str12042 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12043 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12044 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19137: index out of range: \00" +@.str12045 = private unnamed_addr constant [3 x i8] c" \00" +@.str12046 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12047 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12048 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str12049 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12050 = private unnamed_addr constant [9 x i8] c" store \00" +@.str12051 = private unnamed_addr constant [2 x i8] c" \00" +@.str12052 = private unnamed_addr constant [7 x i8] c", ptr \00" @.str12053 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12054 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12055 = private unnamed_addr constant [3 x i8] c" \00" -@.str12056 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12057 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str12058 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12059 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12060 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" -@.str12061 = private unnamed_addr constant [12 x i8] c"icmp ne i8 \00" -@.str12062 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str12063 = private unnamed_addr constant [7 x i8] c"detach\00" -@.str12064 = private unnamed_addr constant [8 x i8] c"detdone\00" -@.str12065 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12066 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12067 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12068 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12069 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12070 = private unnamed_addr constant [19 x i8] c" store i8 0, ptr \00" -@.str12071 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12072 = private unnamed_addr constant [3 x i8] c" \00" -@.str12073 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12074 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str12075 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str12076 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12077 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12078 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str12079 = private unnamed_addr constant [13 x i8] c" store ptr \00" -@.str12080 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12081 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12082 = private unnamed_addr constant [6 x i8] c"prop_\00" -@.str12083 = private unnamed_addr constant [8 x i8] c"_detach\00" -@.str12084 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12085 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str12086 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12087 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12054 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str12055 = private unnamed_addr constant [13 x i8] c" store ptr \00" +@.str12056 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12057 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12058 = private unnamed_addr constant [6 x i8] c"prop_\00" +@.str12059 = private unnamed_addr constant [8 x i8] c"_attach\00" +@.str12060 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12061 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str12062 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12063 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19171: index out of range: \00" +@.str12064 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str12065 = private unnamed_addr constant [3 x i8] c" \00" +@.str12066 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12067 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12068 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12069 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12070 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str12071 = private unnamed_addr constant [13 x i8] c" store ptr \00" +@.str12072 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12073 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12074 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19186: index out of range: \00" +@.str12075 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19186: index out of range: \00" +@.str12076 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19195: index out of range: \00" +@.str12077 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19197: index out of range: \00" +@.str12078 = private unnamed_addr constant [8 x i8] c"prefab \00" +@.str12079 = private unnamed_addr constant [45 x i8] c": the chain of prefabs never reaches a model\00" +@.str12080 = private unnamed_addr constant [26 x i8] c"call i32 @thr_is_worker()\00" +@.str12081 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str12082 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str12083 = private unnamed_addr constant [5 x i8] c"wgok\00" +@.str12084 = private unnamed_addr constant [6 x i8] c"wgbad\00" +@.str12085 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12086 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12087 = private unnamed_addr constant [10 x i8] c", label %\00" @.str12088 = private unnamed_addr constant [2 x i8] c"\0A\00" @.str12089 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12090 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19255: index out of range: \00" -@.str12091 = private unnamed_addr constant [2 x i8] c"0\00" -@.str12092 = private unnamed_addr constant [2 x i8] c"1\00" -@.str12093 = private unnamed_addr constant [7 x i8] c"system\00" -@.str12094 = private unnamed_addr constant [6 x i8] c"layer\00" -@.str12095 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str12096 = private unnamed_addr constant [11 x i8] c", ptr @LE_\00" -@.str12097 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12098 = private unnamed_addr constant [7 x i8] c"layer_\00" -@.str12099 = private unnamed_addr constant [6 x i8] c"_hide\00" -@.str12100 = private unnamed_addr constant [7 x i8] c"layer_\00" -@.str12101 = private unnamed_addr constant [6 x i8] c"_show\00" -@.str12102 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12103 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12090 = private unnamed_addr constant [2 x i8] c":\00" +@.str12091 = private unnamed_addr constant [10 x i8] c": panic: \00" +@.str12092 = private unnamed_addr constant [73 x i8] c" on a Job.parallel_for worker thread (workers must not change the world)\00" +@.str12093 = private unnamed_addr constant [41 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr \00" +@.str12094 = private unnamed_addr constant [24 x i8] c", ptr @.fmt_panic, ptr \00" +@.str12095 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12096 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12097 = private unnamed_addr constant [40 x i8] c" call void @exit(i32 1)\0A unreachable\0A\00" +@.str12098 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12099 = private unnamed_addr constant [6 x i8] c"spawn\00" +@.str12100 = private unnamed_addr constant [20 x i8] c"call i32 @L_alloc()\00" +@.str12101 = private unnamed_addr constant [8 x i8] c"prefab \00" +@.str12102 = private unnamed_addr constant [17 x i8] c": unknown model \00" +@.str12103 = private unnamed_addr constant [7 x i8] c"L_kind\00" @.str12104 = private unnamed_addr constant [3 x i8] c" \00" -@.str12105 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12106 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str12107 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12108 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12109 = private unnamed_addr constant [12 x i8] c" store i8 \00" -@.str12110 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12111 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12112 = private unnamed_addr constant [3 x i8] c" \00" -@.str12113 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12114 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str12115 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str12116 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12117 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12118 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str12119 = private unnamed_addr constant [13 x i8] c" store ptr \00" -@.str12120 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12121 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12122 = private unnamed_addr constant [6 x i8] c"prop_\00" -@.str12123 = private unnamed_addr constant [9 x i8] c"_disable\00" -@.str12124 = private unnamed_addr constant [6 x i8] c"prop_\00" -@.str12125 = private unnamed_addr constant [8 x i8] c"_enable\00" -@.str12126 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12127 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str12128 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12129 = private unnamed_addr constant [5 x i8] c"@HE_\00" -@.str12130 = private unnamed_addr constant [5 x i8] c"@ME_\00" -@.str12131 = private unnamed_addr constant [5 x i8] c"@HE_\00" -@.str12132 = private unnamed_addr constant [2 x i8] c"_\00" -@.str12133 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str12134 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12135 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12136 = private unnamed_addr constant [5 x i8] c"void\00" -@.str12137 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" -@.str12138 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" -@.str12139 = private unnamed_addr constant [18 x i8] c"define void @sys_\00" -@.str12140 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" -@.str12141 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str12142 = private unnamed_addr constant [1 x i8] c"\00" -@.str12143 = private unnamed_addr constant [19 x i8] c"load i32, ptr @HE_\00" -@.str12144 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str12145 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str12146 = private unnamed_addr constant [19 x i8] c"load i32, ptr @LE_\00" -@.str12147 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str12148 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str12149 = private unnamed_addr constant [8 x i8] c"and i1 \00" -@.str12150 = private unnamed_addr constant [3 x i8] c", \00" -@.str12151 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_role\00" -@.str12152 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str12153 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str12154 = private unnamed_addr constant [8 x i8] c"and i1 \00" -@.str12155 = private unnamed_addr constant [3 x i8] c", \00" -@.str12156 = private unnamed_addr constant [5 x i8] c"hrun\00" -@.str12157 = private unnamed_addr constant [6 x i8] c"hskip\00" -@.str12158 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12159 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12160 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12161 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12162 = private unnamed_addr constant [20 x i8] c":\0A call void @sys_\00" -@.str12163 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12164 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12165 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12166 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12167 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12168 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12169 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19368: index out of range: \00" -@.str12170 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19368: index out of range: \00" -@.str12171 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19368: index out of range: \00" -@.str12172 = private unnamed_addr constant [7 x i8] c"Update\00" -@.str12173 = private unnamed_addr constant [11 x i8] c"esys_tween\00" -@.str12174 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12175 = private unnamed_addr constant [11 x i8] c"esys_tween\00" -@.str12176 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12177 = private unnamed_addr constant [29 x i8] c" call void @L_countdowns()\0A\00" -@.str12178 = private unnamed_addr constant [8 x i8] c"fx_tick\00" -@.str12179 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12180 = private unnamed_addr constant [8 x i8] c"fx_tick\00" -@.str12181 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12182 = private unnamed_addr constant [7 x i8] c"Render\00" -@.str12183 = private unnamed_addr constant [8 x i8] c"fx_draw\00" -@.str12184 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12185 = private unnamed_addr constant [8 x i8] c"fx_draw\00" -@.str12186 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12187 = private unnamed_addr constant [38 x i8] c"define void @L_countdowns() {\0Aentry:\0A\00" -@.str12188 = private unnamed_addr constant [53 x i8] c" %n = load i32, ptr @L_entc\0A br label %loop\0Aloop:\0A\00" -@.str12189 = private unnamed_addr constant [46 x i8] c" %i = phi i32 [ 0, %entry ], [ %i1, %next ]\0A\00" -@.str12190 = private unnamed_addr constant [73 x i8] c" %go = icmp slt i32 %i, %n\0A br i1 %go, label %body, label %done\0Abody:\0A\00" -@.str12191 = private unnamed_addr constant [33 x i8] c" %ap = getelementptr inbounds [\00" -@.str12192 = private unnamed_addr constant [38 x i8] c" x i32], ptr @L_alive, i32 0, i32 %i\0A\00" -@.str12193 = private unnamed_addr constant [96 x i8] c" %al = load i32, ptr %ap\0A %alive = icmp ne i32 %al, 0\0A br i1 %alive, label %c0, label %next\0A\00" -@.str12194 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19397: index out of range: \00" -@.str12195 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19401: index out of range: \00" -@.str12196 = private unnamed_addr constant [10 x i8] c"countdown\00" -@.str12197 = private unnamed_addr constant [2 x i8] c"c\00" -@.str12198 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12199 = private unnamed_addr constant [5 x i8] c" %h\00" -@.str12200 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12201 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str12202 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %i\0A\00" -@.str12203 = private unnamed_addr constant [6 x i8] c" %hv\00" -@.str12204 = private unnamed_addr constant [19 x i8] c" = load i8, ptr %h\00" -@.str12205 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12206 = private unnamed_addr constant [7 x i8] c" %has\00" -@.str12207 = private unnamed_addr constant [18 x i8] c" = icmp ne i8 %hv\00" -@.str12208 = private unnamed_addr constant [5 x i8] c", 0\0A\00" -@.str12209 = private unnamed_addr constant [13 x i8] c" br i1 %has\00" -@.str12210 = private unnamed_addr constant [11 x i8] c", label %t\00" -@.str12211 = private unnamed_addr constant [11 x i8] c", label %c\00" -@.str12212 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12213 = private unnamed_addr constant [2 x i8] c"t\00" -@.str12214 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12215 = private unnamed_addr constant [5 x i8] c" %s\00" -@.str12216 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12217 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str12218 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str12219 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %i\0A\00" -@.str12220 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19413: index out of range: \00" -@.str12221 = private unnamed_addr constant [10 x i8] c"countdown\00" -@.str12222 = private unnamed_addr constant [2 x i8] c"_\00" -@.str12223 = private unnamed_addr constant [6 x i8] c" %fa\00" -@.str12224 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" -@.str12225 = private unnamed_addr constant [9 x i8] c", ptr %s\00" -@.str12226 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12227 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12228 = private unnamed_addr constant [6 x i8] c" %fv\00" -@.str12229 = private unnamed_addr constant [21 x i8] c" = load i32, ptr %fa\00" +@.str12105 = private unnamed_addr constant [36 x i8] c" = getelementptr inbounds i32, ptr \00" +@.str12106 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12107 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12108 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str12109 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12110 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12111 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19255: index out of range: \00" +@.str12112 = private unnamed_addr constant [7 x i8] c"model_\00" +@.str12113 = private unnamed_addr constant [7 x i8] c"_spawn\00" +@.str12114 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12115 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str12116 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12117 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19272: index out of range: \00" +@.str12118 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19272: index out of range: \00" +@.str12119 = private unnamed_addr constant [8 x i8] c"despawn\00" +@.str12120 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str12121 = private unnamed_addr constant [3 x i8] c" \00" +@.str12122 = private unnamed_addr constant [36 x i8] c" = getelementptr inbounds i32, ptr \00" +@.str12123 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12124 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12125 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str12126 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19288: index out of range: \00" +@.str12127 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str12128 = private unnamed_addr constant [3 x i8] c", \00" +@.str12129 = private unnamed_addr constant [3 x i8] c"dh\00" +@.str12130 = private unnamed_addr constant [4 x i8] c"dhn\00" +@.str12131 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12132 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12133 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12134 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12135 = private unnamed_addr constant [27 x i8] c":\0A call void @on_despawn_\00" +@.str12136 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str12137 = private unnamed_addr constant [10 x i8] c", i32 0)\0A\00" +@.str12138 = private unnamed_addr constant [7 x i8] c"model_\00" +@.str12139 = private unnamed_addr constant [9 x i8] c"_despawn\00" +@.str12140 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12141 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str12142 = private unnamed_addr constant [10 x i8] c", i32 0)\0A\00" +@.str12143 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12144 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12145 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12146 = private unnamed_addr constant [37 x i8] c" call void @ludic_sweep_entity(i32 \00" +@.str12147 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12148 = private unnamed_addr constant [32 x i8] c" call void @L_free_entity(i32 \00" +@.str12149 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12150 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str12151 = private unnamed_addr constant [3 x i8] c" \00" +@.str12152 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str12153 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12154 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12155 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" +@.str12156 = private unnamed_addr constant [12 x i8] c"icmp eq i8 \00" +@.str12157 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str12158 = private unnamed_addr constant [7 x i8] c"attach\00" +@.str12159 = private unnamed_addr constant [8 x i8] c"attdone\00" +@.str12160 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12161 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12162 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12163 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12164 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12165 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12166 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12167 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12168 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str12169 = private unnamed_addr constant [3 x i8] c" \00" +@.str12170 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str12171 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12172 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12173 = private unnamed_addr constant [14 x i8] c"load i8, ptr \00" +@.str12174 = private unnamed_addr constant [12 x i8] c"icmp ne i8 \00" +@.str12175 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str12176 = private unnamed_addr constant [7 x i8] c"detach\00" +@.str12177 = private unnamed_addr constant [8 x i8] c"detdone\00" +@.str12178 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12179 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12180 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12181 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12182 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12183 = private unnamed_addr constant [19 x i8] c" store i8 0, ptr \00" +@.str12184 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12185 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str12186 = private unnamed_addr constant [3 x i8] c" \00" +@.str12187 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12188 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12189 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12190 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12191 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str12192 = private unnamed_addr constant [13 x i8] c" store ptr \00" +@.str12193 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12194 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12195 = private unnamed_addr constant [6 x i8] c"prop_\00" +@.str12196 = private unnamed_addr constant [8 x i8] c"_detach\00" +@.str12197 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12198 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str12199 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12200 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12201 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12202 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12203 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19359: index out of range: \00" +@.str12204 = private unnamed_addr constant [2 x i8] c"0\00" +@.str12205 = private unnamed_addr constant [2 x i8] c"1\00" +@.str12206 = private unnamed_addr constant [7 x i8] c"system\00" +@.str12207 = private unnamed_addr constant [6 x i8] c"layer\00" +@.str12208 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str12209 = private unnamed_addr constant [11 x i8] c", ptr @LE_\00" +@.str12210 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12211 = private unnamed_addr constant [7 x i8] c"layer_\00" +@.str12212 = private unnamed_addr constant [6 x i8] c"_hide\00" +@.str12213 = private unnamed_addr constant [7 x i8] c"layer_\00" +@.str12214 = private unnamed_addr constant [6 x i8] c"_show\00" +@.str12215 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12216 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12217 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str12218 = private unnamed_addr constant [3 x i8] c" \00" +@.str12219 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str12220 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12221 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12222 = private unnamed_addr constant [12 x i8] c" store i8 \00" +@.str12223 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12224 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12225 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str12226 = private unnamed_addr constant [3 x i8] c" \00" +@.str12227 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12228 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12229 = private unnamed_addr constant [7 x i8] c", i32 \00" @.str12230 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12231 = private unnamed_addr constant [6 x i8] c" %fp\00" -@.str12232 = private unnamed_addr constant [20 x i8] c" = icmp sgt i32 %fv\00" -@.str12233 = private unnamed_addr constant [5 x i8] c", 0\0A\00" -@.str12234 = private unnamed_addr constant [6 x i8] c" %fd\00" -@.str12235 = private unnamed_addr constant [15 x i8] c" = sub i32 %fv\00" -@.str12236 = private unnamed_addr constant [5 x i8] c", 1\0A\00" -@.str12237 = private unnamed_addr constant [6 x i8] c" %fn\00" -@.str12238 = private unnamed_addr constant [17 x i8] c" = select i1 %fp\00" -@.str12239 = private unnamed_addr constant [10 x i8] c", i32 %fd\00" -@.str12240 = private unnamed_addr constant [10 x i8] c", i32 %fv\00" -@.str12241 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12242 = private unnamed_addr constant [16 x i8] c" store i32 %fn\00" -@.str12243 = private unnamed_addr constant [10 x i8] c", ptr %fa\00" -@.str12244 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12245 = private unnamed_addr constant [14 x i8] c" br label %c\00" -@.str12246 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12247 = private unnamed_addr constant [2 x i8] c"c\00" -@.str12248 = private unnamed_addr constant [20 x i8] c":\0A br label %next\0A\00" -@.str12249 = private unnamed_addr constant [66 x i8] c"next:\0A %i1 = add i32 %i, 1\0A br label %loop\0Adone:\0A ret void\0A}\0A\0A\00" -@.str12250 = private unnamed_addr constant [4 x i8] c"int\00" -@.str12251 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str12252 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12253 = private unnamed_addr constant [22 x i8] c"define i32 @L_prefab_\00" -@.str12254 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" -@.str12255 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str12256 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19455: index out of range: \00" -@.str12257 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19455: index out of range: \00" -@.str12258 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19464: index out of range: \00" -@.str12259 = private unnamed_addr constant [36 x i8] c"call i32 @lp_str_eq(ptr %name, ptr \00" -@.str12260 = private unnamed_addr constant [2 x i8] c")\00" -@.str12261 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str12262 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str12263 = private unnamed_addr constant [3 x i8] c"pf\00" -@.str12264 = private unnamed_addr constant [4 x i8] c"pfn\00" -@.str12265 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12266 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12267 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12268 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12269 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12270 = private unnamed_addr constant [20 x i8] c"call i32 @L_prefab_\00" -@.str12271 = private unnamed_addr constant [3 x i8] c"()\00" -@.str12272 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str12273 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12274 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12275 = private unnamed_addr constant [14 x i8] c" ret i32 -1\0A\00" -@.str12276 = private unnamed_addr constant [48 x i8] c"define i32 @L_spawn_prefab(ptr %name) {\0Aentry:\0A\00" -@.str12277 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str12278 = private unnamed_addr constant [6 x i8] c"Input\00" -@.str12279 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" -@.str12280 = private unnamed_addr constant [7 x i8] c"Update\00" -@.str12281 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" -@.str12282 = private unnamed_addr constant [7 x i8] c"Render\00" -@.str12283 = private unnamed_addr constant [6 x i8] c"Start\00" -@.str12284 = private unnamed_addr constant [7 x i8] c"OnQuit\00" -@.str12285 = private unnamed_addr constant [8 x i8] c"Overlay\00" -@.str12286 = private unnamed_addr constant [16 x i8] c"unknown phase '\00" -@.str12287 = private unnamed_addr constant [2 x i8] c"'\00" -@.str12288 = private unnamed_addr constant [6 x i8] c"Start\00" -@.str12289 = private unnamed_addr constant [6 x i8] c"Input\00" -@.str12290 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" -@.str12291 = private unnamed_addr constant [7 x i8] c"Update\00" -@.str12292 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" -@.str12293 = private unnamed_addr constant [7 x i8] c"Render\00" -@.str12294 = private unnamed_addr constant [8 x i8] c"Overlay\00" -@.str12295 = private unnamed_addr constant [44 x i8] c"declare i32 @ludic_register_prop(ptr, i32)\0A\00" -@.str12296 = private unnamed_addr constant [46 x i8] c"declare i32 @ludic_register_system(ptr, i32)\0A\00" -@.str12297 = private unnamed_addr constant [39 x i8] c"declare i64 @ludic_get(i32, i32, i32)\0A\00" -@.str12298 = private unnamed_addr constant [45 x i8] c"declare void @ludic_set(i32, i32, i32, i64)\0A\00" -@.str12299 = private unnamed_addr constant [34 x i8] c"declare i32 @ludic_has(i32, i32)\0A\00" -@.str12300 = private unnamed_addr constant [42 x i8] c"declare void @ludic_attach_dyn(i32, i32)\0A\00" -@.str12301 = private unnamed_addr constant [42 x i8] c"declare void @ludic_detach_dyn(i32, i32)\0A\00" -@.str12302 = private unnamed_addr constant [33 x i8] c"declare i32 @ludic_prop_id(ptr)\0A\00" -@.str12303 = private unnamed_addr constant [39 x i8] c"declare i32 @ludic_field_id(i32, ptr)\0A\00" -@.str12304 = private unnamed_addr constant [35 x i8] c"declare i32 @ludic_entity_count()\0A\00" -@.str12305 = private unnamed_addr constant [30 x i8] c"declare i32 @ludic_kind(i32)\0A\00" -@.str12306 = private unnamed_addr constant [34 x i8] c"declare i32 @ludic_model_id(ptr)\0A\00" -@.str12307 = private unnamed_addr constant [31 x i8] c"declare i32 @ludic_spawn(i32)\0A\00" -@.str12308 = private unnamed_addr constant [41 x i8] c"declare i32 @ludic_query_next(i32, i32)\0A\00" -@.str12309 = private unnamed_addr constant [33 x i8] c"declare i32 @ludic_prop_count()\0A\00" -@.str12310 = private unnamed_addr constant [35 x i8] c"declare ptr @ludic_prop_name(i32)\0A\00" -@.str12311 = private unnamed_addr constant [37 x i8] c"declare i32 @ludic_field_count(i32)\0A\00" -@.str12312 = private unnamed_addr constant [41 x i8] c"declare ptr @ludic_field_name(i32, i32)\0A\00" -@.str12313 = private unnamed_addr constant [41 x i8] c"declare ptr @ludic_field_type(i32, i32)\0A\00" -@.str12314 = private unnamed_addr constant [42 x i8] c"define void @__ludic_mod_init() {\0Aentry:\0A\00" -@.str12315 = private unnamed_addr constant [12 x i8] c"module_init\00" -@.str12316 = private unnamed_addr constant [31 x i8] c" call void @fn_module_init()\0A\00" -@.str12317 = private unnamed_addr constant [43 x i8] c" call i32 @ludic_register_system(ptr @fn_\00" -@.str12318 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19557: index out of range: \00" -@.str12319 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str12320 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19557: index out of range: \00" -@.str12321 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12322 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str12323 = private unnamed_addr constant [130 x i8] c"@llvm.global_ctors = appending global [1 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 65535, ptr @__ludic_mod_init, ptr null }]\0A\00" -@.str12324 = private unnamed_addr constant [22 x i8] c"@sysreg_fn = global [\00" -@.str12325 = private unnamed_addr constant [25 x i8] c" x ptr] zeroinitializer\0A\00" -@.str12326 = private unnamed_addr constant [25 x i8] c"@sysreg_phase = global [\00" -@.str12327 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" -@.str12328 = private unnamed_addr constant [30 x i8] c"@sysreg_count = global i32 0\0A\00" -@.str12329 = private unnamed_addr constant [65 x i8] c"define i32 @ludic_register_system(ptr %fn, i32 %phase) {\0Aentry:\0A\00" -@.str12330 = private unnamed_addr constant [36 x i8] c" %n = load i32, ptr @sysreg_count\0A\00" -@.str12331 = private unnamed_addr constant [26 x i8] c" %ok = icmp slt i32 %n, \00" -@.str12332 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12333 = private unnamed_addr constant [38 x i8] c" br i1 %ok, label %add, label %drop\0A\00" -@.str12334 = private unnamed_addr constant [6 x i8] c"add:\0A\00" -@.str12335 = private unnamed_addr constant [33 x i8] c" %fp = getelementptr inbounds [\00" -@.str12336 = private unnamed_addr constant [40 x i8] c" x ptr], ptr @sysreg_fn, i32 0, i32 %n\0A\00" -@.str12337 = private unnamed_addr constant [26 x i8] c" store ptr %fn, ptr %fp\0A\00" -@.str12338 = private unnamed_addr constant [33 x i8] c" %pp = getelementptr inbounds [\00" -@.str12339 = private unnamed_addr constant [43 x i8] c" x i32], ptr @sysreg_phase, i32 0, i32 %n\0A\00" -@.str12340 = private unnamed_addr constant [29 x i8] c" store i32 %phase, ptr %pp\0A\00" -@.str12341 = private unnamed_addr constant [71 x i8] c" %n1 = add i32 %n, 1\0A store i32 %n1, ptr @sysreg_count\0A ret i32 %n\0A\00" -@.str12342 = private unnamed_addr constant [23 x i8] c"drop:\0A ret i32 -1\0A}\0A\0A\00" -@.str12343 = private unnamed_addr constant [4 x i8] c"dsp\00" -@.str12344 = private unnamed_addr constant [4 x i8] c"dsh\00" -@.str12345 = private unnamed_addr constant [4 x i8] c"dsb\00" -@.str12346 = private unnamed_addr constant [5 x i8] c"dsdo\00" -@.str12347 = private unnamed_addr constant [4 x i8] c"dsc\00" -@.str12348 = private unnamed_addr constant [4 x i8] c"dsn\00" -@.str12349 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12350 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12351 = private unnamed_addr constant [15 x i8] c":\0A br label %\00" -@.str12352 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12353 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12354 = private unnamed_addr constant [3 x i8] c" \00" -@.str12355 = private unnamed_addr constant [18 x i8] c" = phi i32 [ 0, %\00" -@.str12356 = private unnamed_addr constant [7 x i8] c" ], [ \00" -@.str12357 = private unnamed_addr constant [4 x i8] c", %\00" -@.str12358 = private unnamed_addr constant [4 x i8] c" ]\0A\00" -@.str12359 = private unnamed_addr constant [28 x i8] c"load i32, ptr @sysreg_count\00" -@.str12360 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" -@.str12361 = private unnamed_addr constant [3 x i8] c", \00" -@.str12362 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12363 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12364 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12365 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12366 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12367 = private unnamed_addr constant [3 x i8] c" \00" -@.str12368 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12369 = private unnamed_addr constant [40 x i8] c" x i32], ptr @sysreg_phase, i32 0, i32 \00" -@.str12370 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12371 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str12372 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str12373 = private unnamed_addr constant [3 x i8] c", \00" -@.str12374 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12375 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12376 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12377 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12378 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12379 = private unnamed_addr constant [3 x i8] c" \00" -@.str12380 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12381 = private unnamed_addr constant [37 x i8] c" x ptr], ptr @sysreg_fn, i32 0, i32 \00" +@.str12231 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str12232 = private unnamed_addr constant [13 x i8] c" store ptr \00" +@.str12233 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12234 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12235 = private unnamed_addr constant [6 x i8] c"prop_\00" +@.str12236 = private unnamed_addr constant [9 x i8] c"_disable\00" +@.str12237 = private unnamed_addr constant [6 x i8] c"prop_\00" +@.str12238 = private unnamed_addr constant [8 x i8] c"_enable\00" +@.str12239 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12240 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str12241 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12242 = private unnamed_addr constant [5 x i8] c"@HE_\00" +@.str12243 = private unnamed_addr constant [5 x i8] c"@ME_\00" +@.str12244 = private unnamed_addr constant [5 x i8] c"@HE_\00" +@.str12245 = private unnamed_addr constant [2 x i8] c"_\00" +@.str12246 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str12247 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12248 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12249 = private unnamed_addr constant [5 x i8] c"void\00" +@.str12250 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" +@.str12251 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" +@.str12252 = private unnamed_addr constant [18 x i8] c"define void @sys_\00" +@.str12253 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" +@.str12254 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str12255 = private unnamed_addr constant [1 x i8] c"\00" +@.str12256 = private unnamed_addr constant [19 x i8] c"load i32, ptr @HE_\00" +@.str12257 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str12258 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str12259 = private unnamed_addr constant [19 x i8] c"load i32, ptr @LE_\00" +@.str12260 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str12261 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str12262 = private unnamed_addr constant [8 x i8] c"and i1 \00" +@.str12263 = private unnamed_addr constant [3 x i8] c", \00" +@.str12264 = private unnamed_addr constant [22 x i8] c"load i32, ptr @L_role\00" +@.str12265 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str12266 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str12267 = private unnamed_addr constant [8 x i8] c"and i1 \00" +@.str12268 = private unnamed_addr constant [3 x i8] c", \00" +@.str12269 = private unnamed_addr constant [5 x i8] c"hrun\00" +@.str12270 = private unnamed_addr constant [6 x i8] c"hskip\00" +@.str12271 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12272 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12273 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12274 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12275 = private unnamed_addr constant [20 x i8] c":\0A call void @sys_\00" +@.str12276 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12277 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12278 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12279 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12280 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12281 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12282 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19474: index out of range: \00" +@.str12283 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19474: index out of range: \00" +@.str12284 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19474: index out of range: \00" +@.str12285 = private unnamed_addr constant [7 x i8] c"Update\00" +@.str12286 = private unnamed_addr constant [11 x i8] c"esys_tween\00" +@.str12287 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12288 = private unnamed_addr constant [11 x i8] c"esys_tween\00" +@.str12289 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12290 = private unnamed_addr constant [29 x i8] c" call void @L_countdowns()\0A\00" +@.str12291 = private unnamed_addr constant [8 x i8] c"fx_tick\00" +@.str12292 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12293 = private unnamed_addr constant [8 x i8] c"fx_tick\00" +@.str12294 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12295 = private unnamed_addr constant [7 x i8] c"Render\00" +@.str12296 = private unnamed_addr constant [8 x i8] c"fx_draw\00" +@.str12297 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12298 = private unnamed_addr constant [8 x i8] c"fx_draw\00" +@.str12299 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12300 = private unnamed_addr constant [38 x i8] c"define void @L_countdowns() {\0Aentry:\0A\00" +@.str12301 = private unnamed_addr constant [53 x i8] c" %n = load i32, ptr @L_entc\0A br label %loop\0Aloop:\0A\00" +@.str12302 = private unnamed_addr constant [46 x i8] c" %i = phi i32 [ 0, %entry ], [ %i1, %next ]\0A\00" +@.str12303 = private unnamed_addr constant [73 x i8] c" %go = icmp slt i32 %i, %n\0A br i1 %go, label %body, label %done\0Abody:\0A\00" +@.str12304 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str12305 = private unnamed_addr constant [41 x i8] c" %ap = getelementptr inbounds i32, ptr \00" +@.str12306 = private unnamed_addr constant [10 x i8] c", i32 %i\0A\00" +@.str12307 = private unnamed_addr constant [96 x i8] c" %al = load i32, ptr %ap\0A %alive = icmp ne i32 %al, 0\0A br i1 %alive, label %c0, label %next\0A\00" +@.str12308 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19504: index out of range: \00" +@.str12309 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19508: index out of range: \00" +@.str12310 = private unnamed_addr constant [10 x i8] c"countdown\00" +@.str12311 = private unnamed_addr constant [2 x i8] c"c\00" +@.str12312 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12313 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str12314 = private unnamed_addr constant [5 x i8] c" %h\00" +@.str12315 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str12316 = private unnamed_addr constant [10 x i8] c", i32 %i\0A\00" +@.str12317 = private unnamed_addr constant [6 x i8] c" %hv\00" +@.str12318 = private unnamed_addr constant [19 x i8] c" = load i8, ptr %h\00" +@.str12319 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12320 = private unnamed_addr constant [7 x i8] c" %has\00" +@.str12321 = private unnamed_addr constant [18 x i8] c" = icmp ne i8 %hv\00" +@.str12322 = private unnamed_addr constant [5 x i8] c", 0\0A\00" +@.str12323 = private unnamed_addr constant [13 x i8] c" br i1 %has\00" +@.str12324 = private unnamed_addr constant [11 x i8] c", label %t\00" +@.str12325 = private unnamed_addr constant [11 x i8] c", label %c\00" +@.str12326 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12327 = private unnamed_addr constant [2 x i8] c"t\00" +@.str12328 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12329 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str12330 = private unnamed_addr constant [5 x i8] c" %s\00" +@.str12331 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12332 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12333 = private unnamed_addr constant [10 x i8] c", i32 %i\0A\00" +@.str12334 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19522: index out of range: \00" +@.str12335 = private unnamed_addr constant [10 x i8] c"countdown\00" +@.str12336 = private unnamed_addr constant [2 x i8] c"_\00" +@.str12337 = private unnamed_addr constant [6 x i8] c" %fa\00" +@.str12338 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12339 = private unnamed_addr constant [9 x i8] c", ptr %s\00" +@.str12340 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str12341 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12342 = private unnamed_addr constant [6 x i8] c" %fv\00" +@.str12343 = private unnamed_addr constant [21 x i8] c" = load i32, ptr %fa\00" +@.str12344 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12345 = private unnamed_addr constant [6 x i8] c" %fp\00" +@.str12346 = private unnamed_addr constant [20 x i8] c" = icmp sgt i32 %fv\00" +@.str12347 = private unnamed_addr constant [5 x i8] c", 0\0A\00" +@.str12348 = private unnamed_addr constant [6 x i8] c" %fd\00" +@.str12349 = private unnamed_addr constant [15 x i8] c" = sub i32 %fv\00" +@.str12350 = private unnamed_addr constant [5 x i8] c", 1\0A\00" +@.str12351 = private unnamed_addr constant [6 x i8] c" %fn\00" +@.str12352 = private unnamed_addr constant [17 x i8] c" = select i1 %fp\00" +@.str12353 = private unnamed_addr constant [10 x i8] c", i32 %fd\00" +@.str12354 = private unnamed_addr constant [10 x i8] c", i32 %fv\00" +@.str12355 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12356 = private unnamed_addr constant [16 x i8] c" store i32 %fn\00" +@.str12357 = private unnamed_addr constant [10 x i8] c", ptr %fa\00" +@.str12358 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12359 = private unnamed_addr constant [14 x i8] c" br label %c\00" +@.str12360 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12361 = private unnamed_addr constant [2 x i8] c"c\00" +@.str12362 = private unnamed_addr constant [20 x i8] c":\0A br label %next\0A\00" +@.str12363 = private unnamed_addr constant [66 x i8] c"next:\0A %i1 = add i32 %i, 1\0A br label %loop\0Adone:\0A ret void\0A}\0A\0A\00" +@.str12364 = private unnamed_addr constant [4 x i8] c"int\00" +@.str12365 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str12366 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12367 = private unnamed_addr constant [22 x i8] c"define i32 @L_prefab_\00" +@.str12368 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" +@.str12369 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str12370 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19564: index out of range: \00" +@.str12371 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19564: index out of range: \00" +@.str12372 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19573: index out of range: \00" +@.str12373 = private unnamed_addr constant [36 x i8] c"call i32 @lp_str_eq(ptr %name, ptr \00" +@.str12374 = private unnamed_addr constant [2 x i8] c")\00" +@.str12375 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str12376 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str12377 = private unnamed_addr constant [3 x i8] c"pf\00" +@.str12378 = private unnamed_addr constant [4 x i8] c"pfn\00" +@.str12379 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12380 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12381 = private unnamed_addr constant [10 x i8] c", label %\00" @.str12382 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12383 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" -@.str12384 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12385 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12386 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12383 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12384 = private unnamed_addr constant [20 x i8] c"call i32 @L_prefab_\00" +@.str12385 = private unnamed_addr constant [3 x i8] c"()\00" +@.str12386 = private unnamed_addr constant [11 x i8] c" ret i32 \00" @.str12387 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12388 = private unnamed_addr constant [5 x i8] c":\0A \00" -@.str12389 = private unnamed_addr constant [12 x i8] c" = add i32 \00" -@.str12390 = private unnamed_addr constant [17 x i8] c", 1\0A br label %\00" -@.str12391 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12392 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12393 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19617: index out of range: \00" -@.str12394 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19624: index out of range: \00" -@.str12395 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_scene\00" -@.str12396 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19629: index out of range: \00" -@.str12397 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str12398 = private unnamed_addr constant [3 x i8] c", \00" -@.str12399 = private unnamed_addr constant [6 x i8] c"scrun\00" -@.str12400 = private unnamed_addr constant [7 x i8] c"scskip\00" -@.str12401 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12402 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12403 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12404 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12405 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12406 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12407 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12408 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12409 = private unnamed_addr constant [8 x i8] c"Overlay\00" -@.str12410 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12411 = private unnamed_addr constant [14 x i8] c"drain_actions\00" -@.str12412 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12413 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19651: index out of range: \00" -@.str12414 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_scene\00" -@.str12415 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19656: index out of range: \00" -@.str12416 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str12417 = private unnamed_addr constant [3 x i8] c", \00" -@.str12418 = private unnamed_addr constant [5 x i8] c"mrun\00" -@.str12419 = private unnamed_addr constant [6 x i8] c"mskip\00" -@.str12420 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12421 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12422 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12423 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12424 = private unnamed_addr constant [15 x i8] c":\0A call void \00" -@.str12425 = private unnamed_addr constant [13 x i8] c"rt_ui_render\00" -@.str12426 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12427 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12428 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12429 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12430 = private unnamed_addr constant [5 x i8] c"void\00" -@.str12431 = private unnamed_addr constant [6 x i8] c"enter\00" -@.str12432 = private unnamed_addr constant [18 x i8] c"input_cursor_mode\00" -@.str12433 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12434 = private unnamed_addr constant [18 x i8] c"input_cursor_mode\00" -@.str12435 = private unnamed_addr constant [9 x i8] c"(i32 0)\0A\00" -@.str12436 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12437 = private unnamed_addr constant [11 x i8] c"rt_ui_open\00" -@.str12438 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str12439 = private unnamed_addr constant [4 x i8] c"UI_\00" -@.str12440 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12441 = private unnamed_addr constant [5 x i8] c"exit\00" -@.str12442 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12443 = private unnamed_addr constant [12 x i8] c"rt_ui_close\00" -@.str12444 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12445 = private unnamed_addr constant [7 x i8] c"scene_\00" -@.str12446 = private unnamed_addr constant [2 x i8] c"_\00" -@.str12447 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12448 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str12449 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" -@.str12450 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" -@.str12451 = private unnamed_addr constant [20 x i8] c"define void @scene_\00" -@.str12452 = private unnamed_addr constant [2 x i8] c"_\00" -@.str12453 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" -@.str12454 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str12455 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19700: index out of range: \00" -@.str12456 = private unnamed_addr constant [6 x i8] c"enter\00" -@.str12457 = private unnamed_addr constant [5 x i8] c"exit\00" -@.str12458 = private unnamed_addr constant [39 x i8] c"define void @L_scene_leave() {\0Aentry:\0A\00" -@.str12459 = private unnamed_addr constant [31 x i8] c" %s = load i32, ptr @L_scene\0A\00" -@.str12460 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19718: index out of range: \00" -@.str12461 = private unnamed_addr constant [6 x i8] c" %is\00" -@.str12462 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %s, \00" -@.str12463 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12464 = private unnamed_addr constant [12 x i8] c" br i1 %is\00" -@.str12465 = private unnamed_addr constant [15 x i8] c", label %leave\00" -@.str12466 = private unnamed_addr constant [14 x i8] c", label %next\00" -@.str12467 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12468 = private unnamed_addr constant [6 x i8] c"leave\00" -@.str12469 = private unnamed_addr constant [27 x i8] c":\0A call void @scene_exit_\00" -@.str12470 = private unnamed_addr constant [15 x i8] c"()\0A ret void\0A\00" -@.str12471 = private unnamed_addr constant [5 x i8] c"next\00" -@.str12472 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12473 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str12474 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19736: index out of range: \00" -@.str12475 = private unnamed_addr constant [5 x i8] c"void\00" -@.str12476 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str12477 = private unnamed_addr constant [26 x i8] c" store i32 %reason, ptr \00" -@.str12478 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12479 = private unnamed_addr constant [4 x i8] c"int\00" -@.str12480 = private unnamed_addr constant [3 x i8] c"%e\00" -@.str12481 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" -@.str12482 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" -@.str12483 = private unnamed_addr constant [25 x i8] c"define void @on_despawn_\00" -@.str12484 = private unnamed_addr constant [32 x i8] c"(i32 %e, i32 %reason) {\0Aentry:\0A\00" -@.str12485 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str12486 = private unnamed_addr constant [48 x i8] c"define void @fn_world_despawn(i32 %e) {\0Aentry:\0A\00" -@.str12487 = private unnamed_addr constant [33 x i8] c" %kp = getelementptr inbounds [\00" -@.str12488 = private unnamed_addr constant [37 x i8] c" x i32], ptr @L_kind, i32 0, i32 %e\0A\00" -@.str12489 = private unnamed_addr constant [26 x i8] c" %k = load i32, ptr %kp\0A\00" -@.str12490 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19777: index out of range: \00" -@.str12491 = private unnamed_addr constant [5 x i8] c" %c\00" -@.str12492 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" -@.str12493 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12494 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" -@.str12495 = private unnamed_addr constant [13 x i8] c", label %hit\00" -@.str12496 = private unnamed_addr constant [14 x i8] c", label %next\00" -@.str12497 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12498 = private unnamed_addr constant [4 x i8] c"hit\00" -@.str12499 = private unnamed_addr constant [27 x i8] c":\0A call void @on_despawn_\00" -@.str12500 = private unnamed_addr constant [17 x i8] c"(i32 %e, i32 0)\0A\00" -@.str12501 = private unnamed_addr constant [7 x i8] c"model_\00" -@.str12502 = private unnamed_addr constant [9 x i8] c"_despawn\00" -@.str12503 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12504 = private unnamed_addr constant [17 x i8] c"(i32 %e, i32 0)\0A\00" -@.str12505 = private unnamed_addr constant [17 x i8] c" br label %next\00" -@.str12506 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12507 = private unnamed_addr constant [5 x i8] c"next\00" -@.str12508 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12509 = private unnamed_addr constant [41 x i8] c" call void @ludic_sweep_entity(i32 %e)\0A\00" -@.str12510 = private unnamed_addr constant [36 x i8] c" call void @L_free_entity(i32 %e)\0A\00" -@.str12511 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str12512 = private unnamed_addr constant [67 x i8] c"define void @L_despawn_all(i32 %reason) {\0Aentry:\0A br label %loop\0A\00" -@.str12513 = private unnamed_addr constant [52 x i8] c"loop:\0A %i = phi i32 [ 0, %entry ], [ %i1, %cont ]\0A\00" -@.str12514 = private unnamed_addr constant [58 x i8] c" %n = load i32, ptr @L_entc\0A %go = icmp slt i32 %i, %n\0A\00" -@.str12515 = private unnamed_addr constant [38 x i8] c" br i1 %go, label %body, label %fin\0A\00" -@.str12516 = private unnamed_addr constant [39 x i8] c"body:\0A %ap = getelementptr inbounds [\00" -@.str12517 = private unnamed_addr constant [38 x i8] c" x i32], ptr @L_alive, i32 0, i32 %i\0A\00" -@.str12518 = private unnamed_addr constant [55 x i8] c" %al = load i32, ptr %ap\0A %isa = icmp ne i32 %al, 0\0A\00" -@.str12519 = private unnamed_addr constant [38 x i8] c" br i1 %isa, label %do, label %cont\0A\00" -@.str12520 = private unnamed_addr constant [37 x i8] c"do:\0A %kp = getelementptr inbounds [\00" -@.str12521 = private unnamed_addr constant [37 x i8] c" x i32], ptr @L_kind, i32 0, i32 %i\0A\00" -@.str12522 = private unnamed_addr constant [26 x i8] c" %k = load i32, ptr %kp\0A\00" -@.str12523 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19814: index out of range: \00" -@.str12524 = private unnamed_addr constant [5 x i8] c" %c\00" -@.str12525 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" -@.str12526 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12527 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" -@.str12528 = private unnamed_addr constant [13 x i8] c", label %hit\00" -@.str12529 = private unnamed_addr constant [14 x i8] c", label %next\00" -@.str12530 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12531 = private unnamed_addr constant [4 x i8] c"hit\00" -@.str12532 = private unnamed_addr constant [27 x i8] c":\0A call void @on_despawn_\00" -@.str12533 = private unnamed_addr constant [23 x i8] c"(i32 %i, i32 %reason)\0A\00" -@.str12534 = private unnamed_addr constant [7 x i8] c"model_\00" -@.str12535 = private unnamed_addr constant [9 x i8] c"_despawn\00" -@.str12536 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str12537 = private unnamed_addr constant [23 x i8] c"(i32 %i, i32 %reason)\0A\00" -@.str12538 = private unnamed_addr constant [17 x i8] c" br label %next\00" -@.str12539 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12540 = private unnamed_addr constant [5 x i8] c"next\00" -@.str12541 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12542 = private unnamed_addr constant [18 x i8] c" br label %cont\0A\00" -@.str12543 = private unnamed_addr constant [46 x i8] c"cont:\0A %i1 = add i32 %i, 1\0A br label %loop\0A\00" -@.str12544 = private unnamed_addr constant [20 x i8] c"fin:\0A ret void\0A}\0A\0A\00" -@.str12545 = private unnamed_addr constant [26 x i8] c"@ev_depth = global i32 0\0A\00" -@.str12546 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19856: index out of range: \00" -@.str12547 = private unnamed_addr constant [5 x i8] c"%Ev_\00" -@.str12548 = private unnamed_addr constant [11 x i8] c" = type { \00" -@.str12549 = private unnamed_addr constant [3 x i8] c", \00" -@.str12550 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19867: index out of range: \00" -@.str12551 = private unnamed_addr constant [3 x i8] c", \00" -@.str12552 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str12553 = private unnamed_addr constant [4 x i8] c" }\0A\00" -@.str12554 = private unnamed_addr constant [6 x i8] c"@evL_\00" -@.str12555 = private unnamed_addr constant [12 x i8] c" = global [\00" -@.str12556 = private unnamed_addr constant [25 x i8] c" x ptr] zeroinitializer\0A\00" -@.str12557 = private unnamed_addr constant [6 x i8] c"@evN_\00" -@.str12558 = private unnamed_addr constant [17 x i8] c" = global i32 0\0A\00" -@.str12559 = private unnamed_addr constant [6 x i8] c"@evO_\00" -@.str12560 = private unnamed_addr constant [12 x i8] c" = global [\00" -@.str12561 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" -@.str12562 = private unnamed_addr constant [22 x i8] c"define i32 @ludic_on_\00" -@.str12563 = private unnamed_addr constant [20 x i8] c"(ptr %cb) {\0Aentry:\0A\00" -@.str12564 = private unnamed_addr constant [27 x i8] c" %n = load i32, ptr @evN_\00" -@.str12565 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12566 = private unnamed_addr constant [28 x i8] c" %full = icmp slt i32 %n, \00" -@.str12567 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12568 = private unnamed_addr constant [40 x i8] c" br i1 %full, label %add, label %drop\0A\00" -@.str12569 = private unnamed_addr constant [40 x i8] c"add:\0A %slot = getelementptr inbounds [\00" -@.str12570 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" -@.str12571 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" -@.str12572 = private unnamed_addr constant [28 x i8] c" store ptr %cb, ptr %slot\0A\00" -@.str12573 = private unnamed_addr constant [36 x i8] c" %oslot = getelementptr inbounds [\00" -@.str12574 = private unnamed_addr constant [19 x i8] c" x i32], ptr @evO_\00" -@.str12575 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" -@.str12576 = private unnamed_addr constant [28 x i8] c" store i32 -1, ptr %oslot\0A\00" -@.str12577 = private unnamed_addr constant [49 x i8] c" %n1 = add i32 %n, 1\0A store i32 %n1, ptr @evN_\00" -@.str12578 = private unnamed_addr constant [15 x i8] c"\0A ret i32 %n\0A\00" -@.str12579 = private unnamed_addr constant [23 x i8] c"drop:\0A ret i32 -1\0A}\0A\0A\00" -@.str12580 = private unnamed_addr constant [29 x i8] c"define i32 @ludic_on_entity_\00" -@.str12581 = private unnamed_addr constant [32 x i8] c"(i32 %owner, ptr %cb) {\0Aentry:\0A\00" -@.str12582 = private unnamed_addr constant [27 x i8] c" %n = load i32, ptr @evN_\00" -@.str12583 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12584 = private unnamed_addr constant [28 x i8] c" %full = icmp slt i32 %n, \00" -@.str12585 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12586 = private unnamed_addr constant [40 x i8] c" br i1 %full, label %add, label %drop\0A\00" -@.str12587 = private unnamed_addr constant [40 x i8] c"add:\0A %slot = getelementptr inbounds [\00" -@.str12588 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" -@.str12589 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" -@.str12590 = private unnamed_addr constant [28 x i8] c" store ptr %cb, ptr %slot\0A\00" -@.str12591 = private unnamed_addr constant [36 x i8] c" %oslot = getelementptr inbounds [\00" -@.str12592 = private unnamed_addr constant [19 x i8] c" x i32], ptr @evO_\00" -@.str12593 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" -@.str12594 = private unnamed_addr constant [32 x i8] c" store i32 %owner, ptr %oslot\0A\00" -@.str12595 = private unnamed_addr constant [49 x i8] c" %n1 = add i32 %n, 1\0A store i32 %n1, ptr @evN_\00" -@.str12596 = private unnamed_addr constant [15 x i8] c"\0A ret i32 %n\0A\00" -@.str12597 = private unnamed_addr constant [23 x i8] c"drop:\0A ret i32 -1\0A}\0A\0A\00" -@.str12598 = private unnamed_addr constant [24 x i8] c"define void @ludic_off_\00" -@.str12599 = private unnamed_addr constant [21 x i8] c"(i32 %tok) {\0Aentry:\0A\00" -@.str12600 = private unnamed_addr constant [27 x i8] c" %n = load i32, ptr @evN_\00" -@.str12601 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12602 = private unnamed_addr constant [84 x i8] c" %lo = icmp sge i32 %tok, 0\0A %hi = icmp slt i32 %tok, %n\0A %ok = and i1 %lo, %hi\0A\00" -@.str12603 = private unnamed_addr constant [37 x i8] c" br i1 %ok, label %do, label %skip\0A\00" -@.str12604 = private unnamed_addr constant [39 x i8] c"do:\0A %slot = getelementptr inbounds [\00" -@.str12605 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" -@.str12606 = private unnamed_addr constant [19 x i8] c", i32 0, i32 %tok\0A\00" -@.str12607 = private unnamed_addr constant [46 x i8] c" store ptr null, ptr %slot\0A br label %skip\0A\00" -@.str12608 = private unnamed_addr constant [21 x i8] c"skip:\0A ret void\0A}\0A\0A\00" -@.str12609 = private unnamed_addr constant [5 x i8] c"void\00" -@.str12610 = private unnamed_addr constant [34 x i8] c" %evd = load i32, ptr @ev_depth\0A\00" -@.str12611 = private unnamed_addr constant [32 x i8] c" %evover = icmp sge i32 %evd, \00" +@.str12388 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12389 = private unnamed_addr constant [14 x i8] c" ret i32 -1\0A\00" +@.str12390 = private unnamed_addr constant [48 x i8] c"define i32 @L_spawn_prefab(ptr %name) {\0Aentry:\0A\00" +@.str12391 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str12392 = private unnamed_addr constant [6 x i8] c"Input\00" +@.str12393 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" +@.str12394 = private unnamed_addr constant [7 x i8] c"Update\00" +@.str12395 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" +@.str12396 = private unnamed_addr constant [7 x i8] c"Render\00" +@.str12397 = private unnamed_addr constant [6 x i8] c"Start\00" +@.str12398 = private unnamed_addr constant [7 x i8] c"OnQuit\00" +@.str12399 = private unnamed_addr constant [8 x i8] c"Overlay\00" +@.str12400 = private unnamed_addr constant [16 x i8] c"unknown phase '\00" +@.str12401 = private unnamed_addr constant [2 x i8] c"'\00" +@.str12402 = private unnamed_addr constant [6 x i8] c"Start\00" +@.str12403 = private unnamed_addr constant [6 x i8] c"Input\00" +@.str12404 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" +@.str12405 = private unnamed_addr constant [7 x i8] c"Update\00" +@.str12406 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" +@.str12407 = private unnamed_addr constant [7 x i8] c"Render\00" +@.str12408 = private unnamed_addr constant [8 x i8] c"Overlay\00" +@.str12409 = private unnamed_addr constant [44 x i8] c"declare i32 @ludic_register_prop(ptr, i32)\0A\00" +@.str12410 = private unnamed_addr constant [46 x i8] c"declare i32 @ludic_register_system(ptr, i32)\0A\00" +@.str12411 = private unnamed_addr constant [39 x i8] c"declare i64 @ludic_get(i32, i32, i32)\0A\00" +@.str12412 = private unnamed_addr constant [45 x i8] c"declare void @ludic_set(i32, i32, i32, i64)\0A\00" +@.str12413 = private unnamed_addr constant [34 x i8] c"declare i32 @ludic_has(i32, i32)\0A\00" +@.str12414 = private unnamed_addr constant [42 x i8] c"declare void @ludic_attach_dyn(i32, i32)\0A\00" +@.str12415 = private unnamed_addr constant [42 x i8] c"declare void @ludic_detach_dyn(i32, i32)\0A\00" +@.str12416 = private unnamed_addr constant [33 x i8] c"declare i32 @ludic_prop_id(ptr)\0A\00" +@.str12417 = private unnamed_addr constant [39 x i8] c"declare i32 @ludic_field_id(i32, ptr)\0A\00" +@.str12418 = private unnamed_addr constant [35 x i8] c"declare i32 @ludic_entity_count()\0A\00" +@.str12419 = private unnamed_addr constant [30 x i8] c"declare i32 @ludic_kind(i32)\0A\00" +@.str12420 = private unnamed_addr constant [34 x i8] c"declare i32 @ludic_model_id(ptr)\0A\00" +@.str12421 = private unnamed_addr constant [31 x i8] c"declare i32 @ludic_spawn(i32)\0A\00" +@.str12422 = private unnamed_addr constant [41 x i8] c"declare i32 @ludic_query_next(i32, i32)\0A\00" +@.str12423 = private unnamed_addr constant [33 x i8] c"declare i32 @ludic_prop_count()\0A\00" +@.str12424 = private unnamed_addr constant [35 x i8] c"declare ptr @ludic_prop_name(i32)\0A\00" +@.str12425 = private unnamed_addr constant [37 x i8] c"declare i32 @ludic_field_count(i32)\0A\00" +@.str12426 = private unnamed_addr constant [41 x i8] c"declare ptr @ludic_field_name(i32, i32)\0A\00" +@.str12427 = private unnamed_addr constant [41 x i8] c"declare ptr @ludic_field_type(i32, i32)\0A\00" +@.str12428 = private unnamed_addr constant [42 x i8] c"define void @__ludic_mod_init() {\0Aentry:\0A\00" +@.str12429 = private unnamed_addr constant [12 x i8] c"module_init\00" +@.str12430 = private unnamed_addr constant [31 x i8] c" call void @fn_module_init()\0A\00" +@.str12431 = private unnamed_addr constant [43 x i8] c" call i32 @ludic_register_system(ptr @fn_\00" +@.str12432 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19666: index out of range: \00" +@.str12433 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str12434 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19666: index out of range: \00" +@.str12435 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12436 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str12437 = private unnamed_addr constant [130 x i8] c"@llvm.global_ctors = appending global [1 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 65535, ptr @__ludic_mod_init, ptr null }]\0A\00" +@.str12438 = private unnamed_addr constant [22 x i8] c"@sysreg_fn = global [\00" +@.str12439 = private unnamed_addr constant [25 x i8] c" x ptr] zeroinitializer\0A\00" +@.str12440 = private unnamed_addr constant [25 x i8] c"@sysreg_phase = global [\00" +@.str12441 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" +@.str12442 = private unnamed_addr constant [30 x i8] c"@sysreg_count = global i32 0\0A\00" +@.str12443 = private unnamed_addr constant [65 x i8] c"define i32 @ludic_register_system(ptr %fn, i32 %phase) {\0Aentry:\0A\00" +@.str12444 = private unnamed_addr constant [36 x i8] c" %n = load i32, ptr @sysreg_count\0A\00" +@.str12445 = private unnamed_addr constant [26 x i8] c" %ok = icmp slt i32 %n, \00" +@.str12446 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12447 = private unnamed_addr constant [38 x i8] c" br i1 %ok, label %add, label %drop\0A\00" +@.str12448 = private unnamed_addr constant [6 x i8] c"add:\0A\00" +@.str12449 = private unnamed_addr constant [33 x i8] c" %fp = getelementptr inbounds [\00" +@.str12450 = private unnamed_addr constant [40 x i8] c" x ptr], ptr @sysreg_fn, i32 0, i32 %n\0A\00" +@.str12451 = private unnamed_addr constant [26 x i8] c" store ptr %fn, ptr %fp\0A\00" +@.str12452 = private unnamed_addr constant [33 x i8] c" %pp = getelementptr inbounds [\00" +@.str12453 = private unnamed_addr constant [43 x i8] c" x i32], ptr @sysreg_phase, i32 0, i32 %n\0A\00" +@.str12454 = private unnamed_addr constant [29 x i8] c" store i32 %phase, ptr %pp\0A\00" +@.str12455 = private unnamed_addr constant [71 x i8] c" %n1 = add i32 %n, 1\0A store i32 %n1, ptr @sysreg_count\0A ret i32 %n\0A\00" +@.str12456 = private unnamed_addr constant [23 x i8] c"drop:\0A ret i32 -1\0A}\0A\0A\00" +@.str12457 = private unnamed_addr constant [4 x i8] c"dsp\00" +@.str12458 = private unnamed_addr constant [4 x i8] c"dsh\00" +@.str12459 = private unnamed_addr constant [4 x i8] c"dsb\00" +@.str12460 = private unnamed_addr constant [5 x i8] c"dsdo\00" +@.str12461 = private unnamed_addr constant [4 x i8] c"dsc\00" +@.str12462 = private unnamed_addr constant [4 x i8] c"dsn\00" +@.str12463 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12464 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12465 = private unnamed_addr constant [15 x i8] c":\0A br label %\00" +@.str12466 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12467 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12468 = private unnamed_addr constant [3 x i8] c" \00" +@.str12469 = private unnamed_addr constant [18 x i8] c" = phi i32 [ 0, %\00" +@.str12470 = private unnamed_addr constant [7 x i8] c" ], [ \00" +@.str12471 = private unnamed_addr constant [4 x i8] c", %\00" +@.str12472 = private unnamed_addr constant [4 x i8] c" ]\0A\00" +@.str12473 = private unnamed_addr constant [28 x i8] c"load i32, ptr @sysreg_count\00" +@.str12474 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" +@.str12475 = private unnamed_addr constant [3 x i8] c", \00" +@.str12476 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12477 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12478 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12479 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12480 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12481 = private unnamed_addr constant [3 x i8] c" \00" +@.str12482 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" +@.str12483 = private unnamed_addr constant [40 x i8] c" x i32], ptr @sysreg_phase, i32 0, i32 \00" +@.str12484 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12485 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str12486 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str12487 = private unnamed_addr constant [3 x i8] c", \00" +@.str12488 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12489 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12490 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12491 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12492 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12493 = private unnamed_addr constant [3 x i8] c" \00" +@.str12494 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" +@.str12495 = private unnamed_addr constant [37 x i8] c" x ptr], ptr @sysreg_fn, i32 0, i32 \00" +@.str12496 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12497 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" +@.str12498 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12499 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12500 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12501 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12502 = private unnamed_addr constant [5 x i8] c":\0A \00" +@.str12503 = private unnamed_addr constant [12 x i8] c" = add i32 \00" +@.str12504 = private unnamed_addr constant [17 x i8] c", 1\0A br label %\00" +@.str12505 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12506 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12507 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19726: index out of range: \00" +@.str12508 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19733: index out of range: \00" +@.str12509 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_scene\00" +@.str12510 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19738: index out of range: \00" +@.str12511 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str12512 = private unnamed_addr constant [3 x i8] c", \00" +@.str12513 = private unnamed_addr constant [6 x i8] c"scrun\00" +@.str12514 = private unnamed_addr constant [7 x i8] c"scskip\00" +@.str12515 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12516 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12517 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12518 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12519 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12520 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12521 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12522 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12523 = private unnamed_addr constant [8 x i8] c"Overlay\00" +@.str12524 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12525 = private unnamed_addr constant [14 x i8] c"drain_actions\00" +@.str12526 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12527 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19760: index out of range: \00" +@.str12528 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_scene\00" +@.str12529 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19765: index out of range: \00" +@.str12530 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str12531 = private unnamed_addr constant [3 x i8] c", \00" +@.str12532 = private unnamed_addr constant [5 x i8] c"mrun\00" +@.str12533 = private unnamed_addr constant [6 x i8] c"mskip\00" +@.str12534 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12535 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12536 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12537 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12538 = private unnamed_addr constant [15 x i8] c":\0A call void \00" +@.str12539 = private unnamed_addr constant [13 x i8] c"rt_ui_render\00" +@.str12540 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12541 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12542 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12543 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12544 = private unnamed_addr constant [5 x i8] c"void\00" +@.str12545 = private unnamed_addr constant [6 x i8] c"enter\00" +@.str12546 = private unnamed_addr constant [18 x i8] c"input_cursor_mode\00" +@.str12547 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12548 = private unnamed_addr constant [18 x i8] c"input_cursor_mode\00" +@.str12549 = private unnamed_addr constant [9 x i8] c"(i32 0)\0A\00" +@.str12550 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12551 = private unnamed_addr constant [11 x i8] c"rt_ui_open\00" +@.str12552 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str12553 = private unnamed_addr constant [4 x i8] c"UI_\00" +@.str12554 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12555 = private unnamed_addr constant [5 x i8] c"exit\00" +@.str12556 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12557 = private unnamed_addr constant [12 x i8] c"rt_ui_close\00" +@.str12558 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12559 = private unnamed_addr constant [7 x i8] c"scene_\00" +@.str12560 = private unnamed_addr constant [2 x i8] c"_\00" +@.str12561 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12562 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str12563 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" +@.str12564 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" +@.str12565 = private unnamed_addr constant [20 x i8] c"define void @scene_\00" +@.str12566 = private unnamed_addr constant [2 x i8] c"_\00" +@.str12567 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" +@.str12568 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str12569 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19809: index out of range: \00" +@.str12570 = private unnamed_addr constant [6 x i8] c"enter\00" +@.str12571 = private unnamed_addr constant [5 x i8] c"exit\00" +@.str12572 = private unnamed_addr constant [39 x i8] c"define void @L_scene_leave() {\0Aentry:\0A\00" +@.str12573 = private unnamed_addr constant [31 x i8] c" %s = load i32, ptr @L_scene\0A\00" +@.str12574 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19827: index out of range: \00" +@.str12575 = private unnamed_addr constant [6 x i8] c" %is\00" +@.str12576 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %s, \00" +@.str12577 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12578 = private unnamed_addr constant [12 x i8] c" br i1 %is\00" +@.str12579 = private unnamed_addr constant [15 x i8] c", label %leave\00" +@.str12580 = private unnamed_addr constant [14 x i8] c", label %next\00" +@.str12581 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12582 = private unnamed_addr constant [6 x i8] c"leave\00" +@.str12583 = private unnamed_addr constant [27 x i8] c":\0A call void @scene_exit_\00" +@.str12584 = private unnamed_addr constant [15 x i8] c"()\0A ret void\0A\00" +@.str12585 = private unnamed_addr constant [5 x i8] c"next\00" +@.str12586 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12587 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str12588 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19845: index out of range: \00" +@.str12589 = private unnamed_addr constant [5 x i8] c"void\00" +@.str12590 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str12591 = private unnamed_addr constant [26 x i8] c" store i32 %reason, ptr \00" +@.str12592 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12593 = private unnamed_addr constant [4 x i8] c"int\00" +@.str12594 = private unnamed_addr constant [3 x i8] c"%e\00" +@.str12595 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" +@.str12596 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" +@.str12597 = private unnamed_addr constant [25 x i8] c"define void @on_despawn_\00" +@.str12598 = private unnamed_addr constant [32 x i8] c"(i32 %e, i32 %reason) {\0Aentry:\0A\00" +@.str12599 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str12600 = private unnamed_addr constant [48 x i8] c"define void @fn_world_despawn(i32 %e) {\0Aentry:\0A\00" +@.str12601 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str12602 = private unnamed_addr constant [41 x i8] c" %kp = getelementptr inbounds i32, ptr \00" +@.str12603 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str12604 = private unnamed_addr constant [26 x i8] c" %k = load i32, ptr %kp\0A\00" +@.str12605 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19887: index out of range: \00" +@.str12606 = private unnamed_addr constant [5 x i8] c" %c\00" +@.str12607 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" +@.str12608 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12609 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" +@.str12610 = private unnamed_addr constant [13 x i8] c", label %hit\00" +@.str12611 = private unnamed_addr constant [14 x i8] c", label %next\00" @.str12612 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12613 = private unnamed_addr constant [44 x i8] c" br i1 %evover, label %evcap, label %evgo\0A\00" -@.str12614 = private unnamed_addr constant [8 x i8] c"evcap:\0A\00" -@.str12615 = private unnamed_addr constant [13 x i8] c" ret i32 0\0A\00" -@.str12616 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" -@.str12617 = private unnamed_addr constant [7 x i8] c"evgo:\0A\00" -@.str12618 = private unnamed_addr constant [60 x i8] c" %evd1 = add i32 %evd, 1\0A store i32 %evd1, ptr @ev_depth\0A\00" -@.str12619 = private unnamed_addr constant [5 x i8] c"%Ev_\00" -@.str12620 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19933: index out of range: \00" -@.str12621 = private unnamed_addr constant [3 x i8] c" \00" -@.str12622 = private unnamed_addr constant [31 x i8] c" = getelementptr inbounds %Ev_\00" -@.str12623 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12624 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12625 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12626 = private unnamed_addr constant [9 x i8] c" store \00" -@.str12627 = private unnamed_addr constant [4 x i8] c" %p\00" -@.str12628 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12629 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12630 = private unnamed_addr constant [9 x i8] c" store \00" -@.str12631 = private unnamed_addr constant [4 x i8] c" %p\00" -@.str12632 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12633 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12634 = private unnamed_addr constant [3 x i8] c" \00" -@.str12635 = private unnamed_addr constant [31 x i8] c" = getelementptr inbounds %Ev_\00" -@.str12636 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12637 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12638 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12639 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" -@.str12640 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12641 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19952: index out of range: \00" -@.str12642 = private unnamed_addr constant [7 x i8] c"evnext\00" -@.str12643 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19958: index out of range: \00" -@.str12644 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19960: index out of range: \00" -@.str12645 = private unnamed_addr constant [4 x i8] c"ret\00" -@.str12646 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12647 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12648 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12649 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str12650 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" -@.str12651 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12652 = private unnamed_addr constant [4 x i8] c"evl\00" -@.str12653 = private unnamed_addr constant [4 x i8] c"evb\00" -@.str12654 = private unnamed_addr constant [4 x i8] c"evd\00" -@.str12655 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12656 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12657 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12658 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str12659 = private unnamed_addr constant [20 x i8] c"load i32, ptr @evN_\00" -@.str12660 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" -@.str12661 = private unnamed_addr constant [3 x i8] c", \00" -@.str12662 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12663 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12664 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12665 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12666 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12667 = private unnamed_addr constant [3 x i8] c" \00" -@.str12668 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12669 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" -@.str12670 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12671 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12672 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" -@.str12673 = private unnamed_addr constant [13 x i8] c"icmp eq ptr \00" -@.str12674 = private unnamed_addr constant [7 x i8] c", null\00" -@.str12675 = private unnamed_addr constant [5 x i8] c"evdo\00" -@.str12676 = private unnamed_addr constant [5 x i8] c"evsk\00" -@.str12677 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str12678 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12679 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str12680 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12681 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12682 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str12683 = private unnamed_addr constant [6 x i8] c"(ptr \00" -@.str12684 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12685 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12613 = private unnamed_addr constant [4 x i8] c"hit\00" +@.str12614 = private unnamed_addr constant [27 x i8] c":\0A call void @on_despawn_\00" +@.str12615 = private unnamed_addr constant [17 x i8] c"(i32 %e, i32 0)\0A\00" +@.str12616 = private unnamed_addr constant [7 x i8] c"model_\00" +@.str12617 = private unnamed_addr constant [9 x i8] c"_despawn\00" +@.str12618 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12619 = private unnamed_addr constant [17 x i8] c"(i32 %e, i32 0)\0A\00" +@.str12620 = private unnamed_addr constant [17 x i8] c" br label %next\00" +@.str12621 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12622 = private unnamed_addr constant [5 x i8] c"next\00" +@.str12623 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12624 = private unnamed_addr constant [41 x i8] c" call void @ludic_sweep_entity(i32 %e)\0A\00" +@.str12625 = private unnamed_addr constant [36 x i8] c" call void @L_free_entity(i32 %e)\0A\00" +@.str12626 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str12627 = private unnamed_addr constant [67 x i8] c"define void @L_despawn_all(i32 %reason) {\0Aentry:\0A br label %loop\0A\00" +@.str12628 = private unnamed_addr constant [52 x i8] c"loop:\0A %i = phi i32 [ 0, %entry ], [ %i1, %cont ]\0A\00" +@.str12629 = private unnamed_addr constant [58 x i8] c" %n = load i32, ptr @L_entc\0A %go = icmp slt i32 %i, %n\0A\00" +@.str12630 = private unnamed_addr constant [38 x i8] c" br i1 %go, label %body, label %fin\0A\00" +@.str12631 = private unnamed_addr constant [7 x i8] c"body:\0A\00" +@.str12632 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str12633 = private unnamed_addr constant [41 x i8] c" %ap = getelementptr inbounds i32, ptr \00" +@.str12634 = private unnamed_addr constant [10 x i8] c", i32 %i\0A\00" +@.str12635 = private unnamed_addr constant [55 x i8] c" %al = load i32, ptr %ap\0A %isa = icmp ne i32 %al, 0\0A\00" +@.str12636 = private unnamed_addr constant [38 x i8] c" br i1 %isa, label %do, label %cont\0A\00" +@.str12637 = private unnamed_addr constant [5 x i8] c"do:\0A\00" +@.str12638 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str12639 = private unnamed_addr constant [41 x i8] c" %kp = getelementptr inbounds i32, ptr \00" +@.str12640 = private unnamed_addr constant [10 x i8] c", i32 %i\0A\00" +@.str12641 = private unnamed_addr constant [26 x i8] c" %k = load i32, ptr %kp\0A\00" +@.str12642 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19928: index out of range: \00" +@.str12643 = private unnamed_addr constant [5 x i8] c" %c\00" +@.str12644 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" +@.str12645 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12646 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" +@.str12647 = private unnamed_addr constant [13 x i8] c", label %hit\00" +@.str12648 = private unnamed_addr constant [14 x i8] c", label %next\00" +@.str12649 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12650 = private unnamed_addr constant [4 x i8] c"hit\00" +@.str12651 = private unnamed_addr constant [27 x i8] c":\0A call void @on_despawn_\00" +@.str12652 = private unnamed_addr constant [23 x i8] c"(i32 %i, i32 %reason)\0A\00" +@.str12653 = private unnamed_addr constant [7 x i8] c"model_\00" +@.str12654 = private unnamed_addr constant [9 x i8] c"_despawn\00" +@.str12655 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str12656 = private unnamed_addr constant [23 x i8] c"(i32 %i, i32 %reason)\0A\00" +@.str12657 = private unnamed_addr constant [17 x i8] c" br label %next\00" +@.str12658 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12659 = private unnamed_addr constant [5 x i8] c"next\00" +@.str12660 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12661 = private unnamed_addr constant [18 x i8] c" br label %cont\0A\00" +@.str12662 = private unnamed_addr constant [46 x i8] c"cont:\0A %i1 = add i32 %i, 1\0A br label %loop\0A\00" +@.str12663 = private unnamed_addr constant [20 x i8] c"fin:\0A ret void\0A}\0A\0A\00" +@.str12664 = private unnamed_addr constant [26 x i8] c"@ev_depth = global i32 0\0A\00" +@.str12665 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19970: index out of range: \00" +@.str12666 = private unnamed_addr constant [5 x i8] c"%Ev_\00" +@.str12667 = private unnamed_addr constant [11 x i8] c" = type { \00" +@.str12668 = private unnamed_addr constant [3 x i8] c", \00" +@.str12669 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:19981: index out of range: \00" +@.str12670 = private unnamed_addr constant [3 x i8] c", \00" +@.str12671 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str12672 = private unnamed_addr constant [4 x i8] c" }\0A\00" +@.str12673 = private unnamed_addr constant [6 x i8] c"@evL_\00" +@.str12674 = private unnamed_addr constant [12 x i8] c" = global [\00" +@.str12675 = private unnamed_addr constant [25 x i8] c" x ptr] zeroinitializer\0A\00" +@.str12676 = private unnamed_addr constant [6 x i8] c"@evN_\00" +@.str12677 = private unnamed_addr constant [17 x i8] c" = global i32 0\0A\00" +@.str12678 = private unnamed_addr constant [6 x i8] c"@evO_\00" +@.str12679 = private unnamed_addr constant [12 x i8] c" = global [\00" +@.str12680 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" +@.str12681 = private unnamed_addr constant [22 x i8] c"define i32 @ludic_on_\00" +@.str12682 = private unnamed_addr constant [20 x i8] c"(ptr %cb) {\0Aentry:\0A\00" +@.str12683 = private unnamed_addr constant [27 x i8] c" %n = load i32, ptr @evN_\00" +@.str12684 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12685 = private unnamed_addr constant [28 x i8] c" %full = icmp slt i32 %n, \00" @.str12686 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12687 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12688 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str12689 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str12690 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str12691 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str12692 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12693 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str12694 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12695 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12696 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" -@.str12697 = private unnamed_addr constant [6 x i8] c"ret:\0A\00" -@.str12698 = private unnamed_addr constant [97 x i8] c" %evdd = load i32, ptr @ev_depth\0A %evdd1 = sub i32 %evdd, 1\0A store i32 %evdd1, ptr @ev_depth\0A\00" -@.str12699 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str12700 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str12701 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12702 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" -@.str12703 = private unnamed_addr constant [5 x i8] c"void\00" -@.str12704 = private unnamed_addr constant [4 x i8] c"i32\00" -@.str12705 = private unnamed_addr constant [8 x i8] c"define \00" -@.str12706 = private unnamed_addr constant [6 x i8] c" @ev_\00" -@.str12707 = private unnamed_addr constant [2 x i8] c"(\00" -@.str12708 = private unnamed_addr constant [3 x i8] c", \00" -@.str12709 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20007: index out of range: \00" -@.str12710 = private unnamed_addr constant [4 x i8] c" %p\00" -@.str12711 = private unnamed_addr constant [12 x i8] c") {\0Aentry:\0A\00" -@.str12712 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str12713 = private unnamed_addr constant [112 x i8] c"define void @ludic_sweep_entity(i32 %owner) {\0Aentry:\0A %ci = alloca i32\0A store i32 0, ptr %ci\0A br label %sw0\0A\00" -@.str12714 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20024: index out of range: \00" -@.str12715 = private unnamed_addr constant [3 x i8] c"sw\00" -@.str12716 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12717 = private unnamed_addr constant [7 x i8] c" %swi\00" -@.str12718 = private unnamed_addr constant [22 x i8] c" = load i32, ptr %ci\0A\00" -@.str12719 = private unnamed_addr constant [7 x i8] c" %swn\00" -@.str12720 = private unnamed_addr constant [23 x i8] c" = load i32, ptr @evN_\00" -@.str12721 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12722 = private unnamed_addr constant [7 x i8] c" %swg\00" -@.str12723 = private unnamed_addr constant [21 x i8] c" = icmp slt i32 %swi\00" -@.str12724 = private unnamed_addr constant [7 x i8] c", %swn\00" -@.str12725 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12726 = private unnamed_addr constant [13 x i8] c" br i1 %swg\00" -@.str12727 = private unnamed_addr constant [13 x i8] c", label %swb\00" -@.str12728 = private unnamed_addr constant [13 x i8] c", label %swd\00" -@.str12729 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12730 = private unnamed_addr constant [4 x i8] c"swb\00" -@.str12731 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12732 = private unnamed_addr constant [8 x i8] c" %swop\00" -@.str12733 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12734 = private unnamed_addr constant [19 x i8] c" x i32], ptr @evO_\00" -@.str12735 = private unnamed_addr constant [18 x i8] c", i32 0, i32 %swi\00" -@.str12736 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12737 = private unnamed_addr constant [8 x i8] c" %swov\00" -@.str12738 = private unnamed_addr constant [23 x i8] c" = load i32, ptr %swop\00" -@.str12739 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12740 = private unnamed_addr constant [7 x i8] c" %swm\00" -@.str12741 = private unnamed_addr constant [21 x i8] c" = icmp eq i32 %swov\00" -@.str12742 = private unnamed_addr constant [10 x i8] c", %owner\0A\00" -@.str12743 = private unnamed_addr constant [13 x i8] c" br i1 %swm\00" -@.str12744 = private unnamed_addr constant [13 x i8] c", label %swh\00" -@.str12745 = private unnamed_addr constant [13 x i8] c", label %swx\00" -@.str12746 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12747 = private unnamed_addr constant [4 x i8] c"swh\00" -@.str12748 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12749 = private unnamed_addr constant [8 x i8] c" %swlp\00" -@.str12750 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12751 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" -@.str12752 = private unnamed_addr constant [18 x i8] c", i32 0, i32 %swi\00" +@.str12687 = private unnamed_addr constant [40 x i8] c" br i1 %full, label %add, label %drop\0A\00" +@.str12688 = private unnamed_addr constant [40 x i8] c"add:\0A %slot = getelementptr inbounds [\00" +@.str12689 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" +@.str12690 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" +@.str12691 = private unnamed_addr constant [28 x i8] c" store ptr %cb, ptr %slot\0A\00" +@.str12692 = private unnamed_addr constant [36 x i8] c" %oslot = getelementptr inbounds [\00" +@.str12693 = private unnamed_addr constant [19 x i8] c" x i32], ptr @evO_\00" +@.str12694 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" +@.str12695 = private unnamed_addr constant [28 x i8] c" store i32 -1, ptr %oslot\0A\00" +@.str12696 = private unnamed_addr constant [49 x i8] c" %n1 = add i32 %n, 1\0A store i32 %n1, ptr @evN_\00" +@.str12697 = private unnamed_addr constant [15 x i8] c"\0A ret i32 %n\0A\00" +@.str12698 = private unnamed_addr constant [23 x i8] c"drop:\0A ret i32 -1\0A}\0A\0A\00" +@.str12699 = private unnamed_addr constant [29 x i8] c"define i32 @ludic_on_entity_\00" +@.str12700 = private unnamed_addr constant [32 x i8] c"(i32 %owner, ptr %cb) {\0Aentry:\0A\00" +@.str12701 = private unnamed_addr constant [27 x i8] c" %n = load i32, ptr @evN_\00" +@.str12702 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12703 = private unnamed_addr constant [28 x i8] c" %full = icmp slt i32 %n, \00" +@.str12704 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12705 = private unnamed_addr constant [40 x i8] c" br i1 %full, label %add, label %drop\0A\00" +@.str12706 = private unnamed_addr constant [40 x i8] c"add:\0A %slot = getelementptr inbounds [\00" +@.str12707 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" +@.str12708 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" +@.str12709 = private unnamed_addr constant [28 x i8] c" store ptr %cb, ptr %slot\0A\00" +@.str12710 = private unnamed_addr constant [36 x i8] c" %oslot = getelementptr inbounds [\00" +@.str12711 = private unnamed_addr constant [19 x i8] c" x i32], ptr @evO_\00" +@.str12712 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %n\0A\00" +@.str12713 = private unnamed_addr constant [32 x i8] c" store i32 %owner, ptr %oslot\0A\00" +@.str12714 = private unnamed_addr constant [49 x i8] c" %n1 = add i32 %n, 1\0A store i32 %n1, ptr @evN_\00" +@.str12715 = private unnamed_addr constant [15 x i8] c"\0A ret i32 %n\0A\00" +@.str12716 = private unnamed_addr constant [23 x i8] c"drop:\0A ret i32 -1\0A}\0A\0A\00" +@.str12717 = private unnamed_addr constant [24 x i8] c"define void @ludic_off_\00" +@.str12718 = private unnamed_addr constant [21 x i8] c"(i32 %tok) {\0Aentry:\0A\00" +@.str12719 = private unnamed_addr constant [27 x i8] c" %n = load i32, ptr @evN_\00" +@.str12720 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12721 = private unnamed_addr constant [84 x i8] c" %lo = icmp sge i32 %tok, 0\0A %hi = icmp slt i32 %tok, %n\0A %ok = and i1 %lo, %hi\0A\00" +@.str12722 = private unnamed_addr constant [37 x i8] c" br i1 %ok, label %do, label %skip\0A\00" +@.str12723 = private unnamed_addr constant [5 x i8] c"do:\0A\00" +@.str12724 = private unnamed_addr constant [35 x i8] c" %slot = getelementptr inbounds [\00" +@.str12725 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" +@.str12726 = private unnamed_addr constant [19 x i8] c", i32 0, i32 %tok\0A\00" +@.str12727 = private unnamed_addr constant [46 x i8] c" store ptr null, ptr %slot\0A br label %skip\0A\00" +@.str12728 = private unnamed_addr constant [21 x i8] c"skip:\0A ret void\0A}\0A\0A\00" +@.str12729 = private unnamed_addr constant [5 x i8] c"void\00" +@.str12730 = private unnamed_addr constant [34 x i8] c" %evd = load i32, ptr @ev_depth\0A\00" +@.str12731 = private unnamed_addr constant [32 x i8] c" %evover = icmp sge i32 %evd, \00" +@.str12732 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12733 = private unnamed_addr constant [44 x i8] c" br i1 %evover, label %evcap, label %evgo\0A\00" +@.str12734 = private unnamed_addr constant [8 x i8] c"evcap:\0A\00" +@.str12735 = private unnamed_addr constant [13 x i8] c" ret i32 0\0A\00" +@.str12736 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" +@.str12737 = private unnamed_addr constant [7 x i8] c"evgo:\0A\00" +@.str12738 = private unnamed_addr constant [60 x i8] c" %evd1 = add i32 %evd, 1\0A store i32 %evd1, ptr @ev_depth\0A\00" +@.str12739 = private unnamed_addr constant [5 x i8] c"%Ev_\00" +@.str12740 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20048: index out of range: \00" +@.str12741 = private unnamed_addr constant [3 x i8] c" \00" +@.str12742 = private unnamed_addr constant [31 x i8] c" = getelementptr inbounds %Ev_\00" +@.str12743 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12744 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str12745 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12746 = private unnamed_addr constant [9 x i8] c" store \00" +@.str12747 = private unnamed_addr constant [4 x i8] c" %p\00" +@.str12748 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12749 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12750 = private unnamed_addr constant [9 x i8] c" store \00" +@.str12751 = private unnamed_addr constant [4 x i8] c" %p\00" +@.str12752 = private unnamed_addr constant [7 x i8] c", ptr \00" @.str12753 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12754 = private unnamed_addr constant [28 x i8] c" store ptr null, ptr %swlp\00" -@.str12755 = private unnamed_addr constant [17 x i8] c"\0A br label %swx\00" -@.str12756 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12757 = private unnamed_addr constant [4 x i8] c"swx\00" -@.str12758 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12759 = private unnamed_addr constant [9 x i8] c" %swinc\00" -@.str12760 = private unnamed_addr constant [16 x i8] c" = add i32 %swi\00" -@.str12761 = private unnamed_addr constant [23 x i8] c", 1\0A store i32 %swinc\00" -@.str12762 = private unnamed_addr constant [25 x i8] c", ptr %ci\0A br label %sw\00" -@.str12763 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12764 = private unnamed_addr constant [4 x i8] c"swd\00" -@.str12765 = private unnamed_addr constant [26 x i8] c":\0A store i32 0, ptr %ci\0A\00" -@.str12766 = private unnamed_addr constant [15 x i8] c" br label %sw\00" +@.str12754 = private unnamed_addr constant [3 x i8] c" \00" +@.str12755 = private unnamed_addr constant [31 x i8] c" = getelementptr inbounds %Ev_\00" +@.str12756 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12757 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str12758 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12759 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" +@.str12760 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12761 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20067: index out of range: \00" +@.str12762 = private unnamed_addr constant [7 x i8] c"evnext\00" +@.str12763 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20073: index out of range: \00" +@.str12764 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20075: index out of range: \00" +@.str12765 = private unnamed_addr constant [4 x i8] c"ret\00" +@.str12766 = private unnamed_addr constant [13 x i8] c" br label %\00" @.str12767 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12768 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" -@.str12769 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str12770 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20073: index out of range: \00" -@.str12771 = private unnamed_addr constant [27 x i8] c"@dyn_count = global i32 0\0A\00" -@.str12772 = private unnamed_addr constant [43 x i8] c"@dynS = global [32 x ptr] zeroinitializer\0A\00" -@.str12773 = private unnamed_addr constant [43 x i8] c"@dynH = global [32 x ptr] zeroinitializer\0A\00" -@.str12774 = private unnamed_addr constant [43 x i8] c"@dynF = global [32 x i32] zeroinitializer\0A\00" -@.str12775 = private unnamed_addr constant [46 x i8] c"@dynName = global [32 x ptr] zeroinitializer\0A\00" -@.str12776 = private unnamed_addr constant [47 x i8] c"define i32 @ludic_prop_id(ptr %name) {\0Aentry:\0A\00" -@.str12777 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20086: index out of range: \00" -@.str12778 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20087: index out of range: \00" -@.str12779 = private unnamed_addr constant [5 x i8] c" %c\00" -@.str12780 = private unnamed_addr constant [36 x i8] c" = call i32 @strcmp(ptr %name, ptr \00" -@.str12781 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12782 = private unnamed_addr constant [5 x i8] c" %e\00" -@.str12783 = private unnamed_addr constant [18 x i8] c" = icmp eq i32 %c\00" -@.str12784 = private unnamed_addr constant [5 x i8] c", 0\0A\00" -@.str12785 = private unnamed_addr constant [11 x i8] c" br i1 %e\00" -@.str12786 = private unnamed_addr constant [11 x i8] c", label %h\00" -@.str12787 = private unnamed_addr constant [11 x i8] c", label %n\00" -@.str12788 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12789 = private unnamed_addr constant [2 x i8] c"h\00" -@.str12790 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" +@.str12768 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12769 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str12770 = private unnamed_addr constant [20 x i8] c" store i32 0, ptr \00" +@.str12771 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12772 = private unnamed_addr constant [4 x i8] c"evl\00" +@.str12773 = private unnamed_addr constant [4 x i8] c"evb\00" +@.str12774 = private unnamed_addr constant [4 x i8] c"evd\00" +@.str12775 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12776 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12777 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12778 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str12779 = private unnamed_addr constant [20 x i8] c"load i32, ptr @evN_\00" +@.str12780 = private unnamed_addr constant [14 x i8] c"icmp slt i32 \00" +@.str12781 = private unnamed_addr constant [3 x i8] c", \00" +@.str12782 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12783 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12784 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12785 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12786 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12787 = private unnamed_addr constant [3 x i8] c" \00" +@.str12788 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" +@.str12789 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" +@.str12790 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" @.str12791 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12792 = private unnamed_addr constant [2 x i8] c"n\00" -@.str12793 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12794 = private unnamed_addr constant [61 x i8] c" %dpi = alloca i32\0A store i32 0, ptr %dpi\0A br label %dpl\0A\00" -@.str12795 = private unnamed_addr constant [135 x i8] c"dpl:\0A %di = load i32, ptr %dpi\0A %dn = load i32, ptr @dyn_count\0A %dg = icmp slt i32 %di, %dn\0A br i1 %dg, label %dpb, label %dpnone\0A\00" -@.str12796 = private unnamed_addr constant [231 x i8] c"dpb:\0A %dnp = getelementptr inbounds [32 x ptr], ptr @dynName, i32 0, i32 %di\0A %dname = load ptr, ptr %dnp\0A %dcmp = call i32 @strcmp(ptr %name, ptr %dname)\0A %deq = icmp eq i32 %dcmp, 0\0A br i1 %deq, label %dphit, label %dpnext\0A\00" -@.str12797 = private unnamed_addr constant [31 x i8] c"dphit:\0A %drid = add i32 %di, \00" -@.str12798 = private unnamed_addr constant [18 x i8] c"\0A ret i32 %drid\0A\00" -@.str12799 = private unnamed_addr constant [76 x i8] c"dpnext:\0A %di1 = add i32 %di, 1\0A store i32 %di1, ptr %dpi\0A br label %dpl\0A\00" -@.str12800 = private unnamed_addr constant [25 x i8] c"dpnone:\0A ret i32 -1\0A}\0A\0A\00" -@.str12801 = private unnamed_addr constant [56 x i8] c"define i32 @ludic_field_id(i32 %p, ptr %name) {\0Aentry:\0A\00" -@.str12802 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20109: index out of range: \00" -@.str12803 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20110: index out of range: \00" -@.str12804 = private unnamed_addr constant [6 x i8] c" %pm\00" -@.str12805 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str12792 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" +@.str12793 = private unnamed_addr constant [13 x i8] c"icmp eq ptr \00" +@.str12794 = private unnamed_addr constant [7 x i8] c", null\00" +@.str12795 = private unnamed_addr constant [5 x i8] c"evdo\00" +@.str12796 = private unnamed_addr constant [5 x i8] c"evsk\00" +@.str12797 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str12798 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12799 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str12800 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12801 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12802 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str12803 = private unnamed_addr constant [6 x i8] c"(ptr \00" +@.str12804 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12805 = private unnamed_addr constant [13 x i8] c" br label %\00" @.str12806 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12807 = private unnamed_addr constant [12 x i8] c" br i1 %pm\00" -@.str12808 = private unnamed_addr constant [12 x i8] c", label %pk\00" -@.str12809 = private unnamed_addr constant [12 x i8] c", label %pn\00" -@.str12810 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12811 = private unnamed_addr constant [3 x i8] c"pk\00" -@.str12812 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12813 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20116: index out of range: \00" -@.str12814 = private unnamed_addr constant [2 x i8] c"_\00" -@.str12815 = private unnamed_addr constant [6 x i8] c" %fc\00" -@.str12816 = private unnamed_addr constant [36 x i8] c" = call i32 @strcmp(ptr %name, ptr \00" -@.str12817 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str12818 = private unnamed_addr constant [6 x i8] c" %fe\00" -@.str12819 = private unnamed_addr constant [19 x i8] c" = icmp eq i32 %fc\00" -@.str12820 = private unnamed_addr constant [5 x i8] c", 0\0A\00" -@.str12821 = private unnamed_addr constant [12 x i8] c" br i1 %fe\00" -@.str12822 = private unnamed_addr constant [12 x i8] c", label %fh\00" -@.str12823 = private unnamed_addr constant [12 x i8] c", label %fn\00" -@.str12824 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12825 = private unnamed_addr constant [3 x i8] c"fh\00" -@.str12826 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" -@.str12827 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12828 = private unnamed_addr constant [3 x i8] c"fn\00" -@.str12829 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12830 = private unnamed_addr constant [14 x i8] c" ret i32 -1\0A\00" -@.str12831 = private unnamed_addr constant [3 x i8] c"pn\00" -@.str12832 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12833 = private unnamed_addr constant [17 x i8] c" ret i32 -1\0A}\0A\0A\00" -@.str12834 = private unnamed_addr constant [56 x i8] c"define i64 @ludic_get(i32 %e, i32 %p, i32 %f) {\0Aentry:\0A\00" -@.str12835 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20141: index out of range: \00" -@.str12836 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20142: index out of range: \00" -@.str12837 = private unnamed_addr constant [5 x i8] c" %m\00" -@.str12838 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" -@.str12839 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12840 = private unnamed_addr constant [11 x i8] c" br i1 %m\00" -@.str12841 = private unnamed_addr constant [11 x i8] c", label %g\00" -@.str12842 = private unnamed_addr constant [12 x i8] c", label %gn\00" -@.str12843 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12844 = private unnamed_addr constant [2 x i8] c"g\00" -@.str12845 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12846 = private unnamed_addr constant [5 x i8] c" %s\00" -@.str12847 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12848 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str12849 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str12850 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %e\0A\00" -@.str12851 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20149: index out of range: \00" -@.str12852 = private unnamed_addr constant [2 x i8] c"_\00" -@.str12853 = private unnamed_addr constant [6 x i8] c" %gm\00" -@.str12854 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" -@.str12855 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12856 = private unnamed_addr constant [12 x i8] c" br i1 %gm\00" -@.str12857 = private unnamed_addr constant [12 x i8] c", label %gf\00" -@.str12858 = private unnamed_addr constant [12 x i8] c", label %gk\00" +@.str12807 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12808 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str12809 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str12810 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str12811 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12812 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12813 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str12814 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12815 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12816 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" +@.str12817 = private unnamed_addr constant [6 x i8] c"ret:\0A\00" +@.str12818 = private unnamed_addr constant [97 x i8] c" %evdd = load i32, ptr @ev_depth\0A %evdd1 = sub i32 %evdd, 1\0A store i32 %evdd1, ptr @ev_depth\0A\00" +@.str12819 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str12820 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str12821 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12822 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" +@.str12823 = private unnamed_addr constant [5 x i8] c"void\00" +@.str12824 = private unnamed_addr constant [4 x i8] c"i32\00" +@.str12825 = private unnamed_addr constant [8 x i8] c"define \00" +@.str12826 = private unnamed_addr constant [6 x i8] c" @ev_\00" +@.str12827 = private unnamed_addr constant [2 x i8] c"(\00" +@.str12828 = private unnamed_addr constant [3 x i8] c", \00" +@.str12829 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20122: index out of range: \00" +@.str12830 = private unnamed_addr constant [4 x i8] c" %p\00" +@.str12831 = private unnamed_addr constant [12 x i8] c") {\0Aentry:\0A\00" +@.str12832 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str12833 = private unnamed_addr constant [112 x i8] c"define void @ludic_sweep_entity(i32 %owner) {\0Aentry:\0A %ci = alloca i32\0A store i32 0, ptr %ci\0A br label %sw0\0A\00" +@.str12834 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20139: index out of range: \00" +@.str12835 = private unnamed_addr constant [3 x i8] c"sw\00" +@.str12836 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12837 = private unnamed_addr constant [7 x i8] c" %swi\00" +@.str12838 = private unnamed_addr constant [22 x i8] c" = load i32, ptr %ci\0A\00" +@.str12839 = private unnamed_addr constant [7 x i8] c" %swn\00" +@.str12840 = private unnamed_addr constant [23 x i8] c" = load i32, ptr @evN_\00" +@.str12841 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12842 = private unnamed_addr constant [7 x i8] c" %swg\00" +@.str12843 = private unnamed_addr constant [21 x i8] c" = icmp slt i32 %swi\00" +@.str12844 = private unnamed_addr constant [7 x i8] c", %swn\00" +@.str12845 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12846 = private unnamed_addr constant [13 x i8] c" br i1 %swg\00" +@.str12847 = private unnamed_addr constant [13 x i8] c", label %swb\00" +@.str12848 = private unnamed_addr constant [13 x i8] c", label %swd\00" +@.str12849 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12850 = private unnamed_addr constant [4 x i8] c"swb\00" +@.str12851 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12852 = private unnamed_addr constant [8 x i8] c" %swop\00" +@.str12853 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" +@.str12854 = private unnamed_addr constant [19 x i8] c" x i32], ptr @evO_\00" +@.str12855 = private unnamed_addr constant [18 x i8] c", i32 0, i32 %swi\00" +@.str12856 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12857 = private unnamed_addr constant [8 x i8] c" %swov\00" +@.str12858 = private unnamed_addr constant [23 x i8] c" = load i32, ptr %swop\00" @.str12859 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12860 = private unnamed_addr constant [3 x i8] c"gf\00" -@.str12861 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12862 = private unnamed_addr constant [6 x i8] c" %ga\00" -@.str12863 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" -@.str12864 = private unnamed_addr constant [9 x i8] c", ptr %s\00" -@.str12865 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str12860 = private unnamed_addr constant [7 x i8] c" %swm\00" +@.str12861 = private unnamed_addr constant [21 x i8] c" = icmp eq i32 %swov\00" +@.str12862 = private unnamed_addr constant [10 x i8] c", %owner\0A\00" +@.str12863 = private unnamed_addr constant [13 x i8] c" br i1 %swm\00" +@.str12864 = private unnamed_addr constant [13 x i8] c", label %swh\00" +@.str12865 = private unnamed_addr constant [13 x i8] c", label %swx\00" @.str12866 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12867 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str12868 = private unnamed_addr constant [6 x i8] c" %gl\00" -@.str12869 = private unnamed_addr constant [21 x i8] c" = load ptr, ptr %ga\00" -@.str12870 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12871 = private unnamed_addr constant [6 x i8] c" %gr\00" -@.str12872 = private unnamed_addr constant [20 x i8] c" = ptrtoint ptr %gl\00" -@.str12873 = private unnamed_addr constant [22 x i8] c" to i64\0A ret i64 %gr\00" -@.str12874 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12875 = private unnamed_addr constant [3 x i8] c"i8\00" -@.str12876 = private unnamed_addr constant [6 x i8] c" %gl\00" -@.str12877 = private unnamed_addr constant [20 x i8] c" = load i8, ptr %ga\00" -@.str12878 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12879 = private unnamed_addr constant [6 x i8] c" %gr\00" -@.str12880 = private unnamed_addr constant [15 x i8] c" = zext i8 %gl\00" -@.str12881 = private unnamed_addr constant [22 x i8] c" to i64\0A ret i64 %gr\00" -@.str12882 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12883 = private unnamed_addr constant [6 x i8] c" %gl\00" -@.str12884 = private unnamed_addr constant [21 x i8] c" = load i32, ptr %ga\00" -@.str12885 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12886 = private unnamed_addr constant [6 x i8] c" %gr\00" -@.str12887 = private unnamed_addr constant [16 x i8] c" = sext i32 %gl\00" -@.str12888 = private unnamed_addr constant [22 x i8] c" to i64\0A ret i64 %gr\00" -@.str12889 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12890 = private unnamed_addr constant [3 x i8] c"gk\00" -@.str12891 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12892 = private unnamed_addr constant [13 x i8] c" ret i64 0\0A\00" -@.str12893 = private unnamed_addr constant [3 x i8] c"gn\00" -@.str12894 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12895 = private unnamed_addr constant [23 x i8] c" %gdyn = sub i32 %p, \00" -@.str12896 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12897 = private unnamed_addr constant [175 x i8] c" %gdlo = icmp sge i32 %gdyn, 0\0A %gdc = load i32, ptr @dyn_count\0A %gdhi = icmp slt i32 %gdyn, %gdc\0A %gdok = and i1 %gdlo, %gdhi\0A br i1 %gdok, label %gdyng, label %gdnone\0A\00" -@.str12898 = private unnamed_addr constant [110 x i8] c"gdyng:\0A %gsp = getelementptr inbounds [32 x ptr], ptr @dynS, i32 0, i32 %gdyn\0A %gbase = load ptr, ptr %gsp\0A\00" -@.str12899 = private unnamed_addr constant [156 x i8] c" %gfp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %gdyn\0A %gnf = load i32, ptr %gfp\0A %grow = mul i32 %e, %gnf\0A %gidx = add i32 %grow, %f\0A\00" -@.str12900 = private unnamed_addr constant [133 x i8] c" %gaddr = getelementptr inbounds i32, ptr %gbase, i32 %gidx\0A %gv = load i32, ptr %gaddr\0A %gr = sext i32 %gv to i64\0A ret i64 %gr\0A\00" -@.str12901 = private unnamed_addr constant [24 x i8] c"gdnone:\0A ret i64 0\0A}\0A\0A\00" -@.str12902 = private unnamed_addr constant [67 x i8] c"define void @ludic_set(i32 %e, i32 %p, i32 %f, i64 %val) {\0Aentry:\0A\00" -@.str12903 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20184: index out of range: \00" -@.str12904 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20185: index out of range: \00" -@.str12905 = private unnamed_addr constant [5 x i8] c" %m\00" -@.str12906 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" -@.str12907 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12908 = private unnamed_addr constant [11 x i8] c" br i1 %m\00" -@.str12909 = private unnamed_addr constant [11 x i8] c", label %g\00" -@.str12910 = private unnamed_addr constant [12 x i8] c", label %gn\00" +@.str12867 = private unnamed_addr constant [4 x i8] c"swh\00" +@.str12868 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12869 = private unnamed_addr constant [8 x i8] c" %swlp\00" +@.str12870 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" +@.str12871 = private unnamed_addr constant [19 x i8] c" x ptr], ptr @evL_\00" +@.str12872 = private unnamed_addr constant [18 x i8] c", i32 0, i32 %swi\00" +@.str12873 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12874 = private unnamed_addr constant [28 x i8] c" store ptr null, ptr %swlp\00" +@.str12875 = private unnamed_addr constant [17 x i8] c"\0A br label %swx\00" +@.str12876 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12877 = private unnamed_addr constant [4 x i8] c"swx\00" +@.str12878 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12879 = private unnamed_addr constant [9 x i8] c" %swinc\00" +@.str12880 = private unnamed_addr constant [16 x i8] c" = add i32 %swi\00" +@.str12881 = private unnamed_addr constant [23 x i8] c", 1\0A store i32 %swinc\00" +@.str12882 = private unnamed_addr constant [25 x i8] c", ptr %ci\0A br label %sw\00" +@.str12883 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12884 = private unnamed_addr constant [4 x i8] c"swd\00" +@.str12885 = private unnamed_addr constant [26 x i8] c":\0A store i32 0, ptr %ci\0A\00" +@.str12886 = private unnamed_addr constant [15 x i8] c" br label %sw\00" +@.str12887 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12888 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" +@.str12889 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str12890 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20188: index out of range: \00" +@.str12891 = private unnamed_addr constant [27 x i8] c"@dyn_count = global i32 0\0A\00" +@.str12892 = private unnamed_addr constant [43 x i8] c"@dynS = global [32 x ptr] zeroinitializer\0A\00" +@.str12893 = private unnamed_addr constant [43 x i8] c"@dynH = global [32 x ptr] zeroinitializer\0A\00" +@.str12894 = private unnamed_addr constant [43 x i8] c"@dynF = global [32 x i32] zeroinitializer\0A\00" +@.str12895 = private unnamed_addr constant [46 x i8] c"@dynName = global [32 x ptr] zeroinitializer\0A\00" +@.str12896 = private unnamed_addr constant [47 x i8] c"define i32 @ludic_prop_id(ptr %name) {\0Aentry:\0A\00" +@.str12897 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20201: index out of range: \00" +@.str12898 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20202: index out of range: \00" +@.str12899 = private unnamed_addr constant [5 x i8] c" %c\00" +@.str12900 = private unnamed_addr constant [36 x i8] c" = call i32 @strcmp(ptr %name, ptr \00" +@.str12901 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12902 = private unnamed_addr constant [5 x i8] c" %e\00" +@.str12903 = private unnamed_addr constant [18 x i8] c" = icmp eq i32 %c\00" +@.str12904 = private unnamed_addr constant [5 x i8] c", 0\0A\00" +@.str12905 = private unnamed_addr constant [11 x i8] c" br i1 %e\00" +@.str12906 = private unnamed_addr constant [11 x i8] c", label %h\00" +@.str12907 = private unnamed_addr constant [11 x i8] c", label %n\00" +@.str12908 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12909 = private unnamed_addr constant [2 x i8] c"h\00" +@.str12910 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" @.str12911 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12912 = private unnamed_addr constant [2 x i8] c"g\00" +@.str12912 = private unnamed_addr constant [2 x i8] c"n\00" @.str12913 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12914 = private unnamed_addr constant [5 x i8] c" %s\00" -@.str12915 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12916 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str12917 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str12918 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %e\0A\00" -@.str12919 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20192: index out of range: \00" -@.str12920 = private unnamed_addr constant [2 x i8] c"_\00" -@.str12921 = private unnamed_addr constant [6 x i8] c" %sm\00" -@.str12922 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" -@.str12923 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12924 = private unnamed_addr constant [12 x i8] c" br i1 %sm\00" -@.str12925 = private unnamed_addr constant [12 x i8] c", label %sf\00" -@.str12926 = private unnamed_addr constant [12 x i8] c", label %sk\00" -@.str12927 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12928 = private unnamed_addr constant [3 x i8] c"sf\00" -@.str12929 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12930 = private unnamed_addr constant [6 x i8] c" %sa\00" -@.str12931 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" -@.str12932 = private unnamed_addr constant [9 x i8] c", ptr %s\00" -@.str12933 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str12934 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12935 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str12936 = private unnamed_addr constant [6 x i8] c" %sp\00" -@.str12937 = private unnamed_addr constant [29 x i8] c" = inttoptr i64 %val to ptr\0A\00" -@.str12938 = private unnamed_addr constant [16 x i8] c" store ptr %sp\00" -@.str12939 = private unnamed_addr constant [10 x i8] c", ptr %sa\00" -@.str12940 = private unnamed_addr constant [13 x i8] c"\0A ret void\0A\00" -@.str12941 = private unnamed_addr constant [3 x i8] c"i8\00" -@.str12942 = private unnamed_addr constant [6 x i8] c" %sb\00" -@.str12943 = private unnamed_addr constant [25 x i8] c" = trunc i64 %val to i8\0A\00" -@.str12944 = private unnamed_addr constant [15 x i8] c" store i8 %sb\00" -@.str12945 = private unnamed_addr constant [10 x i8] c", ptr %sa\00" -@.str12946 = private unnamed_addr constant [13 x i8] c"\0A ret void\0A\00" -@.str12947 = private unnamed_addr constant [6 x i8] c" %sw\00" -@.str12948 = private unnamed_addr constant [26 x i8] c" = trunc i64 %val to i32\0A\00" -@.str12949 = private unnamed_addr constant [16 x i8] c" store i32 %sw\00" -@.str12950 = private unnamed_addr constant [10 x i8] c", ptr %sa\00" -@.str12951 = private unnamed_addr constant [13 x i8] c"\0A ret void\0A\00" -@.str12952 = private unnamed_addr constant [3 x i8] c"sk\00" -@.str12953 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12954 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" -@.str12955 = private unnamed_addr constant [3 x i8] c"gn\00" -@.str12956 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12957 = private unnamed_addr constant [23 x i8] c" %sdyn = sub i32 %p, \00" -@.str12958 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12959 = private unnamed_addr constant [175 x i8] c" %sdlo = icmp sge i32 %sdyn, 0\0A %sdc = load i32, ptr @dyn_count\0A %sdhi = icmp slt i32 %sdyn, %sdc\0A %sdok = and i1 %sdlo, %sdhi\0A br i1 %sdok, label %sdyng, label %sdnone\0A\00" -@.str12960 = private unnamed_addr constant [110 x i8] c"sdyng:\0A %ssp = getelementptr inbounds [32 x ptr], ptr @dynS, i32 0, i32 %sdyn\0A %sbase = load ptr, ptr %ssp\0A\00" -@.str12961 = private unnamed_addr constant [156 x i8] c" %sfp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %sdyn\0A %snf = load i32, ptr %sfp\0A %srow = mul i32 %e, %snf\0A %sidx = add i32 %srow, %f\0A\00" -@.str12962 = private unnamed_addr constant [131 x i8] c" %saddr = getelementptr inbounds i32, ptr %sbase, i32 %sidx\0A %sv = trunc i64 %val to i32\0A store i32 %sv, ptr %saddr\0A ret void\0A\00" -@.str12963 = private unnamed_addr constant [23 x i8] c"sdnone:\0A ret void\0A}\0A\0A\00" -@.str12964 = private unnamed_addr constant [48 x i8] c"define i32 @ludic_has(i32 %e, i32 %p) {\0Aentry:\0A\00" -@.str12965 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20227: index out of range: \00" -@.str12966 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20228: index out of range: \00" -@.str12967 = private unnamed_addr constant [5 x i8] c" %m\00" -@.str12968 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" -@.str12969 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12970 = private unnamed_addr constant [11 x i8] c" br i1 %m\00" -@.str12971 = private unnamed_addr constant [11 x i8] c", label %g\00" -@.str12972 = private unnamed_addr constant [12 x i8] c", label %gn\00" -@.str12973 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12974 = private unnamed_addr constant [2 x i8] c"g\00" -@.str12975 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12976 = private unnamed_addr constant [6 x i8] c" %hp\00" -@.str12977 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str12978 = private unnamed_addr constant [16 x i8] c" x i8], ptr @H_\00" -@.str12979 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %e\0A\00" -@.str12980 = private unnamed_addr constant [6 x i8] c" %hv\00" -@.str12981 = private unnamed_addr constant [20 x i8] c" = load i8, ptr %hp\00" -@.str12982 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12983 = private unnamed_addr constant [6 x i8] c" %hr\00" -@.str12984 = private unnamed_addr constant [15 x i8] c" = zext i8 %hv\00" -@.str12985 = private unnamed_addr constant [22 x i8] c" to i32\0A ret i32 %hr\00" +@.str12914 = private unnamed_addr constant [61 x i8] c" %dpi = alloca i32\0A store i32 0, ptr %dpi\0A br label %dpl\0A\00" +@.str12915 = private unnamed_addr constant [135 x i8] c"dpl:\0A %di = load i32, ptr %dpi\0A %dn = load i32, ptr @dyn_count\0A %dg = icmp slt i32 %di, %dn\0A br i1 %dg, label %dpb, label %dpnone\0A\00" +@.str12916 = private unnamed_addr constant [231 x i8] c"dpb:\0A %dnp = getelementptr inbounds [32 x ptr], ptr @dynName, i32 0, i32 %di\0A %dname = load ptr, ptr %dnp\0A %dcmp = call i32 @strcmp(ptr %name, ptr %dname)\0A %deq = icmp eq i32 %dcmp, 0\0A br i1 %deq, label %dphit, label %dpnext\0A\00" +@.str12917 = private unnamed_addr constant [31 x i8] c"dphit:\0A %drid = add i32 %di, \00" +@.str12918 = private unnamed_addr constant [18 x i8] c"\0A ret i32 %drid\0A\00" +@.str12919 = private unnamed_addr constant [76 x i8] c"dpnext:\0A %di1 = add i32 %di, 1\0A store i32 %di1, ptr %dpi\0A br label %dpl\0A\00" +@.str12920 = private unnamed_addr constant [25 x i8] c"dpnone:\0A ret i32 -1\0A}\0A\0A\00" +@.str12921 = private unnamed_addr constant [56 x i8] c"define i32 @ludic_field_id(i32 %p, ptr %name) {\0Aentry:\0A\00" +@.str12922 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20224: index out of range: \00" +@.str12923 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20225: index out of range: \00" +@.str12924 = private unnamed_addr constant [6 x i8] c" %pm\00" +@.str12925 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str12926 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12927 = private unnamed_addr constant [12 x i8] c" br i1 %pm\00" +@.str12928 = private unnamed_addr constant [12 x i8] c", label %pk\00" +@.str12929 = private unnamed_addr constant [12 x i8] c", label %pn\00" +@.str12930 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12931 = private unnamed_addr constant [3 x i8] c"pk\00" +@.str12932 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12933 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20231: index out of range: \00" +@.str12934 = private unnamed_addr constant [2 x i8] c"_\00" +@.str12935 = private unnamed_addr constant [6 x i8] c" %fc\00" +@.str12936 = private unnamed_addr constant [36 x i8] c" = call i32 @strcmp(ptr %name, ptr \00" +@.str12937 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str12938 = private unnamed_addr constant [6 x i8] c" %fe\00" +@.str12939 = private unnamed_addr constant [19 x i8] c" = icmp eq i32 %fc\00" +@.str12940 = private unnamed_addr constant [5 x i8] c", 0\0A\00" +@.str12941 = private unnamed_addr constant [12 x i8] c" br i1 %fe\00" +@.str12942 = private unnamed_addr constant [12 x i8] c", label %fh\00" +@.str12943 = private unnamed_addr constant [12 x i8] c", label %fn\00" +@.str12944 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12945 = private unnamed_addr constant [3 x i8] c"fh\00" +@.str12946 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" +@.str12947 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12948 = private unnamed_addr constant [3 x i8] c"fn\00" +@.str12949 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12950 = private unnamed_addr constant [14 x i8] c" ret i32 -1\0A\00" +@.str12951 = private unnamed_addr constant [3 x i8] c"pn\00" +@.str12952 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12953 = private unnamed_addr constant [17 x i8] c" ret i32 -1\0A}\0A\0A\00" +@.str12954 = private unnamed_addr constant [56 x i8] c"define i64 @ludic_get(i32 %e, i32 %p, i32 %f) {\0Aentry:\0A\00" +@.str12955 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20256: index out of range: \00" +@.str12956 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20257: index out of range: \00" +@.str12957 = private unnamed_addr constant [5 x i8] c" %m\00" +@.str12958 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str12959 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12960 = private unnamed_addr constant [11 x i8] c" br i1 %m\00" +@.str12961 = private unnamed_addr constant [11 x i8] c", label %g\00" +@.str12962 = private unnamed_addr constant [12 x i8] c", label %gn\00" +@.str12963 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12964 = private unnamed_addr constant [2 x i8] c"g\00" +@.str12965 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12966 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str12967 = private unnamed_addr constant [5 x i8] c" %s\00" +@.str12968 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12969 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str12970 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str12971 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20265: index out of range: \00" +@.str12972 = private unnamed_addr constant [2 x i8] c"_\00" +@.str12973 = private unnamed_addr constant [6 x i8] c" %gm\00" +@.str12974 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" +@.str12975 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12976 = private unnamed_addr constant [12 x i8] c" br i1 %gm\00" +@.str12977 = private unnamed_addr constant [12 x i8] c", label %gf\00" +@.str12978 = private unnamed_addr constant [12 x i8] c", label %gk\00" +@.str12979 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12980 = private unnamed_addr constant [3 x i8] c"gf\00" +@.str12981 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str12982 = private unnamed_addr constant [6 x i8] c" %ga\00" +@.str12983 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str12984 = private unnamed_addr constant [9 x i8] c", ptr %s\00" +@.str12985 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" @.str12986 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12987 = private unnamed_addr constant [3 x i8] c"gn\00" -@.str12988 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str12989 = private unnamed_addr constant [23 x i8] c" %hdyn = sub i32 %p, \00" +@.str12987 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str12988 = private unnamed_addr constant [6 x i8] c" %gl\00" +@.str12989 = private unnamed_addr constant [21 x i8] c" = load ptr, ptr %ga\00" @.str12990 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str12991 = private unnamed_addr constant [175 x i8] c" %hdlo = icmp sge i32 %hdyn, 0\0A %hdc = load i32, ptr @dyn_count\0A %hdhi = icmp slt i32 %hdyn, %hdc\0A %hdok = and i1 %hdlo, %hdhi\0A br i1 %hdok, label %hdyng, label %hdnone\0A\00" -@.str12992 = private unnamed_addr constant [238 x i8] c"hdyng:\0A %hhp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %hdyn\0A %hh = load ptr, ptr %hhp\0A %hslot = getelementptr inbounds i8, ptr %hh, i32 %e\0A %hval = load i8, ptr %hslot\0A %hres = zext i8 %hval to i32\0A ret i32 %hres\0A\00" -@.str12993 = private unnamed_addr constant [24 x i8] c"hdnone:\0A ret i32 0\0A}\0A\0A\00" -@.str12994 = private unnamed_addr constant [67 x i8] c"define i32 @ludic_register_prop(ptr %name, i32 %nfields) {\0Aentry:\0A\00" -@.str12995 = private unnamed_addr constant [102 x i8] c" %dc = load i32, ptr @dyn_count\0A %full = icmp slt i32 %dc, 32\0A br i1 %full, label %do, label %rej\0A\00" -@.str12996 = private unnamed_addr constant [56 x i8] c"do:\0A %nf4 = mul i32 %nfields, 4\0A %sz = mul i32 %nf4, \00" -@.str12997 = private unnamed_addr constant [31 x i8] c"\0A %szl = sext i32 %sz to i64\0A\00" -@.str12998 = private unnamed_addr constant [83 x i8] c" %buf = call ptr @malloc(i64 %szl)\0A call ptr @memset(ptr %buf, i32 0, i64 %szl)\0A\00" -@.str12999 = private unnamed_addr constant [96 x i8] c" %sp = getelementptr inbounds [32 x ptr], ptr @dynS, i32 0, i32 %dc\0A store ptr %buf, ptr %sp\0A\00" -@.str13000 = private unnamed_addr constant [32 x i8] c" %hbuf = call ptr @malloc(i64 \00" -@.str13001 = private unnamed_addr constant [44 x i8] c")\0A call ptr @memset(ptr %hbuf, i32 0, i64 \00" -@.str13002 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13003 = private unnamed_addr constant [97 x i8] c" %hp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %dc\0A store ptr %hbuf, ptr %hp\0A\00" -@.str13004 = private unnamed_addr constant [100 x i8] c" %fp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %dc\0A store i32 %nfields, ptr %fp\0A\00" -@.str13005 = private unnamed_addr constant [100 x i8] c" %np = getelementptr inbounds [32 x ptr], ptr @dynName, i32 0, i32 %dc\0A store ptr %name, ptr %np\0A\00" -@.str13006 = private unnamed_addr constant [22 x i8] c" %id = add i32 %dc, \00" -@.str13007 = private unnamed_addr constant [73 x i8] c"\0A %dc1 = add i32 %dc, 1\0A store i32 %dc1, ptr @dyn_count\0A ret i32 %id\0A\00" -@.str13008 = private unnamed_addr constant [22 x i8] c"rej:\0A ret i32 -1\0A}\0A\0A\00" -@.str13009 = private unnamed_addr constant [56 x i8] c"define void @ludic_attach_dyn(i32 %e, i32 %p) {\0Aentry:\0A\00" -@.str13010 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %p, \00" -@.str13011 = private unnamed_addr constant [187 x i8] c"\0A %hp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %dyn\0A %h = load ptr, ptr %hp\0A %slot = getelementptr inbounds i8, ptr %h, i32 %e\0A store i8 1, ptr %slot\0A ret void\0A}\0A\0A\00" -@.str13012 = private unnamed_addr constant [56 x i8] c"define void @ludic_detach_dyn(i32 %e, i32 %p) {\0Aentry:\0A\00" -@.str13013 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %p, \00" -@.str13014 = private unnamed_addr constant [187 x i8] c"\0A %hp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %dyn\0A %h = load ptr, ptr %hp\0A %slot = getelementptr inbounds i8, ptr %h, i32 %e\0A store i8 0, ptr %slot\0A ret void\0A}\0A\0A\00" -@.str13015 = private unnamed_addr constant [88 x i8] c"define i32 @ludic_entity_count() {\0Aentry:\0A %n = load i32, ptr @L_entc\0A ret i32 %n\0A}\0A\0A\00" -@.str13016 = private unnamed_addr constant [41 x i8] c"define i32 @ludic_kind(i32 %e) {\0Aentry:\0A\00" -@.str13017 = private unnamed_addr constant [33 x i8] c" %kp = getelementptr inbounds [\00" -@.str13018 = private unnamed_addr constant [37 x i8] c" x i32], ptr @L_kind, i32 0, i32 %e\0A\00" -@.str13019 = private unnamed_addr constant [42 x i8] c" %k = load i32, ptr %kp\0A ret i32 %k\0A}\0A\0A\00" -@.str13020 = private unnamed_addr constant [48 x i8] c"define i32 @ludic_model_id(ptr %name) {\0Aentry:\0A\00" -@.str13021 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20277: index out of range: \00" -@.str13022 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20278: index out of range: \00" -@.str13023 = private unnamed_addr constant [7 x i8] c" %mdc\00" -@.str13024 = private unnamed_addr constant [36 x i8] c" = call i32 @strcmp(ptr %name, ptr \00" -@.str13025 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13026 = private unnamed_addr constant [7 x i8] c" %mde\00" -@.str13027 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %mdc\00" -@.str13028 = private unnamed_addr constant [5 x i8] c", 0\0A\00" -@.str13029 = private unnamed_addr constant [13 x i8] c" br i1 %mde\00" -@.str13030 = private unnamed_addr constant [13 x i8] c", label %mdh\00" -@.str13031 = private unnamed_addr constant [13 x i8] c", label %mdn\00" -@.str13032 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13033 = private unnamed_addr constant [4 x i8] c"mdh\00" -@.str13034 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" -@.str13035 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20282: index out of range: \00" -@.str13036 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13037 = private unnamed_addr constant [4 x i8] c"mdn\00" -@.str13038 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13039 = private unnamed_addr constant [17 x i8] c" ret i32 -1\0A}\0A\0A\00" -@.str13040 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20296: index out of range: \00" -@.str13041 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20297: index out of range: \00" -@.str13042 = private unnamed_addr constant [4 x i8] c"int\00" -@.str13043 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str13044 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13045 = private unnamed_addr constant [25 x i8] c"define i32 @ludic_spawn_\00" -@.str13046 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" -@.str13047 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str13048 = private unnamed_addr constant [42 x i8] c"define i32 @ludic_spawn(i32 %m) {\0Aentry:\0A\00" -@.str13049 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20318: index out of range: \00" -@.str13050 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20319: index out of range: \00" -@.str13051 = private unnamed_addr constant [6 x i8] c" %sm\00" -@.str13052 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %m, \00" -@.str13053 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13054 = private unnamed_addr constant [12 x i8] c" br i1 %sm\00" -@.str13055 = private unnamed_addr constant [12 x i8] c", label %sh\00" -@.str13056 = private unnamed_addr constant [12 x i8] c", label %sn\00" -@.str13057 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13058 = private unnamed_addr constant [3 x i8] c"sh\00" -@.str13059 = private unnamed_addr constant [8 x i8] c":\0A %sr\00" -@.str13060 = private unnamed_addr constant [26 x i8] c" = call i32 @ludic_spawn_\00" -@.str13061 = private unnamed_addr constant [17 x i8] c"()\0A ret i32 %sr\00" -@.str13062 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13063 = private unnamed_addr constant [3 x i8] c"sn\00" -@.str13064 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13065 = private unnamed_addr constant [17 x i8] c" ret i32 -1\0A}\0A\0A\00" -@.str13066 = private unnamed_addr constant [58 x i8] c"define i32 @ludic_query_next(i32 %p, i32 %from) {\0Aentry:\0A\00" -@.str13067 = private unnamed_addr constant [47 x i8] c" %n = load i32, ptr @L_entc\0A br label %loop\0A\00" -@.str13068 = private unnamed_addr constant [56 x i8] c"loop:\0A %e = phi i32 [ %from, %entry ], [ %e1, %cont ]\0A\00" -@.str13069 = private unnamed_addr constant [67 x i8] c" %go = icmp slt i32 %e, %n\0A br i1 %go, label %body, label %none\0A\00" -@.str13070 = private unnamed_addr constant [39 x i8] c"body:\0A %ap = getelementptr inbounds [\00" -@.str13071 = private unnamed_addr constant [38 x i8] c" x i32], ptr @L_alive, i32 0, i32 %e\0A\00" -@.str13072 = private unnamed_addr constant [93 x i8] c" %al = load i32, ptr %ap\0A %isa = icmp ne i32 %al, 0\0A br i1 %isa, label %chk, label %cont\0A\00" -@.str13073 = private unnamed_addr constant [115 x i8] c"chk:\0A %h = call i32 @ludic_has(i32 %e, i32 %p)\0A %hit = icmp ne i32 %h, 0\0A br i1 %hit, label %hitb, label %cont\0A\00" -@.str13074 = private unnamed_addr constant [20 x i8] c"hitb:\0A ret i32 %e\0A\00" -@.str13075 = private unnamed_addr constant [46 x i8] c"cont:\0A %e1 = add i32 %e, 1\0A br label %loop\0A\00" -@.str13076 = private unnamed_addr constant [23 x i8] c"none:\0A ret i32 -1\0A}\0A\0A\00" -@.str13077 = private unnamed_addr constant [1 x i8] c"\00" -@.str13078 = private unnamed_addr constant [4 x i8] c"int\00" -@.str13079 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20359: index out of range: \00" -@.str13080 = private unnamed_addr constant [41 x i8] c"define i32 @ludic_prop_count() {\0Aentry:\0A\00" -@.str13081 = private unnamed_addr constant [52 x i8] c" %d = load i32, ptr @dyn_count\0A %n = add i32 %d, \00" -@.str13082 = private unnamed_addr constant [18 x i8] c"\0A ret i32 %n\0A}\0A\0A\00" -@.str13083 = private unnamed_addr constant [46 x i8] c"define ptr @ludic_prop_name(i32 %i) {\0Aentry:\0A\00" -@.str13084 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20370: index out of range: \00" -@.str13085 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20371: index out of range: \00" -@.str13086 = private unnamed_addr constant [6 x i8] c" %pe\00" -@.str13087 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %i, \00" -@.str13088 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13089 = private unnamed_addr constant [12 x i8] c" br i1 %pe\00" -@.str13090 = private unnamed_addr constant [12 x i8] c", label %ph\00" -@.str13091 = private unnamed_addr constant [12 x i8] c", label %pn\00" -@.str13092 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13093 = private unnamed_addr constant [3 x i8] c"ph\00" -@.str13094 = private unnamed_addr constant [13 x i8] c":\0A ret ptr \00" -@.str13095 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13096 = private unnamed_addr constant [3 x i8] c"pn\00" -@.str13097 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13098 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %i, \00" -@.str13099 = private unnamed_addr constant [35 x i8] c"\0A %dc = load i32, ptr @dyn_count\0A\00" -@.str13100 = private unnamed_addr constant [70 x i8] c" %ib = icmp uge i32 %dyn, %dc\0A br i1 %ib, label %pbad, label %pdyn\0A\00" -@.str13101 = private unnamed_addr constant [120 x i8] c"pdyn:\0A %np = getelementptr inbounds [32 x ptr], ptr @dynName, i32 0, i32 %dyn\0A %nm = load ptr, ptr %np\0A ret ptr %nm\0A\00" -@.str13102 = private unnamed_addr constant [17 x i8] c"pbad:\0A ret ptr \00" -@.str13103 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" -@.str13104 = private unnamed_addr constant [48 x i8] c"define i32 @ludic_field_count(i32 %p) {\0Aentry:\0A\00" -@.str13105 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20389: index out of range: \00" -@.str13106 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20390: index out of range: \00" -@.str13107 = private unnamed_addr constant [7 x i8] c" %fce\00" -@.str13108 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" -@.str13109 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13110 = private unnamed_addr constant [13 x i8] c" br i1 %fce\00" -@.str13111 = private unnamed_addr constant [13 x i8] c", label %fch\00" -@.str13112 = private unnamed_addr constant [13 x i8] c", label %fcn\00" -@.str13113 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13114 = private unnamed_addr constant [4 x i8] c"fch\00" -@.str13115 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" -@.str13116 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13117 = private unnamed_addr constant [4 x i8] c"fcn\00" -@.str13118 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13119 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %p, \00" -@.str13120 = private unnamed_addr constant [35 x i8] c"\0A %dc = load i32, ptr @dyn_count\0A\00" -@.str13121 = private unnamed_addr constant [72 x i8] c" %ib = icmp uge i32 %dyn, %dc\0A br i1 %ib, label %fcbad, label %fcdyn\0A\00" -@.str13122 = private unnamed_addr constant [118 x i8] c"fcdyn:\0A %fp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %dyn\0A %fn = load i32, ptr %fp\0A ret i32 %fn\0A\00" -@.str13123 = private unnamed_addr constant [23 x i8] c"fcbad:\0A ret i32 0\0A}\0A\0A\00" -@.str13124 = private unnamed_addr constant [55 x i8] c"define ptr @ludic_field_name(i32 %p, i32 %f) {\0Aentry:\0A\00" -@.str13125 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20408: index out of range: \00" -@.str13126 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20409: index out of range: \00" -@.str13127 = private unnamed_addr constant [7 x i8] c" %fne\00" -@.str13128 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" -@.str13129 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13130 = private unnamed_addr constant [13 x i8] c" br i1 %fne\00" -@.str13131 = private unnamed_addr constant [13 x i8] c", label %fnk\00" -@.str13132 = private unnamed_addr constant [13 x i8] c", label %fnn\00" -@.str13133 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13134 = private unnamed_addr constant [4 x i8] c"fnk\00" -@.str13135 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13136 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20415: index out of range: \00" -@.str13137 = private unnamed_addr constant [2 x i8] c"_\00" -@.str13138 = private unnamed_addr constant [8 x i8] c" %fnfe\00" -@.str13139 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" -@.str13140 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13141 = private unnamed_addr constant [14 x i8] c" br i1 %fnfe\00" -@.str13142 = private unnamed_addr constant [14 x i8] c", label %fnfh\00" -@.str13143 = private unnamed_addr constant [14 x i8] c", label %fnfn\00" -@.str13144 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13145 = private unnamed_addr constant [5 x i8] c"fnfh\00" -@.str13146 = private unnamed_addr constant [13 x i8] c":\0A ret ptr \00" -@.str13147 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13148 = private unnamed_addr constant [5 x i8] c"fnfn\00" -@.str13149 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13150 = private unnamed_addr constant [11 x i8] c" ret ptr \00" -@.str13151 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13152 = private unnamed_addr constant [4 x i8] c"fnn\00" -@.str13153 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13154 = private unnamed_addr constant [11 x i8] c" ret ptr \00" -@.str13155 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" -@.str13156 = private unnamed_addr constant [55 x i8] c"define ptr @ludic_field_type(i32 %p, i32 %f) {\0Aentry:\0A\00" -@.str13157 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20434: index out of range: \00" -@.str13158 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20435: index out of range: \00" -@.str13159 = private unnamed_addr constant [7 x i8] c" %fte\00" -@.str13160 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" -@.str13161 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13162 = private unnamed_addr constant [13 x i8] c" br i1 %fte\00" -@.str13163 = private unnamed_addr constant [13 x i8] c", label %ftk\00" -@.str13164 = private unnamed_addr constant [13 x i8] c", label %ftn\00" -@.str13165 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13166 = private unnamed_addr constant [4 x i8] c"ftk\00" -@.str13167 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13168 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20441: index out of range: \00" -@.str13169 = private unnamed_addr constant [2 x i8] c"_\00" -@.str13170 = private unnamed_addr constant [8 x i8] c" %ftfe\00" -@.str13171 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" -@.str13172 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13173 = private unnamed_addr constant [14 x i8] c" br i1 %ftfe\00" -@.str13174 = private unnamed_addr constant [14 x i8] c", label %ftfh\00" -@.str13175 = private unnamed_addr constant [14 x i8] c", label %ftfn\00" -@.str13176 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13177 = private unnamed_addr constant [5 x i8] c"ftfh\00" -@.str13178 = private unnamed_addr constant [13 x i8] c":\0A ret ptr \00" -@.str13179 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13180 = private unnamed_addr constant [5 x i8] c"ftfn\00" -@.str13181 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13182 = private unnamed_addr constant [11 x i8] c" ret ptr \00" -@.str13183 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13184 = private unnamed_addr constant [4 x i8] c"ftn\00" -@.str13185 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13186 = private unnamed_addr constant [11 x i8] c" ret ptr \00" -@.str13187 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" -@.str13188 = private unnamed_addr constant [38 x i8] c"define void @L_tick_fixed() {\0Aentry:\0A\00" -@.str13189 = private unnamed_addr constant [6 x i8] c"Input\00" -@.str13190 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" -@.str13191 = private unnamed_addr constant [7 x i8] c"Update\00" -@.str13192 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" -@.str13193 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str13194 = private unnamed_addr constant [39 x i8] c"define void @L_tick_render() {\0Aentry:\0A\00" -@.str13195 = private unnamed_addr constant [7 x i8] c"Render\00" -@.str13196 = private unnamed_addr constant [8 x i8] c"Overlay\00" -@.str13197 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str13198 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20481: index out of range: \00" -@.str13199 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20481: index out of range: \00" -@.str13200 = private unnamed_addr constant [49 x i8] c"define i32 @main(i32 %argc, ptr %argv) {\0Aentry:\0A\00" -@.str13201 = private unnamed_addr constant [32 x i8] c" store i32 %argc, ptr @L_argc\0A\00" -@.str13202 = private unnamed_addr constant [32 x i8] c" store ptr %argv, ptr @L_argv\0A\00" -@.str13203 = private unnamed_addr constant [31 x i8] c" call void @L_init_runtime()\0A\00" -@.str13204 = private unnamed_addr constant [8 x i8] c"rt_init\00" -@.str13205 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13206 = private unnamed_addr constant [8 x i8] c"rt_init\00" -@.str13207 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13208 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" -@.str13209 = private unnamed_addr constant [6 x i8] c"Start\00" -@.str13210 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13211 = private unnamed_addr constant [16 x i8] c", ptr @L_scene\0A\00" -@.str13212 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20504: index out of range: \00" -@.str13213 = private unnamed_addr constant [26 x i8] c" call void @scene_enter_\00" -@.str13214 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20504: index out of range: \00" -@.str13215 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13216 = private unnamed_addr constant [14 x i8] c"program_start\00" -@.str13217 = private unnamed_addr constant [33 x i8] c" call void @ev_program_start()\0A\00" -@.str13218 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" -@.str13219 = private unnamed_addr constant [7 x i8] c"loop:\0A\00" -@.str13220 = private unnamed_addr constant [25 x i8] c"load i32, ptr @L_running\00" -@.str13221 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str13222 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str13223 = private unnamed_addr constant [11 x i8] c"rt_running\00" -@.str13224 = private unnamed_addr constant [10 x i8] c"call i32 \00" -@.str13225 = private unnamed_addr constant [11 x i8] c"rt_running\00" -@.str13226 = private unnamed_addr constant [3 x i8] c"()\00" -@.str13227 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str13228 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str13229 = private unnamed_addr constant [8 x i8] c"and i1 \00" -@.str13230 = private unnamed_addr constant [3 x i8] c", \00" -@.str13231 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13232 = private unnamed_addr constant [28 x i8] c", label %body, label %done\0A\00" -@.str13233 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13234 = private unnamed_addr constant [28 x i8] c", label %body, label %done\0A\00" -@.str13235 = private unnamed_addr constant [7 x i8] c"body:\0A\00" -@.str13236 = private unnamed_addr constant [12 x i8] c"input_drive\00" -@.str13237 = private unnamed_addr constant [10 x i8] c"call i32 \00" -@.str13238 = private unnamed_addr constant [12 x i8] c"input_drive\00" -@.str13239 = private unnamed_addr constant [3 x i8] c"()\00" -@.str13240 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13241 = private unnamed_addr constant [14 x i8] c", ptr @L_key\0A\00" -@.str13242 = private unnamed_addr constant [8 x i8] c"rt_poll\00" -@.str13243 = private unnamed_addr constant [10 x i8] c"call i32 \00" -@.str13244 = private unnamed_addr constant [8 x i8] c"rt_poll\00" -@.str13245 = private unnamed_addr constant [3 x i8] c"()\00" -@.str13246 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13247 = private unnamed_addr constant [14 x i8] c", ptr @L_key\0A\00" -@.str13248 = private unnamed_addr constant [11 x i8] c"rt_ui_tick\00" -@.str13249 = private unnamed_addr constant [21 x i8] c"load i32, ptr @L_key\00" -@.str13250 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13251 = private unnamed_addr constant [11 x i8] c"rt_ui_tick\00" -@.str13252 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str13253 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13254 = private unnamed_addr constant [6 x i8] c"Input\00" -@.str13255 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" -@.str13256 = private unnamed_addr constant [7 x i8] c"Update\00" -@.str13257 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" -@.str13258 = private unnamed_addr constant [9 x i8] c"rt_clear\00" -@.str13259 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13260 = private unnamed_addr constant [9 x i8] c"rt_clear\00" -@.str13261 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str13262 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13263 = private unnamed_addr constant [7 x i8] c"Render\00" -@.str13264 = private unnamed_addr constant [8 x i8] c"Overlay\00" -@.str13265 = private unnamed_addr constant [11 x i8] c"rt_present\00" -@.str13266 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13267 = private unnamed_addr constant [11 x i8] c"rt_present\00" -@.str13268 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13269 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_frame\00" -@.str13270 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str13271 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str13272 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13273 = private unnamed_addr constant [16 x i8] c", ptr @L_frame\0A\00" -@.str13274 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" -@.str13275 = private unnamed_addr constant [7 x i8] c"done:\0A\00" -@.str13276 = private unnamed_addr constant [35 x i8] c" call void @L_despawn_all(i32 2)\0A\00" -@.str13277 = private unnamed_addr constant [7 x i8] c"OnQuit\00" -@.str13278 = private unnamed_addr constant [13 x i8] c"program_quit\00" -@.str13279 = private unnamed_addr constant [32 x i8] c" call void @ev_program_quit()\0A\00" -@.str13280 = private unnamed_addr constant [12 x i8] c"rt_shutdown\00" -@.str13281 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13282 = private unnamed_addr constant [12 x i8] c"rt_shutdown\00" -@.str13283 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13284 = private unnamed_addr constant [15 x i8] c" ret i32 0\0A}\0A\00" -@.str13285 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20599: index out of range: \00" -@.str13286 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20600: index out of range: \00" -@.str13287 = private unnamed_addr constant [4 x i8] c"@g_\00" -@.str13288 = private unnamed_addr constant [15 x i8] c"machine state \00" -@.str13289 = private unnamed_addr constant [27 x i8] c" is not a variant of enum \00" -@.str13290 = private unnamed_addr constant [1 x i8] c"\00" -@.str13291 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" -@.str13292 = private unnamed_addr constant [10 x i8] c"call i32 \00" -@.str13293 = private unnamed_addr constant [7 x i8] c"rt_reg\00" -@.str13294 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str13295 = private unnamed_addr constant [2 x i8] c")\00" -@.str13296 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20635: index out of range: \00" -@.str13297 = private unnamed_addr constant [6 x i8] c"smend\00" -@.str13298 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20640: index out of range: \00" -@.str13299 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str13300 = private unnamed_addr constant [3 x i8] c", \00" -@.str13301 = private unnamed_addr constant [6 x i8] c"sbody\00" -@.str13302 = private unnamed_addr constant [5 x i8] c"sarm\00" -@.str13303 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13304 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13305 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13306 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13307 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13308 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str13309 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13310 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13311 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str13312 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13313 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13314 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20662: index out of range: \00" -@.str13315 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20665: index out of range: \00" -@.str13316 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20665: index out of range: \00" -@.str13317 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13318 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13319 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13320 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13321 = private unnamed_addr constant [11 x i8] c"rt_set_reg\00" -@.str13322 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str13323 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str13324 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13325 = private unnamed_addr constant [27 x i8] c"become: no state or scene \00" -@.str13326 = private unnamed_addr constant [25 x i8] c" call void @scene_exit_\00" -@.str13327 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13328 = private unnamed_addr constant [30 x i8] c" call void @L_scene_leave()\0A\00" -@.str13329 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13330 = private unnamed_addr constant [16 x i8] c", ptr @L_scene\0A\00" -@.str13331 = private unnamed_addr constant [26 x i8] c" call void @scene_enter_\00" -@.str13332 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13333 = private unnamed_addr constant [5 x i8] c"file\00" -@.str13334 = private unnamed_addr constant [4 x i8] c"%io\00" -@.str13335 = private unnamed_addr constant [3 x i8] c" \00" -@.str13336 = private unnamed_addr constant [14 x i8] c" = call i64 @\00" -@.str13337 = private unnamed_addr constant [6 x i8] c"(ptr \00" -@.str13338 = private unnamed_addr constant [14 x i8] c", i64 1, i64 \00" -@.str13339 = private unnamed_addr constant [11 x i8] c", ptr %f)\0A\00" -@.str13340 = private unnamed_addr constant [5 x i8] c"size\00" -@.str13341 = private unnamed_addr constant [6 x i8] c"%ioff\00" -@.str13342 = private unnamed_addr constant [3 x i8] c" \00" -@.str13343 = private unnamed_addr constant [12 x i8] c" = add i64 \00" -@.str13344 = private unnamed_addr constant [3 x i8] c", \00" -@.str13345 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13346 = private unnamed_addr constant [5 x i8] c"%ioa\00" -@.str13347 = private unnamed_addr constant [3 x i8] c" \00" -@.str13348 = private unnamed_addr constant [45 x i8] c" = getelementptr inbounds i8, ptr %buf, i64 \00" -@.str13349 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13350 = private unnamed_addr constant [5 x i8] c"save\00" -@.str13351 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" -@.str13352 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13353 = private unnamed_addr constant [7 x i8] c", i64 \00" -@.str13354 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13355 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" -@.str13356 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13357 = private unnamed_addr constant [7 x i8] c", i64 \00" -@.str13358 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13359 = private unnamed_addr constant [6 x i8] c"%ioff\00" -@.str13360 = private unnamed_addr constant [3 x i8] c" \00" -@.str13361 = private unnamed_addr constant [12 x i8] c" = add i64 \00" -@.str13362 = private unnamed_addr constant [3 x i8] c", \00" -@.str13363 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13364 = private unnamed_addr constant [2 x i8] c"0\00" -@.str13365 = private unnamed_addr constant [8 x i8] c"@L_entc\00" -@.str13366 = private unnamed_addr constant [2 x i8] c"4\00" -@.str13367 = private unnamed_addr constant [9 x i8] c"@L_freen\00" -@.str13368 = private unnamed_addr constant [2 x i8] c"4\00" -@.str13369 = private unnamed_addr constant [21 x i8] c" %nalive = mul i64 \00" -@.str13370 = private unnamed_addr constant [5 x i8] c", 4\0A\00" -@.str13371 = private unnamed_addr constant [9 x i8] c"@L_alive\00" -@.str13372 = private unnamed_addr constant [8 x i8] c"%nalive\00" -@.str13373 = private unnamed_addr constant [12 x i8] c"@L_freelist\00" -@.str13374 = private unnamed_addr constant [8 x i8] c"%nalive\00" -@.str13375 = private unnamed_addr constant [8 x i8] c"@L_kind\00" -@.str13376 = private unnamed_addr constant [8 x i8] c"%nalive\00" -@.str13377 = private unnamed_addr constant [13 x i8] c"@L_owner_arr\00" -@.str13378 = private unnamed_addr constant [8 x i8] c"%nalive\00" -@.str13379 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20747: index out of range: \00" -@.str13380 = private unnamed_addr constant [4 x i8] c"@g_\00" -@.str13381 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20747: index out of range: \00" -@.str13382 = private unnamed_addr constant [2 x i8] c"4\00" -@.str13383 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20751: index out of range: \00" -@.str13384 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20752: index out of range: \00" -@.str13385 = private unnamed_addr constant [5 x i8] c"%csz\00" -@.str13386 = private unnamed_addr constant [3 x i8] c" \00" -@.str13387 = private unnamed_addr constant [37 x i8] c" = ptrtoint ptr getelementptr (%Cmp_\00" -@.str13388 = private unnamed_addr constant [17 x i8] c", ptr null, i32 \00" -@.str13389 = private unnamed_addr constant [10 x i8] c") to i64\0A\00" -@.str13390 = private unnamed_addr constant [4 x i8] c"@S_\00" -@.str13391 = private unnamed_addr constant [4 x i8] c"@H_\00" -@.str13392 = private unnamed_addr constant [5 x i8] c"file\00" -@.str13393 = private unnamed_addr constant [70 x i8] c"@.sav_path = private unnamed_addr constant [10 x i8] c\22ludic.sav\5C00\22\0A\00" -@.str13394 = private unnamed_addr constant [60 x i8] c"@.sav_wb = private unnamed_addr constant [3 x i8] c\22wb\5C00\22\0A\00" -@.str13395 = private unnamed_addr constant [60 x i8] c"@.sav_rb = private unnamed_addr constant [3 x i8] c\22rb\5C00\22\0A\00" -@.str13396 = private unnamed_addr constant [14 x i8] c"rt_save_state\00" -@.str13397 = private unnamed_addr constant [14 x i8] c"rt_load_state\00" -@.str13398 = private unnamed_addr constant [32 x i8] c"define void @L_save() {\0Aentry:\0A\00" -@.str13399 = private unnamed_addr constant [54 x i8] c" %f = call ptr @fopen(ptr @.sav_path, ptr @.sav_wb)\0A\00" -@.str13400 = private unnamed_addr constant [31 x i8] c" %bad = icmp eq ptr %f, null\0A\00" -@.str13401 = private unnamed_addr constant [41 x i8] c" br i1 %bad, label %out, label %go\0Ago:\0A\00" -@.str13402 = private unnamed_addr constant [7 x i8] c"fwrite\00" -@.str13403 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13404 = private unnamed_addr constant [14 x i8] c"rt_save_state\00" -@.str13405 = private unnamed_addr constant [10 x i8] c"(ptr %f)\0A\00" -@.str13406 = private unnamed_addr constant [68 x i8] c" %c = call i32 @fclose(ptr %f)\0A br label %out\0Aout:\0A ret void\0A}\0A\0A\00" -@.str13407 = private unnamed_addr constant [31 x i8] c"define i32 @L_load() {\0Aentry:\0A\00" -@.str13408 = private unnamed_addr constant [54 x i8] c" %f = call ptr @fopen(ptr @.sav_path, ptr @.sav_rb)\0A\00" -@.str13409 = private unnamed_addr constant [31 x i8] c" %bad = icmp eq ptr %f, null\0A\00" -@.str13410 = private unnamed_addr constant [60 x i8] c" br i1 %bad, label %miss, label %go\0Amiss:\0A ret i32 0\0Ago:\0A\00" -@.str13411 = private unnamed_addr constant [6 x i8] c"fread\00" -@.str13412 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13413 = private unnamed_addr constant [14 x i8] c"rt_load_state\00" -@.str13414 = private unnamed_addr constant [10 x i8] c"(ptr %f)\0A\00" -@.str13415 = private unnamed_addr constant [48 x i8] c" %c = call i32 @fclose(ptr %f)\0A ret i32 1\0A}\0A\0A\00" -@.str13416 = private unnamed_addr constant [45 x i8] c"define i32 @L_world_save(ptr %buf) {\0Aentry:\0A\00" -@.str13417 = private unnamed_addr constant [5 x i8] c"save\00" -@.str13418 = private unnamed_addr constant [1 x i8] c"\00" -@.str13419 = private unnamed_addr constant [5 x i8] c"%wsn\00" -@.str13420 = private unnamed_addr constant [3 x i8] c" \00" -@.str13421 = private unnamed_addr constant [14 x i8] c" = trunc i64 \00" -@.str13422 = private unnamed_addr constant [9 x i8] c" to i32\0A\00" -@.str13423 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str13424 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" -@.str13425 = private unnamed_addr constant [56 x i8] c"define void @L_world_load(ptr %buf, i32 %len) {\0Aentry:\0A\00" -@.str13426 = private unnamed_addr constant [5 x i8] c"load\00" -@.str13427 = private unnamed_addr constant [1 x i8] c"\00" -@.str13428 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str13429 = private unnamed_addr constant [37 x i8] c"define i32 @L_world_size() {\0Aentry:\0A\00" -@.str13430 = private unnamed_addr constant [5 x i8] c"size\00" -@.str13431 = private unnamed_addr constant [1 x i8] c"\00" -@.str13432 = private unnamed_addr constant [5 x i8] c"%wzn\00" -@.str13433 = private unnamed_addr constant [3 x i8] c" \00" -@.str13434 = private unnamed_addr constant [14 x i8] c" = trunc i64 \00" -@.str13435 = private unnamed_addr constant [9 x i8] c" to i32\0A\00" -@.str13436 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str13437 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" -@.str13438 = private unnamed_addr constant [5 x i8] c"file\00" -@.str13439 = private unnamed_addr constant [3 x i8] c"i8\00" -@.str13440 = private unnamed_addr constant [3 x i8] c"i8\00" -@.str13441 = private unnamed_addr constant [2 x i8] c"1\00" -@.str13442 = private unnamed_addr constant [2 x i8] c"4\00" -@.str13443 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20845: index out of range: \00" -@.str13444 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20846: index out of range: \00" -@.str13445 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20849: index out of range: \00" -@.str13446 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20849: index out of range: \00" -@.str13447 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20861: index out of range: \00" -@.str13448 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20861: index out of range: \00" -@.str13449 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20868: index out of range: \00" -@.str13450 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20868: index out of range: \00" -@.str13451 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20876: index out of range: \00" -@.str13452 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20876: index out of range: \00" -@.str13453 = private unnamed_addr constant [24 x i8] c"ludicc(self): warning: \00" -@.str13454 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13455 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20898: index out of range: \00" -@.str13456 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20899: index out of range: \00" -@.str13457 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20902: index out of range: \00" -@.str13458 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20903: index out of range: \00" -@.str13459 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20909: index out of range: \00" -@.str13460 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20911: index out of range: \00" -@.str13461 = private unnamed_addr constant [4 x i8] c"ptr\00" -@.str13462 = private unnamed_addr constant [13 x i8] c"@Sync field \00" -@.str13463 = private unnamed_addr constant [2 x i8] c".\00" -@.str13464 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20911: index out of range: \00" -@.str13465 = private unnamed_addr constant [68 x i8] c" is not a POD scalar (networked fields must be int/bool/fixed/byte)\00" -@.str13466 = private unnamed_addr constant [7 x i8] c"model \00" -@.str13467 = private unnamed_addr constant [9 x i8] c" @Syncs \00" -@.str13468 = private unnamed_addr constant [51 x i8] c" but it has no @Sync fields \E2\80\94 nothing replicates\00" -@.str13469 = private unnamed_addr constant [25 x i8] c"define i32 @L_serialize_\00" -@.str13470 = private unnamed_addr constant [29 x i8] c"(i32 %e, ptr %buf) {\0Aentry:\0A\00" -@.str13471 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20935: index out of range: \00" -@.str13472 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20936: index out of range: \00" -@.str13473 = private unnamed_addr constant [3 x i8] c" \00" -@.str13474 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str13475 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str13476 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str13477 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %e\0A\00" -@.str13478 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20942: index out of range: \00" -@.str13479 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20943: index out of range: \00" -@.str13480 = private unnamed_addr constant [3 x i8] c" \00" -@.str13481 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" -@.str13482 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13483 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str12991 = private unnamed_addr constant [6 x i8] c" %gr\00" +@.str12992 = private unnamed_addr constant [20 x i8] c" = ptrtoint ptr %gl\00" +@.str12993 = private unnamed_addr constant [22 x i8] c" to i64\0A ret i64 %gr\00" +@.str12994 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12995 = private unnamed_addr constant [3 x i8] c"i8\00" +@.str12996 = private unnamed_addr constant [6 x i8] c" %gl\00" +@.str12997 = private unnamed_addr constant [20 x i8] c" = load i8, ptr %ga\00" +@.str12998 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str12999 = private unnamed_addr constant [6 x i8] c" %gr\00" +@.str13000 = private unnamed_addr constant [15 x i8] c" = zext i8 %gl\00" +@.str13001 = private unnamed_addr constant [22 x i8] c" to i64\0A ret i64 %gr\00" +@.str13002 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13003 = private unnamed_addr constant [6 x i8] c" %gl\00" +@.str13004 = private unnamed_addr constant [21 x i8] c" = load i32, ptr %ga\00" +@.str13005 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13006 = private unnamed_addr constant [6 x i8] c" %gr\00" +@.str13007 = private unnamed_addr constant [16 x i8] c" = sext i32 %gl\00" +@.str13008 = private unnamed_addr constant [22 x i8] c" to i64\0A ret i64 %gr\00" +@.str13009 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13010 = private unnamed_addr constant [3 x i8] c"gk\00" +@.str13011 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13012 = private unnamed_addr constant [13 x i8] c" ret i64 0\0A\00" +@.str13013 = private unnamed_addr constant [3 x i8] c"gn\00" +@.str13014 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13015 = private unnamed_addr constant [23 x i8] c" %gdyn = sub i32 %p, \00" +@.str13016 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13017 = private unnamed_addr constant [175 x i8] c" %gdlo = icmp sge i32 %gdyn, 0\0A %gdc = load i32, ptr @dyn_count\0A %gdhi = icmp slt i32 %gdyn, %gdc\0A %gdok = and i1 %gdlo, %gdhi\0A br i1 %gdok, label %gdyng, label %gdnone\0A\00" +@.str13018 = private unnamed_addr constant [110 x i8] c"gdyng:\0A %gsp = getelementptr inbounds [32 x ptr], ptr @dynS, i32 0, i32 %gdyn\0A %gbase = load ptr, ptr %gsp\0A\00" +@.str13019 = private unnamed_addr constant [156 x i8] c" %gfp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %gdyn\0A %gnf = load i32, ptr %gfp\0A %grow = mul i32 %e, %gnf\0A %gidx = add i32 %grow, %f\0A\00" +@.str13020 = private unnamed_addr constant [133 x i8] c" %gaddr = getelementptr inbounds i32, ptr %gbase, i32 %gidx\0A %gv = load i32, ptr %gaddr\0A %gr = sext i32 %gv to i64\0A ret i64 %gr\0A\00" +@.str13021 = private unnamed_addr constant [24 x i8] c"gdnone:\0A ret i64 0\0A}\0A\0A\00" +@.str13022 = private unnamed_addr constant [67 x i8] c"define void @ludic_set(i32 %e, i32 %p, i32 %f, i64 %val) {\0Aentry:\0A\00" +@.str13023 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20300: index out of range: \00" +@.str13024 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20301: index out of range: \00" +@.str13025 = private unnamed_addr constant [5 x i8] c" %m\00" +@.str13026 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str13027 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13028 = private unnamed_addr constant [11 x i8] c" br i1 %m\00" +@.str13029 = private unnamed_addr constant [11 x i8] c", label %g\00" +@.str13030 = private unnamed_addr constant [12 x i8] c", label %gn\00" +@.str13031 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13032 = private unnamed_addr constant [2 x i8] c"g\00" +@.str13033 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13034 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str13035 = private unnamed_addr constant [5 x i8] c" %s\00" +@.str13036 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str13037 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13038 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str13039 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20309: index out of range: \00" +@.str13040 = private unnamed_addr constant [2 x i8] c"_\00" +@.str13041 = private unnamed_addr constant [6 x i8] c" %sm\00" +@.str13042 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" +@.str13043 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13044 = private unnamed_addr constant [12 x i8] c" br i1 %sm\00" +@.str13045 = private unnamed_addr constant [12 x i8] c", label %sf\00" +@.str13046 = private unnamed_addr constant [12 x i8] c", label %sk\00" +@.str13047 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13048 = private unnamed_addr constant [3 x i8] c"sf\00" +@.str13049 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13050 = private unnamed_addr constant [6 x i8] c" %sa\00" +@.str13051 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str13052 = private unnamed_addr constant [9 x i8] c", ptr %s\00" +@.str13053 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str13054 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13055 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str13056 = private unnamed_addr constant [6 x i8] c" %sp\00" +@.str13057 = private unnamed_addr constant [29 x i8] c" = inttoptr i64 %val to ptr\0A\00" +@.str13058 = private unnamed_addr constant [16 x i8] c" store ptr %sp\00" +@.str13059 = private unnamed_addr constant [10 x i8] c", ptr %sa\00" +@.str13060 = private unnamed_addr constant [13 x i8] c"\0A ret void\0A\00" +@.str13061 = private unnamed_addr constant [3 x i8] c"i8\00" +@.str13062 = private unnamed_addr constant [6 x i8] c" %sb\00" +@.str13063 = private unnamed_addr constant [25 x i8] c" = trunc i64 %val to i8\0A\00" +@.str13064 = private unnamed_addr constant [15 x i8] c" store i8 %sb\00" +@.str13065 = private unnamed_addr constant [10 x i8] c", ptr %sa\00" +@.str13066 = private unnamed_addr constant [13 x i8] c"\0A ret void\0A\00" +@.str13067 = private unnamed_addr constant [6 x i8] c" %sw\00" +@.str13068 = private unnamed_addr constant [26 x i8] c" = trunc i64 %val to i32\0A\00" +@.str13069 = private unnamed_addr constant [16 x i8] c" store i32 %sw\00" +@.str13070 = private unnamed_addr constant [10 x i8] c", ptr %sa\00" +@.str13071 = private unnamed_addr constant [13 x i8] c"\0A ret void\0A\00" +@.str13072 = private unnamed_addr constant [3 x i8] c"sk\00" +@.str13073 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13074 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" +@.str13075 = private unnamed_addr constant [3 x i8] c"gn\00" +@.str13076 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13077 = private unnamed_addr constant [23 x i8] c" %sdyn = sub i32 %p, \00" +@.str13078 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13079 = private unnamed_addr constant [175 x i8] c" %sdlo = icmp sge i32 %sdyn, 0\0A %sdc = load i32, ptr @dyn_count\0A %sdhi = icmp slt i32 %sdyn, %sdc\0A %sdok = and i1 %sdlo, %sdhi\0A br i1 %sdok, label %sdyng, label %sdnone\0A\00" +@.str13080 = private unnamed_addr constant [110 x i8] c"sdyng:\0A %ssp = getelementptr inbounds [32 x ptr], ptr @dynS, i32 0, i32 %sdyn\0A %sbase = load ptr, ptr %ssp\0A\00" +@.str13081 = private unnamed_addr constant [156 x i8] c" %sfp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %sdyn\0A %snf = load i32, ptr %sfp\0A %srow = mul i32 %e, %snf\0A %sidx = add i32 %srow, %f\0A\00" +@.str13082 = private unnamed_addr constant [131 x i8] c" %saddr = getelementptr inbounds i32, ptr %sbase, i32 %sidx\0A %sv = trunc i64 %val to i32\0A store i32 %sv, ptr %saddr\0A ret void\0A\00" +@.str13083 = private unnamed_addr constant [23 x i8] c"sdnone:\0A ret void\0A}\0A\0A\00" +@.str13084 = private unnamed_addr constant [48 x i8] c"define i32 @ludic_has(i32 %e, i32 %p) {\0Aentry:\0A\00" +@.str13085 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20344: index out of range: \00" +@.str13086 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20345: index out of range: \00" +@.str13087 = private unnamed_addr constant [5 x i8] c" %m\00" +@.str13088 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str13089 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13090 = private unnamed_addr constant [11 x i8] c" br i1 %m\00" +@.str13091 = private unnamed_addr constant [11 x i8] c", label %g\00" +@.str13092 = private unnamed_addr constant [12 x i8] c", label %gn\00" +@.str13093 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13094 = private unnamed_addr constant [2 x i8] c"g\00" +@.str13095 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13096 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str13097 = private unnamed_addr constant [6 x i8] c" %hp\00" +@.str13098 = private unnamed_addr constant [35 x i8] c" = getelementptr inbounds i8, ptr \00" +@.str13099 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str13100 = private unnamed_addr constant [6 x i8] c" %hv\00" +@.str13101 = private unnamed_addr constant [20 x i8] c" = load i8, ptr %hp\00" +@.str13102 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13103 = private unnamed_addr constant [6 x i8] c" %hr\00" +@.str13104 = private unnamed_addr constant [15 x i8] c" = zext i8 %hv\00" +@.str13105 = private unnamed_addr constant [22 x i8] c" to i32\0A ret i32 %hr\00" +@.str13106 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13107 = private unnamed_addr constant [3 x i8] c"gn\00" +@.str13108 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13109 = private unnamed_addr constant [23 x i8] c" %hdyn = sub i32 %p, \00" +@.str13110 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13111 = private unnamed_addr constant [175 x i8] c" %hdlo = icmp sge i32 %hdyn, 0\0A %hdc = load i32, ptr @dyn_count\0A %hdhi = icmp slt i32 %hdyn, %hdc\0A %hdok = and i1 %hdlo, %hdhi\0A br i1 %hdok, label %hdyng, label %hdnone\0A\00" +@.str13112 = private unnamed_addr constant [238 x i8] c"hdyng:\0A %hhp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %hdyn\0A %hh = load ptr, ptr %hhp\0A %hslot = getelementptr inbounds i8, ptr %hh, i32 %e\0A %hval = load i8, ptr %hslot\0A %hres = zext i8 %hval to i32\0A ret i32 %hres\0A\00" +@.str13113 = private unnamed_addr constant [24 x i8] c"hdnone:\0A ret i32 0\0A}\0A\0A\00" +@.str13114 = private unnamed_addr constant [67 x i8] c"define i32 @ludic_register_prop(ptr %name, i32 %nfields) {\0Aentry:\0A\00" +@.str13115 = private unnamed_addr constant [102 x i8] c" %dc = load i32, ptr @dyn_count\0A %full = icmp slt i32 %dc, 32\0A br i1 %full, label %do, label %rej\0A\00" +@.str13116 = private unnamed_addr constant [122 x i8] c"do:\0A %rcap = load i32, ptr @L_cap\0A %nf4 = mul i32 %nfields, 4\0A %sz = mul i32 %nf4, %rcap\0A %szl = sext i32 %sz to i64\0A\00" +@.str13117 = private unnamed_addr constant [83 x i8] c" %buf = call ptr @malloc(i64 %szl)\0A call ptr @memset(ptr %buf, i32 0, i64 %szl)\0A\00" +@.str13118 = private unnamed_addr constant [96 x i8] c" %sp = getelementptr inbounds [32 x ptr], ptr @dynS, i32 0, i32 %dc\0A store ptr %buf, ptr %sp\0A\00" +@.str13119 = private unnamed_addr constant [119 x i8] c" %hcap = sext i32 %rcap to i64\0A %hbuf = call ptr @malloc(i64 %hcap)\0A call ptr @memset(ptr %hbuf, i32 0, i64 %hcap)\0A\00" +@.str13120 = private unnamed_addr constant [97 x i8] c" %hp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %dc\0A store ptr %hbuf, ptr %hp\0A\00" +@.str13121 = private unnamed_addr constant [100 x i8] c" %fp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %dc\0A store i32 %nfields, ptr %fp\0A\00" +@.str13122 = private unnamed_addr constant [100 x i8] c" %np = getelementptr inbounds [32 x ptr], ptr @dynName, i32 0, i32 %dc\0A store ptr %name, ptr %np\0A\00" +@.str13123 = private unnamed_addr constant [22 x i8] c" %id = add i32 %dc, \00" +@.str13124 = private unnamed_addr constant [73 x i8] c"\0A %dc1 = add i32 %dc, 1\0A store i32 %dc1, ptr @dyn_count\0A ret i32 %id\0A\00" +@.str13125 = private unnamed_addr constant [22 x i8] c"rej:\0A ret i32 -1\0A}\0A\0A\00" +@.str13126 = private unnamed_addr constant [56 x i8] c"define void @ludic_attach_dyn(i32 %e, i32 %p) {\0Aentry:\0A\00" +@.str13127 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %p, \00" +@.str13128 = private unnamed_addr constant [187 x i8] c"\0A %hp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %dyn\0A %h = load ptr, ptr %hp\0A %slot = getelementptr inbounds i8, ptr %h, i32 %e\0A store i8 1, ptr %slot\0A ret void\0A}\0A\0A\00" +@.str13129 = private unnamed_addr constant [56 x i8] c"define void @ludic_detach_dyn(i32 %e, i32 %p) {\0Aentry:\0A\00" +@.str13130 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %p, \00" +@.str13131 = private unnamed_addr constant [187 x i8] c"\0A %hp = getelementptr inbounds [32 x ptr], ptr @dynH, i32 0, i32 %dyn\0A %h = load ptr, ptr %hp\0A %slot = getelementptr inbounds i8, ptr %h, i32 %e\0A store i8 0, ptr %slot\0A ret void\0A}\0A\0A\00" +@.str13132 = private unnamed_addr constant [88 x i8] c"define i32 @ludic_entity_count() {\0Aentry:\0A %n = load i32, ptr @L_entc\0A ret i32 %n\0A}\0A\0A\00" +@.str13133 = private unnamed_addr constant [41 x i8] c"define i32 @ludic_kind(i32 %e) {\0Aentry:\0A\00" +@.str13134 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str13135 = private unnamed_addr constant [41 x i8] c" %kp = getelementptr inbounds i32, ptr \00" +@.str13136 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str13137 = private unnamed_addr constant [42 x i8] c" %k = load i32, ptr %kp\0A ret i32 %k\0A}\0A\0A\00" +@.str13138 = private unnamed_addr constant [48 x i8] c"define i32 @ludic_model_id(ptr %name) {\0Aentry:\0A\00" +@.str13139 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20396: index out of range: \00" +@.str13140 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20397: index out of range: \00" +@.str13141 = private unnamed_addr constant [7 x i8] c" %mdc\00" +@.str13142 = private unnamed_addr constant [36 x i8] c" = call i32 @strcmp(ptr %name, ptr \00" +@.str13143 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13144 = private unnamed_addr constant [7 x i8] c" %mde\00" +@.str13145 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %mdc\00" +@.str13146 = private unnamed_addr constant [5 x i8] c", 0\0A\00" +@.str13147 = private unnamed_addr constant [13 x i8] c" br i1 %mde\00" +@.str13148 = private unnamed_addr constant [13 x i8] c", label %mdh\00" +@.str13149 = private unnamed_addr constant [13 x i8] c", label %mdn\00" +@.str13150 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13151 = private unnamed_addr constant [4 x i8] c"mdh\00" +@.str13152 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" +@.str13153 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20401: index out of range: \00" +@.str13154 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13155 = private unnamed_addr constant [4 x i8] c"mdn\00" +@.str13156 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13157 = private unnamed_addr constant [17 x i8] c" ret i32 -1\0A}\0A\0A\00" +@.str13158 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20415: index out of range: \00" +@.str13159 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20416: index out of range: \00" +@.str13160 = private unnamed_addr constant [4 x i8] c"int\00" +@.str13161 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str13162 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13163 = private unnamed_addr constant [25 x i8] c"define i32 @ludic_spawn_\00" +@.str13164 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" +@.str13165 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str13166 = private unnamed_addr constant [42 x i8] c"define i32 @ludic_spawn(i32 %m) {\0Aentry:\0A\00" +@.str13167 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20437: index out of range: \00" +@.str13168 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20438: index out of range: \00" +@.str13169 = private unnamed_addr constant [6 x i8] c" %sm\00" +@.str13170 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %m, \00" +@.str13171 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13172 = private unnamed_addr constant [12 x i8] c" br i1 %sm\00" +@.str13173 = private unnamed_addr constant [12 x i8] c", label %sh\00" +@.str13174 = private unnamed_addr constant [12 x i8] c", label %sn\00" +@.str13175 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13176 = private unnamed_addr constant [3 x i8] c"sh\00" +@.str13177 = private unnamed_addr constant [8 x i8] c":\0A %sr\00" +@.str13178 = private unnamed_addr constant [26 x i8] c" = call i32 @ludic_spawn_\00" +@.str13179 = private unnamed_addr constant [17 x i8] c"()\0A ret i32 %sr\00" +@.str13180 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13181 = private unnamed_addr constant [3 x i8] c"sn\00" +@.str13182 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13183 = private unnamed_addr constant [17 x i8] c" ret i32 -1\0A}\0A\0A\00" +@.str13184 = private unnamed_addr constant [58 x i8] c"define i32 @ludic_query_next(i32 %p, i32 %from) {\0Aentry:\0A\00" +@.str13185 = private unnamed_addr constant [47 x i8] c" %n = load i32, ptr @L_entc\0A br label %loop\0A\00" +@.str13186 = private unnamed_addr constant [56 x i8] c"loop:\0A %e = phi i32 [ %from, %entry ], [ %e1, %cont ]\0A\00" +@.str13187 = private unnamed_addr constant [67 x i8] c" %go = icmp slt i32 %e, %n\0A br i1 %go, label %body, label %none\0A\00" +@.str13188 = private unnamed_addr constant [7 x i8] c"body:\0A\00" +@.str13189 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str13190 = private unnamed_addr constant [41 x i8] c" %ap = getelementptr inbounds i32, ptr \00" +@.str13191 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str13192 = private unnamed_addr constant [93 x i8] c" %al = load i32, ptr %ap\0A %isa = icmp ne i32 %al, 0\0A br i1 %isa, label %chk, label %cont\0A\00" +@.str13193 = private unnamed_addr constant [115 x i8] c"chk:\0A %h = call i32 @ludic_has(i32 %e, i32 %p)\0A %hit = icmp ne i32 %h, 0\0A br i1 %hit, label %hitb, label %cont\0A\00" +@.str13194 = private unnamed_addr constant [20 x i8] c"hitb:\0A ret i32 %e\0A\00" +@.str13195 = private unnamed_addr constant [46 x i8] c"cont:\0A %e1 = add i32 %e, 1\0A br label %loop\0A\00" +@.str13196 = private unnamed_addr constant [23 x i8] c"none:\0A ret i32 -1\0A}\0A\0A\00" +@.str13197 = private unnamed_addr constant [1 x i8] c"\00" +@.str13198 = private unnamed_addr constant [4 x i8] c"int\00" +@.str13199 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20480: index out of range: \00" +@.str13200 = private unnamed_addr constant [41 x i8] c"define i32 @ludic_prop_count() {\0Aentry:\0A\00" +@.str13201 = private unnamed_addr constant [52 x i8] c" %d = load i32, ptr @dyn_count\0A %n = add i32 %d, \00" +@.str13202 = private unnamed_addr constant [18 x i8] c"\0A ret i32 %n\0A}\0A\0A\00" +@.str13203 = private unnamed_addr constant [46 x i8] c"define ptr @ludic_prop_name(i32 %i) {\0Aentry:\0A\00" +@.str13204 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20491: index out of range: \00" +@.str13205 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20492: index out of range: \00" +@.str13206 = private unnamed_addr constant [6 x i8] c" %pe\00" +@.str13207 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %i, \00" +@.str13208 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13209 = private unnamed_addr constant [12 x i8] c" br i1 %pe\00" +@.str13210 = private unnamed_addr constant [12 x i8] c", label %ph\00" +@.str13211 = private unnamed_addr constant [12 x i8] c", label %pn\00" +@.str13212 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13213 = private unnamed_addr constant [3 x i8] c"ph\00" +@.str13214 = private unnamed_addr constant [13 x i8] c":\0A ret ptr \00" +@.str13215 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13216 = private unnamed_addr constant [3 x i8] c"pn\00" +@.str13217 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13218 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %i, \00" +@.str13219 = private unnamed_addr constant [35 x i8] c"\0A %dc = load i32, ptr @dyn_count\0A\00" +@.str13220 = private unnamed_addr constant [70 x i8] c" %ib = icmp uge i32 %dyn, %dc\0A br i1 %ib, label %pbad, label %pdyn\0A\00" +@.str13221 = private unnamed_addr constant [120 x i8] c"pdyn:\0A %np = getelementptr inbounds [32 x ptr], ptr @dynName, i32 0, i32 %dyn\0A %nm = load ptr, ptr %np\0A ret ptr %nm\0A\00" +@.str13222 = private unnamed_addr constant [17 x i8] c"pbad:\0A ret ptr \00" +@.str13223 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" +@.str13224 = private unnamed_addr constant [48 x i8] c"define i32 @ludic_field_count(i32 %p) {\0Aentry:\0A\00" +@.str13225 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20510: index out of range: \00" +@.str13226 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20511: index out of range: \00" +@.str13227 = private unnamed_addr constant [7 x i8] c" %fce\00" +@.str13228 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str13229 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13230 = private unnamed_addr constant [13 x i8] c" br i1 %fce\00" +@.str13231 = private unnamed_addr constant [13 x i8] c", label %fch\00" +@.str13232 = private unnamed_addr constant [13 x i8] c", label %fcn\00" +@.str13233 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13234 = private unnamed_addr constant [4 x i8] c"fch\00" +@.str13235 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" +@.str13236 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13237 = private unnamed_addr constant [4 x i8] c"fcn\00" +@.str13238 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13239 = private unnamed_addr constant [22 x i8] c" %dyn = sub i32 %p, \00" +@.str13240 = private unnamed_addr constant [35 x i8] c"\0A %dc = load i32, ptr @dyn_count\0A\00" +@.str13241 = private unnamed_addr constant [72 x i8] c" %ib = icmp uge i32 %dyn, %dc\0A br i1 %ib, label %fcbad, label %fcdyn\0A\00" +@.str13242 = private unnamed_addr constant [118 x i8] c"fcdyn:\0A %fp = getelementptr inbounds [32 x i32], ptr @dynF, i32 0, i32 %dyn\0A %fn = load i32, ptr %fp\0A ret i32 %fn\0A\00" +@.str13243 = private unnamed_addr constant [23 x i8] c"fcbad:\0A ret i32 0\0A}\0A\0A\00" +@.str13244 = private unnamed_addr constant [55 x i8] c"define ptr @ludic_field_name(i32 %p, i32 %f) {\0Aentry:\0A\00" +@.str13245 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20529: index out of range: \00" +@.str13246 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20530: index out of range: \00" +@.str13247 = private unnamed_addr constant [7 x i8] c" %fne\00" +@.str13248 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str13249 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13250 = private unnamed_addr constant [13 x i8] c" br i1 %fne\00" +@.str13251 = private unnamed_addr constant [13 x i8] c", label %fnk\00" +@.str13252 = private unnamed_addr constant [13 x i8] c", label %fnn\00" +@.str13253 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13254 = private unnamed_addr constant [4 x i8] c"fnk\00" +@.str13255 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13256 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20536: index out of range: \00" +@.str13257 = private unnamed_addr constant [2 x i8] c"_\00" +@.str13258 = private unnamed_addr constant [8 x i8] c" %fnfe\00" +@.str13259 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" +@.str13260 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13261 = private unnamed_addr constant [14 x i8] c" br i1 %fnfe\00" +@.str13262 = private unnamed_addr constant [14 x i8] c", label %fnfh\00" +@.str13263 = private unnamed_addr constant [14 x i8] c", label %fnfn\00" +@.str13264 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13265 = private unnamed_addr constant [5 x i8] c"fnfh\00" +@.str13266 = private unnamed_addr constant [13 x i8] c":\0A ret ptr \00" +@.str13267 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13268 = private unnamed_addr constant [5 x i8] c"fnfn\00" +@.str13269 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13270 = private unnamed_addr constant [11 x i8] c" ret ptr \00" +@.str13271 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13272 = private unnamed_addr constant [4 x i8] c"fnn\00" +@.str13273 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13274 = private unnamed_addr constant [11 x i8] c" ret ptr \00" +@.str13275 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" +@.str13276 = private unnamed_addr constant [55 x i8] c"define ptr @ludic_field_type(i32 %p, i32 %f) {\0Aentry:\0A\00" +@.str13277 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20555: index out of range: \00" +@.str13278 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20556: index out of range: \00" +@.str13279 = private unnamed_addr constant [7 x i8] c" %fte\00" +@.str13280 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %p, \00" +@.str13281 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13282 = private unnamed_addr constant [13 x i8] c" br i1 %fte\00" +@.str13283 = private unnamed_addr constant [13 x i8] c", label %ftk\00" +@.str13284 = private unnamed_addr constant [13 x i8] c", label %ftn\00" +@.str13285 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13286 = private unnamed_addr constant [4 x i8] c"ftk\00" +@.str13287 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13288 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20562: index out of range: \00" +@.str13289 = private unnamed_addr constant [2 x i8] c"_\00" +@.str13290 = private unnamed_addr constant [8 x i8] c" %ftfe\00" +@.str13291 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %f, \00" +@.str13292 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13293 = private unnamed_addr constant [14 x i8] c" br i1 %ftfe\00" +@.str13294 = private unnamed_addr constant [14 x i8] c", label %ftfh\00" +@.str13295 = private unnamed_addr constant [14 x i8] c", label %ftfn\00" +@.str13296 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13297 = private unnamed_addr constant [5 x i8] c"ftfh\00" +@.str13298 = private unnamed_addr constant [13 x i8] c":\0A ret ptr \00" +@.str13299 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13300 = private unnamed_addr constant [5 x i8] c"ftfn\00" +@.str13301 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13302 = private unnamed_addr constant [11 x i8] c" ret ptr \00" +@.str13303 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13304 = private unnamed_addr constant [4 x i8] c"ftn\00" +@.str13305 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13306 = private unnamed_addr constant [11 x i8] c" ret ptr \00" +@.str13307 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" +@.str13308 = private unnamed_addr constant [38 x i8] c"define void @L_tick_fixed() {\0Aentry:\0A\00" +@.str13309 = private unnamed_addr constant [6 x i8] c"Input\00" +@.str13310 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" +@.str13311 = private unnamed_addr constant [7 x i8] c"Update\00" +@.str13312 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" +@.str13313 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str13314 = private unnamed_addr constant [39 x i8] c"define void @L_tick_render() {\0Aentry:\0A\00" +@.str13315 = private unnamed_addr constant [7 x i8] c"Render\00" +@.str13316 = private unnamed_addr constant [8 x i8] c"Overlay\00" +@.str13317 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str13318 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20602: index out of range: \00" +@.str13319 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20602: index out of range: \00" +@.str13320 = private unnamed_addr constant [49 x i8] c"define i32 @main(i32 %argc, ptr %argv) {\0Aentry:\0A\00" +@.str13321 = private unnamed_addr constant [32 x i8] c" store i32 %argc, ptr @L_argc\0A\00" +@.str13322 = private unnamed_addr constant [32 x i8] c" store ptr %argv, ptr @L_argv\0A\00" +@.str13323 = private unnamed_addr constant [31 x i8] c" call void @L_init_runtime()\0A\00" +@.str13324 = private unnamed_addr constant [28 x i8] c" call void @L_grow(i32 1)\0A\00" +@.str13325 = private unnamed_addr constant [8 x i8] c"rt_init\00" +@.str13326 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13327 = private unnamed_addr constant [8 x i8] c"rt_init\00" +@.str13328 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str13329 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" +@.str13330 = private unnamed_addr constant [6 x i8] c"Start\00" +@.str13331 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str13332 = private unnamed_addr constant [16 x i8] c", ptr @L_scene\0A\00" +@.str13333 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20626: index out of range: \00" +@.str13334 = private unnamed_addr constant [26 x i8] c" call void @scene_enter_\00" +@.str13335 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20626: index out of range: \00" +@.str13336 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str13337 = private unnamed_addr constant [14 x i8] c"program_start\00" +@.str13338 = private unnamed_addr constant [33 x i8] c" call void @ev_program_start()\0A\00" +@.str13339 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" +@.str13340 = private unnamed_addr constant [7 x i8] c"loop:\0A\00" +@.str13341 = private unnamed_addr constant [25 x i8] c"load i32, ptr @L_running\00" +@.str13342 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str13343 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str13344 = private unnamed_addr constant [11 x i8] c"rt_running\00" +@.str13345 = private unnamed_addr constant [10 x i8] c"call i32 \00" +@.str13346 = private unnamed_addr constant [11 x i8] c"rt_running\00" +@.str13347 = private unnamed_addr constant [3 x i8] c"()\00" +@.str13348 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str13349 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str13350 = private unnamed_addr constant [8 x i8] c"and i1 \00" +@.str13351 = private unnamed_addr constant [3 x i8] c", \00" +@.str13352 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str13353 = private unnamed_addr constant [28 x i8] c", label %body, label %done\0A\00" +@.str13354 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str13355 = private unnamed_addr constant [28 x i8] c", label %body, label %done\0A\00" +@.str13356 = private unnamed_addr constant [7 x i8] c"body:\0A\00" +@.str13357 = private unnamed_addr constant [12 x i8] c"input_drive\00" +@.str13358 = private unnamed_addr constant [10 x i8] c"call i32 \00" +@.str13359 = private unnamed_addr constant [12 x i8] c"input_drive\00" +@.str13360 = private unnamed_addr constant [3 x i8] c"()\00" +@.str13361 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str13362 = private unnamed_addr constant [14 x i8] c", ptr @L_key\0A\00" +@.str13363 = private unnamed_addr constant [8 x i8] c"rt_poll\00" +@.str13364 = private unnamed_addr constant [10 x i8] c"call i32 \00" +@.str13365 = private unnamed_addr constant [8 x i8] c"rt_poll\00" +@.str13366 = private unnamed_addr constant [3 x i8] c"()\00" +@.str13367 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str13368 = private unnamed_addr constant [14 x i8] c", ptr @L_key\0A\00" +@.str13369 = private unnamed_addr constant [11 x i8] c"rt_ui_tick\00" +@.str13370 = private unnamed_addr constant [21 x i8] c"load i32, ptr @L_key\00" +@.str13371 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13372 = private unnamed_addr constant [11 x i8] c"rt_ui_tick\00" +@.str13373 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str13374 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13375 = private unnamed_addr constant [6 x i8] c"Input\00" +@.str13376 = private unnamed_addr constant [12 x i8] c"FixedUpdate\00" +@.str13377 = private unnamed_addr constant [7 x i8] c"Update\00" +@.str13378 = private unnamed_addr constant [11 x i8] c"LateUpdate\00" +@.str13379 = private unnamed_addr constant [9 x i8] c"rt_clear\00" +@.str13380 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13381 = private unnamed_addr constant [9 x i8] c"rt_clear\00" +@.str13382 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str13383 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13384 = private unnamed_addr constant [7 x i8] c"Render\00" +@.str13385 = private unnamed_addr constant [8 x i8] c"Overlay\00" +@.str13386 = private unnamed_addr constant [11 x i8] c"rt_present\00" +@.str13387 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13388 = private unnamed_addr constant [11 x i8] c"rt_present\00" +@.str13389 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str13390 = private unnamed_addr constant [23 x i8] c"load i32, ptr @L_frame\00" +@.str13391 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str13392 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str13393 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str13394 = private unnamed_addr constant [16 x i8] c", ptr @L_frame\0A\00" +@.str13395 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" +@.str13396 = private unnamed_addr constant [7 x i8] c"done:\0A\00" +@.str13397 = private unnamed_addr constant [35 x i8] c" call void @L_despawn_all(i32 2)\0A\00" +@.str13398 = private unnamed_addr constant [7 x i8] c"OnQuit\00" +@.str13399 = private unnamed_addr constant [13 x i8] c"program_quit\00" +@.str13400 = private unnamed_addr constant [32 x i8] c" call void @ev_program_quit()\0A\00" +@.str13401 = private unnamed_addr constant [12 x i8] c"rt_shutdown\00" +@.str13402 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13403 = private unnamed_addr constant [12 x i8] c"rt_shutdown\00" +@.str13404 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str13405 = private unnamed_addr constant [15 x i8] c" ret i32 0\0A}\0A\00" +@.str13406 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20721: index out of range: \00" +@.str13407 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20722: index out of range: \00" +@.str13408 = private unnamed_addr constant [4 x i8] c"@g_\00" +@.str13409 = private unnamed_addr constant [15 x i8] c"machine state \00" +@.str13410 = private unnamed_addr constant [27 x i8] c" is not a variant of enum \00" +@.str13411 = private unnamed_addr constant [1 x i8] c"\00" +@.str13412 = private unnamed_addr constant [15 x i8] c"load i32, ptr \00" +@.str13413 = private unnamed_addr constant [10 x i8] c"call i32 \00" +@.str13414 = private unnamed_addr constant [7 x i8] c"rt_reg\00" +@.str13415 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str13416 = private unnamed_addr constant [2 x i8] c")\00" +@.str13417 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20757: index out of range: \00" +@.str13418 = private unnamed_addr constant [6 x i8] c"smend\00" +@.str13419 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20762: index out of range: \00" +@.str13420 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str13421 = private unnamed_addr constant [3 x i8] c", \00" +@.str13422 = private unnamed_addr constant [6 x i8] c"sbody\00" +@.str13423 = private unnamed_addr constant [5 x i8] c"sarm\00" +@.str13424 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str13425 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13426 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13427 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13428 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13429 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str13430 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13431 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13432 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str13433 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13434 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13435 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20784: index out of range: \00" +@.str13436 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20787: index out of range: \00" +@.str13437 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20787: index out of range: \00" +@.str13438 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str13439 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13440 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13441 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13442 = private unnamed_addr constant [11 x i8] c"rt_set_reg\00" +@.str13443 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str13444 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str13445 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13446 = private unnamed_addr constant [27 x i8] c"become: no state or scene \00" +@.str13447 = private unnamed_addr constant [25 x i8] c" call void @scene_exit_\00" +@.str13448 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str13449 = private unnamed_addr constant [30 x i8] c" call void @L_scene_leave()\0A\00" +@.str13450 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str13451 = private unnamed_addr constant [16 x i8] c", ptr @L_scene\0A\00" +@.str13452 = private unnamed_addr constant [26 x i8] c" call void @scene_enter_\00" +@.str13453 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str13454 = private unnamed_addr constant [5 x i8] c"file\00" +@.str13455 = private unnamed_addr constant [4 x i8] c"%io\00" +@.str13456 = private unnamed_addr constant [3 x i8] c" \00" +@.str13457 = private unnamed_addr constant [14 x i8] c" = call i64 @\00" +@.str13458 = private unnamed_addr constant [6 x i8] c"(ptr \00" +@.str13459 = private unnamed_addr constant [14 x i8] c", i64 1, i64 \00" +@.str13460 = private unnamed_addr constant [11 x i8] c", ptr %f)\0A\00" +@.str13461 = private unnamed_addr constant [5 x i8] c"size\00" +@.str13462 = private unnamed_addr constant [6 x i8] c"%ioff\00" +@.str13463 = private unnamed_addr constant [3 x i8] c" \00" +@.str13464 = private unnamed_addr constant [12 x i8] c" = add i64 \00" +@.str13465 = private unnamed_addr constant [3 x i8] c", \00" +@.str13466 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13467 = private unnamed_addr constant [5 x i8] c"%ioa\00" +@.str13468 = private unnamed_addr constant [3 x i8] c" \00" +@.str13469 = private unnamed_addr constant [45 x i8] c" = getelementptr inbounds i8, ptr %buf, i64 \00" +@.str13470 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13471 = private unnamed_addr constant [5 x i8] c"save\00" +@.str13472 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" +@.str13473 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13474 = private unnamed_addr constant [7 x i8] c", i64 \00" +@.str13475 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13476 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" +@.str13477 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13478 = private unnamed_addr constant [7 x i8] c", i64 \00" +@.str13479 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13480 = private unnamed_addr constant [6 x i8] c"%ioff\00" +@.str13481 = private unnamed_addr constant [3 x i8] c" \00" +@.str13482 = private unnamed_addr constant [12 x i8] c" = add i64 \00" +@.str13483 = private unnamed_addr constant [3 x i8] c", \00" @.str13484 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13485 = private unnamed_addr constant [3 x i8] c" \00" -@.str13486 = private unnamed_addr constant [45 x i8] c" = getelementptr inbounds i8, ptr %buf, i32 \00" -@.str13487 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13488 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" -@.str13489 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13490 = private unnamed_addr constant [7 x i8] c", i64 \00" -@.str13491 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13492 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20947: index out of range: \00" -@.str13493 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str13494 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" -@.str13495 = private unnamed_addr constant [22 x i8] c"define void @L_apply_\00" -@.str13496 = private unnamed_addr constant [39 x i8] c"(i32 %e, ptr %buf, i32 %len) {\0Aentry:\0A\00" -@.str13497 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20968: index out of range: \00" -@.str13498 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20969: index out of range: \00" -@.str13499 = private unnamed_addr constant [3 x i8] c" \00" -@.str13500 = private unnamed_addr constant [28 x i8] c" = getelementptr inbounds [\00" -@.str13501 = private unnamed_addr constant [9 x i8] c" x %Cmp_\00" -@.str13502 = private unnamed_addr constant [11 x i8] c"], ptr @S_\00" -@.str13503 = private unnamed_addr constant [17 x i8] c", i32 0, i32 %e\0A\00" -@.str13504 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20975: index out of range: \00" -@.str13505 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20976: index out of range: \00" -@.str13506 = private unnamed_addr constant [3 x i8] c" \00" -@.str13507 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" -@.str13508 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13509 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" -@.str13510 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13511 = private unnamed_addr constant [3 x i8] c" \00" -@.str13512 = private unnamed_addr constant [45 x i8] c" = getelementptr inbounds i8, ptr %buf, i32 \00" -@.str13513 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13514 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" -@.str13515 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13516 = private unnamed_addr constant [7 x i8] c", i64 \00" -@.str13517 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13518 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20980: index out of range: \00" -@.str13519 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str13520 = private unnamed_addr constant [56 x i8] c"define i32 @ludic_serialize(i32 %e, ptr %buf) {\0Aentry:\0A\00" -@.str13521 = private unnamed_addr constant [33 x i8] c" %kp = getelementptr inbounds [\00" -@.str13522 = private unnamed_addr constant [62 x i8] c" x i32], ptr @L_kind, i32 0, i32 %e\0A %k = load i32, ptr %kp\0A\00" -@.str13523 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21003: index out of range: \00" -@.str13524 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21003: index out of range: \00" -@.str13525 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21004: index out of range: \00" -@.str13526 = private unnamed_addr constant [5 x i8] c" %c\00" -@.str13527 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" -@.str13528 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13529 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" -@.str13530 = private unnamed_addr constant [11 x i8] c", label %h\00" -@.str13531 = private unnamed_addr constant [11 x i8] c", label %n\00" -@.str13532 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13533 = private unnamed_addr constant [2 x i8] c"h\00" -@.str13534 = private unnamed_addr constant [7 x i8] c":\0A %r\00" -@.str13535 = private unnamed_addr constant [26 x i8] c" = call i32 @L_serialize_\00" -@.str13536 = private unnamed_addr constant [32 x i8] c"(i32 %e, ptr %buf)\0A ret i32 %r\00" -@.str13537 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13538 = private unnamed_addr constant [2 x i8] c"n\00" -@.str13539 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13540 = private unnamed_addr constant [16 x i8] c" ret i32 0\0A}\0A\0A\00" -@.str13541 = private unnamed_addr constant [63 x i8] c"define void @ludic_apply(i32 %e, ptr %buf, i32 %len) {\0Aentry:\0A\00" -@.str13542 = private unnamed_addr constant [33 x i8] c" %kp = getelementptr inbounds [\00" -@.str13543 = private unnamed_addr constant [62 x i8] c" x i32], ptr @L_kind, i32 0, i32 %e\0A %k = load i32, ptr %kp\0A\00" -@.str13544 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21019: index out of range: \00" -@.str13545 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21019: index out of range: \00" -@.str13546 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21020: index out of range: \00" -@.str13547 = private unnamed_addr constant [5 x i8] c" %c\00" -@.str13548 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" -@.str13549 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13550 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" -@.str13551 = private unnamed_addr constant [11 x i8] c", label %h\00" -@.str13552 = private unnamed_addr constant [11 x i8] c", label %n\00" -@.str13553 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13554 = private unnamed_addr constant [2 x i8] c"h\00" -@.str13555 = private unnamed_addr constant [24 x i8] c":\0A call void @L_apply_\00" -@.str13556 = private unnamed_addr constant [41 x i8] c"(i32 %e, ptr %buf, i32 %len)\0A ret void\0A\00" -@.str13557 = private unnamed_addr constant [2 x i8] c"n\00" -@.str13558 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13559 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str13560 = private unnamed_addr constant [46 x i8] c"define i32 @ludic_sync_size(i32 %e) {\0Aentry:\0A\00" -@.str13561 = private unnamed_addr constant [33 x i8] c" %kp = getelementptr inbounds [\00" -@.str13562 = private unnamed_addr constant [62 x i8] c" x i32], ptr @L_kind, i32 0, i32 %e\0A %k = load i32, ptr %kp\0A\00" -@.str13563 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21037: index out of range: \00" -@.str13564 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21037: index out of range: \00" -@.str13565 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21038: index out of range: \00" -@.str13566 = private unnamed_addr constant [5 x i8] c" %c\00" -@.str13567 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" -@.str13568 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13569 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" -@.str13570 = private unnamed_addr constant [11 x i8] c", label %h\00" -@.str13571 = private unnamed_addr constant [11 x i8] c", label %n\00" -@.str13572 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13573 = private unnamed_addr constant [2 x i8] c"h\00" -@.str13574 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" -@.str13575 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21041: index out of range: \00" -@.str13576 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13577 = private unnamed_addr constant [2 x i8] c"n\00" -@.str13578 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13579 = private unnamed_addr constant [16 x i8] c" ret i32 0\0A}\0A\0A\00" -@.str13580 = private unnamed_addr constant [38 x i8] c"define i32 @L_owner(i32 %e) {\0Aentry:\0A\00" -@.str13581 = private unnamed_addr constant [32 x i8] c" %p = getelementptr inbounds [\00" -@.str13582 = private unnamed_addr constant [82 x i8] c" x i32], ptr @L_owner_arr, i32 0, i32 %e\0A %v = load i32, ptr %p\0A ret i32 %v\0A}\0A\0A\00" -@.str13583 = private unnamed_addr constant [52 x i8] c"define void @L_set_owner(i32 %e, i32 %id) {\0Aentry:\0A\00" -@.str13584 = private unnamed_addr constant [32 x i8] c" %p = getelementptr inbounds [\00" -@.str13585 = private unnamed_addr constant [80 x i8] c" x i32], ptr @L_owner_arr, i32 0, i32 %e\0A store i32 %id, ptr %p\0A ret void\0A}\0A\0A\00" -@.str13586 = private unnamed_addr constant [41 x i8] c"define i32 @L_is_owner(i32 %e) {\0Aentry:\0A\00" -@.str13587 = private unnamed_addr constant [32 x i8] c" %p = getelementptr inbounds [\00" -@.str13588 = private unnamed_addr constant [66 x i8] c" x i32], ptr @L_owner_arr, i32 0, i32 %e\0A %o = load i32, ptr %p\0A\00" -@.str13589 = private unnamed_addr constant [106 x i8] c" %lid = load i32, ptr @L_localid\0A %eq = icmp eq i32 %o, %lid\0A %r = zext i1 %eq to i32\0A ret i32 %r\0A}\0A\0A\00" -@.str13590 = private unnamed_addr constant [62 x i8] c"@L_netq = internal global [64 x [2048 x i8]] zeroinitializer\0A\00" -@.str13591 = private unnamed_addr constant [56 x i8] c"@L_netlen = internal global [64 x i32] zeroinitializer\0A\00" -@.str13592 = private unnamed_addr constant [36 x i8] c"@L_nethead = internal global i32 0\0A\00" -@.str13593 = private unnamed_addr constant [36 x i8] c"@L_nettail = internal global i32 0\0A\00" -@.str13594 = private unnamed_addr constant [65 x i8] c"define void @L_net_send(i32 %peer, ptr %buf, i32 %len) {\0Aentry:\0A\00" -@.str13595 = private unnamed_addr constant [71 x i8] c" %l0 = icmp slt i32 %len, 0\0A %len1 = select i1 %l0, i32 0, i32 %len\0A\00" -@.str13596 = private unnamed_addr constant [76 x i8] c" %l1 = icmp sgt i32 %len1, 2048\0A %n = select i1 %l1, i32 2048, i32 %len1\0A\00" -@.str13597 = private unnamed_addr constant [65 x i8] c" %t = load i32, ptr @L_nettail\0A %h = load i32, ptr @L_nethead\0A\00" -@.str13598 = private unnamed_addr constant [78 x i8] c" %t1 = add i32 %t, 1\0A %tn = srem i32 %t1, 64\0A %full = icmp eq i32 %tn, %h\0A\00" -@.str13599 = private unnamed_addr constant [39 x i8] c" br i1 %full, label %drop, label %go\0A\00" -@.str13600 = private unnamed_addr constant [5 x i8] c"go:\0A\00" -@.str13601 = private unnamed_addr constant [80 x i8] c" %row = getelementptr inbounds [64 x [2048 x i8]], ptr @L_netq, i32 0, i32 %t\0A\00" -@.str13602 = private unnamed_addr constant [76 x i8] c" %nz = zext i32 %n to i64\0A call ptr @memcpy(ptr %row, ptr %buf, i64 %nz)\0A\00" -@.str13603 = private unnamed_addr constant [97 x i8] c" %lp = getelementptr inbounds [64 x i32], ptr @L_netlen, i32 0, i32 %t\0A store i32 %n, ptr %lp\0A\00" -@.str13604 = private unnamed_addr constant [50 x i8] c" store i32 %tn, ptr @L_nettail\0A br label %drop\0A\00" -@.str13605 = private unnamed_addr constant [21 x i8] c"drop:\0A ret void\0A}\0A\0A\00" -@.str13606 = private unnamed_addr constant [53 x i8] c"define i32 @L_net_poll(ptr %buf, i32 %cap) {\0Aentry:\0A\00" -@.str13607 = private unnamed_addr constant [95 x i8] c" %h = load i32, ptr @L_nethead\0A %t = load i32, ptr @L_nettail\0A %empty = icmp eq i32 %h, %t\0A\00" -@.str13608 = private unnamed_addr constant [40 x i8] c" br i1 %empty, label %none, label %go\0A\00" -@.str13609 = private unnamed_addr constant [5 x i8] c"go:\0A\00" -@.str13610 = private unnamed_addr constant [99 x i8] c" %lp = getelementptr inbounds [64 x i32], ptr @L_netlen, i32 0, i32 %h\0A %ln = load i32, ptr %lp\0A\00" -@.str13611 = private unnamed_addr constant [74 x i8] c" %big = icmp sgt i32 %ln, %cap\0A %n = select i1 %big, i32 %cap, i32 %ln\0A\00" -@.str13612 = private unnamed_addr constant [80 x i8] c" %row = getelementptr inbounds [64 x [2048 x i8]], ptr @L_netq, i32 0, i32 %h\0A\00" -@.str13613 = private unnamed_addr constant [76 x i8] c" %nz = zext i32 %n to i64\0A call ptr @memcpy(ptr %buf, ptr %row, i64 %nz)\0A\00" -@.str13614 = private unnamed_addr constant [93 x i8] c" %h1 = add i32 %h, 1\0A %hn = srem i32 %h1, 64\0A store i32 %hn, ptr @L_nethead\0A ret i32 %n\0A\00" -@.str13615 = private unnamed_addr constant [22 x i8] c"none:\0A ret i32 0\0A}\0A\0A\00" -@.str13616 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21114: index out of range: \00" -@.str13617 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21120: index out of range: \00" -@.str13618 = private unnamed_addr constant [9 x i8] c"net_send\00" -@.str13619 = private unnamed_addr constant [11 x i8] c"L_net_send\00" -@.str13620 = private unnamed_addr constant [9 x i8] c"net_poll\00" -@.str13621 = private unnamed_addr constant [11 x i8] c"L_net_poll\00" -@.str13622 = private unnamed_addr constant [58 x i8] c"@L_recvbuf = internal global [2048 x i8] zeroinitializer\0A\00" -@.str13623 = private unnamed_addr constant [9 x i8] c"net_poll\00" -@.str13624 = private unnamed_addr constant [53 x i8] c"define void @L_net_pump() {\0Aentry:\0A br label %loop\0A\00" -@.str13625 = private unnamed_addr constant [24 x i8] c"loop:\0A %n = call i32 @\00" -@.str13626 = private unnamed_addr constant [28 x i8] c"(ptr @L_recvbuf, i32 2048)\0A\00" -@.str13627 = private unnamed_addr constant [68 x i8] c" %done = icmp eq i32 %n, 0\0A br i1 %done, label %fin, label %body\0A\00" -@.str13628 = private unnamed_addr constant [41 x i8] c"body:\0A %eid = load i32, ptr @L_recvbuf\0A\00" -@.str13629 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21139: index out of range: \00" -@.str13630 = private unnamed_addr constant [5 x i8] c" %c\00" -@.str13631 = private unnamed_addr constant [22 x i8] c" = icmp eq i32 %eid, \00" -@.str13632 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13633 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" -@.str13634 = private unnamed_addr constant [11 x i8] c", label %h\00" -@.str13635 = private unnamed_addr constant [11 x i8] c", label %x\00" -@.str13636 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13637 = private unnamed_addr constant [2 x i8] c"h\00" -@.str13638 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13639 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21150: index out of range: \00" -@.str13640 = private unnamed_addr constant [2 x i8] c"_\00" -@.str13641 = private unnamed_addr constant [6 x i8] c" %fa\00" -@.str13642 = private unnamed_addr constant [51 x i8] c" = getelementptr inbounds i8, ptr @L_recvbuf, i32 \00" -@.str13643 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13644 = private unnamed_addr constant [6 x i8] c" %fv\00" -@.str13645 = private unnamed_addr constant [9 x i8] c" = load \00" -@.str13646 = private unnamed_addr constant [10 x i8] c", ptr %fa\00" -@.str13647 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13648 = private unnamed_addr constant [3 x i8] c", \00" -@.str13649 = private unnamed_addr constant [5 x i8] c" %fv\00" -@.str13650 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21156: index out of range: \00" -@.str13651 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" -@.str13652 = private unnamed_addr constant [2 x i8] c"(\00" +@.str13485 = private unnamed_addr constant [2 x i8] c"0\00" +@.str13486 = private unnamed_addr constant [6 x i8] c"fread\00" +@.str13487 = private unnamed_addr constant [5 x i8] c"load\00" +@.str13488 = private unnamed_addr constant [70 x i8] c" %sncap0 = load i32, ptr @L_cap\0A store i32 %sncap0, ptr @L_snapcap\0A\00" +@.str13489 = private unnamed_addr constant [11 x i8] c"@L_snapcap\00" +@.str13490 = private unnamed_addr constant [2 x i8] c"4\00" +@.str13491 = private unnamed_addr constant [37 x i8] c" %sncap = load i32, ptr @L_snapcap\0A\00" +@.str13492 = private unnamed_addr constant [33 x i8] c" call void @L_grow(i32 %sncap)\0A\00" +@.str13493 = private unnamed_addr constant [37 x i8] c" %sncap64 = sext i32 %sncap to i64\0A\00" +@.str13494 = private unnamed_addr constant [8 x i8] c"@L_entc\00" +@.str13495 = private unnamed_addr constant [2 x i8] c"4\00" +@.str13496 = private unnamed_addr constant [9 x i8] c"@L_freen\00" +@.str13497 = private unnamed_addr constant [2 x i8] c"4\00" +@.str13498 = private unnamed_addr constant [33 x i8] c" %nalive = mul i64 %sncap64, 4\0A\00" +@.str13499 = private unnamed_addr constant [8 x i8] c"L_alive\00" +@.str13500 = private unnamed_addr constant [8 x i8] c"%nalive\00" +@.str13501 = private unnamed_addr constant [11 x i8] c"L_freelist\00" +@.str13502 = private unnamed_addr constant [8 x i8] c"%nalive\00" +@.str13503 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str13504 = private unnamed_addr constant [8 x i8] c"%nalive\00" +@.str13505 = private unnamed_addr constant [12 x i8] c"L_owner_arr\00" +@.str13506 = private unnamed_addr constant [8 x i8] c"%nalive\00" +@.str13507 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20876: index out of range: \00" +@.str13508 = private unnamed_addr constant [4 x i8] c"@g_\00" +@.str13509 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20876: index out of range: \00" +@.str13510 = private unnamed_addr constant [2 x i8] c"4\00" +@.str13511 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20880: index out of range: \00" +@.str13512 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20881: index out of range: \00" +@.str13513 = private unnamed_addr constant [7 x i8] c"%csz1_\00" +@.str13514 = private unnamed_addr constant [5 x i8] c"%csz\00" +@.str13515 = private unnamed_addr constant [3 x i8] c" \00" +@.str13516 = private unnamed_addr constant [37 x i8] c" = ptrtoint ptr getelementptr (%Cmp_\00" +@.str13517 = private unnamed_addr constant [27 x i8] c", ptr null, i32 1) to i64\0A\00" +@.str13518 = private unnamed_addr constant [3 x i8] c" \00" +@.str13519 = private unnamed_addr constant [22 x i8] c" = mul i64 %sncap64, \00" +@.str13520 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13521 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str13522 = private unnamed_addr constant [3 x i8] c"H_\00" +@.str13523 = private unnamed_addr constant [9 x i8] c"%sncap64\00" +@.str13524 = private unnamed_addr constant [5 x i8] c"%snb\00" +@.str13525 = private unnamed_addr constant [3 x i8] c" \00" +@.str13526 = private unnamed_addr constant [19 x i8] c" = load ptr, ptr @\00" +@.str13527 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13528 = private unnamed_addr constant [5 x i8] c"file\00" +@.str13529 = private unnamed_addr constant [70 x i8] c"@.sav_path = private unnamed_addr constant [10 x i8] c\22ludic.sav\5C00\22\0A\00" +@.str13530 = private unnamed_addr constant [60 x i8] c"@.sav_wb = private unnamed_addr constant [3 x i8] c\22wb\5C00\22\0A\00" +@.str13531 = private unnamed_addr constant [60 x i8] c"@.sav_rb = private unnamed_addr constant [3 x i8] c\22rb\5C00\22\0A\00" +@.str13532 = private unnamed_addr constant [14 x i8] c"rt_save_state\00" +@.str13533 = private unnamed_addr constant [14 x i8] c"rt_load_state\00" +@.str13534 = private unnamed_addr constant [32 x i8] c"define void @L_save() {\0Aentry:\0A\00" +@.str13535 = private unnamed_addr constant [54 x i8] c" %f = call ptr @fopen(ptr @.sav_path, ptr @.sav_wb)\0A\00" +@.str13536 = private unnamed_addr constant [31 x i8] c" %bad = icmp eq ptr %f, null\0A\00" +@.str13537 = private unnamed_addr constant [41 x i8] c" br i1 %bad, label %out, label %go\0Ago:\0A\00" +@.str13538 = private unnamed_addr constant [7 x i8] c"fwrite\00" +@.str13539 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13540 = private unnamed_addr constant [14 x i8] c"rt_save_state\00" +@.str13541 = private unnamed_addr constant [10 x i8] c"(ptr %f)\0A\00" +@.str13542 = private unnamed_addr constant [68 x i8] c" %c = call i32 @fclose(ptr %f)\0A br label %out\0Aout:\0A ret void\0A}\0A\0A\00" +@.str13543 = private unnamed_addr constant [31 x i8] c"define i32 @L_load() {\0Aentry:\0A\00" +@.str13544 = private unnamed_addr constant [54 x i8] c" %f = call ptr @fopen(ptr @.sav_path, ptr @.sav_rb)\0A\00" +@.str13545 = private unnamed_addr constant [31 x i8] c" %bad = icmp eq ptr %f, null\0A\00" +@.str13546 = private unnamed_addr constant [60 x i8] c" br i1 %bad, label %miss, label %go\0Amiss:\0A ret i32 0\0Ago:\0A\00" +@.str13547 = private unnamed_addr constant [6 x i8] c"fread\00" +@.str13548 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13549 = private unnamed_addr constant [14 x i8] c"rt_load_state\00" +@.str13550 = private unnamed_addr constant [10 x i8] c"(ptr %f)\0A\00" +@.str13551 = private unnamed_addr constant [48 x i8] c" %c = call i32 @fclose(ptr %f)\0A ret i32 1\0A}\0A\0A\00" +@.str13552 = private unnamed_addr constant [45 x i8] c"define i32 @L_world_save(ptr %buf) {\0Aentry:\0A\00" +@.str13553 = private unnamed_addr constant [5 x i8] c"save\00" +@.str13554 = private unnamed_addr constant [1 x i8] c"\00" +@.str13555 = private unnamed_addr constant [5 x i8] c"%wsn\00" +@.str13556 = private unnamed_addr constant [3 x i8] c" \00" +@.str13557 = private unnamed_addr constant [14 x i8] c" = trunc i64 \00" +@.str13558 = private unnamed_addr constant [9 x i8] c" to i32\0A\00" +@.str13559 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str13560 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" +@.str13561 = private unnamed_addr constant [56 x i8] c"define void @L_world_load(ptr %buf, i32 %len) {\0Aentry:\0A\00" +@.str13562 = private unnamed_addr constant [5 x i8] c"load\00" +@.str13563 = private unnamed_addr constant [1 x i8] c"\00" +@.str13564 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str13565 = private unnamed_addr constant [37 x i8] c"define i32 @L_world_size() {\0Aentry:\0A\00" +@.str13566 = private unnamed_addr constant [5 x i8] c"size\00" +@.str13567 = private unnamed_addr constant [1 x i8] c"\00" +@.str13568 = private unnamed_addr constant [5 x i8] c"%wzn\00" +@.str13569 = private unnamed_addr constant [3 x i8] c" \00" +@.str13570 = private unnamed_addr constant [14 x i8] c" = trunc i64 \00" +@.str13571 = private unnamed_addr constant [9 x i8] c" to i32\0A\00" +@.str13572 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str13573 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" +@.str13574 = private unnamed_addr constant [5 x i8] c"file\00" +@.str13575 = private unnamed_addr constant [3 x i8] c"i8\00" +@.str13576 = private unnamed_addr constant [3 x i8] c"i8\00" +@.str13577 = private unnamed_addr constant [2 x i8] c"1\00" +@.str13578 = private unnamed_addr constant [2 x i8] c"4\00" +@.str13579 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20983: index out of range: \00" +@.str13580 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20984: index out of range: \00" +@.str13581 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20987: index out of range: \00" +@.str13582 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20987: index out of range: \00" +@.str13583 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20999: index out of range: \00" +@.str13584 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:20999: index out of range: \00" +@.str13585 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21006: index out of range: \00" +@.str13586 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21006: index out of range: \00" +@.str13587 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21014: index out of range: \00" +@.str13588 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21014: index out of range: \00" +@.str13589 = private unnamed_addr constant [24 x i8] c"ludicc(self): warning: \00" +@.str13590 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13591 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21036: index out of range: \00" +@.str13592 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21037: index out of range: \00" +@.str13593 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21040: index out of range: \00" +@.str13594 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21041: index out of range: \00" +@.str13595 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21047: index out of range: \00" +@.str13596 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21049: index out of range: \00" +@.str13597 = private unnamed_addr constant [4 x i8] c"ptr\00" +@.str13598 = private unnamed_addr constant [13 x i8] c"@Sync field \00" +@.str13599 = private unnamed_addr constant [2 x i8] c".\00" +@.str13600 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21049: index out of range: \00" +@.str13601 = private unnamed_addr constant [68 x i8] c" is not a POD scalar (networked fields must be int/bool/fixed/byte)\00" +@.str13602 = private unnamed_addr constant [7 x i8] c"model \00" +@.str13603 = private unnamed_addr constant [9 x i8] c" @Syncs \00" +@.str13604 = private unnamed_addr constant [51 x i8] c" but it has no @Sync fields \E2\80\94 nothing replicates\00" +@.str13605 = private unnamed_addr constant [25 x i8] c"define i32 @L_serialize_\00" +@.str13606 = private unnamed_addr constant [29 x i8] c"(i32 %e, ptr %buf) {\0Aentry:\0A\00" +@.str13607 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21073: index out of range: \00" +@.str13608 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21074: index out of range: \00" +@.str13609 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str13610 = private unnamed_addr constant [3 x i8] c" \00" +@.str13611 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str13612 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13613 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str13614 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21081: index out of range: \00" +@.str13615 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21082: index out of range: \00" +@.str13616 = private unnamed_addr constant [3 x i8] c" \00" +@.str13617 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str13618 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13619 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str13620 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13621 = private unnamed_addr constant [3 x i8] c" \00" +@.str13622 = private unnamed_addr constant [45 x i8] c" = getelementptr inbounds i8, ptr %buf, i32 \00" +@.str13623 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13624 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" +@.str13625 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13626 = private unnamed_addr constant [7 x i8] c", i64 \00" +@.str13627 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13628 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21086: index out of range: \00" +@.str13629 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str13630 = private unnamed_addr constant [5 x i8] c"\0A}\0A\0A\00" +@.str13631 = private unnamed_addr constant [22 x i8] c"define void @L_apply_\00" +@.str13632 = private unnamed_addr constant [39 x i8] c"(i32 %e, ptr %buf, i32 %len) {\0Aentry:\0A\00" +@.str13633 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21107: index out of range: \00" +@.str13634 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21108: index out of range: \00" +@.str13635 = private unnamed_addr constant [3 x i8] c"S_\00" +@.str13636 = private unnamed_addr constant [3 x i8] c" \00" +@.str13637 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str13638 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13639 = private unnamed_addr constant [10 x i8] c", i32 %e\0A\00" +@.str13640 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21115: index out of range: \00" +@.str13641 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21116: index out of range: \00" +@.str13642 = private unnamed_addr constant [3 x i8] c" \00" +@.str13643 = private unnamed_addr constant [32 x i8] c" = getelementptr inbounds %Cmp_\00" +@.str13644 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13645 = private unnamed_addr constant [14 x i8] c", i32 0, i32 \00" +@.str13646 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13647 = private unnamed_addr constant [3 x i8] c" \00" +@.str13648 = private unnamed_addr constant [45 x i8] c" = getelementptr inbounds i8, ptr %buf, i32 \00" +@.str13649 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13650 = private unnamed_addr constant [24 x i8] c" call ptr @memcpy(ptr \00" +@.str13651 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13652 = private unnamed_addr constant [7 x i8] c", i64 \00" @.str13653 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13654 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" -@.str13655 = private unnamed_addr constant [2 x i8] c"x\00" -@.str13656 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13657 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" -@.str13658 = private unnamed_addr constant [20 x i8] c"fin:\0A ret void\0A}\0A\0A\00" -@.str13659 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21175: index out of range: \00" -@.str13660 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21175: index out of range: \00" -@.str13661 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21176: index out of range: \00" -@.str13662 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21177: index out of range: \00" -@.str13663 = private unnamed_addr constant [58 x i8] c"@L_sendbuf = internal global [2048 x i8] zeroinitializer\0A\00" -@.str13664 = private unnamed_addr constant [6 x i8] c"panel\00" -@.str13665 = private unnamed_addr constant [4 x i8] c"col\00" -@.str13666 = private unnamed_addr constant [4 x i8] c"row\00" -@.str13667 = private unnamed_addr constant [6 x i8] c"label\00" -@.str13668 = private unnamed_addr constant [7 x i8] c"button\00" -@.str13669 = private unnamed_addr constant [6 x i8] c"image\00" -@.str13670 = private unnamed_addr constant [7 x i8] c"spacer\00" -@.str13671 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21208: index out of range: \00" -@.str13672 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21208: index out of range: \00" -@.str13673 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21214: index out of range: \00" -@.str13674 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21217: index out of range: \00" -@.str13675 = private unnamed_addr constant [5 x i8] c"font\00" -@.str13676 = private unnamed_addr constant [5 x i8] c"size\00" -@.str13677 = private unnamed_addr constant [3 x i8] c"fg\00" -@.str13678 = private unnamed_addr constant [6 x i8] c"align\00" -@.str13679 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21222: index out of range: \00" -@.str13680 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21223: index out of range: \00" -@.str13681 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21225: index out of range: \00" -@.str13682 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21225: index out of range: \00" -@.str13683 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21226: index out of range: \00" -@.str13684 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21227: index out of range: \00" -@.str13685 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21238: index out of range: \00" -@.str13686 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21244: index out of range: \00" -@.str13687 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21244: index out of range: \00" -@.str13688 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21244: index out of range: \00" -@.str13689 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21250: index out of range: \00" -@.str13690 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21250: index out of range: \00" -@.str13691 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21261: index out of range: \00" -@.str13692 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21261: index out of range: \00" -@.str13693 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21261: index out of range: \00" -@.str13694 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21261: index out of range: \00" -@.str13695 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21266: index out of range: \00" -@.str13696 = private unnamed_addr constant [3 x i8] c"id\00" -@.str13697 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13698 = private unnamed_addr constant [10 x i8] c"rt_ui_set\00" -@.str13699 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str13700 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str13701 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str13702 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13703 = private unnamed_addr constant [2 x i8] c"w\00" -@.str13704 = private unnamed_addr constant [2 x i8] c"h\00" -@.str13705 = private unnamed_addr constant [2 x i8] c"x\00" -@.str13706 = private unnamed_addr constant [2 x i8] c"y\00" -@.str13707 = private unnamed_addr constant [4 x i8] c"pad\00" -@.str13708 = private unnamed_addr constant [4 x i8] c"gap\00" -@.str13709 = private unnamed_addr constant [3 x i8] c"bg\00" -@.str13710 = private unnamed_addr constant [3 x i8] c"fg\00" -@.str13711 = private unnamed_addr constant [7 x i8] c"border\00" -@.str13712 = private unnamed_addr constant [5 x i8] c"grow\00" -@.str13713 = private unnamed_addr constant [5 x i8] c"font\00" -@.str13714 = private unnamed_addr constant [5 x i8] c"size\00" -@.str13715 = private unnamed_addr constant [6 x i8] c"inset\00" -@.str13716 = private unnamed_addr constant [6 x i8] c"focus\00" -@.str13717 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13718 = private unnamed_addr constant [12 x i8] c"rt_ui_reset\00" -@.str13719 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str13720 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13721 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21297: index out of range: \00" -@.str13722 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21300: index out of range: \00" -@.str13723 = private unnamed_addr constant [2 x i8] c"1\00" -@.str13724 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21305: index out of range: \00" -@.str13725 = private unnamed_addr constant [3 x i8] c"id\00" -@.str13726 = private unnamed_addr constant [5 x i8] c"goto\00" -@.str13727 = private unnamed_addr constant [5 x i8] c"text\00" -@.str13728 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13729 = private unnamed_addr constant [18 x i8] c"rt_ui_static_text\00" -@.str13730 = private unnamed_addr constant [6 x i8] c"(i32 \00" -@.str13731 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13732 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13733 = private unnamed_addr constant [5 x i8] c"skin\00" -@.str13734 = private unnamed_addr constant [6 x i8] c"image\00" -@.str13735 = private unnamed_addr constant [10 x i8] c"call i32 \00" -@.str13736 = private unnamed_addr constant [14 x i8] c"rt_image_load\00" -@.str13737 = private unnamed_addr constant [6 x i8] c"(ptr \00" -@.str13738 = private unnamed_addr constant [2 x i8] c")\00" -@.str13739 = private unnamed_addr constant [5 x i8] c"skin\00" -@.str13740 = private unnamed_addr constant [6 x i8] c"align\00" -@.str13741 = private unnamed_addr constant [7 x i8] c"center\00" -@.str13742 = private unnamed_addr constant [4 x i8] c"end\00" -@.str13743 = private unnamed_addr constant [2 x i8] c"1\00" -@.str13744 = private unnamed_addr constant [34 x i8] c"define void @ui_build() {\0Aentry:\0A\00" -@.str13745 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str13746 = private unnamed_addr constant [3 x i8] c", \00" -@.str13747 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21349: index out of range: \00" -@.str13748 = private unnamed_addr constant [7 x i8] c" %arg_\00" -@.str13749 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21349: index out of range: \00" -@.str13750 = private unnamed_addr constant [5 x i8] c"void\00" -@.str13751 = private unnamed_addr constant [20 x i8] c" %retval = alloca \00" -@.str13752 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13753 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21368: index out of range: \00" -@.str13754 = private unnamed_addr constant [9 x i8] c" store \00" -@.str13755 = private unnamed_addr constant [7 x i8] c" %arg_\00" -@.str13756 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13757 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13758 = private unnamed_addr constant [5 x i8] c"void\00" -@.str13759 = private unnamed_addr constant [11 x i8] c"function '\00" -@.str13760 = private unnamed_addr constant [41 x i8] c"' can reach its end without returning a \00" -@.str13761 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" -@.str13762 = private unnamed_addr constant [6 x i8] c"ret:\0A\00" -@.str13763 = private unnamed_addr constant [5 x i8] c"void\00" -@.str13764 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" -@.str13765 = private unnamed_addr constant [6 x i8] c"load \00" -@.str13766 = private unnamed_addr constant [14 x i8] c", ptr %retval\00" -@.str13767 = private unnamed_addr constant [7 x i8] c" ret \00" -@.str13768 = private unnamed_addr constant [2 x i8] c" \00" -@.str13769 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13770 = private unnamed_addr constant [8 x i8] c"define \00" -@.str13771 = private unnamed_addr constant [6 x i8] c" @fn_\00" -@.str13772 = private unnamed_addr constant [2 x i8] c"(\00" -@.str13773 = private unnamed_addr constant [12 x i8] c") {\0Aentry:\0A\00" -@.str13774 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str13775 = private unnamed_addr constant [1 x i8] c"\00" -@.str13776 = private unnamed_addr constant [4 x i8] c"int\00" -@.str13777 = private unnamed_addr constant [24 x i8] c" %retval = alloca i32\0A\00" -@.str13778 = private unnamed_addr constant [32 x i8] c" store i32 %argc, ptr @L_argc\0A\00" -@.str13779 = private unnamed_addr constant [32 x i8] c" store ptr %argv, ptr @L_argv\0A\00" -@.str13780 = private unnamed_addr constant [28 x i8] c" store i32 0, ptr %retval\0A\00" -@.str13781 = private unnamed_addr constant [31 x i8] c" call void @L_init_runtime()\0A\00" -@.str13782 = private unnamed_addr constant [8 x i8] c"rt_init\00" -@.str13783 = private unnamed_addr constant [13 x i8] c" call void \00" -@.str13784 = private unnamed_addr constant [8 x i8] c"rt_init\00" -@.str13785 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13786 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" -@.str13787 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" -@.str13788 = private unnamed_addr constant [6 x i8] c"ret:\0A\00" -@.str13789 = private unnamed_addr constant [22 x i8] c"load i32, ptr %retval\00" -@.str13790 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str13791 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13792 = private unnamed_addr constant [49 x i8] c"define i32 @main(i32 %argc, ptr %argv) {\0Aentry:\0A\00" -@.str13793 = private unnamed_addr constant [3 x i8] c"}\0A\00" -@.str13794 = private unnamed_addr constant [5 x i8] c"void\00" -@.str13795 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" -@.str13796 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" -@.str13797 = private unnamed_addr constant [23 x i8] c"define void @fn__test_\00" -@.str13798 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" -@.str13799 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" -@.str13800 = private unnamed_addr constant [38 x i8] c"@L_test_fail = internal global i32 0\0A\00" -@.str13801 = private unnamed_addr constant [94 x i8] c"@.fmt_test_sum = private unnamed_addr constant [28 x i8] c\22== %d passed, %d failed ==\5C0A\5C00\22\0A\00" -@.str13802 = private unnamed_addr constant [91 x i8] c"@.fmt_test_none = private unnamed_addr constant [20 x i8] c\22no test named \5C22%s\5C22\5C0A\5C00\22\0A\00" -@.str13803 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21449: index out of range: \00" -@.str13804 = private unnamed_addr constant [86 x i8] c"@.fmt_expect = private unnamed_addr constant [22 x i8] c\22%s (got %d, want %d)\5C0A\5C00\22\0A\00" -@.str13805 = private unnamed_addr constant [102 x i8] c"@.fmt_expect_str = private unnamed_addr constant [26 x i8] c\22%s (got \5C22%s\5C22, want \5C22%s\5C22)\5C0A\5C00\22\0A\00" -@.str13806 = private unnamed_addr constant [89 x i8] c"@.fmt_expect_fp = private unnamed_addr constant [22 x i8] c\22%s (got %g, want %g)\5C0A\5C00\22\0A\00" -@.str13807 = private unnamed_addr constant [49 x i8] c"define i32 @main(i32 %argc, ptr %argv) {\0Aentry:\0A\00" -@.str13808 = private unnamed_addr constant [32 x i8] c" store i32 %argc, ptr @L_argc\0A\00" -@.str13809 = private unnamed_addr constant [32 x i8] c" store ptr %argv, ptr @L_argv\0A\00" -@.str13810 = private unnamed_addr constant [51 x i8] c" %failed = alloca i32\0A store i32 0, ptr %failed\0A\00" -@.str13811 = private unnamed_addr constant [45 x i8] c" %ran = alloca i32\0A store i32 0, ptr %ran\0A\00" -@.str13812 = private unnamed_addr constant [54 x i8] c" %filter = alloca ptr\0A store ptr null, ptr %filter\0A\00" -@.str13813 = private unnamed_addr constant [6 x i8] c"tfilt\00" -@.str13814 = private unnamed_addr constant [7 x i8] c"tbegin\00" -@.str13815 = private unnamed_addr constant [22 x i8] c"icmp sgt i32 %argc, 1\00" -@.str13816 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13817 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13818 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13819 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13820 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13821 = private unnamed_addr constant [36 x i8] c"getelementptr ptr, ptr %argv, i64 1\00" -@.str13822 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" -@.str13823 = private unnamed_addr constant [13 x i8] c" store ptr \00" -@.str13824 = private unnamed_addr constant [15 x i8] c", ptr %filter\0A\00" -@.str13825 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str13826 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13827 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13828 = private unnamed_addr constant [6 x i8] c"tlist\00" -@.str13829 = private unnamed_addr constant [6 x i8] c"trun0\00" -@.str13830 = private unnamed_addr constant [22 x i8] c"load ptr, ptr %filter\00" -@.str13831 = private unnamed_addr constant [13 x i8] c"icmp ne ptr \00" -@.str13832 = private unnamed_addr constant [7 x i8] c", null\00" -@.str13833 = private unnamed_addr constant [6 x i8] c"tlcmp\00" -@.str13834 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13835 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13836 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13837 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13838 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13839 = private unnamed_addr constant [7 x i8] c"--list\00" -@.str13840 = private unnamed_addr constant [22 x i8] c"call i32 @strcmp(ptr \00" -@.str13841 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13842 = private unnamed_addr constant [2 x i8] c")\00" -@.str13843 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str13844 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str13845 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13846 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13847 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13848 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13849 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13850 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21485: index out of range: \00" -@.str13851 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" -@.str13852 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13853 = private unnamed_addr constant [13 x i8] c" ret i32 0\0A\00" -@.str13854 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13855 = private unnamed_addr constant [31 x i8] c" call void @L_init_runtime()\0A\00" -@.str13856 = private unnamed_addr constant [24 x i8] c" call void @rt_init()\0A\00" -@.str13857 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" -@.str13858 = private unnamed_addr constant [8 x i8] c"ok - \00" -@.str13859 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21496: index out of range: \00" -@.str13860 = private unnamed_addr constant [8 x i8] c"FAIL - \00" -@.str13861 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21497: index out of range: \00" -@.str13862 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21498: index out of range: \00" -@.str13863 = private unnamed_addr constant [5 x i8] c"tcmp\00" -@.str13864 = private unnamed_addr constant [5 x i8] c"trun\00" -@.str13865 = private unnamed_addr constant [6 x i8] c"tskip\00" -@.str13866 = private unnamed_addr constant [22 x i8] c"load ptr, ptr %filter\00" -@.str13867 = private unnamed_addr constant [13 x i8] c"icmp eq ptr \00" -@.str13868 = private unnamed_addr constant [7 x i8] c", null\00" -@.str13869 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13870 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13871 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13872 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13873 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13874 = private unnamed_addr constant [22 x i8] c"call i32 @strcmp(ptr \00" -@.str13875 = private unnamed_addr constant [7 x i8] c", ptr \00" -@.str13876 = private unnamed_addr constant [2 x i8] c")\00" -@.str13877 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str13878 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str13879 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13880 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13881 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13882 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13883 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13884 = private unnamed_addr constant [19 x i8] c"load i32, ptr %ran\00" -@.str13885 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str13886 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str13887 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13888 = private unnamed_addr constant [12 x i8] c", ptr %ran\0A\00" -@.str13889 = private unnamed_addr constant [33 x i8] c" store i32 0, ptr @L_test_fail\0A\00" -@.str13890 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" -@.str13891 = private unnamed_addr constant [23 x i8] c" call void @fn__test_\00" -@.str13892 = private unnamed_addr constant [4 x i8] c"()\0A\00" -@.str13893 = private unnamed_addr constant [27 x i8] c"load i32, ptr @L_test_fail\00" -@.str13894 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" -@.str13895 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str13896 = private unnamed_addr constant [6 x i8] c"tpass\00" -@.str13897 = private unnamed_addr constant [6 x i8] c"tfail\00" -@.str13898 = private unnamed_addr constant [6 x i8] c"tdone\00" -@.str13899 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13900 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13901 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13902 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13903 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13904 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" -@.str13905 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13906 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str13907 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13908 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13909 = private unnamed_addr constant [22 x i8] c"load i32, ptr %failed\00" -@.str13910 = private unnamed_addr constant [9 x i8] c"add i32 \00" -@.str13911 = private unnamed_addr constant [4 x i8] c", 1\00" -@.str13912 = private unnamed_addr constant [13 x i8] c" store i32 \00" -@.str13913 = private unnamed_addr constant [15 x i8] c", ptr %failed\0A\00" -@.str13914 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" -@.str13915 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13916 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str13917 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13918 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13919 = private unnamed_addr constant [13 x i8] c" br label %\00" -@.str13920 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13921 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13922 = private unnamed_addr constant [6 x i8] c"tnone\00" -@.str13923 = private unnamed_addr constant [5 x i8] c"tsum\00" -@.str13924 = private unnamed_addr constant [19 x i8] c"load i32, ptr %ran\00" -@.str13925 = private unnamed_addr constant [22 x i8] c"load ptr, ptr %filter\00" -@.str13926 = private unnamed_addr constant [13 x i8] c"icmp ne ptr \00" -@.str13927 = private unnamed_addr constant [7 x i8] c", null\00" -@.str13928 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str13929 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str13930 = private unnamed_addr constant [8 x i8] c"and i1 \00" -@.str13931 = private unnamed_addr constant [3 x i8] c", \00" -@.str13932 = private unnamed_addr constant [9 x i8] c" br i1 \00" -@.str13933 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13934 = private unnamed_addr constant [10 x i8] c", label %\00" -@.str13935 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13936 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13937 = private unnamed_addr constant [56 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_test_none, ptr \00" -@.str13938 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13939 = private unnamed_addr constant [13 x i8] c" ret i32 1\0A\00" -@.str13940 = private unnamed_addr constant [3 x i8] c":\0A\00" -@.str13941 = private unnamed_addr constant [22 x i8] c"load i32, ptr %failed\00" -@.str13942 = private unnamed_addr constant [9 x i8] c"sub i32 \00" -@.str13943 = private unnamed_addr constant [3 x i8] c", \00" -@.str13944 = private unnamed_addr constant [55 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_test_sum, i32 \00" -@.str13945 = private unnamed_addr constant [7 x i8] c", i32 \00" -@.str13946 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str13947 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" -@.str13948 = private unnamed_addr constant [4 x i8] c", 0\00" -@.str13949 = private unnamed_addr constant [11 x i8] c"select i1 \00" -@.str13950 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" -@.str13951 = private unnamed_addr constant [11 x i8] c" ret i32 \00" -@.str13952 = private unnamed_addr constant [4 x i8] c"\0A}\0A\00" -@.str13953 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21561: index out of range: \00" -@.str13954 = private unnamed_addr constant [11 x i8] c"function '\00" -@.str13955 = private unnamed_addr constant [30 x i8] c"' is defined twice (first in \00" -@.str13956 = private unnamed_addr constant [2 x i8] c":\00" -@.str13957 = private unnamed_addr constant [2 x i8] c")\00" -@.str13958 = private unnamed_addr constant [1 x i8] c"\00" -@.str13959 = private unnamed_addr constant [1 x i8] c"\00" -@.str13960 = private unnamed_addr constant [1 x i8] c"\00" -@.str13961 = private unnamed_addr constant [1 x i8] c"\00" -@.str13962 = private unnamed_addr constant [1 x i8] c"\00" -@.str13963 = private unnamed_addr constant [1 x i8] c"\00" -@.str13964 = private unnamed_addr constant [3 x i8] c": \00" -@.str13965 = private unnamed_addr constant [126 x i8] c" exports it, and exported names are one namespace - rename this one, or declare it without export inside a module of your own\00" -@.str13966 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21598: index out of range: \00" -@.str13967 = private unnamed_addr constant [2 x i8] c":\00" -@.str13968 = private unnamed_addr constant [2 x i8] c"'\00" -@.str13969 = private unnamed_addr constant [30 x i8] c"' is defined twice (first in \00" -@.str13970 = private unnamed_addr constant [2 x i8] c":\00" -@.str13971 = private unnamed_addr constant [2 x i8] c")\00" -@.str13972 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21645: index out of range: \00" -@.str13973 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21647: index out of range: \00" -@.str13974 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21665: index out of range: \00" -@.str13975 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21665: index out of range: \00" -@.str13976 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21670: index out of range: \00" -@.str13977 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21670: index out of range: \00" -@.str13978 = private unnamed_addr constant [36 x i8] c"@L_running = internal global i32 1\0A\00" -@.str13979 = private unnamed_addr constant [23 x i8] c"declare i32 @getpid()\0A\00" -@.str13980 = private unnamed_addr constant [37 x i8] c"declare i32 @fprintf(ptr, ptr, ...)\0A\00" -@.str13981 = private unnamed_addr constant [68 x i8] c"@.fmt_panic = private unnamed_addr constant [6 x i8] c\22%s%s\5C0A\5C00\22\0A\00" -@.str13982 = private unnamed_addr constant [37 x i8] c"declare i32 @fprintf(ptr, ptr, ...)\0A\00" -@.str13983 = private unnamed_addr constant [78 x i8] c"@.fmt_bounds = private unnamed_addr constant [14 x i8] c\22%s%d, len %d\5C0A\5C00\22\0A\00" -@.str13984 = private unnamed_addr constant [34 x i8] c"%Result = type { i32, i32, ptr }\0A\00" -@.str13985 = private unnamed_addr constant [29 x i8] c"%Option = type { i32, i32 }\0A\00" -@.str13986 = private unnamed_addr constant [33 x i8] c"@L_cov_lines = internal global [\00" -@.str13987 = private unnamed_addr constant [10 x i8] c" x i32] [\00" -@.str13988 = private unnamed_addr constant [3 x i8] c", \00" -@.str13989 = private unnamed_addr constant [5 x i8] c"i32 \00" -@.str13990 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21726: index out of range: \00" -@.str13991 = private unnamed_addr constant [3 x i8] c"]\0A\00" -@.str13992 = private unnamed_addr constant [32 x i8] c"@L_cov_hits = internal global [\00" -@.str13993 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" -@.str13994 = private unnamed_addr constant [32 x i8] c"@L_cov_n = internal global i32 \00" -@.str13995 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str13996 = private unnamed_addr constant [15 x i8] c"LUDIC_COVERAGE\00" -@.str13997 = private unnamed_addr constant [10 x i8] c"ludic.cov\00" -@.str13998 = private unnamed_addr constant [2 x i8] c"w\00" -@.str13999 = private unnamed_addr constant [73 x i8] c"@.cov_filefmt = private unnamed_addr constant [9 x i8] c\22FILE %s\5C0A\5C00\22\0A\00" -@.str14000 = private unnamed_addr constant [70 x i8] c"@.cov_rowfmt = private unnamed_addr constant [7 x i8] c\22%d %d\5C0A\5C00\22\0A\00" -@.str14001 = private unnamed_addr constant [37 x i8] c"declare i32 @fprintf(ptr, ptr, ...)\0A\00" -@.str14002 = private unnamed_addr constant [26 x i8] c"declare i32 @atexit(ptr)\0A\00" -@.str14003 = private unnamed_addr constant [34 x i8] c"define void @cov_dump() {\0Aentry:\0A\00" -@.str14004 = private unnamed_addr constant [31 x i8] c" %env = call ptr @getenv(ptr \00" -@.str14005 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str14006 = private unnamed_addr constant [35 x i8] c" %noenv = icmp eq ptr %env, null\0A\00" -@.str14007 = private unnamed_addr constant [33 x i8] c" %path = select i1 %noenv, ptr \00" -@.str14008 = private unnamed_addr constant [12 x i8] c", ptr %env\0A\00" -@.str14009 = private unnamed_addr constant [39 x i8] c" %f = call ptr @fopen(ptr %path, ptr \00" -@.str14010 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str14011 = private unnamed_addr constant [31 x i8] c" %bad = icmp eq ptr %f, null\0A\00" -@.str14012 = private unnamed_addr constant [41 x i8] c" br i1 %bad, label %done, label %write\0A\00" -@.str14013 = private unnamed_addr constant [8 x i8] c"write:\0A\00" -@.str14014 = private unnamed_addr constant [68 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr %f, ptr @.cov_filefmt, ptr \00" -@.str14015 = private unnamed_addr constant [3 x i8] c")\0A\00" -@.str14016 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" -@.str14017 = private unnamed_addr constant [7 x i8] c"loop:\0A\00" -@.str14018 = private unnamed_addr constant [46 x i8] c" %i = phi i32 [ 0, %write ], [ %i1, %body ]\0A\00" -@.str14019 = private unnamed_addr constant [26 x i8] c" %go = icmp slt i32 %i, \00" -@.str14020 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str14021 = private unnamed_addr constant [40 x i8] c" br i1 %go, label %body, label %close\0A\00" -@.str14022 = private unnamed_addr constant [7 x i8] c"body:\0A\00" -@.str14023 = private unnamed_addr constant [33 x i8] c" %lp = getelementptr inbounds [\00" -@.str14024 = private unnamed_addr constant [42 x i8] c" x i32], ptr @L_cov_lines, i32 0, i32 %i\0A\00" -@.str14025 = private unnamed_addr constant [27 x i8] c" %lv = load i32, ptr %lp\0A\00" -@.str14026 = private unnamed_addr constant [33 x i8] c" %hp = getelementptr inbounds [\00" -@.str14027 = private unnamed_addr constant [41 x i8] c" x i32], ptr @L_cov_hits, i32 0, i32 %i\0A\00" -@.str14028 = private unnamed_addr constant [27 x i8] c" %hv = load i32, ptr %hp\0A\00" -@.str14029 = private unnamed_addr constant [81 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr %f, ptr @.cov_rowfmt, i32 %lv, i32 %hv)\0A\00" -@.str14030 = private unnamed_addr constant [23 x i8] c" %i1 = add i32 %i, 1\0A\00" -@.str14031 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" -@.str14032 = private unnamed_addr constant [8 x i8] c"close:\0A\00" -@.str14033 = private unnamed_addr constant [34 x i8] c" %rc = call i32 @fclose(ptr %f)\0A\00" -@.str14034 = private unnamed_addr constant [18 x i8] c" br label %done\0A\00" -@.str14035 = private unnamed_addr constant [21 x i8] c"done:\0A ret void\0A}\0A\0A\00" -@.str14036 = private unnamed_addr constant [34 x i8] c"define void @cov_init() {\0Aentry:\0A\00" -@.str14037 = private unnamed_addr constant [40 x i8] c" %r = call i32 @atexit(ptr @cov_dump)\0A\00" -@.str14038 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" -@.str14039 = private unnamed_addr constant [122 x i8] c"@llvm.global_ctors = appending global [1 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 65535, ptr @cov_init, ptr null }]\0A\00" -@.str14040 = private unnamed_addr constant [3 x i8] c"wb\00" -@.str14041 = private unnamed_addr constant [7 x i8] c".ludic\00" -@.str14042 = private unnamed_addr constant [2 x i8] c"/\00" -@.str14043 = private unnamed_addr constant [15 x i8] c"if not exist \22\00" -@.str14044 = private unnamed_addr constant [10 x i8] c"\22 mkdir \22\00" -@.str14045 = private unnamed_addr constant [2 x i8] c"\22\00" -@.str14046 = private unnamed_addr constant [10 x i8] c"mkdir -p \00" -@.str14047 = private unnamed_addr constant [12 x i8] c"del /f /q \22\00" -@.str14048 = private unnamed_addr constant [8 x i8] c"\22 2>nul\00" -@.str14049 = private unnamed_addr constant [7 x i8] c"rm -f \00" -@.str14050 = private unnamed_addr constant [9 x i8] c"LUDIC_CC\00" -@.str14051 = private unnamed_addr constant [36 x i8] c"C:/Program Files/LLVM/bin/clang.exe\00" -@.str14052 = private unnamed_addr constant [3 x i8] c"rb\00" -@.str14053 = private unnamed_addr constant [2 x i8] c"\22\00" -@.str14054 = private unnamed_addr constant [2 x i8] c"\22\00" -@.str14055 = private unnamed_addr constant [6 x i8] c"clang\00" -@.str14056 = private unnamed_addr constant [8 x i8] c"VERSION\00" -@.str14057 = private unnamed_addr constant [24 x i8] c"ludic (version unknown)\00" -@.str14058 = private unnamed_addr constant [7 x i8] c"ludic \00" -@.str14059 = private unnamed_addr constant [1 x i8] c"\00" -@.str14060 = private unnamed_addr constant [1 x i8] c"\00" -@.str14061 = private unnamed_addr constant [2 x i8] c",\00" -@.str14062 = private unnamed_addr constant [1 x i8] c"\00" -@.str14063 = private unnamed_addr constant [2 x i8] c",\00" -@.str14064 = private unnamed_addr constant [2 x i8] c"?\00" -@.str14065 = private unnamed_addr constant [4 x i8] c"ret\00" -@.str14066 = private unnamed_addr constant [1 x i8] c"\00" -@.str14067 = private unnamed_addr constant [5 x i8] c"void\00" -@.str14068 = private unnamed_addr constant [10 x i8] c"--version\00" -@.str14069 = private unnamed_addr constant [11 x i8] c"--windowed\00" -@.str14070 = private unnamed_addr constant [11 x i8] c"--headless\00" -@.str14071 = private unnamed_addr constant [12 x i8] c"--emit-llvm\00" -@.str14072 = private unnamed_addr constant [9 x i8] c"--unsafe\00" -@.str14073 = private unnamed_addr constant [14 x i8] c"--emit-module\00" -@.str14074 = private unnamed_addr constant [6 x i8] c"--fmt\00" -@.str14075 = private unnamed_addr constant [13 x i8] c"--save-temps\00" -@.str14076 = private unnamed_addr constant [6 x i8] c"--run\00" -@.str14077 = private unnamed_addr constant [8 x i8] c"--check\00" -@.str14078 = private unnamed_addr constant [10 x i8] c"--globals\00" -@.str14079 = private unnamed_addr constant [16 x i8] c"--migrate-state\00" -@.str14080 = private unnamed_addr constant [16 x i8] c"--migrate-prune\00" -@.str14081 = private unnamed_addr constant [18 x i8] c"--migrate-tighten\00" -@.str14082 = private unnamed_addr constant [18 x i8] c"--migrate-runtime\00" -@.str14083 = private unnamed_addr constant [11 x i8] c"--coverage\00" -@.str14084 = private unnamed_addr constant [9 x i8] c"--target\00" -@.str14085 = private unnamed_addr constant [6 x i8] c"--gui\00" -@.str14086 = private unnamed_addr constant [8 x i8] c"--title\00" -@.str14087 = private unnamed_addr constant [14 x i8] c"--natives-out\00" -@.str14088 = private unnamed_addr constant [7 x i8] c"--link\00" -@.str14089 = private unnamed_addr constant [3 x i8] c"-o\00" -@.str14090 = private unnamed_addr constant [31 x i8] c"ludicc: ignoring unknown flag \00" -@.str14091 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str14092 = private unnamed_addr constant [108 x i8] c"usage: ludicc [-o out] [--windowed|--headless] [--target triple] [--emit-llvm] [--save-temps]\0A\00" -@.str14093 = private unnamed_addr constant [8 x i8] c"windows\00" -@.str14094 = private unnamed_addr constant [27 x i8] c"ludicc: cannot open input\0A\00" -@.str14095 = private unnamed_addr constant [5 x i8] c"TEMP\00" -@.str14096 = private unnamed_addr constant [2 x i8] c".\00" -@.str14097 = private unnamed_addr constant [12 x i8] c"/ludic-run-\00" -@.str14098 = private unnamed_addr constant [16 x i8] c"/tmp/ludic-run-\00" -@.str14099 = private unnamed_addr constant [5 x i8] c".exe\00" -@.str14100 = private unnamed_addr constant [5 x i8] c".exe\00" -@.str14101 = private unnamed_addr constant [4 x i8] c".ll\00" -@.str14102 = private unnamed_addr constant [25 x i8] c"ludicc: cannot write IR\0A\00" -@.str14103 = private unnamed_addr constant [27 x i8] c" -O2 -Wno-override-module \00" -@.str14104 = private unnamed_addr constant [24 x i8] c"runtime/native/win32.ll\00" -@.str14105 = private unnamed_addr constant [2 x i8] c" \00" -@.str14106 = private unnamed_addr constant [63 x i8] c" -luser32 -lgdi32 -lxinput -lole32 -Wl,/ignore:importeddllmain\00" -@.str14107 = private unnamed_addr constant [28 x i8] c"runtime/native/audio_win.ll\00" -@.str14108 = private unnamed_addr constant [2 x i8] c" \00" -@.str14109 = private unnamed_addr constant [19 x i8] c" -lxaudio2 -lole32\00" -@.str14110 = private unnamed_addr constant [24 x i8] c"runtime/native/cocoa.ll\00" -@.str14111 = private unnamed_addr constant [2 x i8] c" \00" -@.str14112 = private unnamed_addr constant [79 x i8] c" -framework Cocoa -Wl,-needed_framework,GameController -Wl,-rpath,@loader_path\00" -@.str14113 = private unnamed_addr constant [24 x i8] c"runtime/native/audio.ll\00" -@.str14114 = private unnamed_addr constant [2 x i8] c" \00" -@.str14115 = private unnamed_addr constant [36 x i8] c" -Wl,-needed_framework,AVFoundation\00" -@.str14116 = private unnamed_addr constant [2 x i8] c" \00" -@.str14117 = private unnamed_addr constant [30 x i8] c"runtime/native/threads_win.ll\00" -@.str14118 = private unnamed_addr constant [2 x i8] c" \00" -@.str14119 = private unnamed_addr constant [26 x i8] c"runtime/native/threads.ll\00" -@.str14120 = private unnamed_addr constant [2 x i8] c" \00" -@.str14121 = private unnamed_addr constant [26 x i8] c"runtime/native/udp_win.ll\00" -@.str14122 = private unnamed_addr constant [10 x i8] c" -lws2_32\00" -@.str14123 = private unnamed_addr constant [2 x i8] c" \00" -@.str14124 = private unnamed_addr constant [22 x i8] c"runtime/native/udp.ll\00" -@.str14125 = private unnamed_addr constant [12 x i8] c" -ladvapi32\00" -@.str14126 = private unnamed_addr constant [2 x i8] c" \00" -@.str14127 = private unnamed_addr constant [30 x i8] c"runtime/native/process_win.ll\00" -@.str14128 = private unnamed_addr constant [2 x i8] c" \00" -@.str14129 = private unnamed_addr constant [26 x i8] c"runtime/native/process.ll\00" -@.str14130 = private unnamed_addr constant [27 x i8] c"runtime/native/http_win.ll\00" -@.str14131 = private unnamed_addr constant [2 x i8] c" \00" -@.str14132 = private unnamed_addr constant [11 x i8] c" -lwinhttp\00" -@.str14133 = private unnamed_addr constant [23 x i8] c"runtime/native/http.ll\00" -@.str14134 = private unnamed_addr constant [2 x i8] c" \00" -@.str14135 = private unnamed_addr constant [34 x i8] c" -Wl,-needed_framework,Foundation\00" -@.str14136 = private unnamed_addr constant [25 x i8] c"runtime/native/gl_win.ll\00" -@.str14137 = private unnamed_addr constant [32 x i8] c"runtime/native/gl_thunks_win.ll\00" -@.str14138 = private unnamed_addr constant [31 x i8] c"runtime/native/gl_win_nowin.ll\00" -@.str14139 = private unnamed_addr constant [27 x i8] c"runtime/native/win32_gl.ll\00" -@.str14140 = private unnamed_addr constant [2 x i8] c" \00" -@.str14141 = private unnamed_addr constant [2 x i8] c" \00" -@.str14142 = private unnamed_addr constant [2 x i8] c" \00" -@.str14143 = private unnamed_addr constant [29 x i8] c" -luser32 -lgdi32 -lopengl32\00" -@.str14144 = private unnamed_addr constant [21 x i8] c"runtime/native/gl.ll\00" -@.str14145 = private unnamed_addr constant [28 x i8] c"runtime/native/gl_thunks.ll\00" -@.str14146 = private unnamed_addr constant [2 x i8] c" \00" -@.str14147 = private unnamed_addr constant [2 x i8] c" \00" -@.str14148 = private unnamed_addr constant [19 x i8] c" -framework OpenGL\00" -@.str14149 = private unnamed_addr constant [28 x i8] c"runtime/native/vk_thunks.ll\00" -@.str14150 = private unnamed_addr constant [25 x i8] c"runtime/native/vk_mac.ll\00" -@.str14151 = private unnamed_addr constant [25 x i8] c"runtime/native/vk_win.ll\00" -@.str14152 = private unnamed_addr constant [2 x i8] c" \00" -@.str14153 = private unnamed_addr constant [2 x i8] c" \00" -@.str14154 = private unnamed_addr constant [34 x i8] c" -Wl,-needed_framework,QuartzCore\00" -@.str14155 = private unnamed_addr constant [50 x i8] c" -Wl,/subsystem:windows -Wl,/entry:mainCRTStartup\00" -@.str14156 = private unnamed_addr constant [3 x i8] c" \22\00" -@.str14157 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:22170: index out of range: \00" -@.str14158 = private unnamed_addr constant [2 x i8] c"\22\00" -@.str14159 = private unnamed_addr constant [5 x i8] c" -o \00" -@.str14160 = private unnamed_addr constant [2 x i8] c"\22\00" -@.str14161 = private unnamed_addr constant [2 x i8] c"\22\00" -@.str14162 = private unnamed_addr constant [21 x i8] c"ludicc: link failed\0A\00" -@.str14163 = private unnamed_addr constant [1 x i8] c"\00" -@.str14164 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:22184: index out of range: \00" -@.str14165 = private unnamed_addr constant [2 x i8] c"\0A\00" -@.str14166 = private unnamed_addr constant [3 x i8] c"wb\00" -@.str14167 = private unnamed_addr constant [2 x i8] c"\22\00" -@.str14168 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str13654 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21120: index out of range: \00" +@.str13655 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str13656 = private unnamed_addr constant [56 x i8] c"define i32 @ludic_serialize(i32 %e, ptr %buf) {\0Aentry:\0A\00" +@.str13657 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str13658 = private unnamed_addr constant [41 x i8] c" %kp = getelementptr inbounds i32, ptr \00" +@.str13659 = private unnamed_addr constant [35 x i8] c", i32 %e\0A %k = load i32, ptr %kp\0A\00" +@.str13660 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21144: index out of range: \00" +@.str13661 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21144: index out of range: \00" +@.str13662 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21145: index out of range: \00" +@.str13663 = private unnamed_addr constant [5 x i8] c" %c\00" +@.str13664 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" +@.str13665 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13666 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" +@.str13667 = private unnamed_addr constant [11 x i8] c", label %h\00" +@.str13668 = private unnamed_addr constant [11 x i8] c", label %n\00" +@.str13669 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13670 = private unnamed_addr constant [2 x i8] c"h\00" +@.str13671 = private unnamed_addr constant [7 x i8] c":\0A %r\00" +@.str13672 = private unnamed_addr constant [26 x i8] c" = call i32 @L_serialize_\00" +@.str13673 = private unnamed_addr constant [32 x i8] c"(i32 %e, ptr %buf)\0A ret i32 %r\00" +@.str13674 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13675 = private unnamed_addr constant [2 x i8] c"n\00" +@.str13676 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13677 = private unnamed_addr constant [16 x i8] c" ret i32 0\0A}\0A\0A\00" +@.str13678 = private unnamed_addr constant [63 x i8] c"define void @ludic_apply(i32 %e, ptr %buf, i32 %len) {\0Aentry:\0A\00" +@.str13679 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str13680 = private unnamed_addr constant [41 x i8] c" %kp = getelementptr inbounds i32, ptr \00" +@.str13681 = private unnamed_addr constant [35 x i8] c", i32 %e\0A %k = load i32, ptr %kp\0A\00" +@.str13682 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21161: index out of range: \00" +@.str13683 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21161: index out of range: \00" +@.str13684 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21162: index out of range: \00" +@.str13685 = private unnamed_addr constant [5 x i8] c" %c\00" +@.str13686 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" +@.str13687 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13688 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" +@.str13689 = private unnamed_addr constant [11 x i8] c", label %h\00" +@.str13690 = private unnamed_addr constant [11 x i8] c", label %n\00" +@.str13691 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13692 = private unnamed_addr constant [2 x i8] c"h\00" +@.str13693 = private unnamed_addr constant [24 x i8] c":\0A call void @L_apply_\00" +@.str13694 = private unnamed_addr constant [41 x i8] c"(i32 %e, ptr %buf, i32 %len)\0A ret void\0A\00" +@.str13695 = private unnamed_addr constant [2 x i8] c"n\00" +@.str13696 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13697 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str13698 = private unnamed_addr constant [46 x i8] c"define i32 @ludic_sync_size(i32 %e) {\0Aentry:\0A\00" +@.str13699 = private unnamed_addr constant [7 x i8] c"L_kind\00" +@.str13700 = private unnamed_addr constant [41 x i8] c" %kp = getelementptr inbounds i32, ptr \00" +@.str13701 = private unnamed_addr constant [35 x i8] c", i32 %e\0A %k = load i32, ptr %kp\0A\00" +@.str13702 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21180: index out of range: \00" +@.str13703 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21180: index out of range: \00" +@.str13704 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21181: index out of range: \00" +@.str13705 = private unnamed_addr constant [5 x i8] c" %c\00" +@.str13706 = private unnamed_addr constant [20 x i8] c" = icmp eq i32 %k, \00" +@.str13707 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13708 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" +@.str13709 = private unnamed_addr constant [11 x i8] c", label %h\00" +@.str13710 = private unnamed_addr constant [11 x i8] c", label %n\00" +@.str13711 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13712 = private unnamed_addr constant [2 x i8] c"h\00" +@.str13713 = private unnamed_addr constant [13 x i8] c":\0A ret i32 \00" +@.str13714 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21184: index out of range: \00" +@.str13715 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13716 = private unnamed_addr constant [2 x i8] c"n\00" +@.str13717 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13718 = private unnamed_addr constant [16 x i8] c" ret i32 0\0A}\0A\0A\00" +@.str13719 = private unnamed_addr constant [38 x i8] c"define i32 @L_owner(i32 %e) {\0Aentry:\0A\00" +@.str13720 = private unnamed_addr constant [12 x i8] c"L_owner_arr\00" +@.str13721 = private unnamed_addr constant [40 x i8] c" %p = getelementptr inbounds i32, ptr \00" +@.str13722 = private unnamed_addr constant [50 x i8] c", i32 %e\0A %v = load i32, ptr %p\0A ret i32 %v\0A}\0A\0A\00" +@.str13723 = private unnamed_addr constant [52 x i8] c"define void @L_set_owner(i32 %e, i32 %id) {\0Aentry:\0A\00" +@.str13724 = private unnamed_addr constant [12 x i8] c"L_owner_arr\00" +@.str13725 = private unnamed_addr constant [40 x i8] c" %p = getelementptr inbounds i32, ptr \00" +@.str13726 = private unnamed_addr constant [48 x i8] c", i32 %e\0A store i32 %id, ptr %p\0A ret void\0A}\0A\0A\00" +@.str13727 = private unnamed_addr constant [41 x i8] c"define i32 @L_is_owner(i32 %e) {\0Aentry:\0A\00" +@.str13728 = private unnamed_addr constant [12 x i8] c"L_owner_arr\00" +@.str13729 = private unnamed_addr constant [40 x i8] c" %p = getelementptr inbounds i32, ptr \00" +@.str13730 = private unnamed_addr constant [34 x i8] c", i32 %e\0A %o = load i32, ptr %p\0A\00" +@.str13731 = private unnamed_addr constant [106 x i8] c" %lid = load i32, ptr @L_localid\0A %eq = icmp eq i32 %o, %lid\0A %r = zext i1 %eq to i32\0A ret i32 %r\0A}\0A\0A\00" +@.str13732 = private unnamed_addr constant [62 x i8] c"@L_netq = internal global [64 x [2048 x i8]] zeroinitializer\0A\00" +@.str13733 = private unnamed_addr constant [56 x i8] c"@L_netlen = internal global [64 x i32] zeroinitializer\0A\00" +@.str13734 = private unnamed_addr constant [36 x i8] c"@L_nethead = internal global i32 0\0A\00" +@.str13735 = private unnamed_addr constant [36 x i8] c"@L_nettail = internal global i32 0\0A\00" +@.str13736 = private unnamed_addr constant [65 x i8] c"define void @L_net_send(i32 %peer, ptr %buf, i32 %len) {\0Aentry:\0A\00" +@.str13737 = private unnamed_addr constant [71 x i8] c" %l0 = icmp slt i32 %len, 0\0A %len1 = select i1 %l0, i32 0, i32 %len\0A\00" +@.str13738 = private unnamed_addr constant [76 x i8] c" %l1 = icmp sgt i32 %len1, 2048\0A %n = select i1 %l1, i32 2048, i32 %len1\0A\00" +@.str13739 = private unnamed_addr constant [65 x i8] c" %t = load i32, ptr @L_nettail\0A %h = load i32, ptr @L_nethead\0A\00" +@.str13740 = private unnamed_addr constant [78 x i8] c" %t1 = add i32 %t, 1\0A %tn = srem i32 %t1, 64\0A %full = icmp eq i32 %tn, %h\0A\00" +@.str13741 = private unnamed_addr constant [39 x i8] c" br i1 %full, label %drop, label %go\0A\00" +@.str13742 = private unnamed_addr constant [5 x i8] c"go:\0A\00" +@.str13743 = private unnamed_addr constant [80 x i8] c" %row = getelementptr inbounds [64 x [2048 x i8]], ptr @L_netq, i32 0, i32 %t\0A\00" +@.str13744 = private unnamed_addr constant [76 x i8] c" %nz = zext i32 %n to i64\0A call ptr @memcpy(ptr %row, ptr %buf, i64 %nz)\0A\00" +@.str13745 = private unnamed_addr constant [97 x i8] c" %lp = getelementptr inbounds [64 x i32], ptr @L_netlen, i32 0, i32 %t\0A store i32 %n, ptr %lp\0A\00" +@.str13746 = private unnamed_addr constant [50 x i8] c" store i32 %tn, ptr @L_nettail\0A br label %drop\0A\00" +@.str13747 = private unnamed_addr constant [21 x i8] c"drop:\0A ret void\0A}\0A\0A\00" +@.str13748 = private unnamed_addr constant [53 x i8] c"define i32 @L_net_poll(ptr %buf, i32 %cap) {\0Aentry:\0A\00" +@.str13749 = private unnamed_addr constant [95 x i8] c" %h = load i32, ptr @L_nethead\0A %t = load i32, ptr @L_nettail\0A %empty = icmp eq i32 %h, %t\0A\00" +@.str13750 = private unnamed_addr constant [40 x i8] c" br i1 %empty, label %none, label %go\0A\00" +@.str13751 = private unnamed_addr constant [5 x i8] c"go:\0A\00" +@.str13752 = private unnamed_addr constant [99 x i8] c" %lp = getelementptr inbounds [64 x i32], ptr @L_netlen, i32 0, i32 %h\0A %ln = load i32, ptr %lp\0A\00" +@.str13753 = private unnamed_addr constant [74 x i8] c" %big = icmp sgt i32 %ln, %cap\0A %n = select i1 %big, i32 %cap, i32 %ln\0A\00" +@.str13754 = private unnamed_addr constant [80 x i8] c" %row = getelementptr inbounds [64 x [2048 x i8]], ptr @L_netq, i32 0, i32 %h\0A\00" +@.str13755 = private unnamed_addr constant [76 x i8] c" %nz = zext i32 %n to i64\0A call ptr @memcpy(ptr %buf, ptr %row, i64 %nz)\0A\00" +@.str13756 = private unnamed_addr constant [93 x i8] c" %h1 = add i32 %h, 1\0A %hn = srem i32 %h1, 64\0A store i32 %hn, ptr @L_nethead\0A ret i32 %n\0A\00" +@.str13757 = private unnamed_addr constant [22 x i8] c"none:\0A ret i32 0\0A}\0A\0A\00" +@.str13758 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21260: index out of range: \00" +@.str13759 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21266: index out of range: \00" +@.str13760 = private unnamed_addr constant [9 x i8] c"net_send\00" +@.str13761 = private unnamed_addr constant [11 x i8] c"L_net_send\00" +@.str13762 = private unnamed_addr constant [9 x i8] c"net_poll\00" +@.str13763 = private unnamed_addr constant [11 x i8] c"L_net_poll\00" +@.str13764 = private unnamed_addr constant [58 x i8] c"@L_recvbuf = internal global [2048 x i8] zeroinitializer\0A\00" +@.str13765 = private unnamed_addr constant [9 x i8] c"net_poll\00" +@.str13766 = private unnamed_addr constant [53 x i8] c"define void @L_net_pump() {\0Aentry:\0A br label %loop\0A\00" +@.str13767 = private unnamed_addr constant [24 x i8] c"loop:\0A %n = call i32 @\00" +@.str13768 = private unnamed_addr constant [28 x i8] c"(ptr @L_recvbuf, i32 2048)\0A\00" +@.str13769 = private unnamed_addr constant [68 x i8] c" %done = icmp eq i32 %n, 0\0A br i1 %done, label %fin, label %body\0A\00" +@.str13770 = private unnamed_addr constant [41 x i8] c"body:\0A %eid = load i32, ptr @L_recvbuf\0A\00" +@.str13771 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21285: index out of range: \00" +@.str13772 = private unnamed_addr constant [5 x i8] c" %c\00" +@.str13773 = private unnamed_addr constant [22 x i8] c" = icmp eq i32 %eid, \00" +@.str13774 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13775 = private unnamed_addr constant [11 x i8] c" br i1 %c\00" +@.str13776 = private unnamed_addr constant [11 x i8] c", label %h\00" +@.str13777 = private unnamed_addr constant [11 x i8] c", label %x\00" +@.str13778 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13779 = private unnamed_addr constant [2 x i8] c"h\00" +@.str13780 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13781 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21296: index out of range: \00" +@.str13782 = private unnamed_addr constant [2 x i8] c"_\00" +@.str13783 = private unnamed_addr constant [6 x i8] c" %fa\00" +@.str13784 = private unnamed_addr constant [51 x i8] c" = getelementptr inbounds i8, ptr @L_recvbuf, i32 \00" +@.str13785 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13786 = private unnamed_addr constant [6 x i8] c" %fv\00" +@.str13787 = private unnamed_addr constant [9 x i8] c" = load \00" +@.str13788 = private unnamed_addr constant [10 x i8] c", ptr %fa\00" +@.str13789 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13790 = private unnamed_addr constant [3 x i8] c", \00" +@.str13791 = private unnamed_addr constant [5 x i8] c" %fv\00" +@.str13792 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21302: index out of range: \00" +@.str13793 = private unnamed_addr constant [17 x i8] c" call void @ev_\00" +@.str13794 = private unnamed_addr constant [2 x i8] c"(\00" +@.str13795 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13796 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" +@.str13797 = private unnamed_addr constant [2 x i8] c"x\00" +@.str13798 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13799 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" +@.str13800 = private unnamed_addr constant [20 x i8] c"fin:\0A ret void\0A}\0A\0A\00" +@.str13801 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21321: index out of range: \00" +@.str13802 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21321: index out of range: \00" +@.str13803 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21322: index out of range: \00" +@.str13804 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21323: index out of range: \00" +@.str13805 = private unnamed_addr constant [58 x i8] c"@L_sendbuf = internal global [2048 x i8] zeroinitializer\0A\00" +@.str13806 = private unnamed_addr constant [6 x i8] c"panel\00" +@.str13807 = private unnamed_addr constant [4 x i8] c"col\00" +@.str13808 = private unnamed_addr constant [4 x i8] c"row\00" +@.str13809 = private unnamed_addr constant [6 x i8] c"label\00" +@.str13810 = private unnamed_addr constant [7 x i8] c"button\00" +@.str13811 = private unnamed_addr constant [6 x i8] c"image\00" +@.str13812 = private unnamed_addr constant [7 x i8] c"spacer\00" +@.str13813 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21354: index out of range: \00" +@.str13814 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21354: index out of range: \00" +@.str13815 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21360: index out of range: \00" +@.str13816 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21363: index out of range: \00" +@.str13817 = private unnamed_addr constant [5 x i8] c"font\00" +@.str13818 = private unnamed_addr constant [5 x i8] c"size\00" +@.str13819 = private unnamed_addr constant [3 x i8] c"fg\00" +@.str13820 = private unnamed_addr constant [6 x i8] c"align\00" +@.str13821 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21368: index out of range: \00" +@.str13822 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21369: index out of range: \00" +@.str13823 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21371: index out of range: \00" +@.str13824 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21371: index out of range: \00" +@.str13825 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21372: index out of range: \00" +@.str13826 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21373: index out of range: \00" +@.str13827 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21384: index out of range: \00" +@.str13828 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21390: index out of range: \00" +@.str13829 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21390: index out of range: \00" +@.str13830 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21390: index out of range: \00" +@.str13831 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21396: index out of range: \00" +@.str13832 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21396: index out of range: \00" +@.str13833 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21407: index out of range: \00" +@.str13834 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21407: index out of range: \00" +@.str13835 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21407: index out of range: \00" +@.str13836 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21407: index out of range: \00" +@.str13837 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21412: index out of range: \00" +@.str13838 = private unnamed_addr constant [3 x i8] c"id\00" +@.str13839 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13840 = private unnamed_addr constant [10 x i8] c"rt_ui_set\00" +@.str13841 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str13842 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str13843 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str13844 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13845 = private unnamed_addr constant [2 x i8] c"w\00" +@.str13846 = private unnamed_addr constant [2 x i8] c"h\00" +@.str13847 = private unnamed_addr constant [2 x i8] c"x\00" +@.str13848 = private unnamed_addr constant [2 x i8] c"y\00" +@.str13849 = private unnamed_addr constant [4 x i8] c"pad\00" +@.str13850 = private unnamed_addr constant [4 x i8] c"gap\00" +@.str13851 = private unnamed_addr constant [3 x i8] c"bg\00" +@.str13852 = private unnamed_addr constant [3 x i8] c"fg\00" +@.str13853 = private unnamed_addr constant [7 x i8] c"border\00" +@.str13854 = private unnamed_addr constant [5 x i8] c"grow\00" +@.str13855 = private unnamed_addr constant [5 x i8] c"font\00" +@.str13856 = private unnamed_addr constant [5 x i8] c"size\00" +@.str13857 = private unnamed_addr constant [6 x i8] c"inset\00" +@.str13858 = private unnamed_addr constant [6 x i8] c"focus\00" +@.str13859 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13860 = private unnamed_addr constant [12 x i8] c"rt_ui_reset\00" +@.str13861 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str13862 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13863 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21443: index out of range: \00" +@.str13864 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21446: index out of range: \00" +@.str13865 = private unnamed_addr constant [2 x i8] c"1\00" +@.str13866 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21451: index out of range: \00" +@.str13867 = private unnamed_addr constant [3 x i8] c"id\00" +@.str13868 = private unnamed_addr constant [5 x i8] c"goto\00" +@.str13869 = private unnamed_addr constant [5 x i8] c"text\00" +@.str13870 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13871 = private unnamed_addr constant [18 x i8] c"rt_ui_static_text\00" +@.str13872 = private unnamed_addr constant [6 x i8] c"(i32 \00" +@.str13873 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13874 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13875 = private unnamed_addr constant [5 x i8] c"skin\00" +@.str13876 = private unnamed_addr constant [6 x i8] c"image\00" +@.str13877 = private unnamed_addr constant [10 x i8] c"call i32 \00" +@.str13878 = private unnamed_addr constant [14 x i8] c"rt_image_load\00" +@.str13879 = private unnamed_addr constant [6 x i8] c"(ptr \00" +@.str13880 = private unnamed_addr constant [2 x i8] c")\00" +@.str13881 = private unnamed_addr constant [5 x i8] c"skin\00" +@.str13882 = private unnamed_addr constant [6 x i8] c"align\00" +@.str13883 = private unnamed_addr constant [7 x i8] c"center\00" +@.str13884 = private unnamed_addr constant [4 x i8] c"end\00" +@.str13885 = private unnamed_addr constant [2 x i8] c"1\00" +@.str13886 = private unnamed_addr constant [34 x i8] c"define void @ui_build() {\0Aentry:\0A\00" +@.str13887 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str13888 = private unnamed_addr constant [3 x i8] c", \00" +@.str13889 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21495: index out of range: \00" +@.str13890 = private unnamed_addr constant [7 x i8] c" %arg_\00" +@.str13891 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21495: index out of range: \00" +@.str13892 = private unnamed_addr constant [5 x i8] c"void\00" +@.str13893 = private unnamed_addr constant [20 x i8] c" %retval = alloca \00" +@.str13894 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13895 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21514: index out of range: \00" +@.str13896 = private unnamed_addr constant [9 x i8] c" store \00" +@.str13897 = private unnamed_addr constant [7 x i8] c" %arg_\00" +@.str13898 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13899 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13900 = private unnamed_addr constant [5 x i8] c"void\00" +@.str13901 = private unnamed_addr constant [11 x i8] c"function '\00" +@.str13902 = private unnamed_addr constant [41 x i8] c"' can reach its end without returning a \00" +@.str13903 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" +@.str13904 = private unnamed_addr constant [6 x i8] c"ret:\0A\00" +@.str13905 = private unnamed_addr constant [5 x i8] c"void\00" +@.str13906 = private unnamed_addr constant [12 x i8] c" ret void\0A\00" +@.str13907 = private unnamed_addr constant [6 x i8] c"load \00" +@.str13908 = private unnamed_addr constant [14 x i8] c", ptr %retval\00" +@.str13909 = private unnamed_addr constant [7 x i8] c" ret \00" +@.str13910 = private unnamed_addr constant [2 x i8] c" \00" +@.str13911 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13912 = private unnamed_addr constant [8 x i8] c"define \00" +@.str13913 = private unnamed_addr constant [6 x i8] c" @fn_\00" +@.str13914 = private unnamed_addr constant [2 x i8] c"(\00" +@.str13915 = private unnamed_addr constant [12 x i8] c") {\0Aentry:\0A\00" +@.str13916 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str13917 = private unnamed_addr constant [1 x i8] c"\00" +@.str13918 = private unnamed_addr constant [4 x i8] c"int\00" +@.str13919 = private unnamed_addr constant [24 x i8] c" %retval = alloca i32\0A\00" +@.str13920 = private unnamed_addr constant [32 x i8] c" store i32 %argc, ptr @L_argc\0A\00" +@.str13921 = private unnamed_addr constant [32 x i8] c" store ptr %argv, ptr @L_argv\0A\00" +@.str13922 = private unnamed_addr constant [28 x i8] c" store i32 0, ptr %retval\0A\00" +@.str13923 = private unnamed_addr constant [31 x i8] c" call void @L_init_runtime()\0A\00" +@.str13924 = private unnamed_addr constant [28 x i8] c" call void @L_grow(i32 1)\0A\00" +@.str13925 = private unnamed_addr constant [8 x i8] c"rt_init\00" +@.str13926 = private unnamed_addr constant [13 x i8] c" call void \00" +@.str13927 = private unnamed_addr constant [8 x i8] c"rt_init\00" +@.str13928 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str13929 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" +@.str13930 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" +@.str13931 = private unnamed_addr constant [6 x i8] c"ret:\0A\00" +@.str13932 = private unnamed_addr constant [22 x i8] c"load i32, ptr %retval\00" +@.str13933 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str13934 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13935 = private unnamed_addr constant [49 x i8] c"define i32 @main(i32 %argc, ptr %argv) {\0Aentry:\0A\00" +@.str13936 = private unnamed_addr constant [3 x i8] c"}\0A\00" +@.str13937 = private unnamed_addr constant [5 x i8] c"void\00" +@.str13938 = private unnamed_addr constant [17 x i8] c" br label %ret\0A\00" +@.str13939 = private unnamed_addr constant [17 x i8] c"ret:\0A ret void\0A\00" +@.str13940 = private unnamed_addr constant [23 x i8] c"define void @fn__test_\00" +@.str13941 = private unnamed_addr constant [13 x i8] c"() {\0Aentry:\0A\00" +@.str13942 = private unnamed_addr constant [4 x i8] c"}\0A\0A\00" +@.str13943 = private unnamed_addr constant [38 x i8] c"@L_test_fail = internal global i32 0\0A\00" +@.str13944 = private unnamed_addr constant [94 x i8] c"@.fmt_test_sum = private unnamed_addr constant [28 x i8] c\22== %d passed, %d failed ==\5C0A\5C00\22\0A\00" +@.str13945 = private unnamed_addr constant [91 x i8] c"@.fmt_test_none = private unnamed_addr constant [20 x i8] c\22no test named \5C22%s\5C22\5C0A\5C00\22\0A\00" +@.str13946 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21596: index out of range: \00" +@.str13947 = private unnamed_addr constant [86 x i8] c"@.fmt_expect = private unnamed_addr constant [22 x i8] c\22%s (got %d, want %d)\5C0A\5C00\22\0A\00" +@.str13948 = private unnamed_addr constant [102 x i8] c"@.fmt_expect_str = private unnamed_addr constant [26 x i8] c\22%s (got \5C22%s\5C22, want \5C22%s\5C22)\5C0A\5C00\22\0A\00" +@.str13949 = private unnamed_addr constant [89 x i8] c"@.fmt_expect_fp = private unnamed_addr constant [22 x i8] c\22%s (got %g, want %g)\5C0A\5C00\22\0A\00" +@.str13950 = private unnamed_addr constant [49 x i8] c"define i32 @main(i32 %argc, ptr %argv) {\0Aentry:\0A\00" +@.str13951 = private unnamed_addr constant [32 x i8] c" store i32 %argc, ptr @L_argc\0A\00" +@.str13952 = private unnamed_addr constant [32 x i8] c" store ptr %argv, ptr @L_argv\0A\00" +@.str13953 = private unnamed_addr constant [51 x i8] c" %failed = alloca i32\0A store i32 0, ptr %failed\0A\00" +@.str13954 = private unnamed_addr constant [45 x i8] c" %ran = alloca i32\0A store i32 0, ptr %ran\0A\00" +@.str13955 = private unnamed_addr constant [54 x i8] c" %filter = alloca ptr\0A store ptr null, ptr %filter\0A\00" +@.str13956 = private unnamed_addr constant [6 x i8] c"tfilt\00" +@.str13957 = private unnamed_addr constant [7 x i8] c"tbegin\00" +@.str13958 = private unnamed_addr constant [22 x i8] c"icmp sgt i32 %argc, 1\00" +@.str13959 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str13960 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13961 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13962 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13963 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13964 = private unnamed_addr constant [36 x i8] c"getelementptr ptr, ptr %argv, i64 1\00" +@.str13965 = private unnamed_addr constant [15 x i8] c"load ptr, ptr \00" +@.str13966 = private unnamed_addr constant [13 x i8] c" store ptr \00" +@.str13967 = private unnamed_addr constant [15 x i8] c", ptr %filter\0A\00" +@.str13968 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str13969 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13970 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13971 = private unnamed_addr constant [6 x i8] c"tlist\00" +@.str13972 = private unnamed_addr constant [6 x i8] c"trun0\00" +@.str13973 = private unnamed_addr constant [22 x i8] c"load ptr, ptr %filter\00" +@.str13974 = private unnamed_addr constant [13 x i8] c"icmp ne ptr \00" +@.str13975 = private unnamed_addr constant [7 x i8] c", null\00" +@.str13976 = private unnamed_addr constant [6 x i8] c"tlcmp\00" +@.str13977 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str13978 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13979 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13980 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13981 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13982 = private unnamed_addr constant [7 x i8] c"--list\00" +@.str13983 = private unnamed_addr constant [22 x i8] c"call i32 @strcmp(ptr \00" +@.str13984 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str13985 = private unnamed_addr constant [2 x i8] c")\00" +@.str13986 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str13987 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str13988 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str13989 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13990 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str13991 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str13992 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13993 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21632: index out of range: \00" +@.str13994 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" +@.str13995 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str13996 = private unnamed_addr constant [13 x i8] c" ret i32 0\0A\00" +@.str13997 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str13998 = private unnamed_addr constant [31 x i8] c" call void @L_init_runtime()\0A\00" +@.str13999 = private unnamed_addr constant [28 x i8] c" call void @L_grow(i32 1)\0A\00" +@.str14000 = private unnamed_addr constant [24 x i8] c" call void @rt_init()\0A\00" +@.str14001 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" +@.str14002 = private unnamed_addr constant [8 x i8] c"ok - \00" +@.str14003 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21644: index out of range: \00" +@.str14004 = private unnamed_addr constant [8 x i8] c"FAIL - \00" +@.str14005 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21645: index out of range: \00" +@.str14006 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21646: index out of range: \00" +@.str14007 = private unnamed_addr constant [5 x i8] c"tcmp\00" +@.str14008 = private unnamed_addr constant [5 x i8] c"trun\00" +@.str14009 = private unnamed_addr constant [6 x i8] c"tskip\00" +@.str14010 = private unnamed_addr constant [22 x i8] c"load ptr, ptr %filter\00" +@.str14011 = private unnamed_addr constant [13 x i8] c"icmp eq ptr \00" +@.str14012 = private unnamed_addr constant [7 x i8] c", null\00" +@.str14013 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str14014 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14015 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14016 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14017 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14018 = private unnamed_addr constant [22 x i8] c"call i32 @strcmp(ptr \00" +@.str14019 = private unnamed_addr constant [7 x i8] c", ptr \00" +@.str14020 = private unnamed_addr constant [2 x i8] c")\00" +@.str14021 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str14022 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str14023 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str14024 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14025 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14026 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14027 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14028 = private unnamed_addr constant [19 x i8] c"load i32, ptr %ran\00" +@.str14029 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str14030 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str14031 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str14032 = private unnamed_addr constant [12 x i8] c", ptr %ran\0A\00" +@.str14033 = private unnamed_addr constant [33 x i8] c" store i32 0, ptr @L_test_fail\0A\00" +@.str14034 = private unnamed_addr constant [31 x i8] c" call void @L_init_globals()\0A\00" +@.str14035 = private unnamed_addr constant [23 x i8] c" call void @fn__test_\00" +@.str14036 = private unnamed_addr constant [4 x i8] c"()\0A\00" +@.str14037 = private unnamed_addr constant [27 x i8] c"load i32, ptr @L_test_fail\00" +@.str14038 = private unnamed_addr constant [13 x i8] c"icmp ne i32 \00" +@.str14039 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str14040 = private unnamed_addr constant [6 x i8] c"tpass\00" +@.str14041 = private unnamed_addr constant [6 x i8] c"tfail\00" +@.str14042 = private unnamed_addr constant [6 x i8] c"tdone\00" +@.str14043 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str14044 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14045 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14046 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14047 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14048 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" +@.str14049 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str14050 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str14051 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14052 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14053 = private unnamed_addr constant [22 x i8] c"load i32, ptr %failed\00" +@.str14054 = private unnamed_addr constant [9 x i8] c"add i32 \00" +@.str14055 = private unnamed_addr constant [4 x i8] c", 1\00" +@.str14056 = private unnamed_addr constant [13 x i8] c" store i32 \00" +@.str14057 = private unnamed_addr constant [15 x i8] c", ptr %failed\0A\00" +@.str14058 = private unnamed_addr constant [51 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr \00" +@.str14059 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str14060 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str14061 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14062 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14063 = private unnamed_addr constant [13 x i8] c" br label %\00" +@.str14064 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14065 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14066 = private unnamed_addr constant [6 x i8] c"tnone\00" +@.str14067 = private unnamed_addr constant [5 x i8] c"tsum\00" +@.str14068 = private unnamed_addr constant [19 x i8] c"load i32, ptr %ran\00" +@.str14069 = private unnamed_addr constant [22 x i8] c"load ptr, ptr %filter\00" +@.str14070 = private unnamed_addr constant [13 x i8] c"icmp ne ptr \00" +@.str14071 = private unnamed_addr constant [7 x i8] c", null\00" +@.str14072 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str14073 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str14074 = private unnamed_addr constant [8 x i8] c"and i1 \00" +@.str14075 = private unnamed_addr constant [3 x i8] c", \00" +@.str14076 = private unnamed_addr constant [9 x i8] c" br i1 \00" +@.str14077 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14078 = private unnamed_addr constant [10 x i8] c", label %\00" +@.str14079 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14080 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14081 = private unnamed_addr constant [56 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_test_none, ptr \00" +@.str14082 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str14083 = private unnamed_addr constant [13 x i8] c" ret i32 1\0A\00" +@.str14084 = private unnamed_addr constant [3 x i8] c":\0A\00" +@.str14085 = private unnamed_addr constant [22 x i8] c"load i32, ptr %failed\00" +@.str14086 = private unnamed_addr constant [9 x i8] c"sub i32 \00" +@.str14087 = private unnamed_addr constant [3 x i8] c", \00" +@.str14088 = private unnamed_addr constant [55 x i8] c" call i32 (ptr, ...) @printf(ptr @.fmt_test_sum, i32 \00" +@.str14089 = private unnamed_addr constant [7 x i8] c", i32 \00" +@.str14090 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str14091 = private unnamed_addr constant [13 x i8] c"icmp eq i32 \00" +@.str14092 = private unnamed_addr constant [4 x i8] c", 0\00" +@.str14093 = private unnamed_addr constant [11 x i8] c"select i1 \00" +@.str14094 = private unnamed_addr constant [15 x i8] c", i32 0, i32 1\00" +@.str14095 = private unnamed_addr constant [11 x i8] c" ret i32 \00" +@.str14096 = private unnamed_addr constant [4 x i8] c"\0A}\0A\00" +@.str14097 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21709: index out of range: \00" +@.str14098 = private unnamed_addr constant [11 x i8] c"function '\00" +@.str14099 = private unnamed_addr constant [30 x i8] c"' is defined twice (first in \00" +@.str14100 = private unnamed_addr constant [2 x i8] c":\00" +@.str14101 = private unnamed_addr constant [2 x i8] c")\00" +@.str14102 = private unnamed_addr constant [1 x i8] c"\00" +@.str14103 = private unnamed_addr constant [1 x i8] c"\00" +@.str14104 = private unnamed_addr constant [1 x i8] c"\00" +@.str14105 = private unnamed_addr constant [1 x i8] c"\00" +@.str14106 = private unnamed_addr constant [1 x i8] c"\00" +@.str14107 = private unnamed_addr constant [1 x i8] c"\00" +@.str14108 = private unnamed_addr constant [3 x i8] c": \00" +@.str14109 = private unnamed_addr constant [126 x i8] c" exports it, and exported names are one namespace - rename this one, or declare it without export inside a module of your own\00" +@.str14110 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21746: index out of range: \00" +@.str14111 = private unnamed_addr constant [2 x i8] c":\00" +@.str14112 = private unnamed_addr constant [2 x i8] c"'\00" +@.str14113 = private unnamed_addr constant [30 x i8] c"' is defined twice (first in \00" +@.str14114 = private unnamed_addr constant [2 x i8] c":\00" +@.str14115 = private unnamed_addr constant [2 x i8] c")\00" +@.str14116 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21793: index out of range: \00" +@.str14117 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21795: index out of range: \00" +@.str14118 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21813: index out of range: \00" +@.str14119 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21813: index out of range: \00" +@.str14120 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21818: index out of range: \00" +@.str14121 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21818: index out of range: \00" +@.str14122 = private unnamed_addr constant [36 x i8] c"@L_running = internal global i32 1\0A\00" +@.str14123 = private unnamed_addr constant [23 x i8] c"declare i32 @getpid()\0A\00" +@.str14124 = private unnamed_addr constant [37 x i8] c"declare i32 @fprintf(ptr, ptr, ...)\0A\00" +@.str14125 = private unnamed_addr constant [68 x i8] c"@.fmt_panic = private unnamed_addr constant [6 x i8] c\22%s%s\5C0A\5C00\22\0A\00" +@.str14126 = private unnamed_addr constant [37 x i8] c"declare i32 @fprintf(ptr, ptr, ...)\0A\00" +@.str14127 = private unnamed_addr constant [78 x i8] c"@.fmt_bounds = private unnamed_addr constant [14 x i8] c\22%s%d, len %d\5C0A\5C00\22\0A\00" +@.str14128 = private unnamed_addr constant [34 x i8] c"%Result = type { i32, i32, ptr }\0A\00" +@.str14129 = private unnamed_addr constant [29 x i8] c"%Option = type { i32, i32 }\0A\00" +@.str14130 = private unnamed_addr constant [33 x i8] c"@L_cov_lines = internal global [\00" +@.str14131 = private unnamed_addr constant [10 x i8] c" x i32] [\00" +@.str14132 = private unnamed_addr constant [3 x i8] c", \00" +@.str14133 = private unnamed_addr constant [5 x i8] c"i32 \00" +@.str14134 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:21874: index out of range: \00" +@.str14135 = private unnamed_addr constant [3 x i8] c"]\0A\00" +@.str14136 = private unnamed_addr constant [32 x i8] c"@L_cov_hits = internal global [\00" +@.str14137 = private unnamed_addr constant [25 x i8] c" x i32] zeroinitializer\0A\00" +@.str14138 = private unnamed_addr constant [32 x i8] c"@L_cov_n = internal global i32 \00" +@.str14139 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14140 = private unnamed_addr constant [15 x i8] c"LUDIC_COVERAGE\00" +@.str14141 = private unnamed_addr constant [10 x i8] c"ludic.cov\00" +@.str14142 = private unnamed_addr constant [2 x i8] c"w\00" +@.str14143 = private unnamed_addr constant [73 x i8] c"@.cov_filefmt = private unnamed_addr constant [9 x i8] c\22FILE %s\5C0A\5C00\22\0A\00" +@.str14144 = private unnamed_addr constant [70 x i8] c"@.cov_rowfmt = private unnamed_addr constant [7 x i8] c\22%d %d\5C0A\5C00\22\0A\00" +@.str14145 = private unnamed_addr constant [37 x i8] c"declare i32 @fprintf(ptr, ptr, ...)\0A\00" +@.str14146 = private unnamed_addr constant [26 x i8] c"declare i32 @atexit(ptr)\0A\00" +@.str14147 = private unnamed_addr constant [34 x i8] c"define void @cov_dump() {\0Aentry:\0A\00" +@.str14148 = private unnamed_addr constant [31 x i8] c" %env = call ptr @getenv(ptr \00" +@.str14149 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str14150 = private unnamed_addr constant [35 x i8] c" %noenv = icmp eq ptr %env, null\0A\00" +@.str14151 = private unnamed_addr constant [33 x i8] c" %path = select i1 %noenv, ptr \00" +@.str14152 = private unnamed_addr constant [12 x i8] c", ptr %env\0A\00" +@.str14153 = private unnamed_addr constant [39 x i8] c" %f = call ptr @fopen(ptr %path, ptr \00" +@.str14154 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str14155 = private unnamed_addr constant [31 x i8] c" %bad = icmp eq ptr %f, null\0A\00" +@.str14156 = private unnamed_addr constant [41 x i8] c" br i1 %bad, label %done, label %write\0A\00" +@.str14157 = private unnamed_addr constant [8 x i8] c"write:\0A\00" +@.str14158 = private unnamed_addr constant [68 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr %f, ptr @.cov_filefmt, ptr \00" +@.str14159 = private unnamed_addr constant [3 x i8] c")\0A\00" +@.str14160 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" +@.str14161 = private unnamed_addr constant [7 x i8] c"loop:\0A\00" +@.str14162 = private unnamed_addr constant [46 x i8] c" %i = phi i32 [ 0, %write ], [ %i1, %body ]\0A\00" +@.str14163 = private unnamed_addr constant [26 x i8] c" %go = icmp slt i32 %i, \00" +@.str14164 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14165 = private unnamed_addr constant [40 x i8] c" br i1 %go, label %body, label %close\0A\00" +@.str14166 = private unnamed_addr constant [7 x i8] c"body:\0A\00" +@.str14167 = private unnamed_addr constant [33 x i8] c" %lp = getelementptr inbounds [\00" +@.str14168 = private unnamed_addr constant [42 x i8] c" x i32], ptr @L_cov_lines, i32 0, i32 %i\0A\00" +@.str14169 = private unnamed_addr constant [27 x i8] c" %lv = load i32, ptr %lp\0A\00" +@.str14170 = private unnamed_addr constant [33 x i8] c" %hp = getelementptr inbounds [\00" +@.str14171 = private unnamed_addr constant [41 x i8] c" x i32], ptr @L_cov_hits, i32 0, i32 %i\0A\00" +@.str14172 = private unnamed_addr constant [27 x i8] c" %hv = load i32, ptr %hp\0A\00" +@.str14173 = private unnamed_addr constant [81 x i8] c" call i32 (ptr, ptr, ...) @fprintf(ptr %f, ptr @.cov_rowfmt, i32 %lv, i32 %hv)\0A\00" +@.str14174 = private unnamed_addr constant [23 x i8] c" %i1 = add i32 %i, 1\0A\00" +@.str14175 = private unnamed_addr constant [18 x i8] c" br label %loop\0A\00" +@.str14176 = private unnamed_addr constant [8 x i8] c"close:\0A\00" +@.str14177 = private unnamed_addr constant [34 x i8] c" %rc = call i32 @fclose(ptr %f)\0A\00" +@.str14178 = private unnamed_addr constant [18 x i8] c" br label %done\0A\00" +@.str14179 = private unnamed_addr constant [21 x i8] c"done:\0A ret void\0A}\0A\0A\00" +@.str14180 = private unnamed_addr constant [34 x i8] c"define void @cov_init() {\0Aentry:\0A\00" +@.str14181 = private unnamed_addr constant [40 x i8] c" %r = call i32 @atexit(ptr @cov_dump)\0A\00" +@.str14182 = private unnamed_addr constant [15 x i8] c" ret void\0A}\0A\0A\00" +@.str14183 = private unnamed_addr constant [122 x i8] c"@llvm.global_ctors = appending global [1 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 65535, ptr @cov_init, ptr null }]\0A\00" +@.str14184 = private unnamed_addr constant [3 x i8] c"wb\00" +@.str14185 = private unnamed_addr constant [7 x i8] c".ludic\00" +@.str14186 = private unnamed_addr constant [2 x i8] c"/\00" +@.str14187 = private unnamed_addr constant [15 x i8] c"if not exist \22\00" +@.str14188 = private unnamed_addr constant [10 x i8] c"\22 mkdir \22\00" +@.str14189 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str14190 = private unnamed_addr constant [10 x i8] c"mkdir -p \00" +@.str14191 = private unnamed_addr constant [12 x i8] c"del /f /q \22\00" +@.str14192 = private unnamed_addr constant [8 x i8] c"\22 2>nul\00" +@.str14193 = private unnamed_addr constant [7 x i8] c"rm -f \00" +@.str14194 = private unnamed_addr constant [9 x i8] c"LUDIC_CC\00" +@.str14195 = private unnamed_addr constant [36 x i8] c"C:/Program Files/LLVM/bin/clang.exe\00" +@.str14196 = private unnamed_addr constant [3 x i8] c"rb\00" +@.str14197 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str14198 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str14199 = private unnamed_addr constant [6 x i8] c"clang\00" +@.str14200 = private unnamed_addr constant [8 x i8] c"VERSION\00" +@.str14201 = private unnamed_addr constant [24 x i8] c"ludic (version unknown)\00" +@.str14202 = private unnamed_addr constant [7 x i8] c"ludic \00" +@.str14203 = private unnamed_addr constant [1 x i8] c"\00" +@.str14204 = private unnamed_addr constant [1 x i8] c"\00" +@.str14205 = private unnamed_addr constant [2 x i8] c",\00" +@.str14206 = private unnamed_addr constant [1 x i8] c"\00" +@.str14207 = private unnamed_addr constant [2 x i8] c",\00" +@.str14208 = private unnamed_addr constant [2 x i8] c"?\00" +@.str14209 = private unnamed_addr constant [4 x i8] c"ret\00" +@.str14210 = private unnamed_addr constant [1 x i8] c"\00" +@.str14211 = private unnamed_addr constant [5 x i8] c"void\00" +@.str14212 = private unnamed_addr constant [10 x i8] c"--version\00" +@.str14213 = private unnamed_addr constant [11 x i8] c"--windowed\00" +@.str14214 = private unnamed_addr constant [11 x i8] c"--headless\00" +@.str14215 = private unnamed_addr constant [12 x i8] c"--emit-llvm\00" +@.str14216 = private unnamed_addr constant [9 x i8] c"--unsafe\00" +@.str14217 = private unnamed_addr constant [14 x i8] c"--emit-module\00" +@.str14218 = private unnamed_addr constant [6 x i8] c"--fmt\00" +@.str14219 = private unnamed_addr constant [13 x i8] c"--save-temps\00" +@.str14220 = private unnamed_addr constant [6 x i8] c"--run\00" +@.str14221 = private unnamed_addr constant [8 x i8] c"--check\00" +@.str14222 = private unnamed_addr constant [10 x i8] c"--globals\00" +@.str14223 = private unnamed_addr constant [16 x i8] c"--migrate-state\00" +@.str14224 = private unnamed_addr constant [16 x i8] c"--migrate-prune\00" +@.str14225 = private unnamed_addr constant [18 x i8] c"--migrate-tighten\00" +@.str14226 = private unnamed_addr constant [18 x i8] c"--migrate-runtime\00" +@.str14227 = private unnamed_addr constant [11 x i8] c"--coverage\00" +@.str14228 = private unnamed_addr constant [9 x i8] c"--target\00" +@.str14229 = private unnamed_addr constant [6 x i8] c"--gui\00" +@.str14230 = private unnamed_addr constant [8 x i8] c"--title\00" +@.str14231 = private unnamed_addr constant [14 x i8] c"--natives-out\00" +@.str14232 = private unnamed_addr constant [7 x i8] c"--link\00" +@.str14233 = private unnamed_addr constant [3 x i8] c"-o\00" +@.str14234 = private unnamed_addr constant [31 x i8] c"ludicc: ignoring unknown flag \00" +@.str14235 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14236 = private unnamed_addr constant [108 x i8] c"usage: ludicc [-o out] [--windowed|--headless] [--target triple] [--emit-llvm] [--save-temps]\0A\00" +@.str14237 = private unnamed_addr constant [8 x i8] c"windows\00" +@.str14238 = private unnamed_addr constant [27 x i8] c"ludicc: cannot open input\0A\00" +@.str14239 = private unnamed_addr constant [5 x i8] c"TEMP\00" +@.str14240 = private unnamed_addr constant [2 x i8] c".\00" +@.str14241 = private unnamed_addr constant [12 x i8] c"/ludic-run-\00" +@.str14242 = private unnamed_addr constant [16 x i8] c"/tmp/ludic-run-\00" +@.str14243 = private unnamed_addr constant [5 x i8] c".exe\00" +@.str14244 = private unnamed_addr constant [5 x i8] c".exe\00" +@.str14245 = private unnamed_addr constant [4 x i8] c".ll\00" +@.str14246 = private unnamed_addr constant [25 x i8] c"ludicc: cannot write IR\0A\00" +@.str14247 = private unnamed_addr constant [27 x i8] c" -O2 -Wno-override-module \00" +@.str14248 = private unnamed_addr constant [24 x i8] c"runtime/native/win32.ll\00" +@.str14249 = private unnamed_addr constant [2 x i8] c" \00" +@.str14250 = private unnamed_addr constant [63 x i8] c" -luser32 -lgdi32 -lxinput -lole32 -Wl,/ignore:importeddllmain\00" +@.str14251 = private unnamed_addr constant [28 x i8] c"runtime/native/audio_win.ll\00" +@.str14252 = private unnamed_addr constant [2 x i8] c" \00" +@.str14253 = private unnamed_addr constant [19 x i8] c" -lxaudio2 -lole32\00" +@.str14254 = private unnamed_addr constant [24 x i8] c"runtime/native/cocoa.ll\00" +@.str14255 = private unnamed_addr constant [2 x i8] c" \00" +@.str14256 = private unnamed_addr constant [79 x i8] c" -framework Cocoa -Wl,-needed_framework,GameController -Wl,-rpath,@loader_path\00" +@.str14257 = private unnamed_addr constant [24 x i8] c"runtime/native/audio.ll\00" +@.str14258 = private unnamed_addr constant [2 x i8] c" \00" +@.str14259 = private unnamed_addr constant [36 x i8] c" -Wl,-needed_framework,AVFoundation\00" +@.str14260 = private unnamed_addr constant [2 x i8] c" \00" +@.str14261 = private unnamed_addr constant [30 x i8] c"runtime/native/threads_win.ll\00" +@.str14262 = private unnamed_addr constant [2 x i8] c" \00" +@.str14263 = private unnamed_addr constant [26 x i8] c"runtime/native/threads.ll\00" +@.str14264 = private unnamed_addr constant [2 x i8] c" \00" +@.str14265 = private unnamed_addr constant [26 x i8] c"runtime/native/udp_win.ll\00" +@.str14266 = private unnamed_addr constant [10 x i8] c" -lws2_32\00" +@.str14267 = private unnamed_addr constant [2 x i8] c" \00" +@.str14268 = private unnamed_addr constant [22 x i8] c"runtime/native/udp.ll\00" +@.str14269 = private unnamed_addr constant [12 x i8] c" -ladvapi32\00" +@.str14270 = private unnamed_addr constant [2 x i8] c" \00" +@.str14271 = private unnamed_addr constant [30 x i8] c"runtime/native/process_win.ll\00" +@.str14272 = private unnamed_addr constant [2 x i8] c" \00" +@.str14273 = private unnamed_addr constant [26 x i8] c"runtime/native/process.ll\00" +@.str14274 = private unnamed_addr constant [27 x i8] c"runtime/native/http_win.ll\00" +@.str14275 = private unnamed_addr constant [2 x i8] c" \00" +@.str14276 = private unnamed_addr constant [11 x i8] c" -lwinhttp\00" +@.str14277 = private unnamed_addr constant [23 x i8] c"runtime/native/http.ll\00" +@.str14278 = private unnamed_addr constant [2 x i8] c" \00" +@.str14279 = private unnamed_addr constant [34 x i8] c" -Wl,-needed_framework,Foundation\00" +@.str14280 = private unnamed_addr constant [25 x i8] c"runtime/native/gl_win.ll\00" +@.str14281 = private unnamed_addr constant [32 x i8] c"runtime/native/gl_thunks_win.ll\00" +@.str14282 = private unnamed_addr constant [31 x i8] c"runtime/native/gl_win_nowin.ll\00" +@.str14283 = private unnamed_addr constant [27 x i8] c"runtime/native/win32_gl.ll\00" +@.str14284 = private unnamed_addr constant [2 x i8] c" \00" +@.str14285 = private unnamed_addr constant [2 x i8] c" \00" +@.str14286 = private unnamed_addr constant [2 x i8] c" \00" +@.str14287 = private unnamed_addr constant [29 x i8] c" -luser32 -lgdi32 -lopengl32\00" +@.str14288 = private unnamed_addr constant [21 x i8] c"runtime/native/gl.ll\00" +@.str14289 = private unnamed_addr constant [28 x i8] c"runtime/native/gl_thunks.ll\00" +@.str14290 = private unnamed_addr constant [2 x i8] c" \00" +@.str14291 = private unnamed_addr constant [2 x i8] c" \00" +@.str14292 = private unnamed_addr constant [19 x i8] c" -framework OpenGL\00" +@.str14293 = private unnamed_addr constant [28 x i8] c"runtime/native/vk_thunks.ll\00" +@.str14294 = private unnamed_addr constant [25 x i8] c"runtime/native/vk_mac.ll\00" +@.str14295 = private unnamed_addr constant [25 x i8] c"runtime/native/vk_win.ll\00" +@.str14296 = private unnamed_addr constant [2 x i8] c" \00" +@.str14297 = private unnamed_addr constant [2 x i8] c" \00" +@.str14298 = private unnamed_addr constant [34 x i8] c" -Wl,-needed_framework,QuartzCore\00" +@.str14299 = private unnamed_addr constant [50 x i8] c" -Wl,/subsystem:windows -Wl,/entry:mainCRTStartup\00" +@.str14300 = private unnamed_addr constant [3 x i8] c" \22\00" +@.str14301 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:22318: index out of range: \00" +@.str14302 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str14303 = private unnamed_addr constant [5 x i8] c" -o \00" +@.str14304 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str14305 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str14306 = private unnamed_addr constant [21 x i8] c"ludicc: link failed\0A\00" +@.str14307 = private unnamed_addr constant [1 x i8] c"\00" +@.str14308 = private unnamed_addr constant [55 x i8] c"build/cfree/selfhost.ludic:22332: index out of range: \00" +@.str14309 = private unnamed_addr constant [2 x i8] c"\0A\00" +@.str14310 = private unnamed_addr constant [3 x i8] c"wb\00" +@.str14311 = private unnamed_addr constant [2 x i8] c"\22\00" +@.str14312 = private unnamed_addr constant [2 x i8] c"\22\00" define i32 @lp_str_eq(ptr %a, ptr %b) { entry: br label %loop @@ -15741,56 +15885,56 @@ sod: store i32 %fcnt, ptr %d2 ret ptr %h } -@.str14169 = private unnamed_addr constant [4 x i8] c"png\00" -@.str14170 = private unnamed_addr constant [10 x i8] c"image/png\00" -@.str14171 = private unnamed_addr constant [4 x i8] c"jpg\00" -@.str14172 = private unnamed_addr constant [11 x i8] c"image/jpeg\00" -@.str14173 = private unnamed_addr constant [5 x i8] c"jpeg\00" -@.str14174 = private unnamed_addr constant [11 x i8] c"image/jpeg\00" -@.str14175 = private unnamed_addr constant [4 x i8] c"gif\00" -@.str14176 = private unnamed_addr constant [10 x i8] c"image/gif\00" -@.str14177 = private unnamed_addr constant [4 x i8] c"bmp\00" -@.str14178 = private unnamed_addr constant [10 x i8] c"image/bmp\00" -@.str14179 = private unnamed_addr constant [5 x i8] c"webp\00" -@.str14180 = private unnamed_addr constant [11 x i8] c"image/webp\00" -@.str14181 = private unnamed_addr constant [4 x i8] c"svg\00" -@.str14182 = private unnamed_addr constant [14 x i8] c"image/svg+xml\00" -@.str14183 = private unnamed_addr constant [4 x i8] c"txt\00" -@.str14184 = private unnamed_addr constant [11 x i8] c"text/plain\00" -@.str14185 = private unnamed_addr constant [3 x i8] c"md\00" -@.str14186 = private unnamed_addr constant [14 x i8] c"text/markdown\00" -@.str14187 = private unnamed_addr constant [4 x i8] c"csv\00" -@.str14188 = private unnamed_addr constant [9 x i8] c"text/csv\00" -@.str14189 = private unnamed_addr constant [5 x i8] c"html\00" -@.str14190 = private unnamed_addr constant [10 x i8] c"text/html\00" -@.str14191 = private unnamed_addr constant [4 x i8] c"htm\00" -@.str14192 = private unnamed_addr constant [10 x i8] c"text/html\00" -@.str14193 = private unnamed_addr constant [4 x i8] c"css\00" -@.str14194 = private unnamed_addr constant [9 x i8] c"text/css\00" -@.str14195 = private unnamed_addr constant [3 x i8] c"js\00" -@.str14196 = private unnamed_addr constant [16 x i8] c"text/javascript\00" -@.str14197 = private unnamed_addr constant [5 x i8] c"json\00" -@.str14198 = private unnamed_addr constant [17 x i8] c"application/json\00" -@.str14199 = private unnamed_addr constant [4 x i8] c"xml\00" -@.str14200 = private unnamed_addr constant [16 x i8] c"application/xml\00" -@.str14201 = private unnamed_addr constant [4 x i8] c"zip\00" -@.str14202 = private unnamed_addr constant [16 x i8] c"application/zip\00" -@.str14203 = private unnamed_addr constant [4 x i8] c"pdf\00" -@.str14204 = private unnamed_addr constant [16 x i8] c"application/pdf\00" -@.str14205 = private unnamed_addr constant [4 x i8] c"wav\00" -@.str14206 = private unnamed_addr constant [10 x i8] c"audio/wav\00" -@.str14207 = private unnamed_addr constant [4 x i8] c"ogg\00" -@.str14208 = private unnamed_addr constant [10 x i8] c"audio/ogg\00" -@.str14209 = private unnamed_addr constant [4 x i8] c"mp3\00" -@.str14210 = private unnamed_addr constant [11 x i8] c"audio/mpeg\00" -@.str14211 = private unnamed_addr constant [4 x i8] c"ttf\00" -@.str14212 = private unnamed_addr constant [9 x i8] c"font/ttf\00" -@.str14213 = private unnamed_addr constant [4 x i8] c"otf\00" -@.str14214 = private unnamed_addr constant [9 x i8] c"font/otf\00" -@.str14215 = private unnamed_addr constant [6 x i8] c"ludic\00" -@.str14216 = private unnamed_addr constant [13 x i8] c"text/x-ludic\00" -@.str14217 = private unnamed_addr constant [25 x i8] c"application/octet-stream\00" -@mime_tbl = private unnamed_addr constant [24 x { ptr, ptr }] [{ ptr, ptr } { ptr @.str14169, ptr @.str14170 }, { ptr, ptr } { ptr @.str14171, ptr @.str14172 }, { ptr, ptr } { ptr @.str14173, ptr @.str14174 }, { ptr, ptr } { ptr @.str14175, ptr @.str14176 }, { ptr, ptr } { ptr @.str14177, ptr @.str14178 }, { ptr, ptr } { ptr @.str14179, ptr @.str14180 }, { ptr, ptr } { ptr @.str14181, ptr @.str14182 }, { ptr, ptr } { ptr @.str14183, ptr @.str14184 }, { ptr, ptr } { ptr @.str14185, ptr @.str14186 }, { ptr, ptr } { ptr @.str14187, ptr @.str14188 }, { ptr, ptr } { ptr @.str14189, ptr @.str14190 }, { ptr, ptr } { ptr @.str14191, ptr @.str14192 }, { ptr, ptr } { ptr @.str14193, ptr @.str14194 }, { ptr, ptr } { ptr @.str14195, ptr @.str14196 }, { ptr, ptr } { ptr @.str14197, ptr @.str14198 }, { ptr, ptr } { ptr @.str14199, ptr @.str14200 }, { ptr, ptr } { ptr @.str14201, ptr @.str14202 }, { ptr, ptr } { ptr @.str14203, ptr @.str14204 }, { ptr, ptr } { ptr @.str14205, ptr @.str14206 }, { ptr, ptr } { ptr @.str14207, ptr @.str14208 }, { ptr, ptr } { ptr @.str14209, ptr @.str14210 }, { ptr, ptr } { ptr @.str14211, ptr @.str14212 }, { ptr, ptr } { ptr @.str14213, ptr @.str14214 }, { ptr, ptr } { ptr @.str14215, ptr @.str14216 }] +@.str14313 = private unnamed_addr constant [4 x i8] c"png\00" +@.str14314 = private unnamed_addr constant [10 x i8] c"image/png\00" +@.str14315 = private unnamed_addr constant [4 x i8] c"jpg\00" +@.str14316 = private unnamed_addr constant [11 x i8] c"image/jpeg\00" +@.str14317 = private unnamed_addr constant [5 x i8] c"jpeg\00" +@.str14318 = private unnamed_addr constant [11 x i8] c"image/jpeg\00" +@.str14319 = private unnamed_addr constant [4 x i8] c"gif\00" +@.str14320 = private unnamed_addr constant [10 x i8] c"image/gif\00" +@.str14321 = private unnamed_addr constant [4 x i8] c"bmp\00" +@.str14322 = private unnamed_addr constant [10 x i8] c"image/bmp\00" +@.str14323 = private unnamed_addr constant [5 x i8] c"webp\00" +@.str14324 = private unnamed_addr constant [11 x i8] c"image/webp\00" +@.str14325 = private unnamed_addr constant [4 x i8] c"svg\00" +@.str14326 = private unnamed_addr constant [14 x i8] c"image/svg+xml\00" +@.str14327 = private unnamed_addr constant [4 x i8] c"txt\00" +@.str14328 = private unnamed_addr constant [11 x i8] c"text/plain\00" +@.str14329 = private unnamed_addr constant [3 x i8] c"md\00" +@.str14330 = private unnamed_addr constant [14 x i8] c"text/markdown\00" +@.str14331 = private unnamed_addr constant [4 x i8] c"csv\00" +@.str14332 = private unnamed_addr constant [9 x i8] c"text/csv\00" +@.str14333 = private unnamed_addr constant [5 x i8] c"html\00" +@.str14334 = private unnamed_addr constant [10 x i8] c"text/html\00" +@.str14335 = private unnamed_addr constant [4 x i8] c"htm\00" +@.str14336 = private unnamed_addr constant [10 x i8] c"text/html\00" +@.str14337 = private unnamed_addr constant [4 x i8] c"css\00" +@.str14338 = private unnamed_addr constant [9 x i8] c"text/css\00" +@.str14339 = private unnamed_addr constant [3 x i8] c"js\00" +@.str14340 = private unnamed_addr constant [16 x i8] c"text/javascript\00" +@.str14341 = private unnamed_addr constant [5 x i8] c"json\00" +@.str14342 = private unnamed_addr constant [17 x i8] c"application/json\00" +@.str14343 = private unnamed_addr constant [4 x i8] c"xml\00" +@.str14344 = private unnamed_addr constant [16 x i8] c"application/xml\00" +@.str14345 = private unnamed_addr constant [4 x i8] c"zip\00" +@.str14346 = private unnamed_addr constant [16 x i8] c"application/zip\00" +@.str14347 = private unnamed_addr constant [4 x i8] c"pdf\00" +@.str14348 = private unnamed_addr constant [16 x i8] c"application/pdf\00" +@.str14349 = private unnamed_addr constant [4 x i8] c"wav\00" +@.str14350 = private unnamed_addr constant [10 x i8] c"audio/wav\00" +@.str14351 = private unnamed_addr constant [4 x i8] c"ogg\00" +@.str14352 = private unnamed_addr constant [10 x i8] c"audio/ogg\00" +@.str14353 = private unnamed_addr constant [4 x i8] c"mp3\00" +@.str14354 = private unnamed_addr constant [11 x i8] c"audio/mpeg\00" +@.str14355 = private unnamed_addr constant [4 x i8] c"ttf\00" +@.str14356 = private unnamed_addr constant [9 x i8] c"font/ttf\00" +@.str14357 = private unnamed_addr constant [4 x i8] c"otf\00" +@.str14358 = private unnamed_addr constant [9 x i8] c"font/otf\00" +@.str14359 = private unnamed_addr constant [6 x i8] c"ludic\00" +@.str14360 = private unnamed_addr constant [13 x i8] c"text/x-ludic\00" +@.str14361 = private unnamed_addr constant [25 x i8] c"application/octet-stream\00" +@mime_tbl = private unnamed_addr constant [24 x { ptr, ptr }] [{ ptr, ptr } { ptr @.str14313, ptr @.str14314 }, { ptr, ptr } { ptr @.str14315, ptr @.str14316 }, { ptr, ptr } { ptr @.str14317, ptr @.str14318 }, { ptr, ptr } { ptr @.str14319, ptr @.str14320 }, { ptr, ptr } { ptr @.str14321, ptr @.str14322 }, { ptr, ptr } { ptr @.str14323, ptr @.str14324 }, { ptr, ptr } { ptr @.str14325, ptr @.str14326 }, { ptr, ptr } { ptr @.str14327, ptr @.str14328 }, { ptr, ptr } { ptr @.str14329, ptr @.str14330 }, { ptr, ptr } { ptr @.str14331, ptr @.str14332 }, { ptr, ptr } { ptr @.str14333, ptr @.str14334 }, { ptr, ptr } { ptr @.str14335, ptr @.str14336 }, { ptr, ptr } { ptr @.str14337, ptr @.str14338 }, { ptr, ptr } { ptr @.str14339, ptr @.str14340 }, { ptr, ptr } { ptr @.str14341, ptr @.str14342 }, { ptr, ptr } { ptr @.str14343, ptr @.str14344 }, { ptr, ptr } { ptr @.str14345, ptr @.str14346 }, { ptr, ptr } { ptr @.str14347, ptr @.str14348 }, { ptr, ptr } { ptr @.str14349, ptr @.str14350 }, { ptr, ptr } { ptr @.str14351, ptr @.str14352 }, { ptr, ptr } { ptr @.str14353, ptr @.str14354 }, { ptr, ptr } { ptr @.str14355, ptr @.str14356 }, { ptr, ptr } { ptr @.str14357, ptr @.str14358 }, { ptr, ptr } { ptr @.str14359, ptr @.str14360 }] define ptr @lp_mime_of(ptr %path) { entry: %ext = call ptr @lp_path_ext(ptr %path) @@ -15818,7 +15962,7 @@ nx: store i32 %i1, ptr %ip br label %lp def: - %d = call ptr @lp_fs_strdup(ptr @.str14217) + %d = call ptr @lp_fs_strdup(ptr @.str14361) ret ptr %d } define ptr @lp_mime_lc(ptr %s) { @@ -131270,27 +131414,33 @@ entry: %t161 = alloca ptr %t163 = alloca ptr %t170 = alloca ptr - %t181 = alloca ptr - %t185 = alloca ptr - %t195 = alloca ptr - %t199 = alloca ptr - %t204 = alloca ptr - %t211 = alloca ptr - %t215 = alloca ptr - %t222 = alloca ptr - %t231 = alloca ptr - %t265 = alloca ptr - %t283 = alloca ptr - %t295 = alloca ptr - %t305 = alloca ptr - %t312 = alloca ptr - %t316 = alloca ptr - %t321 = alloca ptr - %t331 = alloca ptr - %t335 = alloca ptr + %t176 = alloca ptr + %t183 = alloca ptr + %t187 = alloca ptr + %t191 = alloca ptr + %t198 = alloca ptr + %t202 = alloca ptr + %t207 = alloca ptr + %t214 = alloca ptr + %t218 = alloca ptr + %t225 = alloca ptr + %t234 = alloca ptr + %t268 = alloca ptr + %t275 = alloca ptr + %t287 = alloca ptr + %t292 = alloca ptr + %t301 = alloca ptr + %t311 = alloca ptr + %t313 = alloca ptr + %t320 = alloca ptr + %t324 = alloca ptr + %t329 = alloca ptr + %t333 = alloca ptr %t340 = alloca ptr - %t347 = alloca ptr - %t354 = alloca ptr + %t344 = alloca ptr + %t349 = alloca ptr + %t356 = alloca ptr + %t363 = alloca ptr store ptr %arg_prop, ptr %t0 store ptr %arg_meth, ptr %t1 store ptr %arg_e, ptr %t2 @@ -131535,227 +131685,236 @@ ifend17: %t174 = load ptr, ptr %t151 call void @fn_emit(ptr %t174) call void @fn_emit(ptr @.str9858) - %t175 = load ptr, ptr %t4 - %t176 = call ptr @lp_str_concat(ptr @.str9859, ptr %t175) - %t177 = call ptr @lp_str_concat(ptr %t176, ptr @.str9860) - %t178 = load ptr, ptr %t161 - %t179 = call ptr @lp_str_concat(ptr %t177, ptr %t178) - %t180 = call ptr @fn_emit_bind(ptr %t179) - store ptr %t180, ptr %t181 - %t182 = load ptr, ptr %t181 - %t183 = call ptr @lp_str_concat(ptr @.str9861, ptr %t182) - %t184 = call ptr @fn_emit_bind(ptr %t183) - store ptr %t184, ptr %t185 - %t186 = load ptr, ptr %t4 - %t187 = call ptr @lp_str_concat(ptr @.str9862, ptr %t186) - %t188 = call ptr @lp_str_concat(ptr %t187, ptr @.str9863) - %t189 = load ptr, ptr %t0 - %t190 = call ptr @lp_str_concat(ptr %t188, ptr %t189) - %t191 = call ptr @lp_str_concat(ptr %t190, ptr @.str9864) - %t192 = load ptr, ptr %t161 - %t193 = call ptr @lp_str_concat(ptr %t191, ptr %t192) - %t194 = call ptr @fn_emit_bind(ptr %t193) - store ptr %t194, ptr %t195 - %t196 = load ptr, ptr %t195 - %t197 = call ptr @lp_str_concat(ptr @.str9865, ptr %t196) - %t198 = call ptr @fn_emit_bind(ptr %t197) - store ptr %t198, ptr %t199 - %t200 = load ptr, ptr %t199 - %t201 = call ptr @lp_str_concat(ptr @.str9866, ptr %t200) - %t202 = call ptr @lp_str_concat(ptr %t201, ptr @.str9867) - %t203 = call ptr @fn_emit_bind(ptr %t202) - store ptr %t203, ptr %t204 - %t205 = load ptr, ptr %t185 - %t206 = call ptr @lp_str_concat(ptr @.str9868, ptr %t205) - %t207 = call ptr @lp_str_concat(ptr %t206, ptr @.str9869) - %t208 = load ptr, ptr %t204 - %t209 = call ptr @lp_str_concat(ptr %t207, ptr %t208) - %t210 = call ptr @fn_emit_bind(ptr %t209) - store ptr %t210, ptr %t211 - %t212 = load ptr, ptr %t146 - %t213 = call ptr @lp_str_concat(ptr @.str9870, ptr %t212) - %t214 = call ptr @fn_emit_bind(ptr %t213) - store ptr %t214, ptr %t215 - %t216 = load ptr, ptr %t215 - %t217 = call ptr @lp_str_concat(ptr @.str9871, ptr %t216) - %t218 = call ptr @lp_str_concat(ptr %t217, ptr @.str9872) - %t219 = load ptr, ptr %t211 - %t220 = call ptr @lp_str_concat(ptr %t218, ptr %t219) - %t221 = call ptr @fn_emit_bind(ptr %t220) - store ptr %t221, ptr %t222 - %t223 = load ptr, ptr %t222 - %t224 = load ptr, ptr %t146 - call void @fn_store_at(ptr @.str9873, ptr %t223, ptr %t224) - call void @fn_emit(ptr @.str9874) - %t225 = load ptr, ptr %t153 - call void @fn_emit(ptr %t225) + %t175 = call ptr @fn_ecs_base(ptr @.str9859) + store ptr %t175, ptr %t176 + %t177 = load ptr, ptr %t176 + %t178 = call ptr @lp_str_concat(ptr @.str9860, ptr %t177) + %t179 = call ptr @lp_str_concat(ptr %t178, ptr @.str9861) + %t180 = load ptr, ptr %t161 + %t181 = call ptr @lp_str_concat(ptr %t179, ptr %t180) + %t182 = call ptr @fn_emit_bind(ptr %t181) + store ptr %t182, ptr %t183 + %t184 = load ptr, ptr %t183 + %t185 = call ptr @lp_str_concat(ptr @.str9862, ptr %t184) + %t186 = call ptr @fn_emit_bind(ptr %t185) + store ptr %t186, ptr %t187 + %t188 = load ptr, ptr %t0 + %t189 = call ptr @lp_str_concat(ptr @.str9863, ptr %t188) + %t190 = call ptr @fn_ecs_base(ptr %t189) + store ptr %t190, ptr %t191 + %t192 = load ptr, ptr %t191 + %t193 = call ptr @lp_str_concat(ptr @.str9864, ptr %t192) + %t194 = call ptr @lp_str_concat(ptr %t193, ptr @.str9865) + %t195 = load ptr, ptr %t161 + %t196 = call ptr @lp_str_concat(ptr %t194, ptr %t195) + %t197 = call ptr @fn_emit_bind(ptr %t196) + store ptr %t197, ptr %t198 + %t199 = load ptr, ptr %t198 + %t200 = call ptr @lp_str_concat(ptr @.str9866, ptr %t199) + %t201 = call ptr @fn_emit_bind(ptr %t200) + store ptr %t201, ptr %t202 + %t203 = load ptr, ptr %t202 + %t204 = call ptr @lp_str_concat(ptr @.str9867, ptr %t203) + %t205 = call ptr @lp_str_concat(ptr %t204, ptr @.str9868) + %t206 = call ptr @fn_emit_bind(ptr %t205) + store ptr %t206, ptr %t207 + %t208 = load ptr, ptr %t187 + %t209 = call ptr @lp_str_concat(ptr @.str9869, ptr %t208) + %t210 = call ptr @lp_str_concat(ptr %t209, ptr @.str9870) + %t211 = load ptr, ptr %t207 + %t212 = call ptr @lp_str_concat(ptr %t210, ptr %t211) + %t213 = call ptr @fn_emit_bind(ptr %t212) + store ptr %t213, ptr %t214 + %t215 = load ptr, ptr %t146 + %t216 = call ptr @lp_str_concat(ptr @.str9871, ptr %t215) + %t217 = call ptr @fn_emit_bind(ptr %t216) + store ptr %t217, ptr %t218 + %t219 = load ptr, ptr %t218 + %t220 = call ptr @lp_str_concat(ptr @.str9872, ptr %t219) + %t221 = call ptr @lp_str_concat(ptr %t220, ptr @.str9873) + %t222 = load ptr, ptr %t214 + %t223 = call ptr @lp_str_concat(ptr %t221, ptr %t222) + %t224 = call ptr @fn_emit_bind(ptr %t223) + store ptr %t224, ptr %t225 + %t226 = load ptr, ptr %t225 + %t227 = load ptr, ptr %t146 + call void @fn_store_at(ptr @.str9874, ptr %t226, ptr %t227) call void @fn_emit(ptr @.str9875) - %t226 = load ptr, ptr %t153 - call void @fn_emit(ptr %t226) + %t228 = load ptr, ptr %t153 + call void @fn_emit(ptr %t228) call void @fn_emit(ptr @.str9876) - %t227 = load ptr, ptr %t161 - %t228 = call ptr @lp_str_concat(ptr @.str9877, ptr %t227) - %t229 = call ptr @lp_str_concat(ptr %t228, ptr @.str9878) - %t230 = call ptr @fn_emit_bind(ptr %t229) - store ptr %t230, ptr %t231 - %t232 = load ptr, ptr %t231 - %t233 = load ptr, ptr %t143 - call void @fn_store_at(ptr @.str9879, ptr %t232, ptr %t233) - call void @fn_emit(ptr @.str9880) - %t234 = load ptr, ptr %t149 - call void @fn_emit(ptr %t234) + %t229 = load ptr, ptr %t153 + call void @fn_emit(ptr %t229) + call void @fn_emit(ptr @.str9877) + %t230 = load ptr, ptr %t161 + %t231 = call ptr @lp_str_concat(ptr @.str9878, ptr %t230) + %t232 = call ptr @lp_str_concat(ptr %t231, ptr @.str9879) + %t233 = call ptr @fn_emit_bind(ptr %t232) + store ptr %t233, ptr %t234 + %t235 = load ptr, ptr %t234 + %t236 = load ptr, ptr %t143 + call void @fn_store_at(ptr @.str9880, ptr %t235, ptr %t236) call void @fn_emit(ptr @.str9881) - %t235 = load ptr, ptr %t155 - call void @fn_emit(ptr %t235) + %t237 = load ptr, ptr %t149 + call void @fn_emit(ptr %t237) call void @fn_emit(ptr @.str9882) - %t236 = load ptr, ptr %t146 - %t237 = call ptr @lp_str_concat(ptr @.str9883, ptr %t236) - %t238 = call ptr @fn_emit_bind(ptr %t237) - %t239 = call ptr @fn_val(ptr %t238, ptr @.str9884) - store ptr %t239, ptr %retval + %t238 = load ptr, ptr %t155 + call void @fn_emit(ptr %t238) + call void @fn_emit(ptr @.str9883) + %t239 = load ptr, ptr %t146 + %t240 = call ptr @lp_str_concat(ptr @.str9884, ptr %t239) + %t241 = call ptr @fn_emit_bind(ptr %t240) + %t242 = call ptr @fn_val(ptr %t241, ptr @.str9885) + store ptr %t242, ptr %retval br label %ret ifend14: - %t240 = load ptr, ptr %t2 - %t241 = getelementptr inbounds %Cmp_Node, ptr %t240, i32 0, i32 7 - %t242 = load ptr, ptr %t241 - %t243 = getelementptr inbounds %LSlice, ptr %t242, i32 0, i32 1 - %t244 = load i32, ptr %t243 - %t245 = icmp ne i32 %t244, 1 - %t246 = zext i1 %t245 to i32 - %t247 = icmp ne i32 %t246, 0 - br i1 %t247, label %then18, label %ifend20 + %t243 = load ptr, ptr %t2 + %t244 = getelementptr inbounds %Cmp_Node, ptr %t243, i32 0, i32 7 + %t245 = load ptr, ptr %t244 + %t246 = getelementptr inbounds %LSlice, ptr %t245, i32 0, i32 1 + %t247 = load i32, ptr %t246 + %t248 = icmp ne i32 %t247, 1 + %t249 = zext i1 %t248 to i32 + %t250 = icmp ne i32 %t249, 0 + br i1 %t250, label %then18, label %ifend20 then18: - %t248 = load ptr, ptr %t0 - %t249 = call ptr @lp_str_concat(ptr %t248, ptr @.str9885) - %t250 = load ptr, ptr %t1 - %t251 = call ptr @lp_str_concat(ptr %t249, ptr %t250) + %t251 = load ptr, ptr %t0 %t252 = call ptr @lp_str_concat(ptr %t251, ptr @.str9886) - call void @fn_perr(ptr %t252) + %t253 = load ptr, ptr %t1 + %t254 = call ptr @lp_str_concat(ptr %t252, ptr %t253) + %t255 = call ptr @lp_str_concat(ptr %t254, ptr @.str9887) + call void @fn_perr(ptr %t255) br label %ifend20 ifend20: - %t253 = load ptr, ptr %t2 - %t254 = getelementptr inbounds %Cmp_Node, ptr %t253, i32 0, i32 7 - %t255 = load ptr, ptr %t254 - %t256 = getelementptr inbounds %LSlice, ptr %t255, i32 0, i32 0 - %t257 = load ptr, ptr %t256 - %t258 = getelementptr inbounds %LSlice, ptr %t255, i32 0, i32 1 - %t259 = load i32, ptr %t258 - %t260 = icmp ult i32 0, %t259 - br i1 %t260, label %ixok21, label %ixbad22 + %t256 = load ptr, ptr %t2 + %t257 = getelementptr inbounds %Cmp_Node, ptr %t256, i32 0, i32 7 + %t258 = load ptr, ptr %t257 + %t259 = getelementptr inbounds %LSlice, ptr %t258, i32 0, i32 0 + %t260 = load ptr, ptr %t259 + %t261 = getelementptr inbounds %LSlice, ptr %t258, i32 0, i32 1 + %t262 = load i32, ptr %t261 + %t263 = icmp ult i32 0, %t262 + br i1 %t263, label %ixok21, label %ixbad22 ixbad22: - %t261 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t261, ptr @.fmt_bounds, ptr @.str9887, i32 0, i32 %t259) + %t264 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t264, ptr @.fmt_bounds, ptr @.str9888, i32 0, i32 %t262) call void @exit(i32 1) unreachable ixok21: - %t262 = getelementptr inbounds ptr, ptr %t257, i32 0 - %t263 = load ptr, ptr %t262 - %t264 = call ptr @fn_emit_expr(ptr %t263) - store ptr %t264, ptr %t265 - %t266 = load ptr, ptr %t1 - %t267 = call i32 @lp_str_eq(ptr %t266, ptr @.str9888) - %t268 = icmp ne i32 %t267, 0 - br i1 %t268, label %then23, label %ifend25 + %t265 = getelementptr inbounds ptr, ptr %t260, i32 0 + %t266 = load ptr, ptr %t265 + %t267 = call ptr @fn_emit_expr(ptr %t266) + store ptr %t267, ptr %t268 + %t269 = load ptr, ptr %t1 + %t270 = call i32 @lp_str_eq(ptr %t269, ptr @.str9889) + %t271 = icmp ne i32 %t270, 0 + br i1 %t271, label %then23, label %ifend25 then23: - %t269 = load ptr, ptr %t4 - %t270 = call ptr @lp_str_concat(ptr @.str9889, ptr %t269) - %t271 = call ptr @lp_str_concat(ptr %t270, ptr @.str9890) %t272 = load ptr, ptr %t0 - %t273 = call ptr @lp_str_concat(ptr %t271, ptr %t272) - %t274 = call ptr @lp_str_concat(ptr %t273, ptr @.str9891) - %t275 = load ptr, ptr %t0 - %t276 = call ptr @lp_str_concat(ptr %t274, ptr %t275) - %t277 = call ptr @lp_str_concat(ptr %t276, ptr @.str9892) - %t278 = load ptr, ptr %t265 - %t279 = getelementptr inbounds %Cmp_Val, ptr %t278, i32 0, i32 0 - %t280 = load ptr, ptr %t279 - %t281 = call ptr @lp_str_concat(ptr %t277, ptr %t280) - %t282 = call ptr @fn_emit_bind(ptr %t281) - store ptr %t282, ptr %t283 + %t273 = call ptr @lp_str_concat(ptr @.str9890, ptr %t272) + %t274 = call ptr @fn_ecs_base(ptr %t273) + store ptr %t274, ptr %t275 + %t276 = load ptr, ptr %t0 + %t277 = call ptr @lp_str_concat(ptr @.str9891, ptr %t276) + %t278 = call ptr @lp_str_concat(ptr %t277, ptr @.str9892) + %t279 = load ptr, ptr %t275 + %t280 = call ptr @lp_str_concat(ptr %t278, ptr %t279) + %t281 = call ptr @lp_str_concat(ptr %t280, ptr @.str9893) + %t282 = load ptr, ptr %t268 + %t283 = getelementptr inbounds %Cmp_Val, ptr %t282, i32 0, i32 0 %t284 = load ptr, ptr %t283 - %t285 = load ptr, ptr %t0 - %t286 = call ptr @fn_val(ptr %t284, ptr %t285) - store ptr %t286, ptr %retval + %t285 = call ptr @lp_str_concat(ptr %t281, ptr %t284) + %t286 = call ptr @fn_emit_bind(ptr %t285) + store ptr %t286, ptr %t287 + %t288 = load ptr, ptr %t287 + %t289 = load ptr, ptr %t0 + %t290 = call ptr @fn_val(ptr %t288, ptr %t289) + store ptr %t290, ptr %retval br label %ret ifend25: - %t287 = load ptr, ptr %t265 - %t288 = getelementptr inbounds %Cmp_Val, ptr %t287, i32 0, i32 0 - %t289 = load ptr, ptr %t288 - %t290 = call ptr @lp_str_concat(ptr @.str9893, ptr %t289) - %t291 = call ptr @lp_str_concat(ptr %t290, ptr @.str9894) - %t292 = load ptr, ptr %t4 - %t293 = call ptr @lp_str_concat(ptr %t291, ptr %t292) - %t294 = call ptr @fn_emit_bind(ptr %t293) - store ptr %t294, ptr %t295 - %t296 = load ptr, ptr %t295 - %t297 = call ptr @lp_str_concat(ptr @.str9895, ptr %t296) - %t298 = call ptr @lp_str_concat(ptr %t297, ptr @.str9896) - %t299 = load ptr, ptr %t265 - %t300 = getelementptr inbounds %Cmp_Val, ptr %t299, i32 0, i32 0 - %t301 = load ptr, ptr %t300 - %t302 = call ptr @lp_str_concat(ptr %t298, ptr %t301) - %t303 = call ptr @lp_str_concat(ptr %t302, ptr @.str9897) - %t304 = call ptr @fn_emit_bind(ptr %t303) - store ptr %t304, ptr %t305 - %t306 = load ptr, ptr %t4 - %t307 = call ptr @lp_str_concat(ptr @.str9898, ptr %t306) - %t308 = call ptr @lp_str_concat(ptr %t307, ptr @.str9899) - %t309 = load ptr, ptr %t305 - %t310 = call ptr @lp_str_concat(ptr %t308, ptr %t309) - %t311 = call ptr @fn_emit_bind(ptr %t310) - store ptr %t311, ptr %t312 - %t313 = load ptr, ptr %t312 - %t314 = call ptr @lp_str_concat(ptr @.str9900, ptr %t313) - %t315 = call ptr @fn_emit_bind(ptr %t314) - store ptr %t315, ptr %t316 - %t317 = load ptr, ptr %t316 - %t318 = call ptr @lp_str_concat(ptr @.str9901, ptr %t317) - %t319 = call ptr @lp_str_concat(ptr %t318, ptr @.str9902) - %t320 = call ptr @fn_emit_bind(ptr %t319) - store ptr %t320, ptr %t321 - %t322 = load ptr, ptr %t4 - %t323 = call ptr @lp_str_concat(ptr @.str9903, ptr %t322) - %t324 = call ptr @lp_str_concat(ptr %t323, ptr @.str9904) - %t325 = load ptr, ptr %t0 - %t326 = call ptr @lp_str_concat(ptr %t324, ptr %t325) + %t291 = call ptr @fn_emit_bind(ptr @.str9894) + store ptr %t291, ptr %t292 + %t293 = load ptr, ptr %t268 + %t294 = getelementptr inbounds %Cmp_Val, ptr %t293, i32 0, i32 0 + %t295 = load ptr, ptr %t294 + %t296 = call ptr @lp_str_concat(ptr @.str9895, ptr %t295) + %t297 = call ptr @lp_str_concat(ptr %t296, ptr @.str9896) + %t298 = load ptr, ptr %t292 + %t299 = call ptr @lp_str_concat(ptr %t297, ptr %t298) + %t300 = call ptr @fn_emit_bind(ptr %t299) + store ptr %t300, ptr %t301 + %t302 = load ptr, ptr %t301 + %t303 = call ptr @lp_str_concat(ptr @.str9897, ptr %t302) + %t304 = call ptr @lp_str_concat(ptr %t303, ptr @.str9898) + %t305 = load ptr, ptr %t268 + %t306 = getelementptr inbounds %Cmp_Val, ptr %t305, i32 0, i32 0 + %t307 = load ptr, ptr %t306 + %t308 = call ptr @lp_str_concat(ptr %t304, ptr %t307) + %t309 = call ptr @lp_str_concat(ptr %t308, ptr @.str9899) + %t310 = call ptr @fn_emit_bind(ptr %t309) + store ptr %t310, ptr %t311 + %t312 = call ptr @fn_ecs_base(ptr @.str9900) + store ptr %t312, ptr %t313 + %t314 = load ptr, ptr %t313 + %t315 = call ptr @lp_str_concat(ptr @.str9901, ptr %t314) + %t316 = call ptr @lp_str_concat(ptr %t315, ptr @.str9902) + %t317 = load ptr, ptr %t311 + %t318 = call ptr @lp_str_concat(ptr %t316, ptr %t317) + %t319 = call ptr @fn_emit_bind(ptr %t318) + store ptr %t319, ptr %t320 + %t321 = load ptr, ptr %t320 + %t322 = call ptr @lp_str_concat(ptr @.str9903, ptr %t321) + %t323 = call ptr @fn_emit_bind(ptr %t322) + store ptr %t323, ptr %t324 + %t325 = load ptr, ptr %t324 + %t326 = call ptr @lp_str_concat(ptr @.str9904, ptr %t325) %t327 = call ptr @lp_str_concat(ptr %t326, ptr @.str9905) - %t328 = load ptr, ptr %t305 - %t329 = call ptr @lp_str_concat(ptr %t327, ptr %t328) - %t330 = call ptr @fn_emit_bind(ptr %t329) - store ptr %t330, ptr %t331 - %t332 = load ptr, ptr %t331 - %t333 = call ptr @lp_str_concat(ptr @.str9906, ptr %t332) - %t334 = call ptr @fn_emit_bind(ptr %t333) - store ptr %t334, ptr %t335 - %t336 = load ptr, ptr %t335 - %t337 = call ptr @lp_str_concat(ptr @.str9907, ptr %t336) - %t338 = call ptr @lp_str_concat(ptr %t337, ptr @.str9908) + %t328 = call ptr @fn_emit_bind(ptr %t327) + store ptr %t328, ptr %t329 + %t330 = load ptr, ptr %t0 + %t331 = call ptr @lp_str_concat(ptr @.str9906, ptr %t330) + %t332 = call ptr @fn_ecs_base(ptr %t331) + store ptr %t332, ptr %t333 + %t334 = load ptr, ptr %t333 + %t335 = call ptr @lp_str_concat(ptr @.str9907, ptr %t334) + %t336 = call ptr @lp_str_concat(ptr %t335, ptr @.str9908) + %t337 = load ptr, ptr %t311 + %t338 = call ptr @lp_str_concat(ptr %t336, ptr %t337) %t339 = call ptr @fn_emit_bind(ptr %t338) store ptr %t339, ptr %t340 - %t341 = load ptr, ptr %t295 + %t341 = load ptr, ptr %t340 %t342 = call ptr @lp_str_concat(ptr @.str9909, ptr %t341) - %t343 = call ptr @lp_str_concat(ptr %t342, ptr @.str9910) - %t344 = load ptr, ptr %t321 - %t345 = call ptr @lp_str_concat(ptr %t343, ptr %t344) - %t346 = call ptr @fn_emit_bind(ptr %t345) - store ptr %t346, ptr %t347 - %t348 = load ptr, ptr %t347 - %t349 = call ptr @lp_str_concat(ptr @.str9911, ptr %t348) - %t350 = call ptr @lp_str_concat(ptr %t349, ptr @.str9912) - %t351 = load ptr, ptr %t340 - %t352 = call ptr @lp_str_concat(ptr %t350, ptr %t351) - %t353 = call ptr @fn_emit_bind(ptr %t352) - store ptr %t353, ptr %t354 - %t355 = load ptr, ptr %t354 - %t356 = call ptr @lp_str_concat(ptr @.str9913, ptr %t355) - %t357 = call ptr @lp_str_concat(ptr %t356, ptr @.str9914) - %t358 = call ptr @fn_emit_bind(ptr %t357) - %t359 = call ptr @fn_val(ptr %t358, ptr @.str9915) - store ptr %t359, ptr %retval + %t343 = call ptr @fn_emit_bind(ptr %t342) + store ptr %t343, ptr %t344 + %t345 = load ptr, ptr %t344 + %t346 = call ptr @lp_str_concat(ptr @.str9910, ptr %t345) + %t347 = call ptr @lp_str_concat(ptr %t346, ptr @.str9911) + %t348 = call ptr @fn_emit_bind(ptr %t347) + store ptr %t348, ptr %t349 + %t350 = load ptr, ptr %t301 + %t351 = call ptr @lp_str_concat(ptr @.str9912, ptr %t350) + %t352 = call ptr @lp_str_concat(ptr %t351, ptr @.str9913) + %t353 = load ptr, ptr %t329 + %t354 = call ptr @lp_str_concat(ptr %t352, ptr %t353) + %t355 = call ptr @fn_emit_bind(ptr %t354) + store ptr %t355, ptr %t356 + %t357 = load ptr, ptr %t356 + %t358 = call ptr @lp_str_concat(ptr @.str9914, ptr %t357) + %t359 = call ptr @lp_str_concat(ptr %t358, ptr @.str9915) + %t360 = load ptr, ptr %t349 + %t361 = call ptr @lp_str_concat(ptr %t359, ptr %t360) + %t362 = call ptr @fn_emit_bind(ptr %t361) + store ptr %t362, ptr %t363 + %t364 = load ptr, ptr %t363 + %t365 = call ptr @lp_str_concat(ptr @.str9916, ptr %t364) + %t366 = call ptr @lp_str_concat(ptr %t365, ptr @.str9917) + %t367 = call ptr @fn_emit_bind(ptr %t366) + %t368 = call ptr @fn_val(ptr %t367, ptr @.str9918) + store ptr %t368, ptr %retval br label %ret ret: - %t360 = load ptr, ptr %retval - ret ptr %t360 + %t369 = load ptr, ptr %retval + ret ptr %t369 } define i32 @fn_first_arg_is_text(ptr %arg_e) { @@ -131789,7 +131948,7 @@ ifend2: br i1 %t16, label %ixok3, label %ixbad4 ixbad4: %t17 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str9916, i32 0, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str9919, i32 0, i32 %t15) call void @exit(i32 1) unreachable ixok3: @@ -131807,7 +131966,7 @@ then5: %t27 = load ptr, ptr %t20 %t28 = getelementptr inbounds %Cmp_Node, ptr %t27, i32 0, i32 1 %t29 = load ptr, ptr %t28 - %t30 = call i32 @lp_str_eq(ptr %t29, ptr @.str9917) + %t30 = call i32 @lp_str_eq(ptr %t29, ptr @.str9920) %t31 = icmp ne i32 %t30, 0 br i1 %t31, label %then8, label %ifend10 then8: @@ -131844,7 +132003,7 @@ then14: br label %ret ifend16: %t48 = load ptr, ptr %t43 - %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str9918) + %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str9921) store i32 %t49, ptr %retval br label %ret ret: @@ -131873,8 +132032,8 @@ entry: br i1 %t10, label %then0, label %ifend2 then0: %t11 = load ptr, ptr %t0 - %t12 = call ptr @lp_str_concat(ptr @.str9919, ptr %t11) - %t13 = call ptr @lp_str_concat(ptr %t12, ptr @.str9920) + %t12 = call ptr @lp_str_concat(ptr @.str9922, ptr %t11) + %t13 = call ptr @lp_str_concat(ptr %t12, ptr @.str9923) %t14 = load ptr, ptr %t1 %t15 = call ptr @lp_str_concat(ptr %t13, ptr %t14) call void @fn_perr(ptr %t15) @@ -131916,26 +132075,27 @@ entry: %t587 = alloca ptr %t594 = alloca ptr %t596 = alloca ptr - %t603 = alloca ptr - %t612 = alloca ptr - %t621 = alloca ptr - %t626 = alloca ptr - %t631 = alloca ptr - %t651 = alloca ptr - %t693 = alloca ptr - %t1147 = alloca i32 - %t1163 = alloca ptr - %t1176 = alloca ptr - %t1177 = alloca i32 - %t1225 = alloca i32 - %t1241 = alloca ptr - %t1254 = alloca ptr - %t1255 = alloca i32 - %t1303 = alloca i32 - %t1320 = alloca i32 - %t1348 = alloca ptr - %t1351 = alloca i32 - %t1404 = alloca ptr + %t598 = alloca ptr + %t605 = alloca ptr + %t614 = alloca ptr + %t623 = alloca ptr + %t628 = alloca ptr + %t633 = alloca ptr + %t653 = alloca ptr + %t695 = alloca ptr + %t1149 = alloca i32 + %t1165 = alloca ptr + %t1178 = alloca ptr + %t1179 = alloca i32 + %t1227 = alloca i32 + %t1243 = alloca ptr + %t1256 = alloca ptr + %t1257 = alloca i32 + %t1305 = alloca i32 + %t1322 = alloca i32 + %t1350 = alloca ptr + %t1353 = alloca i32 + %t1406 = alloca ptr store ptr %arg_ns, ptr %t0 store ptr %arg_meth, ptr %t1 store ptr %arg_e, ptr %t2 @@ -131949,14 +132109,14 @@ entry: br i1 %t8, label %sc0, label %scend1 sc0: %t13 = load ptr, ptr %t1 - %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str9921) + %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str9924) %t15 = icmp ne i32 %t14, 0 %t16 = zext i1 %t15 to i32 store i32 %t16, ptr %t12 br i1 %t15, label %scend3, label %sc2 sc2: %t17 = load ptr, ptr %t1 - %t18 = call i32 @lp_str_eq(ptr %t17, ptr @.str9922) + %t18 = call i32 @lp_str_eq(ptr %t17, ptr @.str9925) %t19 = icmp ne i32 %t18, 0 %t20 = zext i1 %t19 to i32 store i32 %t20, ptr %t12 @@ -131969,7 +132129,7 @@ scend3: br i1 %t22, label %scend5, label %sc4 sc4: %t24 = load ptr, ptr %t1 - %t25 = call i32 @lp_str_eq(ptr %t24, ptr @.str9923) + %t25 = call i32 @lp_str_eq(ptr %t24, ptr @.str9926) %t26 = icmp ne i32 %t25, 0 %t27 = zext i1 %t26 to i32 store i32 %t27, ptr %t11 @@ -131982,7 +132142,7 @@ scend5: br i1 %t29, label %scend7, label %sc6 sc6: %t31 = load ptr, ptr %t1 - %t32 = call i32 @lp_str_eq(ptr %t31, ptr @.str9924) + %t32 = call i32 @lp_str_eq(ptr %t31, ptr @.str9927) %t33 = icmp ne i32 %t32, 0 %t34 = zext i1 %t33 to i32 store i32 %t34, ptr %t10 @@ -132000,7 +132160,7 @@ scend1: then8: %t40 = load ptr, ptr %t0 %t41 = call ptr @fn_ns_lower(ptr %t40) - %t42 = call ptr @lp_str_concat(ptr %t41, ptr @.str9925) + %t42 = call ptr @lp_str_concat(ptr %t41, ptr @.str9928) %t43 = load ptr, ptr %t1 %t44 = call ptr @lp_str_concat(ptr %t42, ptr %t43) %t45 = call ptr @fn_find_fn(ptr %t44) @@ -132019,7 +132179,7 @@ ifend13: br label %ifend10 ifend10: %t53 = load ptr, ptr %t0 - %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str9926) + %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str9929) %t55 = icmp ne i32 %t54, 0 br i1 %t55, label %then14, label %ifend16 then14: @@ -132036,12 +132196,12 @@ then17: ifend19: %t62 = load ptr, ptr %t1 %t63 = load ptr, ptr %t2 - %t64 = call ptr @fn_emit_alias_or_fail(ptr @.str9927, ptr %t62, ptr %t63) + %t64 = call ptr @fn_emit_alias_or_fail(ptr @.str9930, ptr %t62, ptr %t63) store ptr %t64, ptr %retval br label %ret ifend16: %t65 = load ptr, ptr %t0 - %t66 = call i32 @lp_str_eq(ptr %t65, ptr @.str9928) + %t66 = call i32 @lp_str_eq(ptr %t65, ptr @.str9931) %t67 = icmp ne i32 %t66, 0 br i1 %t67, label %then20, label %ifend22 then20: @@ -132058,12 +132218,12 @@ then23: ifend25: %t74 = load ptr, ptr %t1 %t75 = load ptr, ptr %t2 - %t76 = call ptr @fn_emit_alias_or_fail(ptr @.str9929, ptr %t74, ptr %t75) + %t76 = call ptr @fn_emit_alias_or_fail(ptr @.str9932, ptr %t74, ptr %t75) store ptr %t76, ptr %retval br label %ret ifend22: %t77 = load ptr, ptr %t0 - %t78 = call i32 @lp_str_eq(ptr %t77, ptr @.str9930) + %t78 = call i32 @lp_str_eq(ptr %t77, ptr @.str9933) %t79 = icmp ne i32 %t78, 0 br i1 %t79, label %then26, label %ifend28 then26: @@ -132080,12 +132240,12 @@ then29: ifend31: %t86 = load ptr, ptr %t1 %t87 = load ptr, ptr %t2 - %t88 = call ptr @fn_emit_alias_or_fail(ptr @.str9931, ptr %t86, ptr %t87) + %t88 = call ptr @fn_emit_alias_or_fail(ptr @.str9934, ptr %t86, ptr %t87) store ptr %t88, ptr %retval br label %ret ifend28: %t89 = load ptr, ptr %t0 - %t90 = call i32 @lp_str_eq(ptr %t89, ptr @.str9932) + %t90 = call i32 @lp_str_eq(ptr %t89, ptr @.str9935) %t91 = icmp ne i32 %t90, 0 br i1 %t91, label %then32, label %ifend34 then32: @@ -132102,12 +132262,12 @@ then35: ifend37: %t98 = load ptr, ptr %t1 %t99 = load ptr, ptr %t2 - %t100 = call ptr @fn_emit_alias_or_fail(ptr @.str9933, ptr %t98, ptr %t99) + %t100 = call ptr @fn_emit_alias_or_fail(ptr @.str9936, ptr %t98, ptr %t99) store ptr %t100, ptr %retval br label %ret ifend34: %t101 = load ptr, ptr %t0 - %t102 = call i32 @lp_str_eq(ptr %t101, ptr @.str9934) + %t102 = call i32 @lp_str_eq(ptr %t101, ptr @.str9937) %t103 = icmp ne i32 %t102, 0 br i1 %t103, label %then38, label %ifend40 then38: @@ -132125,7 +132285,7 @@ ifend43: br label %ifend40 ifend40: %t110 = load ptr, ptr %t0 - %t111 = call i32 @lp_str_eq(ptr %t110, ptr @.str9935) + %t111 = call i32 @lp_str_eq(ptr %t110, ptr @.str9938) %t112 = icmp ne i32 %t111, 0 br i1 %t112, label %then44, label %ifend46 then44: @@ -132143,7 +132303,7 @@ ifend49: br label %ifend46 ifend46: %t119 = load ptr, ptr %t0 - %t120 = call i32 @lp_str_eq(ptr %t119, ptr @.str9936) + %t120 = call i32 @lp_str_eq(ptr %t119, ptr @.str9939) %t121 = icmp ne i32 %t120, 0 br i1 %t121, label %then50, label %ifend52 then50: @@ -132160,12 +132320,12 @@ then53: ifend55: %t128 = load ptr, ptr %t1 %t129 = load ptr, ptr %t2 - %t130 = call ptr @fn_emit_alias_or_fail(ptr @.str9937, ptr %t128, ptr %t129) + %t130 = call ptr @fn_emit_alias_or_fail(ptr @.str9940, ptr %t128, ptr %t129) store ptr %t130, ptr %retval br label %ret ifend52: %t131 = load ptr, ptr %t0 - %t132 = call i32 @lp_str_eq(ptr %t131, ptr @.str9938) + %t132 = call i32 @lp_str_eq(ptr %t131, ptr @.str9941) %t133 = icmp ne i32 %t132, 0 br i1 %t133, label %then56, label %ifend58 then56: @@ -132182,12 +132342,12 @@ then59: ifend61: %t140 = load ptr, ptr %t1 %t141 = load ptr, ptr %t2 - %t142 = call ptr @fn_emit_alias_or_fail(ptr @.str9939, ptr %t140, ptr %t141) + %t142 = call ptr @fn_emit_alias_or_fail(ptr @.str9942, ptr %t140, ptr %t141) store ptr %t142, ptr %retval br label %ret ifend58: %t143 = load ptr, ptr %t0 - %t144 = call i32 @lp_str_eq(ptr %t143, ptr @.str9940) + %t144 = call i32 @lp_str_eq(ptr %t143, ptr @.str9943) %t145 = icmp ne i32 %t144, 0 br i1 %t145, label %then62, label %ifend64 then62: @@ -132204,12 +132364,12 @@ then65: ifend67: %t152 = load ptr, ptr %t1 %t153 = load ptr, ptr %t2 - %t154 = call ptr @fn_emit_alias_or_fail(ptr @.str9941, ptr %t152, ptr %t153) + %t154 = call ptr @fn_emit_alias_or_fail(ptr @.str9944, ptr %t152, ptr %t153) store ptr %t154, ptr %retval br label %ret ifend64: %t155 = load ptr, ptr %t0 - %t156 = call i32 @lp_str_eq(ptr %t155, ptr @.str9942) + %t156 = call i32 @lp_str_eq(ptr %t155, ptr @.str9945) %t157 = icmp ne i32 %t156, 0 br i1 %t157, label %then68, label %ifend70 then68: @@ -132226,12 +132386,12 @@ then71: ifend73: %t164 = load ptr, ptr %t1 %t165 = load ptr, ptr %t2 - %t166 = call ptr @fn_emit_alias_or_fail(ptr @.str9943, ptr %t164, ptr %t165) + %t166 = call ptr @fn_emit_alias_or_fail(ptr @.str9946, ptr %t164, ptr %t165) store ptr %t166, ptr %retval br label %ret ifend70: %t167 = load ptr, ptr %t0 - %t168 = call i32 @lp_str_eq(ptr %t167, ptr @.str9944) + %t168 = call i32 @lp_str_eq(ptr %t167, ptr @.str9947) %t169 = icmp ne i32 %t168, 0 br i1 %t169, label %then74, label %ifend76 then74: @@ -132248,12 +132408,12 @@ then77: ifend79: %t176 = load ptr, ptr %t1 %t177 = load ptr, ptr %t2 - %t178 = call ptr @fn_emit_alias_or_fail(ptr @.str9945, ptr %t176, ptr %t177) + %t178 = call ptr @fn_emit_alias_or_fail(ptr @.str9948, ptr %t176, ptr %t177) store ptr %t178, ptr %retval br label %ret ifend76: %t179 = load ptr, ptr %t0 - %t180 = call i32 @lp_str_eq(ptr %t179, ptr @.str9946) + %t180 = call i32 @lp_str_eq(ptr %t179, ptr @.str9949) %t181 = icmp ne i32 %t180, 0 br i1 %t181, label %then80, label %ifend82 then80: @@ -132270,12 +132430,12 @@ then83: ifend85: %t188 = load ptr, ptr %t1 %t189 = load ptr, ptr %t2 - %t190 = call ptr @fn_emit_alias_or_fail(ptr @.str9947, ptr %t188, ptr %t189) + %t190 = call ptr @fn_emit_alias_or_fail(ptr @.str9950, ptr %t188, ptr %t189) store ptr %t190, ptr %retval br label %ret ifend82: %t191 = load ptr, ptr %t0 - %t192 = call i32 @lp_str_eq(ptr %t191, ptr @.str9948) + %t192 = call i32 @lp_str_eq(ptr %t191, ptr @.str9951) %t193 = icmp ne i32 %t192, 0 br i1 %t193, label %then86, label %ifend88 then86: @@ -132292,12 +132452,12 @@ then89: ifend91: %t200 = load ptr, ptr %t1 %t201 = load ptr, ptr %t2 - %t202 = call ptr @fn_emit_alias_or_fail(ptr @.str9949, ptr %t200, ptr %t201) + %t202 = call ptr @fn_emit_alias_or_fail(ptr @.str9952, ptr %t200, ptr %t201) store ptr %t202, ptr %retval br label %ret ifend88: %t203 = load ptr, ptr %t0 - %t204 = call i32 @lp_str_eq(ptr %t203, ptr @.str9950) + %t204 = call i32 @lp_str_eq(ptr %t203, ptr @.str9953) %t205 = icmp ne i32 %t204, 0 br i1 %t205, label %then92, label %ifend94 then92: @@ -132314,12 +132474,12 @@ then95: ifend97: %t212 = load ptr, ptr %t1 %t213 = load ptr, ptr %t2 - %t214 = call ptr @fn_emit_alias_or_fail(ptr @.str9951, ptr %t212, ptr %t213) + %t214 = call ptr @fn_emit_alias_or_fail(ptr @.str9954, ptr %t212, ptr %t213) store ptr %t214, ptr %retval br label %ret ifend94: %t215 = load ptr, ptr %t0 - %t216 = call i32 @lp_str_eq(ptr %t215, ptr @.str9952) + %t216 = call i32 @lp_str_eq(ptr %t215, ptr @.str9955) %t217 = icmp ne i32 %t216, 0 br i1 %t217, label %then98, label %ifend100 then98: @@ -132336,12 +132496,12 @@ then101: ifend103: %t224 = load ptr, ptr %t1 %t225 = load ptr, ptr %t2 - %t226 = call ptr @fn_emit_alias_or_fail(ptr @.str9953, ptr %t224, ptr %t225) + %t226 = call ptr @fn_emit_alias_or_fail(ptr @.str9956, ptr %t224, ptr %t225) store ptr %t226, ptr %retval br label %ret ifend100: %t227 = load ptr, ptr %t0 - %t228 = call i32 @lp_str_eq(ptr %t227, ptr @.str9954) + %t228 = call i32 @lp_str_eq(ptr %t227, ptr @.str9957) %t229 = icmp ne i32 %t228, 0 br i1 %t229, label %then104, label %ifend106 then104: @@ -132358,12 +132518,12 @@ then107: ifend109: %t236 = load ptr, ptr %t1 %t237 = load ptr, ptr %t2 - %t238 = call ptr @fn_emit_alias_or_fail(ptr @.str9955, ptr %t236, ptr %t237) + %t238 = call ptr @fn_emit_alias_or_fail(ptr @.str9958, ptr %t236, ptr %t237) store ptr %t238, ptr %retval br label %ret ifend106: %t239 = load ptr, ptr %t0 - %t240 = call i32 @lp_str_eq(ptr %t239, ptr @.str9956) + %t240 = call i32 @lp_str_eq(ptr %t239, ptr @.str9959) %t241 = icmp ne i32 %t240, 0 br i1 %t241, label %then110, label %ifend112 then110: @@ -132380,12 +132540,12 @@ then113: ifend115: %t248 = load ptr, ptr %t1 %t249 = load ptr, ptr %t2 - %t250 = call ptr @fn_emit_alias_or_fail(ptr @.str9957, ptr %t248, ptr %t249) + %t250 = call ptr @fn_emit_alias_or_fail(ptr @.str9960, ptr %t248, ptr %t249) store ptr %t250, ptr %retval br label %ret ifend112: %t251 = load ptr, ptr %t0 - %t252 = call i32 @lp_str_eq(ptr %t251, ptr @.str9958) + %t252 = call i32 @lp_str_eq(ptr %t251, ptr @.str9961) %t253 = icmp ne i32 %t252, 0 br i1 %t253, label %then116, label %ifend118 then116: @@ -132402,12 +132562,12 @@ then119: ifend121: %t260 = load ptr, ptr %t1 %t261 = load ptr, ptr %t2 - %t262 = call ptr @fn_emit_alias_or_fail(ptr @.str9959, ptr %t260, ptr %t261) + %t262 = call ptr @fn_emit_alias_or_fail(ptr @.str9962, ptr %t260, ptr %t261) store ptr %t262, ptr %retval br label %ret ifend118: %t263 = load ptr, ptr %t0 - %t264 = call i32 @lp_str_eq(ptr %t263, ptr @.str9960) + %t264 = call i32 @lp_str_eq(ptr %t263, ptr @.str9963) %t265 = icmp ne i32 %t264, 0 br i1 %t265, label %then122, label %ifend124 then122: @@ -132424,12 +132584,12 @@ then125: ifend127: %t272 = load ptr, ptr %t1 %t273 = load ptr, ptr %t2 - %t274 = call ptr @fn_emit_alias_or_fail(ptr @.str9961, ptr %t272, ptr %t273) + %t274 = call ptr @fn_emit_alias_or_fail(ptr @.str9964, ptr %t272, ptr %t273) store ptr %t274, ptr %retval br label %ret ifend124: %t275 = load ptr, ptr %t0 - %t276 = call i32 @lp_str_eq(ptr %t275, ptr @.str9962) + %t276 = call i32 @lp_str_eq(ptr %t275, ptr @.str9965) %t277 = icmp ne i32 %t276, 0 br i1 %t277, label %then128, label %ifend130 then128: @@ -132446,12 +132606,12 @@ then131: ifend133: %t284 = load ptr, ptr %t1 %t285 = load ptr, ptr %t2 - %t286 = call ptr @fn_emit_alias_or_fail(ptr @.str9963, ptr %t284, ptr %t285) + %t286 = call ptr @fn_emit_alias_or_fail(ptr @.str9966, ptr %t284, ptr %t285) store ptr %t286, ptr %retval br label %ret ifend130: %t287 = load ptr, ptr %t0 - %t288 = call i32 @lp_str_eq(ptr %t287, ptr @.str9964) + %t288 = call i32 @lp_str_eq(ptr %t287, ptr @.str9967) %t289 = icmp ne i32 %t288, 0 br i1 %t289, label %then134, label %ifend136 then134: @@ -132468,12 +132628,12 @@ then137: ifend139: %t296 = load ptr, ptr %t1 %t297 = load ptr, ptr %t2 - %t298 = call ptr @fn_emit_alias_or_fail(ptr @.str9965, ptr %t296, ptr %t297) + %t298 = call ptr @fn_emit_alias_or_fail(ptr @.str9968, ptr %t296, ptr %t297) store ptr %t298, ptr %retval br label %ret ifend136: %t299 = load ptr, ptr %t0 - %t300 = call i32 @lp_str_eq(ptr %t299, ptr @.str9966) + %t300 = call i32 @lp_str_eq(ptr %t299, ptr @.str9969) %t301 = icmp ne i32 %t300, 0 br i1 %t301, label %then140, label %ifend142 then140: @@ -132490,12 +132650,12 @@ then143: ifend145: %t308 = load ptr, ptr %t1 %t309 = load ptr, ptr %t2 - %t310 = call ptr @fn_emit_alias_or_fail(ptr @.str9967, ptr %t308, ptr %t309) + %t310 = call ptr @fn_emit_alias_or_fail(ptr @.str9970, ptr %t308, ptr %t309) store ptr %t310, ptr %retval br label %ret ifend142: %t311 = load ptr, ptr %t0 - %t312 = call i32 @lp_str_eq(ptr %t311, ptr @.str9968) + %t312 = call i32 @lp_str_eq(ptr %t311, ptr @.str9971) %t313 = icmp ne i32 %t312, 0 br i1 %t313, label %then146, label %ifend148 then146: @@ -132512,12 +132672,12 @@ then149: ifend151: %t320 = load ptr, ptr %t1 %t321 = load ptr, ptr %t2 - %t322 = call ptr @fn_emit_alias_or_fail(ptr @.str9969, ptr %t320, ptr %t321) + %t322 = call ptr @fn_emit_alias_or_fail(ptr @.str9972, ptr %t320, ptr %t321) store ptr %t322, ptr %retval br label %ret ifend148: %t323 = load ptr, ptr %t0 - %t324 = call i32 @lp_str_eq(ptr %t323, ptr @.str9970) + %t324 = call i32 @lp_str_eq(ptr %t323, ptr @.str9973) %t325 = icmp ne i32 %t324, 0 br i1 %t325, label %then152, label %ifend154 then152: @@ -132534,12 +132694,12 @@ then155: ifend157: %t332 = load ptr, ptr %t1 %t333 = load ptr, ptr %t2 - %t334 = call ptr @fn_emit_alias_or_fail(ptr @.str9971, ptr %t332, ptr %t333) + %t334 = call ptr @fn_emit_alias_or_fail(ptr @.str9974, ptr %t332, ptr %t333) store ptr %t334, ptr %retval br label %ret ifend154: %t335 = load ptr, ptr %t0 - %t336 = call i32 @lp_str_eq(ptr %t335, ptr @.str9972) + %t336 = call i32 @lp_str_eq(ptr %t335, ptr @.str9975) %t337 = icmp ne i32 %t336, 0 br i1 %t337, label %then158, label %ifend160 then158: @@ -132556,12 +132716,12 @@ then161: ifend163: %t344 = load ptr, ptr %t1 %t345 = load ptr, ptr %t2 - %t346 = call ptr @fn_emit_alias_or_fail(ptr @.str9973, ptr %t344, ptr %t345) + %t346 = call ptr @fn_emit_alias_or_fail(ptr @.str9976, ptr %t344, ptr %t345) store ptr %t346, ptr %retval br label %ret ifend160: %t347 = load ptr, ptr %t0 - %t348 = call i32 @lp_str_eq(ptr %t347, ptr @.str9974) + %t348 = call i32 @lp_str_eq(ptr %t347, ptr @.str9977) %t349 = icmp ne i32 %t348, 0 br i1 %t349, label %then164, label %ifend166 then164: @@ -132578,12 +132738,12 @@ then167: ifend169: %t356 = load ptr, ptr %t1 %t357 = load ptr, ptr %t2 - %t358 = call ptr @fn_emit_alias_or_fail(ptr @.str9975, ptr %t356, ptr %t357) + %t358 = call ptr @fn_emit_alias_or_fail(ptr @.str9978, ptr %t356, ptr %t357) store ptr %t358, ptr %retval br label %ret ifend166: %t359 = load ptr, ptr %t0 - %t360 = call i32 @lp_str_eq(ptr %t359, ptr @.str9976) + %t360 = call i32 @lp_str_eq(ptr %t359, ptr @.str9979) %t361 = icmp ne i32 %t360, 0 br i1 %t361, label %then170, label %ifend172 then170: @@ -132600,17 +132760,17 @@ then173: ifend175: %t368 = load ptr, ptr %t1 %t369 = load ptr, ptr %t2 - %t370 = call ptr @fn_emit_alias_or_fail(ptr @.str9977, ptr %t368, ptr %t369) + %t370 = call ptr @fn_emit_alias_or_fail(ptr @.str9980, ptr %t368, ptr %t369) store ptr %t370, ptr %retval br label %ret ifend172: %t371 = load ptr, ptr %t0 - %t372 = call i32 @lp_str_eq(ptr %t371, ptr @.str9978) + %t372 = call i32 @lp_str_eq(ptr %t371, ptr @.str9981) %t373 = icmp ne i32 %t372, 0 br i1 %t373, label %then176, label %ifend178 then176: %t374 = load ptr, ptr %t1 - %t375 = call i32 @lp_str_eq(ptr %t374, ptr @.str9979) + %t375 = call i32 @lp_str_eq(ptr %t374, ptr @.str9982) %t376 = icmp ne i32 %t375, 0 br i1 %t376, label %then179, label %ifend181 then179: @@ -132619,15 +132779,15 @@ then179: %t378 = icmp ne i32 %t377, 0 br i1 %t378, label %then182, label %ifend184 then182: - call void @fn_emit(ptr @.str9980) + call void @fn_emit(ptr @.str9983) br label %ifend184 ifend184: - %t379 = call ptr @fn_val(ptr @.str9981, ptr @.str9982) + %t379 = call ptr @fn_val(ptr @.str9984, ptr @.str9985) store ptr %t379, ptr %retval br label %ret ifend181: %t380 = load ptr, ptr %t1 - %t381 = call i32 @lp_str_eq(ptr %t380, ptr @.str9983) + %t381 = call i32 @lp_str_eq(ptr %t380, ptr @.str9986) %t382 = icmp ne i32 %t381, 0 br i1 %t382, label %then185, label %ifend187 then185: @@ -132640,17 +132800,17 @@ then185: br i1 %t387, label %then188, label %ifend190 then188: %t388 = load ptr, ptr %t385 - %t389 = call ptr @lp_str_concat(ptr @.str9984, ptr %t388) - %t390 = call ptr @lp_str_concat(ptr %t389, ptr @.str9985) + %t389 = call ptr @lp_str_concat(ptr @.str9987, ptr %t388) + %t390 = call ptr @lp_str_concat(ptr %t389, ptr @.str9988) call void @fn_emit(ptr %t390) br label %ifend190 ifend190: - %t391 = call ptr @fn_val(ptr @.str9986, ptr @.str9987) + %t391 = call ptr @fn_val(ptr @.str9989, ptr @.str9990) store ptr %t391, ptr %retval br label %ret ifend187: %t392 = load ptr, ptr %t1 - %t393 = call i32 @lp_str_eq(ptr %t392, ptr @.str9988) + %t393 = call i32 @lp_str_eq(ptr %t392, ptr @.str9991) %t394 = icmp ne i32 %t393, 0 br i1 %t394, label %then191, label %ifend193 then191: @@ -132659,17 +132819,17 @@ then191: %t396 = icmp ne i32 %t395, 0 br i1 %t396, label %then194, label %ifend196 then194: - %t397 = call ptr @fn_emit_bind(ptr @.str9989) - %t398 = call ptr @fn_val(ptr %t397, ptr @.str9990) + %t397 = call ptr @fn_emit_bind(ptr @.str9992) + %t398 = call ptr @fn_val(ptr %t397, ptr @.str9993) store ptr %t398, ptr %retval br label %ret ifend196: - %t399 = call ptr @fn_val(ptr @.str9991, ptr @.str9992) + %t399 = call ptr @fn_val(ptr @.str9994, ptr @.str9995) store ptr %t399, ptr %retval br label %ret ifend193: %t400 = load ptr, ptr %t1 - %t401 = call i32 @lp_str_eq(ptr %t400, ptr @.str9993) + %t401 = call i32 @lp_str_eq(ptr %t400, ptr @.str9996) %t402 = icmp ne i32 %t401, 0 br i1 %t402, label %then197, label %ifend199 then197: @@ -132682,17 +132842,17 @@ then197: br i1 %t407, label %then200, label %ifend202 then200: %t408 = load ptr, ptr %t405 - %t409 = call ptr @lp_str_concat(ptr @.str9994, ptr %t408) - %t410 = call ptr @lp_str_concat(ptr %t409, ptr @.str9995) + %t409 = call ptr @lp_str_concat(ptr @.str9997, ptr %t408) + %t410 = call ptr @lp_str_concat(ptr %t409, ptr @.str9998) call void @fn_emit(ptr %t410) br label %ifend202 ifend202: - %t411 = call ptr @fn_val(ptr @.str9996, ptr @.str9997) + %t411 = call ptr @fn_val(ptr @.str9999, ptr @.str10000) store ptr %t411, ptr %retval br label %ret ifend199: %t412 = load ptr, ptr %t1 - %t413 = call i32 @lp_str_eq(ptr %t412, ptr @.str9998) + %t413 = call i32 @lp_str_eq(ptr %t412, ptr @.str10001) %t414 = icmp ne i32 %t413, 0 br i1 %t414, label %then203, label %ifend205 then203: @@ -132705,24 +132865,24 @@ then203: br i1 %t419, label %then206, label %ifend208 then206: %t420 = load ptr, ptr %t417 - %t421 = call ptr @lp_str_concat(ptr @.str9999, ptr %t420) - %t422 = call ptr @lp_str_concat(ptr %t421, ptr @.str10000) + %t421 = call ptr @lp_str_concat(ptr @.str10002, ptr %t420) + %t422 = call ptr @lp_str_concat(ptr %t421, ptr @.str10003) call void @fn_emit(ptr %t422) br label %ifend208 ifend208: - %t423 = call ptr @fn_val(ptr @.str10001, ptr @.str10002) + %t423 = call ptr @fn_val(ptr @.str10004, ptr @.str10005) store ptr %t423, ptr %retval br label %ret ifend205: %t425 = load ptr, ptr %t1 - %t426 = call i32 @lp_str_eq(ptr %t425, ptr @.str10003) + %t426 = call i32 @lp_str_eq(ptr %t425, ptr @.str10006) %t427 = icmp ne i32 %t426, 0 %t428 = zext i1 %t427 to i32 store i32 %t428, ptr %t424 br i1 %t427, label %scend210, label %sc209 sc209: %t429 = load ptr, ptr %t1 - %t430 = call i32 @lp_str_eq(ptr %t429, ptr @.str10004) + %t430 = call i32 @lp_str_eq(ptr %t429, ptr @.str10007) %t431 = icmp ne i32 %t430, 0 %t432 = zext i1 %t431 to i32 store i32 %t432, ptr %t424 @@ -132738,78 +132898,78 @@ then211: br i1 %t436, label %then214, label %ifend216 then214: %t437 = load ptr, ptr %t1 - %t438 = call ptr @lp_str_concat(ptr @.str10005, ptr %t437) - %t439 = call ptr @lp_str_concat(ptr %t438, ptr @.str10006) + %t438 = call ptr @lp_str_concat(ptr @.str10008, ptr %t437) + %t439 = call ptr @lp_str_concat(ptr %t438, ptr @.str10009) call void @fn_emit(ptr %t439) br label %ifend216 ifend216: - %t440 = call ptr @fn_val(ptr @.str10007, ptr @.str10008) + %t440 = call ptr @fn_val(ptr @.str10010, ptr @.str10011) store ptr %t440, ptr %retval br label %ret ifend213: %t441 = load ptr, ptr %t1 %t442 = load ptr, ptr %t2 - %t443 = call ptr @fn_emit_alias_or_fail(ptr @.str10009, ptr %t441, ptr %t442) + %t443 = call ptr @fn_emit_alias_or_fail(ptr @.str10012, ptr %t441, ptr %t442) store ptr %t443, ptr %retval br label %ret ifend178: %t444 = load ptr, ptr %t0 - %t445 = call i32 @lp_str_eq(ptr %t444, ptr @.str10010) + %t445 = call i32 @lp_str_eq(ptr %t444, ptr @.str10013) %t446 = icmp ne i32 %t445, 0 br i1 %t446, label %then217, label %ifend219 then217: %t447 = load ptr, ptr %t1 - %t448 = call i32 @lp_str_eq(ptr %t447, ptr @.str10011) + %t448 = call i32 @lp_str_eq(ptr %t447, ptr @.str10014) %t449 = icmp ne i32 %t448, 0 br i1 %t449, label %then220, label %ifend222 then220: - %t450 = call ptr @fn_itoa(i32 1024) - %t451 = call ptr @fn_val(ptr %t450, ptr @.str10012) + %t450 = call ptr @fn_emit_bind(ptr @.str10015) + %t451 = call ptr @fn_val(ptr %t450, ptr @.str10016) store ptr %t451, ptr %retval br label %ret ifend222: %t452 = load ptr, ptr %t1 - %t453 = call i32 @lp_str_eq(ptr %t452, ptr @.str10013) + %t453 = call i32 @lp_str_eq(ptr %t452, ptr @.str10017) %t454 = icmp ne i32 %t453, 0 br i1 %t454, label %then223, label %ifend225 then223: - %t455 = call ptr @fn_emit_bind(ptr @.str10014) - %t456 = call ptr @fn_val(ptr %t455, ptr @.str10015) + %t455 = call ptr @fn_emit_bind(ptr @.str10018) + %t456 = call ptr @fn_val(ptr %t455, ptr @.str10019) store ptr %t456, ptr %retval br label %ret ifend225: %t457 = load ptr, ptr %t1 - %t458 = call i32 @lp_str_eq(ptr %t457, ptr @.str10016) + %t458 = call i32 @lp_str_eq(ptr %t457, ptr @.str10020) %t459 = icmp ne i32 %t458, 0 br i1 %t459, label %then226, label %ifend228 then226: - %t460 = call ptr @fn_emit_bind(ptr @.str10017) - %t461 = call ptr @fn_val(ptr %t460, ptr @.str10018) + %t460 = call ptr @fn_emit_bind(ptr @.str10021) + %t461 = call ptr @fn_val(ptr %t460, ptr @.str10022) store ptr %t461, ptr %retval br label %ret ifend228: %t462 = load ptr, ptr %t1 - %t463 = call i32 @lp_str_eq(ptr %t462, ptr @.str10019) + %t463 = call i32 @lp_str_eq(ptr %t462, ptr @.str10023) %t464 = icmp ne i32 %t463, 0 br i1 %t464, label %then229, label %ifend231 then229: - %t465 = call ptr @fn_emit_bind(ptr @.str10020) + %t465 = call ptr @fn_emit_bind(ptr @.str10024) store ptr %t465, ptr %t466 - %t467 = call ptr @fn_emit_bind(ptr @.str10021) + %t467 = call ptr @fn_emit_bind(ptr @.str10025) store ptr %t467, ptr %t468 %t469 = load ptr, ptr %t466 - %t470 = call ptr @lp_str_concat(ptr @.str10022, ptr %t469) - %t471 = call ptr @lp_str_concat(ptr %t470, ptr @.str10023) + %t470 = call ptr @lp_str_concat(ptr @.str10026, ptr %t469) + %t471 = call ptr @lp_str_concat(ptr %t470, ptr @.str10027) %t472 = load ptr, ptr %t468 %t473 = call ptr @lp_str_concat(ptr %t471, ptr %t472) %t474 = call ptr @fn_emit_bind(ptr %t473) - %t475 = call ptr @fn_val(ptr %t474, ptr @.str10024) + %t475 = call ptr @fn_val(ptr %t474, ptr @.str10028) store ptr %t475, ptr %retval br label %ret ifend231: %t476 = load ptr, ptr %t1 %t477 = load ptr, ptr %t2 - %t478 = call ptr @fn_emit_alias_or_fail(ptr @.str10025, ptr %t476, ptr %t477) + %t478 = call ptr @fn_emit_alias_or_fail(ptr @.str10029, ptr %t476, ptr %t477) store ptr %t478, ptr %retval br label %ret ifend219: @@ -132842,12 +133002,12 @@ ifend234: store i32 0, ptr %t497 store ptr %t494, ptr %t498 %t499 = load ptr, ptr %t0 - %t500 = call i32 @lp_str_eq(ptr %t499, ptr @.str10026) + %t500 = call i32 @lp_str_eq(ptr %t499, ptr @.str10030) %t501 = icmp ne i32 %t500, 0 br i1 %t501, label %then235, label %ifend237 then235: %t502 = load ptr, ptr %t1 - %t503 = call i32 @lp_str_eq(ptr %t502, ptr @.str10027) + %t503 = call i32 @lp_str_eq(ptr %t502, ptr @.str10031) %t504 = icmp ne i32 %t503, 0 br i1 %t504, label %then238, label %ifend240 then238: @@ -132857,10 +133017,10 @@ then238: %t508 = icmp ne i32 %t507, 0 br i1 %t508, label %then241, label %ifend243 then241: - call void @fn_perr(ptr @.str10028) + call void @fn_perr(ptr @.str10032) br label %ifend243 ifend243: - %t509 = call ptr @fn_find_comp(ptr @.str10029) + %t509 = call ptr @fn_find_comp(ptr @.str10033) store ptr %t509, ptr %t510 %t511 = load ptr, ptr %t510 %t512 = icmp eq ptr %t511, null @@ -132868,7 +133028,7 @@ ifend243: %t514 = icmp ne i32 %t513, 0 br i1 %t514, label %then244, label %ifend246 then244: - call void @fn_perr(ptr @.str10030) + call void @fn_perr(ptr @.str10034) br label %ifend246 ifend246: %t515 = getelementptr %LSlice, ptr null, i32 1 @@ -132905,7 +133065,7 @@ grow247: put248: %t538 = load ptr, ptr %t525 %t539 = getelementptr inbounds ptr, ptr %t538, i32 %t526 - store ptr @.str10031, ptr %t539 + store ptr @.str10035, ptr %t539 %t540 = add i32 %t526, 1 store i32 %t540, ptr %t523 %t541 = load ptr, ptr %t521 @@ -132932,7 +133092,7 @@ grow249: put250: %t557 = load ptr, ptr %t544 %t558 = getelementptr inbounds ptr, ptr %t557, i32 %t545 - store ptr @.str10032, ptr %t558 + store ptr @.str10036, ptr %t558 %t559 = add i32 %t545, 1 store i32 %t559, ptr %t542 %t560 = load ptr, ptr %t2 @@ -132949,7 +133109,7 @@ put250: br i1 %t569, label %ixok251, label %ixbad252 ixbad252: %t570 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t570, ptr @.fmt_bounds, ptr @.str10033, i32 0, i32 %t568) + call i32 (ptr, ptr, ...) @fprintf(ptr %t570, ptr @.fmt_bounds, ptr @.str10037, i32 0, i32 %t568) call void @exit(i32 1) unreachable ixok251: @@ -132968,7 +133128,7 @@ ixok251: br i1 %t582, label %ixok253, label %ixbad254 ixbad254: %t583 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t583, ptr @.fmt_bounds, ptr @.str10034, i32 1, i32 %t581) + call i32 (ptr, ptr, ...) @fprintf(ptr %t583, ptr @.fmt_bounds, ptr @.str10038, i32 1, i32 %t581) call void @exit(i32 1) unreachable ixok253: @@ -132979,1268 +133139,1270 @@ ixok253: %t588 = load ptr, ptr %t574 %t589 = getelementptr inbounds %Cmp_Val, ptr %t588, i32 0, i32 0 %t590 = load ptr, ptr %t589 - %t591 = call ptr @lp_str_concat(ptr @.str10035, ptr %t590) - %t592 = call ptr @lp_str_concat(ptr %t591, ptr @.str10036) + %t591 = call ptr @lp_str_concat(ptr @.str10039, ptr %t590) + %t592 = call ptr @lp_str_concat(ptr %t591, ptr @.str10040) %t593 = call ptr @fn_emit_bind(ptr %t592) store ptr %t593, ptr %t594 %t595 = call ptr @fn_itoa(i32 1024) store ptr %t595, ptr %t596 - %t597 = load ptr, ptr %t596 - %t598 = call ptr @lp_str_concat(ptr @.str10037, ptr %t597) - %t599 = call ptr @lp_str_concat(ptr %t598, ptr @.str10038) - %t600 = load ptr, ptr %t594 - %t601 = call ptr @lp_str_concat(ptr %t599, ptr %t600) - %t602 = call ptr @fn_emit_bind(ptr %t601) - store ptr %t602, ptr %t603 - %t604 = load ptr, ptr %t603 - %t605 = call ptr @lp_str_concat(ptr @.str10039, ptr %t604) - %t606 = call ptr @lp_str_concat(ptr %t605, ptr @.str10040) - %t607 = load ptr, ptr %t510 - %t608 = call i32 @fn_field_index(ptr %t607, ptr @.str10041) - %t609 = call ptr @fn_itoa(i32 %t608) - %t610 = call ptr @lp_str_concat(ptr %t606, ptr %t609) - %t611 = call ptr @fn_emit_bind(ptr %t610) - store ptr %t611, ptr %t612 - %t613 = load ptr, ptr %t603 - %t614 = call ptr @lp_str_concat(ptr @.str10042, ptr %t613) - %t615 = call ptr @lp_str_concat(ptr %t614, ptr @.str10043) - %t616 = load ptr, ptr %t510 - %t617 = call i32 @fn_field_index(ptr %t616, ptr @.str10044) - %t618 = call ptr @fn_itoa(i32 %t617) - %t619 = call ptr @lp_str_concat(ptr %t615, ptr %t618) - %t620 = call ptr @fn_emit_bind(ptr %t619) - store ptr %t620, ptr %t621 - %t622 = load ptr, ptr %t587 - %t623 = getelementptr inbounds %Cmp_Val, ptr %t622, i32 0, i32 0 - %t624 = load ptr, ptr %t623 - %t625 = call ptr @fn_vec_x(ptr %t624) - store ptr %t625, ptr %t626 - %t627 = load ptr, ptr %t587 - %t628 = getelementptr inbounds %Cmp_Val, ptr %t627, i32 0, i32 0 - %t629 = load ptr, ptr %t628 - %t630 = call ptr @fn_vec_y(ptr %t629) - store ptr %t630, ptr %t631 - call void @fn_emit(ptr @.str10045) - %t632 = load ptr, ptr %t626 - call void @fn_emit(ptr %t632) - call void @fn_emit(ptr @.str10046) - %t633 = load ptr, ptr %t612 - call void @fn_emit(ptr %t633) - call void @fn_emit(ptr @.str10047) - call void @fn_emit(ptr @.str10048) - %t634 = load ptr, ptr %t631 - call void @fn_emit(ptr %t634) - call void @fn_emit(ptr @.str10049) - %t635 = load ptr, ptr %t621 - call void @fn_emit(ptr %t635) + %t597 = call ptr @fn_ecs_base(ptr @.str10041) + store ptr %t597, ptr %t598 + %t599 = load ptr, ptr %t598 + %t600 = call ptr @lp_str_concat(ptr @.str10042, ptr %t599) + %t601 = call ptr @lp_str_concat(ptr %t600, ptr @.str10043) + %t602 = load ptr, ptr %t594 + %t603 = call ptr @lp_str_concat(ptr %t601, ptr %t602) + %t604 = call ptr @fn_emit_bind(ptr %t603) + store ptr %t604, ptr %t605 + %t606 = load ptr, ptr %t605 + %t607 = call ptr @lp_str_concat(ptr @.str10044, ptr %t606) + %t608 = call ptr @lp_str_concat(ptr %t607, ptr @.str10045) + %t609 = load ptr, ptr %t510 + %t610 = call i32 @fn_field_index(ptr %t609, ptr @.str10046) + %t611 = call ptr @fn_itoa(i32 %t610) + %t612 = call ptr @lp_str_concat(ptr %t608, ptr %t611) + %t613 = call ptr @fn_emit_bind(ptr %t612) + store ptr %t613, ptr %t614 + %t615 = load ptr, ptr %t605 + %t616 = call ptr @lp_str_concat(ptr @.str10047, ptr %t615) + %t617 = call ptr @lp_str_concat(ptr %t616, ptr @.str10048) + %t618 = load ptr, ptr %t510 + %t619 = call i32 @fn_field_index(ptr %t618, ptr @.str10049) + %t620 = call ptr @fn_itoa(i32 %t619) + %t621 = call ptr @lp_str_concat(ptr %t617, ptr %t620) + %t622 = call ptr @fn_emit_bind(ptr %t621) + store ptr %t622, ptr %t623 + %t624 = load ptr, ptr %t587 + %t625 = getelementptr inbounds %Cmp_Val, ptr %t624, i32 0, i32 0 + %t626 = load ptr, ptr %t625 + %t627 = call ptr @fn_vec_x(ptr %t626) + store ptr %t627, ptr %t628 + %t629 = load ptr, ptr %t587 + %t630 = getelementptr inbounds %Cmp_Val, ptr %t629, i32 0, i32 0 + %t631 = load ptr, ptr %t630 + %t632 = call ptr @fn_vec_y(ptr %t631) + store ptr %t632, ptr %t633 call void @fn_emit(ptr @.str10050) - %t636 = load ptr, ptr %t594 - %t637 = call ptr @fn_val(ptr %t636, ptr @.str10051) - store ptr %t637, ptr %retval + %t634 = load ptr, ptr %t628 + call void @fn_emit(ptr %t634) + call void @fn_emit(ptr @.str10051) + %t635 = load ptr, ptr %t614 + call void @fn_emit(ptr %t635) + call void @fn_emit(ptr @.str10052) + call void @fn_emit(ptr @.str10053) + %t636 = load ptr, ptr %t633 + call void @fn_emit(ptr %t636) + call void @fn_emit(ptr @.str10054) + %t637 = load ptr, ptr %t623 + call void @fn_emit(ptr %t637) + call void @fn_emit(ptr @.str10055) + %t638 = load ptr, ptr %t594 + %t639 = call ptr @fn_val(ptr %t638, ptr @.str10056) + store ptr %t639, ptr %retval br label %ret ifend240: - %t638 = load ptr, ptr %t1 - %t639 = call i32 @lp_str_eq(ptr %t638, ptr @.str10052) - %t640 = icmp ne i32 %t639, 0 - br i1 %t640, label %then255, label %ifend257 + %t640 = load ptr, ptr %t1 + %t641 = call i32 @lp_str_eq(ptr %t640, ptr @.str10057) + %t642 = icmp ne i32 %t641, 0 + br i1 %t642, label %then255, label %ifend257 then255: - %t641 = call i32 @fn_has_prefabs() - %t642 = icmp eq i32 %t641, 0 - %t643 = zext i1 %t642 to i32 - %t644 = icmp ne i32 %t643, 0 - br i1 %t644, label %then258, label %ifend260 + %t643 = call i32 @fn_has_prefabs() + %t644 = icmp eq i32 %t643, 0 + %t645 = zext i1 %t644 to i32 + %t646 = icmp ne i32 %t645, 0 + br i1 %t646, label %then258, label %ifend260 then258: - call void @fn_perr(ptr @.str10053) + call void @fn_perr(ptr @.str10058) br label %ifend260 ifend260: - %t645 = getelementptr %LSlice, ptr null, i32 1 - %t646 = ptrtoint ptr %t645 to i64 - %t647 = call ptr @malloc(i64 %t646) - %t648 = getelementptr inbounds %LSlice, ptr %t647, i32 0, i32 0 - store ptr null, ptr %t648 - %t649 = getelementptr inbounds %LSlice, ptr %t647, i32 0, i32 1 - store i32 0, ptr %t649 - %t650 = getelementptr inbounds %LSlice, ptr %t647, i32 0, i32 2 - store i32 0, ptr %t650 - store ptr %t647, ptr %t651 - %t652 = load ptr, ptr %t651 - %t653 = getelementptr inbounds %LSlice, ptr %t652, i32 0, i32 1 - %t654 = getelementptr inbounds %LSlice, ptr %t652, i32 0, i32 2 - %t655 = getelementptr inbounds %LSlice, ptr %t652, i32 0, i32 0 - %t656 = load i32, ptr %t653 - %t657 = load i32, ptr %t654 - %t658 = icmp sge i32 %t656, %t657 - br i1 %t658, label %grow261, label %put262 + %t647 = getelementptr %LSlice, ptr null, i32 1 + %t648 = ptrtoint ptr %t647 to i64 + %t649 = call ptr @malloc(i64 %t648) + %t650 = getelementptr inbounds %LSlice, ptr %t649, i32 0, i32 0 + store ptr null, ptr %t650 + %t651 = getelementptr inbounds %LSlice, ptr %t649, i32 0, i32 1 + store i32 0, ptr %t651 + %t652 = getelementptr inbounds %LSlice, ptr %t649, i32 0, i32 2 + store i32 0, ptr %t652 + store ptr %t649, ptr %t653 + %t654 = load ptr, ptr %t653 + %t655 = getelementptr inbounds %LSlice, ptr %t654, i32 0, i32 1 + %t656 = getelementptr inbounds %LSlice, ptr %t654, i32 0, i32 2 + %t657 = getelementptr inbounds %LSlice, ptr %t654, i32 0, i32 0 + %t658 = load i32, ptr %t655 + %t659 = load i32, ptr %t656 + %t660 = icmp sge i32 %t658, %t659 + br i1 %t660, label %grow261, label %put262 grow261: - %t659 = mul i32 %t657, 2 - %t660 = icmp eq i32 %t657, 0 - %t661 = select i1 %t660, i32 8, i32 %t659 - %t662 = getelementptr ptr, ptr null, i32 1 - %t663 = ptrtoint ptr %t662 to i64 - %t664 = zext i32 %t661 to i64 - %t665 = mul i64 %t664, %t663 - %t666 = load ptr, ptr %t655 - %t667 = call ptr @realloc(ptr %t666, i64 %t665) - store ptr %t667, ptr %t655 - store i32 %t661, ptr %t654 + %t661 = mul i32 %t659, 2 + %t662 = icmp eq i32 %t659, 0 + %t663 = select i1 %t662, i32 8, i32 %t661 + %t664 = getelementptr ptr, ptr null, i32 1 + %t665 = ptrtoint ptr %t664 to i64 + %t666 = zext i32 %t663 to i64 + %t667 = mul i64 %t666, %t665 + %t668 = load ptr, ptr %t657 + %t669 = call ptr @realloc(ptr %t668, i64 %t667) + store ptr %t669, ptr %t657 + store i32 %t663, ptr %t656 br label %put262 put262: - %t668 = load ptr, ptr %t655 - %t669 = getelementptr inbounds ptr, ptr %t668, i32 %t656 - store ptr @.str10054, ptr %t669 - %t670 = add i32 %t656, 1 - store i32 %t670, ptr %t653 - %t671 = load ptr, ptr %t2 - %t672 = load ptr, ptr %t651 - call void @fn_reorder_named(ptr %t671, ptr %t672) + %t670 = load ptr, ptr %t657 + %t671 = getelementptr inbounds ptr, ptr %t670, i32 %t658 + store ptr @.str10059, ptr %t671 + %t672 = add i32 %t658, 1 + store i32 %t672, ptr %t655 %t673 = load ptr, ptr %t2 - %t674 = getelementptr inbounds %Cmp_Node, ptr %t673, i32 0, i32 7 - %t675 = load ptr, ptr %t674 - %t676 = getelementptr inbounds %LSlice, ptr %t675, i32 0, i32 1 - %t677 = load i32, ptr %t676 - %t678 = icmp ne i32 %t677, 1 - %t679 = zext i1 %t678 to i32 - %t680 = icmp ne i32 %t679, 0 - br i1 %t680, label %then263, label %ifend265 + %t674 = load ptr, ptr %t653 + call void @fn_reorder_named(ptr %t673, ptr %t674) + %t675 = load ptr, ptr %t2 + %t676 = getelementptr inbounds %Cmp_Node, ptr %t675, i32 0, i32 7 + %t677 = load ptr, ptr %t676 + %t678 = getelementptr inbounds %LSlice, ptr %t677, i32 0, i32 1 + %t679 = load i32, ptr %t678 + %t680 = icmp ne i32 %t679, 1 + %t681 = zext i1 %t680 to i32 + %t682 = icmp ne i32 %t681, 0 + br i1 %t682, label %then263, label %ifend265 then263: - call void @fn_perr(ptr @.str10055) + call void @fn_perr(ptr @.str10060) br label %ifend265 ifend265: - %t681 = load ptr, ptr %t2 - %t682 = getelementptr inbounds %Cmp_Node, ptr %t681, i32 0, i32 7 - %t683 = load ptr, ptr %t682 - %t684 = getelementptr inbounds %LSlice, ptr %t683, i32 0, i32 0 + %t683 = load ptr, ptr %t2 + %t684 = getelementptr inbounds %Cmp_Node, ptr %t683, i32 0, i32 7 %t685 = load ptr, ptr %t684 - %t686 = getelementptr inbounds %LSlice, ptr %t683, i32 0, i32 1 - %t687 = load i32, ptr %t686 - %t688 = icmp ult i32 0, %t687 - br i1 %t688, label %ixok266, label %ixbad267 + %t686 = getelementptr inbounds %LSlice, ptr %t685, i32 0, i32 0 + %t687 = load ptr, ptr %t686 + %t688 = getelementptr inbounds %LSlice, ptr %t685, i32 0, i32 1 + %t689 = load i32, ptr %t688 + %t690 = icmp ult i32 0, %t689 + br i1 %t690, label %ixok266, label %ixbad267 ixbad267: - %t689 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t689, ptr @.fmt_bounds, ptr @.str10056, i32 0, i32 %t687) + %t691 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t691, ptr @.fmt_bounds, ptr @.str10061, i32 0, i32 %t689) call void @exit(i32 1) unreachable ixok266: - %t690 = getelementptr inbounds ptr, ptr %t685, i32 0 - %t691 = load ptr, ptr %t690 - %t692 = call ptr @fn_emit_expr(ptr %t691) - store ptr %t692, ptr %t693 - %t694 = load ptr, ptr %t693 - %t695 = getelementptr inbounds %Cmp_Val, ptr %t694, i32 0, i32 0 + %t692 = getelementptr inbounds ptr, ptr %t687, i32 0 + %t693 = load ptr, ptr %t692 + %t694 = call ptr @fn_emit_expr(ptr %t693) + store ptr %t694, ptr %t695 %t696 = load ptr, ptr %t695 - %t697 = call ptr @lp_str_concat(ptr @.str10057, ptr %t696) - %t698 = call ptr @lp_str_concat(ptr %t697, ptr @.str10058) - %t699 = call ptr @fn_emit_bind(ptr %t698) - %t700 = call ptr @fn_val(ptr %t699, ptr @.str10059) - store ptr %t700, ptr %retval + %t697 = getelementptr inbounds %Cmp_Val, ptr %t696, i32 0, i32 0 + %t698 = load ptr, ptr %t697 + %t699 = call ptr @lp_str_concat(ptr @.str10062, ptr %t698) + %t700 = call ptr @lp_str_concat(ptr %t699, ptr @.str10063) + %t701 = call ptr @fn_emit_bind(ptr %t700) + %t702 = call ptr @fn_val(ptr %t701, ptr @.str10064) + store ptr %t702, ptr %retval br label %ret ifend257: - %t701 = load ptr, ptr %t1 - %t702 = load ptr, ptr %t2 - %t703 = call ptr @fn_emit_alias_or_fail(ptr @.str10060, ptr %t701, ptr %t702) - store ptr %t703, ptr %retval + %t703 = load ptr, ptr %t1 + %t704 = load ptr, ptr %t2 + %t705 = call ptr @fn_emit_alias_or_fail(ptr @.str10065, ptr %t703, ptr %t704) + store ptr %t705, ptr %retval br label %ret ifend237: - %t704 = load ptr, ptr %t0 - %t705 = call i32 @lp_str_eq(ptr %t704, ptr @.str10061) - %t706 = icmp ne i32 %t705, 0 - br i1 %t706, label %then268, label %ifend270 + %t706 = load ptr, ptr %t0 + %t707 = call i32 @lp_str_eq(ptr %t706, ptr @.str10066) + %t708 = icmp ne i32 %t707, 0 + br i1 %t708, label %then268, label %ifend270 then268: - %t707 = load ptr, ptr %t1 - %t708 = call i32 @lp_str_eq(ptr %t707, ptr @.str10062) - %t709 = icmp ne i32 %t708, 0 - br i1 %t709, label %then271, label %ifend273 + %t709 = load ptr, ptr %t1 + %t710 = call i32 @lp_str_eq(ptr %t709, ptr @.str10067) + %t711 = icmp ne i32 %t710, 0 + br i1 %t711, label %then271, label %ifend273 then271: - %t710 = load ptr, ptr %t2 - %t711 = call i32 @fn_first_arg_is_text(ptr %t710) - %t712 = icmp ne i32 %t711, 0 - br i1 %t712, label %then274, label %else275 + %t712 = load ptr, ptr %t2 + %t713 = call i32 @fn_first_arg_is_text(ptr %t712) + %t714 = icmp ne i32 %t713, 0 + br i1 %t714, label %then274, label %else275 then274: - store ptr @.str10063, ptr %t490 - %t713 = load ptr, ptr %t498 - %t714 = getelementptr inbounds %LSlice, ptr %t713, i32 0, i32 1 - %t715 = getelementptr inbounds %LSlice, ptr %t713, i32 0, i32 2 - %t716 = getelementptr inbounds %LSlice, ptr %t713, i32 0, i32 0 - %t717 = load i32, ptr %t714 - %t718 = load i32, ptr %t715 - %t719 = icmp sge i32 %t717, %t718 - br i1 %t719, label %grow277, label %put278 + store ptr @.str10068, ptr %t490 + %t715 = load ptr, ptr %t498 + %t716 = getelementptr inbounds %LSlice, ptr %t715, i32 0, i32 1 + %t717 = getelementptr inbounds %LSlice, ptr %t715, i32 0, i32 2 + %t718 = getelementptr inbounds %LSlice, ptr %t715, i32 0, i32 0 + %t719 = load i32, ptr %t716 + %t720 = load i32, ptr %t717 + %t721 = icmp sge i32 %t719, %t720 + br i1 %t721, label %grow277, label %put278 grow277: - %t720 = mul i32 %t718, 2 - %t721 = icmp eq i32 %t718, 0 - %t722 = select i1 %t721, i32 8, i32 %t720 - %t723 = getelementptr ptr, ptr null, i32 1 - %t724 = ptrtoint ptr %t723 to i64 - %t725 = zext i32 %t722 to i64 - %t726 = mul i64 %t725, %t724 - %t727 = load ptr, ptr %t716 - %t728 = call ptr @realloc(ptr %t727, i64 %t726) - store ptr %t728, ptr %t716 - store i32 %t722, ptr %t715 + %t722 = mul i32 %t720, 2 + %t723 = icmp eq i32 %t720, 0 + %t724 = select i1 %t723, i32 8, i32 %t722 + %t725 = getelementptr ptr, ptr null, i32 1 + %t726 = ptrtoint ptr %t725 to i64 + %t727 = zext i32 %t724 to i64 + %t728 = mul i64 %t727, %t726 + %t729 = load ptr, ptr %t718 + %t730 = call ptr @realloc(ptr %t729, i64 %t728) + store ptr %t730, ptr %t718 + store i32 %t724, ptr %t717 br label %put278 put278: - %t729 = load ptr, ptr %t716 - %t730 = getelementptr inbounds ptr, ptr %t729, i32 %t717 - store ptr @.str10064, ptr %t730 - %t731 = add i32 %t717, 1 - store i32 %t731, ptr %t714 + %t731 = load ptr, ptr %t718 + %t732 = getelementptr inbounds ptr, ptr %t731, i32 %t719 + store ptr @.str10069, ptr %t732 + %t733 = add i32 %t719, 1 + store i32 %t733, ptr %t716 br label %ifend276 else275: - store ptr @.str10065, ptr %t490 - %t732 = load ptr, ptr %t498 - %t733 = getelementptr inbounds %LSlice, ptr %t732, i32 0, i32 1 - %t734 = getelementptr inbounds %LSlice, ptr %t732, i32 0, i32 2 - %t735 = getelementptr inbounds %LSlice, ptr %t732, i32 0, i32 0 - %t736 = load i32, ptr %t733 - %t737 = load i32, ptr %t734 - %t738 = icmp sge i32 %t736, %t737 - br i1 %t738, label %grow279, label %put280 + store ptr @.str10070, ptr %t490 + %t734 = load ptr, ptr %t498 + %t735 = getelementptr inbounds %LSlice, ptr %t734, i32 0, i32 1 + %t736 = getelementptr inbounds %LSlice, ptr %t734, i32 0, i32 2 + %t737 = getelementptr inbounds %LSlice, ptr %t734, i32 0, i32 0 + %t738 = load i32, ptr %t735 + %t739 = load i32, ptr %t736 + %t740 = icmp sge i32 %t738, %t739 + br i1 %t740, label %grow279, label %put280 grow279: - %t739 = mul i32 %t737, 2 - %t740 = icmp eq i32 %t737, 0 - %t741 = select i1 %t740, i32 8, i32 %t739 - %t742 = getelementptr ptr, ptr null, i32 1 - %t743 = ptrtoint ptr %t742 to i64 - %t744 = zext i32 %t741 to i64 - %t745 = mul i64 %t744, %t743 - %t746 = load ptr, ptr %t735 - %t747 = call ptr @realloc(ptr %t746, i64 %t745) - store ptr %t747, ptr %t735 - store i32 %t741, ptr %t734 + %t741 = mul i32 %t739, 2 + %t742 = icmp eq i32 %t739, 0 + %t743 = select i1 %t742, i32 8, i32 %t741 + %t744 = getelementptr ptr, ptr null, i32 1 + %t745 = ptrtoint ptr %t744 to i64 + %t746 = zext i32 %t743 to i64 + %t747 = mul i64 %t746, %t745 + %t748 = load ptr, ptr %t737 + %t749 = call ptr @realloc(ptr %t748, i64 %t747) + store ptr %t749, ptr %t737 + store i32 %t743, ptr %t736 br label %put280 put280: - %t748 = load ptr, ptr %t735 - %t749 = getelementptr inbounds ptr, ptr %t748, i32 %t736 - store ptr @.str10066, ptr %t749 - %t750 = add i32 %t736, 1 - store i32 %t750, ptr %t733 + %t750 = load ptr, ptr %t737 + %t751 = getelementptr inbounds ptr, ptr %t750, i32 %t738 + store ptr @.str10071, ptr %t751 + %t752 = add i32 %t738, 1 + store i32 %t752, ptr %t735 br label %ifend276 ifend276: br label %ifend273 ifend273: - %t751 = load ptr, ptr %t1 - %t752 = call i32 @lp_str_eq(ptr %t751, ptr @.str10067) - %t753 = icmp ne i32 %t752, 0 - br i1 %t753, label %then281, label %ifend283 + %t753 = load ptr, ptr %t1 + %t754 = call i32 @lp_str_eq(ptr %t753, ptr @.str10072) + %t755 = icmp ne i32 %t754, 0 + br i1 %t755, label %then281, label %ifend283 then281: - %t754 = load ptr, ptr %t2 - %t755 = call i32 @fn_first_arg_is_text(ptr %t754) - %t756 = icmp ne i32 %t755, 0 - br i1 %t756, label %then284, label %else285 + %t756 = load ptr, ptr %t2 + %t757 = call i32 @fn_first_arg_is_text(ptr %t756) + %t758 = icmp ne i32 %t757, 0 + br i1 %t758, label %then284, label %else285 then284: - store ptr @.str10068, ptr %t490 - %t757 = load ptr, ptr %t498 - %t758 = getelementptr inbounds %LSlice, ptr %t757, i32 0, i32 1 - %t759 = getelementptr inbounds %LSlice, ptr %t757, i32 0, i32 2 - %t760 = getelementptr inbounds %LSlice, ptr %t757, i32 0, i32 0 - %t761 = load i32, ptr %t758 - %t762 = load i32, ptr %t759 - %t763 = icmp sge i32 %t761, %t762 - br i1 %t763, label %grow287, label %put288 + store ptr @.str10073, ptr %t490 + %t759 = load ptr, ptr %t498 + %t760 = getelementptr inbounds %LSlice, ptr %t759, i32 0, i32 1 + %t761 = getelementptr inbounds %LSlice, ptr %t759, i32 0, i32 2 + %t762 = getelementptr inbounds %LSlice, ptr %t759, i32 0, i32 0 + %t763 = load i32, ptr %t760 + %t764 = load i32, ptr %t761 + %t765 = icmp sge i32 %t763, %t764 + br i1 %t765, label %grow287, label %put288 grow287: - %t764 = mul i32 %t762, 2 - %t765 = icmp eq i32 %t762, 0 - %t766 = select i1 %t765, i32 8, i32 %t764 - %t767 = getelementptr ptr, ptr null, i32 1 - %t768 = ptrtoint ptr %t767 to i64 - %t769 = zext i32 %t766 to i64 - %t770 = mul i64 %t769, %t768 - %t771 = load ptr, ptr %t760 - %t772 = call ptr @realloc(ptr %t771, i64 %t770) - store ptr %t772, ptr %t760 - store i32 %t766, ptr %t759 + %t766 = mul i32 %t764, 2 + %t767 = icmp eq i32 %t764, 0 + %t768 = select i1 %t767, i32 8, i32 %t766 + %t769 = getelementptr ptr, ptr null, i32 1 + %t770 = ptrtoint ptr %t769 to i64 + %t771 = zext i32 %t768 to i64 + %t772 = mul i64 %t771, %t770 + %t773 = load ptr, ptr %t762 + %t774 = call ptr @realloc(ptr %t773, i64 %t772) + store ptr %t774, ptr %t762 + store i32 %t768, ptr %t761 br label %put288 put288: - %t773 = load ptr, ptr %t760 - %t774 = getelementptr inbounds ptr, ptr %t773, i32 %t761 - store ptr @.str10069, ptr %t774 - %t775 = add i32 %t761, 1 - store i32 %t775, ptr %t758 + %t775 = load ptr, ptr %t762 + %t776 = getelementptr inbounds ptr, ptr %t775, i32 %t763 + store ptr @.str10074, ptr %t776 + %t777 = add i32 %t763, 1 + store i32 %t777, ptr %t760 br label %ifend286 else285: - store ptr @.str10070, ptr %t490 - %t776 = load ptr, ptr %t498 - %t777 = getelementptr inbounds %LSlice, ptr %t776, i32 0, i32 1 - %t778 = getelementptr inbounds %LSlice, ptr %t776, i32 0, i32 2 - %t779 = getelementptr inbounds %LSlice, ptr %t776, i32 0, i32 0 - %t780 = load i32, ptr %t777 - %t781 = load i32, ptr %t778 - %t782 = icmp sge i32 %t780, %t781 - br i1 %t782, label %grow289, label %put290 + store ptr @.str10075, ptr %t490 + %t778 = load ptr, ptr %t498 + %t779 = getelementptr inbounds %LSlice, ptr %t778, i32 0, i32 1 + %t780 = getelementptr inbounds %LSlice, ptr %t778, i32 0, i32 2 + %t781 = getelementptr inbounds %LSlice, ptr %t778, i32 0, i32 0 + %t782 = load i32, ptr %t779 + %t783 = load i32, ptr %t780 + %t784 = icmp sge i32 %t782, %t783 + br i1 %t784, label %grow289, label %put290 grow289: - %t783 = mul i32 %t781, 2 - %t784 = icmp eq i32 %t781, 0 - %t785 = select i1 %t784, i32 8, i32 %t783 - %t786 = getelementptr ptr, ptr null, i32 1 - %t787 = ptrtoint ptr %t786 to i64 - %t788 = zext i32 %t785 to i64 - %t789 = mul i64 %t788, %t787 - %t790 = load ptr, ptr %t779 - %t791 = call ptr @realloc(ptr %t790, i64 %t789) - store ptr %t791, ptr %t779 - store i32 %t785, ptr %t778 + %t785 = mul i32 %t783, 2 + %t786 = icmp eq i32 %t783, 0 + %t787 = select i1 %t786, i32 8, i32 %t785 + %t788 = getelementptr ptr, ptr null, i32 1 + %t789 = ptrtoint ptr %t788 to i64 + %t790 = zext i32 %t787 to i64 + %t791 = mul i64 %t790, %t789 + %t792 = load ptr, ptr %t781 + %t793 = call ptr @realloc(ptr %t792, i64 %t791) + store ptr %t793, ptr %t781 + store i32 %t787, ptr %t780 br label %put290 put290: - %t792 = load ptr, ptr %t779 - %t793 = getelementptr inbounds ptr, ptr %t792, i32 %t780 - store ptr @.str10071, ptr %t793 - %t794 = add i32 %t780, 1 - store i32 %t794, ptr %t777 + %t794 = load ptr, ptr %t781 + %t795 = getelementptr inbounds ptr, ptr %t794, i32 %t782 + store ptr @.str10076, ptr %t795 + %t796 = add i32 %t782, 1 + store i32 %t796, ptr %t779 br label %ifend286 ifend286: br label %ifend283 ifend283: br label %ifend270 ifend270: - %t795 = load ptr, ptr %t0 - %t796 = call i32 @lp_str_eq(ptr %t795, ptr @.str10072) - %t797 = icmp ne i32 %t796, 0 - br i1 %t797, label %then291, label %ifend293 + %t797 = load ptr, ptr %t0 + %t798 = call i32 @lp_str_eq(ptr %t797, ptr @.str10077) + %t799 = icmp ne i32 %t798, 0 + br i1 %t799, label %then291, label %ifend293 then291: - %t798 = load ptr, ptr %t1 - %t799 = call i32 @lp_str_eq(ptr %t798, ptr @.str10073) - %t800 = icmp ne i32 %t799, 0 - br i1 %t800, label %then294, label %ifend296 + %t800 = load ptr, ptr %t1 + %t801 = call i32 @lp_str_eq(ptr %t800, ptr @.str10078) + %t802 = icmp ne i32 %t801, 0 + br i1 %t802, label %then294, label %ifend296 then294: - store ptr @.str10074, ptr %t490 - %t801 = load ptr, ptr %t498 - %t802 = getelementptr inbounds %LSlice, ptr %t801, i32 0, i32 1 - %t803 = getelementptr inbounds %LSlice, ptr %t801, i32 0, i32 2 - %t804 = getelementptr inbounds %LSlice, ptr %t801, i32 0, i32 0 - %t805 = load i32, ptr %t802 - %t806 = load i32, ptr %t803 - %t807 = icmp sge i32 %t805, %t806 - br i1 %t807, label %grow297, label %put298 + store ptr @.str10079, ptr %t490 + %t803 = load ptr, ptr %t498 + %t804 = getelementptr inbounds %LSlice, ptr %t803, i32 0, i32 1 + %t805 = getelementptr inbounds %LSlice, ptr %t803, i32 0, i32 2 + %t806 = getelementptr inbounds %LSlice, ptr %t803, i32 0, i32 0 + %t807 = load i32, ptr %t804 + %t808 = load i32, ptr %t805 + %t809 = icmp sge i32 %t807, %t808 + br i1 %t809, label %grow297, label %put298 grow297: - %t808 = mul i32 %t806, 2 - %t809 = icmp eq i32 %t806, 0 - %t810 = select i1 %t809, i32 8, i32 %t808 - %t811 = getelementptr ptr, ptr null, i32 1 - %t812 = ptrtoint ptr %t811 to i64 - %t813 = zext i32 %t810 to i64 - %t814 = mul i64 %t813, %t812 - %t815 = load ptr, ptr %t804 - %t816 = call ptr @realloc(ptr %t815, i64 %t814) - store ptr %t816, ptr %t804 - store i32 %t810, ptr %t803 + %t810 = mul i32 %t808, 2 + %t811 = icmp eq i32 %t808, 0 + %t812 = select i1 %t811, i32 8, i32 %t810 + %t813 = getelementptr ptr, ptr null, i32 1 + %t814 = ptrtoint ptr %t813 to i64 + %t815 = zext i32 %t812 to i64 + %t816 = mul i64 %t815, %t814 + %t817 = load ptr, ptr %t806 + %t818 = call ptr @realloc(ptr %t817, i64 %t816) + store ptr %t818, ptr %t806 + store i32 %t812, ptr %t805 br label %put298 put298: - %t817 = load ptr, ptr %t804 - %t818 = getelementptr inbounds ptr, ptr %t817, i32 %t805 - store ptr @.str10075, ptr %t818 - %t819 = add i32 %t805, 1 - store i32 %t819, ptr %t802 - %t820 = load ptr, ptr %t498 - %t821 = getelementptr inbounds %LSlice, ptr %t820, i32 0, i32 1 - %t822 = getelementptr inbounds %LSlice, ptr %t820, i32 0, i32 2 - %t823 = getelementptr inbounds %LSlice, ptr %t820, i32 0, i32 0 - %t824 = load i32, ptr %t821 - %t825 = load i32, ptr %t822 - %t826 = icmp sge i32 %t824, %t825 - br i1 %t826, label %grow299, label %put300 + %t819 = load ptr, ptr %t806 + %t820 = getelementptr inbounds ptr, ptr %t819, i32 %t807 + store ptr @.str10080, ptr %t820 + %t821 = add i32 %t807, 1 + store i32 %t821, ptr %t804 + %t822 = load ptr, ptr %t498 + %t823 = getelementptr inbounds %LSlice, ptr %t822, i32 0, i32 1 + %t824 = getelementptr inbounds %LSlice, ptr %t822, i32 0, i32 2 + %t825 = getelementptr inbounds %LSlice, ptr %t822, i32 0, i32 0 + %t826 = load i32, ptr %t823 + %t827 = load i32, ptr %t824 + %t828 = icmp sge i32 %t826, %t827 + br i1 %t828, label %grow299, label %put300 grow299: - %t827 = mul i32 %t825, 2 - %t828 = icmp eq i32 %t825, 0 - %t829 = select i1 %t828, i32 8, i32 %t827 - %t830 = getelementptr ptr, ptr null, i32 1 - %t831 = ptrtoint ptr %t830 to i64 - %t832 = zext i32 %t829 to i64 - %t833 = mul i64 %t832, %t831 - %t834 = load ptr, ptr %t823 - %t835 = call ptr @realloc(ptr %t834, i64 %t833) - store ptr %t835, ptr %t823 - store i32 %t829, ptr %t822 + %t829 = mul i32 %t827, 2 + %t830 = icmp eq i32 %t827, 0 + %t831 = select i1 %t830, i32 8, i32 %t829 + %t832 = getelementptr ptr, ptr null, i32 1 + %t833 = ptrtoint ptr %t832 to i64 + %t834 = zext i32 %t831 to i64 + %t835 = mul i64 %t834, %t833 + %t836 = load ptr, ptr %t825 + %t837 = call ptr @realloc(ptr %t836, i64 %t835) + store ptr %t837, ptr %t825 + store i32 %t831, ptr %t824 br label %put300 put300: - %t836 = load ptr, ptr %t823 - %t837 = getelementptr inbounds ptr, ptr %t836, i32 %t824 - store ptr @.str10076, ptr %t837 - %t838 = add i32 %t824, 1 - store i32 %t838, ptr %t821 - %t839 = load ptr, ptr %t498 - %t840 = getelementptr inbounds %LSlice, ptr %t839, i32 0, i32 1 - %t841 = getelementptr inbounds %LSlice, ptr %t839, i32 0, i32 2 - %t842 = getelementptr inbounds %LSlice, ptr %t839, i32 0, i32 0 - %t843 = load i32, ptr %t840 - %t844 = load i32, ptr %t841 - %t845 = icmp sge i32 %t843, %t844 - br i1 %t845, label %grow301, label %put302 + %t838 = load ptr, ptr %t825 + %t839 = getelementptr inbounds ptr, ptr %t838, i32 %t826 + store ptr @.str10081, ptr %t839 + %t840 = add i32 %t826, 1 + store i32 %t840, ptr %t823 + %t841 = load ptr, ptr %t498 + %t842 = getelementptr inbounds %LSlice, ptr %t841, i32 0, i32 1 + %t843 = getelementptr inbounds %LSlice, ptr %t841, i32 0, i32 2 + %t844 = getelementptr inbounds %LSlice, ptr %t841, i32 0, i32 0 + %t845 = load i32, ptr %t842 + %t846 = load i32, ptr %t843 + %t847 = icmp sge i32 %t845, %t846 + br i1 %t847, label %grow301, label %put302 grow301: - %t846 = mul i32 %t844, 2 - %t847 = icmp eq i32 %t844, 0 - %t848 = select i1 %t847, i32 8, i32 %t846 - %t849 = getelementptr ptr, ptr null, i32 1 - %t850 = ptrtoint ptr %t849 to i64 - %t851 = zext i32 %t848 to i64 - %t852 = mul i64 %t851, %t850 - %t853 = load ptr, ptr %t842 - %t854 = call ptr @realloc(ptr %t853, i64 %t852) - store ptr %t854, ptr %t842 - store i32 %t848, ptr %t841 + %t848 = mul i32 %t846, 2 + %t849 = icmp eq i32 %t846, 0 + %t850 = select i1 %t849, i32 8, i32 %t848 + %t851 = getelementptr ptr, ptr null, i32 1 + %t852 = ptrtoint ptr %t851 to i64 + %t853 = zext i32 %t850 to i64 + %t854 = mul i64 %t853, %t852 + %t855 = load ptr, ptr %t844 + %t856 = call ptr @realloc(ptr %t855, i64 %t854) + store ptr %t856, ptr %t844 + store i32 %t850, ptr %t843 br label %put302 put302: - %t855 = load ptr, ptr %t842 - %t856 = getelementptr inbounds ptr, ptr %t855, i32 %t843 - store ptr @.str10077, ptr %t856 - %t857 = add i32 %t843, 1 - store i32 %t857, ptr %t840 - %t858 = load ptr, ptr %t2 - %t859 = getelementptr inbounds %Cmp_Node, ptr %t858, i32 0, i32 7 - %t860 = load ptr, ptr %t859 - %t861 = getelementptr inbounds %LSlice, ptr %t860, i32 0, i32 1 - %t862 = load i32, ptr %t861 - %t863 = icmp sgt i32 %t862, 1 - %t864 = zext i1 %t863 to i32 - %t865 = icmp ne i32 %t864, 0 - br i1 %t865, label %then303, label %ifend305 + %t857 = load ptr, ptr %t844 + %t858 = getelementptr inbounds ptr, ptr %t857, i32 %t845 + store ptr @.str10082, ptr %t858 + %t859 = add i32 %t845, 1 + store i32 %t859, ptr %t842 + %t860 = load ptr, ptr %t2 + %t861 = getelementptr inbounds %Cmp_Node, ptr %t860, i32 0, i32 7 + %t862 = load ptr, ptr %t861 + %t863 = getelementptr inbounds %LSlice, ptr %t862, i32 0, i32 1 + %t864 = load i32, ptr %t863 + %t865 = icmp sgt i32 %t864, 1 + %t866 = zext i1 %t865 to i32 + %t867 = icmp ne i32 %t866, 0 + br i1 %t867, label %then303, label %ifend305 then303: - %t866 = load ptr, ptr %t2 - %t867 = getelementptr inbounds %Cmp_Node, ptr %t866, i32 0, i32 7 - %t868 = load ptr, ptr %t867 - %t869 = getelementptr inbounds %LSlice, ptr %t868, i32 0, i32 0 + %t868 = load ptr, ptr %t2 + %t869 = getelementptr inbounds %Cmp_Node, ptr %t868, i32 0, i32 7 %t870 = load ptr, ptr %t869 - %t871 = getelementptr inbounds %LSlice, ptr %t868, i32 0, i32 1 - %t872 = load i32, ptr %t871 - %t873 = icmp ult i32 1, %t872 - br i1 %t873, label %ixok306, label %ixbad307 + %t871 = getelementptr inbounds %LSlice, ptr %t870, i32 0, i32 0 + %t872 = load ptr, ptr %t871 + %t873 = getelementptr inbounds %LSlice, ptr %t870, i32 0, i32 1 + %t874 = load i32, ptr %t873 + %t875 = icmp ult i32 1, %t874 + br i1 %t875, label %ixok306, label %ixbad307 ixbad307: - %t874 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t874, ptr @.fmt_bounds, ptr @.str10078, i32 1, i32 %t872) + %t876 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t876, ptr @.fmt_bounds, ptr @.str10083, i32 1, i32 %t874) call void @exit(i32 1) unreachable ixok306: - %t875 = getelementptr inbounds ptr, ptr %t870, i32 1 - %t876 = load ptr, ptr %t875 - call void @fn_check_worker_ref(ptr %t876) + %t877 = getelementptr inbounds ptr, ptr %t872, i32 1 + %t878 = load ptr, ptr %t877 + call void @fn_check_worker_ref(ptr %t878) br label %ifend305 ifend305: br label %ifend296 ifend296: br label %ifend293 ifend293: - %t877 = load ptr, ptr %t0 - %t878 = call i32 @lp_str_eq(ptr %t877, ptr @.str10079) - %t879 = icmp ne i32 %t878, 0 - br i1 %t879, label %then308, label %ifend310 + %t879 = load ptr, ptr %t0 + %t880 = call i32 @lp_str_eq(ptr %t879, ptr @.str10084) + %t881 = icmp ne i32 %t880, 0 + br i1 %t881, label %then308, label %ifend310 then308: - %t880 = load ptr, ptr %t1 - %t881 = call i32 @lp_str_eq(ptr %t880, ptr @.str10080) - %t882 = icmp ne i32 %t881, 0 - br i1 %t882, label %then311, label %ifend313 + %t882 = load ptr, ptr %t1 + %t883 = call i32 @lp_str_eq(ptr %t882, ptr @.str10085) + %t884 = icmp ne i32 %t883, 0 + br i1 %t884, label %then311, label %ifend313 then311: - store ptr @.str10081, ptr %t490 - %t883 = load ptr, ptr %t498 - %t884 = getelementptr inbounds %LSlice, ptr %t883, i32 0, i32 1 - %t885 = getelementptr inbounds %LSlice, ptr %t883, i32 0, i32 2 - %t886 = getelementptr inbounds %LSlice, ptr %t883, i32 0, i32 0 - %t887 = load i32, ptr %t884 - %t888 = load i32, ptr %t885 - %t889 = icmp sge i32 %t887, %t888 - br i1 %t889, label %grow314, label %put315 + store ptr @.str10086, ptr %t490 + %t885 = load ptr, ptr %t498 + %t886 = getelementptr inbounds %LSlice, ptr %t885, i32 0, i32 1 + %t887 = getelementptr inbounds %LSlice, ptr %t885, i32 0, i32 2 + %t888 = getelementptr inbounds %LSlice, ptr %t885, i32 0, i32 0 + %t889 = load i32, ptr %t886 + %t890 = load i32, ptr %t887 + %t891 = icmp sge i32 %t889, %t890 + br i1 %t891, label %grow314, label %put315 grow314: - %t890 = mul i32 %t888, 2 - %t891 = icmp eq i32 %t888, 0 - %t892 = select i1 %t891, i32 8, i32 %t890 - %t893 = getelementptr ptr, ptr null, i32 1 - %t894 = ptrtoint ptr %t893 to i64 - %t895 = zext i32 %t892 to i64 - %t896 = mul i64 %t895, %t894 - %t897 = load ptr, ptr %t886 - %t898 = call ptr @realloc(ptr %t897, i64 %t896) - store ptr %t898, ptr %t886 - store i32 %t892, ptr %t885 + %t892 = mul i32 %t890, 2 + %t893 = icmp eq i32 %t890, 0 + %t894 = select i1 %t893, i32 8, i32 %t892 + %t895 = getelementptr ptr, ptr null, i32 1 + %t896 = ptrtoint ptr %t895 to i64 + %t897 = zext i32 %t894 to i64 + %t898 = mul i64 %t897, %t896 + %t899 = load ptr, ptr %t888 + %t900 = call ptr @realloc(ptr %t899, i64 %t898) + store ptr %t900, ptr %t888 + store i32 %t894, ptr %t887 br label %put315 put315: - %t899 = load ptr, ptr %t886 - %t900 = getelementptr inbounds ptr, ptr %t899, i32 %t887 - store ptr @.str10082, ptr %t900 - %t901 = add i32 %t887, 1 - store i32 %t901, ptr %t884 - %t902 = load ptr, ptr %t498 - %t903 = getelementptr inbounds %LSlice, ptr %t902, i32 0, i32 1 - %t904 = getelementptr inbounds %LSlice, ptr %t902, i32 0, i32 2 - %t905 = getelementptr inbounds %LSlice, ptr %t902, i32 0, i32 0 - %t906 = load i32, ptr %t903 - %t907 = load i32, ptr %t904 - %t908 = icmp sge i32 %t906, %t907 - br i1 %t908, label %grow316, label %put317 + %t901 = load ptr, ptr %t888 + %t902 = getelementptr inbounds ptr, ptr %t901, i32 %t889 + store ptr @.str10087, ptr %t902 + %t903 = add i32 %t889, 1 + store i32 %t903, ptr %t886 + %t904 = load ptr, ptr %t498 + %t905 = getelementptr inbounds %LSlice, ptr %t904, i32 0, i32 1 + %t906 = getelementptr inbounds %LSlice, ptr %t904, i32 0, i32 2 + %t907 = getelementptr inbounds %LSlice, ptr %t904, i32 0, i32 0 + %t908 = load i32, ptr %t905 + %t909 = load i32, ptr %t906 + %t910 = icmp sge i32 %t908, %t909 + br i1 %t910, label %grow316, label %put317 grow316: - %t909 = mul i32 %t907, 2 - %t910 = icmp eq i32 %t907, 0 - %t911 = select i1 %t910, i32 8, i32 %t909 - %t912 = getelementptr ptr, ptr null, i32 1 - %t913 = ptrtoint ptr %t912 to i64 - %t914 = zext i32 %t911 to i64 - %t915 = mul i64 %t914, %t913 - %t916 = load ptr, ptr %t905 - %t917 = call ptr @realloc(ptr %t916, i64 %t915) - store ptr %t917, ptr %t905 - store i32 %t911, ptr %t904 + %t911 = mul i32 %t909, 2 + %t912 = icmp eq i32 %t909, 0 + %t913 = select i1 %t912, i32 8, i32 %t911 + %t914 = getelementptr ptr, ptr null, i32 1 + %t915 = ptrtoint ptr %t914 to i64 + %t916 = zext i32 %t913 to i64 + %t917 = mul i64 %t916, %t915 + %t918 = load ptr, ptr %t907 + %t919 = call ptr @realloc(ptr %t918, i64 %t917) + store ptr %t919, ptr %t907 + store i32 %t913, ptr %t906 br label %put317 put317: - %t918 = load ptr, ptr %t905 - %t919 = getelementptr inbounds ptr, ptr %t918, i32 %t906 - store ptr @.str10083, ptr %t919 - %t920 = add i32 %t906, 1 - store i32 %t920, ptr %t903 - %t921 = load ptr, ptr %t498 - %t922 = getelementptr inbounds %LSlice, ptr %t921, i32 0, i32 1 - %t923 = getelementptr inbounds %LSlice, ptr %t921, i32 0, i32 2 - %t924 = getelementptr inbounds %LSlice, ptr %t921, i32 0, i32 0 - %t925 = load i32, ptr %t922 - %t926 = load i32, ptr %t923 - %t927 = icmp sge i32 %t925, %t926 - br i1 %t927, label %grow318, label %put319 + %t920 = load ptr, ptr %t907 + %t921 = getelementptr inbounds ptr, ptr %t920, i32 %t908 + store ptr @.str10088, ptr %t921 + %t922 = add i32 %t908, 1 + store i32 %t922, ptr %t905 + %t923 = load ptr, ptr %t498 + %t924 = getelementptr inbounds %LSlice, ptr %t923, i32 0, i32 1 + %t925 = getelementptr inbounds %LSlice, ptr %t923, i32 0, i32 2 + %t926 = getelementptr inbounds %LSlice, ptr %t923, i32 0, i32 0 + %t927 = load i32, ptr %t924 + %t928 = load i32, ptr %t925 + %t929 = icmp sge i32 %t927, %t928 + br i1 %t929, label %grow318, label %put319 grow318: - %t928 = mul i32 %t926, 2 - %t929 = icmp eq i32 %t926, 0 - %t930 = select i1 %t929, i32 8, i32 %t928 - %t931 = getelementptr ptr, ptr null, i32 1 - %t932 = ptrtoint ptr %t931 to i64 - %t933 = zext i32 %t930 to i64 - %t934 = mul i64 %t933, %t932 - %t935 = load ptr, ptr %t924 - %t936 = call ptr @realloc(ptr %t935, i64 %t934) - store ptr %t936, ptr %t924 - store i32 %t930, ptr %t923 + %t930 = mul i32 %t928, 2 + %t931 = icmp eq i32 %t928, 0 + %t932 = select i1 %t931, i32 8, i32 %t930 + %t933 = getelementptr ptr, ptr null, i32 1 + %t934 = ptrtoint ptr %t933 to i64 + %t935 = zext i32 %t932 to i64 + %t936 = mul i64 %t935, %t934 + %t937 = load ptr, ptr %t926 + %t938 = call ptr @realloc(ptr %t937, i64 %t936) + store ptr %t938, ptr %t926 + store i32 %t932, ptr %t925 br label %put319 put319: - %t937 = load ptr, ptr %t924 - %t938 = getelementptr inbounds ptr, ptr %t937, i32 %t925 - store ptr @.str10084, ptr %t938 - %t939 = add i32 %t925, 1 - store i32 %t939, ptr %t922 - %t940 = load ptr, ptr %t498 - %t941 = getelementptr inbounds %LSlice, ptr %t940, i32 0, i32 1 - %t942 = getelementptr inbounds %LSlice, ptr %t940, i32 0, i32 2 - %t943 = getelementptr inbounds %LSlice, ptr %t940, i32 0, i32 0 - %t944 = load i32, ptr %t941 - %t945 = load i32, ptr %t942 - %t946 = icmp sge i32 %t944, %t945 - br i1 %t946, label %grow320, label %put321 + %t939 = load ptr, ptr %t926 + %t940 = getelementptr inbounds ptr, ptr %t939, i32 %t927 + store ptr @.str10089, ptr %t940 + %t941 = add i32 %t927, 1 + store i32 %t941, ptr %t924 + %t942 = load ptr, ptr %t498 + %t943 = getelementptr inbounds %LSlice, ptr %t942, i32 0, i32 1 + %t944 = getelementptr inbounds %LSlice, ptr %t942, i32 0, i32 2 + %t945 = getelementptr inbounds %LSlice, ptr %t942, i32 0, i32 0 + %t946 = load i32, ptr %t943 + %t947 = load i32, ptr %t944 + %t948 = icmp sge i32 %t946, %t947 + br i1 %t948, label %grow320, label %put321 grow320: - %t947 = mul i32 %t945, 2 - %t948 = icmp eq i32 %t945, 0 - %t949 = select i1 %t948, i32 8, i32 %t947 - %t950 = getelementptr ptr, ptr null, i32 1 - %t951 = ptrtoint ptr %t950 to i64 - %t952 = zext i32 %t949 to i64 - %t953 = mul i64 %t952, %t951 - %t954 = load ptr, ptr %t943 - %t955 = call ptr @realloc(ptr %t954, i64 %t953) - store ptr %t955, ptr %t943 - store i32 %t949, ptr %t942 + %t949 = mul i32 %t947, 2 + %t950 = icmp eq i32 %t947, 0 + %t951 = select i1 %t950, i32 8, i32 %t949 + %t952 = getelementptr ptr, ptr null, i32 1 + %t953 = ptrtoint ptr %t952 to i64 + %t954 = zext i32 %t951 to i64 + %t955 = mul i64 %t954, %t953 + %t956 = load ptr, ptr %t945 + %t957 = call ptr @realloc(ptr %t956, i64 %t955) + store ptr %t957, ptr %t945 + store i32 %t951, ptr %t944 br label %put321 put321: - %t956 = load ptr, ptr %t943 - %t957 = getelementptr inbounds ptr, ptr %t956, i32 %t944 - store ptr @.str10085, ptr %t957 - %t958 = add i32 %t944, 1 - store i32 %t958, ptr %t941 + %t958 = load ptr, ptr %t945 + %t959 = getelementptr inbounds ptr, ptr %t958, i32 %t946 + store ptr @.str10090, ptr %t959 + %t960 = add i32 %t946, 1 + store i32 %t960, ptr %t943 br label %ifend313 ifend313: - %t959 = load ptr, ptr %t1 - %t960 = call i32 @lp_str_eq(ptr %t959, ptr @.str10086) - %t961 = icmp ne i32 %t960, 0 - br i1 %t961, label %then322, label %ifend324 + %t961 = load ptr, ptr %t1 + %t962 = call i32 @lp_str_eq(ptr %t961, ptr @.str10091) + %t963 = icmp ne i32 %t962, 0 + br i1 %t963, label %then322, label %ifend324 then322: - store ptr @.str10087, ptr %t490 - %t962 = load ptr, ptr %t498 - %t963 = getelementptr inbounds %LSlice, ptr %t962, i32 0, i32 1 - %t964 = getelementptr inbounds %LSlice, ptr %t962, i32 0, i32 2 - %t965 = getelementptr inbounds %LSlice, ptr %t962, i32 0, i32 0 - %t966 = load i32, ptr %t963 - %t967 = load i32, ptr %t964 - %t968 = icmp sge i32 %t966, %t967 - br i1 %t968, label %grow325, label %put326 + store ptr @.str10092, ptr %t490 + %t964 = load ptr, ptr %t498 + %t965 = getelementptr inbounds %LSlice, ptr %t964, i32 0, i32 1 + %t966 = getelementptr inbounds %LSlice, ptr %t964, i32 0, i32 2 + %t967 = getelementptr inbounds %LSlice, ptr %t964, i32 0, i32 0 + %t968 = load i32, ptr %t965 + %t969 = load i32, ptr %t966 + %t970 = icmp sge i32 %t968, %t969 + br i1 %t970, label %grow325, label %put326 grow325: - %t969 = mul i32 %t967, 2 - %t970 = icmp eq i32 %t967, 0 - %t971 = select i1 %t970, i32 8, i32 %t969 - %t972 = getelementptr ptr, ptr null, i32 1 - %t973 = ptrtoint ptr %t972 to i64 - %t974 = zext i32 %t971 to i64 - %t975 = mul i64 %t974, %t973 - %t976 = load ptr, ptr %t965 - %t977 = call ptr @realloc(ptr %t976, i64 %t975) - store ptr %t977, ptr %t965 - store i32 %t971, ptr %t964 + %t971 = mul i32 %t969, 2 + %t972 = icmp eq i32 %t969, 0 + %t973 = select i1 %t972, i32 8, i32 %t971 + %t974 = getelementptr ptr, ptr null, i32 1 + %t975 = ptrtoint ptr %t974 to i64 + %t976 = zext i32 %t973 to i64 + %t977 = mul i64 %t976, %t975 + %t978 = load ptr, ptr %t967 + %t979 = call ptr @realloc(ptr %t978, i64 %t977) + store ptr %t979, ptr %t967 + store i32 %t973, ptr %t966 br label %put326 put326: - %t978 = load ptr, ptr %t965 - %t979 = getelementptr inbounds ptr, ptr %t978, i32 %t966 - store ptr @.str10088, ptr %t979 - %t980 = add i32 %t966, 1 - store i32 %t980, ptr %t963 - %t981 = load ptr, ptr %t498 - %t982 = getelementptr inbounds %LSlice, ptr %t981, i32 0, i32 1 - %t983 = getelementptr inbounds %LSlice, ptr %t981, i32 0, i32 2 - %t984 = getelementptr inbounds %LSlice, ptr %t981, i32 0, i32 0 - %t985 = load i32, ptr %t982 - %t986 = load i32, ptr %t983 - %t987 = icmp sge i32 %t985, %t986 - br i1 %t987, label %grow327, label %put328 + %t980 = load ptr, ptr %t967 + %t981 = getelementptr inbounds ptr, ptr %t980, i32 %t968 + store ptr @.str10093, ptr %t981 + %t982 = add i32 %t968, 1 + store i32 %t982, ptr %t965 + %t983 = load ptr, ptr %t498 + %t984 = getelementptr inbounds %LSlice, ptr %t983, i32 0, i32 1 + %t985 = getelementptr inbounds %LSlice, ptr %t983, i32 0, i32 2 + %t986 = getelementptr inbounds %LSlice, ptr %t983, i32 0, i32 0 + %t987 = load i32, ptr %t984 + %t988 = load i32, ptr %t985 + %t989 = icmp sge i32 %t987, %t988 + br i1 %t989, label %grow327, label %put328 grow327: - %t988 = mul i32 %t986, 2 - %t989 = icmp eq i32 %t986, 0 - %t990 = select i1 %t989, i32 8, i32 %t988 - %t991 = getelementptr ptr, ptr null, i32 1 - %t992 = ptrtoint ptr %t991 to i64 - %t993 = zext i32 %t990 to i64 - %t994 = mul i64 %t993, %t992 - %t995 = load ptr, ptr %t984 - %t996 = call ptr @realloc(ptr %t995, i64 %t994) - store ptr %t996, ptr %t984 - store i32 %t990, ptr %t983 + %t990 = mul i32 %t988, 2 + %t991 = icmp eq i32 %t988, 0 + %t992 = select i1 %t991, i32 8, i32 %t990 + %t993 = getelementptr ptr, ptr null, i32 1 + %t994 = ptrtoint ptr %t993 to i64 + %t995 = zext i32 %t992 to i64 + %t996 = mul i64 %t995, %t994 + %t997 = load ptr, ptr %t986 + %t998 = call ptr @realloc(ptr %t997, i64 %t996) + store ptr %t998, ptr %t986 + store i32 %t992, ptr %t985 br label %put328 put328: - %t997 = load ptr, ptr %t984 - %t998 = getelementptr inbounds ptr, ptr %t997, i32 %t985 - store ptr @.str10089, ptr %t998 - %t999 = add i32 %t985, 1 - store i32 %t999, ptr %t982 + %t999 = load ptr, ptr %t986 + %t1000 = getelementptr inbounds ptr, ptr %t999, i32 %t987 + store ptr @.str10094, ptr %t1000 + %t1001 = add i32 %t987, 1 + store i32 %t1001, ptr %t984 br label %ifend324 ifend324: - %t1000 = load ptr, ptr %t1 - %t1001 = call i32 @lp_str_eq(ptr %t1000, ptr @.str10090) - %t1002 = icmp ne i32 %t1001, 0 - br i1 %t1002, label %then329, label %ifend331 + %t1002 = load ptr, ptr %t1 + %t1003 = call i32 @lp_str_eq(ptr %t1002, ptr @.str10095) + %t1004 = icmp ne i32 %t1003, 0 + br i1 %t1004, label %then329, label %ifend331 then329: - store ptr @.str10091, ptr %t490 - %t1003 = load ptr, ptr %t498 - %t1004 = getelementptr inbounds %LSlice, ptr %t1003, i32 0, i32 1 - %t1005 = getelementptr inbounds %LSlice, ptr %t1003, i32 0, i32 2 - %t1006 = getelementptr inbounds %LSlice, ptr %t1003, i32 0, i32 0 - %t1007 = load i32, ptr %t1004 - %t1008 = load i32, ptr %t1005 - %t1009 = icmp sge i32 %t1007, %t1008 - br i1 %t1009, label %grow332, label %put333 + store ptr @.str10096, ptr %t490 + %t1005 = load ptr, ptr %t498 + %t1006 = getelementptr inbounds %LSlice, ptr %t1005, i32 0, i32 1 + %t1007 = getelementptr inbounds %LSlice, ptr %t1005, i32 0, i32 2 + %t1008 = getelementptr inbounds %LSlice, ptr %t1005, i32 0, i32 0 + %t1009 = load i32, ptr %t1006 + %t1010 = load i32, ptr %t1007 + %t1011 = icmp sge i32 %t1009, %t1010 + br i1 %t1011, label %grow332, label %put333 grow332: - %t1010 = mul i32 %t1008, 2 - %t1011 = icmp eq i32 %t1008, 0 - %t1012 = select i1 %t1011, i32 8, i32 %t1010 - %t1013 = getelementptr ptr, ptr null, i32 1 - %t1014 = ptrtoint ptr %t1013 to i64 - %t1015 = zext i32 %t1012 to i64 - %t1016 = mul i64 %t1015, %t1014 - %t1017 = load ptr, ptr %t1006 - %t1018 = call ptr @realloc(ptr %t1017, i64 %t1016) - store ptr %t1018, ptr %t1006 - store i32 %t1012, ptr %t1005 + %t1012 = mul i32 %t1010, 2 + %t1013 = icmp eq i32 %t1010, 0 + %t1014 = select i1 %t1013, i32 8, i32 %t1012 + %t1015 = getelementptr ptr, ptr null, i32 1 + %t1016 = ptrtoint ptr %t1015 to i64 + %t1017 = zext i32 %t1014 to i64 + %t1018 = mul i64 %t1017, %t1016 + %t1019 = load ptr, ptr %t1008 + %t1020 = call ptr @realloc(ptr %t1019, i64 %t1018) + store ptr %t1020, ptr %t1008 + store i32 %t1014, ptr %t1007 br label %put333 put333: - %t1019 = load ptr, ptr %t1006 - %t1020 = getelementptr inbounds ptr, ptr %t1019, i32 %t1007 - store ptr @.str10092, ptr %t1020 - %t1021 = add i32 %t1007, 1 - store i32 %t1021, ptr %t1004 + %t1021 = load ptr, ptr %t1008 + %t1022 = getelementptr inbounds ptr, ptr %t1021, i32 %t1009 + store ptr @.str10097, ptr %t1022 + %t1023 = add i32 %t1009, 1 + store i32 %t1023, ptr %t1006 br label %ifend331 ifend331: - %t1022 = load ptr, ptr %t1 - %t1023 = call i32 @lp_str_eq(ptr %t1022, ptr @.str10093) - %t1024 = icmp ne i32 %t1023, 0 - br i1 %t1024, label %then334, label %ifend336 + %t1024 = load ptr, ptr %t1 + %t1025 = call i32 @lp_str_eq(ptr %t1024, ptr @.str10098) + %t1026 = icmp ne i32 %t1025, 0 + br i1 %t1026, label %then334, label %ifend336 then334: - %t1025 = load ptr, ptr %t2 - %t1026 = getelementptr inbounds %Cmp_Node, ptr %t1025, i32 0, i32 7 - %t1027 = load ptr, ptr %t1026 - %t1028 = getelementptr inbounds %LSlice, ptr %t1027, i32 0, i32 1 - %t1029 = load i32, ptr %t1028 - %t1030 = icmp eq i32 %t1029, 2 - %t1031 = zext i1 %t1030 to i32 - %t1032 = icmp ne i32 %t1031, 0 - br i1 %t1032, label %then337, label %else338 + %t1027 = load ptr, ptr %t2 + %t1028 = getelementptr inbounds %Cmp_Node, ptr %t1027, i32 0, i32 7 + %t1029 = load ptr, ptr %t1028 + %t1030 = getelementptr inbounds %LSlice, ptr %t1029, i32 0, i32 1 + %t1031 = load i32, ptr %t1030 + %t1032 = icmp eq i32 %t1031, 2 + %t1033 = zext i1 %t1032 to i32 + %t1034 = icmp ne i32 %t1033, 0 + br i1 %t1034, label %then337, label %else338 then337: - store ptr @.str10094, ptr %t490 - %t1033 = load ptr, ptr %t498 - %t1034 = getelementptr inbounds %LSlice, ptr %t1033, i32 0, i32 1 - %t1035 = getelementptr inbounds %LSlice, ptr %t1033, i32 0, i32 2 - %t1036 = getelementptr inbounds %LSlice, ptr %t1033, i32 0, i32 0 - %t1037 = load i32, ptr %t1034 - %t1038 = load i32, ptr %t1035 - %t1039 = icmp sge i32 %t1037, %t1038 - br i1 %t1039, label %grow340, label %put341 + store ptr @.str10099, ptr %t490 + %t1035 = load ptr, ptr %t498 + %t1036 = getelementptr inbounds %LSlice, ptr %t1035, i32 0, i32 1 + %t1037 = getelementptr inbounds %LSlice, ptr %t1035, i32 0, i32 2 + %t1038 = getelementptr inbounds %LSlice, ptr %t1035, i32 0, i32 0 + %t1039 = load i32, ptr %t1036 + %t1040 = load i32, ptr %t1037 + %t1041 = icmp sge i32 %t1039, %t1040 + br i1 %t1041, label %grow340, label %put341 grow340: - %t1040 = mul i32 %t1038, 2 - %t1041 = icmp eq i32 %t1038, 0 - %t1042 = select i1 %t1041, i32 8, i32 %t1040 - %t1043 = getelementptr ptr, ptr null, i32 1 - %t1044 = ptrtoint ptr %t1043 to i64 - %t1045 = zext i32 %t1042 to i64 - %t1046 = mul i64 %t1045, %t1044 - %t1047 = load ptr, ptr %t1036 - %t1048 = call ptr @realloc(ptr %t1047, i64 %t1046) - store ptr %t1048, ptr %t1036 - store i32 %t1042, ptr %t1035 + %t1042 = mul i32 %t1040, 2 + %t1043 = icmp eq i32 %t1040, 0 + %t1044 = select i1 %t1043, i32 8, i32 %t1042 + %t1045 = getelementptr ptr, ptr null, i32 1 + %t1046 = ptrtoint ptr %t1045 to i64 + %t1047 = zext i32 %t1044 to i64 + %t1048 = mul i64 %t1047, %t1046 + %t1049 = load ptr, ptr %t1038 + %t1050 = call ptr @realloc(ptr %t1049, i64 %t1048) + store ptr %t1050, ptr %t1038 + store i32 %t1044, ptr %t1037 br label %put341 put341: - %t1049 = load ptr, ptr %t1036 - %t1050 = getelementptr inbounds ptr, ptr %t1049, i32 %t1037 - store ptr @.str10095, ptr %t1050 - %t1051 = add i32 %t1037, 1 - store i32 %t1051, ptr %t1034 - %t1052 = load ptr, ptr %t498 - %t1053 = getelementptr inbounds %LSlice, ptr %t1052, i32 0, i32 1 - %t1054 = getelementptr inbounds %LSlice, ptr %t1052, i32 0, i32 2 - %t1055 = getelementptr inbounds %LSlice, ptr %t1052, i32 0, i32 0 - %t1056 = load i32, ptr %t1053 - %t1057 = load i32, ptr %t1054 - %t1058 = icmp sge i32 %t1056, %t1057 - br i1 %t1058, label %grow342, label %put343 + %t1051 = load ptr, ptr %t1038 + %t1052 = getelementptr inbounds ptr, ptr %t1051, i32 %t1039 + store ptr @.str10100, ptr %t1052 + %t1053 = add i32 %t1039, 1 + store i32 %t1053, ptr %t1036 + %t1054 = load ptr, ptr %t498 + %t1055 = getelementptr inbounds %LSlice, ptr %t1054, i32 0, i32 1 + %t1056 = getelementptr inbounds %LSlice, ptr %t1054, i32 0, i32 2 + %t1057 = getelementptr inbounds %LSlice, ptr %t1054, i32 0, i32 0 + %t1058 = load i32, ptr %t1055 + %t1059 = load i32, ptr %t1056 + %t1060 = icmp sge i32 %t1058, %t1059 + br i1 %t1060, label %grow342, label %put343 grow342: - %t1059 = mul i32 %t1057, 2 - %t1060 = icmp eq i32 %t1057, 0 - %t1061 = select i1 %t1060, i32 8, i32 %t1059 - %t1062 = getelementptr ptr, ptr null, i32 1 - %t1063 = ptrtoint ptr %t1062 to i64 - %t1064 = zext i32 %t1061 to i64 - %t1065 = mul i64 %t1064, %t1063 - %t1066 = load ptr, ptr %t1055 - %t1067 = call ptr @realloc(ptr %t1066, i64 %t1065) - store ptr %t1067, ptr %t1055 - store i32 %t1061, ptr %t1054 + %t1061 = mul i32 %t1059, 2 + %t1062 = icmp eq i32 %t1059, 0 + %t1063 = select i1 %t1062, i32 8, i32 %t1061 + %t1064 = getelementptr ptr, ptr null, i32 1 + %t1065 = ptrtoint ptr %t1064 to i64 + %t1066 = zext i32 %t1063 to i64 + %t1067 = mul i64 %t1066, %t1065 + %t1068 = load ptr, ptr %t1057 + %t1069 = call ptr @realloc(ptr %t1068, i64 %t1067) + store ptr %t1069, ptr %t1057 + store i32 %t1063, ptr %t1056 br label %put343 put343: - %t1068 = load ptr, ptr %t1055 - %t1069 = getelementptr inbounds ptr, ptr %t1068, i32 %t1056 - store ptr @.str10096, ptr %t1069 - %t1070 = add i32 %t1056, 1 - store i32 %t1070, ptr %t1053 + %t1070 = load ptr, ptr %t1057 + %t1071 = getelementptr inbounds ptr, ptr %t1070, i32 %t1058 + store ptr @.str10101, ptr %t1071 + %t1072 = add i32 %t1058, 1 + store i32 %t1072, ptr %t1055 br label %ifend339 else338: - store ptr @.str10097, ptr %t490 - %t1071 = load ptr, ptr %t498 - %t1072 = getelementptr inbounds %LSlice, ptr %t1071, i32 0, i32 1 - %t1073 = getelementptr inbounds %LSlice, ptr %t1071, i32 0, i32 2 - %t1074 = getelementptr inbounds %LSlice, ptr %t1071, i32 0, i32 0 - %t1075 = load i32, ptr %t1072 - %t1076 = load i32, ptr %t1073 - %t1077 = icmp sge i32 %t1075, %t1076 - br i1 %t1077, label %grow344, label %put345 + store ptr @.str10102, ptr %t490 + %t1073 = load ptr, ptr %t498 + %t1074 = getelementptr inbounds %LSlice, ptr %t1073, i32 0, i32 1 + %t1075 = getelementptr inbounds %LSlice, ptr %t1073, i32 0, i32 2 + %t1076 = getelementptr inbounds %LSlice, ptr %t1073, i32 0, i32 0 + %t1077 = load i32, ptr %t1074 + %t1078 = load i32, ptr %t1075 + %t1079 = icmp sge i32 %t1077, %t1078 + br i1 %t1079, label %grow344, label %put345 grow344: - %t1078 = mul i32 %t1076, 2 - %t1079 = icmp eq i32 %t1076, 0 - %t1080 = select i1 %t1079, i32 8, i32 %t1078 - %t1081 = getelementptr ptr, ptr null, i32 1 - %t1082 = ptrtoint ptr %t1081 to i64 - %t1083 = zext i32 %t1080 to i64 - %t1084 = mul i64 %t1083, %t1082 - %t1085 = load ptr, ptr %t1074 - %t1086 = call ptr @realloc(ptr %t1085, i64 %t1084) - store ptr %t1086, ptr %t1074 - store i32 %t1080, ptr %t1073 + %t1080 = mul i32 %t1078, 2 + %t1081 = icmp eq i32 %t1078, 0 + %t1082 = select i1 %t1081, i32 8, i32 %t1080 + %t1083 = getelementptr ptr, ptr null, i32 1 + %t1084 = ptrtoint ptr %t1083 to i64 + %t1085 = zext i32 %t1082 to i64 + %t1086 = mul i64 %t1085, %t1084 + %t1087 = load ptr, ptr %t1076 + %t1088 = call ptr @realloc(ptr %t1087, i64 %t1086) + store ptr %t1088, ptr %t1076 + store i32 %t1082, ptr %t1075 br label %put345 put345: - %t1087 = load ptr, ptr %t1074 - %t1088 = getelementptr inbounds ptr, ptr %t1087, i32 %t1075 - store ptr @.str10098, ptr %t1088 - %t1089 = add i32 %t1075, 1 - store i32 %t1089, ptr %t1072 - %t1090 = load ptr, ptr %t498 - %t1091 = getelementptr inbounds %LSlice, ptr %t1090, i32 0, i32 1 - %t1092 = getelementptr inbounds %LSlice, ptr %t1090, i32 0, i32 2 - %t1093 = getelementptr inbounds %LSlice, ptr %t1090, i32 0, i32 0 - %t1094 = load i32, ptr %t1091 - %t1095 = load i32, ptr %t1092 - %t1096 = icmp sge i32 %t1094, %t1095 - br i1 %t1096, label %grow346, label %put347 + %t1089 = load ptr, ptr %t1076 + %t1090 = getelementptr inbounds ptr, ptr %t1089, i32 %t1077 + store ptr @.str10103, ptr %t1090 + %t1091 = add i32 %t1077, 1 + store i32 %t1091, ptr %t1074 + %t1092 = load ptr, ptr %t498 + %t1093 = getelementptr inbounds %LSlice, ptr %t1092, i32 0, i32 1 + %t1094 = getelementptr inbounds %LSlice, ptr %t1092, i32 0, i32 2 + %t1095 = getelementptr inbounds %LSlice, ptr %t1092, i32 0, i32 0 + %t1096 = load i32, ptr %t1093 + %t1097 = load i32, ptr %t1094 + %t1098 = icmp sge i32 %t1096, %t1097 + br i1 %t1098, label %grow346, label %put347 grow346: - %t1097 = mul i32 %t1095, 2 - %t1098 = icmp eq i32 %t1095, 0 - %t1099 = select i1 %t1098, i32 8, i32 %t1097 - %t1100 = getelementptr ptr, ptr null, i32 1 - %t1101 = ptrtoint ptr %t1100 to i64 - %t1102 = zext i32 %t1099 to i64 - %t1103 = mul i64 %t1102, %t1101 - %t1104 = load ptr, ptr %t1093 - %t1105 = call ptr @realloc(ptr %t1104, i64 %t1103) - store ptr %t1105, ptr %t1093 - store i32 %t1099, ptr %t1092 + %t1099 = mul i32 %t1097, 2 + %t1100 = icmp eq i32 %t1097, 0 + %t1101 = select i1 %t1100, i32 8, i32 %t1099 + %t1102 = getelementptr ptr, ptr null, i32 1 + %t1103 = ptrtoint ptr %t1102 to i64 + %t1104 = zext i32 %t1101 to i64 + %t1105 = mul i64 %t1104, %t1103 + %t1106 = load ptr, ptr %t1095 + %t1107 = call ptr @realloc(ptr %t1106, i64 %t1105) + store ptr %t1107, ptr %t1095 + store i32 %t1101, ptr %t1094 br label %put347 put347: - %t1106 = load ptr, ptr %t1093 - %t1107 = getelementptr inbounds ptr, ptr %t1106, i32 %t1094 - store ptr @.str10099, ptr %t1107 - %t1108 = add i32 %t1094, 1 - store i32 %t1108, ptr %t1091 - %t1109 = load ptr, ptr %t498 - %t1110 = getelementptr inbounds %LSlice, ptr %t1109, i32 0, i32 1 - %t1111 = getelementptr inbounds %LSlice, ptr %t1109, i32 0, i32 2 - %t1112 = getelementptr inbounds %LSlice, ptr %t1109, i32 0, i32 0 - %t1113 = load i32, ptr %t1110 - %t1114 = load i32, ptr %t1111 - %t1115 = icmp sge i32 %t1113, %t1114 - br i1 %t1115, label %grow348, label %put349 + %t1108 = load ptr, ptr %t1095 + %t1109 = getelementptr inbounds ptr, ptr %t1108, i32 %t1096 + store ptr @.str10104, ptr %t1109 + %t1110 = add i32 %t1096, 1 + store i32 %t1110, ptr %t1093 + %t1111 = load ptr, ptr %t498 + %t1112 = getelementptr inbounds %LSlice, ptr %t1111, i32 0, i32 1 + %t1113 = getelementptr inbounds %LSlice, ptr %t1111, i32 0, i32 2 + %t1114 = getelementptr inbounds %LSlice, ptr %t1111, i32 0, i32 0 + %t1115 = load i32, ptr %t1112 + %t1116 = load i32, ptr %t1113 + %t1117 = icmp sge i32 %t1115, %t1116 + br i1 %t1117, label %grow348, label %put349 grow348: - %t1116 = mul i32 %t1114, 2 - %t1117 = icmp eq i32 %t1114, 0 - %t1118 = select i1 %t1117, i32 8, i32 %t1116 - %t1119 = getelementptr ptr, ptr null, i32 1 - %t1120 = ptrtoint ptr %t1119 to i64 - %t1121 = zext i32 %t1118 to i64 - %t1122 = mul i64 %t1121, %t1120 - %t1123 = load ptr, ptr %t1112 - %t1124 = call ptr @realloc(ptr %t1123, i64 %t1122) - store ptr %t1124, ptr %t1112 - store i32 %t1118, ptr %t1111 + %t1118 = mul i32 %t1116, 2 + %t1119 = icmp eq i32 %t1116, 0 + %t1120 = select i1 %t1119, i32 8, i32 %t1118 + %t1121 = getelementptr ptr, ptr null, i32 1 + %t1122 = ptrtoint ptr %t1121 to i64 + %t1123 = zext i32 %t1120 to i64 + %t1124 = mul i64 %t1123, %t1122 + %t1125 = load ptr, ptr %t1114 + %t1126 = call ptr @realloc(ptr %t1125, i64 %t1124) + store ptr %t1126, ptr %t1114 + store i32 %t1120, ptr %t1113 br label %put349 put349: - %t1125 = load ptr, ptr %t1112 - %t1126 = getelementptr inbounds ptr, ptr %t1125, i32 %t1113 - store ptr @.str10100, ptr %t1126 - %t1127 = add i32 %t1113, 1 - store i32 %t1127, ptr %t1110 - %t1128 = load ptr, ptr %t498 - %t1129 = getelementptr inbounds %LSlice, ptr %t1128, i32 0, i32 1 - %t1130 = getelementptr inbounds %LSlice, ptr %t1128, i32 0, i32 2 - %t1131 = getelementptr inbounds %LSlice, ptr %t1128, i32 0, i32 0 - %t1132 = load i32, ptr %t1129 - %t1133 = load i32, ptr %t1130 - %t1134 = icmp sge i32 %t1132, %t1133 - br i1 %t1134, label %grow350, label %put351 + %t1127 = load ptr, ptr %t1114 + %t1128 = getelementptr inbounds ptr, ptr %t1127, i32 %t1115 + store ptr @.str10105, ptr %t1128 + %t1129 = add i32 %t1115, 1 + store i32 %t1129, ptr %t1112 + %t1130 = load ptr, ptr %t498 + %t1131 = getelementptr inbounds %LSlice, ptr %t1130, i32 0, i32 1 + %t1132 = getelementptr inbounds %LSlice, ptr %t1130, i32 0, i32 2 + %t1133 = getelementptr inbounds %LSlice, ptr %t1130, i32 0, i32 0 + %t1134 = load i32, ptr %t1131 + %t1135 = load i32, ptr %t1132 + %t1136 = icmp sge i32 %t1134, %t1135 + br i1 %t1136, label %grow350, label %put351 grow350: - %t1135 = mul i32 %t1133, 2 - %t1136 = icmp eq i32 %t1133, 0 - %t1137 = select i1 %t1136, i32 8, i32 %t1135 - %t1138 = getelementptr ptr, ptr null, i32 1 - %t1139 = ptrtoint ptr %t1138 to i64 - %t1140 = zext i32 %t1137 to i64 - %t1141 = mul i64 %t1140, %t1139 - %t1142 = load ptr, ptr %t1131 - %t1143 = call ptr @realloc(ptr %t1142, i64 %t1141) - store ptr %t1143, ptr %t1131 - store i32 %t1137, ptr %t1130 + %t1137 = mul i32 %t1135, 2 + %t1138 = icmp eq i32 %t1135, 0 + %t1139 = select i1 %t1138, i32 8, i32 %t1137 + %t1140 = getelementptr ptr, ptr null, i32 1 + %t1141 = ptrtoint ptr %t1140 to i64 + %t1142 = zext i32 %t1139 to i64 + %t1143 = mul i64 %t1142, %t1141 + %t1144 = load ptr, ptr %t1133 + %t1145 = call ptr @realloc(ptr %t1144, i64 %t1143) + store ptr %t1145, ptr %t1133 + store i32 %t1139, ptr %t1132 br label %put351 put351: - %t1144 = load ptr, ptr %t1131 - %t1145 = getelementptr inbounds ptr, ptr %t1144, i32 %t1132 - store ptr @.str10101, ptr %t1145 - %t1146 = add i32 %t1132, 1 - store i32 %t1146, ptr %t1129 + %t1146 = load ptr, ptr %t1133 + %t1147 = getelementptr inbounds ptr, ptr %t1146, i32 %t1134 + store ptr @.str10106, ptr %t1147 + %t1148 = add i32 %t1134, 1 + store i32 %t1148, ptr %t1131 br label %ifend339 ifend339: br label %ifend336 ifend336: br label %ifend310 ifend310: - %t1148 = load ptr, ptr %t0 - %t1149 = call i32 @lp_str_eq(ptr %t1148, ptr @.str10102) - %t1150 = icmp ne i32 %t1149, 0 - %t1151 = zext i1 %t1150 to i32 - store i32 %t1151, ptr %t1147 - br i1 %t1150, label %sc352, label %scend353 + %t1150 = load ptr, ptr %t0 + %t1151 = call i32 @lp_str_eq(ptr %t1150, ptr @.str10107) + %t1152 = icmp ne i32 %t1151, 0 + %t1153 = zext i1 %t1152 to i32 + store i32 %t1153, ptr %t1149 + br i1 %t1152, label %sc352, label %scend353 sc352: - %t1152 = load ptr, ptr %t490 - %t1153 = icmp eq ptr %t1152, null - %t1154 = zext i1 %t1153 to i32 - %t1155 = icmp ne i32 %t1154, 0 + %t1154 = load ptr, ptr %t490 + %t1155 = icmp eq ptr %t1154, null %t1156 = zext i1 %t1155 to i32 - store i32 %t1156, ptr %t1147 + %t1157 = icmp ne i32 %t1156, 0 + %t1158 = zext i1 %t1157 to i32 + store i32 %t1158, ptr %t1149 br label %scend353 scend353: - %t1157 = load i32, ptr %t1147 - %t1158 = icmp ne i32 %t1157, 0 - br i1 %t1158, label %then354, label %ifend356 + %t1159 = load i32, ptr %t1149 + %t1160 = icmp ne i32 %t1159, 0 + br i1 %t1160, label %then354, label %ifend356 then354: - %t1159 = load ptr, ptr %t1 - %t1160 = call ptr @lp_str_concat(ptr @.str10103, ptr %t1159) - store ptr %t1160, ptr %t490 - %t1161 = load ptr, ptr %t490 - %t1162 = call ptr @fn_find_fn(ptr %t1161) - store ptr %t1162, ptr %t1163 - %t1164 = load ptr, ptr %t1163 - %t1165 = icmp eq ptr %t1164, null - %t1166 = zext i1 %t1165 to i32 - %t1167 = icmp ne i32 %t1166, 0 - br i1 %t1167, label %then357, label %ifend359 + %t1161 = load ptr, ptr %t1 + %t1162 = call ptr @lp_str_concat(ptr @.str10108, ptr %t1161) + store ptr %t1162, ptr %t490 + %t1163 = load ptr, ptr %t490 + %t1164 = call ptr @fn_find_fn(ptr %t1163) + store ptr %t1164, ptr %t1165 + %t1166 = load ptr, ptr %t1165 + %t1167 = icmp eq ptr %t1166, null + %t1168 = zext i1 %t1167 to i32 + %t1169 = icmp ne i32 %t1168, 0 + br i1 %t1169, label %then357, label %ifend359 then357: - %t1168 = load ptr, ptr %t490 - %t1169 = call ptr @fn_find_extern(ptr %t1168) - store ptr %t1169, ptr %t1163 + %t1170 = load ptr, ptr %t490 + %t1171 = call ptr @fn_find_extern(ptr %t1170) + store ptr %t1171, ptr %t1165 br label %ifend359 ifend359: - %t1170 = load ptr, ptr %t1163 - %t1171 = icmp ne ptr %t1170, null - %t1172 = zext i1 %t1171 to i32 - %t1173 = icmp ne i32 %t1172, 0 - br i1 %t1173, label %then360, label %ifend362 + %t1172 = load ptr, ptr %t1165 + %t1173 = icmp ne ptr %t1172, null + %t1174 = zext i1 %t1173 to i32 + %t1175 = icmp ne i32 %t1174, 0 + br i1 %t1175, label %then360, label %ifend362 then360: - %t1174 = load ptr, ptr %t1163 - %t1175 = call ptr @fn_param_labels(ptr %t1174) - store ptr %t1175, ptr %t1176 - store i32 0, ptr %t1177 - %t1178 = load ptr, ptr %t1163 - %t1179 = getelementptr inbounds %Cmp_Node, ptr %t1178, i32 0, i32 0 - %t1180 = load i32, ptr %t1179 - %t1181 = icmp eq i32 %t1180, 4 - %t1182 = zext i1 %t1181 to i32 - %t1183 = icmp ne i32 %t1182, 0 - br i1 %t1183, label %then363, label %ifend365 + %t1176 = load ptr, ptr %t1165 + %t1177 = call ptr @fn_param_labels(ptr %t1176) + store ptr %t1177, ptr %t1178 + store i32 0, ptr %t1179 + %t1180 = load ptr, ptr %t1165 + %t1181 = getelementptr inbounds %Cmp_Node, ptr %t1180, i32 0, i32 0 + %t1182 = load i32, ptr %t1181 + %t1183 = icmp eq i32 %t1182, 4 + %t1184 = zext i1 %t1183 to i32 + %t1185 = icmp ne i32 %t1184, 0 + br i1 %t1185, label %then363, label %ifend365 then363: - %t1184 = load ptr, ptr %t1163 - store ptr %t1184, ptr %t491 - %t1185 = load ptr, ptr %t1163 - %t1186 = call i32 @fn_state_lead(ptr %t1185) - store i32 %t1186, ptr %t1177 + %t1186 = load ptr, ptr %t1165 + store ptr %t1186, ptr %t491 + %t1187 = load ptr, ptr %t1165 + %t1188 = call i32 @fn_state_lead(ptr %t1187) + store i32 %t1188, ptr %t1179 br label %ifend365 ifend365: br label %wcond366 wcond366: - %t1187 = load i32, ptr %t1177 - %t1188 = load ptr, ptr %t1176 - %t1189 = getelementptr inbounds %LSlice, ptr %t1188, i32 0, i32 1 - %t1190 = load i32, ptr %t1189 - %t1191 = icmp slt i32 %t1187, %t1190 - %t1192 = zext i1 %t1191 to i32 - %t1193 = icmp ne i32 %t1192, 0 - br i1 %t1193, label %wbody367, label %wend368 + %t1189 = load i32, ptr %t1179 + %t1190 = load ptr, ptr %t1178 + %t1191 = getelementptr inbounds %LSlice, ptr %t1190, i32 0, i32 1 + %t1192 = load i32, ptr %t1191 + %t1193 = icmp slt i32 %t1189, %t1192 + %t1194 = zext i1 %t1193 to i32 + %t1195 = icmp ne i32 %t1194, 0 + br i1 %t1195, label %wbody367, label %wend368 wbody367: - %t1194 = load ptr, ptr %t498 - %t1195 = load ptr, ptr %t1176 - %t1196 = load i32, ptr %t1177 - %t1197 = getelementptr inbounds %LSlice, ptr %t1195, i32 0, i32 0 - %t1198 = load ptr, ptr %t1197 - %t1199 = getelementptr inbounds %LSlice, ptr %t1195, i32 0, i32 1 - %t1200 = load i32, ptr %t1199 - %t1201 = icmp ult i32 %t1196, %t1200 - br i1 %t1201, label %ixok369, label %ixbad370 + %t1196 = load ptr, ptr %t498 + %t1197 = load ptr, ptr %t1178 + %t1198 = load i32, ptr %t1179 + %t1199 = getelementptr inbounds %LSlice, ptr %t1197, i32 0, i32 0 + %t1200 = load ptr, ptr %t1199 + %t1201 = getelementptr inbounds %LSlice, ptr %t1197, i32 0, i32 1 + %t1202 = load i32, ptr %t1201 + %t1203 = icmp ult i32 %t1198, %t1202 + br i1 %t1203, label %ixok369, label %ixbad370 ixbad370: - %t1202 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1202, ptr @.fmt_bounds, ptr @.str10104, i32 %t1196, i32 %t1200) + %t1204 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1204, ptr @.fmt_bounds, ptr @.str10109, i32 %t1198, i32 %t1202) call void @exit(i32 1) unreachable ixok369: - %t1203 = getelementptr inbounds ptr, ptr %t1198, i32 %t1196 - %t1204 = load ptr, ptr %t1203 - %t1205 = getelementptr inbounds %LSlice, ptr %t1194, i32 0, i32 1 - %t1206 = getelementptr inbounds %LSlice, ptr %t1194, i32 0, i32 2 - %t1207 = getelementptr inbounds %LSlice, ptr %t1194, i32 0, i32 0 - %t1208 = load i32, ptr %t1205 - %t1209 = load i32, ptr %t1206 - %t1210 = icmp sge i32 %t1208, %t1209 - br i1 %t1210, label %grow371, label %put372 + %t1205 = getelementptr inbounds ptr, ptr %t1200, i32 %t1198 + %t1206 = load ptr, ptr %t1205 + %t1207 = getelementptr inbounds %LSlice, ptr %t1196, i32 0, i32 1 + %t1208 = getelementptr inbounds %LSlice, ptr %t1196, i32 0, i32 2 + %t1209 = getelementptr inbounds %LSlice, ptr %t1196, i32 0, i32 0 + %t1210 = load i32, ptr %t1207 + %t1211 = load i32, ptr %t1208 + %t1212 = icmp sge i32 %t1210, %t1211 + br i1 %t1212, label %grow371, label %put372 grow371: - %t1211 = mul i32 %t1209, 2 - %t1212 = icmp eq i32 %t1209, 0 - %t1213 = select i1 %t1212, i32 8, i32 %t1211 - %t1214 = getelementptr ptr, ptr null, i32 1 - %t1215 = ptrtoint ptr %t1214 to i64 - %t1216 = zext i32 %t1213 to i64 - %t1217 = mul i64 %t1216, %t1215 - %t1218 = load ptr, ptr %t1207 - %t1219 = call ptr @realloc(ptr %t1218, i64 %t1217) - store ptr %t1219, ptr %t1207 - store i32 %t1213, ptr %t1206 + %t1213 = mul i32 %t1211, 2 + %t1214 = icmp eq i32 %t1211, 0 + %t1215 = select i1 %t1214, i32 8, i32 %t1213 + %t1216 = getelementptr ptr, ptr null, i32 1 + %t1217 = ptrtoint ptr %t1216 to i64 + %t1218 = zext i32 %t1215 to i64 + %t1219 = mul i64 %t1218, %t1217 + %t1220 = load ptr, ptr %t1209 + %t1221 = call ptr @realloc(ptr %t1220, i64 %t1219) + store ptr %t1221, ptr %t1209 + store i32 %t1215, ptr %t1208 br label %put372 put372: - %t1220 = load ptr, ptr %t1207 - %t1221 = getelementptr inbounds ptr, ptr %t1220, i32 %t1208 - store ptr %t1204, ptr %t1221 - %t1222 = add i32 %t1208, 1 - store i32 %t1222, ptr %t1205 - %t1223 = load i32, ptr %t1177 - %t1224 = add i32 %t1223, 1 - store i32 %t1224, ptr %t1177 + %t1222 = load ptr, ptr %t1209 + %t1223 = getelementptr inbounds ptr, ptr %t1222, i32 %t1210 + store ptr %t1206, ptr %t1223 + %t1224 = add i32 %t1210, 1 + store i32 %t1224, ptr %t1207 + %t1225 = load i32, ptr %t1179 + %t1226 = add i32 %t1225, 1 + store i32 %t1226, ptr %t1179 br label %wcond366 wend368: br label %ifend362 ifend362: br label %ifend356 ifend356: - %t1226 = load ptr, ptr %t0 - %t1227 = call i32 @lp_str_eq(ptr %t1226, ptr @.str10105) - %t1228 = icmp ne i32 %t1227, 0 - %t1229 = zext i1 %t1228 to i32 - store i32 %t1229, ptr %t1225 - br i1 %t1228, label %sc373, label %scend374 + %t1228 = load ptr, ptr %t0 + %t1229 = call i32 @lp_str_eq(ptr %t1228, ptr @.str10110) + %t1230 = icmp ne i32 %t1229, 0 + %t1231 = zext i1 %t1230 to i32 + store i32 %t1231, ptr %t1227 + br i1 %t1230, label %sc373, label %scend374 sc373: - %t1230 = load ptr, ptr %t490 - %t1231 = icmp eq ptr %t1230, null - %t1232 = zext i1 %t1231 to i32 - %t1233 = icmp ne i32 %t1232, 0 + %t1232 = load ptr, ptr %t490 + %t1233 = icmp eq ptr %t1232, null %t1234 = zext i1 %t1233 to i32 - store i32 %t1234, ptr %t1225 + %t1235 = icmp ne i32 %t1234, 0 + %t1236 = zext i1 %t1235 to i32 + store i32 %t1236, ptr %t1227 br label %scend374 scend374: - %t1235 = load i32, ptr %t1225 - %t1236 = icmp ne i32 %t1235, 0 - br i1 %t1236, label %then375, label %ifend377 + %t1237 = load i32, ptr %t1227 + %t1238 = icmp ne i32 %t1237, 0 + br i1 %t1238, label %then375, label %ifend377 then375: - %t1237 = load ptr, ptr %t1 - %t1238 = call ptr @lp_str_concat(ptr @.str10106, ptr %t1237) - store ptr %t1238, ptr %t490 - %t1239 = load ptr, ptr %t490 - %t1240 = call ptr @fn_find_fn(ptr %t1239) - store ptr %t1240, ptr %t1241 - %t1242 = load ptr, ptr %t1241 - %t1243 = icmp eq ptr %t1242, null - %t1244 = zext i1 %t1243 to i32 - %t1245 = icmp ne i32 %t1244, 0 - br i1 %t1245, label %then378, label %ifend380 + %t1239 = load ptr, ptr %t1 + %t1240 = call ptr @lp_str_concat(ptr @.str10111, ptr %t1239) + store ptr %t1240, ptr %t490 + %t1241 = load ptr, ptr %t490 + %t1242 = call ptr @fn_find_fn(ptr %t1241) + store ptr %t1242, ptr %t1243 + %t1244 = load ptr, ptr %t1243 + %t1245 = icmp eq ptr %t1244, null + %t1246 = zext i1 %t1245 to i32 + %t1247 = icmp ne i32 %t1246, 0 + br i1 %t1247, label %then378, label %ifend380 then378: - %t1246 = load ptr, ptr %t490 - %t1247 = call ptr @fn_find_extern(ptr %t1246) - store ptr %t1247, ptr %t1241 + %t1248 = load ptr, ptr %t490 + %t1249 = call ptr @fn_find_extern(ptr %t1248) + store ptr %t1249, ptr %t1243 br label %ifend380 ifend380: - %t1248 = load ptr, ptr %t1241 - %t1249 = icmp ne ptr %t1248, null - %t1250 = zext i1 %t1249 to i32 - %t1251 = icmp ne i32 %t1250, 0 - br i1 %t1251, label %then381, label %ifend383 + %t1250 = load ptr, ptr %t1243 + %t1251 = icmp ne ptr %t1250, null + %t1252 = zext i1 %t1251 to i32 + %t1253 = icmp ne i32 %t1252, 0 + br i1 %t1253, label %then381, label %ifend383 then381: - %t1252 = load ptr, ptr %t1241 - %t1253 = call ptr @fn_param_labels(ptr %t1252) - store ptr %t1253, ptr %t1254 - store i32 0, ptr %t1255 - %t1256 = load ptr, ptr %t1241 - %t1257 = getelementptr inbounds %Cmp_Node, ptr %t1256, i32 0, i32 0 - %t1258 = load i32, ptr %t1257 - %t1259 = icmp eq i32 %t1258, 4 - %t1260 = zext i1 %t1259 to i32 - %t1261 = icmp ne i32 %t1260, 0 - br i1 %t1261, label %then384, label %ifend386 + %t1254 = load ptr, ptr %t1243 + %t1255 = call ptr @fn_param_labels(ptr %t1254) + store ptr %t1255, ptr %t1256 + store i32 0, ptr %t1257 + %t1258 = load ptr, ptr %t1243 + %t1259 = getelementptr inbounds %Cmp_Node, ptr %t1258, i32 0, i32 0 + %t1260 = load i32, ptr %t1259 + %t1261 = icmp eq i32 %t1260, 4 + %t1262 = zext i1 %t1261 to i32 + %t1263 = icmp ne i32 %t1262, 0 + br i1 %t1263, label %then384, label %ifend386 then384: - %t1262 = load ptr, ptr %t1241 - store ptr %t1262, ptr %t491 - %t1263 = load ptr, ptr %t1241 - %t1264 = call i32 @fn_state_lead(ptr %t1263) - store i32 %t1264, ptr %t1255 + %t1264 = load ptr, ptr %t1243 + store ptr %t1264, ptr %t491 + %t1265 = load ptr, ptr %t1243 + %t1266 = call i32 @fn_state_lead(ptr %t1265) + store i32 %t1266, ptr %t1257 br label %ifend386 ifend386: br label %wcond387 wcond387: - %t1265 = load i32, ptr %t1255 - %t1266 = load ptr, ptr %t1254 - %t1267 = getelementptr inbounds %LSlice, ptr %t1266, i32 0, i32 1 - %t1268 = load i32, ptr %t1267 - %t1269 = icmp slt i32 %t1265, %t1268 - %t1270 = zext i1 %t1269 to i32 - %t1271 = icmp ne i32 %t1270, 0 - br i1 %t1271, label %wbody388, label %wend389 + %t1267 = load i32, ptr %t1257 + %t1268 = load ptr, ptr %t1256 + %t1269 = getelementptr inbounds %LSlice, ptr %t1268, i32 0, i32 1 + %t1270 = load i32, ptr %t1269 + %t1271 = icmp slt i32 %t1267, %t1270 + %t1272 = zext i1 %t1271 to i32 + %t1273 = icmp ne i32 %t1272, 0 + br i1 %t1273, label %wbody388, label %wend389 wbody388: - %t1272 = load ptr, ptr %t498 - %t1273 = load ptr, ptr %t1254 - %t1274 = load i32, ptr %t1255 - %t1275 = getelementptr inbounds %LSlice, ptr %t1273, i32 0, i32 0 - %t1276 = load ptr, ptr %t1275 - %t1277 = getelementptr inbounds %LSlice, ptr %t1273, i32 0, i32 1 - %t1278 = load i32, ptr %t1277 - %t1279 = icmp ult i32 %t1274, %t1278 - br i1 %t1279, label %ixok390, label %ixbad391 + %t1274 = load ptr, ptr %t498 + %t1275 = load ptr, ptr %t1256 + %t1276 = load i32, ptr %t1257 + %t1277 = getelementptr inbounds %LSlice, ptr %t1275, i32 0, i32 0 + %t1278 = load ptr, ptr %t1277 + %t1279 = getelementptr inbounds %LSlice, ptr %t1275, i32 0, i32 1 + %t1280 = load i32, ptr %t1279 + %t1281 = icmp ult i32 %t1276, %t1280 + br i1 %t1281, label %ixok390, label %ixbad391 ixbad391: - %t1280 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1280, ptr @.fmt_bounds, ptr @.str10107, i32 %t1274, i32 %t1278) + %t1282 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1282, ptr @.fmt_bounds, ptr @.str10112, i32 %t1276, i32 %t1280) call void @exit(i32 1) unreachable ixok390: - %t1281 = getelementptr inbounds ptr, ptr %t1276, i32 %t1274 - %t1282 = load ptr, ptr %t1281 - %t1283 = getelementptr inbounds %LSlice, ptr %t1272, i32 0, i32 1 - %t1284 = getelementptr inbounds %LSlice, ptr %t1272, i32 0, i32 2 - %t1285 = getelementptr inbounds %LSlice, ptr %t1272, i32 0, i32 0 - %t1286 = load i32, ptr %t1283 - %t1287 = load i32, ptr %t1284 - %t1288 = icmp sge i32 %t1286, %t1287 - br i1 %t1288, label %grow392, label %put393 + %t1283 = getelementptr inbounds ptr, ptr %t1278, i32 %t1276 + %t1284 = load ptr, ptr %t1283 + %t1285 = getelementptr inbounds %LSlice, ptr %t1274, i32 0, i32 1 + %t1286 = getelementptr inbounds %LSlice, ptr %t1274, i32 0, i32 2 + %t1287 = getelementptr inbounds %LSlice, ptr %t1274, i32 0, i32 0 + %t1288 = load i32, ptr %t1285 + %t1289 = load i32, ptr %t1286 + %t1290 = icmp sge i32 %t1288, %t1289 + br i1 %t1290, label %grow392, label %put393 grow392: - %t1289 = mul i32 %t1287, 2 - %t1290 = icmp eq i32 %t1287, 0 - %t1291 = select i1 %t1290, i32 8, i32 %t1289 - %t1292 = getelementptr ptr, ptr null, i32 1 - %t1293 = ptrtoint ptr %t1292 to i64 - %t1294 = zext i32 %t1291 to i64 - %t1295 = mul i64 %t1294, %t1293 - %t1296 = load ptr, ptr %t1285 - %t1297 = call ptr @realloc(ptr %t1296, i64 %t1295) - store ptr %t1297, ptr %t1285 - store i32 %t1291, ptr %t1284 + %t1291 = mul i32 %t1289, 2 + %t1292 = icmp eq i32 %t1289, 0 + %t1293 = select i1 %t1292, i32 8, i32 %t1291 + %t1294 = getelementptr ptr, ptr null, i32 1 + %t1295 = ptrtoint ptr %t1294 to i64 + %t1296 = zext i32 %t1293 to i64 + %t1297 = mul i64 %t1296, %t1295 + %t1298 = load ptr, ptr %t1287 + %t1299 = call ptr @realloc(ptr %t1298, i64 %t1297) + store ptr %t1299, ptr %t1287 + store i32 %t1293, ptr %t1286 br label %put393 put393: - %t1298 = load ptr, ptr %t1285 - %t1299 = getelementptr inbounds ptr, ptr %t1298, i32 %t1286 - store ptr %t1282, ptr %t1299 - %t1300 = add i32 %t1286, 1 - store i32 %t1300, ptr %t1283 - %t1301 = load i32, ptr %t1255 - %t1302 = add i32 %t1301, 1 - store i32 %t1302, ptr %t1255 + %t1300 = load ptr, ptr %t1287 + %t1301 = getelementptr inbounds ptr, ptr %t1300, i32 %t1288 + store ptr %t1284, ptr %t1301 + %t1302 = add i32 %t1288, 1 + store i32 %t1302, ptr %t1285 + %t1303 = load i32, ptr %t1257 + %t1304 = add i32 %t1303, 1 + store i32 %t1304, ptr %t1257 br label %wcond387 wend389: br label %ifend383 ifend383: br label %ifend377 ifend377: - %t1304 = load ptr, ptr %t490 - %t1305 = icmp eq ptr %t1304, null - %t1306 = zext i1 %t1305 to i32 - %t1307 = icmp ne i32 %t1306, 0 + %t1306 = load ptr, ptr %t490 + %t1307 = icmp eq ptr %t1306, null %t1308 = zext i1 %t1307 to i32 - store i32 %t1308, ptr %t1303 - br i1 %t1307, label %sc394, label %scend395 + %t1309 = icmp ne i32 %t1308, 0 + %t1310 = zext i1 %t1309 to i32 + store i32 %t1310, ptr %t1305 + br i1 %t1309, label %sc394, label %scend395 sc394: - %t1309 = load ptr, ptr %t0 - %t1310 = call i32 @fn_is_registered_namespace(ptr %t1309) - %t1311 = icmp ne i32 %t1310, 0 - %t1312 = zext i1 %t1311 to i32 - store i32 %t1312, ptr %t1303 + %t1311 = load ptr, ptr %t0 + %t1312 = call i32 @fn_is_registered_namespace(ptr %t1311) + %t1313 = icmp ne i32 %t1312, 0 + %t1314 = zext i1 %t1313 to i32 + store i32 %t1314, ptr %t1305 br label %scend395 scend395: - %t1313 = load i32, ptr %t1303 - %t1314 = icmp ne i32 %t1313, 0 - br i1 %t1314, label %then396, label %ifend398 + %t1315 = load i32, ptr %t1305 + %t1316 = icmp ne i32 %t1315, 0 + br i1 %t1316, label %then396, label %ifend398 then396: - %t1315 = load ptr, ptr %t0 - %t1316 = call ptr @fn_ns_lower(ptr %t1315) - %t1317 = call ptr @lp_str_concat(ptr %t1316, ptr @.str10108) - %t1318 = load ptr, ptr %t1 - %t1319 = call ptr @lp_str_concat(ptr %t1317, ptr %t1318) - store ptr %t1319, ptr %t490 - %t1321 = load ptr, ptr %t0 - %t1322 = call i32 @fn_is_ns_block(ptr %t1321) - %t1323 = icmp ne i32 %t1322, 0 - %t1324 = zext i1 %t1323 to i32 - store i32 %t1324, ptr %t1320 - br i1 %t1323, label %sc399, label %scend400 + %t1317 = load ptr, ptr %t0 + %t1318 = call ptr @fn_ns_lower(ptr %t1317) + %t1319 = call ptr @lp_str_concat(ptr %t1318, ptr @.str10113) + %t1320 = load ptr, ptr %t1 + %t1321 = call ptr @lp_str_concat(ptr %t1319, ptr %t1320) + store ptr %t1321, ptr %t490 + %t1323 = load ptr, ptr %t0 + %t1324 = call i32 @fn_is_ns_block(ptr %t1323) + %t1325 = icmp ne i32 %t1324, 0 + %t1326 = zext i1 %t1325 to i32 + store i32 %t1326, ptr %t1322 + br i1 %t1325, label %sc399, label %scend400 sc399: - %t1325 = load ptr, ptr %t490 - %t1326 = call i32 @fn_ns_export_has(ptr %t1325) - %t1327 = icmp eq i32 %t1326, 0 - %t1328 = zext i1 %t1327 to i32 - %t1329 = icmp ne i32 %t1328, 0 + %t1327 = load ptr, ptr %t490 + %t1328 = call i32 @fn_ns_export_has(ptr %t1327) + %t1329 = icmp eq i32 %t1328, 0 %t1330 = zext i1 %t1329 to i32 - store i32 %t1330, ptr %t1320 + %t1331 = icmp ne i32 %t1330, 0 + %t1332 = zext i1 %t1331 to i32 + store i32 %t1332, ptr %t1322 br label %scend400 scend400: - %t1331 = load i32, ptr %t1320 - %t1332 = icmp ne i32 %t1331, 0 - br i1 %t1332, label %then401, label %ifend403 + %t1333 = load i32, ptr %t1322 + %t1334 = icmp ne i32 %t1333, 0 + br i1 %t1334, label %then401, label %ifend403 then401: - %t1333 = load ptr, ptr %t0 - %t1334 = call ptr @lp_str_concat(ptr %t1333, ptr @.str10109) - %t1335 = load ptr, ptr %t1 - %t1336 = call ptr @lp_str_concat(ptr %t1334, ptr %t1335) - %t1337 = call ptr @lp_str_concat(ptr %t1336, ptr @.str10110) - %t1338 = load ptr, ptr %t0 - %t1339 = call ptr @lp_str_concat(ptr %t1337, ptr %t1338) - call void @fn_perr(ptr %t1339) + %t1335 = load ptr, ptr %t0 + %t1336 = call ptr @lp_str_concat(ptr %t1335, ptr @.str10114) + %t1337 = load ptr, ptr %t1 + %t1338 = call ptr @lp_str_concat(ptr %t1336, ptr %t1337) + %t1339 = call ptr @lp_str_concat(ptr %t1338, ptr @.str10115) + %t1340 = load ptr, ptr %t0 + %t1341 = call ptr @lp_str_concat(ptr %t1339, ptr %t1340) + call void @fn_perr(ptr %t1341) br label %ifend403 ifend403: - %t1340 = load ptr, ptr %t490 - %t1341 = call ptr @fn_find_fn(ptr %t1340) - store ptr %t1341, ptr %t491 - %t1342 = load ptr, ptr %t491 - %t1343 = icmp ne ptr %t1342, null - %t1344 = zext i1 %t1343 to i32 - %t1345 = icmp ne i32 %t1344, 0 - br i1 %t1345, label %then404, label %ifend406 + %t1342 = load ptr, ptr %t490 + %t1343 = call ptr @fn_find_fn(ptr %t1342) + store ptr %t1343, ptr %t491 + %t1344 = load ptr, ptr %t491 + %t1345 = icmp ne ptr %t1344, null + %t1346 = zext i1 %t1345 to i32 + %t1347 = icmp ne i32 %t1346, 0 + br i1 %t1347, label %then404, label %ifend406 then404: - %t1346 = load ptr, ptr %t491 - %t1347 = call ptr @fn_param_labels(ptr %t1346) - store ptr %t1347, ptr %t1348 - %t1349 = load ptr, ptr %t491 - %t1350 = call i32 @fn_state_lead(ptr %t1349) - store i32 %t1350, ptr %t1351 + %t1348 = load ptr, ptr %t491 + %t1349 = call ptr @fn_param_labels(ptr %t1348) + store ptr %t1349, ptr %t1350 + %t1351 = load ptr, ptr %t491 + %t1352 = call i32 @fn_state_lead(ptr %t1351) + store i32 %t1352, ptr %t1353 br label %wcond407 wcond407: - %t1352 = load i32, ptr %t1351 - %t1353 = load ptr, ptr %t1348 - %t1354 = getelementptr inbounds %LSlice, ptr %t1353, i32 0, i32 1 - %t1355 = load i32, ptr %t1354 - %t1356 = icmp slt i32 %t1352, %t1355 - %t1357 = zext i1 %t1356 to i32 - %t1358 = icmp ne i32 %t1357, 0 - br i1 %t1358, label %wbody408, label %wend409 + %t1354 = load i32, ptr %t1353 + %t1355 = load ptr, ptr %t1350 + %t1356 = getelementptr inbounds %LSlice, ptr %t1355, i32 0, i32 1 + %t1357 = load i32, ptr %t1356 + %t1358 = icmp slt i32 %t1354, %t1357 + %t1359 = zext i1 %t1358 to i32 + %t1360 = icmp ne i32 %t1359, 0 + br i1 %t1360, label %wbody408, label %wend409 wbody408: - %t1359 = load ptr, ptr %t498 - %t1360 = load ptr, ptr %t1348 - %t1361 = load i32, ptr %t1351 - %t1362 = getelementptr inbounds %LSlice, ptr %t1360, i32 0, i32 0 - %t1363 = load ptr, ptr %t1362 - %t1364 = getelementptr inbounds %LSlice, ptr %t1360, i32 0, i32 1 - %t1365 = load i32, ptr %t1364 - %t1366 = icmp ult i32 %t1361, %t1365 - br i1 %t1366, label %ixok410, label %ixbad411 + %t1361 = load ptr, ptr %t498 + %t1362 = load ptr, ptr %t1350 + %t1363 = load i32, ptr %t1353 + %t1364 = getelementptr inbounds %LSlice, ptr %t1362, i32 0, i32 0 + %t1365 = load ptr, ptr %t1364 + %t1366 = getelementptr inbounds %LSlice, ptr %t1362, i32 0, i32 1 + %t1367 = load i32, ptr %t1366 + %t1368 = icmp ult i32 %t1363, %t1367 + br i1 %t1368, label %ixok410, label %ixbad411 ixbad411: - %t1367 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1367, ptr @.fmt_bounds, ptr @.str10111, i32 %t1361, i32 %t1365) + %t1369 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1369, ptr @.fmt_bounds, ptr @.str10116, i32 %t1363, i32 %t1367) call void @exit(i32 1) unreachable ixok410: - %t1368 = getelementptr inbounds ptr, ptr %t1363, i32 %t1361 - %t1369 = load ptr, ptr %t1368 - %t1370 = getelementptr inbounds %LSlice, ptr %t1359, i32 0, i32 1 - %t1371 = getelementptr inbounds %LSlice, ptr %t1359, i32 0, i32 2 - %t1372 = getelementptr inbounds %LSlice, ptr %t1359, i32 0, i32 0 - %t1373 = load i32, ptr %t1370 - %t1374 = load i32, ptr %t1371 - %t1375 = icmp sge i32 %t1373, %t1374 - br i1 %t1375, label %grow412, label %put413 + %t1370 = getelementptr inbounds ptr, ptr %t1365, i32 %t1363 + %t1371 = load ptr, ptr %t1370 + %t1372 = getelementptr inbounds %LSlice, ptr %t1361, i32 0, i32 1 + %t1373 = getelementptr inbounds %LSlice, ptr %t1361, i32 0, i32 2 + %t1374 = getelementptr inbounds %LSlice, ptr %t1361, i32 0, i32 0 + %t1375 = load i32, ptr %t1372 + %t1376 = load i32, ptr %t1373 + %t1377 = icmp sge i32 %t1375, %t1376 + br i1 %t1377, label %grow412, label %put413 grow412: - %t1376 = mul i32 %t1374, 2 - %t1377 = icmp eq i32 %t1374, 0 - %t1378 = select i1 %t1377, i32 8, i32 %t1376 - %t1379 = getelementptr ptr, ptr null, i32 1 - %t1380 = ptrtoint ptr %t1379 to i64 - %t1381 = zext i32 %t1378 to i64 - %t1382 = mul i64 %t1381, %t1380 - %t1383 = load ptr, ptr %t1372 - %t1384 = call ptr @realloc(ptr %t1383, i64 %t1382) - store ptr %t1384, ptr %t1372 - store i32 %t1378, ptr %t1371 + %t1378 = mul i32 %t1376, 2 + %t1379 = icmp eq i32 %t1376, 0 + %t1380 = select i1 %t1379, i32 8, i32 %t1378 + %t1381 = getelementptr ptr, ptr null, i32 1 + %t1382 = ptrtoint ptr %t1381 to i64 + %t1383 = zext i32 %t1380 to i64 + %t1384 = mul i64 %t1383, %t1382 + %t1385 = load ptr, ptr %t1374 + %t1386 = call ptr @realloc(ptr %t1385, i64 %t1384) + store ptr %t1386, ptr %t1374 + store i32 %t1380, ptr %t1373 br label %put413 put413: - %t1385 = load ptr, ptr %t1372 - %t1386 = getelementptr inbounds ptr, ptr %t1385, i32 %t1373 - store ptr %t1369, ptr %t1386 - %t1387 = add i32 %t1373, 1 - store i32 %t1387, ptr %t1370 - %t1388 = load i32, ptr %t1351 - %t1389 = add i32 %t1388, 1 - store i32 %t1389, ptr %t1351 + %t1387 = load ptr, ptr %t1374 + %t1388 = getelementptr inbounds ptr, ptr %t1387, i32 %t1375 + store ptr %t1371, ptr %t1388 + %t1389 = add i32 %t1375, 1 + store i32 %t1389, ptr %t1372 + %t1390 = load i32, ptr %t1353 + %t1391 = add i32 %t1390, 1 + store i32 %t1391, ptr %t1353 br label %wcond407 wend409: br label %ifend406 ifend406: br label %ifend398 ifend398: - %t1390 = load ptr, ptr %t490 - %t1391 = icmp eq ptr %t1390, null - %t1392 = zext i1 %t1391 to i32 - %t1393 = icmp ne i32 %t1392, 0 - br i1 %t1393, label %then414, label %ifend416 + %t1392 = load ptr, ptr %t490 + %t1393 = icmp eq ptr %t1392, null + %t1394 = zext i1 %t1393 to i32 + %t1395 = icmp ne i32 %t1394, 0 + br i1 %t1395, label %then414, label %ifend416 then414: - %t1394 = load ptr, ptr %t0 - %t1395 = call ptr @lp_str_concat(ptr @.str10112, ptr %t1394) - %t1396 = call ptr @lp_str_concat(ptr %t1395, ptr @.str10113) - %t1397 = load ptr, ptr %t1 - %t1398 = call ptr @lp_str_concat(ptr %t1396, ptr %t1397) - call void @fn_perr(ptr %t1398) + %t1396 = load ptr, ptr %t0 + %t1397 = call ptr @lp_str_concat(ptr @.str10117, ptr %t1396) + %t1398 = call ptr @lp_str_concat(ptr %t1397, ptr @.str10118) + %t1399 = load ptr, ptr %t1 + %t1400 = call ptr @lp_str_concat(ptr %t1398, ptr %t1399) + call void @fn_perr(ptr %t1400) br label %ifend416 ifend416: - %t1399 = load ptr, ptr %t2 - %t1400 = load ptr, ptr %t498 - call void @fn_reorder_named(ptr %t1399, ptr %t1400) %t1401 = load ptr, ptr %t2 - %t1402 = load ptr, ptr %t491 - call void @fn_state_inject(ptr %t1401, ptr %t1402) - %t1403 = call ptr @fn_node(i32 33) - store ptr %t1403, ptr %t1404 - %t1405 = load ptr, ptr %t1404 - %t1406 = getelementptr inbounds %Cmp_Node, ptr %t1405, i32 0, i32 1 - %t1407 = load ptr, ptr %t490 - store ptr %t1407, ptr %t1406 - %t1408 = load ptr, ptr %t2 - %t1409 = getelementptr inbounds %Cmp_Node, ptr %t1408, i32 0, i32 4 - %t1410 = load ptr, ptr %t1404 - store ptr %t1410, ptr %t1409 - %t1411 = load ptr, ptr %t2 - %t1412 = call ptr @fn_emit_call(ptr %t1411) - store ptr %t1412, ptr %retval + %t1402 = load ptr, ptr %t498 + call void @fn_reorder_named(ptr %t1401, ptr %t1402) + %t1403 = load ptr, ptr %t2 + %t1404 = load ptr, ptr %t491 + call void @fn_state_inject(ptr %t1403, ptr %t1404) + %t1405 = call ptr @fn_node(i32 33) + store ptr %t1405, ptr %t1406 + %t1407 = load ptr, ptr %t1406 + %t1408 = getelementptr inbounds %Cmp_Node, ptr %t1407, i32 0, i32 1 + %t1409 = load ptr, ptr %t490 + store ptr %t1409, ptr %t1408 + %t1410 = load ptr, ptr %t2 + %t1411 = getelementptr inbounds %Cmp_Node, ptr %t1410, i32 0, i32 4 + %t1412 = load ptr, ptr %t1406 + store ptr %t1412, ptr %t1411 + %t1413 = load ptr, ptr %t2 + %t1414 = call ptr @fn_emit_call(ptr %t1413) + store ptr %t1414, ptr %retval br label %ret ret: - %t1413 = load ptr, ptr %retval - ret ptr %t1413 + %t1415 = load ptr, ptr %retval + ret ptr %t1415 } define ptr @fn_emit_variant_new(ptr %arg_en, i32 %arg_ord, ptr %arg_args) { @@ -134272,7 +134434,7 @@ entry: br i1 %t11, label %ixok0, label %ixbad1 ixbad1: %t12 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t12, ptr @.fmt_bounds, ptr @.str10114, i32 %t6, i32 %t10) + call i32 (ptr, ptr, ...) @fprintf(ptr %t12, ptr @.fmt_bounds, ptr @.str10119, i32 %t6, i32 %t10) call void @exit(i32 1) unreachable ixok0: @@ -134297,12 +134459,12 @@ then2: %t29 = load ptr, ptr %t15 %t30 = getelementptr inbounds %Cmp_Node, ptr %t29, i32 0, i32 1 %t31 = load ptr, ptr %t30 - %t32 = call ptr @lp_str_concat(ptr @.str10115, ptr %t31) - %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str10116) + %t32 = call ptr @lp_str_concat(ptr @.str10120, ptr %t31) + %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str10121) %t34 = load i32, ptr %t21 %t35 = call ptr @fn_itoa(i32 %t34) %t36 = call ptr @lp_str_concat(ptr %t33, ptr %t35) - %t37 = call ptr @lp_str_concat(ptr %t36, ptr @.str10117) + %t37 = call ptr @lp_str_concat(ptr %t36, ptr @.str10122) %t38 = load ptr, ptr %t2 %t39 = getelementptr inbounds %LSlice, ptr %t38, i32 0, i32 1 %t40 = load i32, ptr %t39 @@ -134314,18 +134476,18 @@ ifend4: %t43 = load ptr, ptr %t0 %t44 = call i32 @fn_enum_box_size(ptr %t43) %t45 = call ptr @fn_itoa(i32 %t44) - %t46 = call ptr @lp_str_concat(ptr @.str10118, ptr %t45) - %t47 = call ptr @lp_str_concat(ptr %t46, ptr @.str10119) + %t46 = call ptr @lp_str_concat(ptr @.str10123, ptr %t45) + %t47 = call ptr @lp_str_concat(ptr %t46, ptr @.str10124) %t48 = call ptr @fn_emit_bind(ptr %t47) store ptr %t48, ptr %t49 - call void @fn_emit(ptr @.str10120) + call void @fn_emit(ptr @.str10125) %t50 = load i32, ptr %t1 %t51 = call ptr @fn_itoa(i32 %t50) call void @fn_emit(ptr %t51) - call void @fn_emit(ptr @.str10121) + call void @fn_emit(ptr @.str10126) %t52 = load ptr, ptr %t49 call void @fn_emit(ptr %t52) - call void @fn_emit(ptr @.str10122) + call void @fn_emit(ptr @.str10127) store i32 0, ptr %t53 br label %wcond5 wcond5: @@ -134348,7 +134510,7 @@ wbody6: br i1 %t67, label %ixok8, label %ixbad9 ixbad9: %t68 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t68, ptr @.fmt_bounds, ptr @.str10123, i32 %t62, i32 %t66) + call i32 (ptr, ptr, ...) @fprintf(ptr %t68, ptr @.fmt_bounds, ptr @.str10128, i32 %t62, i32 %t66) call void @exit(i32 1) unreachable ixok8: @@ -134367,7 +134529,7 @@ ixok8: br i1 %t80, label %ixok10, label %ixbad11 ixbad11: %t81 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t81, ptr @.fmt_bounds, ptr @.str10124, i32 %t75, i32 %t79) + call i32 (ptr, ptr, ...) @fprintf(ptr %t81, ptr @.fmt_bounds, ptr @.str10129, i32 %t75, i32 %t79) call void @exit(i32 1) unreachable ixok10: @@ -134381,30 +134543,30 @@ ixok10: store ptr %t88, ptr %t89 %t90 = call ptr @fn_nreg() store ptr %t90, ptr %t91 - call void @fn_emit(ptr @.str10125) + call void @fn_emit(ptr @.str10130) %t92 = load ptr, ptr %t91 call void @fn_emit(ptr %t92) - call void @fn_emit(ptr @.str10126) + call void @fn_emit(ptr @.str10131) %t93 = load ptr, ptr %t49 call void @fn_emit(ptr %t93) - call void @fn_emit(ptr @.str10127) + call void @fn_emit(ptr @.str10132) %t94 = load i32, ptr %t53 %t95 = add i32 %t94, 1 %t96 = mul i32 8, %t95 %t97 = call ptr @fn_itoa(i32 %t96) call void @fn_emit(ptr %t97) - call void @fn_emit(ptr @.str10128) - call void @fn_emit(ptr @.str10129) + call void @fn_emit(ptr @.str10133) + call void @fn_emit(ptr @.str10134) %t98 = load ptr, ptr %t73 %t99 = call ptr @fn_llty(ptr %t98) call void @fn_emit(ptr %t99) - call void @fn_emit(ptr @.str10130) + call void @fn_emit(ptr @.str10135) %t100 = load ptr, ptr %t89 call void @fn_emit(ptr %t100) - call void @fn_emit(ptr @.str10131) + call void @fn_emit(ptr @.str10136) %t101 = load ptr, ptr %t91 call void @fn_emit(ptr %t101) - call void @fn_emit(ptr @.str10132) + call void @fn_emit(ptr @.str10137) %t102 = load i32, ptr %t53 %t103 = add i32 %t102, 1 store i32 %t103, ptr %t53 @@ -134665,7 +134827,7 @@ then6: store ptr %t42, ptr %retval br label %ret ifend8: - call void @fn_perr(ptr @.str10133) + call void @fn_perr(ptr @.str10138) br label %ifend5 ifend5: %t43 = load ptr, ptr %t0 @@ -134675,7 +134837,7 @@ ifend5: %t47 = load ptr, ptr %t46 store ptr %t47, ptr %t48 %t49 = load ptr, ptr %t48 - %t50 = call i32 @lp_str_eq(ptr %t49, ptr @.str10134) + %t50 = call i32 @lp_str_eq(ptr %t49, ptr @.str10139) %t51 = icmp ne i32 %t50, 0 br i1 %t51, label %then9, label %ifend11 then9: @@ -134685,7 +134847,7 @@ then9: %t55 = icmp ne i32 %t54, 0 br i1 %t55, label %then12, label %ifend14 then12: - %t56 = call ptr @fn_val(ptr @.str10135, ptr @.str10136) + %t56 = call ptr @fn_val(ptr @.str10140, ptr @.str10141) store ptr %t56, ptr %retval br label %ret ifend14: @@ -134700,40 +134862,40 @@ ifend14: br i1 %t64, label %ixok15, label %ixbad16 ixbad16: %t65 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t65, ptr @.fmt_bounds, ptr @.str10138, i32 %t59, i32 %t63) + call i32 (ptr, ptr, ...) @fprintf(ptr %t65, ptr @.fmt_bounds, ptr @.str10143, i32 %t59, i32 %t63) call void @exit(i32 1) unreachable ixok15: %t66 = getelementptr inbounds ptr, ptr %t61, i32 %t59 %t67 = load ptr, ptr %t66 - %t68 = call ptr @lp_str_concat(ptr @.str10137, ptr %t67) + %t68 = call ptr @lp_str_concat(ptr @.str10142, ptr %t67) %t69 = call ptr @fn_emit_bind(ptr %t68) - %t70 = call ptr @fn_val(ptr %t69, ptr @.str10139) + %t70 = call ptr @fn_val(ptr %t69, ptr @.str10144) store ptr %t70, ptr %retval br label %ret ifend11: %t71 = load ptr, ptr %t48 - %t72 = call i32 @lp_str_eq(ptr %t71, ptr @.str10140) + %t72 = call i32 @lp_str_eq(ptr %t71, ptr @.str10145) %t73 = icmp ne i32 %t72, 0 br i1 %t73, label %then17, label %ifend19 then17: - %t74 = call ptr @fn_emit_bind(ptr @.str10141) - %t75 = call ptr @fn_val(ptr %t74, ptr @.str10142) + %t74 = call ptr @fn_emit_bind(ptr @.str10146) + %t75 = call ptr @fn_val(ptr %t74, ptr @.str10147) store ptr %t75, ptr %retval br label %ret ifend19: %t76 = load ptr, ptr %t48 - %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str10143) + %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str10148) %t78 = icmp ne i32 %t77, 0 br i1 %t78, label %then20, label %ifend22 then20: - call void @fn_emit(ptr @.str10144) - %t79 = call ptr @fn_val(ptr @.str10145, ptr @.str10146) + call void @fn_emit(ptr @.str10149) + %t79 = call ptr @fn_val(ptr @.str10150, ptr @.str10151) store ptr %t79, ptr %retval br label %ret ifend22: %t81 = load ptr, ptr %t48 - %t82 = call i32 @lp_str_eq(ptr %t81, ptr @.str10147) + %t82 = call i32 @lp_str_eq(ptr %t81, ptr @.str10152) %t83 = icmp ne i32 %t82, 0 %t84 = zext i1 %t83 to i32 store i32 %t84, ptr %t80 @@ -134752,33 +134914,33 @@ scend24: %t92 = icmp ne i32 %t91, 0 br i1 %t92, label %then25, label %ifend27 then25: - call void @fn_emit(ptr @.str10148) - %t93 = call ptr @fn_val(ptr @.str10149, ptr @.str10150) + call void @fn_emit(ptr @.str10153) + %t93 = call ptr @fn_val(ptr @.str10154, ptr @.str10155) store ptr %t93, ptr %retval br label %ret ifend27: %t94 = load ptr, ptr %t48 - %t95 = call i32 @lp_str_eq(ptr %t94, ptr @.str10151) + %t95 = call i32 @lp_str_eq(ptr %t94, ptr @.str10156) %t96 = icmp ne i32 %t95, 0 br i1 %t96, label %then28, label %ifend30 then28: - %t97 = call ptr @fn_emit_bind(ptr @.str10152) - %t98 = call ptr @fn_val(ptr %t97, ptr @.str10153) + %t97 = call ptr @fn_emit_bind(ptr @.str10157) + %t98 = call ptr @fn_val(ptr %t97, ptr @.str10158) store ptr %t98, ptr %retval br label %ret ifend30: %t99 = load ptr, ptr %t48 - %t100 = call i32 @lp_str_eq(ptr %t99, ptr @.str10154) + %t100 = call i32 @lp_str_eq(ptr %t99, ptr @.str10159) %t101 = icmp ne i32 %t100, 0 br i1 %t101, label %then31, label %ifend33 then31: - %t102 = call ptr @fn_emit_bind(ptr @.str10155) - %t103 = call ptr @fn_val(ptr %t102, ptr @.str10156) + %t102 = call ptr @fn_emit_bind(ptr @.str10160) + %t103 = call ptr @fn_val(ptr %t102, ptr @.str10161) store ptr %t103, ptr %retval br label %ret ifend33: %t104 = load ptr, ptr %t48 - %t105 = call i32 @lp_str_eq(ptr %t104, ptr @.str10157) + %t105 = call i32 @lp_str_eq(ptr %t104, ptr @.str10162) %t106 = icmp ne i32 %t105, 0 br i1 %t106, label %then34, label %ifend36 then34: @@ -134793,7 +134955,7 @@ then34: br i1 %t114, label %ixok37, label %ixbad38 ixbad38: %t115 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t115, ptr @.fmt_bounds, ptr @.str10158, i32 0, i32 %t113) + call i32 (ptr, ptr, ...) @fprintf(ptr %t115, ptr @.fmt_bounds, ptr @.str10163, i32 0, i32 %t113) call void @exit(i32 1) unreachable ixok37: @@ -134804,15 +134966,15 @@ ixok37: %t120 = load ptr, ptr %t119 %t121 = getelementptr inbounds %Cmp_Val, ptr %t120, i32 0, i32 0 %t122 = load ptr, ptr %t121 - %t123 = call ptr @lp_str_concat(ptr @.str10159, ptr %t122) - %t124 = call ptr @lp_str_concat(ptr %t123, ptr @.str10160) + %t123 = call ptr @lp_str_concat(ptr @.str10164, ptr %t122) + %t124 = call ptr @lp_str_concat(ptr %t123, ptr @.str10165) %t125 = call ptr @fn_emit_bind(ptr %t124) - %t126 = call ptr @fn_val(ptr %t125, ptr @.str10161) + %t126 = call ptr @fn_val(ptr %t125, ptr @.str10166) store ptr %t126, ptr %retval br label %ret ifend36: %t127 = load ptr, ptr %t48 - %t128 = call i32 @lp_str_eq(ptr %t127, ptr @.str10162) + %t128 = call i32 @lp_str_eq(ptr %t127, ptr @.str10167) %t129 = icmp ne i32 %t128, 0 br i1 %t129, label %then39, label %ifend41 then39: @@ -134827,7 +134989,7 @@ then39: br i1 %t137, label %ixok42, label %ixbad43 ixbad43: %t138 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t138, ptr @.fmt_bounds, ptr @.str10163, i32 0, i32 %t136) + call i32 (ptr, ptr, ...) @fprintf(ptr %t138, ptr @.fmt_bounds, ptr @.str10168, i32 0, i32 %t136) call void @exit(i32 1) unreachable ixok42: @@ -134846,7 +135008,7 @@ ixok42: br i1 %t150, label %ixok44, label %ixbad45 ixbad45: %t151 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t151, ptr @.fmt_bounds, ptr @.str10164, i32 1, i32 %t149) + call i32 (ptr, ptr, ...) @fprintf(ptr %t151, ptr @.fmt_bounds, ptr @.str10169, i32 1, i32 %t149) call void @exit(i32 1) unreachable ixok44: @@ -134854,34 +135016,34 @@ ixok44: %t153 = load ptr, ptr %t152 %t154 = call ptr @fn_emit_expr(ptr %t153) store ptr %t154, ptr %t155 - call void @fn_emit(ptr @.str10165) + call void @fn_emit(ptr @.str10170) %t156 = load ptr, ptr %t142 %t157 = getelementptr inbounds %Cmp_Val, ptr %t156, i32 0, i32 0 %t158 = load ptr, ptr %t157 call void @fn_emit(ptr %t158) - call void @fn_emit(ptr @.str10166) + call void @fn_emit(ptr @.str10171) %t159 = load ptr, ptr %t155 %t160 = getelementptr inbounds %Cmp_Val, ptr %t159, i32 0, i32 0 %t161 = load ptr, ptr %t160 call void @fn_emit(ptr %t161) - call void @fn_emit(ptr @.str10167) - %t162 = call ptr @fn_val(ptr @.str10168, ptr @.str10169) + call void @fn_emit(ptr @.str10172) + %t162 = call ptr @fn_val(ptr @.str10173, ptr @.str10174) store ptr %t162, ptr %retval br label %ret ifend41: %t163 = load ptr, ptr %t48 - %t164 = call i32 @lp_str_eq(ptr %t163, ptr @.str10170) + %t164 = call i32 @lp_str_eq(ptr %t163, ptr @.str10175) %t165 = icmp ne i32 %t164, 0 br i1 %t165, label %then46, label %ifend48 then46: store i32 1, ptr @g_g_uses_quit - call void @fn_emit(ptr @.str10171) - %t166 = call ptr @fn_val(ptr @.str10172, ptr @.str10173) + call void @fn_emit(ptr @.str10176) + %t166 = call ptr @fn_val(ptr @.str10177, ptr @.str10178) store ptr %t166, ptr %retval br label %ret ifend48: %t167 = load ptr, ptr %t48 - %t168 = call i32 @lp_str_eq(ptr %t167, ptr @.str10174) + %t168 = call i32 @lp_str_eq(ptr %t167, ptr @.str10179) %t169 = icmp ne i32 %t168, 0 br i1 %t169, label %then49, label %ifend51 then49: @@ -134896,7 +135058,7 @@ then49: br i1 %t177, label %ixok52, label %ixbad53 ixbad53: %t178 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t178, ptr @.fmt_bounds, ptr @.str10175, i32 0, i32 %t176) + call i32 (ptr, ptr, ...) @fprintf(ptr %t178, ptr @.fmt_bounds, ptr @.str10180, i32 0, i32 %t176) call void @exit(i32 1) unreachable ixok52: @@ -134915,7 +135077,7 @@ ixok52: br i1 %t190, label %ixok54, label %ixbad55 ixbad55: %t191 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t191, ptr @.fmt_bounds, ptr @.str10176, i32 1, i32 %t189) + call i32 (ptr, ptr, ...) @fprintf(ptr %t191, ptr @.fmt_bounds, ptr @.str10181, i32 1, i32 %t189) call void @exit(i32 1) unreachable ixok54: @@ -134926,20 +135088,20 @@ ixok54: %t196 = load ptr, ptr %t182 %t197 = getelementptr inbounds %Cmp_Val, ptr %t196, i32 0, i32 0 %t198 = load ptr, ptr %t197 - %t199 = call ptr @lp_str_concat(ptr @.str10177, ptr %t198) - %t200 = call ptr @lp_str_concat(ptr %t199, ptr @.str10178) + %t199 = call ptr @lp_str_concat(ptr @.str10182, ptr %t198) + %t200 = call ptr @lp_str_concat(ptr %t199, ptr @.str10183) %t201 = load ptr, ptr %t195 %t202 = getelementptr inbounds %Cmp_Val, ptr %t201, i32 0, i32 0 %t203 = load ptr, ptr %t202 %t204 = call ptr @lp_str_concat(ptr %t200, ptr %t203) - %t205 = call ptr @lp_str_concat(ptr %t204, ptr @.str10179) + %t205 = call ptr @lp_str_concat(ptr %t204, ptr @.str10184) %t206 = call ptr @fn_emit_bind(ptr %t205) - %t207 = call ptr @fn_val(ptr %t206, ptr @.str10180) + %t207 = call ptr @fn_val(ptr %t206, ptr @.str10185) store ptr %t207, ptr %retval br label %ret ifend51: %t208 = load ptr, ptr %t48 - %t209 = call i32 @lp_str_eq(ptr %t208, ptr @.str10181) + %t209 = call i32 @lp_str_eq(ptr %t208, ptr @.str10186) %t210 = icmp ne i32 %t209, 0 br i1 %t210, label %then56, label %ifend58 then56: @@ -134954,7 +135116,7 @@ then56: br i1 %t218, label %ixok59, label %ixbad60 ixbad60: %t219 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t219, ptr @.fmt_bounds, ptr @.str10182, i32 0, i32 %t217) + call i32 (ptr, ptr, ...) @fprintf(ptr %t219, ptr @.fmt_bounds, ptr @.str10187, i32 0, i32 %t217) call void @exit(i32 1) unreachable ixok59: @@ -134973,7 +135135,7 @@ ixok59: br i1 %t231, label %ixok61, label %ixbad62 ixbad62: %t232 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t232, ptr @.fmt_bounds, ptr @.str10183, i32 1, i32 %t230) + call i32 (ptr, ptr, ...) @fprintf(ptr %t232, ptr @.fmt_bounds, ptr @.str10188, i32 1, i32 %t230) call void @exit(i32 1) unreachable ixok61: @@ -134992,7 +135154,7 @@ ixok61: br i1 %t244, label %ixok63, label %ixbad64 ixbad64: %t245 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t245, ptr @.fmt_bounds, ptr @.str10184, i32 2, i32 %t243) + call i32 (ptr, ptr, ...) @fprintf(ptr %t245, ptr @.fmt_bounds, ptr @.str10189, i32 2, i32 %t243) call void @exit(i32 1) unreachable ixok63: @@ -135000,28 +135162,28 @@ ixok63: %t247 = load ptr, ptr %t246 %t248 = call ptr @fn_emit_expr(ptr %t247) store ptr %t248, ptr %t249 - call void @fn_emit(ptr @.str10185) + call void @fn_emit(ptr @.str10190) %t250 = load ptr, ptr %t223 %t251 = getelementptr inbounds %Cmp_Val, ptr %t250, i32 0, i32 0 %t252 = load ptr, ptr %t251 call void @fn_emit(ptr %t252) - call void @fn_emit(ptr @.str10186) + call void @fn_emit(ptr @.str10191) %t253 = load ptr, ptr %t236 %t254 = getelementptr inbounds %Cmp_Val, ptr %t253, i32 0, i32 0 %t255 = load ptr, ptr %t254 call void @fn_emit(ptr %t255) - call void @fn_emit(ptr @.str10187) + call void @fn_emit(ptr @.str10192) %t256 = load ptr, ptr %t249 %t257 = getelementptr inbounds %Cmp_Val, ptr %t256, i32 0, i32 0 %t258 = load ptr, ptr %t257 call void @fn_emit(ptr %t258) - call void @fn_emit(ptr @.str10188) - %t259 = call ptr @fn_val(ptr @.str10189, ptr @.str10190) + call void @fn_emit(ptr @.str10193) + %t259 = call ptr @fn_val(ptr @.str10194, ptr @.str10195) store ptr %t259, ptr %retval br label %ret ifend58: %t260 = load ptr, ptr %t48 - %t261 = call i32 @lp_str_eq(ptr %t260, ptr @.str10191) + %t261 = call i32 @lp_str_eq(ptr %t260, ptr @.str10196) %t262 = icmp ne i32 %t261, 0 br i1 %t262, label %then65, label %ifend67 then65: @@ -135036,7 +135198,7 @@ then65: br i1 %t270, label %ixok68, label %ixbad69 ixbad69: %t271 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t271, ptr @.fmt_bounds, ptr @.str10192, i32 0, i32 %t269) + call i32 (ptr, ptr, ...) @fprintf(ptr %t271, ptr @.fmt_bounds, ptr @.str10197, i32 0, i32 %t269) call void @exit(i32 1) unreachable ixok68: @@ -135047,15 +135209,15 @@ ixok68: %t276 = load ptr, ptr %t275 %t277 = getelementptr inbounds %Cmp_Val, ptr %t276, i32 0, i32 0 %t278 = load ptr, ptr %t277 - %t279 = call ptr @lp_str_concat(ptr @.str10193, ptr %t278) - %t280 = call ptr @lp_str_concat(ptr %t279, ptr @.str10194) + %t279 = call ptr @lp_str_concat(ptr @.str10198, ptr %t278) + %t280 = call ptr @lp_str_concat(ptr %t279, ptr @.str10199) %t281 = call ptr @fn_emit_bind(ptr %t280) - %t282 = call ptr @fn_val(ptr %t281, ptr @.str10195) + %t282 = call ptr @fn_val(ptr %t281, ptr @.str10200) store ptr %t282, ptr %retval br label %ret ifend67: %t283 = load ptr, ptr %t48 - %t284 = call i32 @lp_str_eq(ptr %t283, ptr @.str10196) + %t284 = call i32 @lp_str_eq(ptr %t283, ptr @.str10201) %t285 = icmp ne i32 %t284, 0 br i1 %t285, label %then70, label %ifend72 then70: @@ -135070,7 +135232,7 @@ then70: br i1 %t293, label %ixok73, label %ixbad74 ixbad74: %t294 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t294, ptr @.fmt_bounds, ptr @.str10197, i32 0, i32 %t292) + call i32 (ptr, ptr, ...) @fprintf(ptr %t294, ptr @.fmt_bounds, ptr @.str10202, i32 0, i32 %t292) call void @exit(i32 1) unreachable ixok73: @@ -135081,15 +135243,15 @@ ixok73: %t299 = load ptr, ptr %t298 %t300 = getelementptr inbounds %Cmp_Val, ptr %t299, i32 0, i32 0 %t301 = load ptr, ptr %t300 - %t302 = call ptr @lp_str_concat(ptr @.str10198, ptr %t301) - %t303 = call ptr @lp_str_concat(ptr %t302, ptr @.str10199) + %t302 = call ptr @lp_str_concat(ptr @.str10203, ptr %t301) + %t303 = call ptr @lp_str_concat(ptr %t302, ptr @.str10204) %t304 = call ptr @fn_emit_bind(ptr %t303) - %t305 = call ptr @fn_val(ptr %t304, ptr @.str10200) + %t305 = call ptr @fn_val(ptr %t304, ptr @.str10205) store ptr %t305, ptr %retval br label %ret ifend72: %t306 = load ptr, ptr %t48 - %t307 = call i32 @lp_str_eq(ptr %t306, ptr @.str10201) + %t307 = call i32 @lp_str_eq(ptr %t306, ptr @.str10206) %t308 = icmp ne i32 %t307, 0 br i1 %t308, label %then75, label %ifend77 then75: @@ -135104,7 +135266,7 @@ then75: br i1 %t316, label %ixok78, label %ixbad79 ixbad79: %t317 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t317, ptr @.fmt_bounds, ptr @.str10202, i32 0, i32 %t315) + call i32 (ptr, ptr, ...) @fprintf(ptr %t317, ptr @.fmt_bounds, ptr @.str10207, i32 0, i32 %t315) call void @exit(i32 1) unreachable ixok78: @@ -135123,7 +135285,7 @@ ixok78: br i1 %t329, label %ixok80, label %ixbad81 ixbad81: %t330 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t330, ptr @.fmt_bounds, ptr @.str10203, i32 1, i32 %t328) + call i32 (ptr, ptr, ...) @fprintf(ptr %t330, ptr @.fmt_bounds, ptr @.str10208, i32 1, i32 %t328) call void @exit(i32 1) unreachable ixok80: @@ -135131,23 +135293,23 @@ ixok80: %t332 = load ptr, ptr %t331 %t333 = call ptr @fn_emit_expr(ptr %t332) store ptr %t333, ptr %t334 - call void @fn_emit(ptr @.str10204) + call void @fn_emit(ptr @.str10209) %t335 = load ptr, ptr %t321 %t336 = getelementptr inbounds %Cmp_Val, ptr %t335, i32 0, i32 0 %t337 = load ptr, ptr %t336 call void @fn_emit(ptr %t337) - call void @fn_emit(ptr @.str10205) + call void @fn_emit(ptr @.str10210) %t338 = load ptr, ptr %t334 %t339 = getelementptr inbounds %Cmp_Val, ptr %t338, i32 0, i32 0 %t340 = load ptr, ptr %t339 call void @fn_emit(ptr %t340) - call void @fn_emit(ptr @.str10206) - %t341 = call ptr @fn_val(ptr @.str10207, ptr @.str10208) + call void @fn_emit(ptr @.str10211) + %t341 = call ptr @fn_val(ptr @.str10212, ptr @.str10213) store ptr %t341, ptr %retval br label %ret ifend77: %t342 = load ptr, ptr %t48 - %t343 = call i32 @lp_str_eq(ptr %t342, ptr @.str10209) + %t343 = call i32 @lp_str_eq(ptr %t342, ptr @.str10214) %t344 = icmp ne i32 %t343, 0 br i1 %t344, label %then82, label %ifend84 then82: @@ -135162,7 +135324,7 @@ then82: br i1 %t352, label %ixok85, label %ixbad86 ixbad86: %t353 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t353, ptr @.fmt_bounds, ptr @.str10210, i32 0, i32 %t351) + call i32 (ptr, ptr, ...) @fprintf(ptr %t353, ptr @.fmt_bounds, ptr @.str10215, i32 0, i32 %t351) call void @exit(i32 1) unreachable ixok85: @@ -135173,75 +135335,75 @@ ixok85: %t358 = load ptr, ptr %t357 %t359 = getelementptr inbounds %Cmp_Val, ptr %t358, i32 0, i32 0 %t360 = load ptr, ptr %t359 - %t361 = call ptr @lp_str_concat(ptr @.str10211, ptr %t360) - %t362 = call ptr @lp_str_concat(ptr %t361, ptr @.str10212) + %t361 = call ptr @lp_str_concat(ptr @.str10216, ptr %t360) + %t362 = call ptr @lp_str_concat(ptr %t361, ptr @.str10217) %t363 = call ptr @fn_emit_bind(ptr %t362) - %t364 = call ptr @fn_val(ptr %t363, ptr @.str10213) + %t364 = call ptr @fn_val(ptr %t363, ptr @.str10218) store ptr %t364, ptr %retval br label %ret ifend84: %t365 = load ptr, ptr %t48 - %t366 = call i32 @lp_str_eq(ptr %t365, ptr @.str10214) + %t366 = call i32 @lp_str_eq(ptr %t365, ptr @.str10219) %t367 = icmp ne i32 %t366, 0 br i1 %t367, label %then87, label %ifend89 then87: - %t368 = call ptr @fn_emit_bind(ptr @.str10215) + %t368 = call ptr @fn_emit_bind(ptr @.str10220) store ptr %t368, ptr %t369 %t370 = load ptr, ptr %t369 - %t371 = call ptr @lp_str_concat(ptr @.str10216, ptr %t370) - %t372 = call ptr @lp_str_concat(ptr %t371, ptr @.str10217) + %t371 = call ptr @lp_str_concat(ptr @.str10221, ptr %t370) + %t372 = call ptr @lp_str_concat(ptr %t371, ptr @.str10222) %t373 = call ptr @fn_emit_bind(ptr %t372) store ptr %t373, ptr %t374 %t375 = load ptr, ptr %t374 - %t376 = call ptr @lp_str_concat(ptr @.str10218, ptr %t375) - %t377 = call ptr @lp_str_concat(ptr %t376, ptr @.str10219) + %t376 = call ptr @lp_str_concat(ptr @.str10223, ptr %t375) + %t377 = call ptr @lp_str_concat(ptr %t376, ptr @.str10224) %t378 = call ptr @fn_emit_bind(ptr %t377) - %t379 = call ptr @fn_val(ptr %t378, ptr @.str10220) + %t379 = call ptr @fn_val(ptr %t378, ptr @.str10225) store ptr %t379, ptr %retval br label %ret ifend89: %t380 = load ptr, ptr %t48 - %t381 = call i32 @lp_str_eq(ptr %t380, ptr @.str10221) + %t381 = call i32 @lp_str_eq(ptr %t380, ptr @.str10226) %t382 = icmp ne i32 %t381, 0 br i1 %t382, label %then90, label %ifend92 then90: - %t383 = call ptr @fn_emit_bind(ptr @.str10222) - %t384 = call ptr @fn_val(ptr %t383, ptr @.str10223) + %t383 = call ptr @fn_emit_bind(ptr @.str10227) + %t384 = call ptr @fn_val(ptr %t383, ptr @.str10228) store ptr %t384, ptr %retval br label %ret ifend92: %t385 = load ptr, ptr %t48 - %t386 = call i32 @lp_str_eq(ptr %t385, ptr @.str10224) + %t386 = call i32 @lp_str_eq(ptr %t385, ptr @.str10229) %t387 = icmp ne i32 %t386, 0 br i1 %t387, label %then93, label %ifend95 then93: - call void @fn_emit(ptr @.str10225) - %t388 = call ptr @fn_val(ptr @.str10226, ptr @.str10227) + call void @fn_emit(ptr @.str10230) + %t388 = call ptr @fn_val(ptr @.str10231, ptr @.str10232) store ptr %t388, ptr %retval br label %ret ifend95: %t389 = load ptr, ptr %t48 - %t390 = call i32 @lp_str_eq(ptr %t389, ptr @.str10228) + %t390 = call i32 @lp_str_eq(ptr %t389, ptr @.str10233) %t391 = icmp ne i32 %t390, 0 br i1 %t391, label %then96, label %ifend98 then96: - call void @fn_emit(ptr @.str10229) - %t392 = call ptr @fn_val(ptr @.str10230, ptr @.str10231) + call void @fn_emit(ptr @.str10234) + %t392 = call ptr @fn_val(ptr @.str10235, ptr @.str10236) store ptr %t392, ptr %retval br label %ret ifend98: %t393 = load ptr, ptr %t48 - %t394 = call i32 @lp_str_eq(ptr %t393, ptr @.str10232) + %t394 = call i32 @lp_str_eq(ptr %t393, ptr @.str10237) %t395 = icmp ne i32 %t394, 0 br i1 %t395, label %then99, label %ifend101 then99: - call void @fn_emit(ptr @.str10233) - %t396 = call ptr @fn_val(ptr @.str10234, ptr @.str10235) + call void @fn_emit(ptr @.str10238) + %t396 = call ptr @fn_val(ptr @.str10239, ptr @.str10240) store ptr %t396, ptr %retval br label %ret ifend101: %t397 = load ptr, ptr %t48 - %t398 = call i32 @lp_str_eq(ptr %t397, ptr @.str10236) + %t398 = call i32 @lp_str_eq(ptr %t397, ptr @.str10241) %t399 = icmp ne i32 %t398, 0 br i1 %t399, label %then102, label %ifend104 then102: @@ -135256,7 +135418,7 @@ then102: br i1 %t407, label %ixok105, label %ixbad106 ixbad106: %t408 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t408, ptr @.fmt_bounds, ptr @.str10237, i32 0, i32 %t406) + call i32 (ptr, ptr, ...) @fprintf(ptr %t408, ptr @.fmt_bounds, ptr @.str10242, i32 0, i32 %t406) call void @exit(i32 1) unreachable ixok105: @@ -135264,18 +135426,18 @@ ixok105: %t410 = load ptr, ptr %t409 %t411 = call ptr @fn_emit_expr(ptr %t410) store ptr %t411, ptr %t412 - call void @fn_emit(ptr @.str10238) + call void @fn_emit(ptr @.str10243) %t413 = load ptr, ptr %t412 %t414 = getelementptr inbounds %Cmp_Val, ptr %t413, i32 0, i32 0 %t415 = load ptr, ptr %t414 call void @fn_emit(ptr %t415) - call void @fn_emit(ptr @.str10239) - %t416 = call ptr @fn_val(ptr @.str10240, ptr @.str10241) + call void @fn_emit(ptr @.str10244) + %t416 = call ptr @fn_val(ptr @.str10245, ptr @.str10246) store ptr %t416, ptr %retval br label %ret ifend104: %t417 = load ptr, ptr %t48 - %t418 = call i32 @lp_str_eq(ptr %t417, ptr @.str10242) + %t418 = call i32 @lp_str_eq(ptr %t417, ptr @.str10247) %t419 = icmp ne i32 %t418, 0 br i1 %t419, label %then107, label %ifend109 then107: @@ -135290,7 +135452,7 @@ then107: br i1 %t427, label %ixok110, label %ixbad111 ixbad111: %t428 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t428, ptr @.fmt_bounds, ptr @.str10243, i32 0, i32 %t426) + call i32 (ptr, ptr, ...) @fprintf(ptr %t428, ptr @.fmt_bounds, ptr @.str10248, i32 0, i32 %t426) call void @exit(i32 1) unreachable ixok110: @@ -135298,24 +135460,24 @@ ixok110: %t430 = load ptr, ptr %t429 %t431 = call ptr @fn_emit_expr(ptr %t430) store ptr %t431, ptr %t432 - call void @fn_emit(ptr @.str10244) + call void @fn_emit(ptr @.str10249) %t433 = load ptr, ptr %t432 %t434 = getelementptr inbounds %Cmp_Val, ptr %t433, i32 0, i32 0 %t435 = load ptr, ptr %t434 call void @fn_emit(ptr %t435) - call void @fn_emit(ptr @.str10245) - %t436 = call ptr @fn_val(ptr @.str10246, ptr @.str10247) + call void @fn_emit(ptr @.str10250) + %t436 = call ptr @fn_val(ptr @.str10251, ptr @.str10252) store ptr %t436, ptr %retval br label %ret ifend109: %t438 = load ptr, ptr %t48 - %t439 = call i32 @lp_str_eq(ptr %t438, ptr @.str10248) + %t439 = call i32 @lp_str_eq(ptr %t438, ptr @.str10253) %t440 = icmp ne i32 %t439, 0 %t441 = zext i1 %t440 to i32 store i32 %t441, ptr %t437 br i1 %t440, label %sc112, label %scend113 sc112: - %t442 = call ptr @fn_find_extern(ptr @.str10249) + %t442 = call ptr @fn_find_extern(ptr @.str10254) %t443 = icmp eq ptr %t442, null %t444 = zext i1 %t443 to i32 %t445 = icmp ne i32 %t444, 0 @@ -135339,7 +135501,7 @@ then114: br i1 %t456, label %ixok117, label %ixbad118 ixbad118: %t457 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t457, ptr @.fmt_bounds, ptr @.str10250, i32 0, i32 %t455) + call i32 (ptr, ptr, ...) @fprintf(ptr %t457, ptr @.fmt_bounds, ptr @.str10255, i32 0, i32 %t455) call void @exit(i32 1) unreachable ixok117: @@ -135358,7 +135520,7 @@ ixok117: br i1 %t469, label %ixok119, label %ixbad120 ixbad120: %t470 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t470, ptr @.fmt_bounds, ptr @.str10251, i32 1, i32 %t468) + call i32 (ptr, ptr, ...) @fprintf(ptr %t470, ptr @.fmt_bounds, ptr @.str10256, i32 1, i32 %t468) call void @exit(i32 1) unreachable ixok119: @@ -135377,7 +135539,7 @@ ixok119: br i1 %t482, label %ixok121, label %ixbad122 ixbad122: %t483 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t483, ptr @.fmt_bounds, ptr @.str10252, i32 2, i32 %t481) + call i32 (ptr, ptr, ...) @fprintf(ptr %t483, ptr @.fmt_bounds, ptr @.str10257, i32 2, i32 %t481) call void @exit(i32 1) unreachable ixok121: @@ -135385,34 +135547,34 @@ ixok121: %t485 = load ptr, ptr %t484 %t486 = call ptr @fn_emit_expr(ptr %t485) store ptr %t486, ptr %t487 - call void @fn_emit(ptr @.str10253) + call void @fn_emit(ptr @.str10258) %t488 = load ptr, ptr %t461 %t489 = getelementptr inbounds %Cmp_Val, ptr %t488, i32 0, i32 0 %t490 = load ptr, ptr %t489 call void @fn_emit(ptr %t490) - call void @fn_emit(ptr @.str10254) + call void @fn_emit(ptr @.str10259) %t491 = load ptr, ptr %t474 %t492 = getelementptr inbounds %Cmp_Val, ptr %t491, i32 0, i32 0 %t493 = load ptr, ptr %t492 call void @fn_emit(ptr %t493) - call void @fn_emit(ptr @.str10255) + call void @fn_emit(ptr @.str10260) %t494 = load ptr, ptr %t487 %t495 = getelementptr inbounds %Cmp_Val, ptr %t494, i32 0, i32 0 %t496 = load ptr, ptr %t495 call void @fn_emit(ptr %t496) - call void @fn_emit(ptr @.str10256) - %t497 = call ptr @fn_val(ptr @.str10257, ptr @.str10258) + call void @fn_emit(ptr @.str10261) + %t497 = call ptr @fn_val(ptr @.str10262, ptr @.str10263) store ptr %t497, ptr %retval br label %ret ifend116: %t499 = load ptr, ptr %t48 - %t500 = call i32 @lp_str_eq(ptr %t499, ptr @.str10259) + %t500 = call i32 @lp_str_eq(ptr %t499, ptr @.str10264) %t501 = icmp ne i32 %t500, 0 %t502 = zext i1 %t501 to i32 store i32 %t502, ptr %t498 br i1 %t501, label %sc123, label %scend124 sc123: - %t503 = call ptr @fn_find_extern(ptr @.str10260) + %t503 = call ptr @fn_find_extern(ptr @.str10265) %t504 = icmp eq ptr %t503, null %t505 = zext i1 %t504 to i32 %t506 = icmp ne i32 %t505, 0 @@ -135436,7 +135598,7 @@ then125: br i1 %t517, label %ixok128, label %ixbad129 ixbad129: %t518 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t518, ptr @.fmt_bounds, ptr @.str10261, i32 0, i32 %t516) + call i32 (ptr, ptr, ...) @fprintf(ptr %t518, ptr @.fmt_bounds, ptr @.str10266, i32 0, i32 %t516) call void @exit(i32 1) unreachable ixok128: @@ -135455,7 +135617,7 @@ ixok128: br i1 %t530, label %ixok130, label %ixbad131 ixbad131: %t531 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t531, ptr @.fmt_bounds, ptr @.str10262, i32 1, i32 %t529) + call i32 (ptr, ptr, ...) @fprintf(ptr %t531, ptr @.fmt_bounds, ptr @.str10267, i32 1, i32 %t529) call void @exit(i32 1) unreachable ixok130: @@ -135466,20 +135628,20 @@ ixok130: %t536 = load ptr, ptr %t522 %t537 = getelementptr inbounds %Cmp_Val, ptr %t536, i32 0, i32 0 %t538 = load ptr, ptr %t537 - %t539 = call ptr @lp_str_concat(ptr @.str10263, ptr %t538) - %t540 = call ptr @lp_str_concat(ptr %t539, ptr @.str10264) + %t539 = call ptr @lp_str_concat(ptr @.str10268, ptr %t538) + %t540 = call ptr @lp_str_concat(ptr %t539, ptr @.str10269) %t541 = load ptr, ptr %t535 %t542 = getelementptr inbounds %Cmp_Val, ptr %t541, i32 0, i32 0 %t543 = load ptr, ptr %t542 %t544 = call ptr @lp_str_concat(ptr %t540, ptr %t543) - %t545 = call ptr @lp_str_concat(ptr %t544, ptr @.str10265) + %t545 = call ptr @lp_str_concat(ptr %t544, ptr @.str10270) %t546 = call ptr @fn_emit_bind(ptr %t545) - %t547 = call ptr @fn_val(ptr %t546, ptr @.str10266) + %t547 = call ptr @fn_val(ptr %t546, ptr @.str10271) store ptr %t547, ptr %retval br label %ret ifend127: %t548 = load ptr, ptr %t48 - %t549 = call i32 @lp_str_eq(ptr %t548, ptr @.str10267) + %t549 = call i32 @lp_str_eq(ptr %t548, ptr @.str10272) %t550 = icmp ne i32 %t549, 0 br i1 %t550, label %then132, label %ifend134 then132: @@ -135489,7 +135651,7 @@ then132: br label %ret ifend134: %t553 = load ptr, ptr %t48 - %t554 = call i32 @lp_str_eq(ptr %t553, ptr @.str10268) + %t554 = call i32 @lp_str_eq(ptr %t553, ptr @.str10273) %t555 = icmp ne i32 %t554, 0 br i1 %t555, label %then135, label %ifend137 then135: @@ -135499,7 +135661,7 @@ then135: br label %ret ifend137: %t558 = load ptr, ptr %t48 - %t559 = call i32 @lp_str_eq(ptr %t558, ptr @.str10269) + %t559 = call i32 @lp_str_eq(ptr %t558, ptr @.str10274) %t560 = icmp ne i32 %t559, 0 br i1 %t560, label %then138, label %ifend140 then138: @@ -135514,7 +135676,7 @@ then138: br i1 %t568, label %ixok141, label %ixbad142 ixbad142: %t569 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t569, ptr @.fmt_bounds, ptr @.str10270, i32 0, i32 %t567) + call i32 (ptr, ptr, ...) @fprintf(ptr %t569, ptr @.fmt_bounds, ptr @.str10275, i32 0, i32 %t567) call void @exit(i32 1) unreachable ixok141: @@ -135526,7 +135688,7 @@ ixok141: %t575 = getelementptr inbounds %Cmp_Val, ptr %t574, i32 0, i32 1 %t576 = load ptr, ptr %t575 %t577 = call ptr @fn_llty(ptr %t576) - %t578 = call i32 @lp_str_eq(ptr %t577, ptr @.str10271) + %t578 = call i32 @lp_str_eq(ptr %t577, ptr @.str10276) %t579 = icmp ne i32 %t578, 0 br i1 %t579, label %then143, label %ifend145 then143: @@ -135550,7 +135712,7 @@ ifend148: %t589 = getelementptr inbounds %Cmp_Val, ptr %t588, i32 0, i32 1 %t590 = load ptr, ptr %t589 %t591 = call ptr @fn_llty(ptr %t590) - %t592 = call i32 @lp_str_eq(ptr %t591, ptr @.str10272) + %t592 = call i32 @lp_str_eq(ptr %t591, ptr @.str10277) %t593 = icmp ne i32 %t592, 0 br i1 %t593, label %then149, label %ifend151 then149: @@ -135558,10 +135720,10 @@ then149: %t594 = load ptr, ptr %t573 %t595 = getelementptr inbounds %Cmp_Val, ptr %t594, i32 0, i32 0 %t596 = load ptr, ptr %t595 - %t597 = call ptr @lp_str_concat(ptr @.str10273, ptr %t596) - %t598 = call ptr @lp_str_concat(ptr %t597, ptr @.str10274) + %t597 = call ptr @lp_str_concat(ptr @.str10278, ptr %t596) + %t598 = call ptr @lp_str_concat(ptr %t597, ptr @.str10279) %t599 = call ptr @fn_emit_bind(ptr %t598) - %t600 = call ptr @fn_val(ptr %t599, ptr @.str10275) + %t600 = call ptr @fn_val(ptr %t599, ptr @.str10280) store ptr %t600, ptr %retval br label %ret ifend151: @@ -135569,15 +135731,15 @@ ifend151: %t601 = load ptr, ptr %t573 %t602 = getelementptr inbounds %Cmp_Val, ptr %t601, i32 0, i32 0 %t603 = load ptr, ptr %t602 - %t604 = call ptr @lp_str_concat(ptr @.str10276, ptr %t603) - %t605 = call ptr @lp_str_concat(ptr %t604, ptr @.str10277) + %t604 = call ptr @lp_str_concat(ptr @.str10281, ptr %t603) + %t605 = call ptr @lp_str_concat(ptr %t604, ptr @.str10282) %t606 = call ptr @fn_emit_bind(ptr %t605) - %t607 = call ptr @fn_val(ptr %t606, ptr @.str10278) + %t607 = call ptr @fn_val(ptr %t606, ptr @.str10283) store ptr %t607, ptr %retval br label %ret ifend140: %t608 = load ptr, ptr %t48 - %t609 = call i32 @lp_str_eq(ptr %t608, ptr @.str10279) + %t609 = call i32 @lp_str_eq(ptr %t608, ptr @.str10284) %t610 = icmp ne i32 %t609, 0 br i1 %t610, label %then152, label %ifend154 then152: @@ -135592,7 +135754,7 @@ then152: br i1 %t618, label %ixok155, label %ixbad156 ixbad156: %t619 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t619, ptr @.fmt_bounds, ptr @.str10280, i32 0, i32 %t617) + call i32 (ptr, ptr, ...) @fprintf(ptr %t619, ptr @.fmt_bounds, ptr @.str10285, i32 0, i32 %t617) call void @exit(i32 1) unreachable ixok155: @@ -135616,15 +135778,15 @@ ifend159: %t632 = getelementptr inbounds %Cmp_Val, ptr %t631, i32 0, i32 1 %t633 = load ptr, ptr %t632 %t634 = call ptr @fn_llty(ptr %t633) - %t635 = call i32 @lp_str_eq(ptr %t634, ptr @.str10281) + %t635 = call i32 @lp_str_eq(ptr %t634, ptr @.str10286) %t636 = icmp ne i32 %t635, 0 br i1 %t636, label %then160, label %else161 then160: %t637 = load ptr, ptr %t623 %t638 = getelementptr inbounds %Cmp_Val, ptr %t637, i32 0, i32 0 %t639 = load ptr, ptr %t638 - %t640 = call ptr @lp_str_concat(ptr %t639, ptr @.str10283) - %t641 = call ptr @lp_str_concat(ptr @.str10282, ptr %t640) + %t640 = call ptr @lp_str_concat(ptr %t639, ptr @.str10288) + %t641 = call ptr @lp_str_concat(ptr @.str10287, ptr %t640) call void @fn_emit(ptr %t641) br label %ifend162 else161: @@ -135632,34 +135794,34 @@ else161: %t643 = getelementptr inbounds %Cmp_Val, ptr %t642, i32 0, i32 1 %t644 = load ptr, ptr %t643 %t645 = call ptr @fn_llty(ptr %t644) - %t646 = call i32 @lp_str_eq(ptr %t645, ptr @.str10284) + %t646 = call i32 @lp_str_eq(ptr %t645, ptr @.str10289) %t647 = icmp ne i32 %t646, 0 br i1 %t647, label %then163, label %else164 then163: %t648 = load ptr, ptr %t623 %t649 = getelementptr inbounds %Cmp_Val, ptr %t648, i32 0, i32 0 %t650 = load ptr, ptr %t649 - %t651 = call ptr @lp_str_concat(ptr %t650, ptr @.str10286) - %t652 = call ptr @lp_str_concat(ptr @.str10285, ptr %t651) + %t651 = call ptr @lp_str_concat(ptr %t650, ptr @.str10291) + %t652 = call ptr @lp_str_concat(ptr @.str10290, ptr %t651) call void @fn_emit(ptr %t652) br label %ifend165 else164: %t653 = load ptr, ptr %t623 %t654 = getelementptr inbounds %Cmp_Val, ptr %t653, i32 0, i32 0 %t655 = load ptr, ptr %t654 - %t656 = call ptr @lp_str_concat(ptr %t655, ptr @.str10288) - %t657 = call ptr @lp_str_concat(ptr @.str10287, ptr %t656) + %t656 = call ptr @lp_str_concat(ptr %t655, ptr @.str10293) + %t657 = call ptr @lp_str_concat(ptr @.str10292, ptr %t656) call void @fn_emit(ptr %t657) br label %ifend165 ifend165: br label %ifend162 ifend162: - %t658 = call ptr @fn_val(ptr @.str10289, ptr @.str10290) + %t658 = call ptr @fn_val(ptr @.str10294, ptr @.str10295) store ptr %t658, ptr %retval br label %ret ifend154: %t659 = load ptr, ptr %t48 - %t660 = call i32 @lp_str_eq(ptr %t659, ptr @.str10291) + %t660 = call i32 @lp_str_eq(ptr %t659, ptr @.str10296) %t661 = icmp ne i32 %t660, 0 br i1 %t661, label %then166, label %ifend168 then166: @@ -135674,7 +135836,7 @@ then166: br i1 %t669, label %ixok169, label %ixbad170 ixbad170: %t670 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t670, ptr @.fmt_bounds, ptr @.str10292, i32 0, i32 %t668) + call i32 (ptr, ptr, ...) @fprintf(ptr %t670, ptr @.fmt_bounds, ptr @.str10297, i32 0, i32 %t668) call void @exit(i32 1) unreachable ixok169: @@ -135685,20 +135847,20 @@ ixok169: %t675 = load ptr, ptr %t674 %t676 = getelementptr inbounds %Cmp_Val, ptr %t675, i32 0, i32 0 %t677 = load ptr, ptr %t676 - %t678 = call ptr @lp_str_concat(ptr @.str10293, ptr %t677) - %t679 = call ptr @lp_str_concat(ptr %t678, ptr @.str10294) + %t678 = call ptr @lp_str_concat(ptr @.str10298, ptr %t677) + %t679 = call ptr @lp_str_concat(ptr %t678, ptr @.str10299) %t680 = call ptr @fn_emit_bind(ptr %t679) store ptr %t680, ptr %t681 %t682 = load ptr, ptr %t681 - %t683 = call ptr @lp_str_concat(ptr @.str10295, ptr %t682) - %t684 = call ptr @lp_str_concat(ptr %t683, ptr @.str10296) + %t683 = call ptr @lp_str_concat(ptr @.str10300, ptr %t682) + %t684 = call ptr @lp_str_concat(ptr %t683, ptr @.str10301) %t685 = call ptr @fn_emit_bind(ptr %t684) - %t686 = call ptr @fn_val(ptr %t685, ptr @.str10297) + %t686 = call ptr @fn_val(ptr %t685, ptr @.str10302) store ptr %t686, ptr %retval br label %ret ifend168: %t687 = load ptr, ptr %t48 - %t688 = call i32 @lp_str_eq(ptr %t687, ptr @.str10298) + %t688 = call i32 @lp_str_eq(ptr %t687, ptr @.str10303) %t689 = icmp ne i32 %t688, 0 br i1 %t689, label %then171, label %ifend173 then171: @@ -135713,19 +135875,19 @@ then171: br i1 %t697, label %ixok174, label %ixbad175 ixbad175: %t698 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t698, ptr @.fmt_bounds, ptr @.str10300, i32 0, i32 %t696) + call i32 (ptr, ptr, ...) @fprintf(ptr %t698, ptr @.fmt_bounds, ptr @.str10305, i32 0, i32 %t696) call void @exit(i32 1) unreachable ixok174: %t699 = getelementptr inbounds ptr, ptr %t694, i32 0 %t700 = load ptr, ptr %t699 %t701 = call ptr @fn_emit_expr(ptr %t700) - %t702 = call ptr @fn_emit_sized_slice(ptr @.str10299, ptr %t701) + %t702 = call ptr @fn_emit_sized_slice(ptr @.str10304, ptr %t701) store ptr %t702, ptr %retval br label %ret ifend173: %t704 = load ptr, ptr %t48 - %t705 = call i32 @lp_str_eq(ptr %t704, ptr @.str10301) + %t705 = call i32 @lp_str_eq(ptr %t704, ptr @.str10306) %t706 = icmp ne i32 %t705, 0 %t707 = zext i1 %t706 to i32 store i32 %t707, ptr %t703 @@ -135755,19 +135917,19 @@ then178: br i1 %t723, label %ixok181, label %ixbad182 ixbad182: %t724 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t724, ptr @.fmt_bounds, ptr @.str10303, i32 0, i32 %t722) + call i32 (ptr, ptr, ...) @fprintf(ptr %t724, ptr @.fmt_bounds, ptr @.str10308, i32 0, i32 %t722) call void @exit(i32 1) unreachable ixok181: %t725 = getelementptr inbounds ptr, ptr %t720, i32 0 %t726 = load ptr, ptr %t725 %t727 = call ptr @fn_emit_expr(ptr %t726) - %t728 = call ptr @fn_emit_sized_slice(ptr @.str10302, ptr %t727) + %t728 = call ptr @fn_emit_sized_slice(ptr @.str10307, ptr %t727) store ptr %t728, ptr %retval br label %ret ifend180: %t730 = load ptr, ptr %t48 - %t731 = call i32 @lp_str_eq(ptr %t730, ptr @.str10304) + %t731 = call i32 @lp_str_eq(ptr %t730, ptr @.str10309) %t732 = icmp ne i32 %t731, 0 %t733 = zext i1 %t732 to i32 store i32 %t733, ptr %t729 @@ -135797,19 +135959,19 @@ then185: br i1 %t749, label %ixok188, label %ixbad189 ixbad189: %t750 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t750, ptr @.fmt_bounds, ptr @.str10306, i32 0, i32 %t748) + call i32 (ptr, ptr, ...) @fprintf(ptr %t750, ptr @.fmt_bounds, ptr @.str10311, i32 0, i32 %t748) call void @exit(i32 1) unreachable ixok188: %t751 = getelementptr inbounds ptr, ptr %t746, i32 0 %t752 = load ptr, ptr %t751 %t753 = call ptr @fn_emit_expr(ptr %t752) - %t754 = call ptr @fn_emit_sized_slice(ptr @.str10305, ptr %t753) + %t754 = call ptr @fn_emit_sized_slice(ptr @.str10310, ptr %t753) store ptr %t754, ptr %retval br label %ret ifend187: %t756 = load ptr, ptr %t48 - %t757 = call i32 @lp_str_eq(ptr %t756, ptr @.str10307) + %t757 = call i32 @lp_str_eq(ptr %t756, ptr @.str10312) %t758 = icmp ne i32 %t757, 0 %t759 = zext i1 %t758 to i32 store i32 %t759, ptr %t755 @@ -135839,19 +136001,19 @@ then192: br i1 %t775, label %ixok195, label %ixbad196 ixbad196: %t776 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t776, ptr @.fmt_bounds, ptr @.str10309, i32 0, i32 %t774) + call i32 (ptr, ptr, ...) @fprintf(ptr %t776, ptr @.fmt_bounds, ptr @.str10314, i32 0, i32 %t774) call void @exit(i32 1) unreachable ixok195: %t777 = getelementptr inbounds ptr, ptr %t772, i32 0 %t778 = load ptr, ptr %t777 %t779 = call ptr @fn_emit_expr(ptr %t778) - %t780 = call ptr @fn_emit_sized_slice(ptr @.str10308, ptr %t779) + %t780 = call ptr @fn_emit_sized_slice(ptr @.str10313, ptr %t779) store ptr %t780, ptr %retval br label %ret ifend194: %t781 = load ptr, ptr %t48 - %t782 = call i32 @lp_str_eq(ptr %t781, ptr @.str10310) + %t782 = call i32 @lp_str_eq(ptr %t781, ptr @.str10315) %t783 = icmp ne i32 %t782, 0 br i1 %t783, label %then197, label %ifend199 then197: @@ -135861,7 +136023,7 @@ then197: br label %ret ifend199: %t786 = load ptr, ptr %t48 - %t787 = call i32 @lp_str_eq(ptr %t786, ptr @.str10311) + %t787 = call i32 @lp_str_eq(ptr %t786, ptr @.str10316) %t788 = icmp ne i32 %t787, 0 br i1 %t788, label %then200, label %ifend202 then200: @@ -135876,7 +136038,7 @@ then200: br i1 %t796, label %ixok203, label %ixbad204 ixbad204: %t797 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t797, ptr @.fmt_bounds, ptr @.str10312, i32 0, i32 %t795) + call i32 (ptr, ptr, ...) @fprintf(ptr %t797, ptr @.fmt_bounds, ptr @.str10317, i32 0, i32 %t795) call void @exit(i32 1) unreachable ixok203: @@ -135888,14 +136050,14 @@ ixok203: %t803 = getelementptr inbounds %Cmp_Val, ptr %t802, i32 0, i32 0 %t804 = load ptr, ptr %t803 %t805 = call ptr @fn_slice_field(ptr %t804, i32 0) - %t806 = call ptr @lp_str_concat(ptr @.str10313, ptr %t805) + %t806 = call ptr @lp_str_concat(ptr @.str10318, ptr %t805) %t807 = call ptr @fn_emit_bind(ptr %t806) - %t808 = call ptr @fn_val(ptr %t807, ptr @.str10314) + %t808 = call ptr @fn_val(ptr %t807, ptr @.str10319) store ptr %t808, ptr %retval br label %ret ifend202: %t809 = load ptr, ptr %t48 - %t810 = call i32 @lp_str_eq(ptr %t809, ptr @.str10315) + %t810 = call i32 @lp_str_eq(ptr %t809, ptr @.str10320) %t811 = icmp ne i32 %t810, 0 br i1 %t811, label %then205, label %ifend207 then205: @@ -135910,7 +136072,7 @@ then205: br i1 %t819, label %ixok208, label %ixbad209 ixbad209: %t820 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t820, ptr @.fmt_bounds, ptr @.str10316, i32 0, i32 %t818) + call i32 (ptr, ptr, ...) @fprintf(ptr %t820, ptr @.fmt_bounds, ptr @.str10321, i32 0, i32 %t818) call void @exit(i32 1) unreachable ixok208: @@ -135941,29 +136103,29 @@ then213: %t838 = load ptr, ptr %t824 %t839 = getelementptr inbounds %Cmp_Val, ptr %t838, i32 0, i32 0 %t840 = load ptr, ptr %t839 - %t841 = call ptr @fn_val(ptr %t840, ptr @.str10317) + %t841 = call ptr @fn_val(ptr %t840, ptr @.str10322) store ptr %t841, ptr %retval br label %ret ifend215: %t842 = load ptr, ptr %t824 %t843 = getelementptr inbounds %Cmp_Val, ptr %t842, i32 0, i32 0 %t844 = load ptr, ptr %t843 - %t845 = call ptr @lp_str_concat(ptr @.str10318, ptr %t844) - %t846 = call ptr @lp_str_concat(ptr %t845, ptr @.str10319) + %t845 = call ptr @lp_str_concat(ptr @.str10323, ptr %t844) + %t846 = call ptr @lp_str_concat(ptr %t845, ptr @.str10324) %t847 = call ptr @fn_emit_bind(ptr %t846) - %t848 = call ptr @fn_val(ptr %t847, ptr @.str10320) + %t848 = call ptr @fn_val(ptr %t847, ptr @.str10325) store ptr %t848, ptr %retval br label %ret ifend207: %t852 = load ptr, ptr %t48 - %t853 = call i32 @lp_str_eq(ptr %t852, ptr @.str10321) + %t853 = call i32 @lp_str_eq(ptr %t852, ptr @.str10326) %t854 = icmp ne i32 %t853, 0 %t855 = zext i1 %t854 to i32 store i32 %t855, ptr %t851 br i1 %t854, label %scend217, label %sc216 sc216: %t856 = load ptr, ptr %t48 - %t857 = call i32 @lp_str_eq(ptr %t856, ptr @.str10322) + %t857 = call i32 @lp_str_eq(ptr %t856, ptr @.str10327) %t858 = icmp ne i32 %t857, 0 %t859 = zext i1 %t858 to i32 store i32 %t859, ptr %t851 @@ -136018,7 +136180,7 @@ then222: br i1 %t891, label %ixok225, label %ixbad226 ixbad226: %t892 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t892, ptr @.fmt_bounds, ptr @.str10323, i32 0, i32 %t890) + call i32 (ptr, ptr, ...) @fprintf(ptr %t892, ptr @.fmt_bounds, ptr @.str10328, i32 0, i32 %t890) call void @exit(i32 1) unreachable ixok225: @@ -136030,7 +136192,7 @@ ixok225: br label %ret ifend224: %t899 = load ptr, ptr %t48 - %t900 = call i32 @lp_str_eq(ptr %t899, ptr @.str10324) + %t900 = call i32 @lp_str_eq(ptr %t899, ptr @.str10329) %t901 = icmp ne i32 %t900, 0 %t902 = zext i1 %t901 to i32 store i32 %t902, ptr %t898 @@ -136078,7 +136240,7 @@ then231: br i1 %t930, label %ixok234, label %ixbad235 ixbad235: %t931 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t931, ptr @.fmt_bounds, ptr @.str10325, i32 0, i32 %t929) + call i32 (ptr, ptr, ...) @fprintf(ptr %t931, ptr @.fmt_bounds, ptr @.str10330, i32 0, i32 %t929) call void @exit(i32 1) unreachable ixok234: @@ -136101,17 +136263,17 @@ ifend238: %t943 = load ptr, ptr %t935 %t944 = getelementptr inbounds %Cmp_Val, ptr %t943, i32 0, i32 1 %t945 = load ptr, ptr %t944 - %t946 = call i32 @lp_str_eq(ptr %t945, ptr @.str10326) + %t946 = call i32 @lp_str_eq(ptr %t945, ptr @.str10331) %t947 = icmp ne i32 %t946, 0 br i1 %t947, label %then239, label %ifend241 then239: %t948 = load ptr, ptr %t935 %t949 = getelementptr inbounds %Cmp_Val, ptr %t948, i32 0, i32 0 %t950 = load ptr, ptr %t949 - %t951 = call ptr @lp_str_concat(ptr @.str10327, ptr %t950) - %t952 = call ptr @lp_str_concat(ptr %t951, ptr @.str10328) + %t951 = call ptr @lp_str_concat(ptr @.str10332, ptr %t950) + %t952 = call ptr @lp_str_concat(ptr %t951, ptr @.str10333) %t953 = call ptr @fn_emit_bind(ptr %t952) - %t954 = call ptr @fn_val(ptr %t953, ptr @.str10329) + %t954 = call ptr @fn_val(ptr %t953, ptr @.str10334) store ptr %t954, ptr %retval br label %ret ifend241: @@ -136119,29 +136281,29 @@ ifend241: %t956 = getelementptr inbounds %Cmp_Val, ptr %t955, i32 0, i32 1 %t957 = load ptr, ptr %t956 %t958 = call ptr @fn_llty(ptr %t957) - %t959 = call i32 @lp_str_eq(ptr %t958, ptr @.str10330) + %t959 = call i32 @lp_str_eq(ptr %t958, ptr @.str10335) %t960 = icmp ne i32 %t959, 0 br i1 %t960, label %then242, label %ifend244 then242: %t961 = load ptr, ptr %t935 %t962 = getelementptr inbounds %Cmp_Val, ptr %t961, i32 0, i32 0 %t963 = load ptr, ptr %t962 - %t964 = call ptr @lp_str_concat(ptr @.str10331, ptr %t963) - %t965 = call ptr @lp_str_concat(ptr %t964, ptr @.str10332) + %t964 = call ptr @lp_str_concat(ptr @.str10336, ptr %t963) + %t965 = call ptr @lp_str_concat(ptr %t964, ptr @.str10337) %t966 = call ptr @fn_emit_bind(ptr %t965) - %t967 = call ptr @fn_val(ptr %t966, ptr @.str10333) + %t967 = call ptr @fn_val(ptr %t966, ptr @.str10338) store ptr %t967, ptr %retval br label %ret ifend244: %t968 = load ptr, ptr %t935 %t969 = getelementptr inbounds %Cmp_Val, ptr %t968, i32 0, i32 0 %t970 = load ptr, ptr %t969 - %t971 = call ptr @fn_val(ptr %t970, ptr @.str10334) + %t971 = call ptr @fn_val(ptr %t970, ptr @.str10339) store ptr %t971, ptr %retval br label %ret ifend233: %t974 = load ptr, ptr %t48 - %t975 = call i32 @lp_str_eq(ptr %t974, ptr @.str10335) + %t975 = call i32 @lp_str_eq(ptr %t974, ptr @.str10340) %t976 = icmp ne i32 %t975, 0 %t977 = zext i1 %t976 to i32 store i32 %t977, ptr %t973 @@ -136189,7 +136351,7 @@ then249: br i1 %t1005, label %ixok252, label %ixbad253 ixbad253: %t1006 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1006, ptr @.fmt_bounds, ptr @.str10336, i32 0, i32 %t1004) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1006, ptr @.fmt_bounds, ptr @.str10341, i32 0, i32 %t1004) call void @exit(i32 1) unreachable ixok252: @@ -136211,12 +136373,12 @@ then254: ifend256: %t1018 = load ptr, ptr %t1010 %t1019 = call ptr @fn_to_long(ptr %t1018) - %t1020 = call ptr @fn_val(ptr %t1019, ptr @.str10337) + %t1020 = call ptr @fn_val(ptr %t1019, ptr @.str10342) store ptr %t1020, ptr %retval br label %ret ifend251: %t1022 = load ptr, ptr %t48 - %t1023 = call i32 @lp_str_eq(ptr %t1022, ptr @.str10338) + %t1023 = call i32 @lp_str_eq(ptr %t1022, ptr @.str10343) %t1024 = icmp ne i32 %t1023, 0 %t1025 = zext i1 %t1024 to i32 store i32 %t1025, ptr %t1021 @@ -136246,7 +136408,7 @@ then259: br i1 %t1041, label %ixok262, label %ixbad263 ixbad263: %t1042 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1042, ptr @.fmt_bounds, ptr @.str10339, i32 0, i32 %t1040) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1042, ptr @.fmt_bounds, ptr @.str10344, i32 0, i32 %t1040) call void @exit(i32 1) unreachable ixok262: @@ -136258,7 +136420,7 @@ ixok262: br label %ret ifend261: %t1048 = load ptr, ptr %t48 - %t1049 = call i32 @lp_str_eq(ptr %t1048, ptr @.str10340) + %t1049 = call i32 @lp_str_eq(ptr %t1048, ptr @.str10345) %t1050 = icmp ne i32 %t1049, 0 %t1051 = zext i1 %t1050 to i32 store i32 %t1051, ptr %t1047 @@ -136288,7 +136450,7 @@ then266: br i1 %t1067, label %ixok269, label %ixbad270 ixbad270: %t1068 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1068, ptr @.fmt_bounds, ptr @.str10341, i32 0, i32 %t1066) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1068, ptr @.fmt_bounds, ptr @.str10346, i32 0, i32 %t1066) call void @exit(i32 1) unreachable ixok269: @@ -136300,7 +136462,7 @@ ixok269: br label %ret ifend268: %t1074 = load ptr, ptr %t48 - %t1075 = call i32 @lp_str_eq(ptr %t1074, ptr @.str10342) + %t1075 = call i32 @lp_str_eq(ptr %t1074, ptr @.str10347) %t1076 = icmp ne i32 %t1075, 0 %t1077 = zext i1 %t1076 to i32 store i32 %t1077, ptr %t1073 @@ -136330,7 +136492,7 @@ then273: br i1 %t1093, label %ixok276, label %ixbad277 ixbad277: %t1094 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1094, ptr @.fmt_bounds, ptr @.str10343, i32 0, i32 %t1092) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1094, ptr @.fmt_bounds, ptr @.str10348, i32 0, i32 %t1092) call void @exit(i32 1) unreachable ixok276: @@ -136342,7 +136504,7 @@ ixok276: br label %ret ifend275: %t1100 = load ptr, ptr %t48 - %t1101 = call i32 @lp_str_eq(ptr %t1100, ptr @.str10344) + %t1101 = call i32 @lp_str_eq(ptr %t1100, ptr @.str10349) %t1102 = icmp ne i32 %t1101, 0 %t1103 = zext i1 %t1102 to i32 store i32 %t1103, ptr %t1099 @@ -136372,7 +136534,7 @@ then280: br i1 %t1119, label %ixok283, label %ixbad284 ixbad284: %t1120 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1120, ptr @.fmt_bounds, ptr @.str10345, i32 0, i32 %t1118) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1120, ptr @.fmt_bounds, ptr @.str10350, i32 0, i32 %t1118) call void @exit(i32 1) unreachable ixok283: @@ -136384,14 +136546,14 @@ ixok283: br label %ret ifend282: %t1127 = load ptr, ptr %t48 - %t1128 = call i32 @lp_str_eq(ptr %t1127, ptr @.str10346) + %t1128 = call i32 @lp_str_eq(ptr %t1127, ptr @.str10351) %t1129 = icmp ne i32 %t1128, 0 %t1130 = zext i1 %t1129 to i32 store i32 %t1130, ptr %t1126 br i1 %t1129, label %scend286, label %sc285 sc285: %t1131 = load ptr, ptr %t48 - %t1132 = call i32 @lp_str_eq(ptr %t1131, ptr @.str10347) + %t1132 = call i32 @lp_str_eq(ptr %t1131, ptr @.str10352) %t1133 = icmp ne i32 %t1132, 0 %t1134 = zext i1 %t1133 to i32 store i32 %t1134, ptr %t1126 @@ -136416,13 +136578,13 @@ scend288: %t1145 = icmp ne i32 %t1144, 0 br i1 %t1145, label %then289, label %ifend291 then289: - store ptr @.str10348, ptr %t1146 + store ptr @.str10353, ptr %t1146 %t1147 = load ptr, ptr %t48 - %t1148 = call i32 @lp_str_eq(ptr %t1147, ptr @.str10349) + %t1148 = call i32 @lp_str_eq(ptr %t1147, ptr @.str10354) %t1149 = icmp ne i32 %t1148, 0 br i1 %t1149, label %then292, label %ifend294 then292: - store ptr @.str10350, ptr %t1146 + store ptr @.str10355, ptr %t1146 br label %ifend294 ifend294: %t1150 = load ptr, ptr %t1146 @@ -136437,7 +136599,7 @@ ifend294: br i1 %t1158, label %ixok295, label %ixbad296 ixbad296: %t1159 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1159, ptr @.fmt_bounds, ptr @.str10351, i32 0, i32 %t1157) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1159, ptr @.fmt_bounds, ptr @.str10356, i32 0, i32 %t1157) call void @exit(i32 1) unreachable ixok295: @@ -136449,7 +136611,7 @@ ixok295: br label %ret ifend291: %t1164 = load ptr, ptr %t48 - %t1165 = call i32 @lp_str_eq(ptr %t1164, ptr @.str10352) + %t1165 = call i32 @lp_str_eq(ptr %t1164, ptr @.str10357) %t1166 = icmp ne i32 %t1165, 0 br i1 %t1166, label %then297, label %ifend299 then297: @@ -136464,7 +136626,7 @@ then297: br i1 %t1174, label %ixok300, label %ixbad301 ixbad301: %t1175 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1175, ptr @.fmt_bounds, ptr @.str10353, i32 0, i32 %t1173) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1175, ptr @.fmt_bounds, ptr @.str10358, i32 0, i32 %t1173) call void @exit(i32 1) unreachable ixok300: @@ -136475,15 +136637,15 @@ ixok300: %t1180 = load ptr, ptr %t1179 %t1181 = getelementptr inbounds %Cmp_Val, ptr %t1180, i32 0, i32 0 %t1182 = load ptr, ptr %t1181 - %t1183 = call ptr @lp_str_concat(ptr @.str10354, ptr %t1182) - %t1184 = call ptr @lp_str_concat(ptr %t1183, ptr @.str10355) + %t1183 = call ptr @lp_str_concat(ptr @.str10359, ptr %t1182) + %t1184 = call ptr @lp_str_concat(ptr %t1183, ptr @.str10360) %t1185 = call ptr @fn_emit_bind(ptr %t1184) - %t1186 = call ptr @fn_val(ptr %t1185, ptr @.str10356) + %t1186 = call ptr @fn_val(ptr %t1185, ptr @.str10361) store ptr %t1186, ptr %retval br label %ret ifend299: %t1187 = load ptr, ptr %t48 - %t1188 = call i32 @lp_str_eq(ptr %t1187, ptr @.str10357) + %t1188 = call i32 @lp_str_eq(ptr %t1187, ptr @.str10362) %t1189 = icmp ne i32 %t1188, 0 br i1 %t1189, label %then302, label %ifend304 then302: @@ -136499,7 +136661,7 @@ then302: br i1 %t1197, label %ixok305, label %ixbad306 ixbad306: %t1198 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1198, ptr @.fmt_bounds, ptr @.str10358, i32 0, i32 %t1196) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1198, ptr @.fmt_bounds, ptr @.str10363, i32 0, i32 %t1196) call void @exit(i32 1) unreachable ixok305: @@ -136510,24 +136672,24 @@ ixok305: %t1203 = load ptr, ptr %t1202 %t1204 = getelementptr inbounds %Cmp_Val, ptr %t1203, i32 0, i32 0 %t1205 = load ptr, ptr %t1204 - %t1206 = call ptr @lp_str_concat(ptr @.str10359, ptr %t1205) - %t1207 = call ptr @lp_str_concat(ptr %t1206, ptr @.str10360) + %t1206 = call ptr @lp_str_concat(ptr @.str10364, ptr %t1205) + %t1207 = call ptr @lp_str_concat(ptr %t1206, ptr @.str10365) %t1208 = call ptr @fn_emit_bind(ptr %t1207) store ptr %t1208, ptr %t1209 %t1210 = load ptr, ptr %t0 %t1211 = call ptr @fn_expect_where(ptr %t1210) - %t1212 = call ptr @lp_str_concat(ptr %t1211, ptr @.str10361) + %t1212 = call ptr @lp_str_concat(ptr %t1211, ptr @.str10366) %t1213 = call ptr @fn_emit_str_const(ptr %t1212) store ptr %t1213, ptr %t1214 %t1215 = load ptr, ptr %t1209 %t1216 = load ptr, ptr %t1214 - call void @fn_emit_expect_fail(ptr %t1215, ptr %t1216, ptr @.str10362, ptr @.str10363) - %t1217 = call ptr @fn_val(ptr @.str10364, ptr @.str10365) + call void @fn_emit_expect_fail(ptr %t1215, ptr %t1216, ptr @.str10367, ptr @.str10368) + %t1217 = call ptr @fn_val(ptr @.str10369, ptr @.str10370) store ptr %t1217, ptr %retval br label %ret ifend304: %t1218 = load ptr, ptr %t48 - %t1219 = call i32 @lp_str_eq(ptr %t1218, ptr @.str10366) + %t1219 = call i32 @lp_str_eq(ptr %t1218, ptr @.str10371) %t1220 = icmp ne i32 %t1219, 0 br i1 %t1220, label %then307, label %ifend309 then307: @@ -136543,7 +136705,7 @@ then307: br i1 %t1228, label %ixok310, label %ixbad311 ixbad311: %t1229 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1229, ptr @.fmt_bounds, ptr @.str10367, i32 0, i32 %t1227) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1229, ptr @.fmt_bounds, ptr @.str10372, i32 0, i32 %t1227) call void @exit(i32 1) unreachable ixok310: @@ -136562,7 +136724,7 @@ ixok310: br i1 %t1241, label %ixok312, label %ixbad313 ixbad313: %t1242 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1242, ptr @.fmt_bounds, ptr @.str10368, i32 1, i32 %t1240) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1242, ptr @.fmt_bounds, ptr @.str10373, i32 1, i32 %t1240) call void @exit(i32 1) unreachable ixok312: @@ -136602,7 +136764,7 @@ ifend318: %t1267 = load ptr, ptr %t1233 %t1268 = getelementptr inbounds %Cmp_Val, ptr %t1267, i32 0, i32 1 %t1269 = load ptr, ptr %t1268 - %t1270 = call i32 @lp_str_eq(ptr %t1269, ptr @.str10369) + %t1270 = call i32 @lp_str_eq(ptr %t1269, ptr @.str10374) %t1271 = icmp ne i32 %t1270, 0 %t1272 = zext i1 %t1271 to i32 store i32 %t1272, ptr %t1266 @@ -136611,7 +136773,7 @@ sc319: %t1273 = load ptr, ptr %t1246 %t1274 = getelementptr inbounds %Cmp_Val, ptr %t1273, i32 0, i32 1 %t1275 = load ptr, ptr %t1274 - %t1276 = call i32 @lp_str_eq(ptr %t1275, ptr @.str10370) + %t1276 = call i32 @lp_str_eq(ptr %t1275, ptr @.str10375) %t1277 = icmp ne i32 %t1276, 0 %t1278 = zext i1 %t1277 to i32 store i32 %t1278, ptr %t1266 @@ -136631,8 +136793,8 @@ ifend323: %t1285 = load ptr, ptr %t1233 %t1286 = getelementptr inbounds %Cmp_Val, ptr %t1285, i32 0, i32 0 %t1287 = load ptr, ptr %t1286 - %t1288 = call ptr @lp_str_concat(ptr @.str10371, ptr %t1287) - %t1289 = call ptr @lp_str_concat(ptr %t1288, ptr @.str10372) + %t1288 = call ptr @lp_str_concat(ptr @.str10376, ptr %t1287) + %t1289 = call ptr @lp_str_concat(ptr %t1288, ptr @.str10377) %t1290 = load ptr, ptr %t1246 %t1291 = getelementptr inbounds %Cmp_Val, ptr %t1290, i32 0, i32 0 %t1292 = load ptr, ptr %t1291 @@ -136641,7 +136803,7 @@ ifend323: store ptr %t1294, ptr %t1295 %t1296 = load ptr, ptr %t0 %t1297 = call ptr @fn_expect_where(ptr %t1296) - %t1298 = call ptr @lp_str_concat(ptr %t1297, ptr @.str10373) + %t1298 = call ptr @lp_str_concat(ptr %t1297, ptr @.str10378) %t1299 = call ptr @fn_emit_str_const(ptr %t1298) store ptr %t1299, ptr %t1300 %t1301 = load ptr, ptr %t1295 @@ -136653,12 +136815,12 @@ ifend323: %t1307 = getelementptr inbounds %Cmp_Val, ptr %t1306, i32 0, i32 0 %t1308 = load ptr, ptr %t1307 call void @fn_emit_expect_fail(ptr %t1301, ptr %t1302, ptr %t1305, ptr %t1308) - %t1309 = call ptr @fn_val(ptr @.str10374, ptr @.str10375) + %t1309 = call ptr @fn_val(ptr @.str10379, ptr @.str10380) store ptr %t1309, ptr %retval br label %ret ifend309: %t1310 = load ptr, ptr %t48 - %t1311 = call i32 @lp_str_eq(ptr %t1310, ptr @.str10376) + %t1311 = call i32 @lp_str_eq(ptr %t1310, ptr @.str10381) %t1312 = icmp ne i32 %t1311, 0 br i1 %t1312, label %then324, label %ifend326 then324: @@ -136674,7 +136836,7 @@ then324: br i1 %t1320, label %ixok327, label %ixbad328 ixbad328: %t1321 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1321, ptr @.fmt_bounds, ptr @.str10377, i32 0, i32 %t1319) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1321, ptr @.fmt_bounds, ptr @.str10382, i32 0, i32 %t1319) call void @exit(i32 1) unreachable ixok327: @@ -136693,7 +136855,7 @@ ixok327: br i1 %t1333, label %ixok329, label %ixbad330 ixbad330: %t1334 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1334, ptr @.fmt_bounds, ptr @.str10378, i32 1, i32 %t1332) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1334, ptr @.fmt_bounds, ptr @.str10383, i32 1, i32 %t1332) call void @exit(i32 1) unreachable ixok329: @@ -136712,7 +136874,7 @@ ixok329: br i1 %t1346, label %ixok331, label %ixbad332 ixbad332: %t1347 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1347, ptr @.fmt_bounds, ptr @.str10379, i32 2, i32 %t1345) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1347, ptr @.fmt_bounds, ptr @.str10384, i32 2, i32 %t1345) call void @exit(i32 1) unreachable ixok331: @@ -136768,8 +136930,8 @@ ifend339: %t1382 = load ptr, ptr %t1325 %t1383 = getelementptr inbounds %Cmp_Val, ptr %t1382, i32 0, i32 0 %t1384 = load ptr, ptr %t1383 - %t1385 = call ptr @lp_str_concat(ptr @.str10380, ptr %t1384) - %t1386 = call ptr @lp_str_concat(ptr %t1385, ptr @.str10381) + %t1385 = call ptr @lp_str_concat(ptr @.str10385, ptr %t1384) + %t1386 = call ptr @lp_str_concat(ptr %t1385, ptr @.str10386) %t1387 = load ptr, ptr %t1338 %t1388 = getelementptr inbounds %Cmp_Val, ptr %t1387, i32 0, i32 0 %t1389 = load ptr, ptr %t1388 @@ -136777,27 +136939,27 @@ ifend339: %t1391 = call ptr @fn_emit_bind(ptr %t1390) store ptr %t1391, ptr %t1392 %t1393 = load ptr, ptr %t1392 - %t1394 = call ptr @lp_str_concat(ptr @.str10382, ptr %t1393) + %t1394 = call ptr @lp_str_concat(ptr @.str10387, ptr %t1393) %t1395 = call ptr @fn_emit_bind(ptr %t1394) store ptr %t1395, ptr %t1396 %t1397 = load ptr, ptr %t1392 - %t1398 = call ptr @lp_str_concat(ptr @.str10383, ptr %t1397) - %t1399 = call ptr @lp_str_concat(ptr %t1398, ptr @.str10384) + %t1398 = call ptr @lp_str_concat(ptr @.str10388, ptr %t1397) + %t1399 = call ptr @lp_str_concat(ptr %t1398, ptr @.str10389) %t1400 = call ptr @fn_emit_bind(ptr %t1399) store ptr %t1400, ptr %t1401 %t1402 = load ptr, ptr %t1401 - %t1403 = call ptr @lp_str_concat(ptr @.str10385, ptr %t1402) - %t1404 = call ptr @lp_str_concat(ptr %t1403, ptr @.str10386) + %t1403 = call ptr @lp_str_concat(ptr @.str10390, ptr %t1402) + %t1404 = call ptr @lp_str_concat(ptr %t1403, ptr @.str10391) %t1405 = load ptr, ptr %t1396 %t1406 = call ptr @lp_str_concat(ptr %t1404, ptr %t1405) - %t1407 = call ptr @lp_str_concat(ptr %t1406, ptr @.str10387) + %t1407 = call ptr @lp_str_concat(ptr %t1406, ptr @.str10392) %t1408 = load ptr, ptr %t1392 %t1409 = call ptr @lp_str_concat(ptr %t1407, ptr %t1408) %t1410 = call ptr @fn_emit_bind(ptr %t1409) store ptr %t1410, ptr %t1411 %t1412 = load ptr, ptr %t1411 - %t1413 = call ptr @lp_str_concat(ptr @.str10388, ptr %t1412) - %t1414 = call ptr @lp_str_concat(ptr %t1413, ptr @.str10389) + %t1413 = call ptr @lp_str_concat(ptr @.str10393, ptr %t1412) + %t1414 = call ptr @lp_str_concat(ptr %t1413, ptr @.str10394) %t1415 = load ptr, ptr %t1351 %t1416 = getelementptr inbounds %Cmp_Val, ptr %t1415, i32 0, i32 0 %t1417 = load ptr, ptr %t1416 @@ -136806,7 +136968,7 @@ ifend339: store ptr %t1419, ptr %t1420 %t1421 = load ptr, ptr %t0 %t1422 = call ptr @fn_expect_where(ptr %t1421) - %t1423 = call ptr @lp_str_concat(ptr %t1422, ptr @.str10390) + %t1423 = call ptr @lp_str_concat(ptr %t1422, ptr @.str10395) %t1424 = call ptr @fn_emit_str_const(ptr %t1423) store ptr %t1424, ptr %t1425 %t1426 = load ptr, ptr %t1420 @@ -136818,12 +136980,12 @@ ifend339: %t1432 = getelementptr inbounds %Cmp_Val, ptr %t1431, i32 0, i32 0 %t1433 = load ptr, ptr %t1432 call void @fn_emit_expect_fail(ptr %t1426, ptr %t1427, ptr %t1430, ptr %t1433) - %t1434 = call ptr @fn_val(ptr @.str10391, ptr @.str10392) + %t1434 = call ptr @fn_val(ptr @.str10396, ptr @.str10397) store ptr %t1434, ptr %retval br label %ret ifend326: %t1435 = load ptr, ptr %t48 - %t1436 = call i32 @lp_str_eq(ptr %t1435, ptr @.str10393) + %t1436 = call i32 @lp_str_eq(ptr %t1435, ptr @.str10398) %t1437 = icmp ne i32 %t1436, 0 br i1 %t1437, label %then340, label %ifend342 then340: @@ -136839,7 +137001,7 @@ then340: br i1 %t1445, label %ixok343, label %ixbad344 ixbad344: %t1446 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1446, ptr @.fmt_bounds, ptr @.str10394, i32 0, i32 %t1444) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1446, ptr @.fmt_bounds, ptr @.str10399, i32 0, i32 %t1444) call void @exit(i32 1) unreachable ixok343: @@ -136848,38 +137010,38 @@ ixok343: %t1449 = call ptr @fn_emit_expr(ptr %t1448) store ptr %t1449, ptr %t1450 %t1451 = load ptr, ptr @g_g_src_name - %t1452 = call ptr @lp_str_concat(ptr %t1451, ptr @.str10395) + %t1452 = call ptr @lp_str_concat(ptr %t1451, ptr @.str10400) %t1453 = load ptr, ptr %t0 %t1454 = getelementptr inbounds %Cmp_Node, ptr %t1453, i32 0, i32 8 %t1455 = load i32, ptr %t1454 %t1456 = call ptr @fn_itoa(i32 %t1455) %t1457 = call ptr @lp_str_concat(ptr %t1452, ptr %t1456) - %t1458 = call ptr @lp_str_concat(ptr %t1457, ptr @.str10396) + %t1458 = call ptr @lp_str_concat(ptr %t1457, ptr @.str10401) %t1459 = call ptr @fn_emit_str_const(ptr %t1458) store ptr %t1459, ptr %t1460 %t1461 = call ptr @fn_stdstream_rhs(i32 2) %t1462 = call ptr @fn_emit_bind(ptr %t1461) store ptr %t1462, ptr %t1463 %t1464 = load ptr, ptr %t1463 - %t1465 = call ptr @lp_str_concat(ptr @.str10397, ptr %t1464) - %t1466 = call ptr @lp_str_concat(ptr %t1465, ptr @.str10398) + %t1465 = call ptr @lp_str_concat(ptr @.str10402, ptr %t1464) + %t1466 = call ptr @lp_str_concat(ptr %t1465, ptr @.str10403) %t1467 = load ptr, ptr %t1460 %t1468 = call ptr @lp_str_concat(ptr %t1466, ptr %t1467) - %t1469 = call ptr @lp_str_concat(ptr %t1468, ptr @.str10399) + %t1469 = call ptr @lp_str_concat(ptr %t1468, ptr @.str10404) %t1470 = load ptr, ptr %t1450 %t1471 = getelementptr inbounds %Cmp_Val, ptr %t1470, i32 0, i32 0 %t1472 = load ptr, ptr %t1471 %t1473 = call ptr @lp_str_concat(ptr %t1469, ptr %t1472) - %t1474 = call ptr @lp_str_concat(ptr %t1473, ptr @.str10400) + %t1474 = call ptr @lp_str_concat(ptr %t1473, ptr @.str10405) call void @fn_emit(ptr %t1474) - call void @fn_emit(ptr @.str10401) + call void @fn_emit(ptr @.str10406) store i32 1, ptr @g_g_term - %t1475 = call ptr @fn_val(ptr @.str10402, ptr @.str10403) + %t1475 = call ptr @fn_val(ptr @.str10407, ptr @.str10408) store ptr %t1475, ptr %retval br label %ret ifend342: %t1476 = load ptr, ptr %t48 - %t1477 = call i32 @lp_str_eq(ptr %t1476, ptr @.str10404) + %t1477 = call i32 @lp_str_eq(ptr %t1476, ptr @.str10409) %t1478 = icmp ne i32 %t1477, 0 br i1 %t1478, label %then345, label %ifend347 then345: @@ -136895,7 +137057,7 @@ then345: br i1 %t1486, label %ixok348, label %ixbad349 ixbad349: %t1487 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1487, ptr @.fmt_bounds, ptr @.str10405, i32 0, i32 %t1485) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1487, ptr @.fmt_bounds, ptr @.str10410, i32 0, i32 %t1485) call void @exit(i32 1) unreachable ixok348: @@ -136906,26 +137068,26 @@ ixok348: %t1492 = load ptr, ptr %t1491 %t1493 = getelementptr inbounds %Cmp_Val, ptr %t1492, i32 0, i32 0 %t1494 = load ptr, ptr %t1493 - %t1495 = call ptr @lp_str_concat(ptr @.str10406, ptr %t1494) - %t1496 = call ptr @lp_str_concat(ptr %t1495, ptr @.str10407) + %t1495 = call ptr @lp_str_concat(ptr @.str10411, ptr %t1494) + %t1496 = call ptr @lp_str_concat(ptr %t1495, ptr @.str10412) %t1497 = call ptr @fn_emit_bind(ptr %t1496) store ptr %t1497, ptr %t1498 - %t1499 = call ptr @fn_lbl(ptr @.str10408) + %t1499 = call ptr @fn_lbl(ptr @.str10413) store ptr %t1499, ptr %t1500 - %t1501 = call ptr @fn_lbl(ptr @.str10409) + %t1501 = call ptr @fn_lbl(ptr @.str10414) store ptr %t1501, ptr %t1502 %t1503 = load ptr, ptr %t1498 - %t1504 = call ptr @lp_str_concat(ptr @.str10410, ptr %t1503) - %t1505 = call ptr @lp_str_concat(ptr %t1504, ptr @.str10411) + %t1504 = call ptr @lp_str_concat(ptr @.str10415, ptr %t1503) + %t1505 = call ptr @lp_str_concat(ptr %t1504, ptr @.str10416) %t1506 = load ptr, ptr %t1500 %t1507 = call ptr @lp_str_concat(ptr %t1505, ptr %t1506) - %t1508 = call ptr @lp_str_concat(ptr %t1507, ptr @.str10412) + %t1508 = call ptr @lp_str_concat(ptr %t1507, ptr @.str10417) %t1509 = load ptr, ptr %t1502 %t1510 = call ptr @lp_str_concat(ptr %t1508, ptr %t1509) - %t1511 = call ptr @lp_str_concat(ptr %t1510, ptr @.str10413) + %t1511 = call ptr @lp_str_concat(ptr %t1510, ptr @.str10418) call void @fn_emit(ptr %t1511) %t1512 = load ptr, ptr %t1502 - %t1513 = call ptr @lp_str_concat(ptr %t1512, ptr @.str10414) + %t1513 = call ptr @lp_str_concat(ptr %t1512, ptr @.str10419) call void @fn_emit(ptr %t1513) %t1514 = load ptr, ptr %t0 %t1515 = getelementptr inbounds %Cmp_Node, ptr %t1514, i32 0, i32 7 @@ -136938,7 +137100,7 @@ ixok348: br i1 %t1521, label %ixok350, label %ixbad351 ixbad351: %t1522 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1522, ptr @.fmt_bounds, ptr @.str10415, i32 1, i32 %t1520) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1522, ptr @.fmt_bounds, ptr @.str10420, i32 1, i32 %t1520) call void @exit(i32 1) unreachable ixok350: @@ -136947,46 +137109,46 @@ ixok350: %t1525 = call ptr @fn_emit_expr(ptr %t1524) store ptr %t1525, ptr %t1526 %t1527 = load ptr, ptr @g_g_src_name - %t1528 = call ptr @lp_str_concat(ptr %t1527, ptr @.str10416) + %t1528 = call ptr @lp_str_concat(ptr %t1527, ptr @.str10421) %t1529 = load ptr, ptr %t0 %t1530 = getelementptr inbounds %Cmp_Node, ptr %t1529, i32 0, i32 8 %t1531 = load i32, ptr %t1530 %t1532 = call ptr @fn_itoa(i32 %t1531) %t1533 = call ptr @lp_str_concat(ptr %t1528, ptr %t1532) - %t1534 = call ptr @lp_str_concat(ptr %t1533, ptr @.str10417) + %t1534 = call ptr @lp_str_concat(ptr %t1533, ptr @.str10422) %t1535 = call ptr @fn_emit_str_const(ptr %t1534) store ptr %t1535, ptr %t1536 %t1537 = call ptr @fn_stdstream_rhs(i32 2) %t1538 = call ptr @fn_emit_bind(ptr %t1537) store ptr %t1538, ptr %t1539 %t1540 = load ptr, ptr %t1539 - %t1541 = call ptr @lp_str_concat(ptr @.str10418, ptr %t1540) - %t1542 = call ptr @lp_str_concat(ptr %t1541, ptr @.str10419) + %t1541 = call ptr @lp_str_concat(ptr @.str10423, ptr %t1540) + %t1542 = call ptr @lp_str_concat(ptr %t1541, ptr @.str10424) %t1543 = load ptr, ptr %t1536 %t1544 = call ptr @lp_str_concat(ptr %t1542, ptr %t1543) - %t1545 = call ptr @lp_str_concat(ptr %t1544, ptr @.str10420) + %t1545 = call ptr @lp_str_concat(ptr %t1544, ptr @.str10425) %t1546 = load ptr, ptr %t1526 %t1547 = getelementptr inbounds %Cmp_Val, ptr %t1546, i32 0, i32 0 %t1548 = load ptr, ptr %t1547 %t1549 = call ptr @lp_str_concat(ptr %t1545, ptr %t1548) - %t1550 = call ptr @lp_str_concat(ptr %t1549, ptr @.str10421) + %t1550 = call ptr @lp_str_concat(ptr %t1549, ptr @.str10426) call void @fn_emit(ptr %t1550) - call void @fn_emit(ptr @.str10422) + call void @fn_emit(ptr @.str10427) %t1551 = load ptr, ptr %t1500 - %t1552 = call ptr @lp_str_concat(ptr %t1551, ptr @.str10423) + %t1552 = call ptr @lp_str_concat(ptr %t1551, ptr @.str10428) call void @fn_emit(ptr %t1552) - %t1553 = call ptr @fn_val(ptr @.str10424, ptr @.str10425) + %t1553 = call ptr @fn_val(ptr @.str10429, ptr @.str10430) store ptr %t1553, ptr %retval br label %ret ifend347: %t1555 = load ptr, ptr %t48 - %t1556 = call i32 @lp_str_eq(ptr %t1555, ptr @.str10426) + %t1556 = call i32 @lp_str_eq(ptr %t1555, ptr @.str10431) %t1557 = icmp ne i32 %t1556, 0 %t1558 = zext i1 %t1557 to i32 store i32 %t1558, ptr %t1554 br i1 %t1557, label %sc352, label %scend353 sc352: - %t1559 = call ptr @fn_find_fn(ptr @.str10427) + %t1559 = call ptr @fn_find_fn(ptr @.str10432) %t1560 = icmp eq ptr %t1559, null %t1561 = zext i1 %t1560 to i32 %t1562 = icmp ne i32 %t1561, 0 @@ -137010,7 +137172,7 @@ then354: br i1 %t1573, label %ixok357, label %ixbad358 ixbad358: %t1574 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1574, ptr @.fmt_bounds, ptr @.str10428, i32 0, i32 %t1572) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1574, ptr @.fmt_bounds, ptr @.str10433, i32 0, i32 %t1572) call void @exit(i32 1) unreachable ixok357: @@ -137018,52 +137180,52 @@ ixok357: %t1576 = load ptr, ptr %t1575 %t1577 = call ptr @fn_emit_expr(ptr %t1576) store ptr %t1577, ptr %t1578 - %t1579 = call ptr @fn_emit_bind(ptr @.str10429) + %t1579 = call ptr @fn_emit_bind(ptr @.str10434) store ptr %t1579, ptr %t1580 %t1581 = load ptr, ptr %t1580 - %t1582 = call ptr @lp_str_concat(ptr @.str10430, ptr %t1581) - %t1583 = call ptr @lp_str_concat(ptr %t1582, ptr @.str10431) + %t1582 = call ptr @lp_str_concat(ptr @.str10435, ptr %t1581) + %t1583 = call ptr @lp_str_concat(ptr %t1582, ptr @.str10436) %t1584 = call ptr @fn_emit_bind(ptr %t1583) store ptr %t1584, ptr %t1585 %t1586 = load ptr, ptr %t1585 - %t1587 = call ptr @lp_str_concat(ptr @.str10432, ptr %t1586) - %t1588 = call ptr @lp_str_concat(ptr %t1587, ptr @.str10433) + %t1587 = call ptr @lp_str_concat(ptr @.str10437, ptr %t1586) + %t1588 = call ptr @lp_str_concat(ptr %t1587, ptr @.str10438) call void @fn_emit(ptr %t1588) %t1589 = load ptr, ptr %t1580 - %t1590 = call ptr @lp_str_concat(ptr @.str10434, ptr %t1589) - %t1591 = call ptr @lp_str_concat(ptr %t1590, ptr @.str10435) + %t1590 = call ptr @lp_str_concat(ptr @.str10439, ptr %t1589) + %t1591 = call ptr @lp_str_concat(ptr %t1590, ptr @.str10440) %t1592 = call ptr @fn_emit_bind(ptr %t1591) store ptr %t1592, ptr %t1593 %t1594 = load ptr, ptr %t1578 - %t1595 = call ptr @fn_coerce_code(ptr %t1594, ptr @.str10437) - %t1596 = call ptr @lp_str_concat(ptr @.str10436, ptr %t1595) - %t1597 = call ptr @lp_str_concat(ptr %t1596, ptr @.str10438) + %t1595 = call ptr @fn_coerce_code(ptr %t1594, ptr @.str10442) + %t1596 = call ptr @lp_str_concat(ptr @.str10441, ptr %t1595) + %t1597 = call ptr @lp_str_concat(ptr %t1596, ptr @.str10443) %t1598 = load ptr, ptr %t1593 %t1599 = call ptr @lp_str_concat(ptr %t1597, ptr %t1598) - %t1600 = call ptr @lp_str_concat(ptr %t1599, ptr @.str10439) + %t1600 = call ptr @lp_str_concat(ptr %t1599, ptr @.str10444) call void @fn_emit(ptr %t1600) %t1601 = load ptr, ptr %t1580 - %t1602 = call ptr @lp_str_concat(ptr @.str10440, ptr %t1601) - %t1603 = call ptr @lp_str_concat(ptr %t1602, ptr @.str10441) + %t1602 = call ptr @lp_str_concat(ptr @.str10445, ptr %t1601) + %t1603 = call ptr @lp_str_concat(ptr %t1602, ptr @.str10446) %t1604 = call ptr @fn_emit_bind(ptr %t1603) store ptr %t1604, ptr %t1605 %t1606 = load ptr, ptr %t1605 - %t1607 = call ptr @lp_str_concat(ptr @.str10442, ptr %t1606) - %t1608 = call ptr @lp_str_concat(ptr %t1607, ptr @.str10443) + %t1607 = call ptr @lp_str_concat(ptr @.str10447, ptr %t1606) + %t1608 = call ptr @lp_str_concat(ptr %t1607, ptr @.str10448) call void @fn_emit(ptr %t1608) %t1609 = load ptr, ptr %t1580 - %t1610 = call ptr @fn_val(ptr %t1609, ptr @.str10444) + %t1610 = call ptr @fn_val(ptr %t1609, ptr @.str10449) store ptr %t1610, ptr %retval br label %ret ifend356: %t1612 = load ptr, ptr %t48 - %t1613 = call i32 @lp_str_eq(ptr %t1612, ptr @.str10445) + %t1613 = call i32 @lp_str_eq(ptr %t1612, ptr @.str10450) %t1614 = icmp ne i32 %t1613, 0 %t1615 = zext i1 %t1614 to i32 store i32 %t1615, ptr %t1611 br i1 %t1614, label %sc359, label %scend360 sc359: - %t1616 = call ptr @fn_find_fn(ptr @.str10446) + %t1616 = call ptr @fn_find_fn(ptr @.str10451) %t1617 = icmp eq ptr %t1616, null %t1618 = zext i1 %t1617 to i32 %t1619 = icmp ne i32 %t1618, 0 @@ -137087,7 +137249,7 @@ then361: br i1 %t1630, label %ixok364, label %ixbad365 ixbad365: %t1631 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1631, ptr @.fmt_bounds, ptr @.str10447, i32 0, i32 %t1629) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1631, ptr @.fmt_bounds, ptr @.str10452, i32 0, i32 %t1629) call void @exit(i32 1) unreachable ixok364: @@ -137095,53 +137257,53 @@ ixok364: %t1633 = load ptr, ptr %t1632 %t1634 = call ptr @fn_emit_expr(ptr %t1633) store ptr %t1634, ptr %t1635 - %t1636 = call ptr @fn_emit_bind(ptr @.str10448) + %t1636 = call ptr @fn_emit_bind(ptr @.str10453) store ptr %t1636, ptr %t1637 %t1638 = load ptr, ptr %t1637 - %t1639 = call ptr @lp_str_concat(ptr @.str10449, ptr %t1638) - %t1640 = call ptr @lp_str_concat(ptr %t1639, ptr @.str10450) + %t1639 = call ptr @lp_str_concat(ptr @.str10454, ptr %t1638) + %t1640 = call ptr @lp_str_concat(ptr %t1639, ptr @.str10455) %t1641 = call ptr @fn_emit_bind(ptr %t1640) store ptr %t1641, ptr %t1642 %t1643 = load ptr, ptr %t1642 - %t1644 = call ptr @lp_str_concat(ptr @.str10451, ptr %t1643) - %t1645 = call ptr @lp_str_concat(ptr %t1644, ptr @.str10452) + %t1644 = call ptr @lp_str_concat(ptr @.str10456, ptr %t1643) + %t1645 = call ptr @lp_str_concat(ptr %t1644, ptr @.str10457) call void @fn_emit(ptr %t1645) %t1646 = load ptr, ptr %t1637 - %t1647 = call ptr @lp_str_concat(ptr @.str10453, ptr %t1646) - %t1648 = call ptr @lp_str_concat(ptr %t1647, ptr @.str10454) + %t1647 = call ptr @lp_str_concat(ptr @.str10458, ptr %t1646) + %t1648 = call ptr @lp_str_concat(ptr %t1647, ptr @.str10459) %t1649 = call ptr @fn_emit_bind(ptr %t1648) store ptr %t1649, ptr %t1650 %t1651 = load ptr, ptr %t1650 - %t1652 = call ptr @lp_str_concat(ptr @.str10455, ptr %t1651) - %t1653 = call ptr @lp_str_concat(ptr %t1652, ptr @.str10456) + %t1652 = call ptr @lp_str_concat(ptr @.str10460, ptr %t1651) + %t1653 = call ptr @lp_str_concat(ptr %t1652, ptr @.str10461) call void @fn_emit(ptr %t1653) %t1654 = load ptr, ptr %t1637 - %t1655 = call ptr @lp_str_concat(ptr @.str10457, ptr %t1654) - %t1656 = call ptr @lp_str_concat(ptr %t1655, ptr @.str10458) + %t1655 = call ptr @lp_str_concat(ptr @.str10462, ptr %t1654) + %t1656 = call ptr @lp_str_concat(ptr %t1655, ptr @.str10463) %t1657 = call ptr @fn_emit_bind(ptr %t1656) store ptr %t1657, ptr %t1658 %t1659 = load ptr, ptr %t1635 %t1660 = getelementptr inbounds %Cmp_Val, ptr %t1659, i32 0, i32 0 %t1661 = load ptr, ptr %t1660 - %t1662 = call ptr @lp_str_concat(ptr @.str10459, ptr %t1661) - %t1663 = call ptr @lp_str_concat(ptr %t1662, ptr @.str10460) + %t1662 = call ptr @lp_str_concat(ptr @.str10464, ptr %t1661) + %t1663 = call ptr @lp_str_concat(ptr %t1662, ptr @.str10465) %t1664 = load ptr, ptr %t1658 %t1665 = call ptr @lp_str_concat(ptr %t1663, ptr %t1664) - %t1666 = call ptr @lp_str_concat(ptr %t1665, ptr @.str10461) + %t1666 = call ptr @lp_str_concat(ptr %t1665, ptr @.str10466) call void @fn_emit(ptr %t1666) %t1667 = load ptr, ptr %t1637 - %t1668 = call ptr @fn_val(ptr %t1667, ptr @.str10462) + %t1668 = call ptr @fn_val(ptr %t1667, ptr @.str10467) store ptr %t1668, ptr %retval br label %ret ifend363: %t1670 = load ptr, ptr %t48 - %t1671 = call i32 @lp_str_eq(ptr %t1670, ptr @.str10463) + %t1671 = call i32 @lp_str_eq(ptr %t1670, ptr @.str10468) %t1672 = icmp ne i32 %t1671, 0 %t1673 = zext i1 %t1672 to i32 store i32 %t1673, ptr %t1669 br i1 %t1672, label %sc366, label %scend367 sc366: - %t1674 = call ptr @fn_find_fn(ptr @.str10464) + %t1674 = call ptr @fn_find_fn(ptr @.str10469) %t1675 = icmp eq ptr %t1674, null %t1676 = zext i1 %t1675 to i32 %t1677 = icmp ne i32 %t1676, 0 @@ -137164,7 +137326,7 @@ then368: br i1 %t1688, label %ixok371, label %ixbad372 ixbad372: %t1689 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1689, ptr @.fmt_bounds, ptr @.str10465, i32 0, i32 %t1687) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1689, ptr @.fmt_bounds, ptr @.str10470, i32 0, i32 %t1687) call void @exit(i32 1) unreachable ixok371: @@ -137175,35 +137337,35 @@ ixok371: %t1694 = load ptr, ptr %t1693 %t1695 = getelementptr inbounds %Cmp_Val, ptr %t1694, i32 0, i32 0 %t1696 = load ptr, ptr %t1695 - %t1697 = call ptr @lp_str_concat(ptr @.str10466, ptr %t1696) - %t1698 = call ptr @lp_str_concat(ptr %t1697, ptr @.str10467) + %t1697 = call ptr @lp_str_concat(ptr @.str10471, ptr %t1696) + %t1698 = call ptr @lp_str_concat(ptr %t1697, ptr @.str10472) %t1699 = call ptr @fn_emit_bind(ptr %t1698) store ptr %t1699, ptr %t1700 %t1701 = load ptr, ptr %t1700 - %t1702 = call ptr @lp_str_concat(ptr @.str10468, ptr %t1701) + %t1702 = call ptr @lp_str_concat(ptr @.str10473, ptr %t1701) %t1703 = call ptr @fn_emit_bind(ptr %t1702) store ptr %t1703, ptr %t1704 %t1705 = load ptr, ptr %t1704 - %t1706 = call ptr @lp_str_concat(ptr @.str10469, ptr %t1705) - %t1707 = call ptr @lp_str_concat(ptr %t1706, ptr @.str10470) + %t1706 = call ptr @lp_str_concat(ptr @.str10474, ptr %t1705) + %t1707 = call ptr @lp_str_concat(ptr %t1706, ptr @.str10475) %t1708 = call ptr @fn_emit_bind(ptr %t1707) store ptr %t1708, ptr %t1709 %t1710 = load ptr, ptr %t1709 - %t1711 = call ptr @lp_str_concat(ptr @.str10471, ptr %t1710) - %t1712 = call ptr @lp_str_concat(ptr %t1711, ptr @.str10472) + %t1711 = call ptr @lp_str_concat(ptr @.str10476, ptr %t1710) + %t1712 = call ptr @lp_str_concat(ptr %t1711, ptr @.str10477) %t1713 = call ptr @fn_emit_bind(ptr %t1712) - %t1714 = call ptr @fn_val(ptr %t1713, ptr @.str10473) + %t1714 = call ptr @fn_val(ptr %t1713, ptr @.str10478) store ptr %t1714, ptr %retval br label %ret ifend370: %t1716 = load ptr, ptr %t48 - %t1717 = call i32 @lp_str_eq(ptr %t1716, ptr @.str10474) + %t1717 = call i32 @lp_str_eq(ptr %t1716, ptr @.str10479) %t1718 = icmp ne i32 %t1717, 0 %t1719 = zext i1 %t1718 to i32 store i32 %t1719, ptr %t1715 br i1 %t1718, label %sc373, label %scend374 sc373: - %t1720 = call ptr @fn_find_fn(ptr @.str10475) + %t1720 = call ptr @fn_find_fn(ptr @.str10480) %t1721 = icmp eq ptr %t1720, null %t1722 = zext i1 %t1721 to i32 %t1723 = icmp ne i32 %t1722, 0 @@ -137226,7 +137388,7 @@ then375: br i1 %t1734, label %ixok378, label %ixbad379 ixbad379: %t1735 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1735, ptr @.fmt_bounds, ptr @.str10476, i32 0, i32 %t1733) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1735, ptr @.fmt_bounds, ptr @.str10481, i32 0, i32 %t1733) call void @exit(i32 1) unreachable ixok378: @@ -137237,35 +137399,35 @@ ixok378: %t1740 = load ptr, ptr %t1739 %t1741 = getelementptr inbounds %Cmp_Val, ptr %t1740, i32 0, i32 0 %t1742 = load ptr, ptr %t1741 - %t1743 = call ptr @lp_str_concat(ptr @.str10477, ptr %t1742) - %t1744 = call ptr @lp_str_concat(ptr %t1743, ptr @.str10478) + %t1743 = call ptr @lp_str_concat(ptr @.str10482, ptr %t1742) + %t1744 = call ptr @lp_str_concat(ptr %t1743, ptr @.str10483) %t1745 = call ptr @fn_emit_bind(ptr %t1744) store ptr %t1745, ptr %t1746 %t1747 = load ptr, ptr %t1746 - %t1748 = call ptr @lp_str_concat(ptr @.str10479, ptr %t1747) + %t1748 = call ptr @lp_str_concat(ptr @.str10484, ptr %t1747) %t1749 = call ptr @fn_emit_bind(ptr %t1748) store ptr %t1749, ptr %t1750 %t1751 = load ptr, ptr %t1750 - %t1752 = call ptr @lp_str_concat(ptr @.str10480, ptr %t1751) - %t1753 = call ptr @lp_str_concat(ptr %t1752, ptr @.str10481) + %t1752 = call ptr @lp_str_concat(ptr @.str10485, ptr %t1751) + %t1753 = call ptr @lp_str_concat(ptr %t1752, ptr @.str10486) %t1754 = call ptr @fn_emit_bind(ptr %t1753) store ptr %t1754, ptr %t1755 %t1756 = load ptr, ptr %t1755 - %t1757 = call ptr @lp_str_concat(ptr @.str10482, ptr %t1756) - %t1758 = call ptr @lp_str_concat(ptr %t1757, ptr @.str10483) + %t1757 = call ptr @lp_str_concat(ptr @.str10487, ptr %t1756) + %t1758 = call ptr @lp_str_concat(ptr %t1757, ptr @.str10488) %t1759 = call ptr @fn_emit_bind(ptr %t1758) - %t1760 = call ptr @fn_val(ptr %t1759, ptr @.str10484) + %t1760 = call ptr @fn_val(ptr %t1759, ptr @.str10489) store ptr %t1760, ptr %retval br label %ret ifend377: %t1762 = load ptr, ptr %t48 - %t1763 = call i32 @lp_str_eq(ptr %t1762, ptr @.str10485) + %t1763 = call i32 @lp_str_eq(ptr %t1762, ptr @.str10490) %t1764 = icmp ne i32 %t1763, 0 %t1765 = zext i1 %t1764 to i32 store i32 %t1765, ptr %t1761 br i1 %t1764, label %sc380, label %scend381 sc380: - %t1766 = call ptr @fn_find_fn(ptr @.str10486) + %t1766 = call ptr @fn_find_fn(ptr @.str10491) %t1767 = icmp eq ptr %t1766, null %t1768 = zext i1 %t1767 to i32 %t1769 = icmp ne i32 %t1768, 0 @@ -137289,7 +137451,7 @@ then382: br i1 %t1780, label %ixok385, label %ixbad386 ixbad386: %t1781 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1781, ptr @.fmt_bounds, ptr @.str10487, i32 0, i32 %t1779) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1781, ptr @.fmt_bounds, ptr @.str10492, i32 0, i32 %t1779) call void @exit(i32 1) unreachable ixok385: @@ -137297,43 +137459,43 @@ ixok385: %t1783 = load ptr, ptr %t1782 %t1784 = call ptr @fn_emit_expr(ptr %t1783) store ptr %t1784, ptr %t1785 - %t1786 = call ptr @fn_emit_bind(ptr @.str10488) + %t1786 = call ptr @fn_emit_bind(ptr @.str10493) store ptr %t1786, ptr %t1787 %t1788 = load ptr, ptr %t1787 - %t1789 = call ptr @lp_str_concat(ptr @.str10489, ptr %t1788) - %t1790 = call ptr @lp_str_concat(ptr %t1789, ptr @.str10490) + %t1789 = call ptr @lp_str_concat(ptr @.str10494, ptr %t1788) + %t1790 = call ptr @lp_str_concat(ptr %t1789, ptr @.str10495) %t1791 = call ptr @fn_emit_bind(ptr %t1790) store ptr %t1791, ptr %t1792 %t1793 = load ptr, ptr %t1792 - %t1794 = call ptr @lp_str_concat(ptr @.str10491, ptr %t1793) - %t1795 = call ptr @lp_str_concat(ptr %t1794, ptr @.str10492) + %t1794 = call ptr @lp_str_concat(ptr @.str10496, ptr %t1793) + %t1795 = call ptr @lp_str_concat(ptr %t1794, ptr @.str10497) call void @fn_emit(ptr %t1795) %t1796 = load ptr, ptr %t1787 - %t1797 = call ptr @lp_str_concat(ptr @.str10493, ptr %t1796) - %t1798 = call ptr @lp_str_concat(ptr %t1797, ptr @.str10494) + %t1797 = call ptr @lp_str_concat(ptr @.str10498, ptr %t1796) + %t1798 = call ptr @lp_str_concat(ptr %t1797, ptr @.str10499) %t1799 = call ptr @fn_emit_bind(ptr %t1798) store ptr %t1799, ptr %t1800 %t1801 = load ptr, ptr %t1785 - %t1802 = call ptr @fn_coerce_code(ptr %t1801, ptr @.str10496) - %t1803 = call ptr @lp_str_concat(ptr @.str10495, ptr %t1802) - %t1804 = call ptr @lp_str_concat(ptr %t1803, ptr @.str10497) + %t1802 = call ptr @fn_coerce_code(ptr %t1801, ptr @.str10501) + %t1803 = call ptr @lp_str_concat(ptr @.str10500, ptr %t1802) + %t1804 = call ptr @lp_str_concat(ptr %t1803, ptr @.str10502) %t1805 = load ptr, ptr %t1800 %t1806 = call ptr @lp_str_concat(ptr %t1804, ptr %t1805) - %t1807 = call ptr @lp_str_concat(ptr %t1806, ptr @.str10498) + %t1807 = call ptr @lp_str_concat(ptr %t1806, ptr @.str10503) call void @fn_emit(ptr %t1807) %t1808 = load ptr, ptr %t1787 - %t1809 = call ptr @fn_val(ptr %t1808, ptr @.str10499) + %t1809 = call ptr @fn_val(ptr %t1808, ptr @.str10504) store ptr %t1809, ptr %retval br label %ret ifend384: %t1811 = load ptr, ptr %t48 - %t1812 = call i32 @lp_str_eq(ptr %t1811, ptr @.str10500) + %t1812 = call i32 @lp_str_eq(ptr %t1811, ptr @.str10505) %t1813 = icmp ne i32 %t1812, 0 %t1814 = zext i1 %t1813 to i32 store i32 %t1814, ptr %t1810 br i1 %t1813, label %sc387, label %scend388 sc387: - %t1815 = call ptr @fn_find_fn(ptr @.str10501) + %t1815 = call ptr @fn_find_fn(ptr @.str10506) %t1816 = icmp eq ptr %t1815, null %t1817 = zext i1 %t1816 to i32 %t1818 = icmp ne i32 %t1817, 0 @@ -137346,39 +137508,39 @@ scend388: br i1 %t1821, label %then389, label %ifend391 then389: store i32 1, ptr @g_g_uses_option - %t1822 = call ptr @fn_emit_bind(ptr @.str10502) + %t1822 = call ptr @fn_emit_bind(ptr @.str10507) store ptr %t1822, ptr %t1823 %t1824 = load ptr, ptr %t1823 - %t1825 = call ptr @lp_str_concat(ptr @.str10503, ptr %t1824) - %t1826 = call ptr @lp_str_concat(ptr %t1825, ptr @.str10504) + %t1825 = call ptr @lp_str_concat(ptr @.str10508, ptr %t1824) + %t1826 = call ptr @lp_str_concat(ptr %t1825, ptr @.str10509) %t1827 = call ptr @fn_emit_bind(ptr %t1826) store ptr %t1827, ptr %t1828 %t1829 = load ptr, ptr %t1828 - %t1830 = call ptr @lp_str_concat(ptr @.str10505, ptr %t1829) - %t1831 = call ptr @lp_str_concat(ptr %t1830, ptr @.str10506) + %t1830 = call ptr @lp_str_concat(ptr @.str10510, ptr %t1829) + %t1831 = call ptr @lp_str_concat(ptr %t1830, ptr @.str10511) call void @fn_emit(ptr %t1831) %t1832 = load ptr, ptr %t1823 - %t1833 = call ptr @lp_str_concat(ptr @.str10507, ptr %t1832) - %t1834 = call ptr @lp_str_concat(ptr %t1833, ptr @.str10508) + %t1833 = call ptr @lp_str_concat(ptr @.str10512, ptr %t1832) + %t1834 = call ptr @lp_str_concat(ptr %t1833, ptr @.str10513) %t1835 = call ptr @fn_emit_bind(ptr %t1834) store ptr %t1835, ptr %t1836 %t1837 = load ptr, ptr %t1836 - %t1838 = call ptr @lp_str_concat(ptr @.str10509, ptr %t1837) - %t1839 = call ptr @lp_str_concat(ptr %t1838, ptr @.str10510) + %t1838 = call ptr @lp_str_concat(ptr @.str10514, ptr %t1837) + %t1839 = call ptr @lp_str_concat(ptr %t1838, ptr @.str10515) call void @fn_emit(ptr %t1839) %t1840 = load ptr, ptr %t1823 - %t1841 = call ptr @fn_val(ptr %t1840, ptr @.str10511) + %t1841 = call ptr @fn_val(ptr %t1840, ptr @.str10516) store ptr %t1841, ptr %retval br label %ret ifend391: %t1843 = load ptr, ptr %t48 - %t1844 = call i32 @lp_str_eq(ptr %t1843, ptr @.str10512) + %t1844 = call i32 @lp_str_eq(ptr %t1843, ptr @.str10517) %t1845 = icmp ne i32 %t1844, 0 %t1846 = zext i1 %t1845 to i32 store i32 %t1846, ptr %t1842 br i1 %t1845, label %sc392, label %scend393 sc392: - %t1847 = call ptr @fn_find_fn(ptr @.str10513) + %t1847 = call ptr @fn_find_fn(ptr @.str10518) %t1848 = icmp eq ptr %t1847, null %t1849 = zext i1 %t1848 to i32 %t1850 = icmp ne i32 %t1849, 0 @@ -137401,7 +137563,7 @@ then394: br i1 %t1861, label %ixok397, label %ixbad398 ixbad398: %t1862 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1862, ptr @.fmt_bounds, ptr @.str10514, i32 0, i32 %t1860) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1862, ptr @.fmt_bounds, ptr @.str10519, i32 0, i32 %t1860) call void @exit(i32 1) unreachable ixok397: @@ -137412,35 +137574,35 @@ ixok397: %t1867 = load ptr, ptr %t1866 %t1868 = getelementptr inbounds %Cmp_Val, ptr %t1867, i32 0, i32 0 %t1869 = load ptr, ptr %t1868 - %t1870 = call ptr @lp_str_concat(ptr @.str10515, ptr %t1869) - %t1871 = call ptr @lp_str_concat(ptr %t1870, ptr @.str10516) + %t1870 = call ptr @lp_str_concat(ptr @.str10520, ptr %t1869) + %t1871 = call ptr @lp_str_concat(ptr %t1870, ptr @.str10521) %t1872 = call ptr @fn_emit_bind(ptr %t1871) store ptr %t1872, ptr %t1873 %t1874 = load ptr, ptr %t1873 - %t1875 = call ptr @lp_str_concat(ptr @.str10517, ptr %t1874) + %t1875 = call ptr @lp_str_concat(ptr @.str10522, ptr %t1874) %t1876 = call ptr @fn_emit_bind(ptr %t1875) store ptr %t1876, ptr %t1877 %t1878 = load ptr, ptr %t1877 - %t1879 = call ptr @lp_str_concat(ptr @.str10518, ptr %t1878) - %t1880 = call ptr @lp_str_concat(ptr %t1879, ptr @.str10519) + %t1879 = call ptr @lp_str_concat(ptr @.str10523, ptr %t1878) + %t1880 = call ptr @lp_str_concat(ptr %t1879, ptr @.str10524) %t1881 = call ptr @fn_emit_bind(ptr %t1880) store ptr %t1881, ptr %t1882 %t1883 = load ptr, ptr %t1882 - %t1884 = call ptr @lp_str_concat(ptr @.str10520, ptr %t1883) - %t1885 = call ptr @lp_str_concat(ptr %t1884, ptr @.str10521) + %t1884 = call ptr @lp_str_concat(ptr @.str10525, ptr %t1883) + %t1885 = call ptr @lp_str_concat(ptr %t1884, ptr @.str10526) %t1886 = call ptr @fn_emit_bind(ptr %t1885) - %t1887 = call ptr @fn_val(ptr %t1886, ptr @.str10522) + %t1887 = call ptr @fn_val(ptr %t1886, ptr @.str10527) store ptr %t1887, ptr %retval br label %ret ifend396: %t1889 = load ptr, ptr %t48 - %t1890 = call i32 @lp_str_eq(ptr %t1889, ptr @.str10523) + %t1890 = call i32 @lp_str_eq(ptr %t1889, ptr @.str10528) %t1891 = icmp ne i32 %t1890, 0 %t1892 = zext i1 %t1891 to i32 store i32 %t1892, ptr %t1888 br i1 %t1891, label %sc399, label %scend400 sc399: - %t1893 = call ptr @fn_find_fn(ptr @.str10524) + %t1893 = call ptr @fn_find_fn(ptr @.str10529) %t1894 = icmp eq ptr %t1893, null %t1895 = zext i1 %t1894 to i32 %t1896 = icmp ne i32 %t1895, 0 @@ -137463,7 +137625,7 @@ then401: br i1 %t1907, label %ixok404, label %ixbad405 ixbad405: %t1908 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1908, ptr @.fmt_bounds, ptr @.str10525, i32 0, i32 %t1906) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1908, ptr @.fmt_bounds, ptr @.str10530, i32 0, i32 %t1906) call void @exit(i32 1) unreachable ixok404: @@ -137474,35 +137636,35 @@ ixok404: %t1913 = load ptr, ptr %t1912 %t1914 = getelementptr inbounds %Cmp_Val, ptr %t1913, i32 0, i32 0 %t1915 = load ptr, ptr %t1914 - %t1916 = call ptr @lp_str_concat(ptr @.str10526, ptr %t1915) - %t1917 = call ptr @lp_str_concat(ptr %t1916, ptr @.str10527) + %t1916 = call ptr @lp_str_concat(ptr @.str10531, ptr %t1915) + %t1917 = call ptr @lp_str_concat(ptr %t1916, ptr @.str10532) %t1918 = call ptr @fn_emit_bind(ptr %t1917) store ptr %t1918, ptr %t1919 %t1920 = load ptr, ptr %t1919 - %t1921 = call ptr @lp_str_concat(ptr @.str10528, ptr %t1920) + %t1921 = call ptr @lp_str_concat(ptr @.str10533, ptr %t1920) %t1922 = call ptr @fn_emit_bind(ptr %t1921) store ptr %t1922, ptr %t1923 %t1924 = load ptr, ptr %t1923 - %t1925 = call ptr @lp_str_concat(ptr @.str10529, ptr %t1924) - %t1926 = call ptr @lp_str_concat(ptr %t1925, ptr @.str10530) + %t1925 = call ptr @lp_str_concat(ptr @.str10534, ptr %t1924) + %t1926 = call ptr @lp_str_concat(ptr %t1925, ptr @.str10535) %t1927 = call ptr @fn_emit_bind(ptr %t1926) store ptr %t1927, ptr %t1928 %t1929 = load ptr, ptr %t1928 - %t1930 = call ptr @lp_str_concat(ptr @.str10531, ptr %t1929) - %t1931 = call ptr @lp_str_concat(ptr %t1930, ptr @.str10532) + %t1930 = call ptr @lp_str_concat(ptr @.str10536, ptr %t1929) + %t1931 = call ptr @lp_str_concat(ptr %t1930, ptr @.str10537) %t1932 = call ptr @fn_emit_bind(ptr %t1931) - %t1933 = call ptr @fn_val(ptr %t1932, ptr @.str10533) + %t1933 = call ptr @fn_val(ptr %t1932, ptr @.str10538) store ptr %t1933, ptr %retval br label %ret ifend403: %t1935 = load ptr, ptr %t48 - %t1936 = call i32 @lp_str_eq(ptr %t1935, ptr @.str10534) + %t1936 = call i32 @lp_str_eq(ptr %t1935, ptr @.str10539) %t1937 = icmp ne i32 %t1936, 0 %t1938 = zext i1 %t1937 to i32 store i32 %t1938, ptr %t1934 br i1 %t1937, label %sc406, label %scend407 sc406: - %t1939 = call ptr @fn_find_fn(ptr @.str10535) + %t1939 = call ptr @fn_find_fn(ptr @.str10540) %t1940 = icmp eq ptr %t1939, null %t1941 = zext i1 %t1940 to i32 %t1942 = icmp ne i32 %t1941, 0 @@ -137525,7 +137687,7 @@ then408: br i1 %t1953, label %ixok411, label %ixbad412 ixbad412: %t1954 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1954, ptr @.fmt_bounds, ptr @.str10536, i32 0, i32 %t1952) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1954, ptr @.fmt_bounds, ptr @.str10541, i32 0, i32 %t1952) call void @exit(i32 1) unreachable ixok411: @@ -137544,7 +137706,7 @@ ixok411: br i1 %t1966, label %ixok413, label %ixbad414 ixbad414: %t1967 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t1967, ptr @.fmt_bounds, ptr @.str10537, i32 1, i32 %t1965) + call i32 (ptr, ptr, ...) @fprintf(ptr %t1967, ptr @.fmt_bounds, ptr @.str10542, i32 1, i32 %t1965) call void @exit(i32 1) unreachable ixok413: @@ -137555,46 +137717,46 @@ ixok413: %t1972 = load ptr, ptr %t1958 %t1973 = getelementptr inbounds %Cmp_Val, ptr %t1972, i32 0, i32 0 %t1974 = load ptr, ptr %t1973 - %t1975 = call ptr @lp_str_concat(ptr @.str10538, ptr %t1974) - %t1976 = call ptr @lp_str_concat(ptr %t1975, ptr @.str10539) + %t1975 = call ptr @lp_str_concat(ptr @.str10543, ptr %t1974) + %t1976 = call ptr @lp_str_concat(ptr %t1975, ptr @.str10544) %t1977 = call ptr @fn_emit_bind(ptr %t1976) store ptr %t1977, ptr %t1978 %t1979 = load ptr, ptr %t1978 - %t1980 = call ptr @lp_str_concat(ptr @.str10540, ptr %t1979) + %t1980 = call ptr @lp_str_concat(ptr @.str10545, ptr %t1979) %t1981 = call ptr @fn_emit_bind(ptr %t1980) store ptr %t1981, ptr %t1982 %t1983 = load ptr, ptr %t1958 %t1984 = getelementptr inbounds %Cmp_Val, ptr %t1983, i32 0, i32 0 %t1985 = load ptr, ptr %t1984 - %t1986 = call ptr @lp_str_concat(ptr @.str10541, ptr %t1985) - %t1987 = call ptr @lp_str_concat(ptr %t1986, ptr @.str10542) + %t1986 = call ptr @lp_str_concat(ptr @.str10546, ptr %t1985) + %t1987 = call ptr @lp_str_concat(ptr %t1986, ptr @.str10547) %t1988 = call ptr @fn_emit_bind(ptr %t1987) store ptr %t1988, ptr %t1989 %t1990 = load ptr, ptr %t1989 - %t1991 = call ptr @lp_str_concat(ptr @.str10543, ptr %t1990) + %t1991 = call ptr @lp_str_concat(ptr @.str10548, ptr %t1990) %t1992 = call ptr @fn_emit_bind(ptr %t1991) store ptr %t1992, ptr %t1993 %t1994 = load ptr, ptr %t1982 - %t1995 = call ptr @lp_str_concat(ptr @.str10544, ptr %t1994) - %t1996 = call ptr @lp_str_concat(ptr %t1995, ptr @.str10545) + %t1995 = call ptr @lp_str_concat(ptr @.str10549, ptr %t1994) + %t1996 = call ptr @lp_str_concat(ptr %t1995, ptr @.str10550) %t1997 = call ptr @fn_emit_bind(ptr %t1996) store ptr %t1997, ptr %t1998 %t1999 = load ptr, ptr %t1998 - %t2000 = call ptr @lp_str_concat(ptr @.str10546, ptr %t1999) - %t2001 = call ptr @lp_str_concat(ptr %t2000, ptr @.str10547) + %t2000 = call ptr @lp_str_concat(ptr @.str10551, ptr %t1999) + %t2001 = call ptr @lp_str_concat(ptr %t2000, ptr @.str10552) %t2002 = load ptr, ptr %t1993 %t2003 = call ptr @lp_str_concat(ptr %t2001, ptr %t2002) - %t2004 = call ptr @lp_str_concat(ptr %t2003, ptr @.str10548) + %t2004 = call ptr @lp_str_concat(ptr %t2003, ptr @.str10553) %t2005 = load ptr, ptr %t1971 - %t2006 = call ptr @fn_coerce_code(ptr %t2005, ptr @.str10549) + %t2006 = call ptr @fn_coerce_code(ptr %t2005, ptr @.str10554) %t2007 = call ptr @lp_str_concat(ptr %t2004, ptr %t2006) %t2008 = call ptr @fn_emit_bind(ptr %t2007) - %t2009 = call ptr @fn_val(ptr %t2008, ptr @.str10550) + %t2009 = call ptr @fn_val(ptr %t2008, ptr @.str10555) store ptr %t2009, ptr %retval br label %ret ifend410: %t2010 = load ptr, ptr %t48 - %t2011 = call i32 @lp_str_eq(ptr %t2010, ptr @.str10551) + %t2011 = call i32 @lp_str_eq(ptr %t2010, ptr @.str10556) %t2012 = icmp ne i32 %t2011, 0 br i1 %t2012, label %then415, label %ifend417 then415: @@ -137609,7 +137771,7 @@ then415: br i1 %t2020, label %ixok418, label %ixbad419 ixbad419: %t2021 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2021, ptr @.fmt_bounds, ptr @.str10552, i32 0, i32 %t2019) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2021, ptr @.fmt_bounds, ptr @.str10557, i32 0, i32 %t2019) call void @exit(i32 1) unreachable ixok418: @@ -137620,15 +137782,15 @@ ixok418: %t2026 = load ptr, ptr %t2025 %t2027 = getelementptr inbounds %Cmp_Val, ptr %t2026, i32 0, i32 0 %t2028 = load ptr, ptr %t2027 - %t2029 = call ptr @lp_str_concat(ptr @.str10553, ptr %t2028) - %t2030 = call ptr @lp_str_concat(ptr %t2029, ptr @.str10554) + %t2029 = call ptr @lp_str_concat(ptr @.str10558, ptr %t2028) + %t2030 = call ptr @lp_str_concat(ptr %t2029, ptr @.str10559) %t2031 = call ptr @fn_emit_bind(ptr %t2030) - %t2032 = call ptr @fn_val(ptr %t2031, ptr @.str10555) + %t2032 = call ptr @fn_val(ptr %t2031, ptr @.str10560) store ptr %t2032, ptr %retval br label %ret ifend417: %t2033 = load ptr, ptr %t48 - %t2034 = call i32 @lp_str_eq(ptr %t2033, ptr @.str10556) + %t2034 = call i32 @lp_str_eq(ptr %t2033, ptr @.str10561) %t2035 = icmp ne i32 %t2034, 0 br i1 %t2035, label %then420, label %ifend422 then420: @@ -137643,7 +137805,7 @@ then420: br i1 %t2043, label %ixok423, label %ixbad424 ixbad424: %t2044 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2044, ptr @.fmt_bounds, ptr @.str10557, i32 0, i32 %t2042) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2044, ptr @.fmt_bounds, ptr @.str10562, i32 0, i32 %t2042) call void @exit(i32 1) unreachable ixok423: @@ -137662,7 +137824,7 @@ ixok423: br i1 %t2056, label %ixok425, label %ixbad426 ixbad426: %t2057 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2057, ptr @.fmt_bounds, ptr @.str10558, i32 1, i32 %t2055) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2057, ptr @.fmt_bounds, ptr @.str10563, i32 1, i32 %t2055) call void @exit(i32 1) unreachable ixok425: @@ -137673,20 +137835,20 @@ ixok425: %t2062 = load ptr, ptr %t2048 %t2063 = getelementptr inbounds %Cmp_Val, ptr %t2062, i32 0, i32 0 %t2064 = load ptr, ptr %t2063 - %t2065 = call ptr @lp_str_concat(ptr @.str10559, ptr %t2064) - %t2066 = call ptr @lp_str_concat(ptr %t2065, ptr @.str10560) + %t2065 = call ptr @lp_str_concat(ptr @.str10564, ptr %t2064) + %t2066 = call ptr @lp_str_concat(ptr %t2065, ptr @.str10565) %t2067 = load ptr, ptr %t2061 %t2068 = getelementptr inbounds %Cmp_Val, ptr %t2067, i32 0, i32 0 %t2069 = load ptr, ptr %t2068 %t2070 = call ptr @lp_str_concat(ptr %t2066, ptr %t2069) - %t2071 = call ptr @lp_str_concat(ptr %t2070, ptr @.str10561) + %t2071 = call ptr @lp_str_concat(ptr %t2070, ptr @.str10566) %t2072 = call ptr @fn_emit_bind(ptr %t2071) - %t2073 = call ptr @fn_val(ptr %t2072, ptr @.str10562) + %t2073 = call ptr @fn_val(ptr %t2072, ptr @.str10567) store ptr %t2073, ptr %retval br label %ret ifend422: %t2074 = load ptr, ptr %t48 - %t2075 = call i32 @lp_str_eq(ptr %t2074, ptr @.str10563) + %t2075 = call i32 @lp_str_eq(ptr %t2074, ptr @.str10568) %t2076 = icmp ne i32 %t2075, 0 br i1 %t2076, label %then427, label %ifend429 then427: @@ -137701,7 +137863,7 @@ then427: br i1 %t2084, label %ixok430, label %ixbad431 ixbad431: %t2085 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2085, ptr @.fmt_bounds, ptr @.str10564, i32 0, i32 %t2083) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2085, ptr @.fmt_bounds, ptr @.str10569, i32 0, i32 %t2083) call void @exit(i32 1) unreachable ixok430: @@ -137720,7 +137882,7 @@ ixok430: br i1 %t2097, label %ixok432, label %ixbad433 ixbad433: %t2098 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2098, ptr @.fmt_bounds, ptr @.str10565, i32 1, i32 %t2096) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2098, ptr @.fmt_bounds, ptr @.str10570, i32 1, i32 %t2096) call void @exit(i32 1) unreachable ixok432: @@ -137739,7 +137901,7 @@ ixok432: br i1 %t2110, label %ixok434, label %ixbad435 ixbad435: %t2111 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2111, ptr @.fmt_bounds, ptr @.str10566, i32 2, i32 %t2109) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2111, ptr @.fmt_bounds, ptr @.str10571, i32 2, i32 %t2109) call void @exit(i32 1) unreachable ixok434: @@ -137750,30 +137912,30 @@ ixok434: %t2116 = load ptr, ptr %t2089 %t2117 = getelementptr inbounds %Cmp_Val, ptr %t2116, i32 0, i32 0 %t2118 = load ptr, ptr %t2117 - %t2119 = call ptr @lp_str_concat(ptr @.str10567, ptr %t2118) - %t2120 = call ptr @lp_str_concat(ptr %t2119, ptr @.str10568) + %t2119 = call ptr @lp_str_concat(ptr @.str10572, ptr %t2118) + %t2120 = call ptr @lp_str_concat(ptr %t2119, ptr @.str10573) %t2121 = load ptr, ptr %t2102 %t2122 = getelementptr inbounds %Cmp_Val, ptr %t2121, i32 0, i32 0 %t2123 = load ptr, ptr %t2122 %t2124 = call ptr @lp_str_concat(ptr %t2120, ptr %t2123) - %t2125 = call ptr @lp_str_concat(ptr %t2124, ptr @.str10569) + %t2125 = call ptr @lp_str_concat(ptr %t2124, ptr @.str10574) %t2126 = load ptr, ptr %t2115 %t2127 = getelementptr inbounds %Cmp_Val, ptr %t2126, i32 0, i32 0 %t2128 = load ptr, ptr %t2127 %t2129 = call ptr @lp_str_concat(ptr %t2125, ptr %t2128) - %t2130 = call ptr @lp_str_concat(ptr %t2129, ptr @.str10570) + %t2130 = call ptr @lp_str_concat(ptr %t2129, ptr @.str10575) %t2131 = call ptr @fn_emit_bind(ptr %t2130) store ptr %t2131, ptr %t2132 %t2133 = load ptr, ptr %t2132 - %t2134 = call ptr @lp_str_concat(ptr @.str10571, ptr %t2133) - %t2135 = call ptr @lp_str_concat(ptr %t2134, ptr @.str10572) + %t2134 = call ptr @lp_str_concat(ptr @.str10576, ptr %t2133) + %t2135 = call ptr @lp_str_concat(ptr %t2134, ptr @.str10577) %t2136 = call ptr @fn_emit_bind(ptr %t2135) - %t2137 = call ptr @fn_val(ptr %t2136, ptr @.str10573) + %t2137 = call ptr @fn_val(ptr %t2136, ptr @.str10578) store ptr %t2137, ptr %retval br label %ret ifend429: %t2138 = load ptr, ptr %t48 - %t2139 = call i32 @lp_str_eq(ptr %t2138, ptr @.str10574) + %t2139 = call i32 @lp_str_eq(ptr %t2138, ptr @.str10579) %t2140 = icmp ne i32 %t2139, 0 br i1 %t2140, label %then436, label %ifend438 then436: @@ -137788,7 +137950,7 @@ then436: br i1 %t2148, label %ixok439, label %ixbad440 ixbad440: %t2149 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2149, ptr @.fmt_bounds, ptr @.str10575, i32 0, i32 %t2147) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2149, ptr @.fmt_bounds, ptr @.str10580, i32 0, i32 %t2147) call void @exit(i32 1) unreachable ixok439: @@ -137807,7 +137969,7 @@ ixok439: br i1 %t2161, label %ixok441, label %ixbad442 ixbad442: %t2162 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2162, ptr @.fmt_bounds, ptr @.str10576, i32 1, i32 %t2160) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2162, ptr @.fmt_bounds, ptr @.str10581, i32 1, i32 %t2160) call void @exit(i32 1) unreachable ixok441: @@ -137826,7 +137988,7 @@ ixok441: br i1 %t2174, label %ixok443, label %ixbad444 ixbad444: %t2175 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2175, ptr @.fmt_bounds, ptr @.str10577, i32 2, i32 %t2173) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2175, ptr @.fmt_bounds, ptr @.str10582, i32 2, i32 %t2173) call void @exit(i32 1) unreachable ixok443: @@ -137845,7 +138007,7 @@ ixok443: br i1 %t2187, label %ixok445, label %ixbad446 ixbad446: %t2188 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2188, ptr @.fmt_bounds, ptr @.str10578, i32 3, i32 %t2186) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2188, ptr @.fmt_bounds, ptr @.str10583, i32 3, i32 %t2186) call void @exit(i32 1) unreachable ixok445: @@ -137856,35 +138018,35 @@ ixok445: %t2193 = load ptr, ptr %t2192 %t2194 = getelementptr inbounds %Cmp_Val, ptr %t2193, i32 0, i32 0 %t2195 = load ptr, ptr %t2194 - %t2196 = call ptr @lp_str_concat(ptr @.str10579, ptr %t2195) - %t2197 = call ptr @lp_str_concat(ptr %t2196, ptr @.str10580) + %t2196 = call ptr @lp_str_concat(ptr @.str10584, ptr %t2195) + %t2197 = call ptr @lp_str_concat(ptr %t2196, ptr @.str10585) %t2198 = call ptr @fn_emit_bind(ptr %t2197) store ptr %t2198, ptr %t2199 - call void @fn_emit(ptr @.str10581) + call void @fn_emit(ptr @.str10586) %t2200 = load ptr, ptr %t2153 %t2201 = getelementptr inbounds %Cmp_Val, ptr %t2200, i32 0, i32 0 %t2202 = load ptr, ptr %t2201 call void @fn_emit(ptr %t2202) - call void @fn_emit(ptr @.str10582) + call void @fn_emit(ptr @.str10587) %t2203 = load ptr, ptr %t2166 %t2204 = getelementptr inbounds %Cmp_Val, ptr %t2203, i32 0, i32 0 %t2205 = load ptr, ptr %t2204 call void @fn_emit(ptr %t2205) - call void @fn_emit(ptr @.str10583) + call void @fn_emit(ptr @.str10588) %t2206 = load ptr, ptr %t2179 %t2207 = getelementptr inbounds %Cmp_Val, ptr %t2206, i32 0, i32 0 %t2208 = load ptr, ptr %t2207 call void @fn_emit(ptr %t2208) - call void @fn_emit(ptr @.str10584) + call void @fn_emit(ptr @.str10589) %t2209 = load ptr, ptr %t2199 call void @fn_emit(ptr %t2209) - call void @fn_emit(ptr @.str10585) - %t2210 = call ptr @fn_val(ptr @.str10586, ptr @.str10587) + call void @fn_emit(ptr @.str10590) + %t2210 = call ptr @fn_val(ptr @.str10591, ptr @.str10592) store ptr %t2210, ptr %retval br label %ret ifend438: %t2211 = load ptr, ptr %t48 - %t2212 = call i32 @lp_str_eq(ptr %t2211, ptr @.str10588) + %t2212 = call i32 @lp_str_eq(ptr %t2211, ptr @.str10593) %t2213 = icmp ne i32 %t2212, 0 br i1 %t2213, label %then447, label %ifend449 then447: @@ -137899,7 +138061,7 @@ then447: br i1 %t2221, label %ixok450, label %ixbad451 ixbad451: %t2222 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2222, ptr @.fmt_bounds, ptr @.str10589, i32 0, i32 %t2220) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2222, ptr @.fmt_bounds, ptr @.str10594, i32 0, i32 %t2220) call void @exit(i32 1) unreachable ixok450: @@ -137918,7 +138080,7 @@ ixok450: br i1 %t2234, label %ixok452, label %ixbad453 ixbad453: %t2235 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2235, ptr @.fmt_bounds, ptr @.str10590, i32 1, i32 %t2233) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2235, ptr @.fmt_bounds, ptr @.str10595, i32 1, i32 %t2233) call void @exit(i32 1) unreachable ixok452: @@ -137929,30 +138091,30 @@ ixok452: %t2240 = load ptr, ptr %t2226 %t2241 = getelementptr inbounds %Cmp_Val, ptr %t2240, i32 0, i32 0 %t2242 = load ptr, ptr %t2241 - %t2243 = call ptr @lp_str_concat(ptr @.str10591, ptr %t2242) - %t2244 = call ptr @lp_str_concat(ptr %t2243, ptr @.str10592) + %t2243 = call ptr @lp_str_concat(ptr @.str10596, ptr %t2242) + %t2244 = call ptr @lp_str_concat(ptr %t2243, ptr @.str10597) %t2245 = load ptr, ptr %t2239 %t2246 = getelementptr inbounds %Cmp_Val, ptr %t2245, i32 0, i32 0 %t2247 = load ptr, ptr %t2246 %t2248 = call ptr @lp_str_concat(ptr %t2244, ptr %t2247) - %t2249 = call ptr @lp_str_concat(ptr %t2248, ptr @.str10593) + %t2249 = call ptr @lp_str_concat(ptr %t2248, ptr @.str10598) %t2250 = call ptr @fn_emit_bind(ptr %t2249) - %t2251 = call ptr @fn_val(ptr %t2250, ptr @.str10594) + %t2251 = call ptr @fn_val(ptr %t2250, ptr @.str10599) store ptr %t2251, ptr %retval br label %ret ifend449: %t2252 = load ptr, ptr %t48 - %t2253 = call i32 @lp_str_eq(ptr %t2252, ptr @.str10595) + %t2253 = call i32 @lp_str_eq(ptr %t2252, ptr @.str10600) %t2254 = icmp ne i32 %t2253, 0 br i1 %t2254, label %then454, label %ifend456 then454: - %t2255 = call ptr @fn_emit_bind(ptr @.str10596) - %t2256 = call ptr @fn_val(ptr %t2255, ptr @.str10597) + %t2255 = call ptr @fn_emit_bind(ptr @.str10601) + %t2256 = call ptr @fn_val(ptr %t2255, ptr @.str10602) store ptr %t2256, ptr %retval br label %ret ifend456: %t2257 = load ptr, ptr %t48 - %t2258 = call i32 @lp_str_eq(ptr %t2257, ptr @.str10598) + %t2258 = call i32 @lp_str_eq(ptr %t2257, ptr @.str10603) %t2259 = icmp ne i32 %t2258, 0 br i1 %t2259, label %then457, label %ifend459 then457: @@ -137967,7 +138129,7 @@ then457: br i1 %t2267, label %ixok460, label %ixbad461 ixbad461: %t2268 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2268, ptr @.fmt_bounds, ptr @.str10599, i32 0, i32 %t2266) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2268, ptr @.fmt_bounds, ptr @.str10604, i32 0, i32 %t2266) call void @exit(i32 1) unreachable ixok460: @@ -137978,15 +138140,15 @@ ixok460: %t2273 = load ptr, ptr %t2272 %t2274 = getelementptr inbounds %Cmp_Val, ptr %t2273, i32 0, i32 0 %t2275 = load ptr, ptr %t2274 - %t2276 = call ptr @lp_str_concat(ptr @.str10600, ptr %t2275) - %t2277 = call ptr @lp_str_concat(ptr %t2276, ptr @.str10601) + %t2276 = call ptr @lp_str_concat(ptr @.str10605, ptr %t2275) + %t2277 = call ptr @lp_str_concat(ptr %t2276, ptr @.str10606) %t2278 = call ptr @fn_emit_bind(ptr %t2277) - %t2279 = call ptr @fn_val(ptr %t2278, ptr @.str10602) + %t2279 = call ptr @fn_val(ptr %t2278, ptr @.str10607) store ptr %t2279, ptr %retval br label %ret ifend459: %t2280 = load ptr, ptr %t48 - %t2281 = call i32 @lp_str_eq(ptr %t2280, ptr @.str10603) + %t2281 = call i32 @lp_str_eq(ptr %t2280, ptr @.str10608) %t2282 = icmp ne i32 %t2281, 0 br i1 %t2282, label %then462, label %ifend464 then462: @@ -138001,7 +138163,7 @@ then462: br i1 %t2290, label %ixok465, label %ixbad466 ixbad466: %t2291 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2291, ptr @.fmt_bounds, ptr @.str10604, i32 0, i32 %t2289) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2291, ptr @.fmt_bounds, ptr @.str10609, i32 0, i32 %t2289) call void @exit(i32 1) unreachable ixok465: @@ -138012,15 +138174,15 @@ ixok465: %t2296 = load ptr, ptr %t2295 %t2297 = getelementptr inbounds %Cmp_Val, ptr %t2296, i32 0, i32 0 %t2298 = load ptr, ptr %t2297 - %t2299 = call ptr @lp_str_concat(ptr @.str10605, ptr %t2298) - %t2300 = call ptr @lp_str_concat(ptr %t2299, ptr @.str10606) + %t2299 = call ptr @lp_str_concat(ptr @.str10610, ptr %t2298) + %t2300 = call ptr @lp_str_concat(ptr %t2299, ptr @.str10611) %t2301 = call ptr @fn_emit_bind(ptr %t2300) - %t2302 = call ptr @fn_val(ptr %t2301, ptr @.str10607) + %t2302 = call ptr @fn_val(ptr %t2301, ptr @.str10612) store ptr %t2302, ptr %retval br label %ret ifend464: %t2303 = load ptr, ptr %t48 - %t2304 = call i32 @lp_str_eq(ptr %t2303, ptr @.str10608) + %t2304 = call i32 @lp_str_eq(ptr %t2303, ptr @.str10613) %t2305 = icmp ne i32 %t2304, 0 br i1 %t2305, label %then467, label %ifend469 then467: @@ -138035,7 +138197,7 @@ then467: br i1 %t2313, label %ixok470, label %ixbad471 ixbad471: %t2314 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2314, ptr @.fmt_bounds, ptr @.str10609, i32 0, i32 %t2312) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2314, ptr @.fmt_bounds, ptr @.str10614, i32 0, i32 %t2312) call void @exit(i32 1) unreachable ixok470: @@ -138054,7 +138216,7 @@ ixok470: br i1 %t2326, label %ixok472, label %ixbad473 ixbad473: %t2327 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2327, ptr @.fmt_bounds, ptr @.str10610, i32 1, i32 %t2325) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2327, ptr @.fmt_bounds, ptr @.str10615, i32 1, i32 %t2325) call void @exit(i32 1) unreachable ixok472: @@ -138065,20 +138227,20 @@ ixok472: %t2332 = load ptr, ptr %t2318 %t2333 = getelementptr inbounds %Cmp_Val, ptr %t2332, i32 0, i32 0 %t2334 = load ptr, ptr %t2333 - %t2335 = call ptr @lp_str_concat(ptr @.str10611, ptr %t2334) - %t2336 = call ptr @lp_str_concat(ptr %t2335, ptr @.str10612) + %t2335 = call ptr @lp_str_concat(ptr @.str10616, ptr %t2334) + %t2336 = call ptr @lp_str_concat(ptr %t2335, ptr @.str10617) %t2337 = load ptr, ptr %t2331 %t2338 = getelementptr inbounds %Cmp_Val, ptr %t2337, i32 0, i32 0 %t2339 = load ptr, ptr %t2338 %t2340 = call ptr @lp_str_concat(ptr %t2336, ptr %t2339) - %t2341 = call ptr @lp_str_concat(ptr %t2340, ptr @.str10613) + %t2341 = call ptr @lp_str_concat(ptr %t2340, ptr @.str10618) %t2342 = call ptr @fn_emit_bind(ptr %t2341) - %t2343 = call ptr @fn_val(ptr %t2342, ptr @.str10614) + %t2343 = call ptr @fn_val(ptr %t2342, ptr @.str10619) store ptr %t2343, ptr %retval br label %ret ifend469: %t2344 = load ptr, ptr %t48 - %t2345 = call i32 @lp_str_eq(ptr %t2344, ptr @.str10615) + %t2345 = call i32 @lp_str_eq(ptr %t2344, ptr @.str10620) %t2346 = icmp ne i32 %t2345, 0 br i1 %t2346, label %then474, label %ifend476 then474: @@ -138093,7 +138255,7 @@ then474: br i1 %t2354, label %ixok477, label %ixbad478 ixbad478: %t2355 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2355, ptr @.fmt_bounds, ptr @.str10616, i32 0, i32 %t2353) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2355, ptr @.fmt_bounds, ptr @.str10621, i32 0, i32 %t2353) call void @exit(i32 1) unreachable ixok477: @@ -138112,7 +138274,7 @@ ixok477: br i1 %t2367, label %ixok479, label %ixbad480 ixbad480: %t2368 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2368, ptr @.fmt_bounds, ptr @.str10617, i32 1, i32 %t2366) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2368, ptr @.fmt_bounds, ptr @.str10622, i32 1, i32 %t2366) call void @exit(i32 1) unreachable ixok479: @@ -138123,20 +138285,20 @@ ixok479: %t2373 = load ptr, ptr %t2359 %t2374 = getelementptr inbounds %Cmp_Val, ptr %t2373, i32 0, i32 0 %t2375 = load ptr, ptr %t2374 - %t2376 = call ptr @lp_str_concat(ptr @.str10618, ptr %t2375) - %t2377 = call ptr @lp_str_concat(ptr %t2376, ptr @.str10619) + %t2376 = call ptr @lp_str_concat(ptr @.str10623, ptr %t2375) + %t2377 = call ptr @lp_str_concat(ptr %t2376, ptr @.str10624) %t2378 = load ptr, ptr %t2372 %t2379 = getelementptr inbounds %Cmp_Val, ptr %t2378, i32 0, i32 0 %t2380 = load ptr, ptr %t2379 %t2381 = call ptr @lp_str_concat(ptr %t2377, ptr %t2380) - %t2382 = call ptr @lp_str_concat(ptr %t2381, ptr @.str10620) + %t2382 = call ptr @lp_str_concat(ptr %t2381, ptr @.str10625) %t2383 = call ptr @fn_emit_bind(ptr %t2382) - %t2384 = call ptr @fn_val(ptr %t2383, ptr @.str10621) + %t2384 = call ptr @fn_val(ptr %t2383, ptr @.str10626) store ptr %t2384, ptr %retval br label %ret ifend476: %t2385 = load ptr, ptr %t48 - %t2386 = call i32 @lp_str_eq(ptr %t2385, ptr @.str10622) + %t2386 = call i32 @lp_str_eq(ptr %t2385, ptr @.str10627) %t2387 = icmp ne i32 %t2386, 0 br i1 %t2387, label %then481, label %ifend483 then481: @@ -138151,7 +138313,7 @@ then481: br i1 %t2395, label %ixok484, label %ixbad485 ixbad485: %t2396 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2396, ptr @.fmt_bounds, ptr @.str10623, i32 0, i32 %t2394) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2396, ptr @.fmt_bounds, ptr @.str10628, i32 0, i32 %t2394) call void @exit(i32 1) unreachable ixok484: @@ -138170,7 +138332,7 @@ ixok484: br i1 %t2408, label %ixok486, label %ixbad487 ixbad487: %t2409 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2409, ptr @.fmt_bounds, ptr @.str10624, i32 1, i32 %t2407) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2409, ptr @.fmt_bounds, ptr @.str10629, i32 1, i32 %t2407) call void @exit(i32 1) unreachable ixok486: @@ -138178,23 +138340,23 @@ ixok486: %t2411 = load ptr, ptr %t2410 %t2412 = call ptr @fn_emit_expr(ptr %t2411) store ptr %t2412, ptr %t2413 - call void @fn_emit(ptr @.str10625) + call void @fn_emit(ptr @.str10630) %t2414 = load ptr, ptr %t2400 %t2415 = getelementptr inbounds %Cmp_Val, ptr %t2414, i32 0, i32 0 %t2416 = load ptr, ptr %t2415 call void @fn_emit(ptr %t2416) - call void @fn_emit(ptr @.str10626) + call void @fn_emit(ptr @.str10631) %t2417 = load ptr, ptr %t2413 %t2418 = getelementptr inbounds %Cmp_Val, ptr %t2417, i32 0, i32 0 %t2419 = load ptr, ptr %t2418 call void @fn_emit(ptr %t2419) - call void @fn_emit(ptr @.str10627) - %t2420 = call ptr @fn_val(ptr @.str10628, ptr @.str10629) + call void @fn_emit(ptr @.str10632) + %t2420 = call ptr @fn_val(ptr @.str10633, ptr @.str10634) store ptr %t2420, ptr %retval br label %ret ifend483: %t2421 = load ptr, ptr %t48 - %t2422 = call i32 @lp_str_eq(ptr %t2421, ptr @.str10630) + %t2422 = call i32 @lp_str_eq(ptr %t2421, ptr @.str10635) %t2423 = icmp ne i32 %t2422, 0 br i1 %t2423, label %then488, label %ifend490 then488: @@ -138209,7 +138371,7 @@ then488: br i1 %t2431, label %ixok491, label %ixbad492 ixbad492: %t2432 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2432, ptr @.fmt_bounds, ptr @.str10631, i32 0, i32 %t2430) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2432, ptr @.fmt_bounds, ptr @.str10636, i32 0, i32 %t2430) call void @exit(i32 1) unreachable ixok491: @@ -138228,7 +138390,7 @@ ixok491: br i1 %t2444, label %ixok493, label %ixbad494 ixbad494: %t2445 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2445, ptr @.fmt_bounds, ptr @.str10632, i32 1, i32 %t2443) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2445, ptr @.fmt_bounds, ptr @.str10637, i32 1, i32 %t2443) call void @exit(i32 1) unreachable ixok493: @@ -138236,23 +138398,23 @@ ixok493: %t2447 = load ptr, ptr %t2446 %t2448 = call ptr @fn_emit_expr(ptr %t2447) store ptr %t2448, ptr %t2449 - call void @fn_emit(ptr @.str10633) + call void @fn_emit(ptr @.str10638) %t2450 = load ptr, ptr %t2436 %t2451 = getelementptr inbounds %Cmp_Val, ptr %t2450, i32 0, i32 0 %t2452 = load ptr, ptr %t2451 call void @fn_emit(ptr %t2452) - call void @fn_emit(ptr @.str10634) + call void @fn_emit(ptr @.str10639) %t2453 = load ptr, ptr %t2449 %t2454 = getelementptr inbounds %Cmp_Val, ptr %t2453, i32 0, i32 0 %t2455 = load ptr, ptr %t2454 call void @fn_emit(ptr %t2455) - call void @fn_emit(ptr @.str10635) - %t2456 = call ptr @fn_val(ptr @.str10636, ptr @.str10637) + call void @fn_emit(ptr @.str10640) + %t2456 = call ptr @fn_val(ptr @.str10641, ptr @.str10642) store ptr %t2456, ptr %retval br label %ret ifend490: %t2457 = load ptr, ptr %t48 - %t2458 = call i32 @lp_str_eq(ptr %t2457, ptr @.str10638) + %t2458 = call i32 @lp_str_eq(ptr %t2457, ptr @.str10643) %t2459 = icmp ne i32 %t2458, 0 br i1 %t2459, label %then495, label %ifend497 then495: @@ -138267,7 +138429,7 @@ then495: br i1 %t2467, label %ixok498, label %ixbad499 ixbad499: %t2468 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2468, ptr @.fmt_bounds, ptr @.str10639, i32 0, i32 %t2466) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2468, ptr @.fmt_bounds, ptr @.str10644, i32 0, i32 %t2466) call void @exit(i32 1) unreachable ixok498: @@ -138278,25 +138440,25 @@ ixok498: %t2473 = load ptr, ptr %t2472 %t2474 = getelementptr inbounds %Cmp_Val, ptr %t2473, i32 0, i32 0 %t2475 = load ptr, ptr %t2474 - %t2476 = call ptr @lp_str_concat(ptr @.str10640, ptr %t2475) - %t2477 = call ptr @lp_str_concat(ptr %t2476, ptr @.str10641) + %t2476 = call ptr @lp_str_concat(ptr @.str10645, ptr %t2475) + %t2477 = call ptr @lp_str_concat(ptr %t2476, ptr @.str10646) %t2478 = call ptr @fn_emit_bind(ptr %t2477) - %t2479 = call ptr @fn_val(ptr %t2478, ptr @.str10642) + %t2479 = call ptr @fn_val(ptr %t2478, ptr @.str10647) store ptr %t2479, ptr %retval br label %ret ifend497: %t2480 = load ptr, ptr %t48 - %t2481 = call i32 @lp_str_eq(ptr %t2480, ptr @.str10643) + %t2481 = call i32 @lp_str_eq(ptr %t2480, ptr @.str10648) %t2482 = icmp ne i32 %t2481, 0 br i1 %t2482, label %then500, label %ifend502 then500: - %t2483 = call ptr @fn_emit_bind(ptr @.str10644) - %t2484 = call ptr @fn_val(ptr %t2483, ptr @.str10645) + %t2483 = call ptr @fn_emit_bind(ptr @.str10649) + %t2484 = call ptr @fn_val(ptr %t2483, ptr @.str10650) store ptr %t2484, ptr %retval br label %ret ifend502: %t2485 = load ptr, ptr %t48 - %t2486 = call i32 @lp_str_eq(ptr %t2485, ptr @.str10646) + %t2486 = call i32 @lp_str_eq(ptr %t2485, ptr @.str10651) %t2487 = icmp ne i32 %t2486, 0 br i1 %t2487, label %then503, label %ifend505 then503: @@ -138311,7 +138473,7 @@ then503: br i1 %t2495, label %ixok506, label %ixbad507 ixbad507: %t2496 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2496, ptr @.fmt_bounds, ptr @.str10647, i32 0, i32 %t2494) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2496, ptr @.fmt_bounds, ptr @.str10652, i32 0, i32 %t2494) call void @exit(i32 1) unreachable ixok506: @@ -138322,15 +138484,15 @@ ixok506: %t2501 = load ptr, ptr %t2500 %t2502 = getelementptr inbounds %Cmp_Val, ptr %t2501, i32 0, i32 0 %t2503 = load ptr, ptr %t2502 - %t2504 = call ptr @lp_str_concat(ptr @.str10648, ptr %t2503) - %t2505 = call ptr @lp_str_concat(ptr %t2504, ptr @.str10649) + %t2504 = call ptr @lp_str_concat(ptr @.str10653, ptr %t2503) + %t2505 = call ptr @lp_str_concat(ptr %t2504, ptr @.str10654) %t2506 = call ptr @fn_emit_bind(ptr %t2505) - %t2507 = call ptr @fn_val(ptr %t2506, ptr @.str10650) + %t2507 = call ptr @fn_val(ptr %t2506, ptr @.str10655) store ptr %t2507, ptr %retval br label %ret ifend505: %t2508 = load ptr, ptr %t48 - %t2509 = call i32 @lp_str_eq(ptr %t2508, ptr @.str10651) + %t2509 = call i32 @lp_str_eq(ptr %t2508, ptr @.str10656) %t2510 = icmp ne i32 %t2509, 0 br i1 %t2510, label %then508, label %ifend510 then508: @@ -138345,7 +138507,7 @@ then508: br i1 %t2518, label %ixok511, label %ixbad512 ixbad512: %t2519 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2519, ptr @.fmt_bounds, ptr @.str10652, i32 0, i32 %t2517) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2519, ptr @.fmt_bounds, ptr @.str10657, i32 0, i32 %t2517) call void @exit(i32 1) unreachable ixok511: @@ -138356,15 +138518,15 @@ ixok511: %t2524 = load ptr, ptr %t2523 %t2525 = getelementptr inbounds %Cmp_Val, ptr %t2524, i32 0, i32 0 %t2526 = load ptr, ptr %t2525 - %t2527 = call ptr @lp_str_concat(ptr @.str10653, ptr %t2526) - %t2528 = call ptr @lp_str_concat(ptr %t2527, ptr @.str10654) + %t2527 = call ptr @lp_str_concat(ptr @.str10658, ptr %t2526) + %t2528 = call ptr @lp_str_concat(ptr %t2527, ptr @.str10659) %t2529 = call ptr @fn_emit_bind(ptr %t2528) - %t2530 = call ptr @fn_val(ptr %t2529, ptr @.str10655) + %t2530 = call ptr @fn_val(ptr %t2529, ptr @.str10660) store ptr %t2530, ptr %retval br label %ret ifend510: %t2531 = load ptr, ptr %t48 - %t2532 = call i32 @lp_str_eq(ptr %t2531, ptr @.str10656) + %t2532 = call i32 @lp_str_eq(ptr %t2531, ptr @.str10661) %t2533 = icmp ne i32 %t2532, 0 br i1 %t2533, label %then513, label %ifend515 then513: @@ -138379,7 +138541,7 @@ then513: br i1 %t2541, label %ixok516, label %ixbad517 ixbad517: %t2542 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2542, ptr @.fmt_bounds, ptr @.str10657, i32 0, i32 %t2540) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2542, ptr @.fmt_bounds, ptr @.str10662, i32 0, i32 %t2540) call void @exit(i32 1) unreachable ixok516: @@ -138398,7 +138560,7 @@ ixok516: br i1 %t2554, label %ixok518, label %ixbad519 ixbad519: %t2555 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2555, ptr @.fmt_bounds, ptr @.str10658, i32 1, i32 %t2553) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2555, ptr @.fmt_bounds, ptr @.str10663, i32 1, i32 %t2553) call void @exit(i32 1) unreachable ixok518: @@ -138409,20 +138571,20 @@ ixok518: %t2560 = load ptr, ptr %t2546 %t2561 = getelementptr inbounds %Cmp_Val, ptr %t2560, i32 0, i32 0 %t2562 = load ptr, ptr %t2561 - %t2563 = call ptr @lp_str_concat(ptr @.str10659, ptr %t2562) - %t2564 = call ptr @lp_str_concat(ptr %t2563, ptr @.str10660) + %t2563 = call ptr @lp_str_concat(ptr @.str10664, ptr %t2562) + %t2564 = call ptr @lp_str_concat(ptr %t2563, ptr @.str10665) %t2565 = load ptr, ptr %t2559 %t2566 = getelementptr inbounds %Cmp_Val, ptr %t2565, i32 0, i32 0 %t2567 = load ptr, ptr %t2566 %t2568 = call ptr @lp_str_concat(ptr %t2564, ptr %t2567) - %t2569 = call ptr @lp_str_concat(ptr %t2568, ptr @.str10661) + %t2569 = call ptr @lp_str_concat(ptr %t2568, ptr @.str10666) %t2570 = call ptr @fn_emit_bind(ptr %t2569) - %t2571 = call ptr @fn_val(ptr %t2570, ptr @.str10662) + %t2571 = call ptr @fn_val(ptr %t2570, ptr @.str10667) store ptr %t2571, ptr %retval br label %ret ifend515: %t2572 = load ptr, ptr %t48 - %t2573 = call i32 @lp_str_eq(ptr %t2572, ptr @.str10663) + %t2573 = call i32 @lp_str_eq(ptr %t2572, ptr @.str10668) %t2574 = icmp ne i32 %t2573, 0 br i1 %t2574, label %then520, label %ifend522 then520: @@ -138437,7 +138599,7 @@ then520: br i1 %t2582, label %ixok523, label %ixbad524 ixbad524: %t2583 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2583, ptr @.fmt_bounds, ptr @.str10664, i32 0, i32 %t2581) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2583, ptr @.fmt_bounds, ptr @.str10669, i32 0, i32 %t2581) call void @exit(i32 1) unreachable ixok523: @@ -138456,7 +138618,7 @@ ixok523: br i1 %t2595, label %ixok525, label %ixbad526 ixbad526: %t2596 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2596, ptr @.fmt_bounds, ptr @.str10665, i32 1, i32 %t2594) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2596, ptr @.fmt_bounds, ptr @.str10670, i32 1, i32 %t2594) call void @exit(i32 1) unreachable ixok525: @@ -138467,15 +138629,15 @@ ixok525: %t2601 = load ptr, ptr %t2587 %t2602 = getelementptr inbounds %Cmp_Val, ptr %t2601, i32 0, i32 0 %t2603 = load ptr, ptr %t2602 - %t2604 = call ptr @lp_str_concat(ptr @.str10666, ptr %t2603) - %t2605 = call ptr @lp_str_concat(ptr %t2604, ptr @.str10667) + %t2604 = call ptr @lp_str_concat(ptr @.str10671, ptr %t2603) + %t2605 = call ptr @lp_str_concat(ptr %t2604, ptr @.str10672) %t2606 = load ptr, ptr %t2600 %t2607 = getelementptr inbounds %Cmp_Val, ptr %t2606, i32 0, i32 0 %t2608 = load ptr, ptr %t2607 %t2609 = call ptr @lp_str_concat(ptr %t2605, ptr %t2608) - %t2610 = call ptr @lp_str_concat(ptr %t2609, ptr @.str10668) + %t2610 = call ptr @lp_str_concat(ptr %t2609, ptr @.str10673) %t2611 = call ptr @fn_emit_bind(ptr %t2610) - %t2612 = call ptr @fn_val(ptr %t2611, ptr @.str10669) + %t2612 = call ptr @fn_val(ptr %t2611, ptr @.str10674) store ptr %t2612, ptr %retval br label %ret ifend522: @@ -138574,7 +138736,7 @@ wbody540: br i1 %t2676, label %ixok542, label %ixbad543 ixbad543: %t2677 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2677, ptr @.fmt_bounds, ptr @.str10670, i32 %t2671, i32 %t2675) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2677, ptr @.fmt_bounds, ptr @.str10675, i32 %t2671, i32 %t2675) call void @exit(i32 1) unreachable ixok542: @@ -138593,9 +138755,9 @@ then544: %t2688 = getelementptr inbounds %Cmp_Val, ptr %t2687, i32 0, i32 0 %t2689 = load ptr, ptr %t2688 %t2690 = call ptr @fn_slice_field(ptr %t2689, i32 0) - %t2691 = call ptr @lp_str_concat(ptr @.str10671, ptr %t2690) + %t2691 = call ptr @lp_str_concat(ptr @.str10676, ptr %t2690) %t2692 = call ptr @fn_emit_bind(ptr %t2691) - %t2693 = call ptr @fn_val(ptr %t2692, ptr @.str10672) + %t2693 = call ptr @fn_val(ptr %t2692, ptr @.str10677) store ptr %t2693, ptr %t2681 br label %ifend546 ifend546: @@ -138622,7 +138784,7 @@ then547: br i1 %t2711, label %ixok550, label %ixbad551 ixbad551: %t2712 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2712, ptr @.fmt_bounds, ptr @.str10673, i32 %t2706, i32 %t2710) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2712, ptr @.fmt_bounds, ptr @.str10678, i32 %t2706, i32 %t2710) call void @exit(i32 1) unreachable ixok550: @@ -138636,7 +138798,7 @@ ifend549: %t2717 = icmp ne i32 %t2716, 0 br i1 %t2717, label %then552, label %ifend554 then552: - store ptr @.str10674, ptr %t2697 + store ptr @.str10679, ptr %t2697 br label %ifend554 ifend554: %t2718 = load ptr, ptr %t2650 @@ -138707,10 +138869,10 @@ wend541: %t2764 = load ptr, ptr %t2763 %t2765 = call ptr @fn_llty(ptr %t2764) store ptr %t2765, ptr %t2766 - call void @fn_emit(ptr @.str10675) - store ptr @.str10676, ptr %t2767 + call void @fn_emit(ptr @.str10680) + store ptr @.str10681, ptr %t2767 %t2768 = load ptr, ptr %t2766 - %t2769 = call i32 @lp_str_eq(ptr %t2768, ptr @.str10677) + %t2769 = call i32 @lp_str_eq(ptr %t2768, ptr @.str10682) %t2770 = icmp eq i32 %t2769, 0 %t2771 = zext i1 %t2770 to i32 %t2772 = icmp ne i32 %t2771, 0 @@ -138720,20 +138882,20 @@ then559: store ptr %t2773, ptr %t2767 %t2774 = load ptr, ptr %t2767 call void @fn_emit(ptr %t2774) - call void @fn_emit(ptr @.str10678) + call void @fn_emit(ptr @.str10683) br label %ifend561 ifend561: - call void @fn_emit(ptr @.str10679) + call void @fn_emit(ptr @.str10684) %t2775 = load ptr, ptr %t2766 call void @fn_emit(ptr %t2775) - call void @fn_emit(ptr @.str10680) + call void @fn_emit(ptr @.str10685) %t2776 = load ptr, ptr %t2633 %t2777 = getelementptr inbounds %Cmp_Node, ptr %t2776, i32 0, i32 4 %t2778 = load ptr, ptr %t2777 %t2779 = getelementptr inbounds %Cmp_Node, ptr %t2778, i32 0, i32 1 %t2780 = load ptr, ptr %t2779 call void @fn_emit(ptr %t2780) - call void @fn_emit(ptr @.str10681) + call void @fn_emit(ptr @.str10686) store i32 0, ptr %t2658 br label %wcond562 wcond562: @@ -138752,7 +138914,7 @@ wbody563: %t2791 = icmp ne i32 %t2790, 0 br i1 %t2791, label %then565, label %ifend567 then565: - call void @fn_emit(ptr @.str10682) + call void @fn_emit(ptr @.str10687) br label %ifend567 ifend567: %t2792 = load ptr, ptr %t2657 @@ -138765,7 +138927,7 @@ ifend567: br i1 %t2798, label %ixok568, label %ixbad569 ixbad569: %t2799 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2799, ptr @.fmt_bounds, ptr @.str10683, i32 %t2793, i32 %t2797) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2799, ptr @.fmt_bounds, ptr @.str10688, i32 %t2793, i32 %t2797) call void @exit(i32 1) unreachable ixok568: @@ -138773,7 +138935,7 @@ ixok568: %t2801 = load ptr, ptr %t2800 %t2802 = call ptr @fn_llty(ptr %t2801) call void @fn_emit(ptr %t2802) - call void @fn_emit(ptr @.str10684) + call void @fn_emit(ptr @.str10689) %t2803 = load ptr, ptr %t2650 %t2804 = load i32, ptr %t2658 %t2805 = getelementptr inbounds %LSlice, ptr %t2803, i32 0, i32 0 @@ -138784,7 +138946,7 @@ ixok568: br i1 %t2809, label %ixok570, label %ixbad571 ixbad571: %t2810 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2810, ptr @.fmt_bounds, ptr @.str10685, i32 %t2804, i32 %t2808) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2810, ptr @.fmt_bounds, ptr @.str10690, i32 %t2804, i32 %t2808) call void @exit(i32 1) unreachable ixok570: @@ -138796,7 +138958,7 @@ ixok570: store i32 %t2814, ptr %t2658 br label %wcond562 wend564: - call void @fn_emit(ptr @.str10686) + call void @fn_emit(ptr @.str10691) %t2815 = load ptr, ptr %t2767 %t2816 = load ptr, ptr %t2633 %t2817 = getelementptr inbounds %Cmp_Node, ptr %t2816, i32 0, i32 3 @@ -138835,7 +138997,7 @@ ifend574: br i1 %t2841, label %then575, label %ifend577 then575: %t2842 = load ptr, ptr %t48 - %t2843 = call ptr @lp_str_concat(ptr @.str10687, ptr %t2842) + %t2843 = call ptr @lp_str_concat(ptr @.str10692, ptr %t2842) store ptr %t2843, ptr %t2844 %t2845 = load ptr, ptr %t2844 %t2846 = call ptr @fn_find_fn(ptr %t2845) @@ -138847,7 +139009,7 @@ then575: br i1 %t2850, label %then578, label %ifend580 then578: %t2851 = load ptr, ptr %t48 - %t2852 = call ptr @lp_str_concat(ptr @.str10688, ptr %t2851) + %t2852 = call ptr @lp_str_concat(ptr @.str10693, ptr %t2851) call void @fn_perr(ptr %t2852) br label %ifend580 ifend580: @@ -138935,7 +139097,7 @@ wbody585: br i1 %t2909, label %ixok587, label %ixbad588 ixbad588: %t2910 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2910, ptr @.fmt_bounds, ptr @.str10689, i32 %t2904, i32 %t2908) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2910, ptr @.fmt_bounds, ptr @.str10694, i32 %t2904, i32 %t2908) call void @exit(i32 1) unreachable ixok587: @@ -138966,7 +139128,7 @@ then589: br i1 %t2932, label %ixok592, label %ixbad593 ixbad593: %t2933 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t2933, ptr @.fmt_bounds, ptr @.str10690, i32 %t2927, i32 %t2931) + call i32 (ptr, ptr, ...) @fprintf(ptr %t2933, ptr @.fmt_bounds, ptr @.str10695, i32 %t2927, i32 %t2931) call void @exit(i32 1) unreachable ixok592: @@ -139043,10 +139205,10 @@ wend586: %t2982 = load ptr, ptr %t2981 %t2983 = call ptr @fn_llty(ptr %t2982) store ptr %t2983, ptr %t2984 - call void @fn_emit(ptr @.str10691) - store ptr @.str10692, ptr %t2985 + call void @fn_emit(ptr @.str10696) + store ptr @.str10697, ptr %t2985 %t2986 = load ptr, ptr %t2984 - %t2987 = call i32 @lp_str_eq(ptr %t2986, ptr @.str10693) + %t2987 = call i32 @lp_str_eq(ptr %t2986, ptr @.str10698) %t2988 = icmp eq i32 %t2987, 0 %t2989 = zext i1 %t2988 to i32 %t2990 = icmp ne i32 %t2989, 0 @@ -139056,16 +139218,16 @@ then598: store ptr %t2991, ptr %t2985 %t2992 = load ptr, ptr %t2985 call void @fn_emit(ptr %t2992) - call void @fn_emit(ptr @.str10694) + call void @fn_emit(ptr @.str10699) br label %ifend600 ifend600: - call void @fn_emit(ptr @.str10695) + call void @fn_emit(ptr @.str10700) %t2993 = load ptr, ptr %t2984 call void @fn_emit(ptr %t2993) - call void @fn_emit(ptr @.str10696) + call void @fn_emit(ptr @.str10701) %t2994 = load ptr, ptr %t2837 call void @fn_emit(ptr %t2994) - call void @fn_emit(ptr @.str10697) + call void @fn_emit(ptr @.str10702) store i32 0, ptr %t2891 br label %wcond601 wcond601: @@ -139084,7 +139246,7 @@ wbody602: %t3005 = icmp ne i32 %t3004, 0 br i1 %t3005, label %then604, label %ifend606 then604: - call void @fn_emit(ptr @.str10698) + call void @fn_emit(ptr @.str10703) br label %ifend606 ifend606: %t3006 = load ptr, ptr %t2890 @@ -139097,7 +139259,7 @@ ifend606: br i1 %t3012, label %ixok607, label %ixbad608 ixbad608: %t3013 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t3013, ptr @.fmt_bounds, ptr @.str10699, i32 %t3007, i32 %t3011) + call i32 (ptr, ptr, ...) @fprintf(ptr %t3013, ptr @.fmt_bounds, ptr @.str10704, i32 %t3007, i32 %t3011) call void @exit(i32 1) unreachable ixok607: @@ -139105,7 +139267,7 @@ ixok607: %t3015 = load ptr, ptr %t3014 %t3016 = call ptr @fn_llty(ptr %t3015) call void @fn_emit(ptr %t3016) - call void @fn_emit(ptr @.str10700) + call void @fn_emit(ptr @.str10705) %t3017 = load ptr, ptr %t2883 %t3018 = load i32, ptr %t2891 %t3019 = getelementptr inbounds %LSlice, ptr %t3017, i32 0, i32 0 @@ -139116,7 +139278,7 @@ ixok607: br i1 %t3023, label %ixok609, label %ixbad610 ixbad610: %t3024 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t3024, ptr @.fmt_bounds, ptr @.str10701, i32 %t3018, i32 %t3022) + call i32 (ptr, ptr, ...) @fprintf(ptr %t3024, ptr @.fmt_bounds, ptr @.str10706, i32 %t3018, i32 %t3022) call void @exit(i32 1) unreachable ixok609: @@ -139128,7 +139290,7 @@ ixok609: store i32 %t3028, ptr %t2891 br label %wcond601 wend603: - call void @fn_emit(ptr @.str10702) + call void @fn_emit(ptr @.str10707) %t3029 = load ptr, ptr %t2985 %t3030 = load ptr, ptr %t2835 %t3031 = getelementptr inbounds %Cmp_Node, ptr %t3030, i32 0, i32 3 @@ -139179,7 +139341,7 @@ entry: %t4 = icmp ne i32 %t3, 0 br i1 %t4, label %then0, label %ifend2 then0: - %t5 = call ptr @fn_val(ptr @.str10703, ptr @.str10704) + %t5 = call ptr @fn_val(ptr @.str10708, ptr @.str10709) store ptr %t5, ptr %retval br label %ret ifend2: @@ -139202,7 +139364,7 @@ then6: %t18 = load ptr, ptr %t0 %t19 = getelementptr inbounds %Cmp_Node, ptr %t18, i32 0, i32 1 %t20 = load ptr, ptr %t19 - %t21 = call ptr @fn_val(ptr %t20, ptr @.str10705) + %t21 = call ptr @fn_val(ptr %t20, ptr @.str10710) store ptr %t21, ptr %retval br label %ret ifend8: @@ -139210,7 +139372,7 @@ ifend8: %t23 = getelementptr inbounds %Cmp_Node, ptr %t22, i32 0, i32 2 %t24 = load i32, ptr %t23 %t25 = call ptr @fn_itoa(i32 %t24) - %t26 = call ptr @fn_val(ptr %t25, ptr @.str10706) + %t26 = call ptr @fn_val(ptr %t25, ptr @.str10711) store ptr %t26, ptr %retval br label %ret ifend5: @@ -139240,8 +139402,8 @@ then11: %t43 = load ptr, ptr %t0 %t44 = getelementptr inbounds %Cmp_Node, ptr %t43, i32 0, i32 1 %t45 = load ptr, ptr %t44 - %t46 = call ptr @fn_fp_lit_code(ptr %t45, ptr @.str10707) - %t47 = call ptr @fn_val(ptr %t46, ptr @.str10708) + %t46 = call ptr @fn_fp_lit_code(ptr %t45, ptr @.str10712) + %t47 = call ptr @fn_val(ptr %t46, ptr @.str10713) store ptr %t47, ptr %t48 %t49 = load ptr, ptr %t48 %t50 = getelementptr inbounds %Cmp_Val, ptr %t49, i32 0, i32 2 @@ -139263,7 +139425,7 @@ then14: %t60 = getelementptr inbounds %Cmp_Node, ptr %t59, i32 0, i32 2 %t61 = load i32, ptr %t60 %t62 = call ptr @fn_itoa(i32 %t61) - %t63 = call ptr @fn_val(ptr %t62, ptr @.str10709) + %t63 = call ptr @fn_val(ptr %t62, ptr @.str10714) store ptr %t63, ptr %t64 %t65 = load ptr, ptr %t64 %t66 = getelementptr inbounds %Cmp_Val, ptr %t65, i32 0, i32 2 @@ -139293,7 +139455,7 @@ then17: br i1 %t83, label %ixok20, label %ixbad21 ixbad21: %t84 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str10710, i32 %t78, i32 %t82) + call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str10715, i32 %t78, i32 %t82) call void @exit(i32 1) unreachable ixok20: @@ -139314,7 +139476,7 @@ then22: %t94 = getelementptr inbounds %Cmp_Node, ptr %t93, i32 0, i32 2 %t95 = load i32, ptr %t94 %t96 = call ptr @fn_itoa(i32 %t95) - %t97 = call ptr @fn_val(ptr %t96, ptr @.str10711) + %t97 = call ptr @fn_val(ptr %t96, ptr @.str10716) store ptr %t97, ptr %retval br label %ret ifend24: @@ -139326,7 +139488,7 @@ ifend24: %t103 = icmp ne i32 %t102, 0 br i1 %t103, label %then25, label %ifend27 then25: - %t104 = call ptr @fn_val(ptr @.str10712, ptr @.str10713) + %t104 = call ptr @fn_val(ptr @.str10717, ptr @.str10718) store ptr %t104, ptr %retval br label %ret ifend27: @@ -139340,7 +139502,7 @@ ifend27: then28: %t111 = load ptr, ptr %t0 %t112 = call ptr @fn_emit_spawn(ptr %t111) - %t113 = call ptr @fn_val(ptr %t112, ptr @.str10714) + %t113 = call ptr @fn_val(ptr %t112, ptr @.str10719) store ptr %t113, ptr %retval br label %ret ifend30: @@ -139371,20 +139533,20 @@ then31: %t135 = load ptr, ptr %t124 %t136 = getelementptr inbounds %Cmp_Val, ptr %t135, i32 0, i32 0 %t137 = load ptr, ptr %t136 - %t138 = call ptr @lp_str_concat(ptr @.str10715, ptr %t137) - %t139 = call ptr @lp_str_concat(ptr %t138, ptr @.str10716) + %t138 = call ptr @lp_str_concat(ptr @.str10720, ptr %t137) + %t139 = call ptr @lp_str_concat(ptr %t138, ptr @.str10721) %t140 = load ptr, ptr %t129 %t141 = getelementptr inbounds %Cmp_Val, ptr %t140, i32 0, i32 0 %t142 = load ptr, ptr %t141 %t143 = call ptr @lp_str_concat(ptr %t139, ptr %t142) - %t144 = call ptr @lp_str_concat(ptr %t143, ptr @.str10717) + %t144 = call ptr @lp_str_concat(ptr %t143, ptr @.str10722) %t145 = load ptr, ptr %t134 %t146 = getelementptr inbounds %Cmp_Val, ptr %t145, i32 0, i32 0 %t147 = load ptr, ptr %t146 %t148 = call ptr @lp_str_concat(ptr %t144, ptr %t147) - %t149 = call ptr @lp_str_concat(ptr %t148, ptr @.str10718) + %t149 = call ptr @lp_str_concat(ptr %t148, ptr @.str10723) %t150 = call ptr @fn_emit_bind(ptr %t149) - %t151 = call ptr @fn_val(ptr %t150, ptr @.str10719) + %t151 = call ptr @fn_val(ptr %t150, ptr @.str10724) store ptr %t151, ptr %retval br label %ret ifend33: @@ -139400,7 +139562,7 @@ then34: %t159 = getelementptr inbounds %Cmp_Node, ptr %t158, i32 0, i32 1 %t160 = load ptr, ptr %t159 %t161 = call ptr @fn_emit_str_const(ptr %t160) - %t162 = call ptr @fn_val(ptr %t161, ptr @.str10720) + %t162 = call ptr @fn_val(ptr %t161, ptr @.str10725) store ptr %t162, ptr %retval br label %ret ifend36: @@ -139491,7 +139653,7 @@ then52: br i1 %t222, label %ixok55, label %ixbad56 ixbad56: %t223 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t223, ptr @.fmt_bounds, ptr @.str10721, i32 %t217, i32 %t221) + call i32 (ptr, ptr, ...) @fprintf(ptr %t223, ptr @.fmt_bounds, ptr @.str10726, i32 %t217, i32 %t221) call void @exit(i32 1) unreachable ixok55: @@ -139507,7 +139669,7 @@ ixok55: br i1 %t232, label %ixok57, label %ixbad58 ixbad58: %t233 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t233, ptr @.fmt_bounds, ptr @.str10722, i32 %t227, i32 %t231) + call i32 (ptr, ptr, ...) @fprintf(ptr %t233, ptr @.fmt_bounds, ptr @.str10727, i32 %t227, i32 %t231) call void @exit(i32 1) unreachable ixok57: @@ -139560,7 +139722,7 @@ then65: %t270 = load ptr, ptr %t0 %t271 = getelementptr inbounds %Cmp_Node, ptr %t270, i32 0, i32 1 %t272 = load ptr, ptr %t271 - %t273 = call ptr @lp_str_concat(ptr @.str10723, ptr %t272) + %t273 = call ptr @lp_str_concat(ptr @.str10728, ptr %t272) %t274 = call ptr @fn_to_fp(ptr %t266, ptr %t269, ptr %t273) %t275 = load ptr, ptr %t241 %t276 = getelementptr inbounds %Cmp_Node, ptr %t275, i32 0, i32 3 @@ -139577,8 +139739,8 @@ ifend64: %t281 = getelementptr inbounds %Cmp_Node, ptr %t280, i32 0, i32 3 %t282 = load ptr, ptr %t281 %t283 = call ptr @fn_llty(ptr %t282) - %t284 = call ptr @lp_str_concat(ptr @.str10724, ptr %t283) - %t285 = call ptr @lp_str_concat(ptr %t284, ptr @.str10725) + %t284 = call ptr @lp_str_concat(ptr @.str10729, ptr %t283) + %t285 = call ptr @lp_str_concat(ptr %t284, ptr @.str10730) %t286 = load ptr, ptr %t0 %t287 = getelementptr inbounds %Cmp_Node, ptr %t286, i32 0, i32 1 %t288 = load ptr, ptr %t287 @@ -139605,7 +139767,7 @@ then68: %t304 = load ptr, ptr %t303 %t305 = call i32 @fn_ui_index_of(ptr %t304) %t306 = call ptr @fn_itoa(i32 %t305) - %t307 = call ptr @fn_val(ptr %t306, ptr @.str10726) + %t307 = call ptr @fn_val(ptr %t306, ptr @.str10731) store ptr %t307, ptr %retval br label %ret ifend70: @@ -139638,7 +139800,7 @@ ifend73: %t326 = load ptr, ptr %t0 %t327 = getelementptr inbounds %Cmp_Node, ptr %t326, i32 0, i32 1 %t328 = load ptr, ptr %t327 - %t329 = call ptr @lp_str_concat(ptr @.str10727, ptr %t328) + %t329 = call ptr @lp_str_concat(ptr @.str10732, ptr %t328) call void @fn_perr(ptr %t329) br label %ifend51 ifend51: @@ -139665,7 +139827,7 @@ then77: %t346 = load ptr, ptr %t345 %t347 = getelementptr inbounds %Cmp_Node, ptr %t346, i32 0, i32 1 %t348 = load ptr, ptr %t347 - %t349 = call i32 @lp_str_eq(ptr %t348, ptr @.str10728) + %t349 = call i32 @lp_str_eq(ptr %t348, ptr @.str10733) %t350 = icmp ne i32 %t349, 0 br i1 %t350, label %then80, label %ifend82 then80: @@ -139683,13 +139845,13 @@ then83: %t360 = load ptr, ptr %t0 %t361 = getelementptr inbounds %Cmp_Node, ptr %t360, i32 0, i32 1 %t362 = load ptr, ptr %t361 - %t363 = call ptr @lp_str_concat(ptr @.str10729, ptr %t362) + %t363 = call ptr @lp_str_concat(ptr @.str10734, ptr %t362) call void @fn_perr(ptr %t363) br label %ifend85 ifend85: %t364 = load i32, ptr %t355 %t365 = call ptr @fn_itoa(i32 %t364) - %t366 = call ptr @fn_val(ptr %t365, ptr @.str10730) + %t366 = call ptr @fn_val(ptr %t365, ptr @.str10735) store ptr %t366, ptr %retval br label %ret ifend82: @@ -139698,7 +139860,7 @@ ifend82: %t369 = load ptr, ptr %t368 %t370 = getelementptr inbounds %Cmp_Node, ptr %t369, i32 0, i32 1 %t371 = load ptr, ptr %t370 - %t372 = call i32 @lp_str_eq(ptr %t371, ptr @.str10731) + %t372 = call i32 @lp_str_eq(ptr %t371, ptr @.str10736) %t373 = icmp ne i32 %t372, 0 br i1 %t373, label %then86, label %ifend88 then86: @@ -139716,13 +139878,13 @@ then89: %t383 = load ptr, ptr %t0 %t384 = getelementptr inbounds %Cmp_Node, ptr %t383, i32 0, i32 1 %t385 = load ptr, ptr %t384 - %t386 = call ptr @lp_str_concat(ptr @.str10732, ptr %t385) + %t386 = call ptr @lp_str_concat(ptr @.str10737, ptr %t385) call void @fn_perr(ptr %t386) br label %ifend91 ifend91: %t387 = load i32, ptr %t378 %t388 = call ptr @fn_itoa(i32 %t387) - %t389 = call ptr @fn_val(ptr %t388, ptr @.str10733) + %t389 = call ptr @fn_val(ptr %t388, ptr @.str10738) store ptr %t389, ptr %retval br label %ret ifend88: @@ -139744,7 +139906,7 @@ ifend88: then92: %t404 = load i32, ptr %t399 %t405 = call ptr @fn_itoa(i32 %t404) - %t406 = call ptr @fn_val(ptr %t405, ptr @.str10734) + %t406 = call ptr @fn_val(ptr %t405, ptr @.str10739) store ptr %t406, ptr %retval br label %ret ifend94: @@ -139762,7 +139924,7 @@ ifend79: br i1 %t415, label %then95, label %ifend97 then95: %t417 = load ptr, ptr %t411 - %t418 = call i32 @lp_str_eq(ptr %t417, ptr @.str10735) + %t418 = call i32 @lp_str_eq(ptr %t417, ptr @.str10740) %t419 = icmp ne i32 %t418, 0 %t420 = zext i1 %t419 to i32 store i32 %t420, ptr %t416 @@ -139771,7 +139933,7 @@ sc98: %t422 = load ptr, ptr %t0 %t423 = getelementptr inbounds %Cmp_Node, ptr %t422, i32 0, i32 1 %t424 = load ptr, ptr %t423 - %t425 = call i32 @lp_str_eq(ptr %t424, ptr @.str10736) + %t425 = call i32 @lp_str_eq(ptr %t424, ptr @.str10741) %t426 = icmp ne i32 %t425, 0 %t427 = zext i1 %t426 to i32 store i32 %t427, ptr %t421 @@ -139780,7 +139942,7 @@ sc100: %t428 = load ptr, ptr %t0 %t429 = getelementptr inbounds %Cmp_Node, ptr %t428, i32 0, i32 1 %t430 = load ptr, ptr %t429 - %t431 = call i32 @lp_str_eq(ptr %t430, ptr @.str10737) + %t431 = call i32 @lp_str_eq(ptr %t430, ptr @.str10742) %t432 = icmp ne i32 %t431, 0 %t433 = zext i1 %t432 to i32 store i32 %t433, ptr %t421 @@ -139804,7 +139966,7 @@ then102: %t444 = load ptr, ptr %t0 %t445 = getelementptr inbounds %Cmp_Node, ptr %t444, i32 0, i32 1 %t446 = load ptr, ptr %t445 - %t447 = call i32 @lp_str_eq(ptr %t446, ptr @.str10738) + %t447 = call i32 @lp_str_eq(ptr %t446, ptr @.str10743) %t448 = icmp ne i32 %t447, 0 br i1 %t448, label %then105, label %ifend107 then105: @@ -139812,7 +139974,7 @@ then105: %t450 = getelementptr inbounds %Cmp_Val, ptr %t449, i32 0, i32 0 %t451 = load ptr, ptr %t450 %t452 = call ptr @fn_vec_x(ptr %t451) - %t453 = call ptr @fn_val(ptr %t452, ptr @.str10739) + %t453 = call ptr @fn_val(ptr %t452, ptr @.str10744) store ptr %t453, ptr %retval br label %ret ifend107: @@ -139820,7 +139982,7 @@ ifend107: %t455 = getelementptr inbounds %Cmp_Val, ptr %t454, i32 0, i32 0 %t456 = load ptr, ptr %t455 %t457 = call ptr @fn_vec_y(ptr %t456) - %t458 = call ptr @fn_val(ptr %t457, ptr @.str10740) + %t458 = call ptr @fn_val(ptr %t457, ptr @.str10745) store ptr %t458, ptr %retval br label %ret ifend104: @@ -139868,19 +140030,19 @@ then111: %t488 = call ptr @fn_emit_index_addr(ptr %t487) store ptr %t488, ptr %t489 %t490 = load ptr, ptr @g_g_addr_ty - %t491 = call i32 @lp_str_eq(ptr %t490, ptr @.str10741) + %t491 = call i32 @lp_str_eq(ptr %t490, ptr @.str10746) %t492 = icmp ne i32 %t491, 0 br i1 %t492, label %then114, label %ifend116 then114: %t493 = load ptr, ptr %t489 - %t494 = call ptr @lp_str_concat(ptr @.str10742, ptr %t493) + %t494 = call ptr @lp_str_concat(ptr @.str10747, ptr %t493) %t495 = call ptr @fn_emit_bind(ptr %t494) store ptr %t495, ptr %t496 %t497 = load ptr, ptr %t496 - %t498 = call ptr @lp_str_concat(ptr @.str10743, ptr %t497) - %t499 = call ptr @lp_str_concat(ptr %t498, ptr @.str10744) + %t498 = call ptr @lp_str_concat(ptr @.str10748, ptr %t497) + %t499 = call ptr @lp_str_concat(ptr %t498, ptr @.str10749) %t500 = call ptr @fn_emit_bind(ptr %t499) - %t501 = call ptr @fn_val(ptr %t500, ptr @.str10745) + %t501 = call ptr @fn_val(ptr %t500, ptr @.str10750) store ptr %t501, ptr %retval br label %ret ifend116: @@ -139965,15 +140127,15 @@ then132: %t553 = load ptr, ptr %t0 %t554 = getelementptr inbounds %Cmp_Node, ptr %t553, i32 0, i32 1 %t555 = load ptr, ptr %t554 - %t556 = call i32 @lp_str_eq(ptr %t555, ptr @.str10746) + %t556 = call i32 @lp_str_eq(ptr %t555, ptr @.str10751) %t557 = icmp ne i32 %t556, 0 br i1 %t557, label %then135, label %ifend137 then135: %t558 = load ptr, ptr %t547 %t559 = getelementptr inbounds %Cmp_Val, ptr %t558, i32 0, i32 1 %t560 = load ptr, ptr %t559 - %t561 = call ptr @lp_str_concat(ptr @.str10747, ptr %t560) - %t562 = call ptr @lp_str_concat(ptr %t561, ptr @.str10748) + %t561 = call ptr @lp_str_concat(ptr @.str10752, ptr %t560) + %t562 = call ptr @lp_str_concat(ptr %t561, ptr @.str10753) %t563 = load ptr, ptr %t547 %t564 = getelementptr inbounds %Cmp_Val, ptr %t563, i32 0, i32 0 %t565 = load ptr, ptr %t564 @@ -140005,8 +140167,8 @@ ifend137: %t583 = load ptr, ptr %t0 %t584 = getelementptr inbounds %Cmp_Node, ptr %t583, i32 0, i32 1 %t585 = load ptr, ptr %t584 - %t586 = call ptr @lp_str_concat(ptr @.str10749, ptr %t585) - %t587 = call ptr @lp_str_concat(ptr %t586, ptr @.str10750) + %t586 = call ptr @lp_str_concat(ptr @.str10754, ptr %t585) + %t587 = call ptr @lp_str_concat(ptr %t586, ptr @.str10755) %t588 = load ptr, ptr %t547 %t589 = getelementptr inbounds %Cmp_Val, ptr %t588, i32 0, i32 1 %t590 = load ptr, ptr %t589 @@ -140017,7 +140179,7 @@ ifend134: %t593 = load ptr, ptr %t0 %t594 = getelementptr inbounds %Cmp_Node, ptr %t593, i32 0, i32 1 %t595 = load ptr, ptr %t594 - %t596 = call i32 @lp_str_eq(ptr %t595, ptr @.str10751) + %t596 = call i32 @lp_str_eq(ptr %t595, ptr @.str10756) %t597 = icmp ne i32 %t596, 0 %t598 = zext i1 %t597 to i32 store i32 %t598, ptr %t592 @@ -140040,9 +140202,9 @@ then143: %t608 = load ptr, ptr %t547 %t609 = getelementptr inbounds %Cmp_Val, ptr %t608, i32 0, i32 0 %t610 = load ptr, ptr %t609 - %t611 = call ptr @lp_str_concat(ptr @.str10752, ptr %t610) + %t611 = call ptr @lp_str_concat(ptr @.str10757, ptr %t610) %t612 = call ptr @fn_emit_bind(ptr %t611) - %t613 = call ptr @fn_val(ptr %t612, ptr @.str10753) + %t613 = call ptr @fn_val(ptr %t612, ptr @.str10758) store ptr %t613, ptr %t614 %t615 = load ptr, ptr %t614 %t616 = getelementptr inbounds %Cmp_Val, ptr %t615, i32 0, i32 2 @@ -140056,40 +140218,40 @@ ifend145: %t620 = getelementptr inbounds %Cmp_Val, ptr %t619, i32 0, i32 1 %t621 = load ptr, ptr %t620 %t622 = call ptr @fn_llty(ptr %t621) - %t623 = call i32 @lp_str_eq(ptr %t622, ptr @.str10754) + %t623 = call i32 @lp_str_eq(ptr %t622, ptr @.str10759) %t624 = icmp ne i32 %t623, 0 br i1 %t624, label %then146, label %ifend148 then146: %t625 = load ptr, ptr %t0 %t626 = getelementptr inbounds %Cmp_Node, ptr %t625, i32 0, i32 1 %t627 = load ptr, ptr %t626 - %t628 = call i32 @lp_str_eq(ptr %t627, ptr @.str10755) + %t628 = call i32 @lp_str_eq(ptr %t627, ptr @.str10760) %t629 = icmp ne i32 %t628, 0 br i1 %t629, label %then149, label %ifend151 then149: %t630 = load ptr, ptr %t547 %t631 = getelementptr inbounds %Cmp_Val, ptr %t630, i32 0, i32 0 %t632 = load ptr, ptr %t631 - %t633 = call ptr @lp_str_concat(ptr @.str10756, ptr %t632) + %t633 = call ptr @lp_str_concat(ptr @.str10761, ptr %t632) %t634 = call ptr @fn_emit_bind(ptr %t633) - %t635 = call ptr @fn_val(ptr %t634, ptr @.str10757) + %t635 = call ptr @fn_val(ptr %t634, ptr @.str10762) store ptr %t635, ptr %retval br label %ret ifend151: %t636 = load ptr, ptr %t0 %t637 = getelementptr inbounds %Cmp_Node, ptr %t636, i32 0, i32 1 %t638 = load ptr, ptr %t637 - %t639 = call i32 @lp_str_eq(ptr %t638, ptr @.str10758) + %t639 = call i32 @lp_str_eq(ptr %t638, ptr @.str10763) %t640 = icmp ne i32 %t639, 0 br i1 %t640, label %then152, label %ifend154 then152: %t641 = load ptr, ptr %t547 %t642 = getelementptr inbounds %Cmp_Val, ptr %t641, i32 0, i32 0 %t643 = load ptr, ptr %t642 - %t644 = call ptr @lp_str_concat(ptr @.str10759, ptr %t643) - %t645 = call ptr @lp_str_concat(ptr %t644, ptr @.str10760) + %t644 = call ptr @lp_str_concat(ptr @.str10764, ptr %t643) + %t645 = call ptr @lp_str_concat(ptr %t644, ptr @.str10765) %t646 = call ptr @fn_emit_bind(ptr %t645) - %t647 = call ptr @fn_val(ptr %t646, ptr @.str10761) + %t647 = call ptr @fn_val(ptr %t646, ptr @.str10766) store ptr %t647, ptr %retval br label %ret ifend154: @@ -140098,14 +140260,14 @@ ifend148: %t648 = load ptr, ptr %t0 %t649 = getelementptr inbounds %Cmp_Node, ptr %t648, i32 0, i32 1 %t650 = load ptr, ptr %t649 - %t651 = call i32 @lp_str_eq(ptr %t650, ptr @.str10762) + %t651 = call i32 @lp_str_eq(ptr %t650, ptr @.str10767) %t652 = icmp ne i32 %t651, 0 br i1 %t652, label %then155, label %ifend157 then155: %t653 = load ptr, ptr %t547 %t654 = getelementptr inbounds %Cmp_Val, ptr %t653, i32 0, i32 0 %t655 = load ptr, ptr %t654 - %t656 = call ptr @lp_str_concat(ptr @.str10763, ptr %t655) + %t656 = call ptr @lp_str_concat(ptr @.str10768, ptr %t655) %t657 = call ptr @fn_emit_bind(ptr %t656) %t658 = load ptr, ptr %t547 %t659 = getelementptr inbounds %Cmp_Val, ptr %t658, i32 0, i32 1 @@ -140118,15 +140280,15 @@ ifend157: %t663 = load ptr, ptr %t0 %t664 = getelementptr inbounds %Cmp_Node, ptr %t663, i32 0, i32 1 %t665 = load ptr, ptr %t664 - %t666 = call i32 @lp_str_eq(ptr %t665, ptr @.str10764) + %t666 = call i32 @lp_str_eq(ptr %t665, ptr @.str10769) %t667 = icmp ne i32 %t666, 0 br i1 %t667, label %then158, label %ifend160 then158: %t668 = load ptr, ptr %t547 %t669 = getelementptr inbounds %Cmp_Val, ptr %t668, i32 0, i32 0 %t670 = load ptr, ptr %t669 - %t671 = call ptr @lp_str_concat(ptr @.str10765, ptr %t670) - %t672 = call ptr @lp_str_concat(ptr %t671, ptr @.str10766) + %t671 = call ptr @lp_str_concat(ptr @.str10770, ptr %t670) + %t672 = call ptr @lp_str_concat(ptr %t671, ptr @.str10771) %t673 = call ptr @fn_emit_bind(ptr %t672) %t674 = load ptr, ptr %t547 %t675 = getelementptr inbounds %Cmp_Val, ptr %t674, i32 0, i32 1 @@ -140139,15 +140301,15 @@ ifend160: %t679 = load ptr, ptr %t547 %t680 = getelementptr inbounds %Cmp_Val, ptr %t679, i32 0, i32 0 %t681 = load ptr, ptr %t680 - %t682 = call ptr @lp_str_concat(ptr @.str10767, ptr %t681) - %t683 = call ptr @lp_str_concat(ptr %t682, ptr @.str10768) + %t682 = call ptr @lp_str_concat(ptr @.str10772, ptr %t681) + %t683 = call ptr @lp_str_concat(ptr %t682, ptr @.str10773) %t684 = call ptr @fn_emit_bind(ptr %t683) store ptr %t684, ptr %t685 %t686 = load ptr, ptr %t685 - %t687 = call ptr @lp_str_concat(ptr @.str10769, ptr %t686) - %t688 = call ptr @lp_str_concat(ptr %t687, ptr @.str10770) + %t687 = call ptr @lp_str_concat(ptr @.str10774, ptr %t686) + %t688 = call ptr @lp_str_concat(ptr %t687, ptr @.str10775) %t689 = call ptr @fn_emit_bind(ptr %t688) - %t690 = call ptr @fn_val(ptr %t689, ptr @.str10771) + %t690 = call ptr @fn_val(ptr %t689, ptr @.str10776) store ptr %t690, ptr %retval br label %ret ifend131: @@ -140155,10 +140317,10 @@ ifend131: %t692 = getelementptr inbounds %Cmp_Node, ptr %t691, i32 0, i32 0 %t693 = load i32, ptr %t692 %t694 = call ptr @fn_itoa(i32 %t693) - %t695 = call ptr @lp_str_concat(ptr @.str10772, ptr %t694) - %t696 = call ptr @lp_str_concat(ptr %t695, ptr @.str10773) + %t695 = call ptr @lp_str_concat(ptr @.str10777, ptr %t694) + %t696 = call ptr @lp_str_concat(ptr %t695, ptr @.str10778) call void @fn_perr(ptr %t696) - %t697 = call ptr @fn_val(ptr @.str10774, ptr @.str10775) + %t697 = call ptr @fn_val(ptr @.str10779, ptr @.str10780) store ptr %t697, ptr %retval br label %ret ret: @@ -140255,7 +140417,7 @@ entry: %t6 = alloca i32 %t44 = alloca ptr store ptr %arg_d, ptr %t0 - store ptr @.str10776, ptr %t1 + store ptr @.str10781, ptr %t1 %t2 = load ptr, ptr %t0 %t3 = call i32 @fn_state_lead(ptr %t2) store i32 %t3, ptr %t4 @@ -140282,7 +140444,7 @@ wbody1: br i1 %t20, label %then3, label %ifend5 then3: %t21 = load ptr, ptr %t1 - %t22 = call ptr @lp_str_concat(ptr %t21, ptr @.str10777) + %t22 = call ptr @lp_str_concat(ptr %t21, ptr @.str10782) store ptr %t22, ptr %t1 br label %ifend5 ifend5: @@ -140299,7 +140461,7 @@ ifend5: br i1 %t32, label %ixok6, label %ixbad7 ixbad7: %t33 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str10778, i32 %t27, i32 %t31) + call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str10783, i32 %t27, i32 %t31) call void @exit(i32 1) unreachable ixok6: @@ -140324,11 +140486,11 @@ wend2: %t48 = icmp ne i32 %t47, 0 br i1 %t48, label %then8, label %ifend10 then8: - store ptr @.str10779, ptr %t44 + store ptr @.str10784, ptr %t44 br label %ifend10 ifend10: %t49 = load ptr, ptr %t1 - %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str10780) + %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str10785) %t51 = load ptr, ptr %t44 %t52 = call ptr @lp_str_concat(ptr %t50, ptr %t51) store ptr %t52, ptr %retval @@ -140593,7 +140755,7 @@ ifend8: store i32 %t43, ptr %t2 br label %wcond0 wend2: - store ptr @.str10781, ptr %retval + store ptr @.str10786, ptr %retval br label %ret ret: %t44 = load ptr, ptr %retval @@ -140620,8 +140782,8 @@ then0: %t10 = load ptr, ptr %t0 %t11 = getelementptr inbounds %Cmp_Node, ptr %t10, i32 0, i32 1 %t12 = load ptr, ptr %t11 - %t13 = call ptr @lp_str_concat(ptr @.str10782, ptr %t12) - %t14 = call ptr @lp_str_concat(ptr %t13, ptr @.str10783) + %t13 = call ptr @lp_str_concat(ptr @.str10787, ptr %t12) + %t14 = call ptr @lp_str_concat(ptr %t13, ptr @.str10788) %t15 = load ptr, ptr %t0 %t16 = getelementptr inbounds %Cmp_Node, ptr %t15, i32 0, i32 1 %t17 = load ptr, ptr %t16 @@ -140652,7 +140814,7 @@ ifend5: %t33 = load ptr, ptr %t0 %t34 = getelementptr inbounds %Cmp_Node, ptr %t33, i32 0, i32 1 %t35 = load ptr, ptr %t34 - %t36 = call ptr @lp_str_concat(ptr @.str10784, ptr %t35) + %t36 = call ptr @lp_str_concat(ptr @.str10789, ptr %t35) %t37 = load ptr, ptr %t5 %t38 = call ptr @fn_fn_sig_of(ptr %t37) %t39 = call ptr @fn_val(ptr %t36, ptr %t38) @@ -140699,7 +140861,7 @@ sc3: br i1 %t22, label %ixok5, label %ixbad6 ixbad6: %t23 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str10785, i32 %t17, i32 %t21) + call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str10790, i32 %t17, i32 %t21) call void @exit(i32 1) unreachable ixok5: @@ -140732,7 +140894,7 @@ sc7: br i1 %t43, label %ixok9, label %ixbad10 ixbad10: %t44 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str10786, i32 %t38, i32 %t42) + call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str10791, i32 %t38, i32 %t42) call void @exit(i32 1) unreachable ixok9: @@ -140780,8 +140942,8 @@ entry: %t1 = load ptr, ptr %t0 %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 1 %t3 = load ptr, ptr %t2 - %t4 = call ptr @lp_str_concat(ptr @.str10787, ptr %t3) - %t5 = call ptr @lp_str_concat(ptr %t4, ptr @.str10788) + %t4 = call ptr @lp_str_concat(ptr @.str10792, ptr %t3) + %t5 = call ptr @lp_str_concat(ptr %t4, ptr @.str10793) store ptr %t5, ptr %t6 store i32 0, ptr %t7 br label %wcond0 @@ -140805,7 +140967,7 @@ wbody1: br i1 %t21, label %ixok3, label %ixbad4 ixbad4: %t22 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str10789, i32 %t16, i32 %t20) + call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str10794, i32 %t16, i32 %t20) call void @exit(i32 1) unreachable ixok3: @@ -140860,7 +141022,7 @@ put9: %t55 = load ptr, ptr %t0 %t56 = call i32 @fn_state_lead(ptr %t55) store i32 %t56, ptr %t57 - store ptr @.str10790, ptr %t58 + store ptr @.str10795, ptr %t58 %t59 = load ptr, ptr %t0 %t60 = getelementptr inbounds %Cmp_Node, ptr %t59, i32 0, i32 3 %t61 = load ptr, ptr %t60 @@ -140876,9 +141038,9 @@ then10: store ptr %t68, ptr %t58 br label %ifend12 ifend12: - store ptr @.str10791, ptr %t69 - store ptr @.str10792, ptr %t70 - store ptr @.str10793, ptr %t71 + store ptr @.str10796, ptr %t69 + store ptr @.str10797, ptr %t70 + store ptr @.str10798, ptr %t71 store i32 0, ptr %t7 br label %wcond13 wcond13: @@ -140905,7 +141067,7 @@ wbody14: br i1 %t89, label %ixok16, label %ixbad17 ixbad17: %t90 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t90, ptr @.fmt_bounds, ptr @.str10794, i32 %t84, i32 %t88) + call i32 (ptr, ptr, ...) @fprintf(ptr %t90, ptr @.fmt_bounds, ptr @.str10799, i32 %t84, i32 %t88) call void @exit(i32 1) unreachable ixok16: @@ -140922,13 +141084,13 @@ then18: %t99 = load ptr, ptr %t71 %t100 = load i32, ptr %t7 %t101 = call ptr @fn_itoa(i32 %t100) - %t102 = call ptr @lp_str_concat(ptr @.str10795, ptr %t101) - %t103 = call ptr @lp_str_concat(ptr %t102, ptr @.str10796) + %t102 = call ptr @lp_str_concat(ptr @.str10800, ptr %t101) + %t103 = call ptr @lp_str_concat(ptr %t102, ptr @.str10801) %t104 = load ptr, ptr %t93 %t105 = getelementptr inbounds %Cmp_Node, ptr %t104, i32 0, i32 3 %t106 = load ptr, ptr %t105 %t107 = call ptr @lp_str_concat(ptr %t103, ptr %t106) - %t108 = call ptr @lp_str_concat(ptr %t107, ptr @.str10797) + %t108 = call ptr @lp_str_concat(ptr %t107, ptr @.str10802) %t109 = call ptr @lp_str_concat(ptr %t99, ptr %t108) store ptr %t109, ptr %t71 %t110 = load ptr, ptr %t70 @@ -140940,14 +141102,14 @@ then18: br i1 %t115, label %then21, label %ifend23 then21: %t116 = load ptr, ptr %t70 - %t117 = call ptr @lp_str_concat(ptr %t116, ptr @.str10798) + %t117 = call ptr @lp_str_concat(ptr %t116, ptr @.str10803) store ptr %t117, ptr %t70 br label %ifend23 ifend23: %t118 = load ptr, ptr %t70 %t119 = load i32, ptr %t7 %t120 = call ptr @fn_itoa(i32 %t119) - %t121 = call ptr @lp_str_concat(ptr @.str10799, ptr %t120) + %t121 = call ptr @lp_str_concat(ptr @.str10804, ptr %t120) %t122 = call ptr @lp_str_concat(ptr %t118, ptr %t121) store ptr %t122, ptr %t70 br label %ifend20 @@ -140961,7 +141123,7 @@ else19: br i1 %t128, label %then24, label %ifend26 then24: %t129 = load ptr, ptr %t69 - %t130 = call ptr @lp_str_concat(ptr %t129, ptr @.str10800) + %t130 = call ptr @lp_str_concat(ptr %t129, ptr @.str10805) store ptr %t130, ptr %t69 br label %ifend26 ifend26: @@ -140970,7 +141132,7 @@ ifend26: %t133 = getelementptr inbounds %Cmp_Node, ptr %t132, i32 0, i32 3 %t134 = load ptr, ptr %t133 %t135 = call ptr @fn_llty(ptr %t134) - %t136 = call ptr @lp_str_concat(ptr %t135, ptr @.str10801) + %t136 = call ptr @lp_str_concat(ptr %t135, ptr @.str10806) %t137 = load i32, ptr %t7 %t138 = call ptr @fn_itoa(i32 %t137) %t139 = call ptr @lp_str_concat(ptr %t136, ptr %t138) @@ -140985,7 +141147,7 @@ ifend26: br i1 %t146, label %then27, label %ifend29 then27: %t147 = load ptr, ptr %t70 - %t148 = call ptr @lp_str_concat(ptr %t147, ptr @.str10802) + %t148 = call ptr @lp_str_concat(ptr %t147, ptr @.str10807) store ptr %t148, ptr %t70 br label %ifend29 ifend29: @@ -140994,7 +141156,7 @@ ifend29: %t151 = getelementptr inbounds %Cmp_Node, ptr %t150, i32 0, i32 3 %t152 = load ptr, ptr %t151 %t153 = call ptr @fn_llty(ptr %t152) - %t154 = call ptr @lp_str_concat(ptr %t153, ptr @.str10803) + %t154 = call ptr @lp_str_concat(ptr %t153, ptr @.str10808) %t155 = load i32, ptr %t7 %t156 = call ptr @fn_itoa(i32 %t155) %t157 = call ptr @lp_str_concat(ptr %t154, ptr %t156) @@ -141008,55 +141170,55 @@ ifend20: br label %wcond13 wend15: %t161 = load ptr, ptr %t58 - %t162 = call ptr @lp_str_concat(ptr @.str10804, ptr %t161) - %t163 = call ptr @lp_str_concat(ptr %t162, ptr @.str10805) + %t162 = call ptr @lp_str_concat(ptr @.str10809, ptr %t161) + %t163 = call ptr @lp_str_concat(ptr %t162, ptr @.str10810) %t164 = load ptr, ptr %t0 %t165 = getelementptr inbounds %Cmp_Node, ptr %t164, i32 0, i32 1 %t166 = load ptr, ptr %t165 %t167 = call ptr @lp_str_concat(ptr %t163, ptr %t166) - %t168 = call ptr @lp_str_concat(ptr %t167, ptr @.str10806) + %t168 = call ptr @lp_str_concat(ptr %t167, ptr @.str10811) %t169 = load ptr, ptr %t70 %t170 = call ptr @lp_str_concat(ptr %t168, ptr %t169) - %t171 = call ptr @lp_str_concat(ptr %t170, ptr @.str10807) + %t171 = call ptr @lp_str_concat(ptr %t170, ptr @.str10812) store ptr %t171, ptr %t172 %t173 = load ptr, ptr %t58 - %t174 = call i32 @lp_str_eq(ptr %t173, ptr @.str10808) + %t174 = call i32 @lp_str_eq(ptr %t173, ptr @.str10813) %t175 = icmp eq i32 %t174, 0 %t176 = zext i1 %t175 to i32 %t177 = icmp ne i32 %t176, 0 br i1 %t177, label %then30, label %ifend32 then30: %t178 = load ptr, ptr %t58 - %t179 = call ptr @lp_str_concat(ptr @.str10809, ptr %t178) - %t180 = call ptr @lp_str_concat(ptr %t179, ptr @.str10810) + %t179 = call ptr @lp_str_concat(ptr @.str10814, ptr %t178) + %t180 = call ptr @lp_str_concat(ptr %t179, ptr @.str10815) %t181 = load ptr, ptr %t0 %t182 = getelementptr inbounds %Cmp_Node, ptr %t181, i32 0, i32 1 %t183 = load ptr, ptr %t182 %t184 = call ptr @lp_str_concat(ptr %t180, ptr %t183) - %t185 = call ptr @lp_str_concat(ptr %t184, ptr @.str10811) + %t185 = call ptr @lp_str_concat(ptr %t184, ptr @.str10816) %t186 = load ptr, ptr %t70 %t187 = call ptr @lp_str_concat(ptr %t185, ptr %t186) - %t188 = call ptr @lp_str_concat(ptr %t187, ptr @.str10812) + %t188 = call ptr @lp_str_concat(ptr %t187, ptr @.str10817) %t189 = load ptr, ptr %t58 %t190 = call ptr @lp_str_concat(ptr %t188, ptr %t189) - %t191 = call ptr @lp_str_concat(ptr %t190, ptr @.str10813) + %t191 = call ptr @lp_str_concat(ptr %t190, ptr @.str10818) store ptr %t191, ptr %t172 br label %ifend32 ifend32: %t192 = load ptr, ptr %t58 - %t193 = call ptr @lp_str_concat(ptr @.str10814, ptr %t192) - %t194 = call ptr @lp_str_concat(ptr %t193, ptr @.str10815) + %t193 = call ptr @lp_str_concat(ptr @.str10819, ptr %t192) + %t194 = call ptr @lp_str_concat(ptr %t193, ptr @.str10820) %t195 = load ptr, ptr %t6 %t196 = call ptr @lp_str_concat(ptr %t194, ptr %t195) - %t197 = call ptr @lp_str_concat(ptr %t196, ptr @.str10816) + %t197 = call ptr @lp_str_concat(ptr %t196, ptr @.str10821) %t198 = load ptr, ptr %t69 %t199 = call ptr @lp_str_concat(ptr %t197, ptr %t198) - %t200 = call ptr @lp_str_concat(ptr %t199, ptr @.str10817) + %t200 = call ptr @lp_str_concat(ptr %t199, ptr @.str10822) %t201 = load ptr, ptr %t71 %t202 = call ptr @lp_str_concat(ptr %t200, ptr %t201) %t203 = load ptr, ptr %t172 %t204 = call ptr @lp_str_concat(ptr %t202, ptr %t203) - %t205 = call ptr @lp_str_concat(ptr %t204, ptr @.str10818) + %t205 = call ptr @lp_str_concat(ptr %t204, ptr @.str10823) call void @fn_emith(ptr %t205) %t206 = load ptr, ptr %t6 store ptr %t206, ptr %retval @@ -141103,7 +141265,7 @@ then2: br label %ret ifend4: %t20 = load ptr, ptr %t0 - %t21 = call ptr @lp_str_concat(ptr @.str10819, ptr %t20) + %t21 = call ptr @lp_str_concat(ptr @.str10824, ptr %t20) store ptr %t21, ptr %retval br label %ret ret: @@ -141151,14 +141313,14 @@ then0: %t23 = load ptr, ptr %t0 %t24 = getelementptr inbounds %Cmp_Val, ptr %t23, i32 0, i32 1 %t25 = load ptr, ptr %t24 - %t26 = call ptr @lp_str_concat(ptr @.str10820, ptr %t25) - %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str10821) + %t26 = call ptr @lp_str_concat(ptr @.str10825, ptr %t25) + %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str10826) %t28 = load ptr, ptr %t6 %t29 = getelementptr inbounds %LSlice, ptr %t28, i32 0, i32 1 %t30 = load i32, ptr %t29 %t31 = call ptr @fn_itoa(i32 %t30) %t32 = call ptr @lp_str_concat(ptr %t27, ptr %t31) - %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str10822) + %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str10827) %t34 = load ptr, ptr %t1 %t35 = getelementptr inbounds %Cmp_Node, ptr %t34, i32 0, i32 7 %t36 = load ptr, ptr %t35 @@ -141205,7 +141367,7 @@ wbody4: br i1 %t66, label %ixok6, label %ixbad7 ixbad7: %t67 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t67, ptr @.fmt_bounds, ptr @.str10823, i32 %t61, i32 %t65) + call i32 (ptr, ptr, ...) @fprintf(ptr %t67, ptr @.fmt_bounds, ptr @.str10828, i32 %t61, i32 %t65) call void @exit(i32 1) unreachable ixok6: @@ -141225,7 +141387,7 @@ ixok6: br i1 %t80, label %ixok8, label %ixbad9 ixbad9: %t81 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t81, ptr @.fmt_bounds, ptr @.str10824, i32 %t75, i32 %t79) + call i32 (ptr, ptr, ...) @fprintf(ptr %t81, ptr @.fmt_bounds, ptr @.str10829, i32 %t75, i32 %t79) call void @exit(i32 1) unreachable ixok8: @@ -141266,10 +141428,10 @@ wend5: %t105 = load ptr, ptr %t11 %t106 = call ptr @fn_llty(ptr %t105) store ptr %t106, ptr %t107 - call void @fn_emit(ptr @.str10825) - store ptr @.str10826, ptr %t108 + call void @fn_emit(ptr @.str10830) + store ptr @.str10831, ptr %t108 %t109 = load ptr, ptr %t107 - %t110 = call i32 @lp_str_eq(ptr %t109, ptr @.str10827) + %t110 = call i32 @lp_str_eq(ptr %t109, ptr @.str10832) %t111 = icmp eq i32 %t110, 0 %t112 = zext i1 %t111 to i32 %t113 = icmp ne i32 %t112, 0 @@ -141279,17 +141441,17 @@ then12: store ptr %t114, ptr %t108 %t115 = load ptr, ptr %t108 call void @fn_emit(ptr %t115) - call void @fn_emit(ptr @.str10828) + call void @fn_emit(ptr @.str10833) br label %ifend14 ifend14: %t116 = load ptr, ptr %t107 - %t117 = call ptr @lp_str_concat(ptr @.str10829, ptr %t116) - %t118 = call ptr @lp_str_concat(ptr %t117, ptr @.str10830) + %t117 = call ptr @lp_str_concat(ptr @.str10834, ptr %t116) + %t118 = call ptr @lp_str_concat(ptr %t117, ptr @.str10835) %t119 = load ptr, ptr %t0 %t120 = getelementptr inbounds %Cmp_Val, ptr %t119, i32 0, i32 0 %t121 = load ptr, ptr %t120 %t122 = call ptr @lp_str_concat(ptr %t118, ptr %t121) - %t123 = call ptr @lp_str_concat(ptr %t122, ptr @.str10831) + %t123 = call ptr @lp_str_concat(ptr %t122, ptr @.str10836) call void @fn_emit(ptr %t123) store i32 0, ptr %t48 br label %wcond15 @@ -141309,7 +141471,7 @@ wbody16: %t134 = icmp ne i32 %t133, 0 br i1 %t134, label %then18, label %ifend20 then18: - call void @fn_emit(ptr @.str10832) + call void @fn_emit(ptr @.str10837) br label %ifend20 ifend20: %t135 = load ptr, ptr %t6 @@ -141322,14 +141484,14 @@ ifend20: br i1 %t141, label %ixok21, label %ixbad22 ixbad22: %t142 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t142, ptr @.fmt_bounds, ptr @.str10833, i32 %t136, i32 %t140) + call i32 (ptr, ptr, ...) @fprintf(ptr %t142, ptr @.fmt_bounds, ptr @.str10838, i32 %t136, i32 %t140) call void @exit(i32 1) unreachable ixok21: %t143 = getelementptr inbounds ptr, ptr %t138, i32 %t136 %t144 = load ptr, ptr %t143 %t145 = call ptr @fn_llty(ptr %t144) - %t146 = call ptr @lp_str_concat(ptr %t145, ptr @.str10834) + %t146 = call ptr @lp_str_concat(ptr %t145, ptr @.str10839) %t147 = load ptr, ptr %t47 %t148 = load i32, ptr %t48 %t149 = getelementptr inbounds %LSlice, ptr %t147, i32 0, i32 0 @@ -141340,7 +141502,7 @@ ixok21: br i1 %t153, label %ixok23, label %ixbad24 ixbad24: %t154 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t154, ptr @.fmt_bounds, ptr @.str10835, i32 %t148, i32 %t152) + call i32 (ptr, ptr, ...) @fprintf(ptr %t154, ptr @.fmt_bounds, ptr @.str10840, i32 %t148, i32 %t152) call void @exit(i32 1) unreachable ixok23: @@ -141353,7 +141515,7 @@ ixok23: store i32 %t159, ptr %t48 br label %wcond15 wend17: - call void @fn_emit(ptr @.str10836) + call void @fn_emit(ptr @.str10841) %t160 = load ptr, ptr %t108 %t161 = load ptr, ptr %t11 %t162 = call ptr @fn_val(ptr %t160, ptr %t161) @@ -141413,7 +141575,7 @@ sc3: br i1 %t28, label %ixok5, label %ixbad6 ixbad6: %t29 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str10837, i32 %t23, i32 %t27) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str10842, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok5: @@ -141567,8 +141729,8 @@ then31: %t125 = load ptr, ptr %t117 %t126 = getelementptr inbounds %Cmp_Val, ptr %t125, i32 0, i32 1 %t127 = load ptr, ptr %t126 - %t128 = call ptr @lp_str_concat(ptr @.str10838, ptr %t127) - %t129 = call ptr @lp_str_concat(ptr %t128, ptr @.str10839) + %t128 = call ptr @lp_str_concat(ptr @.str10843, ptr %t127) + %t129 = call ptr @lp_str_concat(ptr %t128, ptr @.str10844) call void @fn_perr(ptr %t129) br label %ifend33 ifend33: @@ -141588,6 +141750,8 @@ entry: %t19 = alloca i32 %t39 = alloca i32 %t42 = alloca i32 + %t90 = alloca i32 + %t108 = alloca ptr store ptr %arg_e, ptr %t0 %t1 = load ptr, ptr %t0 %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 0 @@ -141633,7 +141797,7 @@ sc6: %t32 = getelementptr inbounds %Cmp_Node, ptr %t31, i32 0, i32 3 %t33 = load ptr, ptr %t32 %t34 = call ptr @fn_llty(ptr %t33) - %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str10840) + %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str10845) %t36 = icmp ne i32 %t35, 0 %t37 = zext i1 %t36 to i32 store i32 %t37, ptr %t19 @@ -141657,7 +141821,7 @@ then8: br i1 %t51, label %ixok11, label %ixbad12 ixbad12: %t52 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t52, ptr @.fmt_bounds, ptr @.str10841, i32 %t46, i32 %t50) + call i32 (ptr, ptr, ...) @fprintf(ptr %t52, ptr @.fmt_bounds, ptr @.str10846, i32 %t46, i32 %t50) call void @exit(i32 1) unreachable ixok11: @@ -141666,7 +141830,7 @@ ixok11: %t55 = getelementptr inbounds %Cmp_Node, ptr %t54, i32 0, i32 3 %t56 = load ptr, ptr %t55 %t57 = call ptr @fn_llty(ptr %t56) - %t58 = call i32 @lp_str_eq(ptr %t57, ptr @.str10842) + %t58 = call i32 @lp_str_eq(ptr %t57, ptr @.str10847) %t59 = icmp ne i32 %t58, 0 %t60 = zext i1 %t59 to i32 store i32 %t60, ptr %t42 @@ -141685,7 +141849,7 @@ sc13: br i1 %t70, label %ixok15, label %ixbad16 ixbad16: %t71 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t71, ptr @.fmt_bounds, ptr @.str10843, i32 %t65, i32 %t69) + call i32 (ptr, ptr, ...) @fprintf(ptr %t71, ptr @.fmt_bounds, ptr @.str10848, i32 %t65, i32 %t69) call void @exit(i32 1) unreachable ixok15: @@ -141694,7 +141858,7 @@ ixok15: %t74 = getelementptr inbounds %Cmp_Node, ptr %t73, i32 0, i32 3 %t75 = load ptr, ptr %t74 %t76 = call ptr @fn_llty(ptr %t75) - %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str10844) + %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str10849) %t78 = icmp ne i32 %t77, 0 %t79 = zext i1 %t78 to i32 store i32 %t79, ptr %t42 @@ -141713,11 +141877,76 @@ then17: %t85 = load ptr, ptr %t0 %t86 = getelementptr inbounds %Cmp_Node, ptr %t85, i32 0, i32 1 %t87 = load ptr, ptr %t86 - %t88 = call ptr @lp_str_concat(ptr @.str10845, ptr %t87) - %t89 = call ptr @lp_str_concat(ptr %t88, ptr @.str10846) + %t88 = call ptr @lp_str_concat(ptr @.str10850, ptr %t87) + %t89 = call ptr @lp_str_concat(ptr %t88, ptr @.str10851) call void @fn_perr(ptr %t89) br label %ifend19 ifend19: + store i32 0, ptr %t90 + br label %wcond20 +wcond20: + %t91 = load i32, ptr %t90 + %t92 = load i32, ptr %t18 + %t93 = icmp slt i32 %t91, %t92 + %t94 = zext i1 %t93 to i32 + %t95 = icmp ne i32 %t94, 0 + br i1 %t95, label %wbody21, label %wend22 +wbody21: + %t96 = load ptr, ptr %t11 + %t97 = getelementptr inbounds %Cmp_Node, ptr %t96, i32 0, i32 7 + %t98 = load ptr, ptr %t97 + %t99 = load i32, ptr %t90 + %t100 = getelementptr inbounds %LSlice, ptr %t98, i32 0, i32 0 + %t101 = load ptr, ptr %t100 + %t102 = getelementptr inbounds %LSlice, ptr %t98, i32 0, i32 1 + %t103 = load i32, ptr %t102 + %t104 = icmp ult i32 %t99, %t103 + br i1 %t104, label %ixok23, label %ixbad24 +ixbad24: + %t105 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t105, ptr @.fmt_bounds, ptr @.str10852, i32 %t99, i32 %t103) + call void @exit(i32 1) + unreachable +ixok23: + %t106 = getelementptr inbounds ptr, ptr %t101, i32 %t99 + %t107 = load ptr, ptr %t106 + store ptr %t107, ptr %t108 + %t109 = load ptr, ptr %t108 + %t110 = getelementptr inbounds %Cmp_Node, ptr %t109, i32 0, i32 12 + %t111 = load i32, ptr %t110 + %t112 = icmp eq i32 %t111, 1 + %t113 = zext i1 %t112 to i32 + %t114 = icmp ne i32 %t113, 0 + br i1 %t114, label %then25, label %ifend27 +then25: + %t115 = load ptr, ptr %t0 + %t116 = getelementptr inbounds %Cmp_Node, ptr %t115, i32 0, i32 1 + %t117 = load ptr, ptr %t116 + %t118 = call ptr @lp_str_concat(ptr @.str10853, ptr %t117) + %t119 = call ptr @lp_str_concat(ptr %t118, ptr @.str10854) + %t120 = load ptr, ptr %t108 + %t121 = getelementptr inbounds %Cmp_Node, ptr %t120, i32 0, i32 3 + %t122 = load ptr, ptr %t121 + %t123 = call ptr @lp_str_concat(ptr %t119, ptr %t122) + %t124 = call ptr @lp_str_concat(ptr %t123, ptr @.str10855) + %t125 = load ptr, ptr %t108 + %t126 = getelementptr inbounds %Cmp_Node, ptr %t125, i32 0, i32 1 + %t127 = load ptr, ptr %t126 + %t128 = call ptr @lp_str_concat(ptr %t124, ptr %t127) + %t129 = call ptr @lp_str_concat(ptr %t128, ptr @.str10856) + %t130 = load ptr, ptr %t108 + %t131 = getelementptr inbounds %Cmp_Node, ptr %t130, i32 0, i32 3 + %t132 = load ptr, ptr %t131 + %t133 = call ptr @lp_str_concat(ptr %t129, ptr %t132) + %t134 = call ptr @lp_str_concat(ptr %t133, ptr @.str10857) + call void @fn_perr(ptr %t134) + br label %ifend27 +ifend27: + %t135 = load i32, ptr %t90 + %t136 = add i32 %t135, 1 + store i32 %t136, ptr %t90 + br label %wcond20 +wend22: br label %ret ret: ret void @@ -141733,7 +141962,7 @@ entry: br i1 %t3, label %then0, label %ifend2 then0: store i32 0, ptr @g_g_vis_report - %t4 = call ptr @getenv(ptr @.str10847) + %t4 = call ptr @getenv(ptr @.str10858) %t5 = icmp ne ptr %t4, null %t6 = zext i1 %t5 to i32 %t7 = icmp ne i32 %t6, 0 @@ -141951,7 +142180,7 @@ sc5: %t27 = load ptr, ptr %t0 %t28 = getelementptr inbounds %Cmp_Node, ptr %t27, i32 0, i32 1 %t29 = load ptr, ptr %t28 - %t30 = call i32 @fn_str_prefix(ptr %t29, ptr @.str10848) + %t30 = call i32 @fn_str_prefix(ptr %t29, ptr @.str10859) %t31 = icmp ne i32 %t30, 0 %t32 = zext i1 %t31 to i32 store i32 %t32, ptr %t8 @@ -141991,7 +142220,7 @@ sc12: %t53 = load ptr, ptr %t0 %t54 = getelementptr inbounds %Cmp_Node, ptr %t53, i32 0, i32 1 %t55 = load ptr, ptr %t54 - %t56 = call i32 @fn_str_prefix(ptr %t55, ptr @.str10849) + %t56 = call i32 @fn_str_prefix(ptr %t55, ptr @.str10860) %t57 = icmp ne i32 %t56, 0 %t58 = zext i1 %t57 to i32 store i32 %t58, ptr %t52 @@ -142059,7 +142288,7 @@ ifend27: %t95 = call ptr @fn_module_for_uses(ptr %t94) store ptr %t95, ptr %t96 %t100 = load ptr, ptr %t96 - %t101 = call i32 @lp_str_eq(ptr %t100, ptr @.str10850) + %t101 = call i32 @lp_str_eq(ptr %t100, ptr @.str10861) %t102 = icmp eq i32 %t101, 0 %t103 = zext i1 %t102 to i32 %t104 = icmp ne i32 %t103, 0 @@ -142120,54 +142349,54 @@ then37: %t137 = load ptr, ptr %t0 %t138 = getelementptr inbounds %Cmp_Node, ptr %t137, i32 0, i32 9 %t139 = load ptr, ptr %t138 - %t140 = call ptr @lp_str_concat(ptr @.str10851, ptr %t139) - %t141 = call ptr @lp_str_concat(ptr %t140, ptr @.str10852) + %t140 = call ptr @lp_str_concat(ptr @.str10862, ptr %t139) + %t141 = call ptr @lp_str_concat(ptr %t140, ptr @.str10863) %t142 = load ptr, ptr %t0 %t143 = getelementptr inbounds %Cmp_Node, ptr %t142, i32 0, i32 8 %t144 = load i32, ptr %t143 %t145 = call ptr @fn_itoa(i32 %t144) %t146 = call ptr @lp_str_concat(ptr %t141, ptr %t145) - %t147 = call ptr @lp_str_concat(ptr %t146, ptr @.str10853) + %t147 = call ptr @lp_str_concat(ptr %t146, ptr @.str10864) %t148 = load ptr, ptr %t96 %t149 = call ptr @lp_str_concat(ptr %t147, ptr %t148) - %t150 = call ptr @lp_str_concat(ptr %t149, ptr @.str10854) + %t150 = call ptr @lp_str_concat(ptr %t149, ptr @.str10865) %t151 = load ptr, ptr %t82 %t152 = call ptr @lp_str_concat(ptr %t150, ptr %t151) - %t153 = call ptr @lp_str_concat(ptr %t152, ptr @.str10855) + %t153 = call ptr @lp_str_concat(ptr %t152, ptr @.str10866) %t154 = load ptr, ptr %t84 %t155 = call ptr @lp_str_concat(ptr %t153, ptr %t154) - %t156 = call ptr @lp_str_concat(ptr %t155, ptr @.str10856) + %t156 = call ptr @lp_str_concat(ptr %t155, ptr @.str10867) %t157 = load ptr, ptr %t91 %t158 = call ptr @lp_str_concat(ptr %t156, ptr %t157) - %t159 = call ptr @lp_str_concat(ptr %t158, ptr @.str10857) + %t159 = call ptr @lp_str_concat(ptr %t158, ptr @.str10868) call void @fn_vis_say(ptr %t159) br label %ifend39 else38: %t160 = load ptr, ptr %t91 - %t161 = call ptr @lp_str_concat(ptr %t160, ptr @.str10858) + %t161 = call ptr @lp_str_concat(ptr %t160, ptr @.str10869) %t162 = load ptr, ptr %t96 %t163 = call ptr @lp_str_concat(ptr %t161, ptr %t162) - %t164 = call ptr @lp_str_concat(ptr %t163, ptr @.str10859) + %t164 = call ptr @lp_str_concat(ptr %t163, ptr @.str10870) %t165 = load ptr, ptr %t82 %t166 = call ptr @lp_str_concat(ptr %t164, ptr %t165) - %t167 = call ptr @lp_str_concat(ptr %t166, ptr @.str10860) + %t167 = call ptr @lp_str_concat(ptr %t166, ptr @.str10871) %t168 = load ptr, ptr %t0 %t169 = getelementptr inbounds %Cmp_Node, ptr %t168, i32 0, i32 9 %t170 = load ptr, ptr %t169 %t171 = call ptr @lp_str_concat(ptr %t167, ptr %t170) - %t172 = call ptr @lp_str_concat(ptr %t171, ptr @.str10861) + %t172 = call ptr @lp_str_concat(ptr %t171, ptr @.str10872) %t173 = load ptr, ptr %t0 %t174 = getelementptr inbounds %Cmp_Node, ptr %t173, i32 0, i32 8 %t175 = load i32, ptr %t174 %t176 = call ptr @fn_itoa(i32 %t175) %t177 = call ptr @lp_str_concat(ptr %t172, ptr %t176) - %t178 = call ptr @lp_str_concat(ptr %t177, ptr @.str10862) + %t178 = call ptr @lp_str_concat(ptr %t177, ptr @.str10873) %t179 = load ptr, ptr %t96 %t180 = call ptr @lp_str_concat(ptr %t178, ptr %t179) - %t181 = call ptr @lp_str_concat(ptr %t180, ptr @.str10863) + %t181 = call ptr @lp_str_concat(ptr %t180, ptr @.str10874) %t182 = load ptr, ptr %t91 %t183 = call ptr @lp_str_concat(ptr %t181, ptr %t182) - %t184 = call ptr @lp_str_concat(ptr %t183, ptr @.str10864) + %t184 = call ptr @lp_str_concat(ptr %t183, ptr @.str10875) call void @fn_perr(ptr %t184) br label %ifend39 ifend39: @@ -142179,7 +142408,7 @@ ifend36: %t188 = call ptr @fn_module_of(ptr %t187) store ptr %t188, ptr %t189 %t191 = load ptr, ptr %t189 - %t192 = call i32 @lp_str_eq(ptr %t191, ptr @.str10865) + %t192 = call i32 @lp_str_eq(ptr %t191, ptr @.str10876) %t193 = icmp ne i32 %t192, 0 %t194 = zext i1 %t193 to i32 store i32 %t194, ptr %t190 @@ -142224,36 +142453,36 @@ then51: %t214 = load ptr, ptr %t0 %t215 = getelementptr inbounds %Cmp_Node, ptr %t214, i32 0, i32 9 %t216 = load ptr, ptr %t215 - %t217 = call ptr @lp_str_concat(ptr @.str10866, ptr %t216) - %t218 = call ptr @lp_str_concat(ptr %t217, ptr @.str10867) + %t217 = call ptr @lp_str_concat(ptr @.str10877, ptr %t216) + %t218 = call ptr @lp_str_concat(ptr %t217, ptr @.str10878) %t219 = load ptr, ptr %t0 %t220 = getelementptr inbounds %Cmp_Node, ptr %t219, i32 0, i32 8 %t221 = load i32, ptr %t220 %t222 = call ptr @fn_itoa(i32 %t221) %t223 = call ptr @lp_str_concat(ptr %t218, ptr %t222) - %t224 = call ptr @lp_str_concat(ptr %t223, ptr @.str10868) + %t224 = call ptr @lp_str_concat(ptr %t223, ptr @.str10879) %t225 = load ptr, ptr %t189 %t226 = call ptr @lp_str_concat(ptr %t224, ptr %t225) - %t227 = call ptr @lp_str_concat(ptr %t226, ptr @.str10869) + %t227 = call ptr @lp_str_concat(ptr %t226, ptr @.str10880) %t228 = load ptr, ptr %t82 %t229 = call ptr @lp_str_concat(ptr %t227, ptr %t228) - %t230 = call ptr @lp_str_concat(ptr %t229, ptr @.str10870) + %t230 = call ptr @lp_str_concat(ptr %t229, ptr @.str10881) %t231 = load ptr, ptr %t84 %t232 = call ptr @lp_str_concat(ptr %t230, ptr %t231) - %t233 = call ptr @lp_str_concat(ptr %t232, ptr @.str10871) + %t233 = call ptr @lp_str_concat(ptr %t232, ptr @.str10882) call void @fn_vis_say(ptr %t233) br label %ret ifend53: %t234 = load ptr, ptr %t82 - %t235 = call ptr @lp_str_concat(ptr %t234, ptr @.str10872) + %t235 = call ptr @lp_str_concat(ptr %t234, ptr @.str10883) %t236 = load ptr, ptr %t189 %t237 = call ptr @lp_str_concat(ptr %t235, ptr %t236) - %t238 = call ptr @lp_str_concat(ptr %t237, ptr @.str10873) + %t238 = call ptr @lp_str_concat(ptr %t237, ptr @.str10884) %t239 = load ptr, ptr %t0 %t240 = getelementptr inbounds %Cmp_Node, ptr %t239, i32 0, i32 9 %t241 = load ptr, ptr %t240 %t242 = call ptr @lp_str_concat(ptr %t238, ptr %t241) - %t243 = call ptr @lp_str_concat(ptr %t242, ptr @.str10874) + %t243 = call ptr @lp_str_concat(ptr %t242, ptr @.str10885) call void @fn_perr(ptr %t243) br label %ret ret: @@ -142450,7 +142679,7 @@ then20: br i1 %t124, label %ixok23, label %ixbad24 ixbad24: %t125 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t125, ptr @.fmt_bounds, ptr @.str10875, i32 %t119, i32 %t123) + call i32 (ptr, ptr, ...) @fprintf(ptr %t125, ptr @.fmt_bounds, ptr @.str10886, i32 %t119, i32 %t123) call void @exit(i32 1) unreachable ixok23: @@ -142468,7 +142697,7 @@ else21: br i1 %t133, label %ixok25, label %ixbad26 ixbad26: %t134 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t134, ptr @.fmt_bounds, ptr @.str10876, i32 %t128, i32 %t132) + call i32 (ptr, ptr, ...) @fprintf(ptr %t134, ptr @.fmt_bounds, ptr @.str10887, i32 %t128, i32 %t132) call void @exit(i32 1) unreachable ixok25: @@ -142486,7 +142715,7 @@ ifend22: br i1 %t142, label %ixok27, label %ixbad28 ixbad28: %t143 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t143, ptr @.fmt_bounds, ptr @.str10877, i32 %t137, i32 %t141) + call i32 (ptr, ptr, ...) @fprintf(ptr %t143, ptr @.fmt_bounds, ptr @.str10888, i32 %t137, i32 %t141) call void @exit(i32 1) unreachable ixok27: @@ -142502,7 +142731,7 @@ ixok27: br i1 %t151, label %ixok29, label %ixbad30 ixbad30: %t152 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t152, ptr @.fmt_bounds, ptr @.str10878, i32 %t146, i32 %t150) + call i32 (ptr, ptr, ...) @fprintf(ptr %t152, ptr @.fmt_bounds, ptr @.str10889, i32 %t146, i32 %t150) call void @exit(i32 1) unreachable ixok29: @@ -142518,7 +142747,7 @@ ixok29: br i1 %t160, label %ixok31, label %ixbad32 ixbad32: %t161 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t161, ptr @.fmt_bounds, ptr @.str10879, i32 %t155, i32 %t159) + call i32 (ptr, ptr, ...) @fprintf(ptr %t161, ptr @.fmt_bounds, ptr @.str10890, i32 %t155, i32 %t159) call void @exit(i32 1) unreachable ixok31: @@ -142534,7 +142763,7 @@ ixok31: br i1 %t169, label %ixok33, label %ixbad34 ixbad34: %t170 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t170, ptr @.fmt_bounds, ptr @.str10880, i32 %t164, i32 %t168) + call i32 (ptr, ptr, ...) @fprintf(ptr %t170, ptr @.fmt_bounds, ptr @.str10891, i32 %t164, i32 %t168) call void @exit(i32 1) unreachable ixok33: @@ -142554,7 +142783,7 @@ then35: br i1 %t181, label %ixok38, label %ixbad39 ixbad39: %t182 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t182, ptr @.fmt_bounds, ptr @.str10881, i32 %t176, i32 %t180) + call i32 (ptr, ptr, ...) @fprintf(ptr %t182, ptr @.fmt_bounds, ptr @.str10892, i32 %t176, i32 %t180) call void @exit(i32 1) unreachable ixok38: @@ -142569,7 +142798,7 @@ ixok38: br i1 %t190, label %ixok40, label %ixbad41 ixbad41: %t191 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t191, ptr @.fmt_bounds, ptr @.str10882, i32 %t185, i32 %t189) + call i32 (ptr, ptr, ...) @fprintf(ptr %t191, ptr @.fmt_bounds, ptr @.str10893, i32 %t185, i32 %t189) call void @exit(i32 1) unreachable ixok40: @@ -142592,7 +142821,7 @@ then42: br i1 %t202, label %ixok45, label %ixbad46 ixbad46: %t203 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t203, ptr @.fmt_bounds, ptr @.str10883, i32 %t197, i32 %t201) + call i32 (ptr, ptr, ...) @fprintf(ptr %t203, ptr @.fmt_bounds, ptr @.str10894, i32 %t197, i32 %t201) call void @exit(i32 1) unreachable ixok45: @@ -142607,7 +142836,7 @@ ixok45: br i1 %t211, label %ixok47, label %ixbad48 ixbad48: %t212 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t212, ptr @.fmt_bounds, ptr @.str10884, i32 %t206, i32 %t210) + call i32 (ptr, ptr, ...) @fprintf(ptr %t212, ptr @.fmt_bounds, ptr @.str10895, i32 %t206, i32 %t210) call void @exit(i32 1) unreachable ixok47: @@ -142639,7 +142868,7 @@ entry: br i1 %t10, label %ixok0, label %ixbad1 ixbad1: %t11 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t11, ptr @.fmt_bounds, ptr @.str10885, i32 %t5, i32 %t9) + call i32 (ptr, ptr, ...) @fprintf(ptr %t11, ptr @.fmt_bounds, ptr @.str10896, i32 %t5, i32 %t9) call void @exit(i32 1) unreachable ixok0: @@ -142655,7 +142884,7 @@ ixok0: br i1 %t19, label %ixok2, label %ixbad3 ixbad3: %t20 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str10886, i32 %t14, i32 %t18) + call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str10897, i32 %t14, i32 %t18) call void @exit(i32 1) unreachable ixok2: @@ -142670,7 +142899,7 @@ ixok2: br i1 %t28, label %ixok4, label %ixbad5 ixbad5: %t29 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str10887, i32 %t23, i32 %t27) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str10898, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok4: @@ -142704,7 +142933,7 @@ entry: br i1 %t9, label %scend1, label %sc0 sc0: %t11 = load ptr, ptr %t0 - %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str10888) + %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str10899) %t13 = icmp ne i32 %t12, 0 %t14 = zext i1 %t13 to i32 store i32 %t14, ptr %t5 @@ -142717,7 +142946,7 @@ scend1: br i1 %t16, label %scend3, label %sc2 sc2: %t18 = load ptr, ptr %t0 - %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str10889) + %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str10900) %t20 = icmp ne i32 %t19, 0 %t21 = zext i1 %t20 to i32 store i32 %t21, ptr %t4 @@ -142730,7 +142959,7 @@ scend3: br i1 %t23, label %scend5, label %sc4 sc4: %t25 = load ptr, ptr %t0 - %t26 = call i32 @lp_str_eq(ptr %t25, ptr @.str10890) + %t26 = call i32 @lp_str_eq(ptr %t25, ptr @.str10901) %t27 = icmp ne i32 %t26, 0 %t28 = zext i1 %t27 to i32 store i32 %t28, ptr %t3 @@ -142743,7 +142972,7 @@ scend5: br i1 %t30, label %scend7, label %sc6 sc6: %t32 = load ptr, ptr %t0 - %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str10891) + %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str10902) %t34 = icmp ne i32 %t33, 0 %t35 = zext i1 %t34 to i32 store i32 %t35, ptr %t2 @@ -142756,7 +142985,7 @@ scend7: br i1 %t37, label %scend9, label %sc8 sc8: %t39 = load ptr, ptr %t0 - %t40 = call i32 @lp_str_eq(ptr %t39, ptr @.str10892) + %t40 = call i32 @lp_str_eq(ptr %t39, ptr @.str10903) %t41 = icmp ne i32 %t40, 0 %t42 = zext i1 %t41 to i32 store i32 %t42, ptr %t1 @@ -142770,14 +142999,14 @@ then10: br label %ret ifend12: %t48 = load ptr, ptr %t0 - %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str10893) + %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str10904) %t50 = icmp ne i32 %t49, 0 %t51 = zext i1 %t50 to i32 store i32 %t51, ptr %t47 br i1 %t50, label %scend14, label %sc13 sc13: %t52 = load ptr, ptr %t0 - %t53 = call i32 @lp_str_eq(ptr %t52, ptr @.str10894) + %t53 = call i32 @lp_str_eq(ptr %t52, ptr @.str10905) %t54 = icmp ne i32 %t53, 0 %t55 = zext i1 %t54 to i32 store i32 %t55, ptr %t47 @@ -142790,7 +143019,7 @@ scend14: br i1 %t57, label %scend16, label %sc15 sc15: %t59 = load ptr, ptr %t0 - %t60 = call i32 @lp_str_eq(ptr %t59, ptr @.str10895) + %t60 = call i32 @lp_str_eq(ptr %t59, ptr @.str10906) %t61 = icmp ne i32 %t60, 0 %t62 = zext i1 %t61 to i32 store i32 %t62, ptr %t46 @@ -142803,7 +143032,7 @@ scend16: br i1 %t64, label %scend18, label %sc17 sc17: %t66 = load ptr, ptr %t0 - %t67 = call i32 @lp_str_eq(ptr %t66, ptr @.str10896) + %t67 = call i32 @lp_str_eq(ptr %t66, ptr @.str10907) %t68 = icmp ne i32 %t67, 0 %t69 = zext i1 %t68 to i32 store i32 %t69, ptr %t45 @@ -142938,7 +143167,7 @@ then16: br i1 %t60, label %ixok19, label %ixbad20 ixbad20: %t61 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t61, ptr @.fmt_bounds, ptr @.str10897, i32 %t55, i32 %t59) + call i32 (ptr, ptr, ...) @fprintf(ptr %t61, ptr @.fmt_bounds, ptr @.str10908, i32 %t55, i32 %t59) call void @exit(i32 1) unreachable ixok19: @@ -142953,7 +143182,7 @@ ixok19: br i1 %t69, label %ixok21, label %ixbad22 ixbad22: %t70 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t70, ptr @.fmt_bounds, ptr @.str10898, i32 %t64, i32 %t68) + call i32 (ptr, ptr, ...) @fprintf(ptr %t70, ptr @.fmt_bounds, ptr @.str10909, i32 %t64, i32 %t68) call void @exit(i32 1) unreachable ixok21: @@ -142998,7 +143227,7 @@ then25: br i1 %t98, label %ixok28, label %ixbad29 ixbad29: %t99 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t99, ptr @.fmt_bounds, ptr @.str10899, i32 %t93, i32 %t97) + call i32 (ptr, ptr, ...) @fprintf(ptr %t99, ptr @.fmt_bounds, ptr @.str10910, i32 %t93, i32 %t97) call void @exit(i32 1) unreachable ixok28: @@ -143013,7 +143242,7 @@ ixok28: br i1 %t107, label %ixok30, label %ixbad31 ixbad31: %t108 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t108, ptr @.fmt_bounds, ptr @.str10900, i32 %t102, i32 %t106) + call i32 (ptr, ptr, ...) @fprintf(ptr %t108, ptr @.fmt_bounds, ptr @.str10911, i32 %t102, i32 %t106) call void @exit(i32 1) unreachable ixok30: @@ -143082,7 +143311,7 @@ then40: br i1 %t149, label %ixok43, label %ixbad44 ixbad44: %t150 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t150, ptr @.fmt_bounds, ptr @.str10901, i32 %t144, i32 %t148) + call i32 (ptr, ptr, ...) @fprintf(ptr %t150, ptr @.fmt_bounds, ptr @.str10912, i32 %t144, i32 %t148) call void @exit(i32 1) unreachable ixok43: @@ -143138,7 +143367,7 @@ ifend4: br i1 %t23, label %ixok5, label %ixbad6 ixbad6: %t24 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str10902, i32 %t18, i32 %t22) + call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str10913, i32 %t18, i32 %t22) call void @exit(i32 1) unreachable ixok5: @@ -143355,7 +143584,7 @@ then3: br i1 %t24, label %ixok6, label %ixbad7 ixbad7: %t25 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str10903, i32 %t19, i32 %t23) + call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str10914, i32 %t19, i32 %t23) call void @exit(i32 1) unreachable ixok6: @@ -143381,7 +143610,7 @@ then8: br i1 %t41, label %ixok11, label %ixbad12 ixbad12: %t42 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str10904, i32 %t36, i32 %t40) + call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str10915, i32 %t36, i32 %t40) call void @exit(i32 1) unreachable ixok11: @@ -143411,7 +143640,7 @@ sc13: br i1 %t60, label %ixok15, label %ixbad16 ixbad16: %t61 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t61, ptr @.fmt_bounds, ptr @.str10905, i32 %t55, i32 %t59) + call i32 (ptr, ptr, ...) @fprintf(ptr %t61, ptr @.fmt_bounds, ptr @.str10916, i32 %t55, i32 %t59) call void @exit(i32 1) unreachable ixok15: @@ -143438,7 +143667,7 @@ then17: br i1 %t76, label %ixok20, label %ixbad21 ixbad21: %t77 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t77, ptr @.fmt_bounds, ptr @.str10906, i32 %t71, i32 %t75) + call i32 (ptr, ptr, ...) @fprintf(ptr %t77, ptr @.fmt_bounds, ptr @.str10917, i32 %t71, i32 %t75) call void @exit(i32 1) unreachable ixok20: @@ -143468,7 +143697,7 @@ sc22: br i1 %t95, label %ixok24, label %ixbad25 ixbad25: %t96 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t96, ptr @.fmt_bounds, ptr @.str10907, i32 %t90, i32 %t94) + call i32 (ptr, ptr, ...) @fprintf(ptr %t96, ptr @.fmt_bounds, ptr @.str10918, i32 %t90, i32 %t94) call void @exit(i32 1) unreachable ixok24: @@ -143495,7 +143724,7 @@ then26: br i1 %t111, label %ixok29, label %ixbad30 ixbad30: %t112 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t112, ptr @.fmt_bounds, ptr @.str10908, i32 %t106, i32 %t110) + call i32 (ptr, ptr, ...) @fprintf(ptr %t112, ptr @.fmt_bounds, ptr @.str10919, i32 %t106, i32 %t110) call void @exit(i32 1) unreachable ixok29: @@ -143512,19 +143741,19 @@ ixok29: then31: %t121 = load ptr, ptr %t0 %t122 = load ptr, ptr %t1 - %t123 = call ptr @lp_str_concat(ptr %t122, ptr @.str10910) + %t123 = call ptr @lp_str_concat(ptr %t122, ptr @.str10921) %t124 = load ptr, ptr %t4 %t125 = getelementptr inbounds %Cmp_Node, ptr %t124, i32 0, i32 1 %t126 = load ptr, ptr %t125 %t127 = call ptr @lp_str_concat(ptr %t123, ptr %t126) - %t128 = call ptr @lp_str_concat(ptr %t127, ptr @.str10911) + %t128 = call ptr @lp_str_concat(ptr %t127, ptr @.str10922) %t129 = load ptr, ptr %t115 %t130 = getelementptr inbounds %Cmp_Node, ptr %t129, i32 0, i32 1 %t131 = load ptr, ptr %t130 %t132 = call ptr @fn_mg_src_name(ptr %t131) %t133 = call ptr @lp_str_concat(ptr %t128, ptr %t132) - %t134 = call ptr @lp_str_concat(ptr %t133, ptr @.str10912) - call void @fn_ck_err(ptr @.str10909, ptr %t121, ptr %t134) + %t134 = call ptr @lp_str_concat(ptr %t133, ptr @.str10923) + call void @fn_ck_err(ptr @.str10920, ptr %t121, ptr %t134) br label %ifend33 ifend33: br label %ifend28 @@ -143572,7 +143801,7 @@ sc38: br i1 %t162, label %ixok40, label %ixbad41 ixbad41: %t163 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t163, ptr @.fmt_bounds, ptr @.str10913, i32 %t157, i32 %t161) + call i32 (ptr, ptr, ...) @fprintf(ptr %t163, ptr @.fmt_bounds, ptr @.str10924, i32 %t157, i32 %t161) call void @exit(i32 1) unreachable ixok40: @@ -143600,7 +143829,7 @@ then42: br i1 %t179, label %ixok45, label %ixbad46 ixbad46: %t180 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t180, ptr @.fmt_bounds, ptr @.str10914, i32 %t174, i32 %t178) + call i32 (ptr, ptr, ...) @fprintf(ptr %t180, ptr @.fmt_bounds, ptr @.str10925, i32 %t174, i32 %t178) call void @exit(i32 1) unreachable ixok45: @@ -143644,7 +143873,7 @@ sc49: br i1 %t209, label %ixok51, label %ixbad52 ixbad52: %t210 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t210, ptr @.fmt_bounds, ptr @.str10915, i32 %t204, i32 %t208) + call i32 (ptr, ptr, ...) @fprintf(ptr %t210, ptr @.fmt_bounds, ptr @.str10926, i32 %t204, i32 %t208) call void @exit(i32 1) unreachable ixok51: @@ -143673,7 +143902,7 @@ sc53: br i1 %t226, label %ixok55, label %ixbad56 ixbad56: %t227 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t227, ptr @.fmt_bounds, ptr @.str10916, i32 %t221, i32 %t225) + call i32 (ptr, ptr, ...) @fprintf(ptr %t227, ptr @.fmt_bounds, ptr @.str10927, i32 %t221, i32 %t225) call void @exit(i32 1) unreachable ixok55: @@ -143689,7 +143918,7 @@ ixok55: br i1 %t236, label %ixok57, label %ixbad58 ixbad58: %t237 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t237, ptr @.fmt_bounds, ptr @.str10917, i32 %t231, i32 %t235) + call i32 (ptr, ptr, ...) @fprintf(ptr %t237, ptr @.fmt_bounds, ptr @.str10928, i32 %t231, i32 %t235) call void @exit(i32 1) unreachable ixok57: @@ -143709,12 +143938,12 @@ scend54: then59: %t247 = load ptr, ptr %t0 %t248 = load ptr, ptr %t1 - %t249 = call ptr @lp_str_concat(ptr %t248, ptr @.str10919) + %t249 = call ptr @lp_str_concat(ptr %t248, ptr @.str10930) %t250 = load ptr, ptr %t4 %t251 = getelementptr inbounds %Cmp_Node, ptr %t250, i32 0, i32 1 %t252 = load ptr, ptr %t251 %t253 = call ptr @lp_str_concat(ptr %t249, ptr %t252) - %t254 = call ptr @lp_str_concat(ptr %t253, ptr @.str10920) + %t254 = call ptr @lp_str_concat(ptr %t253, ptr @.str10931) %t255 = load ptr, ptr @g_ck_ro_st %t256 = load i32, ptr %t13 %t257 = getelementptr inbounds %LSlice, ptr %t255, i32 0, i32 0 @@ -143725,14 +143954,14 @@ then59: br i1 %t261, label %ixok62, label %ixbad63 ixbad63: %t262 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t262, ptr @.fmt_bounds, ptr @.str10921, i32 %t256, i32 %t260) + call i32 (ptr, ptr, ...) @fprintf(ptr %t262, ptr @.fmt_bounds, ptr @.str10932, i32 %t256, i32 %t260) call void @exit(i32 1) unreachable ixok62: %t263 = getelementptr inbounds ptr, ptr %t258, i32 %t256 %t264 = load ptr, ptr %t263 %t265 = call ptr @lp_str_concat(ptr %t254, ptr %t264) - %t266 = call ptr @lp_str_concat(ptr %t265, ptr @.str10922) + %t266 = call ptr @lp_str_concat(ptr %t265, ptr @.str10933) %t267 = load ptr, ptr @g_ck_ro_st %t268 = load i32, ptr %t13 %t269 = getelementptr inbounds %LSlice, ptr %t267, i32 0, i32 0 @@ -143743,15 +143972,15 @@ ixok62: br i1 %t273, label %ixok64, label %ixbad65 ixbad65: %t274 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t274, ptr @.fmt_bounds, ptr @.str10923, i32 %t268, i32 %t272) + call i32 (ptr, ptr, ...) @fprintf(ptr %t274, ptr @.fmt_bounds, ptr @.str10934, i32 %t268, i32 %t272) call void @exit(i32 1) unreachable ixok64: %t275 = getelementptr inbounds ptr, ptr %t270, i32 %t268 %t276 = load ptr, ptr %t275 %t277 = call ptr @lp_str_concat(ptr %t266, ptr %t276) - %t278 = call ptr @lp_str_concat(ptr %t277, ptr @.str10924) - call void @fn_ck_err(ptr @.str10918, ptr %t247, ptr %t278) + %t278 = call ptr @lp_str_concat(ptr %t277, ptr @.str10935) + call void @fn_ck_err(ptr @.str10929, ptr %t247, ptr %t278) br label %ret ifend61: %t279 = load i32, ptr %t13 @@ -143761,17 +143990,17 @@ ifend61: then66: %t282 = load ptr, ptr %t0 %t283 = load ptr, ptr %t1 - %t284 = call ptr @lp_str_concat(ptr %t283, ptr @.str10926) + %t284 = call ptr @lp_str_concat(ptr %t283, ptr @.str10937) %t285 = load ptr, ptr %t4 %t286 = getelementptr inbounds %Cmp_Node, ptr %t285, i32 0, i32 1 %t287 = load ptr, ptr %t286 %t288 = call ptr @lp_str_concat(ptr %t284, ptr %t287) - %t289 = call ptr @lp_str_concat(ptr %t288, ptr @.str10927) + %t289 = call ptr @lp_str_concat(ptr %t288, ptr @.str10938) %t290 = load ptr, ptr %t4 %t291 = getelementptr inbounds %Cmp_Node, ptr %t290, i32 0, i32 1 %t292 = load ptr, ptr %t291 %t293 = call ptr @lp_str_concat(ptr %t289, ptr %t292) - %t294 = call ptr @lp_str_concat(ptr %t293, ptr @.str10928) + %t294 = call ptr @lp_str_concat(ptr %t293, ptr @.str10939) %t295 = load ptr, ptr @g_ck_tys %t296 = load i32, ptr %t13 %t297 = getelementptr inbounds %LSlice, ptr %t295, i32 0, i32 0 @@ -143782,19 +144011,19 @@ then66: br i1 %t301, label %ixok69, label %ixbad70 ixbad70: %t302 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t302, ptr @.fmt_bounds, ptr @.str10929, i32 %t296, i32 %t300) + call i32 (ptr, ptr, ...) @fprintf(ptr %t302, ptr @.fmt_bounds, ptr @.str10940, i32 %t296, i32 %t300) call void @exit(i32 1) unreachable ixok69: %t303 = getelementptr inbounds ptr, ptr %t298, i32 %t296 %t304 = load ptr, ptr %t303 %t305 = call ptr @lp_str_concat(ptr %t294, ptr %t304) - %t306 = call ptr @lp_str_concat(ptr %t305, ptr @.str10930) + %t306 = call ptr @lp_str_concat(ptr %t305, ptr @.str10941) %t307 = load ptr, ptr %t4 %t308 = getelementptr inbounds %Cmp_Node, ptr %t307, i32 0, i32 1 %t309 = load ptr, ptr %t308 %t310 = call ptr @lp_str_concat(ptr %t306, ptr %t309) - %t311 = call ptr @lp_str_concat(ptr %t310, ptr @.str10931) + %t311 = call ptr @lp_str_concat(ptr %t310, ptr @.str10942) %t312 = load ptr, ptr @g_ck_tys %t313 = load i32, ptr %t13 %t314 = getelementptr inbounds %LSlice, ptr %t312, i32 0, i32 0 @@ -143805,15 +144034,15 @@ ixok69: br i1 %t318, label %ixok71, label %ixbad72 ixbad72: %t319 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t319, ptr @.fmt_bounds, ptr @.str10932, i32 %t313, i32 %t317) + call i32 (ptr, ptr, ...) @fprintf(ptr %t319, ptr @.fmt_bounds, ptr @.str10943, i32 %t313, i32 %t317) call void @exit(i32 1) unreachable ixok71: %t320 = getelementptr inbounds ptr, ptr %t315, i32 %t313 %t321 = load ptr, ptr %t320 %t322 = call ptr @lp_str_concat(ptr %t311, ptr %t321) - %t323 = call ptr @lp_str_concat(ptr %t322, ptr @.str10933) - call void @fn_ck_err(ptr @.str10925, ptr %t282, ptr %t323) + %t323 = call ptr @lp_str_concat(ptr %t322, ptr @.str10944) + call void @fn_ck_err(ptr @.str10936, ptr %t282, ptr %t323) br label %ifend68 ifend68: br label %ret @@ -143874,17 +144103,17 @@ then81: %t362 = load ptr, ptr %t328 %t363 = getelementptr inbounds %Cmp_Node, ptr %t362, i32 0, i32 3 %t364 = load ptr, ptr %t363 - %t365 = call ptr @lp_str_concat(ptr @.str10934, ptr %t364) + %t365 = call ptr @lp_str_concat(ptr @.str10945, ptr %t364) store ptr %t365, ptr %t345 br label %ifend83 ifend83: %t366 = load ptr, ptr %t0 %t367 = load ptr, ptr %t1 - %t368 = call ptr @lp_str_concat(ptr %t367, ptr @.str10936) + %t368 = call ptr @lp_str_concat(ptr %t367, ptr @.str10947) %t369 = load ptr, ptr %t345 %t370 = call ptr @lp_str_concat(ptr %t368, ptr %t369) - %t371 = call ptr @lp_str_concat(ptr %t370, ptr @.str10937) - call void @fn_ck_err(ptr @.str10935, ptr %t366, ptr %t371) + %t371 = call ptr @lp_str_concat(ptr %t370, ptr @.str10948) + call void @fn_ck_err(ptr @.str10946, ptr %t366, ptr %t371) br label %ifend78 ifend78: br label %ret @@ -143934,18 +144163,18 @@ then2: %t26 = load ptr, ptr %t0 %t27 = getelementptr inbounds %Cmp_Node, ptr %t26, i32 0, i32 1 %t28 = load ptr, ptr %t27 - %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str10939) + %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str10950) %t30 = load ptr, ptr %t0 %t31 = getelementptr inbounds %Cmp_Node, ptr %t30, i32 0, i32 3 %t32 = load ptr, ptr %t31 %t33 = call ptr @lp_str_concat(ptr %t29, ptr %t32) - %t34 = call ptr @lp_str_concat(ptr %t33, ptr @.str10940) + %t34 = call ptr @lp_str_concat(ptr %t33, ptr @.str10951) %t35 = load ptr, ptr %t0 %t36 = getelementptr inbounds %Cmp_Node, ptr %t35, i32 0, i32 3 %t37 = load ptr, ptr %t36 %t38 = call ptr @lp_str_concat(ptr %t34, ptr %t37) - %t39 = call ptr @lp_str_concat(ptr %t38, ptr @.str10941) - call void @fn_ck_err(ptr @.str10938, ptr %t25, ptr %t39) + %t39 = call ptr @lp_str_concat(ptr %t38, ptr @.str10952) + call void @fn_ck_err(ptr @.str10949, ptr %t25, ptr %t39) br label %ifend4 ifend4: %t41 = load ptr, ptr %t0 @@ -144015,7 +144244,7 @@ wbody1: br i1 %t21, label %ixok3, label %ixbad4 ixbad4: %t22 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str10942, i32 %t16, i32 %t20) + call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str10953, i32 %t16, i32 %t20) call void @exit(i32 1) unreachable ixok3: @@ -144084,7 +144313,7 @@ then12: br i1 %t70, label %ixok15, label %ixbad16 ixbad16: %t71 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t71, ptr @.fmt_bounds, ptr @.str10943, i32 %t65, i32 %t69) + call i32 (ptr, ptr, ...) @fprintf(ptr %t71, ptr @.fmt_bounds, ptr @.str10954, i32 %t65, i32 %t69) call void @exit(i32 1) unreachable ixok15: @@ -144127,28 +144356,28 @@ then22: %t99 = load ptr, ptr %t1 %t100 = getelementptr inbounds %Cmp_Node, ptr %t99, i32 0, i32 1 %t101 = load ptr, ptr %t100 - %t102 = call ptr @lp_str_concat(ptr %t101, ptr @.str10945) + %t102 = call ptr @lp_str_concat(ptr %t101, ptr @.str10956) %t103 = load ptr, ptr %t25 %t104 = getelementptr inbounds %Cmp_Node, ptr %t103, i32 0, i32 3 %t105 = load ptr, ptr %t104 %t106 = call ptr @lp_str_concat(ptr %t102, ptr %t105) - %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str10946) + %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str10957) %t108 = load ptr, ptr %t25 %t109 = getelementptr inbounds %Cmp_Node, ptr %t108, i32 0, i32 1 %t110 = load ptr, ptr %t109 %t111 = call ptr @lp_str_concat(ptr %t107, ptr %t110) - %t112 = call ptr @lp_str_concat(ptr %t111, ptr @.str10947) + %t112 = call ptr @lp_str_concat(ptr %t111, ptr @.str10958) %t113 = load ptr, ptr %t25 %t114 = getelementptr inbounds %Cmp_Node, ptr %t113, i32 0, i32 3 %t115 = load ptr, ptr %t114 %t116 = call ptr @lp_str_concat(ptr %t112, ptr %t115) - %t117 = call ptr @lp_str_concat(ptr %t116, ptr @.str10948) + %t117 = call ptr @lp_str_concat(ptr %t116, ptr @.str10959) %t118 = load ptr, ptr %t74 %t119 = getelementptr inbounds %Cmp_Node, ptr %t118, i32 0, i32 1 %t120 = load ptr, ptr %t119 %t121 = call ptr @lp_str_concat(ptr %t117, ptr %t120) - %t122 = call ptr @lp_str_concat(ptr %t121, ptr @.str10949) - call void @fn_ck_err(ptr @.str10944, ptr %t98, ptr %t122) + %t122 = call ptr @lp_str_concat(ptr %t121, ptr @.str10960) + call void @fn_ck_err(ptr @.str10955, ptr %t98, ptr %t122) br label %ifend24 ifend24: br label %ifend19 @@ -144207,7 +144436,7 @@ wbody1: br i1 %t19, label %ixok3, label %ixbad4 ixbad4: %t20 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str10950, i32 %t14, i32 %t18) + call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str10961, i32 %t14, i32 %t18) call void @exit(i32 1) unreachable ixok3: @@ -144277,7 +144506,7 @@ sc13: br i1 %t70, label %ixok15, label %ixbad16 ixbad16: %t71 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t71, ptr @.fmt_bounds, ptr @.str10951, i32 %t65, i32 %t69) + call i32 (ptr, ptr, ...) @fprintf(ptr %t71, ptr @.fmt_bounds, ptr @.str10962, i32 %t65, i32 %t69) call void @exit(i32 1) unreachable ixok15: @@ -144319,7 +144548,7 @@ then19: br i1 %t95, label %ixok22, label %ixbad23 ixbad23: %t96 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t96, ptr @.fmt_bounds, ptr @.str10952, i32 %t90, i32 %t94) + call i32 (ptr, ptr, ...) @fprintf(ptr %t96, ptr @.fmt_bounds, ptr @.str10963, i32 %t90, i32 %t94) call void @exit(i32 1) unreachable ixok22: @@ -144493,7 +144722,7 @@ wcond0: br i1 %t13, label %ixok3, label %ixbad4 ixbad4: %t14 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t14, ptr @.fmt_bounds, ptr @.str10953, i32 %t8, i32 %t12) + call i32 (ptr, ptr, ...) @fprintf(ptr %t14, ptr @.fmt_bounds, ptr @.str10964, i32 %t8, i32 %t12) call void @exit(i32 1) unreachable ixok3: @@ -144514,7 +144743,7 @@ wbody1: br i1 %t26, label %ixok5, label %ixbad6 ixbad6: %t27 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t27, ptr @.fmt_bounds, ptr @.str10954, i32 %t21, i32 %t25) + call i32 (ptr, ptr, ...) @fprintf(ptr %t27, ptr @.fmt_bounds, ptr @.str10965, i32 %t21, i32 %t25) call void @exit(i32 1) unreachable ixok5: @@ -144543,7 +144772,7 @@ wend2: br i1 %t42, label %ixok10, label %ixbad11 ixbad11: %t43 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str10955, i32 %t37, i32 %t41) + call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str10966, i32 %t37, i32 %t41) call void @exit(i32 1) unreachable ixok10: @@ -144560,7 +144789,7 @@ ixok10: br i1 %t52, label %ixok12, label %ixbad13 ixbad13: %t53 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t53, ptr @.fmt_bounds, ptr @.str10956, i32 %t47, i32 %t51) + call i32 (ptr, ptr, ...) @fprintf(ptr %t53, ptr @.fmt_bounds, ptr @.str10967, i32 %t47, i32 %t51) call void @exit(i32 1) unreachable ixok12: @@ -144606,7 +144835,7 @@ wcond3: br i1 %t16, label %ixok6, label %ixbad7 ixbad7: %t17 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str10957, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str10968, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok6: @@ -144627,7 +144856,7 @@ wbody4: br i1 %t29, label %ixok8, label %ixbad9 ixbad9: %t30 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str10958, i32 %t24, i32 %t28) + call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str10969, i32 %t24, i32 %t28) call void @exit(i32 1) unreachable ixok8: @@ -144648,7 +144877,7 @@ then10: br i1 %t42, label %ixok13, label %ixbad14 ixbad14: %t43 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str10959, i32 %t37, i32 %t41) + call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str10970, i32 %t37, i32 %t41) call void @exit(i32 1) unreachable ixok13: @@ -144712,7 +144941,7 @@ wbody1: br i1 %t24, label %ixok3, label %ixbad4 ixbad4: %t25 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str10960, i32 %t19, i32 %t23) + call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str10971, i32 %t19, i32 %t23) call void @exit(i32 1) unreachable ixok3: @@ -144939,7 +145168,7 @@ entry: br i1 %t5, label %scend1, label %sc0 sc0: %t7 = load ptr, ptr %t0 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str10961) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str10972) %t9 = icmp ne i32 %t8, 0 %t10 = zext i1 %t9 to i32 store i32 %t10, ptr %t1 @@ -144964,14 +145193,14 @@ entry: %t38 = alloca ptr store ptr %arg_t, ptr %t0 %t5 = load ptr, ptr %t0 - %t6 = call i32 @lp_str_eq(ptr %t5, ptr @.str10962) + %t6 = call i32 @lp_str_eq(ptr %t5, ptr @.str10973) %t7 = icmp ne i32 %t6, 0 %t8 = zext i1 %t7 to i32 store i32 %t8, ptr %t4 br i1 %t7, label %scend1, label %sc0 sc0: %t9 = load ptr, ptr %t0 - %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str10963) + %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str10974) %t11 = icmp ne i32 %t10, 0 %t12 = zext i1 %t11 to i32 store i32 %t12, ptr %t4 @@ -144984,7 +145213,7 @@ scend1: br i1 %t14, label %scend3, label %sc2 sc2: %t16 = load ptr, ptr %t0 - %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str10964) + %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str10975) %t18 = icmp ne i32 %t17, 0 %t19 = zext i1 %t18 to i32 store i32 %t19, ptr %t3 @@ -144997,7 +145226,7 @@ scend3: br i1 %t21, label %scend5, label %sc4 sc4: %t23 = load ptr, ptr %t0 - %t24 = call i32 @lp_str_eq(ptr %t23, ptr @.str10965) + %t24 = call i32 @lp_str_eq(ptr %t23, ptr @.str10976) %t25 = icmp ne i32 %t24, 0 %t26 = zext i1 %t25 to i32 store i32 %t26, ptr %t2 @@ -145010,7 +145239,7 @@ scend5: br i1 %t28, label %scend7, label %sc6 sc6: %t30 = load ptr, ptr %t0 - %t31 = call i32 @lp_str_eq(ptr %t30, ptr @.str10966) + %t31 = call i32 @lp_str_eq(ptr %t30, ptr @.str10977) %t32 = icmp ne i32 %t31, 0 %t33 = zext i1 %t32 to i32 store i32 %t33, ptr %t1 @@ -145203,12 +145432,12 @@ scend17: br i1 %t93, label %then18, label %ifend20 then18: %t94 = load ptr, ptr %t3 - %t95 = call ptr @lp_str_concat(ptr @.str10967, ptr %t94) + %t95 = call ptr @lp_str_concat(ptr @.str10978, ptr %t94) store ptr %t95, ptr %retval br label %ret ifend20: %t96 = load ptr, ptr %t3 - %t97 = call ptr @lp_str_concat(ptr @.str10968, ptr %t96) + %t97 = call ptr @lp_str_concat(ptr @.str10979, ptr %t96) store ptr %t97, ptr %retval br label %ret ret: @@ -145223,14 +145452,14 @@ entry: %t1 = alloca i32 store ptr %arg_t, ptr %t0 %t2 = load ptr, ptr %t0 - %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str10969) + %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str10980) %t4 = icmp ne i32 %t3, 0 %t5 = zext i1 %t4 to i32 store i32 %t5, ptr %t1 br i1 %t4, label %scend1, label %sc0 sc0: %t6 = load ptr, ptr %t0 - %t7 = call i32 @lp_str_eq(ptr %t6, ptr @.str10970) + %t7 = call i32 @lp_str_eq(ptr %t6, ptr @.str10981) %t8 = icmp ne i32 %t7, 0 %t9 = zext i1 %t8 to i32 store i32 %t9, ptr %t1 @@ -145272,7 +145501,7 @@ scend1: br i1 %t12, label %scend3, label %sc2 sc2: %t14 = load ptr, ptr %t0 - %t15 = call i32 @lp_str_eq(ptr %t14, ptr @.str10971) + %t15 = call i32 @lp_str_eq(ptr %t14, ptr @.str10982) %t16 = icmp ne i32 %t15, 0 %t17 = zext i1 %t16 to i32 store i32 %t17, ptr %t1 @@ -145318,7 +145547,7 @@ entry: br i1 %t6, label %scend1, label %sc0 sc0: %t8 = load ptr, ptr %t0 - %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str10972) + %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str10983) %t10 = icmp ne i32 %t9, 0 %t11 = zext i1 %t10 to i32 store i32 %t11, ptr %t3 @@ -145331,7 +145560,7 @@ scend1: br i1 %t13, label %scend3, label %sc2 sc2: %t15 = load ptr, ptr %t0 - %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str10973) + %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str10984) %t17 = icmp ne i32 %t16, 0 %t18 = zext i1 %t17 to i32 store i32 %t18, ptr %t2 @@ -145344,7 +145573,7 @@ scend3: br i1 %t20, label %scend5, label %sc4 sc4: %t22 = load ptr, ptr %t0 - %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str10974) + %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str10985) %t24 = icmp ne i32 %t23, 0 %t25 = zext i1 %t24 to i32 store i32 %t25, ptr %t1 @@ -145420,7 +145649,7 @@ sc8: %t30 = load ptr, ptr %t0 %t31 = getelementptr inbounds %Cmp_Node, ptr %t30, i32 0, i32 1 %t32 = load ptr, ptr %t31 - %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str10975) + %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str10986) %t34 = icmp ne i32 %t33, 0 %t35 = zext i1 %t34 to i32 store i32 %t35, ptr %t22 @@ -145454,26 +145683,26 @@ entry: %t3 = icmp ne i32 %t2, 0 br i1 %t3, label %then0, label %ifend2 then0: - store ptr @.str10976, ptr %retval + store ptr @.str10987, ptr %retval br label %ret ifend2: %t4 = load ptr, ptr %t0 - %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str10977) + %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str10988) %t6 = icmp ne i32 %t5, 0 br i1 %t6, label %then3, label %ifend5 then3: - store ptr @.str10978, ptr %retval + store ptr @.str10989, ptr %retval br label %ret ifend5: %t7 = load ptr, ptr %t0 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str10979) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str10990) %t9 = icmp ne i32 %t8, 0 br i1 %t9, label %then6, label %ifend8 then6: - store ptr @.str10980, ptr %retval + store ptr @.str10991, ptr %retval br label %ret ifend8: - store ptr @.str10981, ptr %retval + store ptr @.str10992, ptr %retval br label %ret ret: %t10 = load ptr, ptr %retval @@ -145542,7 +145771,7 @@ ifend4: br i1 %t18, label %scend6, label %sc5 sc5: %t20 = load ptr, ptr %t0 - %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str10982) + %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str10993) %t22 = icmp ne i32 %t21, 0 %t23 = zext i1 %t22 to i32 store i32 %t23, ptr %t14 @@ -145556,7 +145785,7 @@ then7: br label %ret ifend9: %t26 = load ptr, ptr %t1 - %t27 = call i32 @lp_str_eq(ptr %t26, ptr @.str10983) + %t27 = call i32 @lp_str_eq(ptr %t26, ptr @.str10994) %t28 = icmp ne i32 %t27, 0 br i1 %t28, label %then10, label %ifend12 then10: @@ -145568,18 +145797,18 @@ then13: store ptr null, ptr %retval br label %ret ifend15: - store ptr @.str10984, ptr %retval + store ptr @.str10995, ptr %retval br label %ret ifend12: %t33 = load ptr, ptr %t0 - %t34 = call i32 @lp_str_eq(ptr %t33, ptr @.str10985) + %t34 = call i32 @lp_str_eq(ptr %t33, ptr @.str10996) %t35 = icmp ne i32 %t34, 0 %t36 = zext i1 %t35 to i32 store i32 %t36, ptr %t32 br i1 %t35, label %scend17, label %sc16 sc16: %t37 = load ptr, ptr %t1 - %t38 = call i32 @lp_str_eq(ptr %t37, ptr @.str10986) + %t38 = call i32 @lp_str_eq(ptr %t37, ptr @.str10997) %t39 = icmp ne i32 %t38, 0 %t40 = zext i1 %t39 to i32 store i32 %t40, ptr %t32 @@ -145589,7 +145818,7 @@ scend17: %t42 = icmp ne i32 %t41, 0 br i1 %t42, label %then18, label %ifend20 then18: - store ptr @.str10987, ptr %retval + store ptr @.str10998, ptr %retval br label %ret ifend20: %t45 = load ptr, ptr %t2 @@ -145600,7 +145829,7 @@ ifend20: br i1 %t47, label %sc21, label %scend22 sc21: %t50 = load ptr, ptr %t1 - %t51 = call i32 @lp_str_eq(ptr %t50, ptr @.str10988) + %t51 = call i32 @lp_str_eq(ptr %t50, ptr @.str10999) %t52 = icmp ne i32 %t51, 0 %t53 = zext i1 %t52 to i32 store i32 %t53, ptr %t49 @@ -145626,7 +145855,7 @@ scend22: br i1 %t62, label %sc25, label %scend26 sc25: %t65 = load ptr, ptr %t0 - %t66 = call i32 @lp_str_eq(ptr %t65, ptr @.str10989) + %t66 = call i32 @lp_str_eq(ptr %t65, ptr @.str11000) %t67 = icmp ne i32 %t66, 0 %t68 = zext i1 %t67 to i32 store i32 %t68, ptr %t64 @@ -145670,10 +145899,10 @@ ifend37: %t86 = icmp ne i32 %t85, 0 br i1 %t86, label %then38, label %ifend40 then38: - store ptr @.str10990, ptr %retval + store ptr @.str11001, ptr %retval br label %ret ifend40: - store ptr @.str10991, ptr %retval + store ptr @.str11002, ptr %retval br label %ret ifend34: %t87 = load ptr, ptr %t0 @@ -145703,18 +145932,18 @@ then46: br label %ret ifend48: %t101 = load ptr, ptr %t1 - %t102 = call i32 @lp_str_eq(ptr %t101, ptr @.str10992) + %t102 = call i32 @lp_str_eq(ptr %t101, ptr @.str11003) %t103 = icmp ne i32 %t102, 0 br i1 %t103, label %then49, label %ifend51 then49: - store ptr @.str10993, ptr %retval + store ptr @.str11004, ptr %retval br label %ret ifend51: - store ptr @.str10994, ptr %retval + store ptr @.str11005, ptr %retval br label %ret ifend43: %t104 = load ptr, ptr %t0 - %t105 = call i32 @lp_str_eq(ptr %t104, ptr @.str10995) + %t105 = call i32 @lp_str_eq(ptr %t104, ptr @.str11006) %t106 = icmp ne i32 %t105, 0 br i1 %t106, label %then52, label %ifend54 then52: @@ -145752,10 +145981,10 @@ ifend62: %t123 = icmp ne i32 %t122, 0 br i1 %t123, label %then63, label %ifend65 then63: - store ptr @.str10996, ptr %retval + store ptr @.str11007, ptr %retval br label %ret ifend65: - store ptr @.str10997, ptr %retval + store ptr @.str11008, ptr %retval br label %ret ifend54: %t124 = load ptr, ptr %t1 @@ -145763,11 +145992,11 @@ ifend54: %t126 = icmp ne i32 %t125, 0 br i1 %t126, label %then66, label %ifend68 then66: - store ptr @.str10998, ptr %retval + store ptr @.str11009, ptr %retval br label %ret ifend68: %t128 = load ptr, ptr %t0 - %t129 = call i32 @lp_str_eq(ptr %t128, ptr @.str10999) + %t129 = call i32 @lp_str_eq(ptr %t128, ptr @.str11010) %t130 = icmp ne i32 %t129, 0 %t131 = zext i1 %t130 to i32 store i32 %t131, ptr %t127 @@ -145791,11 +146020,11 @@ then74: store ptr null, ptr %retval br label %ret ifend76: - store ptr @.str11000, ptr %retval + store ptr @.str11011, ptr %retval br label %ret ifend73: %t141 = load ptr, ptr %t1 - %t142 = call i32 @lp_str_eq(ptr %t141, ptr @.str11001) + %t142 = call i32 @lp_str_eq(ptr %t141, ptr @.str11012) %t143 = icmp ne i32 %t142, 0 %t144 = zext i1 %t143 to i32 store i32 %t144, ptr %t140 @@ -145812,11 +146041,11 @@ scend78: %t150 = icmp ne i32 %t149, 0 br i1 %t150, label %then79, label %ifend81 then79: - store ptr @.str11002, ptr %retval + store ptr @.str11013, ptr %retval br label %ret ifend81: %t152 = load ptr, ptr %t0 - %t153 = call i32 @lp_str_eq(ptr %t152, ptr @.str11003) + %t153 = call i32 @lp_str_eq(ptr %t152, ptr @.str11014) %t154 = icmp ne i32 %t153, 0 %t155 = zext i1 %t154 to i32 store i32 %t155, ptr %t151 @@ -145840,11 +146069,11 @@ then87: store ptr null, ptr %retval br label %ret ifend89: - store ptr @.str11004, ptr %retval + store ptr @.str11015, ptr %retval br label %ret ifend86: %t165 = load ptr, ptr %t1 - %t166 = call i32 @lp_str_eq(ptr %t165, ptr @.str11005) + %t166 = call i32 @lp_str_eq(ptr %t165, ptr @.str11016) %t167 = icmp ne i32 %t166, 0 %t168 = zext i1 %t167 to i32 store i32 %t168, ptr %t164 @@ -145861,18 +146090,18 @@ scend91: %t174 = icmp ne i32 %t173, 0 br i1 %t174, label %then92, label %ifend94 then92: - store ptr @.str11006, ptr %retval + store ptr @.str11017, ptr %retval br label %ret ifend94: %t176 = load ptr, ptr %t0 - %t177 = call i32 @lp_str_eq(ptr %t176, ptr @.str11007) + %t177 = call i32 @lp_str_eq(ptr %t176, ptr @.str11018) %t178 = icmp ne i32 %t177, 0 %t179 = zext i1 %t178 to i32 store i32 %t179, ptr %t175 br i1 %t178, label %scend96, label %sc95 sc95: %t180 = load ptr, ptr %t1 - %t181 = call i32 @lp_str_eq(ptr %t180, ptr @.str11008) + %t181 = call i32 @lp_str_eq(ptr %t180, ptr @.str11019) %t182 = icmp ne i32 %t181, 0 %t183 = zext i1 %t182 to i32 store i32 %t183, ptr %t175 @@ -145886,11 +146115,11 @@ then97: br label %ret ifend99: %t186 = load ptr, ptr %t0 - %t187 = call i32 @lp_str_eq(ptr %t186, ptr @.str11009) + %t187 = call i32 @lp_str_eq(ptr %t186, ptr @.str11020) %t188 = icmp ne i32 %t187, 0 br i1 %t188, label %then100, label %ifend102 then100: - store ptr @.str11010, ptr %retval + store ptr @.str11021, ptr %retval br label %ret ifend102: %t190 = load ptr, ptr %t0 @@ -145911,7 +146140,7 @@ scend104: %t199 = icmp ne i32 %t198, 0 br i1 %t199, label %then105, label %ifend107 then105: - store ptr @.str11011, ptr %retval + store ptr @.str11022, ptr %retval br label %ret ifend107: %t201 = load ptr, ptr %t0 @@ -145922,7 +146151,7 @@ ifend107: br i1 %t203, label %sc108, label %scend109 sc108: %t206 = load ptr, ptr %t1 - %t207 = call i32 @lp_str_eq(ptr %t206, ptr @.str11012) + %t207 = call i32 @lp_str_eq(ptr %t206, ptr @.str11023) %t208 = icmp ne i32 %t207, 0 %t209 = zext i1 %t208 to i32 store i32 %t209, ptr %t205 @@ -145945,18 +146174,18 @@ scend109: %t218 = icmp ne i32 %t217, 0 br i1 %t218, label %then112, label %ifend114 then112: - store ptr @.str11013, ptr %retval + store ptr @.str11024, ptr %retval br label %ret ifend114: %t220 = load ptr, ptr %t0 - %t221 = call i32 @lp_str_eq(ptr %t220, ptr @.str11014) + %t221 = call i32 @lp_str_eq(ptr %t220, ptr @.str11025) %t222 = icmp ne i32 %t221, 0 %t223 = zext i1 %t222 to i32 store i32 %t223, ptr %t219 br i1 %t222, label %scend116, label %sc115 sc115: %t224 = load ptr, ptr %t1 - %t225 = call i32 @lp_str_eq(ptr %t224, ptr @.str11015) + %t225 = call i32 @lp_str_eq(ptr %t224, ptr @.str11026) %t226 = icmp ne i32 %t225, 0 %t227 = zext i1 %t226 to i32 store i32 %t227, ptr %t219 @@ -145987,7 +146216,7 @@ scend121: %t240 = icmp ne i32 %t239, 0 br i1 %t240, label %then122, label %ifend124 then122: - store ptr @.str11016, ptr %retval + store ptr @.str11027, ptr %retval br label %ret ifend124: %t242 = load ptr, ptr %t0 @@ -146008,11 +146237,11 @@ scend126: %t251 = icmp ne i32 %t250, 0 br i1 %t251, label %then127, label %ifend129 then127: - store ptr @.str11017, ptr %retval + store ptr @.str11028, ptr %retval br label %ret ifend129: %t253 = load ptr, ptr %t1 - %t254 = call i32 @lp_str_eq(ptr %t253, ptr @.str11018) + %t254 = call i32 @lp_str_eq(ptr %t253, ptr @.str11029) %t255 = icmp ne i32 %t254, 0 %t256 = zext i1 %t255 to i32 store i32 %t256, ptr %t252 @@ -146055,7 +146284,7 @@ scend131: %t278 = icmp ne i32 %t277, 0 br i1 %t278, label %then136, label %ifend138 then136: - store ptr @.str11019, ptr %retval + store ptr @.str11030, ptr %retval br label %ret ifend138: store ptr null, ptr %retval @@ -146076,7 +146305,7 @@ entry: %t2 = load ptr, ptr %t1 store ptr %t2, ptr %t3 %t5 = load ptr, ptr %t3 - %t6 = call i32 @lp_str_eq(ptr %t5, ptr @.str11020) + %t6 = call i32 @lp_str_eq(ptr %t5, ptr @.str11031) %t7 = icmp ne i32 %t6, 0 %t8 = zext i1 %t7 to i32 store i32 %t8, ptr %t4 @@ -146094,7 +146323,7 @@ scend1: %t15 = icmp ne i32 %t14, 0 br i1 %t15, label %then2, label %ifend4 then2: - store ptr @.str11021, ptr %t3 + store ptr @.str11032, ptr %t3 br label %ifend4 ifend4: %t16 = load i32, ptr @g_ck_top @@ -146116,7 +146345,7 @@ then5: br i1 %t29, label %ixok8, label %ixbad9 ixbad9: %t30 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str11022, i32 %t24, i32 %t28) + call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str11033, i32 %t24, i32 %t28) call void @exit(i32 1) unreachable ixok8: @@ -146133,7 +146362,7 @@ ixok8: br i1 %t39, label %ixok10, label %ixbad11 ixbad11: %t40 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11023, i32 %t34, i32 %t38) + call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11034, i32 %t34, i32 %t38) call void @exit(i32 1) unreachable ixok10: @@ -146258,7 +146487,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11024, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11035, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -146296,7 +146525,7 @@ entry: br i1 %t3, label %then0, label %ifend2 then0: store i32 0, ptr @g_ck_report - %t4 = call ptr @getenv(ptr @.str11025) + %t4 = call ptr @getenv(ptr @.str11036) %t5 = icmp ne ptr %t4, null %t6 = zext i1 %t5 to i32 %t7 = icmp ne i32 %t6, 0 @@ -146328,7 +146557,7 @@ entry: store ptr %arg_cat, ptr %t0 store ptr %arg_n, ptr %t1 store ptr %arg_msg, ptr %t2 - store ptr @.str11026, ptr %t3 + store ptr @.str11037, ptr %t3 store i32 0, ptr %t4 %t5 = load ptr, ptr %t1 %t6 = icmp ne ptr %t5, null @@ -146357,32 +146586,32 @@ ifend5: br label %ifend2 ifend2: %t21 = load ptr, ptr %t3 - %t22 = call ptr @lp_str_concat(ptr %t21, ptr @.str11027) + %t22 = call ptr @lp_str_concat(ptr %t21, ptr @.str11038) %t23 = load i32, ptr %t4 %t24 = call ptr @fn_itoa(i32 %t23) %t25 = call ptr @lp_str_concat(ptr %t22, ptr %t24) - %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str11028) + %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str11039) %t27 = load ptr, ptr %t2 %t28 = call ptr @lp_str_concat(ptr %t26, ptr %t27) - %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str11029) + %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str11040) store ptr %t29, ptr %t30 %t31 = call i32 @fn_ck_reporting() %t32 = icmp ne i32 %t31, 0 br i1 %t32, label %then6, label %ifend8 then6: %t33 = load ptr, ptr %t0 - %t34 = call ptr @lp_str_concat(ptr @.str11030, ptr %t33) - %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str11031) + %t34 = call ptr @lp_str_concat(ptr @.str11041, ptr %t33) + %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str11042) %t36 = load ptr, ptr %t3 %t37 = call ptr @lp_str_concat(ptr %t35, ptr %t36) - %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str11032) + %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str11043) %t39 = load i32, ptr %t4 %t40 = call ptr @fn_itoa(i32 %t39) %t41 = call ptr @lp_str_concat(ptr %t38, ptr %t40) - %t42 = call ptr @lp_str_concat(ptr %t41, ptr @.str11033) + %t42 = call ptr @lp_str_concat(ptr %t41, ptr @.str11044) %t43 = load ptr, ptr %t2 %t44 = call ptr @lp_str_concat(ptr %t42, ptr %t43) - %t45 = call ptr @lp_str_concat(ptr %t44, ptr @.str11034) + %t45 = call ptr @lp_str_concat(ptr %t44, ptr @.str11045) store ptr %t45, ptr %t30 br label %ifend8 ifend8: @@ -146459,14 +146688,14 @@ scend3: br i1 %t30, label %sc4, label %scend5 sc4: %t34 = load ptr, ptr %t0 - %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str11035) + %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str11046) %t36 = icmp ne i32 %t35, 0 %t37 = zext i1 %t36 to i32 store i32 %t37, ptr %t33 br i1 %t36, label %scend7, label %sc6 sc6: %t38 = load ptr, ptr %t0 - %t39 = call i32 @lp_str_eq(ptr %t38, ptr @.str11036) + %t39 = call i32 @lp_str_eq(ptr %t38, ptr @.str11047) %t40 = icmp ne i32 %t39, 0 %t41 = zext i1 %t40 to i32 store i32 %t41, ptr %t33 @@ -146479,7 +146708,7 @@ scend7: br i1 %t43, label %scend9, label %sc8 sc8: %t45 = load ptr, ptr %t0 - %t46 = call i32 @lp_str_eq(ptr %t45, ptr @.str11037) + %t46 = call i32 @lp_str_eq(ptr %t45, ptr @.str11048) %t47 = icmp ne i32 %t46, 0 %t48 = zext i1 %t47 to i32 store i32 %t48, ptr %t32 @@ -146497,17 +146726,17 @@ scend5: then10: %t54 = load ptr, ptr %t2 %t55 = load ptr, ptr %t3 - %t56 = call ptr @lp_str_concat(ptr %t55, ptr @.str11039) + %t56 = call ptr @lp_str_concat(ptr %t55, ptr @.str11050) %t57 = load ptr, ptr %t0 %t58 = call ptr @fn_ck_a(ptr %t57) %t59 = call ptr @lp_str_concat(ptr %t56, ptr %t58) - %t60 = call ptr @lp_str_concat(ptr %t59, ptr @.str11040) + %t60 = call ptr @lp_str_concat(ptr %t59, ptr @.str11051) %t61 = load ptr, ptr %t2 %t62 = getelementptr inbounds %Cmp_Node, ptr %t61, i32 0, i32 1 %t63 = load ptr, ptr %t62 %t64 = call ptr @lp_str_concat(ptr %t60, ptr %t63) - %t65 = call ptr @lp_str_concat(ptr %t64, ptr @.str11041) - call void @fn_ck_err(ptr @.str11038, ptr %t54, ptr %t65) + %t65 = call ptr @lp_str_concat(ptr %t64, ptr @.str11052) + call void @fn_ck_err(ptr @.str11049, ptr %t54, ptr %t65) br label %ret ifend12: %t66 = load ptr, ptr %t0 @@ -146524,45 +146753,45 @@ then13: br label %ret ifend15: %t75 = load ptr, ptr %t70 - %t76 = call i32 @lp_str_eq(ptr %t75, ptr @.str11042) + %t76 = call i32 @lp_str_eq(ptr %t75, ptr @.str11053) %t77 = icmp ne i32 %t76, 0 br i1 %t77, label %then16, label %ifend18 then16: %t78 = load ptr, ptr %t70 %t79 = load ptr, ptr %t2 %t80 = load ptr, ptr %t3 - %t81 = call ptr @lp_str_concat(ptr %t80, ptr @.str11043) + %t81 = call ptr @lp_str_concat(ptr %t80, ptr @.str11054) %t82 = load ptr, ptr %t1 %t83 = call ptr @fn_ck_a(ptr %t82) %t84 = call ptr @lp_str_concat(ptr %t81, ptr %t83) - %t85 = call ptr @lp_str_concat(ptr %t84, ptr @.str11044) + %t85 = call ptr @lp_str_concat(ptr %t84, ptr @.str11055) call void @fn_ck_err(ptr %t78, ptr %t79, ptr %t85) br label %ret ifend18: %t86 = load ptr, ptr %t70 - %t87 = call i32 @lp_str_eq(ptr %t86, ptr @.str11045) + %t87 = call i32 @lp_str_eq(ptr %t86, ptr @.str11056) %t88 = icmp ne i32 %t87, 0 br i1 %t88, label %then19, label %ifend21 then19: %t89 = load ptr, ptr %t70 %t90 = load ptr, ptr %t2 %t91 = load ptr, ptr %t3 - %t92 = call ptr @lp_str_concat(ptr %t91, ptr @.str11046) + %t92 = call ptr @lp_str_concat(ptr %t91, ptr @.str11057) %t93 = load ptr, ptr %t0 %t94 = call ptr @fn_ck_a(ptr %t93) %t95 = call ptr @lp_str_concat(ptr %t92, ptr %t94) - %t96 = call ptr @lp_str_concat(ptr %t95, ptr @.str11047) + %t96 = call ptr @lp_str_concat(ptr %t95, ptr @.str11058) call void @fn_ck_err(ptr %t89, ptr %t90, ptr %t96) br label %ret ifend21: %t97 = load ptr, ptr %t70 %t98 = load ptr, ptr %t2 %t99 = load ptr, ptr %t3 - %t100 = call ptr @lp_str_concat(ptr %t99, ptr @.str11048) + %t100 = call ptr @lp_str_concat(ptr %t99, ptr @.str11059) %t101 = load ptr, ptr %t0 %t102 = call ptr @fn_ck_a(ptr %t101) %t103 = call ptr @lp_str_concat(ptr %t100, ptr %t102) - %t104 = call ptr @lp_str_concat(ptr %t103, ptr @.str11049) + %t104 = call ptr @lp_str_concat(ptr %t103, ptr @.str11060) %t105 = load ptr, ptr %t1 %t106 = call ptr @fn_ck_a(ptr %t105) %t107 = call ptr @lp_str_concat(ptr %t104, ptr %t106) @@ -146606,7 +146835,7 @@ wbody1: br i1 %t20, label %ixok3, label %ixbad4 ixbad4: %t21 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11050, i32 %t15, i32 %t19) + call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11061, i32 %t15, i32 %t19) call void @exit(i32 1) unreachable ixok3: @@ -146631,7 +146860,7 @@ then5: br i1 %t37, label %ixok8, label %ixbad9 ixbad9: %t38 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t38, ptr @.fmt_bounds, ptr @.str11051, i32 %t32, i32 %t36) + call i32 (ptr, ptr, ...) @fprintf(ptr %t38, ptr @.fmt_bounds, ptr @.str11062, i32 %t32, i32 %t36) call void @exit(i32 1) unreachable ixok8: @@ -146705,7 +146934,7 @@ wbody4: br i1 %t32, label %ixok6, label %ixbad7 ixbad7: %t33 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str11052, i32 %t27, i32 %t31) + call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str11063, i32 %t27, i32 %t31) call void @exit(i32 1) unreachable ixok6: @@ -146844,7 +147073,7 @@ entry: %t4 = icmp ne i32 %t3, 0 br i1 %t4, label %then0, label %ifend2 then0: - store ptr @.str11053, ptr %retval + store ptr @.str11064, ptr %retval br label %ret ifend2: %t5 = load ptr, ptr @g_ck_expect @@ -146868,10 +147097,10 @@ then3: %t20 = icmp ne i32 %t19, 0 br i1 %t20, label %then6, label %ifend8 then6: - store ptr @.str11054, ptr %retval + store ptr @.str11065, ptr %retval br label %ret ifend8: - store ptr @.str11055, ptr %retval + store ptr @.str11066, ptr %retval br label %ret ifend5: %t21 = load i32, ptr %t10 @@ -146887,10 +147116,10 @@ then9: %t29 = icmp ne i32 %t28, 0 br i1 %t29, label %then12, label %ifend14 then12: - store ptr @.str11056, ptr %retval + store ptr @.str11067, ptr %retval br label %ret ifend14: - store ptr @.str11057, ptr %retval + store ptr @.str11068, ptr %retval br label %ret ifend11: %t30 = load i32, ptr %t10 @@ -146899,7 +147128,7 @@ ifend11: %t33 = icmp ne i32 %t32, 0 br i1 %t33, label %then15, label %ifend17 then15: - store ptr @.str11058, ptr %retval + store ptr @.str11069, ptr %retval br label %ret ifend17: %t34 = load i32, ptr %t10 @@ -146910,7 +147139,7 @@ ifend17: then18: %t38 = load ptr, ptr %t0 call void @fn_ck_walk(ptr %t38) - store ptr @.str11059, ptr %retval + store ptr @.str11070, ptr %retval br label %ret ifend20: %t39 = load i32, ptr %t10 @@ -146919,7 +147148,7 @@ ifend20: %t42 = icmp ne i32 %t41, 0 br i1 %t42, label %then21, label %ifend23 then21: - store ptr @.str11060, ptr %retval + store ptr @.str11071, ptr %retval br label %ret ifend23: %t43 = load i32, ptr %t10 @@ -146928,7 +147157,7 @@ ifend23: %t46 = icmp ne i32 %t45, 0 br i1 %t46, label %then24, label %ifend26 then24: - store ptr @.str11061, ptr %retval + store ptr @.str11072, ptr %retval br label %ret ifend26: %t47 = load i32, ptr %t10 @@ -146983,16 +147212,16 @@ then36: %t81 = load ptr, ptr %t0 %t82 = getelementptr inbounds %Cmp_Node, ptr %t81, i32 0, i32 1 %t83 = load ptr, ptr %t82 - %t84 = call ptr @lp_str_concat(ptr @.str11063, ptr %t83) - %t85 = call ptr @lp_str_concat(ptr %t84, ptr @.str11064) + %t84 = call ptr @lp_str_concat(ptr @.str11074, ptr %t83) + %t85 = call ptr @lp_str_concat(ptr %t84, ptr @.str11075) %t86 = load ptr, ptr %t0 %t87 = getelementptr inbounds %Cmp_Node, ptr %t86, i32 0, i32 1 %t88 = load ptr, ptr %t87 %t89 = call ptr @lp_str_concat(ptr %t85, ptr %t88) - call void @fn_ck_err(ptr @.str11062, ptr %t80, ptr %t89) + call void @fn_ck_err(ptr @.str11073, ptr %t80, ptr %t89) br label %ifend38 ifend38: - store ptr @.str11065, ptr %retval + store ptr @.str11076, ptr %retval br label %ret ifend32: %t90 = load i32, ptr %t10 @@ -147082,12 +147311,12 @@ ifend59: then60: %t137 = load ptr, ptr %t0 call void @fn_ck_emit(ptr %t137) - store ptr @.str11066, ptr %retval + store ptr @.str11077, ptr %retval br label %ret ifend62: %t138 = load ptr, ptr %t0 call void @fn_ck_walk(ptr %t138) - store ptr @.str11067, ptr %retval + store ptr @.str11078, ptr %retval br label %ret ret: %t139 = load ptr, ptr %retval @@ -147124,7 +147353,7 @@ then0: br i1 %t17, label %ixok3, label %ixbad4 ixbad4: %t18 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str11068, i32 %t12, i32 %t16) + call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str11079, i32 %t12, i32 %t16) call void @exit(i32 1) unreachable ixok3: @@ -147141,7 +147370,7 @@ ixok3: br i1 %t27, label %ixok5, label %ixbad6 ixbad6: %t28 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t28, ptr @.fmt_bounds, ptr @.str11069, i32 %t22, i32 %t26) + call i32 (ptr, ptr, ...) @fprintf(ptr %t28, ptr @.fmt_bounds, ptr @.str11080, i32 %t22, i32 %t26) call void @exit(i32 1) unreachable ixok5: @@ -147196,7 +147425,7 @@ then10: store ptr %t63, ptr %retval br label %ret ifend12: - store ptr @.str11070, ptr %retval + store ptr @.str11081, ptr %retval br label %ret ret: %t64 = load ptr, ptr %retval @@ -147368,13 +147597,13 @@ then4: %t35 = load ptr, ptr %t0 %t36 = getelementptr inbounds %Cmp_Node, ptr %t35, i32 0, i32 1 %t37 = load ptr, ptr %t36 - %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str11072) + %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str11083) %t39 = load ptr, ptr %t0 %t40 = getelementptr inbounds %Cmp_Node, ptr %t39, i32 0, i32 1 %t41 = load ptr, ptr %t40 %t42 = call ptr @lp_str_concat(ptr %t38, ptr %t41) - %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str11073) - call void @fn_ck_err(ptr @.str11071, ptr %t34, ptr %t43) + %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str11084) + call void @fn_ck_err(ptr @.str11082, ptr %t34, ptr %t43) br label %ifend6 ifend6: %t44 = load ptr, ptr %t0 @@ -147415,7 +147644,7 @@ wbody11: br i1 %t72, label %ixok13, label %ixbad14 ixbad14: %t73 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t73, ptr @.fmt_bounds, ptr @.str11074, i32 %t67, i32 %t71) + call i32 (ptr, ptr, ...) @fprintf(ptr %t73, ptr @.fmt_bounds, ptr @.str11085, i32 %t67, i32 %t71) call void @exit(i32 1) unreachable ixok13: @@ -147469,8 +147698,8 @@ then20: %t112 = load ptr, ptr %t76 %t113 = getelementptr inbounds %Cmp_Node, ptr %t112, i32 0, i32 1 %t114 = load ptr, ptr %t113 - %t115 = call ptr @lp_str_concat(ptr @.str11075, ptr %t114) - %t116 = call ptr @lp_str_concat(ptr %t115, ptr @.str11076) + %t115 = call ptr @lp_str_concat(ptr @.str11086, ptr %t114) + %t116 = call ptr @lp_str_concat(ptr %t115, ptr @.str11087) %t117 = load ptr, ptr %t0 %t118 = getelementptr inbounds %Cmp_Node, ptr %t117, i32 0, i32 1 %t119 = load ptr, ptr %t118 @@ -147491,12 +147720,12 @@ then23: %t129 = getelementptr inbounds %Cmp_Node, ptr %t128, i32 0, i32 1 %t130 = load ptr, ptr %t129 %t131 = call ptr @fn_gen_show(ptr %t130) - %t132 = call ptr @lp_str_concat(ptr %t131, ptr @.str11078) + %t132 = call ptr @lp_str_concat(ptr %t131, ptr @.str11089) %t133 = load ptr, ptr %t76 %t134 = getelementptr inbounds %Cmp_Node, ptr %t133, i32 0, i32 1 %t135 = load ptr, ptr %t134 %t136 = call ptr @lp_str_concat(ptr %t132, ptr %t135) - call void @fn_ck_err(ptr @.str11077, ptr %t127, ptr %t136) + call void @fn_ck_err(ptr @.str11088, ptr %t127, ptr %t136) br label %ifend25 ifend25: br label %ifend19 @@ -147529,7 +147758,7 @@ entry: %t67 = alloca ptr %t91 = alloca i32 store ptr %arg_e, ptr %t0 - store ptr @.str11079, ptr %t1 + store ptr @.str11090, ptr %t1 store i32 0, ptr %t2 %t3 = load ptr, ptr @g_ck_vis_file store ptr %t3, ptr %t4 @@ -147566,7 +147795,7 @@ sc3: br i1 %t28, label %ixok5, label %ixbad6 ixbad6: %t29 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str11080, i32 %t23, i32 %t27) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str11091, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok5: @@ -147597,7 +147826,7 @@ then7: br i1 %t48, label %ixok10, label %ixbad11 ixbad11: %t49 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str11081, i32 %t43, i32 %t47) + call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str11092, i32 %t43, i32 %t47) call void @exit(i32 1) unreachable ixok10: @@ -147620,7 +147849,7 @@ ifend9: br i1 %t62, label %ixok12, label %ixbad13 ixbad13: %t63 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t63, ptr @.fmt_bounds, ptr @.str11082, i32 %t57, i32 %t61) + call i32 (ptr, ptr, ...) @fprintf(ptr %t63, ptr @.fmt_bounds, ptr @.str11093, i32 %t57, i32 %t61) call void @exit(i32 1) unreachable ixok12: @@ -147653,14 +147882,14 @@ else15: br i1 %t83, label %ixok17, label %ixbad18 ixbad18: %t84 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str11083, i32 %t78, i32 %t82) + call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str11094, i32 %t78, i32 %t82) call void @exit(i32 1) unreachable ixok17: %t85 = getelementptr inbounds ptr, ptr %t80, i32 %t78 %t86 = load ptr, ptr %t85 %t87 = load ptr, ptr %t1 - %t88 = call ptr @lp_str_concat(ptr @.str11084, ptr %t87) + %t88 = call ptr @lp_str_concat(ptr @.str11095, ptr %t87) call void @fn_ck_give(ptr %t73, ptr %t74, ptr %t86, ptr %t88) br label %ifend16 ifend16: @@ -147677,7 +147906,7 @@ wend2: br i1 %t94, label %scend20, label %sc19 sc19: %t96 = load ptr, ptr %t1 - %t97 = call i32 @lp_str_eq(ptr %t96, ptr @.str11085) + %t97 = call i32 @lp_str_eq(ptr %t96, ptr @.str11096) %t98 = icmp ne i32 %t97, 0 %t99 = zext i1 %t98 to i32 store i32 %t99, ptr %t91 @@ -147687,11 +147916,11 @@ scend20: %t101 = icmp ne i32 %t100, 0 br i1 %t101, label %then21, label %ifend23 then21: - store ptr @.str11086, ptr %retval + store ptr @.str11097, ptr %retval br label %ret ifend23: %t102 = load ptr, ptr %t1 - %t103 = call ptr @lp_str_concat(ptr @.str11087, ptr %t102) + %t103 = call ptr @lp_str_concat(ptr @.str11098, ptr %t102) store ptr %t103, ptr %retval br label %ret ret: @@ -147715,7 +147944,7 @@ entry: %t7 = load ptr, ptr %t0 %t8 = getelementptr inbounds %Cmp_Node, ptr %t7, i32 0, i32 1 %t9 = load ptr, ptr %t8 - %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str11088) + %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str11099) %t11 = icmp ne i32 %t10, 0 %t12 = zext i1 %t11 to i32 store i32 %t12, ptr %t6 @@ -147724,7 +147953,7 @@ sc0: %t13 = load ptr, ptr %t0 %t14 = getelementptr inbounds %Cmp_Node, ptr %t13, i32 0, i32 1 %t15 = load ptr, ptr %t14 - %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str11089) + %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str11100) %t17 = icmp ne i32 %t16, 0 %t18 = zext i1 %t17 to i32 store i32 %t18, ptr %t6 @@ -147739,20 +147968,20 @@ then2: %t23 = load ptr, ptr %t22 %t24 = load ptr, ptr %t5 call void @fn_ck_cond(ptr %t23, ptr %t24) - store ptr @.str11090, ptr %retval + store ptr @.str11101, ptr %retval br label %ret ifend4: %t26 = load ptr, ptr %t0 %t27 = getelementptr inbounds %Cmp_Node, ptr %t26, i32 0, i32 1 %t28 = load ptr, ptr %t27 - %t29 = call i32 @lp_str_eq(ptr %t28, ptr @.str11091) + %t29 = call i32 @lp_str_eq(ptr %t28, ptr @.str11102) %t30 = icmp ne i32 %t29, 0 %t31 = zext i1 %t30 to i32 store i32 %t31, ptr %t25 br i1 %t30, label %sc5, label %scend6 sc5: %t32 = load ptr, ptr %t5 - %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str11092) + %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str11103) %t34 = icmp ne i32 %t33, 0 %t35 = zext i1 %t34 to i32 store i32 %t35, ptr %t25 @@ -147763,7 +147992,7 @@ scend6: br i1 %t37, label %then7, label %ifend9 then7: %t38 = load ptr, ptr %t0 - call void @fn_ck_err(ptr @.str11093, ptr %t38, ptr @.str11094) + call void @fn_ck_err(ptr @.str11104, ptr %t38, ptr @.str11105) br label %ifend9 ifend9: %t39 = load ptr, ptr %t5 @@ -147865,7 +148094,7 @@ then9: store ptr %t56, ptr %retval br label %ret ifend11: - store ptr @.str11095, ptr %retval + store ptr @.str11106, ptr %retval br label %ret ifend6: %t57 = load ptr, ptr %t4 @@ -147876,7 +148105,7 @@ ifend6: %t62 = icmp ne i32 %t61, 0 br i1 %t62, label %then12, label %ifend14 then12: - store ptr @.str11096, ptr %retval + store ptr @.str11107, ptr %retval br label %ret ifend14: %t63 = load ptr, ptr %t59 @@ -147906,7 +148135,7 @@ then18: ifend20: br label %ifend17 ifend17: - store ptr @.str11097, ptr %retval + store ptr @.str11108, ptr %retval br label %ret ret: %t81 = load ptr, ptr %retval @@ -147940,7 +148169,7 @@ then0: %t14 = load ptr, ptr %t0 %t15 = load ptr, ptr %t5 %t16 = call ptr @fn_ck_a(ptr %t15) - %t17 = call ptr @lp_str_concat(ptr @.str11098, ptr %t16) + %t17 = call ptr @lp_str_concat(ptr @.str11109, ptr %t16) call void @fn_ck_raw(ptr %t14, ptr %t17) br label %ifend2 ifend2: @@ -147971,8 +148200,8 @@ then5: %t35 = load ptr, ptr %t34 %t36 = load ptr, ptr %t10 %t37 = call ptr @fn_ck_a(ptr %t36) - %t38 = call ptr @lp_str_concat(ptr @.str11100, ptr %t37) - call void @fn_ck_err(ptr @.str11099, ptr %t35, ptr %t38) + %t38 = call ptr @lp_str_concat(ptr @.str11111, ptr %t37) + call void @fn_ck_err(ptr @.str11110, ptr %t35, ptr %t38) br label %ifend7 ifend7: %t39 = load ptr, ptr %t5 @@ -147980,7 +148209,7 @@ ifend7: %t41 = icmp ne i32 %t40, 0 br i1 %t41, label %then8, label %ifend10 then8: - store ptr @.str11101, ptr %retval + store ptr @.str11112, ptr %retval br label %ret ifend10: %t42 = load ptr, ptr %t5 @@ -147994,14 +148223,14 @@ then11: br label %ret ifend13: %t48 = load ptr, ptr %t5 - %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str11102) + %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str11113) %t50 = icmp ne i32 %t49, 0 %t51 = zext i1 %t50 to i32 store i32 %t51, ptr %t47 br i1 %t50, label %scend15, label %sc14 sc14: %t52 = load ptr, ptr %t5 - %t53 = call i32 @lp_str_eq(ptr %t52, ptr @.str11103) + %t53 = call i32 @lp_str_eq(ptr %t52, ptr @.str11114) %t54 = icmp ne i32 %t53, 0 %t55 = zext i1 %t54 to i32 store i32 %t55, ptr %t47 @@ -148011,42 +148240,42 @@ scend15: %t57 = icmp ne i32 %t56, 0 br i1 %t57, label %then16, label %ifend18 then16: - store ptr @.str11104, ptr %retval + store ptr @.str11115, ptr %retval br label %ret ifend18: %t58 = load ptr, ptr %t5 - %t59 = call i32 @lp_str_eq(ptr %t58, ptr @.str11105) + %t59 = call i32 @lp_str_eq(ptr %t58, ptr @.str11116) %t60 = icmp ne i32 %t59, 0 br i1 %t60, label %then19, label %ifend21 then19: - store ptr @.str11106, ptr %retval + store ptr @.str11117, ptr %retval br label %ret ifend21: %t61 = load ptr, ptr %t5 - %t62 = call i32 @lp_str_eq(ptr %t61, ptr @.str11107) + %t62 = call i32 @lp_str_eq(ptr %t61, ptr @.str11118) %t63 = icmp ne i32 %t62, 0 br i1 %t63, label %then22, label %ifend24 then22: - store ptr @.str11108, ptr %retval + store ptr @.str11119, ptr %retval br label %ret ifend24: %t64 = load ptr, ptr %t5 - %t65 = call i32 @lp_str_eq(ptr %t64, ptr @.str11109) + %t65 = call i32 @lp_str_eq(ptr %t64, ptr @.str11120) %t66 = icmp ne i32 %t65, 0 br i1 %t66, label %then25, label %ifend27 then25: - store ptr @.str11110, ptr %retval + store ptr @.str11121, ptr %retval br label %ret ifend27: %t67 = load ptr, ptr %t5 - %t68 = call i32 @lp_str_eq(ptr %t67, ptr @.str11111) + %t68 = call i32 @lp_str_eq(ptr %t67, ptr @.str11122) %t69 = icmp ne i32 %t68, 0 br i1 %t69, label %then28, label %ifend30 then28: - store ptr @.str11112, ptr %retval + store ptr @.str11123, ptr %retval br label %ret ifend30: - store ptr @.str11113, ptr %retval + store ptr @.str11124, ptr %retval br label %ret ret: %t70 = load ptr, ptr %retval @@ -148068,7 +148297,7 @@ entry: br i1 %t5, label %scend1, label %sc0 sc0: %t7 = load ptr, ptr %t1 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str11114) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str11125) %t9 = icmp ne i32 %t8, 0 %t10 = zext i1 %t9 to i32 store i32 %t10, ptr %t2 @@ -148083,8 +148312,8 @@ ifend4: %t13 = load ptr, ptr %t0 %t14 = load ptr, ptr %t1 %t15 = call ptr @fn_ck_a(ptr %t14) - %t16 = call ptr @lp_str_concat(ptr @.str11116, ptr %t15) - call void @fn_ck_err(ptr @.str11115, ptr %t13, ptr %t16) + %t16 = call ptr @lp_str_concat(ptr @.str11127, ptr %t15) + call void @fn_ck_err(ptr @.str11126, ptr %t13, ptr %t16) br label %ret ret: ret void @@ -148163,14 +148392,14 @@ entry: store ptr %arg_a, ptr %t4 store ptr %arg_b, ptr %t5 %t9 = load ptr, ptr %t1 - %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str11117) + %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str11128) %t11 = icmp ne i32 %t10, 0 %t12 = zext i1 %t11 to i32 store i32 %t12, ptr %t8 br i1 %t11, label %scend1, label %sc0 sc0: %t13 = load ptr, ptr %t1 - %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str11118) + %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str11129) %t15 = icmp ne i32 %t14, 0 %t16 = zext i1 %t15 to i32 store i32 %t16, ptr %t8 @@ -148183,7 +148412,7 @@ scend1: br i1 %t18, label %scend3, label %sc2 sc2: %t20 = load ptr, ptr %t1 - %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str11119) + %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str11130) %t22 = icmp ne i32 %t21, 0 %t23 = zext i1 %t22 to i32 store i32 %t23, ptr %t7 @@ -148196,7 +148425,7 @@ scend3: br i1 %t25, label %scend5, label %sc4 sc4: %t27 = load ptr, ptr %t1 - %t28 = call i32 @lp_str_eq(ptr %t27, ptr @.str11120) + %t28 = call i32 @lp_str_eq(ptr %t27, ptr @.str11131) %t29 = icmp ne i32 %t28, 0 %t30 = zext i1 %t29 to i32 store i32 %t30, ptr %t6 @@ -148212,18 +148441,18 @@ then6: %t35 = load ptr, ptr %t5 %t36 = load ptr, ptr %t3 call void @fn_ck_cond(ptr %t35, ptr %t36) - store ptr @.str11121, ptr %retval + store ptr @.str11132, ptr %retval br label %ret ifend8: %t42 = load ptr, ptr %t1 - %t43 = call i32 @lp_str_eq(ptr %t42, ptr @.str11122) + %t43 = call i32 @lp_str_eq(ptr %t42, ptr @.str11133) %t44 = icmp ne i32 %t43, 0 %t45 = zext i1 %t44 to i32 store i32 %t45, ptr %t41 br i1 %t44, label %scend10, label %sc9 sc9: %t46 = load ptr, ptr %t1 - %t47 = call i32 @lp_str_eq(ptr %t46, ptr @.str11123) + %t47 = call i32 @lp_str_eq(ptr %t46, ptr @.str11134) %t48 = icmp ne i32 %t47, 0 %t49 = zext i1 %t48 to i32 store i32 %t49, ptr %t41 @@ -148236,7 +148465,7 @@ scend10: br i1 %t51, label %scend12, label %sc11 sc11: %t53 = load ptr, ptr %t1 - %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str11124) + %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str11135) %t55 = icmp ne i32 %t54, 0 %t56 = zext i1 %t55 to i32 store i32 %t56, ptr %t40 @@ -148249,7 +148478,7 @@ scend12: br i1 %t58, label %scend14, label %sc13 sc13: %t60 = load ptr, ptr %t1 - %t61 = call i32 @lp_str_eq(ptr %t60, ptr @.str11125) + %t61 = call i32 @lp_str_eq(ptr %t60, ptr @.str11136) %t62 = icmp ne i32 %t61, 0 %t63 = zext i1 %t62 to i32 store i32 %t63, ptr %t39 @@ -148262,7 +148491,7 @@ scend14: br i1 %t65, label %scend16, label %sc15 sc15: %t67 = load ptr, ptr %t1 - %t68 = call i32 @lp_str_eq(ptr %t67, ptr @.str11126) + %t68 = call i32 @lp_str_eq(ptr %t67, ptr @.str11137) %t69 = icmp ne i32 %t68, 0 %t70 = zext i1 %t69 to i32 store i32 %t70, ptr %t38 @@ -148275,7 +148504,7 @@ scend16: br i1 %t72, label %scend18, label %sc17 sc17: %t74 = load ptr, ptr %t1 - %t75 = call i32 @lp_str_eq(ptr %t74, ptr @.str11127) + %t75 = call i32 @lp_str_eq(ptr %t74, ptr @.str11138) %t76 = icmp ne i32 %t75, 0 %t77 = zext i1 %t76 to i32 store i32 %t77, ptr %t37 @@ -148292,18 +148521,18 @@ then19: %t84 = load ptr, ptr %t4 %t85 = load ptr, ptr %t5 call void @fn_ck_compare(ptr %t80, ptr %t81, ptr %t82, ptr %t83, ptr %t84, ptr %t85) - store ptr @.str11128, ptr %retval + store ptr @.str11139, ptr %retval br label %ret ifend21: %t90 = load ptr, ptr %t1 - %t91 = call i32 @lp_str_eq(ptr %t90, ptr @.str11129) + %t91 = call i32 @lp_str_eq(ptr %t90, ptr @.str11140) %t92 = icmp ne i32 %t91, 0 %t93 = zext i1 %t92 to i32 store i32 %t93, ptr %t89 br i1 %t92, label %scend23, label %sc22 sc22: %t94 = load ptr, ptr %t1 - %t95 = call i32 @lp_str_eq(ptr %t94, ptr @.str11130) + %t95 = call i32 @lp_str_eq(ptr %t94, ptr @.str11141) %t96 = icmp ne i32 %t95, 0 %t97 = zext i1 %t96 to i32 store i32 %t97, ptr %t89 @@ -148316,7 +148545,7 @@ scend23: br i1 %t99, label %scend25, label %sc24 sc24: %t101 = load ptr, ptr %t1 - %t102 = call i32 @lp_str_eq(ptr %t101, ptr @.str11131) + %t102 = call i32 @lp_str_eq(ptr %t101, ptr @.str11142) %t103 = icmp ne i32 %t102, 0 %t104 = zext i1 %t103 to i32 store i32 %t104, ptr %t88 @@ -148329,7 +148558,7 @@ scend25: br i1 %t106, label %scend27, label %sc26 sc26: %t108 = load ptr, ptr %t1 - %t109 = call i32 @lp_str_eq(ptr %t108, ptr @.str11132) + %t109 = call i32 @lp_str_eq(ptr %t108, ptr @.str11143) %t110 = icmp ne i32 %t109, 0 %t111 = zext i1 %t110 to i32 store i32 %t111, ptr %t87 @@ -148342,7 +148571,7 @@ scend27: br i1 %t113, label %scend29, label %sc28 sc28: %t115 = load ptr, ptr %t1 - %t116 = call i32 @lp_str_eq(ptr %t115, ptr @.str11133) + %t116 = call i32 @lp_str_eq(ptr %t115, ptr @.str11144) %t117 = icmp ne i32 %t116, 0 %t118 = zext i1 %t117 to i32 store i32 %t118, ptr %t86 @@ -148363,14 +148592,14 @@ then30: br label %ret ifend32: %t132 = load ptr, ptr %t1 - %t133 = call i32 @lp_str_eq(ptr %t132, ptr @.str11134) + %t133 = call i32 @lp_str_eq(ptr %t132, ptr @.str11145) %t134 = icmp ne i32 %t133, 0 %t135 = zext i1 %t134 to i32 store i32 %t135, ptr %t131 br i1 %t134, label %scend34, label %sc33 sc33: %t136 = load ptr, ptr %t1 - %t137 = call i32 @lp_str_eq(ptr %t136, ptr @.str11135) + %t137 = call i32 @lp_str_eq(ptr %t136, ptr @.str11146) %t138 = icmp ne i32 %t137, 0 %t139 = zext i1 %t138 to i32 store i32 %t139, ptr %t131 @@ -148383,7 +148612,7 @@ scend34: br i1 %t141, label %scend36, label %sc35 sc35: %t143 = load ptr, ptr %t1 - %t144 = call i32 @lp_str_eq(ptr %t143, ptr @.str11136) + %t144 = call i32 @lp_str_eq(ptr %t143, ptr @.str11147) %t145 = icmp ne i32 %t144, 0 %t146 = zext i1 %t145 to i32 store i32 %t146, ptr %t130 @@ -148396,7 +148625,7 @@ scend36: br i1 %t148, label %scend38, label %sc37 sc37: %t150 = load ptr, ptr %t1 - %t151 = call i32 @lp_str_eq(ptr %t150, ptr @.str11137) + %t151 = call i32 @lp_str_eq(ptr %t150, ptr @.str11148) %t152 = icmp ne i32 %t151, 0 %t153 = zext i1 %t152 to i32 store i32 %t153, ptr %t129 @@ -148409,7 +148638,7 @@ scend38: br i1 %t155, label %scend40, label %sc39 sc39: %t157 = load ptr, ptr %t1 - %t158 = call i32 @lp_str_eq(ptr %t157, ptr @.str11138) + %t158 = call i32 @lp_str_eq(ptr %t157, ptr @.str11149) %t159 = icmp ne i32 %t158, 0 %t160 = zext i1 %t159 to i32 store i32 %t160, ptr %t128 @@ -148420,14 +148649,14 @@ scend40: br i1 %t162, label %then41, label %ifend43 then41: %t164 = load ptr, ptr %t2 - %t165 = call i32 @lp_str_eq(ptr %t164, ptr @.str11139) + %t165 = call i32 @lp_str_eq(ptr %t164, ptr @.str11150) %t166 = icmp ne i32 %t165, 0 %t167 = zext i1 %t166 to i32 store i32 %t167, ptr %t163 br i1 %t166, label %scend45, label %sc44 sc44: %t168 = load ptr, ptr %t3 - %t169 = call i32 @lp_str_eq(ptr %t168, ptr @.str11140) + %t169 = call i32 @lp_str_eq(ptr %t168, ptr @.str11151) %t170 = icmp ne i32 %t169, 0 %t171 = zext i1 %t170 to i32 store i32 %t171, ptr %t163 @@ -148437,13 +148666,13 @@ scend45: %t173 = icmp ne i32 %t172, 0 br i1 %t173, label %then46, label %ifend48 then46: - store ptr @.str11141, ptr %retval + store ptr @.str11152, ptr %retval br label %ret ifend48: - store ptr @.str11142, ptr %retval + store ptr @.str11153, ptr %retval br label %ret ifend43: - store ptr @.str11143, ptr %retval + store ptr @.str11154, ptr %retval br label %ret ret: %t174 = load ptr, ptr %retval @@ -148498,7 +148727,7 @@ scend1: br i1 %t18, label %scend3, label %sc2 sc2: %t20 = load ptr, ptr %t2 - %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str11144) + %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str11155) %t22 = icmp ne i32 %t21, 0 %t23 = zext i1 %t22 to i32 store i32 %t23, ptr %t7 @@ -148511,7 +148740,7 @@ scend3: br i1 %t25, label %scend5, label %sc4 sc4: %t27 = load ptr, ptr %t3 - %t28 = call i32 @lp_str_eq(ptr %t27, ptr @.str11145) + %t28 = call i32 @lp_str_eq(ptr %t27, ptr @.str11156) %t29 = icmp ne i32 %t28, 0 %t30 = zext i1 %t29 to i32 store i32 %t30, ptr %t6 @@ -148530,14 +148759,14 @@ ifend8: %t37 = call ptr @fn_ck_class(ptr %t36) store ptr %t37, ptr %t38 %t41 = load ptr, ptr %t2 - %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str11146) + %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str11157) %t43 = icmp ne i32 %t42, 0 %t44 = zext i1 %t43 to i32 store i32 %t44, ptr %t40 br i1 %t43, label %sc9, label %scend10 sc9: %t45 = load ptr, ptr %t38 - %t46 = call i32 @lp_str_eq(ptr %t45, ptr @.str11147) + %t46 = call i32 @lp_str_eq(ptr %t45, ptr @.str11158) %t47 = icmp ne i32 %t46, 0 %t48 = zext i1 %t47 to i32 store i32 %t48, ptr %t40 @@ -148550,14 +148779,14 @@ scend10: br i1 %t50, label %scend12, label %sc11 sc11: %t53 = load ptr, ptr %t3 - %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str11148) + %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str11159) %t55 = icmp ne i32 %t54, 0 %t56 = zext i1 %t55 to i32 store i32 %t56, ptr %t52 br i1 %t55, label %sc13, label %scend14 sc13: %t57 = load ptr, ptr %t35 - %t58 = call i32 @lp_str_eq(ptr %t57, ptr @.str11149) + %t58 = call i32 @lp_str_eq(ptr %t57, ptr @.str11160) %t59 = icmp ne i32 %t58, 0 %t60 = zext i1 %t59 to i32 store i32 %t60, ptr %t52 @@ -148585,15 +148814,15 @@ ifend17: then18: %t72 = load ptr, ptr %t0 %t73 = load ptr, ptr %t1 - %t74 = call ptr @lp_str_concat(ptr %t73, ptr @.str11151) + %t74 = call ptr @lp_str_concat(ptr %t73, ptr @.str11162) %t75 = load ptr, ptr %t2 %t76 = call ptr @fn_ck_a(ptr %t75) %t77 = call ptr @lp_str_concat(ptr %t74, ptr %t76) - %t78 = call ptr @lp_str_concat(ptr %t77, ptr @.str11152) + %t78 = call ptr @lp_str_concat(ptr %t77, ptr @.str11163) %t79 = load ptr, ptr %t3 %t80 = call ptr @fn_ck_a(ptr %t79) %t81 = call ptr @lp_str_concat(ptr %t78, ptr %t80) - call void @fn_ck_err(ptr @.str11150, ptr %t72, ptr %t81) + call void @fn_ck_err(ptr @.str11161, ptr %t72, ptr %t81) br label %ret ifend20: %t84 = load ptr, ptr %t2 @@ -148632,16 +148861,16 @@ scend24: then25: %t104 = load ptr, ptr %t0 %t105 = load ptr, ptr %t1 - %t106 = call ptr @lp_str_concat(ptr %t105, ptr @.str11154) + %t106 = call ptr @lp_str_concat(ptr %t105, ptr @.str11165) %t107 = load ptr, ptr %t2 %t108 = call ptr @fn_ck_a(ptr %t107) %t109 = call ptr @lp_str_concat(ptr %t106, ptr %t108) - %t110 = call ptr @lp_str_concat(ptr %t109, ptr @.str11155) + %t110 = call ptr @lp_str_concat(ptr %t109, ptr @.str11166) %t111 = load ptr, ptr %t3 %t112 = call ptr @fn_ck_a(ptr %t111) %t113 = call ptr @lp_str_concat(ptr %t110, ptr %t112) - %t114 = call ptr @lp_str_concat(ptr %t113, ptr @.str11156) - call void @fn_ck_err(ptr @.str11153, ptr %t104, ptr %t114) + %t114 = call ptr @lp_str_concat(ptr %t113, ptr @.str11167) + call void @fn_ck_err(ptr @.str11164, ptr %t104, ptr %t114) br label %ifend27 ifend27: %t116 = load ptr, ptr %t4 @@ -148665,7 +148894,7 @@ then30: br label %ret ifend32: %t127 = load ptr, ptr %t2 - %t128 = call i32 @lp_str_eq(ptr %t127, ptr @.str11157) + %t128 = call i32 @lp_str_eq(ptr %t127, ptr @.str11168) %t129 = icmp ne i32 %t128, 0 %t130 = zext i1 %t129 to i32 store i32 %t130, ptr %t126 @@ -148684,15 +148913,15 @@ scend34: then35: %t137 = load ptr, ptr %t0 %t138 = load ptr, ptr %t1 - %t139 = call ptr @lp_str_concat(ptr %t138, ptr @.str11159) + %t139 = call ptr @lp_str_concat(ptr %t138, ptr @.str11170) %t140 = load ptr, ptr %t3 %t141 = call ptr @fn_ck_a(ptr %t140) %t142 = call ptr @lp_str_concat(ptr %t139, ptr %t141) - call void @fn_ck_err(ptr @.str11158, ptr %t137, ptr %t142) + call void @fn_ck_err(ptr @.str11169, ptr %t137, ptr %t142) br label %ifend37 ifend37: %t144 = load ptr, ptr %t3 - %t145 = call i32 @lp_str_eq(ptr %t144, ptr @.str11160) + %t145 = call i32 @lp_str_eq(ptr %t144, ptr @.str11171) %t146 = icmp ne i32 %t145, 0 %t147 = zext i1 %t146 to i32 store i32 %t147, ptr %t143 @@ -148711,12 +148940,12 @@ scend39: then40: %t154 = load ptr, ptr %t0 %t155 = load ptr, ptr %t1 - %t156 = call ptr @lp_str_concat(ptr %t155, ptr @.str11162) + %t156 = call ptr @lp_str_concat(ptr %t155, ptr @.str11173) %t157 = load ptr, ptr %t2 %t158 = call ptr @fn_ck_a(ptr %t157) %t159 = call ptr @lp_str_concat(ptr %t156, ptr %t158) - %t160 = call ptr @lp_str_concat(ptr %t159, ptr @.str11163) - call void @fn_ck_err(ptr @.str11161, ptr %t154, ptr %t160) + %t160 = call ptr @lp_str_concat(ptr %t159, ptr @.str11174) + call void @fn_ck_err(ptr @.str11172, ptr %t154, ptr %t160) br label %ifend42 ifend42: br label %ret @@ -148731,14 +148960,14 @@ entry: %t1 = alloca i32 store ptr %arg_t, ptr %t0 %t2 = load ptr, ptr %t0 - %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str11164) + %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str11175) %t4 = icmp ne i32 %t3, 0 %t5 = zext i1 %t4 to i32 store i32 %t5, ptr %t1 br i1 %t4, label %scend1, label %sc0 sc0: %t6 = load ptr, ptr %t0 - %t7 = call i32 @lp_str_eq(ptr %t6, ptr @.str11165) + %t7 = call i32 @lp_str_eq(ptr %t6, ptr @.str11176) %t8 = icmp ne i32 %t7, 0 %t9 = zext i1 %t8 to i32 store i32 %t9, ptr %t1 @@ -148810,7 +149039,7 @@ scend6: %t27 = icmp ne i32 %t26, 0 br i1 %t27, label %then7, label %ifend9 then7: - store ptr @.str11166, ptr %retval + store ptr @.str11177, ptr %retval br label %ret ifend9: %t30 = load ptr, ptr %t2 @@ -148834,7 +149063,7 @@ scend11: br i1 %t39, label %sc12, label %scend13 sc12: %t41 = load ptr, ptr %t1 - %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str11167) + %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str11178) %t43 = icmp ne i32 %t42, 0 %t44 = zext i1 %t43 to i32 store i32 %t44, ptr %t28 @@ -148844,22 +149073,22 @@ scend13: %t46 = icmp ne i32 %t45, 0 br i1 %t46, label %then14, label %ifend16 then14: - store ptr @.str11168, ptr %retval + store ptr @.str11179, ptr %retval br label %ret ifend16: %t47 = load ptr, ptr %t0 %t48 = load ptr, ptr %t1 - %t49 = call ptr @lp_str_concat(ptr %t48, ptr @.str11170) + %t49 = call ptr @lp_str_concat(ptr %t48, ptr @.str11181) %t50 = load ptr, ptr %t2 %t51 = call ptr @fn_ck_a(ptr %t50) %t52 = call ptr @lp_str_concat(ptr %t49, ptr %t51) - %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str11171) + %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str11182) %t54 = load ptr, ptr %t3 %t55 = call ptr @fn_ck_a(ptr %t54) %t56 = call ptr @lp_str_concat(ptr %t53, ptr %t55) - %t57 = call ptr @lp_str_concat(ptr %t56, ptr @.str11172) - call void @fn_ck_err(ptr @.str11169, ptr %t47, ptr %t57) - store ptr @.str11173, ptr %retval + %t57 = call ptr @lp_str_concat(ptr %t56, ptr @.str11183) + call void @fn_ck_err(ptr @.str11180, ptr %t47, ptr %t57) + store ptr @.str11184, ptr %retval br label %ret ifend4: %t59 = load ptr, ptr %t2 @@ -148880,18 +149109,18 @@ scend18: %t68 = icmp ne i32 %t67, 0 br i1 %t68, label %then19, label %ifend21 then19: - store ptr @.str11174, ptr %retval + store ptr @.str11185, ptr %retval br label %ret ifend21: %t70 = load ptr, ptr %t2 - %t71 = call i32 @lp_str_eq(ptr %t70, ptr @.str11175) + %t71 = call i32 @lp_str_eq(ptr %t70, ptr @.str11186) %t72 = icmp ne i32 %t71, 0 %t73 = zext i1 %t72 to i32 store i32 %t73, ptr %t69 br i1 %t72, label %scend23, label %sc22 sc22: %t74 = load ptr, ptr %t3 - %t75 = call i32 @lp_str_eq(ptr %t74, ptr @.str11176) + %t75 = call i32 @lp_str_eq(ptr %t74, ptr @.str11187) %t76 = icmp ne i32 %t75, 0 %t77 = zext i1 %t76 to i32 store i32 %t77, ptr %t69 @@ -148903,9 +149132,9 @@ scend23: then24: %t80 = load ptr, ptr %t0 %t81 = load ptr, ptr %t1 - %t82 = call ptr @lp_str_concat(ptr %t81, ptr @.str11178) - call void @fn_ck_err(ptr @.str11177, ptr %t80, ptr %t82) - store ptr @.str11179, ptr %retval + %t82 = call ptr @lp_str_concat(ptr %t81, ptr @.str11189) + call void @fn_ck_err(ptr @.str11188, ptr %t80, ptr %t82) + store ptr @.str11190, ptr %retval br label %ret ifend26: %t84 = load ptr, ptr %t2 @@ -148938,16 +149167,16 @@ then29: ifend31: %t101 = load ptr, ptr %t0 %t102 = load ptr, ptr %t1 - %t103 = call ptr @lp_str_concat(ptr %t102, ptr @.str11181) + %t103 = call ptr @lp_str_concat(ptr %t102, ptr @.str11192) %t104 = load ptr, ptr %t2 %t105 = call ptr @fn_ck_a(ptr %t104) %t106 = call ptr @lp_str_concat(ptr %t103, ptr %t105) - %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str11182) + %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str11193) %t108 = load ptr, ptr %t3 %t109 = call ptr @fn_ck_a(ptr %t108) %t110 = call ptr @lp_str_concat(ptr %t107, ptr %t109) - call void @fn_ck_err(ptr @.str11180, ptr %t101, ptr %t110) - store ptr @.str11183, ptr %retval + call void @fn_ck_err(ptr @.str11191, ptr %t101, ptr %t110) + store ptr @.str11194, ptr %retval br label %ret ret: %t111 = load ptr, ptr %retval @@ -148975,7 +149204,7 @@ entry: store ptr %arg_a, ptr %t4 store ptr %arg_b, ptr %t5 %t7 = load ptr, ptr %t2 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str11184) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str11195) %t9 = icmp ne i32 %t8, 0 %t10 = zext i1 %t9 to i32 store i32 %t10, ptr %t6 @@ -148997,7 +149226,7 @@ then2: %t19 = icmp ne i32 %t18, 0 br i1 %t19, label %then5, label %ifend7 then5: - store ptr @.str11185, ptr %retval + store ptr @.str11196, ptr %retval br label %ret ifend7: %t20 = load ptr, ptr %t4 @@ -149011,17 +149240,17 @@ then8: ifend10: %t24 = load ptr, ptr %t0 %t25 = load ptr, ptr %t1 - %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str11187) + %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str11198) %t27 = load ptr, ptr %t3 %t28 = call ptr @fn_ck_a(ptr %t27) %t29 = call ptr @lp_str_concat(ptr %t26, ptr %t28) - %t30 = call ptr @lp_str_concat(ptr %t29, ptr @.str11188) - call void @fn_ck_err(ptr @.str11186, ptr %t24, ptr %t30) - store ptr @.str11189, ptr %retval + %t30 = call ptr @lp_str_concat(ptr %t29, ptr @.str11199) + call void @fn_ck_err(ptr @.str11197, ptr %t24, ptr %t30) + store ptr @.str11200, ptr %retval br label %ret ifend4: %t32 = load ptr, ptr %t3 - %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str11190) + %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str11201) %t34 = icmp ne i32 %t33, 0 %t35 = zext i1 %t34 to i32 store i32 %t35, ptr %t31 @@ -149043,7 +149272,7 @@ then13: %t44 = icmp ne i32 %t43, 0 br i1 %t44, label %then16, label %ifend18 then16: - store ptr @.str11191, ptr %retval + store ptr @.str11202, ptr %retval br label %ret ifend18: %t45 = load ptr, ptr %t5 @@ -149057,24 +149286,24 @@ then19: ifend21: %t49 = load ptr, ptr %t0 %t50 = load ptr, ptr %t1 - %t51 = call ptr @lp_str_concat(ptr %t50, ptr @.str11193) + %t51 = call ptr @lp_str_concat(ptr %t50, ptr @.str11204) %t52 = load ptr, ptr %t2 %t53 = call ptr @fn_ck_a(ptr %t52) %t54 = call ptr @lp_str_concat(ptr %t51, ptr %t53) - %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str11194) - call void @fn_ck_err(ptr @.str11192, ptr %t49, ptr %t55) - store ptr @.str11195, ptr %retval + %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str11205) + call void @fn_ck_err(ptr @.str11203, ptr %t49, ptr %t55) + store ptr @.str11206, ptr %retval br label %ret ifend15: %t57 = load ptr, ptr %t2 - %t58 = call i32 @lp_str_eq(ptr %t57, ptr @.str11196) + %t58 = call i32 @lp_str_eq(ptr %t57, ptr @.str11207) %t59 = icmp ne i32 %t58, 0 %t60 = zext i1 %t59 to i32 store i32 %t60, ptr %t56 br i1 %t59, label %scend23, label %sc22 sc22: %t61 = load ptr, ptr %t3 - %t62 = call i32 @lp_str_eq(ptr %t61, ptr @.str11197) + %t62 = call i32 @lp_str_eq(ptr %t61, ptr @.str11208) %t63 = icmp ne i32 %t62, 0 %t64 = zext i1 %t63 to i32 store i32 %t64, ptr %t56 @@ -149084,7 +149313,7 @@ scend23: %t66 = icmp ne i32 %t65, 0 br i1 %t66, label %then24, label %ifend26 then24: - store ptr @.str11198, ptr %retval + store ptr @.str11209, ptr %retval br label %ret ifend26: %t67 = load ptr, ptr %t2 @@ -149106,14 +149335,14 @@ then30: br label %ret ifend32: %t76 = load ptr, ptr %t2 - %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str11199) + %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str11210) %t78 = icmp ne i32 %t77, 0 %t79 = zext i1 %t78 to i32 store i32 %t79, ptr %t75 br i1 %t78, label %scend34, label %sc33 sc33: %t80 = load ptr, ptr %t3 - %t81 = call i32 @lp_str_eq(ptr %t80, ptr @.str11200) + %t81 = call i32 @lp_str_eq(ptr %t80, ptr @.str11211) %t82 = icmp ne i32 %t81, 0 %t83 = zext i1 %t82 to i32 store i32 %t83, ptr %t75 @@ -149123,18 +149352,18 @@ scend34: %t85 = icmp ne i32 %t84, 0 br i1 %t85, label %then35, label %ifend37 then35: - store ptr @.str11201, ptr %retval + store ptr @.str11212, ptr %retval br label %ret ifend37: %t87 = load ptr, ptr %t2 - %t88 = call i32 @lp_str_eq(ptr %t87, ptr @.str11202) + %t88 = call i32 @lp_str_eq(ptr %t87, ptr @.str11213) %t89 = icmp ne i32 %t88, 0 %t90 = zext i1 %t89 to i32 store i32 %t90, ptr %t86 br i1 %t89, label %scend39, label %sc38 sc38: %t91 = load ptr, ptr %t3 - %t92 = call i32 @lp_str_eq(ptr %t91, ptr @.str11203) + %t92 = call i32 @lp_str_eq(ptr %t91, ptr @.str11214) %t93 = icmp ne i32 %t92, 0 %t94 = zext i1 %t93 to i32 store i32 %t94, ptr %t86 @@ -149144,10 +149373,10 @@ scend39: %t96 = icmp ne i32 %t95, 0 br i1 %t96, label %then40, label %ifend42 then40: - store ptr @.str11204, ptr %retval + store ptr @.str11215, ptr %retval br label %ret ifend42: - store ptr @.str11205, ptr %retval + store ptr @.str11216, ptr %retval br label %ret ret: %t97 = load ptr, ptr %retval @@ -149189,7 +149418,7 @@ wbody1: br i1 %t21, label %ixok3, label %ixbad4 ixbad4: %t22 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str11206, i32 %t16, i32 %t20) + call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str11217, i32 %t16, i32 %t20) call void @exit(i32 1) unreachable ixok3: @@ -149215,7 +149444,7 @@ then5: br i1 %t39, label %ixok8, label %ixbad9 ixbad9: %t40 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11207, i32 %t34, i32 %t38) + call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11218, i32 %t34, i32 %t38) call void @exit(i32 1) unreachable ixok8: @@ -149262,7 +149491,7 @@ put11: br i1 %t72, label %ixok12, label %ixbad13 ixbad13: %t73 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t73, ptr @.fmt_bounds, ptr @.str11208, i32 %t67, i32 %t71) + call i32 (ptr, ptr, ...) @fprintf(ptr %t73, ptr @.fmt_bounds, ptr @.str11219, i32 %t67, i32 %t71) call void @exit(i32 1) unreachable ixok12: @@ -149383,7 +149612,7 @@ ifend2: %t46 = icmp ne i32 %t45, 0 br i1 %t46, label %then3, label %ifend5 then3: - store ptr @.str11209, ptr %retval + store ptr @.str11220, ptr %retval br label %ret ifend5: %t47 = load ptr, ptr %t2 @@ -149423,7 +149652,7 @@ entry: br i1 %t12, label %ixok0, label %ixbad1 ixbad1: %t13 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t13, ptr @.fmt_bounds, ptr @.str11210, i32 %t7, i32 %t11) + call i32 (ptr, ptr, ...) @fprintf(ptr %t13, ptr @.fmt_bounds, ptr @.str11221, i32 %t7, i32 %t11) call void @exit(i32 1) unreachable ixok0: @@ -149505,7 +149734,7 @@ ifend7: %t66 = icmp ne i32 %t65, 0 br i1 %t66, label %then8, label %ifend10 then8: - store ptr @.str11211, ptr %retval + store ptr @.str11222, ptr %retval br label %ret ifend10: %t67 = load ptr, ptr %t3 @@ -149580,7 +149809,7 @@ wbody1: br i1 %t16, label %ixok3, label %ixbad4 ixbad4: %t17 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11212, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11223, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok3: @@ -149654,7 +149883,7 @@ sc0: br i1 %t23, label %ixok2, label %ixbad3 ixbad3: %t24 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str11213, i32 0, i32 %t22) + call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str11224, i32 0, i32 %t22) call void @exit(i32 1) unreachable ixok2: @@ -149695,7 +149924,7 @@ wbody8: br i1 %t49, label %ixok10, label %ixbad11 ixbad11: %t50 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str11214, i32 %t44, i32 %t48) + call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str11225, i32 %t44, i32 %t48) call void @exit(i32 1) unreachable ixok10: @@ -149729,7 +149958,7 @@ then12: br i1 %t75, label %ixok15, label %ixbad16 ixbad16: %t76 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t76, ptr @.fmt_bounds, ptr @.str11215, i32 %t70, i32 %t74) + call i32 (ptr, ptr, ...) @fprintf(ptr %t76, ptr @.fmt_bounds, ptr @.str11226, i32 %t70, i32 %t74) call void @exit(i32 1) unreachable ixok15: @@ -149742,8 +149971,8 @@ ixok15: %t83 = load ptr, ptr %t53 %t84 = getelementptr inbounds %Cmp_Node, ptr %t83, i32 0, i32 1 %t85 = load ptr, ptr %t84 - %t86 = call ptr @lp_str_concat(ptr @.str11216, ptr %t85) - %t87 = call ptr @lp_str_concat(ptr %t86, ptr @.str11217) + %t86 = call ptr @lp_str_concat(ptr @.str11227, ptr %t85) + %t87 = call ptr @lp_str_concat(ptr %t86, ptr @.str11228) %t88 = load ptr, ptr %t1 %t89 = call ptr @lp_str_concat(ptr %t87, ptr %t88) call void @fn_ck_give(ptr %t78, ptr %t79, ptr %t82, ptr %t89) @@ -149775,12 +150004,12 @@ then19: %t106 = getelementptr inbounds %Cmp_Node, ptr %t105, i32 0, i32 4 %t107 = load ptr, ptr %t106 %t108 = load ptr, ptr %t1 - %t109 = call ptr @lp_str_concat(ptr %t108, ptr @.str11219) + %t109 = call ptr @lp_str_concat(ptr %t108, ptr @.str11230) %t110 = load ptr, ptr %t53 %t111 = getelementptr inbounds %Cmp_Node, ptr %t110, i32 0, i32 1 %t112 = load ptr, ptr %t111 %t113 = call ptr @lp_str_concat(ptr %t109, ptr %t112) - call void @fn_ck_err(ptr @.str11218, ptr %t107, ptr %t113) + call void @fn_ck_err(ptr @.str11229, ptr %t107, ptr %t113) br label %ifend21 ifend21: %t114 = load i32, ptr %t35 @@ -149811,7 +150040,7 @@ wbody23: br i1 %t131, label %ixok25, label %ixbad26 ixbad26: %t132 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t132, ptr @.fmt_bounds, ptr @.str11220, i32 %t126, i32 %t130) + call i32 (ptr, ptr, ...) @fprintf(ptr %t132, ptr @.fmt_bounds, ptr @.str11231, i32 %t126, i32 %t130) call void @exit(i32 1) unreachable ixok25: @@ -149825,8 +150054,8 @@ ixok25: then27: %t139 = load ptr, ptr %t0 %t140 = load ptr, ptr %t1 - %t141 = call ptr @lp_str_concat(ptr @.str11222, ptr %t140) - %t142 = call ptr @lp_str_concat(ptr %t141, ptr @.str11223) + %t141 = call ptr @lp_str_concat(ptr @.str11233, ptr %t140) + %t142 = call ptr @lp_str_concat(ptr %t141, ptr @.str11234) %t143 = load ptr, ptr %t2 %t144 = load i32, ptr %t116 %t145 = getelementptr inbounds %LSlice, ptr %t143, i32 0, i32 0 @@ -149837,15 +150066,15 @@ then27: br i1 %t149, label %ixok30, label %ixbad31 ixbad31: %t150 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t150, ptr @.fmt_bounds, ptr @.str11224, i32 %t144, i32 %t148) + call i32 (ptr, ptr, ...) @fprintf(ptr %t150, ptr @.fmt_bounds, ptr @.str11235, i32 %t144, i32 %t148) call void @exit(i32 1) unreachable ixok30: %t151 = getelementptr inbounds ptr, ptr %t146, i32 %t144 %t152 = load ptr, ptr %t151 %t153 = call ptr @lp_str_concat(ptr %t142, ptr %t152) - %t154 = call ptr @lp_str_concat(ptr %t153, ptr @.str11225) - call void @fn_ck_err(ptr @.str11221, ptr %t139, ptr %t154) + %t154 = call ptr @lp_str_concat(ptr %t153, ptr @.str11236) + call void @fn_ck_err(ptr @.str11232, ptr %t139, ptr %t154) br label %ifend29 ifend29: %t155 = load i32, ptr %t116 @@ -149885,8 +150114,8 @@ scend33: then34: %t178 = load ptr, ptr %t0 %t179 = load ptr, ptr %t1 - %t180 = call ptr @lp_str_concat(ptr @.str11227, ptr %t179) - %t181 = call ptr @lp_str_concat(ptr %t180, ptr @.str11228) + %t180 = call ptr @lp_str_concat(ptr @.str11238, ptr %t179) + %t181 = call ptr @lp_str_concat(ptr %t180, ptr @.str11239) %t182 = load ptr, ptr %t2 %t183 = load i32, ptr %t9 %t184 = getelementptr inbounds %LSlice, ptr %t182, i32 0, i32 0 @@ -149897,15 +150126,15 @@ then34: br i1 %t188, label %ixok37, label %ixbad38 ixbad38: %t189 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t189, ptr @.fmt_bounds, ptr @.str11229, i32 %t183, i32 %t187) + call i32 (ptr, ptr, ...) @fprintf(ptr %t189, ptr @.fmt_bounds, ptr @.str11240, i32 %t183, i32 %t187) call void @exit(i32 1) unreachable ixok37: %t190 = getelementptr inbounds ptr, ptr %t185, i32 %t183 %t191 = load ptr, ptr %t190 %t192 = call ptr @lp_str_concat(ptr %t181, ptr %t191) - %t193 = call ptr @lp_str_concat(ptr %t192, ptr @.str11230) - call void @fn_ck_err(ptr @.str11226, ptr %t178, ptr %t193) + %t193 = call ptr @lp_str_concat(ptr %t192, ptr @.str11241) + call void @fn_ck_err(ptr @.str11237, ptr %t178, ptr %t193) br label %ifend36 else35: %t194 = load i32, ptr %t9 @@ -149919,17 +150148,17 @@ else35: then39: %t201 = load ptr, ptr %t0 %t202 = load ptr, ptr %t1 - %t203 = call ptr @lp_str_concat(ptr %t202, ptr @.str11232) + %t203 = call ptr @lp_str_concat(ptr %t202, ptr @.str11243) %t204 = load ptr, ptr %t3 %t205 = getelementptr inbounds %LSlice, ptr %t204, i32 0, i32 1 %t206 = load i32, ptr %t205 %t207 = call ptr @fn_itoa(i32 %t206) %t208 = call ptr @lp_str_concat(ptr %t203, ptr %t207) - %t209 = call ptr @lp_str_concat(ptr %t208, ptr @.str11233) + %t209 = call ptr @lp_str_concat(ptr %t208, ptr @.str11244) %t210 = load i32, ptr %t9 %t211 = call ptr @fn_itoa(i32 %t210) %t212 = call ptr @lp_str_concat(ptr %t209, ptr %t211) - call void @fn_ck_err(ptr @.str11231, ptr %t201, ptr %t212) + call void @fn_ck_err(ptr @.str11242, ptr %t201, ptr %t212) br label %ifend41 ifend41: br label %ifend36 @@ -149963,7 +150192,7 @@ then45: br i1 %t232, label %ixok48, label %ixbad49 ixbad49: %t233 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t233, ptr @.fmt_bounds, ptr @.str11234, i32 %t227, i32 %t231) + call i32 (ptr, ptr, ...) @fprintf(ptr %t233, ptr @.fmt_bounds, ptr @.str11245, i32 %t227, i32 %t231) call void @exit(i32 1) unreachable ixok48: @@ -149984,7 +150213,7 @@ ifend47: br i1 %t244, label %ixok50, label %ixbad51 ixbad51: %t245 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t245, ptr @.fmt_bounds, ptr @.str11235, i32 %t239, i32 %t243) + call i32 (ptr, ptr, ...) @fprintf(ptr %t245, ptr @.fmt_bounds, ptr @.str11246, i32 %t239, i32 %t243) call void @exit(i32 1) unreachable ixok50: @@ -150011,7 +150240,7 @@ then52: br i1 %t263, label %ixok55, label %ixbad56 ixbad56: %t264 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t264, ptr @.fmt_bounds, ptr @.str11236, i32 %t258, i32 %t262) + call i32 (ptr, ptr, ...) @fprintf(ptr %t264, ptr @.fmt_bounds, ptr @.str11247, i32 %t258, i32 %t262) call void @exit(i32 1) unreachable ixok55: @@ -150030,7 +150259,7 @@ ixok55: br i1 %t276, label %ixok57, label %ixbad58 ixbad58: %t277 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t277, ptr @.fmt_bounds, ptr @.str11237, i32 %t271, i32 %t275) + call i32 (ptr, ptr, ...) @fprintf(ptr %t277, ptr @.fmt_bounds, ptr @.str11248, i32 %t271, i32 %t275) call void @exit(i32 1) unreachable ixok57: @@ -150039,8 +150268,8 @@ ixok57: %t280 = load i32, ptr %t213 %t281 = add i32 %t280, 1 %t282 = call ptr @fn_itoa(i32 %t281) - %t283 = call ptr @lp_str_concat(ptr @.str11238, ptr %t282) - %t284 = call ptr @lp_str_concat(ptr %t283, ptr @.str11239) + %t283 = call ptr @lp_str_concat(ptr @.str11249, ptr %t282) + %t284 = call ptr @lp_str_concat(ptr %t283, ptr @.str11250) %t285 = load ptr, ptr %t1 %t286 = call ptr @lp_str_concat(ptr %t284, ptr %t285) call void @fn_ck_give(ptr %t266, ptr %t267, ptr %t279, ptr %t286) @@ -150090,7 +150319,7 @@ wbody1: br i1 %t20, label %ixok3, label %ixbad4 ixbad4: %t21 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11240, i32 %t15, i32 %t19) + call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11251, i32 %t15, i32 %t19) call void @exit(i32 1) unreachable ixok3: @@ -150149,7 +150378,7 @@ wbody1: br i1 %t19, label %ixok3, label %ixbad4 ixbad4: %t20 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str11241, i32 %t14, i32 %t18) + call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str11252, i32 %t14, i32 %t18) call void @exit(i32 1) unreachable ixok3: @@ -150191,14 +150420,14 @@ entry: store ptr %arg_e, ptr %t0 store ptr %arg_name, ptr %t1 %t7 = load ptr, ptr %t1 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str11242) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str11253) %t9 = icmp ne i32 %t8, 0 %t10 = zext i1 %t9 to i32 store i32 %t10, ptr %t6 br i1 %t9, label %scend1, label %sc0 sc0: %t11 = load ptr, ptr %t1 - %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str11243) + %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str11254) %t13 = icmp ne i32 %t12, 0 %t14 = zext i1 %t13 to i32 store i32 %t14, ptr %t6 @@ -150211,7 +150440,7 @@ scend1: br i1 %t16, label %scend3, label %sc2 sc2: %t18 = load ptr, ptr %t1 - %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str11244) + %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str11255) %t20 = icmp ne i32 %t19, 0 %t21 = zext i1 %t20 to i32 store i32 %t21, ptr %t5 @@ -150224,7 +150453,7 @@ scend3: br i1 %t23, label %scend5, label %sc4 sc4: %t25 = load ptr, ptr %t1 - %t26 = call i32 @lp_str_eq(ptr %t25, ptr @.str11245) + %t26 = call i32 @lp_str_eq(ptr %t25, ptr @.str11256) %t27 = icmp ne i32 %t26, 0 %t28 = zext i1 %t27 to i32 store i32 %t28, ptr %t4 @@ -150237,7 +150466,7 @@ scend5: br i1 %t30, label %scend7, label %sc6 sc6: %t32 = load ptr, ptr %t1 - %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str11246) + %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str11257) %t34 = icmp ne i32 %t33, 0 %t35 = zext i1 %t34 to i32 store i32 %t35, ptr %t3 @@ -150250,7 +150479,7 @@ scend7: br i1 %t37, label %scend9, label %sc8 sc8: %t39 = load ptr, ptr %t1 - %t40 = call i32 @lp_str_eq(ptr %t39, ptr @.str11247) + %t40 = call i32 @lp_str_eq(ptr %t39, ptr @.str11258) %t41 = icmp ne i32 %t40, 0 %t42 = zext i1 %t41 to i32 store i32 %t42, ptr %t2 @@ -150267,14 +150496,14 @@ then10: br label %ret ifend12: %t48 = load ptr, ptr %t1 - %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str11248) + %t49 = call i32 @lp_str_eq(ptr %t48, ptr @.str11259) %t50 = icmp ne i32 %t49, 0 %t51 = zext i1 %t50 to i32 store i32 %t51, ptr %t47 br i1 %t50, label %scend14, label %sc13 sc13: %t52 = load ptr, ptr %t1 - %t53 = call i32 @lp_str_eq(ptr %t52, ptr @.str11249) + %t53 = call i32 @lp_str_eq(ptr %t52, ptr @.str11260) %t54 = icmp ne i32 %t53, 0 %t55 = zext i1 %t54 to i32 store i32 %t55, ptr %t47 @@ -150295,14 +150524,14 @@ then15: br label %ret ifend17: %t65 = load ptr, ptr %t1 - %t66 = call i32 @lp_str_eq(ptr %t65, ptr @.str11250) + %t66 = call i32 @lp_str_eq(ptr %t65, ptr @.str11261) %t67 = icmp ne i32 %t66, 0 %t68 = zext i1 %t67 to i32 store i32 %t68, ptr %t64 br i1 %t67, label %scend19, label %sc18 sc18: %t69 = load ptr, ptr %t1 - %t70 = call i32 @lp_str_eq(ptr %t69, ptr @.str11251) + %t70 = call i32 @lp_str_eq(ptr %t69, ptr @.str11262) %t71 = icmp ne i32 %t70, 0 %t72 = zext i1 %t71 to i32 store i32 %t72, ptr %t64 @@ -150314,11 +150543,11 @@ scend19: then20: %t75 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t75) - store ptr @.str11252, ptr %retval + store ptr @.str11263, ptr %retval br label %ret ifend22: %t77 = load ptr, ptr %t1 - %t78 = call i32 @lp_str_eq(ptr %t77, ptr @.str11253) + %t78 = call i32 @lp_str_eq(ptr %t77, ptr @.str11264) %t79 = icmp ne i32 %t78, 0 %t80 = zext i1 %t79 to i32 store i32 %t80, ptr %t76 @@ -150351,7 +150580,7 @@ then25: br i1 %t99, label %ixok28, label %ixbad29 ixbad29: %t100 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t100, ptr @.fmt_bounds, ptr @.str11254, i32 0, i32 %t98) + call i32 (ptr, ptr, ...) @fprintf(ptr %t100, ptr @.fmt_bounds, ptr @.str11265, i32 0, i32 %t98) call void @exit(i32 1) unreachable ixok28: @@ -150370,7 +150599,7 @@ ixok28: br i1 %t112, label %ixok30, label %ixbad31 ixbad31: %t113 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t113, ptr @.fmt_bounds, ptr @.str11256, i32 1, i32 %t111) + call i32 (ptr, ptr, ...) @fprintf(ptr %t113, ptr @.fmt_bounds, ptr @.str11267, i32 1, i32 %t111) call void @exit(i32 1) unreachable ixok30: @@ -150388,13 +150617,13 @@ ixok30: br i1 %t124, label %ixok32, label %ixbad33 ixbad33: %t125 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t125, ptr @.fmt_bounds, ptr @.str11257, i32 1, i32 %t123) + call i32 (ptr, ptr, ...) @fprintf(ptr %t125, ptr @.fmt_bounds, ptr @.str11268, i32 1, i32 %t123) call void @exit(i32 1) unreachable ixok32: %t126 = getelementptr inbounds ptr, ptr %t121, i32 1 %t127 = load ptr, ptr %t126 - call void @fn_ck_give(ptr @.str11255, ptr %t116, ptr %t127, ptr @.str11258) + call void @fn_ck_give(ptr @.str11266, ptr %t116, ptr %t127, ptr @.str11269) %t128 = load ptr, ptr %t0 %t129 = getelementptr inbounds %Cmp_Node, ptr %t128, i32 0, i32 7 %t130 = load ptr, ptr %t129 @@ -150406,7 +150635,7 @@ ixok32: br i1 %t135, label %ixok34, label %ixbad35 ixbad35: %t136 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t136, ptr @.fmt_bounds, ptr @.str11260, i32 2, i32 %t134) + call i32 (ptr, ptr, ...) @fprintf(ptr %t136, ptr @.fmt_bounds, ptr @.str11271, i32 2, i32 %t134) call void @exit(i32 1) unreachable ixok34: @@ -150424,13 +150653,13 @@ ixok34: br i1 %t147, label %ixok36, label %ixbad37 ixbad37: %t148 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t148, ptr @.fmt_bounds, ptr @.str11261, i32 2, i32 %t146) + call i32 (ptr, ptr, ...) @fprintf(ptr %t148, ptr @.fmt_bounds, ptr @.str11272, i32 2, i32 %t146) call void @exit(i32 1) unreachable ixok36: %t149 = getelementptr inbounds ptr, ptr %t144, i32 2 %t150 = load ptr, ptr %t149 - call void @fn_ck_give(ptr @.str11259, ptr %t139, ptr %t150, ptr @.str11262) + call void @fn_ck_give(ptr @.str11270, ptr %t139, ptr %t150, ptr @.str11273) %t152 = load ptr, ptr %t104 %t153 = call i32 @fn_ck_unknown(ptr %t152) %t154 = icmp eq i32 %t153, 0 @@ -150456,8 +150685,8 @@ then40: %t166 = load ptr, ptr %t0 %t167 = load ptr, ptr %t104 %t168 = call ptr @fn_ck_a(ptr %t167) - %t169 = call ptr @lp_str_concat(ptr @.str11264, ptr %t168) - call void @fn_ck_err(ptr @.str11263, ptr %t166, ptr %t169) + %t169 = call ptr @lp_str_concat(ptr @.str11275, ptr %t168) + call void @fn_ck_err(ptr @.str11274, ptr %t166, ptr %t169) br label %ifend42 ifend42: %t170 = load ptr, ptr %t104 @@ -150465,14 +150694,14 @@ ifend42: br label %ret ifend27: %t172 = load ptr, ptr %t1 - %t173 = call i32 @lp_str_eq(ptr %t172, ptr @.str11265) + %t173 = call i32 @lp_str_eq(ptr %t172, ptr @.str11276) %t174 = icmp ne i32 %t173, 0 %t175 = zext i1 %t174 to i32 store i32 %t175, ptr %t171 br i1 %t174, label %scend44, label %sc43 sc43: %t176 = load ptr, ptr %t1 - %t177 = call i32 @lp_str_eq(ptr %t176, ptr @.str11266) + %t177 = call i32 @lp_str_eq(ptr %t176, ptr @.str11277) %t178 = icmp ne i32 %t177, 0 %t179 = zext i1 %t178 to i32 store i32 %t179, ptr %t171 @@ -150484,48 +150713,48 @@ scend44: then45: %t182 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t182) - store ptr @.str11267, ptr %retval + store ptr @.str11278, ptr %retval br label %ret ifend47: %t183 = load ptr, ptr %t1 - %t184 = call i32 @lp_str_eq(ptr %t183, ptr @.str11268) + %t184 = call i32 @lp_str_eq(ptr %t183, ptr @.str11279) %t185 = icmp ne i32 %t184, 0 br i1 %t185, label %then48, label %ifend50 then48: %t186 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t186) - store ptr @.str11269, ptr %retval + store ptr @.str11280, ptr %retval br label %ret ifend50: %t187 = load ptr, ptr %t1 - %t188 = call i32 @lp_str_eq(ptr %t187, ptr @.str11270) + %t188 = call i32 @lp_str_eq(ptr %t187, ptr @.str11281) %t189 = icmp ne i32 %t188, 0 br i1 %t189, label %then51, label %ifend53 then51: %t190 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t190) - store ptr @.str11271, ptr %retval + store ptr @.str11282, ptr %retval br label %ret ifend53: %t191 = load ptr, ptr %t1 - %t192 = call i32 @lp_str_eq(ptr %t191, ptr @.str11272) + %t192 = call i32 @lp_str_eq(ptr %t191, ptr @.str11283) %t193 = icmp ne i32 %t192, 0 br i1 %t193, label %then54, label %ifend56 then54: %t194 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t194) - store ptr @.str11273, ptr %retval + store ptr @.str11284, ptr %retval br label %ret ifend56: %t196 = load ptr, ptr %t1 - %t197 = call i32 @lp_str_eq(ptr %t196, ptr @.str11274) + %t197 = call i32 @lp_str_eq(ptr %t196, ptr @.str11285) %t198 = icmp ne i32 %t197, 0 %t199 = zext i1 %t198 to i32 store i32 %t199, ptr %t195 br i1 %t198, label %scend58, label %sc57 sc57: %t200 = load ptr, ptr %t1 - %t201 = call i32 @lp_str_eq(ptr %t200, ptr @.str11275) + %t201 = call i32 @lp_str_eq(ptr %t200, ptr @.str11286) %t202 = icmp ne i32 %t201, 0 %t203 = zext i1 %t202 to i32 store i32 %t203, ptr %t195 @@ -150543,19 +150772,19 @@ then59: %t210 = trunc i64 %t209 to i32 %t211 = sub i32 %t210, 1 %t212 = call ptr @lp_str_slice(ptr %t207, i32 0, i32 %t211) - %t213 = call ptr @lp_str_concat(ptr @.str11276, ptr %t212) + %t213 = call ptr @lp_str_concat(ptr @.str11287, ptr %t212) store ptr %t213, ptr %retval br label %ret ifend61: %t215 = load ptr, ptr %t1 - %t216 = call i32 @lp_str_eq(ptr %t215, ptr @.str11277) + %t216 = call i32 @lp_str_eq(ptr %t215, ptr @.str11288) %t217 = icmp ne i32 %t216, 0 %t218 = zext i1 %t217 to i32 store i32 %t218, ptr %t214 br i1 %t217, label %scend63, label %sc62 sc62: %t219 = load ptr, ptr %t1 - %t220 = call i32 @lp_str_eq(ptr %t219, ptr @.str11278) + %t220 = call i32 @lp_str_eq(ptr %t219, ptr @.str11289) %t221 = icmp ne i32 %t220, 0 %t222 = zext i1 %t221 to i32 store i32 %t222, ptr %t214 @@ -150573,32 +150802,32 @@ then64: %t229 = trunc i64 %t228 to i32 %t230 = sub i32 %t229, 1 %t231 = call ptr @lp_str_slice(ptr %t226, i32 0, i32 %t230) - %t232 = call ptr @lp_str_concat(ptr @.str11279, ptr %t231) + %t232 = call ptr @lp_str_concat(ptr @.str11290, ptr %t231) store ptr %t232, ptr %retval br label %ret ifend66: %t233 = load ptr, ptr %t1 - %t234 = call i32 @lp_str_eq(ptr %t233, ptr @.str11280) + %t234 = call i32 @lp_str_eq(ptr %t233, ptr @.str11291) %t235 = icmp ne i32 %t234, 0 br i1 %t235, label %then67, label %ifend69 then67: %t236 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t236) - store ptr @.str11281, ptr %retval + store ptr @.str11292, ptr %retval br label %ret ifend69: %t237 = load ptr, ptr %t1 - %t238 = call i32 @lp_str_eq(ptr %t237, ptr @.str11282) + %t238 = call i32 @lp_str_eq(ptr %t237, ptr @.str11293) %t239 = icmp ne i32 %t238, 0 br i1 %t239, label %then70, label %ifend72 then70: %t240 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t240) - store ptr @.str11283, ptr %retval + store ptr @.str11294, ptr %retval br label %ret ifend72: %t242 = load ptr, ptr %t1 - %t243 = call i32 @lp_str_eq(ptr %t242, ptr @.str11284) + %t243 = call i32 @lp_str_eq(ptr %t242, ptr @.str11295) %t244 = icmp ne i32 %t243, 0 %t245 = zext i1 %t244 to i32 store i32 %t245, ptr %t241 @@ -150631,13 +150860,13 @@ then75: br i1 %t264, label %ixok78, label %ixbad79 ixbad79: %t265 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t265, ptr @.fmt_bounds, ptr @.str11285, i32 0, i32 %t263) + call i32 (ptr, ptr, ...) @fprintf(ptr %t265, ptr @.fmt_bounds, ptr @.str11296, i32 0, i32 %t263) call void @exit(i32 1) unreachable ixok78: %t266 = getelementptr inbounds ptr, ptr %t261, i32 0 %t267 = load ptr, ptr %t266 - call void @fn_ck_write_check(ptr %t267, ptr @.str11286) + call void @fn_ck_write_check(ptr %t267, ptr @.str11297) %t268 = load ptr, ptr %t0 %t269 = getelementptr inbounds %Cmp_Node, ptr %t268, i32 0, i32 7 %t270 = load ptr, ptr %t269 @@ -150649,7 +150878,7 @@ ixok78: br i1 %t275, label %ixok80, label %ixbad81 ixbad81: %t276 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t276, ptr @.fmt_bounds, ptr @.str11287, i32 0, i32 %t274) + call i32 (ptr, ptr, ...) @fprintf(ptr %t276, ptr @.fmt_bounds, ptr @.str11298, i32 0, i32 %t274) call void @exit(i32 1) unreachable ixok80: @@ -150668,7 +150897,7 @@ ixok80: br i1 %t288, label %ixok82, label %ixbad83 ixbad83: %t289 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t289, ptr @.fmt_bounds, ptr @.str11288, i32 1, i32 %t287) + call i32 (ptr, ptr, ...) @fprintf(ptr %t289, ptr @.fmt_bounds, ptr @.str11299, i32 1, i32 %t287) call void @exit(i32 1) unreachable ixok82: @@ -150710,7 +150939,7 @@ then86: br i1 %t317, label %ixok89, label %ixbad90 ixbad90: %t318 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t318, ptr @.fmt_bounds, ptr @.str11289, i32 1, i32 %t316) + call i32 (ptr, ptr, ...) @fprintf(ptr %t318, ptr @.fmt_bounds, ptr @.str11300, i32 1, i32 %t316) call void @exit(i32 1) unreachable ixok89: @@ -150718,11 +150947,11 @@ ixok89: %t320 = load ptr, ptr %t319 %t321 = load ptr, ptr %t280 %t322 = call ptr @fn_ck_a(ptr %t321) - %t323 = call ptr @lp_str_concat(ptr @.str11290, ptr %t322) + %t323 = call ptr @lp_str_concat(ptr @.str11301, ptr %t322) call void @fn_ck_give(ptr %t308, ptr %t309, ptr %t320, ptr %t323) br label %ifend88 ifend88: - store ptr @.str11291, ptr %retval + store ptr @.str11302, ptr %retval br label %ret ifend77: store ptr null, ptr %retval @@ -150752,13 +150981,13 @@ entry: br i1 %t9, label %ixok0, label %ixbad1 ixbad1: %t10 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t10, ptr @.fmt_bounds, ptr @.str11292, i32 %t4, i32 %t8) + call i32 (ptr, ptr, ...) @fprintf(ptr %t10, ptr @.fmt_bounds, ptr @.str11303, i32 %t4, i32 %t8) call void @exit(i32 1) unreachable ixok0: %t11 = getelementptr inbounds ptr, ptr %t6, i32 %t4 %t12 = load ptr, ptr %t11 - %t13 = call i32 @fn_has_sub(ptr %t12, ptr @.str11293) + %t13 = call i32 @fn_has_sub(ptr %t12, ptr @.str11304) %t14 = icmp eq i32 %t13, 0 %t15 = zext i1 %t14 to i32 %t16 = icmp ne i32 %t15, 0 @@ -150779,7 +151008,7 @@ sc5: %t25 = load ptr, ptr %t2 %t26 = getelementptr inbounds %Cmp_Node, ptr %t25, i32 0, i32 9 %t27 = load ptr, ptr %t26 - %t28 = call i32 @fn_has_sub(ptr %t27, ptr @.str11294) + %t28 = call i32 @fn_has_sub(ptr %t27, ptr @.str11305) %t29 = icmp ne i32 %t28, 0 %t30 = zext i1 %t29 to i32 store i32 %t30, ptr %t17 @@ -150813,7 +151042,7 @@ wbody11: br i1 %t47, label %ixok13, label %ixbad14 ixbad14: %t48 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t48, ptr @.fmt_bounds, ptr @.str11295, i32 %t42, i32 %t46) + call i32 (ptr, ptr, ...) @fprintf(ptr %t48, ptr @.fmt_bounds, ptr @.str11306, i32 %t42, i32 %t46) call void @exit(i32 1) unreachable ixok13: @@ -150867,7 +151096,7 @@ put19: %t81 = load ptr, ptr %t2 %t82 = getelementptr inbounds %Cmp_Node, ptr %t81, i32 0, i32 1 %t83 = load ptr, ptr %t82 - %t84 = call ptr @lp_str_concat(ptr %t83, ptr @.str11297) + %t84 = call ptr @lp_str_concat(ptr %t83, ptr @.str11308) %t85 = load ptr, ptr @g_g_al_ns %t86 = load i32, ptr %t1 %t87 = getelementptr inbounds %LSlice, ptr %t85, i32 0, i32 0 @@ -150878,14 +151107,14 @@ put19: br i1 %t91, label %ixok20, label %ixbad21 ixbad21: %t92 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t92, ptr @.fmt_bounds, ptr @.str11298, i32 %t86, i32 %t90) + call i32 (ptr, ptr, ...) @fprintf(ptr %t92, ptr @.fmt_bounds, ptr @.str11309, i32 %t86, i32 %t90) call void @exit(i32 1) unreachable ixok20: %t93 = getelementptr inbounds ptr, ptr %t88, i32 %t86 %t94 = load ptr, ptr %t93 %t95 = call ptr @lp_str_concat(ptr %t84, ptr %t94) - %t96 = call ptr @lp_str_concat(ptr %t95, ptr @.str11299) + %t96 = call ptr @lp_str_concat(ptr %t95, ptr @.str11310) %t97 = load ptr, ptr @g_g_al_meth %t98 = load i32, ptr %t1 %t99 = getelementptr inbounds %LSlice, ptr %t97, i32 0, i32 0 @@ -150896,26 +151125,26 @@ ixok20: br i1 %t103, label %ixok22, label %ixbad23 ixbad23: %t104 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t104, ptr @.fmt_bounds, ptr @.str11300, i32 %t98, i32 %t102) + call i32 (ptr, ptr, ...) @fprintf(ptr %t104, ptr @.fmt_bounds, ptr @.str11311, i32 %t98, i32 %t102) call void @exit(i32 1) unreachable ixok22: %t105 = getelementptr inbounds ptr, ptr %t100, i32 %t98 %t106 = load ptr, ptr %t105 %t107 = call ptr @lp_str_concat(ptr %t96, ptr %t106) - %t108 = call ptr @lp_str_concat(ptr %t107, ptr @.str11301) + %t108 = call ptr @lp_str_concat(ptr %t107, ptr @.str11312) %t109 = load ptr, ptr %t0 %t110 = getelementptr inbounds %Cmp_Node, ptr %t109, i32 0, i32 9 %t111 = load ptr, ptr %t110 %t112 = call ptr @lp_str_concat(ptr %t108, ptr %t111) - %t113 = call ptr @lp_str_concat(ptr %t112, ptr @.str11302) + %t113 = call ptr @lp_str_concat(ptr %t112, ptr @.str11313) %t114 = load ptr, ptr %t0 %t115 = getelementptr inbounds %Cmp_Node, ptr %t114, i32 0, i32 8 %t116 = load i32, ptr %t115 %t117 = call ptr @fn_itoa(i32 %t116) %t118 = call ptr @lp_str_concat(ptr %t113, ptr %t117) - %t119 = call ptr @lp_str_concat(ptr %t118, ptr @.str11303) - call void @fn_ck_err(ptr @.str11296, ptr %t80, ptr %t119) + %t119 = call ptr @lp_str_concat(ptr %t118, ptr @.str11314) + call void @fn_ck_err(ptr @.str11307, ptr %t80, ptr %t119) br label %ret ret: ret void @@ -151015,7 +151244,7 @@ then10: %t56 = load ptr, ptr %t25 %t57 = getelementptr inbounds %Cmp_Node, ptr %t56, i32 0, i32 1 %t58 = load ptr, ptr %t57 - %t59 = call i32 @lp_str_eq(ptr %t58, ptr @.str11304) + %t59 = call i32 @lp_str_eq(ptr %t58, ptr @.str11315) %t60 = icmp ne i32 %t59, 0 br i1 %t60, label %then13, label %ifend15 then13: @@ -151023,7 +151252,7 @@ then13: %t62 = load ptr, ptr %t4 %t63 = getelementptr inbounds %Cmp_Node, ptr %t62, i32 0, i32 1 %t64 = load ptr, ptr %t63 - %t65 = call ptr @lp_str_concat(ptr @.str11305, ptr %t64) + %t65 = call ptr @lp_str_concat(ptr @.str11316, ptr %t64) call void @fn_ck_raw(ptr %t61, ptr %t65) br label %ifend15 ifend15: @@ -151051,7 +151280,7 @@ then16: br i1 %t84, label %ixok19, label %ixbad20 ixbad20: %t85 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str11306, i32 %t79, i32 %t83) + call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str11317, i32 %t79, i32 %t83) call void @exit(i32 1) unreachable ixok19: @@ -151087,7 +151316,7 @@ then24: br i1 %t107, label %ixok27, label %ixbad28 ixbad28: %t108 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t108, ptr @.fmt_bounds, ptr @.str11307, i32 %t102, i32 %t106) + call i32 (ptr, ptr, ...) @fprintf(ptr %t108, ptr @.fmt_bounds, ptr @.str11318, i32 %t102, i32 %t106) call void @exit(i32 1) unreachable ixok27: @@ -151105,12 +151334,12 @@ then29: %t117 = load ptr, ptr %t25 %t118 = getelementptr inbounds %Cmp_Node, ptr %t117, i32 0, i32 1 %t119 = load ptr, ptr %t118 - %t120 = call ptr @lp_str_concat(ptr %t119, ptr @.str11308) + %t120 = call ptr @lp_str_concat(ptr %t119, ptr @.str11319) %t121 = load ptr, ptr %t4 %t122 = getelementptr inbounds %Cmp_Node, ptr %t121, i32 0, i32 1 %t123 = load ptr, ptr %t122 %t124 = call ptr @lp_str_concat(ptr %t120, ptr %t123) - %t125 = call ptr @lp_str_concat(ptr %t124, ptr @.str11309) + %t125 = call ptr @lp_str_concat(ptr %t124, ptr @.str11320) call void @fn_ck_raw(ptr %t116, ptr %t125) br label %ifend31 ifend31: @@ -151132,7 +151361,7 @@ then32: br i1 %t136, label %ixok35, label %ixbad36 ixbad36: %t137 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t137, ptr @.fmt_bounds, ptr @.str11310, i32 %t131, i32 %t135) + call i32 (ptr, ptr, ...) @fprintf(ptr %t137, ptr @.fmt_bounds, ptr @.str11321, i32 %t131, i32 %t135) call void @exit(i32 1) unreachable ixok35: @@ -151155,7 +151384,7 @@ then37: br i1 %t151, label %ixok40, label %ixbad41 ixbad41: %t152 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t152, ptr @.fmt_bounds, ptr @.str11311, i32 %t146, i32 %t150) + call i32 (ptr, ptr, ...) @fprintf(ptr %t152, ptr @.fmt_bounds, ptr @.str11322, i32 %t146, i32 %t150) call void @exit(i32 1) unreachable ixok40: @@ -151175,7 +151404,7 @@ ifend39: br i1 %t162, label %ixok42, label %ixbad43 ixbad43: %t163 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t163, ptr @.fmt_bounds, ptr @.str11312, i32 %t157, i32 %t161) + call i32 (ptr, ptr, ...) @fprintf(ptr %t163, ptr @.fmt_bounds, ptr @.str11323, i32 %t157, i32 %t161) call void @exit(i32 1) unreachable ixok42: @@ -151189,7 +151418,7 @@ ixok42: %t170 = load ptr, ptr %t25 %t171 = getelementptr inbounds %Cmp_Node, ptr %t170, i32 0, i32 1 %t172 = load ptr, ptr %t171 - %t173 = call ptr @lp_str_concat(ptr %t172, ptr @.str11313) + %t173 = call ptr @lp_str_concat(ptr %t172, ptr @.str11324) %t174 = load ptr, ptr %t4 %t175 = getelementptr inbounds %Cmp_Node, ptr %t174, i32 0, i32 1 %t176 = load ptr, ptr %t175 @@ -151205,7 +151434,7 @@ ixok42: ifend34: %t183 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t183) - store ptr @.str11314, ptr %retval + store ptr @.str11325, ptr %retval br label %ret ifend18: %t184 = load ptr, ptr %t0 @@ -151214,7 +151443,7 @@ ifend18: %t186 = getelementptr inbounds %Cmp_Node, ptr %t185, i32 0, i32 1 %t187 = load ptr, ptr %t186 %t188 = call ptr @fn_ns_lower(ptr %t187) - %t189 = call ptr @lp_str_concat(ptr %t188, ptr @.str11315) + %t189 = call ptr @lp_str_concat(ptr %t188, ptr @.str11326) %t190 = load ptr, ptr %t4 %t191 = getelementptr inbounds %Cmp_Node, ptr %t190, i32 0, i32 1 %t192 = load ptr, ptr %t191 @@ -151263,7 +151492,7 @@ then49: store ptr %t222, ptr %retval br label %ret ifend51: - store ptr @.str11316, ptr %retval + store ptr @.str11327, ptr %retval br label %ret ifend12: %t223 = load ptr, ptr %t25 @@ -151314,14 +151543,14 @@ ifend59: ifend54: %t255 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t255) - store ptr @.str11317, ptr %retval + store ptr @.str11328, ptr %retval br label %ret ifend5: %t256 = load ptr, ptr %t4 %t257 = call ptr @fn_ck_expr(ptr %t256) %t258 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t258) - store ptr @.str11318, ptr %retval + store ptr @.str11329, ptr %retval br label %ret ret: %t259 = load ptr, ptr %retval @@ -151362,7 +151591,7 @@ then0: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str11319, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str11330, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -151384,7 +151613,7 @@ then5: br i1 %t29, label %ixok8, label %ixbad9 ixbad9: %t30 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str11320, i32 %t24, i32 %t28) + call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str11331, i32 %t24, i32 %t28) call void @exit(i32 1) unreachable ixok8: @@ -151396,7 +151625,7 @@ ixok8: ifend7: %t34 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t34) - store ptr @.str11321, ptr %retval + store ptr @.str11332, ptr %retval br label %ret ifend2: %t35 = load ptr, ptr %t1 @@ -151406,7 +151635,7 @@ ifend2: then10: %t38 = load ptr, ptr %t0 %t39 = load ptr, ptr %t1 - %t40 = call ptr @lp_str_concat(ptr %t39, ptr @.str11322) + %t40 = call ptr @lp_str_concat(ptr %t39, ptr @.str11333) call void @fn_ck_raw(ptr %t38, ptr %t40) br label %ifend12 ifend12: @@ -151476,7 +151705,7 @@ ifend21: then22: %t86 = load ptr, ptr %t0 %t87 = load ptr, ptr %t1 - %t88 = call ptr @lp_str_concat(ptr @.str11323, ptr %t87) + %t88 = call ptr @lp_str_concat(ptr @.str11334, ptr %t87) call void @fn_ck_raw(ptr %t86, ptr %t88) %t89 = load ptr, ptr %t0 call void @fn_ck_extern_writes(ptr %t89) @@ -151531,7 +151760,7 @@ then27: ifend29: %t123 = load ptr, ptr %t0 call void @fn_ck_walk_args(ptr %t123) - store ptr @.str11324, ptr %retval + store ptr @.str11335, ptr %retval br label %ret ret: %t124 = load ptr, ptr %retval @@ -151598,7 +151827,7 @@ wbody4: br i1 %t39, label %ixok6, label %ixbad7 ixbad7: %t40 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11325, i32 %t34, i32 %t38) + call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11336, i32 %t34, i32 %t38) call void @exit(i32 1) unreachable ixok6: @@ -151636,8 +151865,8 @@ then11: %t68 = load ptr, ptr %t43 %t69 = getelementptr inbounds %Cmp_Node, ptr %t68, i32 0, i32 1 %t70 = load ptr, ptr %t69 - %t71 = call ptr @lp_str_concat(ptr @.str11326, ptr %t70) - %t72 = call ptr @lp_str_concat(ptr %t71, ptr @.str11327) + %t71 = call ptr @lp_str_concat(ptr @.str11337, ptr %t70) + %t72 = call ptr @lp_str_concat(ptr %t71, ptr @.str11338) %t73 = load ptr, ptr %t0 %t74 = getelementptr inbounds %Cmp_Node, ptr %t73, i32 0, i32 1 %t75 = load ptr, ptr %t74 @@ -151711,7 +151940,7 @@ wbody7: br i1 %t32, label %ixok9, label %ixbad10 ixbad10: %t33 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str11328, i32 %t27, i32 %t31) + call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str11339, i32 %t27, i32 %t31) call void @exit(i32 1) unreachable ixok9: @@ -151767,7 +151996,7 @@ entry: %t118 = alloca i32 %t119 = alloca i32 store ptr %arg_s, ptr %t0 - store ptr @.str11329, ptr %t1 + store ptr @.str11340, ptr %t1 %t2 = load ptr, ptr %t0 %t3 = getelementptr inbounds %Cmp_Node, ptr %t2, i32 0, i32 3 %t4 = load ptr, ptr %t3 @@ -151836,7 +152065,7 @@ sc9: %t51 = load ptr, ptr %t0 %t52 = getelementptr inbounds %Cmp_Node, ptr %t51, i32 0, i32 11 %t53 = load ptr, ptr %t52 - %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str11330) + %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str11341) %t55 = icmp ne i32 %t54, 0 %t56 = zext i1 %t55 to i32 store i32 %t56, ptr %t43 @@ -151859,14 +152088,14 @@ then14: %t67 = load ptr, ptr %t0 %t68 = getelementptr inbounds %Cmp_Node, ptr %t67, i32 0, i32 1 %t69 = load ptr, ptr %t68 - %t70 = call ptr @lp_str_concat(ptr @.str11332, ptr %t69) - %t71 = call ptr @lp_str_concat(ptr %t70, ptr @.str11333) + %t70 = call ptr @lp_str_concat(ptr @.str11343, ptr %t69) + %t71 = call ptr @lp_str_concat(ptr %t70, ptr @.str11344) %t72 = load ptr, ptr %t0 %t73 = getelementptr inbounds %Cmp_Node, ptr %t72, i32 0, i32 3 %t74 = load ptr, ptr %t73 %t75 = call ptr @lp_str_concat(ptr %t71, ptr %t74) - %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str11334) - call void @fn_ck_err(ptr @.str11331, ptr %t66, ptr %t76) + %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str11345) + call void @fn_ck_err(ptr @.str11342, ptr %t66, ptr %t76) br label %ifend16 ifend16: %t77 = load ptr, ptr %t0 @@ -152021,7 +152250,7 @@ then2: %t25 = load ptr, ptr %t0 %t26 = getelementptr inbounds %Cmp_Node, ptr %t25, i32 0, i32 4 %t27 = load ptr, ptr %t26 - call void @fn_ck_write_check(ptr %t27, ptr @.str11335) + call void @fn_ck_write_check(ptr %t27, ptr @.str11346) br label %ifend4 ifend4: %t28 = load ptr, ptr %t0 @@ -152032,7 +152261,7 @@ ifend4: %t33 = load ptr, ptr %t0 %t34 = getelementptr inbounds %Cmp_Node, ptr %t33, i32 0, i32 1 %t35 = load ptr, ptr %t34 - %t36 = call i32 @lp_str_eq(ptr %t35, ptr @.str11336) + %t36 = call i32 @lp_str_eq(ptr %t35, ptr @.str11347) %t37 = icmp ne i32 %t36, 0 br i1 %t37, label %then5, label %ifend7 then5: @@ -152045,7 +152274,7 @@ ifend7: %t41 = load ptr, ptr %t40 %t42 = call ptr @fn_ck_expr(ptr %t41) store ptr %t42, ptr %t43 - store ptr @.str11337, ptr %t44 + store ptr @.str11348, ptr %t44 %t45 = load ptr, ptr %t0 %t46 = getelementptr inbounds %Cmp_Node, ptr %t45, i32 0, i32 4 %t47 = load ptr, ptr %t46 @@ -152079,14 +152308,14 @@ then11: %t68 = load ptr, ptr %t67 %t69 = getelementptr inbounds %Cmp_Node, ptr %t68, i32 0, i32 1 %t70 = load ptr, ptr %t69 - %t71 = call ptr @lp_str_concat(ptr @.str11338, ptr %t70) + %t71 = call ptr @lp_str_concat(ptr @.str11349, ptr %t70) store ptr %t71, ptr %t44 br label %ifend13 ifend13: %t72 = load ptr, ptr %t0 %t73 = getelementptr inbounds %Cmp_Node, ptr %t72, i32 0, i32 1 %t74 = load ptr, ptr %t73 - %t75 = call i32 @lp_str_eq(ptr %t74, ptr @.str11339) + %t75 = call i32 @lp_str_eq(ptr %t74, ptr @.str11350) %t76 = icmp ne i32 %t75, 0 br i1 %t76, label %then14, label %ifend16 then14: @@ -152168,7 +152397,7 @@ wbody1: br i1 %t23, label %ixok3, label %ixbad4 ixbad4: %t24 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str11340, i32 %t18, i32 %t22) + call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str11351, i32 %t18, i32 %t22) call void @exit(i32 1) unreachable ixok3: @@ -152203,7 +152432,7 @@ wbody6: br i1 %t48, label %ixok8, label %ixbad9 ixbad9: %t49 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str11341, i32 %t43, i32 %t47) + call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str11352, i32 %t43, i32 %t47) call void @exit(i32 1) unreachable ixok8: @@ -152244,7 +152473,7 @@ wbody14: br i1 %t77, label %ixok16, label %ixbad17 ixbad17: %t78 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t78, ptr @.fmt_bounds, ptr @.str11342, i32 %t72, i32 %t76) + call i32 (ptr, ptr, ...) @fprintf(ptr %t78, ptr @.fmt_bounds, ptr @.str11353, i32 %t72, i32 %t76) call void @exit(i32 1) unreachable ixok16: @@ -152269,7 +152498,7 @@ then18: br i1 %t94, label %ixok21, label %ixbad22 ixbad22: %t95 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t95, ptr @.fmt_bounds, ptr @.str11343, i32 %t89, i32 %t93) + call i32 (ptr, ptr, ...) @fprintf(ptr %t95, ptr @.fmt_bounds, ptr @.str11354, i32 %t89, i32 %t93) call void @exit(i32 1) unreachable ixok21: @@ -152277,7 +152506,7 @@ ixok21: %t97 = load ptr, ptr %t96 %t98 = getelementptr inbounds %Cmp_Node, ptr %t97, i32 0, i32 1 %t99 = load ptr, ptr %t98 - call void @fn_ck_bind(ptr %t99, ptr @.str11344) + call void @fn_ck_bind(ptr %t99, ptr @.str11355) br label %ifend20 ifend20: %t100 = load i32, ptr %t59 @@ -152426,7 +152655,7 @@ then18: %t69 = load ptr, ptr %t0 %t70 = getelementptr inbounds %Cmp_Node, ptr %t69, i32 0, i32 1 %t71 = load ptr, ptr %t70 - call void @fn_ck_bind(ptr %t71, ptr @.str11345) + call void @fn_ck_bind(ptr %t71, ptr @.str11356) %t72 = load ptr, ptr %t0 %t73 = getelementptr inbounds %Cmp_Node, ptr %t72, i32 0, i32 6 %t74 = load ptr, ptr %t73 @@ -152459,7 +152688,7 @@ ifend26: %t90 = call ptr @fn_ck_expr(ptr %t89) store ptr %t90, ptr %t91 %t92 = load ptr, ptr @g_ck_ret - %t93 = call i32 @lp_str_eq(ptr %t92, ptr @.str11346) + %t93 = call i32 @lp_str_eq(ptr %t92, ptr @.str11357) %t94 = icmp eq i32 %t93, 0 %t95 = zext i1 %t94 to i32 %t96 = icmp ne i32 %t95, 0 @@ -152470,7 +152699,7 @@ then27: %t99 = load ptr, ptr %t0 %t100 = getelementptr inbounds %Cmp_Node, ptr %t99, i32 0, i32 4 %t101 = load ptr, ptr %t100 - call void @fn_ck_give(ptr %t97, ptr %t98, ptr %t101, ptr @.str11347) + call void @fn_ck_give(ptr %t97, ptr %t98, ptr %t101, ptr @.str11358) br label %ifend29 ifend29: br label %ret @@ -152564,7 +152793,7 @@ then47: %t157 = load ptr, ptr %t0 %t158 = getelementptr inbounds %Cmp_Node, ptr %t157, i32 0, i32 4 %t159 = load ptr, ptr %t158 - call void @fn_ck_write_check(ptr %t159, ptr @.str11348) + call void @fn_ck_write_check(ptr %t159, ptr @.str11359) br label %ifend49 ifend49: %t160 = load ptr, ptr %t0 @@ -152594,7 +152823,7 @@ wcond53: %t177 = icmp ne i32 %t176, 0 br i1 %t177, label %wbody54, label %wend55 wbody54: - store ptr @.str11349, ptr %t178 + store ptr @.str11360, ptr %t178 %t179 = load ptr, ptr %t0 %t180 = getelementptr inbounds %Cmp_Node, ptr %t179, i32 0, i32 6 %t181 = load ptr, ptr %t180 @@ -152634,7 +152863,7 @@ sc62: br i1 %t208, label %ixok64, label %ixbad65 ixbad65: %t209 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t209, ptr @.fmt_bounds, ptr @.str11350, i32 %t203, i32 %t207) + call i32 (ptr, ptr, ...) @fprintf(ptr %t209, ptr @.fmt_bounds, ptr @.str11361, i32 %t203, i32 %t207) call void @exit(i32 1) unreachable ixok64: @@ -152685,7 +152914,7 @@ then66: br i1 %t243, label %ixok69, label %ixbad70 ixbad70: %t244 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t244, ptr @.fmt_bounds, ptr @.str11351, i32 %t238, i32 %t242) + call i32 (ptr, ptr, ...) @fprintf(ptr %t244, ptr @.fmt_bounds, ptr @.str11362, i32 %t238, i32 %t242) call void @exit(i32 1) unreachable ixok69: @@ -152713,7 +152942,7 @@ ifend58: br i1 %t259, label %ixok71, label %ixbad72 ixbad72: %t260 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t260, ptr @.fmt_bounds, ptr @.str11352, i32 %t254, i32 %t258) + call i32 (ptr, ptr, ...) @fprintf(ptr %t260, ptr @.fmt_bounds, ptr @.str11363, i32 %t254, i32 %t258) call void @exit(i32 1) unreachable ixok71: @@ -152777,7 +153006,7 @@ wbody1: br i1 %t17, label %ixok3, label %ixbad4 ixbad4: %t18 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str11353, i32 %t12, i32 %t16) + call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str11364, i32 %t12, i32 %t16) call void @exit(i32 1) unreachable ixok3: @@ -152804,7 +153033,7 @@ sc5: br i1 %t35, label %ixok7, label %ixbad8 ixbad8: %t36 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str11354, i32 %t30, i32 %t34) + call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str11365, i32 %t30, i32 %t34) call void @exit(i32 1) unreachable ixok7: @@ -152824,7 +153053,7 @@ ixok7: br i1 %t49, label %ixok9, label %ixbad10 ixbad10: %t50 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str11355, i32 %t44, i32 %t48) + call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str11366, i32 %t44, i32 %t48) call void @exit(i32 1) unreachable ixok9: @@ -152854,7 +153083,7 @@ then11: br i1 %t68, label %ixok14, label %ixbad15 ixbad15: %t69 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t69, ptr @.fmt_bounds, ptr @.str11357, i32 %t63, i32 %t67) + call i32 (ptr, ptr, ...) @fprintf(ptr %t69, ptr @.fmt_bounds, ptr @.str11368, i32 %t63, i32 %t67) call void @exit(i32 1) unreachable ixok14: @@ -152863,7 +153092,7 @@ ixok14: %t72 = load ptr, ptr %t0 %t73 = getelementptr inbounds %Cmp_Node, ptr %t72, i32 0, i32 1 %t74 = load ptr, ptr %t73 - %t75 = call ptr @lp_str_concat(ptr %t74, ptr @.str11358) + %t75 = call ptr @lp_str_concat(ptr %t74, ptr @.str11369) %t76 = load ptr, ptr %t0 %t77 = getelementptr inbounds %Cmp_Node, ptr %t76, i32 0, i32 7 %t78 = load ptr, ptr %t77 @@ -152876,7 +153105,7 @@ ixok14: br i1 %t84, label %ixok16, label %ixbad17 ixbad17: %t85 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str11359, i32 %t79, i32 %t83) + call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str11370, i32 %t79, i32 %t83) call void @exit(i32 1) unreachable ixok16: @@ -152885,7 +153114,7 @@ ixok16: %t88 = getelementptr inbounds %Cmp_Node, ptr %t87, i32 0, i32 1 %t89 = load ptr, ptr %t88 %t90 = call ptr @lp_str_concat(ptr %t75, ptr %t89) - call void @fn_ck_err(ptr @.str11356, ptr %t71, ptr %t90) + call void @fn_ck_err(ptr @.str11367, ptr %t71, ptr %t90) br label %ret ifend13: %t91 = load i32, ptr %t2 @@ -152934,7 +153163,7 @@ wbody1: br i1 %t22, label %ixok3, label %ixbad4 ixbad4: %t23 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str11360, i32 %t17, i32 %t21) + call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str11371, i32 %t17, i32 %t21) call void @exit(i32 1) unreachable ixok3: @@ -152962,7 +153191,7 @@ then5: br i1 %t41, label %ixok8, label %ixbad9 ixbad9: %t42 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str11361, i32 %t36, i32 %t40) + call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str11372, i32 %t36, i32 %t40) call void @exit(i32 1) unreachable ixok8: @@ -152986,7 +153215,7 @@ wend2: %t53 = icmp ne i32 %t52, 0 br i1 %t53, label %then10, label %ifend12 then10: - store ptr @.str11362, ptr @g_ck_ret + store ptr @.str11373, ptr @g_ck_ret br label %ifend12 ifend12: %t54 = load ptr, ptr %t0 @@ -153021,7 +153250,7 @@ then16: store i32 %t73, ptr @g_ck_unsafe br label %ifend18 ifend18: - store ptr @.str11363, ptr @g_ck_ret + store ptr @.str11374, ptr @g_ck_ret %t74 = load i32, ptr %t3 call void @fn_ck_pop(i32 %t74) call void @fn_mg_leave() @@ -153084,7 +153313,7 @@ wbody4: br i1 %t36, label %ixok6, label %ixbad7 ixbad7: %t37 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t37, ptr @.fmt_bounds, ptr @.str11364, i32 %t31, i32 %t35) + call i32 (ptr, ptr, ...) @fprintf(ptr %t37, ptr @.fmt_bounds, ptr @.str11375, i32 %t31, i32 %t35) call void @exit(i32 1) unreachable ixok6: @@ -153104,7 +153333,7 @@ ixok6: br i1 %t50, label %ixok8, label %ixbad9 ixbad9: %t51 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str11365, i32 %t45, i32 %t49) + call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str11376, i32 %t45, i32 %t49) call void @exit(i32 1) unreachable ixok8: @@ -153120,7 +153349,7 @@ ixok8: wend5: br label %ifend2 ifend2: - store ptr @.str11366, ptr @g_ck_ret + store ptr @.str11377, ptr @g_ck_ret %t58 = load ptr, ptr %t0 %t59 = getelementptr inbounds %Cmp_Node, ptr %t58, i32 0, i32 4 %t60 = load ptr, ptr %t59 @@ -153167,7 +153396,7 @@ wbody1: br i1 %t12, label %ixok3, label %ixbad4 ixbad4: %t13 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t13, ptr @.fmt_bounds, ptr @.str11367, i32 %t7, i32 %t11) + call i32 (ptr, ptr, ...) @fprintf(ptr %t13, ptr @.fmt_bounds, ptr @.str11378, i32 %t7, i32 %t11) call void @exit(i32 1) unreachable ixok3: @@ -153216,8 +153445,8 @@ then9: %t44 = load ptr, ptr %t16 %t45 = getelementptr inbounds %Cmp_Node, ptr %t44, i32 0, i32 1 %t46 = load ptr, ptr %t45 - %t47 = call ptr @lp_str_concat(ptr %t46, ptr @.str11369) - call void @fn_ck_err(ptr @.str11368, ptr %t43, ptr %t47) + %t47 = call ptr @lp_str_concat(ptr %t46, ptr @.str11380) + call void @fn_ck_err(ptr @.str11379, ptr %t43, ptr %t47) br label %ifend11 ifend11: %t48 = load i32, ptr %t0 @@ -153248,7 +153477,7 @@ wbody13: br i1 %t65, label %ixok15, label %ixbad16 ixbad16: %t66 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str11370, i32 %t60, i32 %t64) + call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str11381, i32 %t60, i32 %t64) call void @exit(i32 1) unreachable ixok15: @@ -153293,20 +153522,20 @@ then22: %t96 = load ptr, ptr %t69 %t97 = getelementptr inbounds %Cmp_Node, ptr %t96, i32 0, i32 1 %t98 = load ptr, ptr %t97 - %t99 = call ptr @lp_str_concat(ptr %t98, ptr @.str11372) + %t99 = call ptr @lp_str_concat(ptr %t98, ptr @.str11383) %t100 = load ptr, ptr %t69 %t101 = getelementptr inbounds %Cmp_Node, ptr %t100, i32 0, i32 9 %t102 = load ptr, ptr %t101 %t103 = call ptr @lp_str_concat(ptr %t99, ptr %t102) - %t104 = call ptr @lp_str_concat(ptr %t103, ptr @.str11373) - call void @fn_ck_err(ptr @.str11371, ptr %t95, ptr %t104) + %t104 = call ptr @lp_str_concat(ptr %t103, ptr @.str11384) + call void @fn_ck_err(ptr @.str11382, ptr %t95, ptr %t104) br label %ifend24 ifend24: br label %ifend19 ifend19: %t105 = load ptr, ptr %t69 %t106 = call ptr @fn_ck_type_kind(ptr %t105) - %t107 = call i32 @lp_str_eq(ptr %t106, ptr @.str11374) + %t107 = call i32 @lp_str_eq(ptr %t106, ptr @.str11385) %t108 = icmp eq i32 %t107, 0 %t109 = zext i1 %t108 to i32 %t110 = icmp ne i32 %t109, 0 @@ -153349,7 +153578,7 @@ wbody29: br i1 %t135, label %ixok33, label %ixbad34 ixbad34: %t136 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t136, ptr @.fmt_bounds, ptr @.str11375, i32 %t130, i32 %t134) + call i32 (ptr, ptr, ...) @fprintf(ptr %t136, ptr @.fmt_bounds, ptr @.str11386, i32 %t130, i32 %t134) call void @exit(i32 1) unreachable ixok33: @@ -153358,7 +153587,7 @@ ixok33: store ptr %t138, ptr %t139 %t141 = load ptr, ptr %t139 %t142 = call ptr @fn_ck_type_kind(ptr %t141) - %t143 = call i32 @lp_str_eq(ptr %t142, ptr @.str11376) + %t143 = call i32 @lp_str_eq(ptr %t142, ptr @.str11387) %t144 = icmp eq i32 %t143, 0 %t145 = zext i1 %t144 to i32 %t146 = icmp ne i32 %t145, 0 @@ -153386,20 +153615,20 @@ then37: %t160 = load ptr, ptr %t69 %t161 = getelementptr inbounds %Cmp_Node, ptr %t160, i32 0, i32 1 %t162 = load ptr, ptr %t161 - %t163 = call ptr @lp_str_concat(ptr %t162, ptr @.str11378) + %t163 = call ptr @lp_str_concat(ptr %t162, ptr @.str11389) %t164 = load ptr, ptr %t69 %t165 = call ptr @fn_ck_type_kind(ptr %t164) %t166 = call ptr @lp_str_concat(ptr %t163, ptr %t165) - %t167 = call ptr @lp_str_concat(ptr %t166, ptr @.str11379) + %t167 = call ptr @lp_str_concat(ptr %t166, ptr @.str11390) %t168 = load ptr, ptr %t69 %t169 = getelementptr inbounds %Cmp_Node, ptr %t168, i32 0, i32 9 %t170 = load ptr, ptr %t169 %t171 = call ptr @lp_str_concat(ptr %t167, ptr %t170) - %t172 = call ptr @lp_str_concat(ptr %t171, ptr @.str11380) + %t172 = call ptr @lp_str_concat(ptr %t171, ptr @.str11391) %t173 = load ptr, ptr %t139 %t174 = call ptr @fn_ck_type_kind(ptr %t173) %t175 = call ptr @lp_str_concat(ptr %t172, ptr %t174) - call void @fn_ck_err(ptr @.str11377, ptr %t159, ptr %t175) + call void @fn_ck_err(ptr @.str11388, ptr %t159, ptr %t175) br label %ifend39 ifend39: %t176 = load i32, ptr %t111 @@ -153433,7 +153662,7 @@ entry: %t6 = icmp ne i32 %t5, 0 br i1 %t6, label %then0, label %ifend2 then0: - store ptr @.str11381, ptr %retval + store ptr @.str11392, ptr %retval br label %ret ifend2: %t8 = load ptr, ptr %t0 @@ -153460,7 +153689,7 @@ scend4: %t23 = icmp ne i32 %t22, 0 br i1 %t23, label %then5, label %ifend7 then5: - store ptr @.str11382, ptr %retval + store ptr @.str11393, ptr %retval br label %ret ifend7: %t24 = load ptr, ptr %t0 @@ -153471,7 +153700,7 @@ ifend7: %t29 = icmp ne i32 %t28, 0 br i1 %t29, label %then8, label %ifend10 then8: - store ptr @.str11383, ptr %retval + store ptr @.str11394, ptr %retval br label %ret ifend10: %t30 = load ptr, ptr %t0 @@ -153482,7 +153711,7 @@ ifend10: %t35 = icmp ne i32 %t34, 0 br i1 %t35, label %then11, label %ifend13 then11: - store ptr @.str11384, ptr %retval + store ptr @.str11395, ptr %retval br label %ret ifend13: %t36 = load ptr, ptr %t0 @@ -153493,10 +153722,10 @@ ifend13: %t41 = icmp ne i32 %t40, 0 br i1 %t41, label %then14, label %ifend16 then14: - store ptr @.str11385, ptr %retval + store ptr @.str11396, ptr %retval br label %ret ifend16: - store ptr @.str11386, ptr %retval + store ptr @.str11397, ptr %retval br label %ret ret: %t42 = load ptr, ptr %retval @@ -153530,7 +153759,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str11387, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str11398, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -153547,7 +153776,7 @@ ixok3: br i1 %t25, label %ixok5, label %ixbad6 ixbad6: %t26 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str11388, i32 %t20, i32 %t24) + call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str11399, i32 %t20, i32 %t24) call void @exit(i32 1) unreachable ixok5: @@ -153649,7 +153878,7 @@ wbody4: br i1 %t38, label %ixok8, label %ixbad9 ixbad9: %t39 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str11389, i32 %t33, i32 %t37) + call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str11400, i32 %t33, i32 %t37) call void @exit(i32 1) unreachable ixok8: @@ -153689,7 +153918,7 @@ wbody11: br i1 %t64, label %ixok13, label %ixbad14 ixbad14: %t65 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t65, ptr @.fmt_bounds, ptr @.str11390, i32 %t59, i32 %t63) + call i32 (ptr, ptr, ...) @fprintf(ptr %t65, ptr @.fmt_bounds, ptr @.str11401, i32 %t59, i32 %t63) call void @exit(i32 1) unreachable ixok13: @@ -153747,7 +153976,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11391, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11402, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -153982,7 +154211,7 @@ wbody35: br i1 %t166, label %ixok37, label %ixbad38 ixbad38: %t167 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t167, ptr @.fmt_bounds, ptr @.str11392, i32 %t161, i32 %t165) + call i32 (ptr, ptr, ...) @fprintf(ptr %t167, ptr @.fmt_bounds, ptr @.str11403, i32 %t161, i32 %t165) call void @exit(i32 1) unreachable ixok37: @@ -154032,7 +154261,7 @@ wbody43: br i1 %t193, label %ixok45, label %ixbad46 ixbad46: %t194 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t194, ptr @.fmt_bounds, ptr @.str11393, i32 %t188, i32 %t192) + call i32 (ptr, ptr, ...) @fprintf(ptr %t194, ptr @.fmt_bounds, ptr @.str11404, i32 %t188, i32 %t192) call void @exit(i32 1) unreachable ixok45: @@ -154051,7 +154280,7 @@ ixok45: br i1 %t205, label %ixok47, label %ixbad48 ixbad48: %t206 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t206, ptr @.fmt_bounds, ptr @.str11394, i32 %t200, i32 %t204) + call i32 (ptr, ptr, ...) @fprintf(ptr %t206, ptr @.fmt_bounds, ptr @.str11405, i32 %t200, i32 %t204) call void @exit(i32 1) unreachable ixok47: @@ -154089,7 +154318,7 @@ wbody50: br i1 %t226, label %ixok52, label %ixbad53 ixbad53: %t227 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t227, ptr @.fmt_bounds, ptr @.str11395, i32 %t221, i32 %t225) + call i32 (ptr, ptr, ...) @fprintf(ptr %t227, ptr @.fmt_bounds, ptr @.str11406, i32 %t221, i32 %t225) call void @exit(i32 1) unreachable ixok52: @@ -154106,7 +154335,7 @@ ixok52: br i1 %t236, label %ixok54, label %ixbad55 ixbad55: %t237 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t237, ptr @.fmt_bounds, ptr @.str11396, i32 %t231, i32 %t235) + call i32 (ptr, ptr, ...) @fprintf(ptr %t237, ptr @.fmt_bounds, ptr @.str11407, i32 %t231, i32 %t235) call void @exit(i32 1) unreachable ixok54: @@ -154158,7 +154387,7 @@ scend59: then60: %t266 = load i32, ptr @g_ck_errors %t267 = call ptr @fn_itoa(i32 %t266) - %t268 = call ptr @lp_str_concat(ptr %t267, ptr @.str11397) + %t268 = call ptr @lp_str_concat(ptr %t267, ptr @.str11408) store ptr %t268, ptr %t269 %t270 = call ptr @lp_win_stdio(i32 2) %t271 = load ptr, ptr %t269 @@ -154206,7 +154435,7 @@ wbody1: br i1 %t16, label %ixok3, label %ixbad4 ixbad4: %t17 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11398, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11409, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok3: @@ -154229,7 +154458,7 @@ then5: br i1 %t31, label %ixok8, label %ixbad9 ixbad9: %t32 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str11399, i32 %t26, i32 %t30) + call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str11410, i32 %t26, i32 %t30) call void @exit(i32 1) unreachable ixok8: @@ -154291,7 +154520,7 @@ wbody1: br i1 %t22, label %ixok3, label %ixbad4 ixbad4: %t23 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str11400, i32 %t17, i32 %t21) + call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str11411, i32 %t17, i32 %t21) call void @exit(i32 1) unreachable ixok3: @@ -154496,7 +154725,7 @@ wbody1: br i1 %t16, label %ixok3, label %ixbad4 ixbad4: %t17 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11401, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11412, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok3: @@ -154571,7 +154800,7 @@ then3: br i1 %t21, label %ixok6, label %ixbad7 ixbad7: %t22 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str11402, i32 %t16, i32 %t20) + call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str11413, i32 %t16, i32 %t20) call void @exit(i32 1) unreachable ixok6: @@ -154590,7 +154819,7 @@ then8: %t30 = load ptr, ptr %t1 %t31 = load ptr, ptr %t2 %t32 = call ptr @fn_gen_subst(ptr %t29, ptr %t30, ptr %t31) - %t33 = call ptr @lp_str_concat(ptr @.str11403, ptr %t32) + %t33 = call ptr @lp_str_concat(ptr @.str11414, ptr %t32) store ptr %t33, ptr %retval br label %ret ifend10: @@ -154602,7 +154831,7 @@ then11: %t37 = load ptr, ptr %t0 %t38 = call ptr @fn_fn_ty_params(ptr %t37) store ptr %t38, ptr %t39 - store ptr @.str11404, ptr %t40 + store ptr @.str11415, ptr %t40 store i32 0, ptr %t41 br label %wcond14 wcond14: @@ -154622,7 +154851,7 @@ wbody15: br i1 %t52, label %then17, label %ifend19 then17: %t53 = load ptr, ptr %t40 - %t54 = call ptr @lp_str_concat(ptr %t53, ptr @.str11405) + %t54 = call ptr @lp_str_concat(ptr %t53, ptr @.str11416) store ptr %t54, ptr %t40 br label %ifend19 ifend19: @@ -154637,7 +154866,7 @@ ifend19: br i1 %t62, label %ixok20, label %ixbad21 ixbad21: %t63 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t63, ptr @.fmt_bounds, ptr @.str11406, i32 %t57, i32 %t61) + call i32 (ptr, ptr, ...) @fprintf(ptr %t63, ptr @.fmt_bounds, ptr @.str11417, i32 %t57, i32 %t61) call void @exit(i32 1) unreachable ixok20: @@ -154654,7 +154883,7 @@ ixok20: br label %wcond14 wend16: %t72 = load ptr, ptr %t40 - %t73 = call ptr @lp_str_concat(ptr %t72, ptr @.str11407) + %t73 = call ptr @lp_str_concat(ptr %t72, ptr @.str11418) %t74 = load ptr, ptr %t0 %t75 = call ptr @fn_fn_ty_ret(ptr %t74) %t76 = load ptr, ptr %t1 @@ -154685,7 +154914,7 @@ sc22: br i1 %t95, label %ixok24, label %ixbad25 ixbad25: %t96 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t96, ptr @.fmt_bounds, ptr @.str11408, i32 %t90, i32 %t94) + call i32 (ptr, ptr, ...) @fprintf(ptr %t96, ptr @.fmt_bounds, ptr @.str11419, i32 %t90, i32 %t94) call void @exit(i32 1) unreachable ixok24: @@ -154712,7 +154941,7 @@ then26: br i1 %t111, label %ixok29, label %ixbad30 ixbad30: %t112 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t112, ptr @.fmt_bounds, ptr @.str11409, i32 %t106, i32 %t110) + call i32 (ptr, ptr, ...) @fprintf(ptr %t112, ptr @.fmt_bounds, ptr @.str11420, i32 %t106, i32 %t110) call void @exit(i32 1) unreachable ixok29: @@ -154753,7 +154982,7 @@ wbody32: br i1 %t139, label %ixok34, label %ixbad35 ixbad35: %t140 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t140, ptr @.fmt_bounds, ptr @.str11410, i32 %t134, i32 %t138) + call i32 (ptr, ptr, ...) @fprintf(ptr %t140, ptr @.fmt_bounds, ptr @.str11421, i32 %t134, i32 %t138) call void @exit(i32 1) unreachable ixok34: @@ -154803,7 +155032,7 @@ wend33: br i1 %t172, label %ixok38, label %ixbad39 ixbad39: %t173 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t173, ptr @.fmt_bounds, ptr @.str11411, i32 %t167, i32 %t171) + call i32 (ptr, ptr, ...) @fprintf(ptr %t173, ptr @.fmt_bounds, ptr @.str11422, i32 %t167, i32 %t171) call void @exit(i32 1) unreachable ixok38: @@ -155037,7 +155266,7 @@ wbody7: br i1 %t154, label %ixok9, label %ixbad10 ixbad10: %t155 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t155, ptr @.fmt_bounds, ptr @.str11412, i32 %t149, i32 %t153) + call i32 (ptr, ptr, ...) @fprintf(ptr %t155, ptr @.fmt_bounds, ptr @.str11423, i32 %t149, i32 %t153) call void @exit(i32 1) unreachable ixok9: @@ -155118,7 +155347,7 @@ sc0: br i1 %t16, label %ixok2, label %ixbad3 ixbad3: %t17 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11413, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11424, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok2: @@ -155149,7 +155378,7 @@ ifend6: br i1 %t33, label %ixok7, label %ixbad8 ixbad8: %t34 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str11414, i32 %t28, i32 %t32) + call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str11425, i32 %t28, i32 %t32) call void @exit(i32 1) unreachable ixok7: @@ -155176,7 +155405,7 @@ ifend11: br i1 %t49, label %ixok12, label %ixbad13 ixbad13: %t50 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str11415, i32 %t44, i32 %t48) + call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str11426, i32 %t44, i32 %t48) call void @exit(i32 1) unreachable ixok12: @@ -155257,7 +155486,7 @@ then14: br i1 %t104, label %ixok17, label %ixbad18 ixbad18: %t105 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t105, ptr @.fmt_bounds, ptr @.str11416, i32 %t99, i32 %t103) + call i32 (ptr, ptr, ...) @fprintf(ptr %t105, ptr @.fmt_bounds, ptr @.str11427, i32 %t99, i32 %t103) call void @exit(i32 1) unreachable ixok17: @@ -155276,7 +155505,7 @@ ixok17: br i1 %t116, label %ixok19, label %ixbad20 ixbad20: %t117 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t117, ptr @.fmt_bounds, ptr @.str11417, i32 %t111, i32 %t115) + call i32 (ptr, ptr, ...) @fprintf(ptr %t117, ptr @.fmt_bounds, ptr @.str11428, i32 %t111, i32 %t115) call void @exit(i32 1) unreachable ixok19: @@ -155287,23 +155516,23 @@ ixok19: %t121 = load ptr, ptr %t38 %t122 = getelementptr inbounds %Cmp_Node, ptr %t121, i32 0, i32 1 %t123 = load ptr, ptr %t122 - %t124 = call ptr @lp_str_concat(ptr %t123, ptr @.str11419) + %t124 = call ptr @lp_str_concat(ptr %t123, ptr @.str11430) %t125 = load ptr, ptr %t59 %t126 = getelementptr inbounds %LSlice, ptr %t125, i32 0, i32 1 %t127 = load i32, ptr %t126 %t128 = call ptr @fn_itoa(i32 %t127) %t129 = call ptr @lp_str_concat(ptr %t124, ptr %t128) - %t130 = call ptr @lp_str_concat(ptr %t129, ptr @.str11420) + %t130 = call ptr @lp_str_concat(ptr %t129, ptr @.str11431) %t131 = load ptr, ptr %t0 %t132 = call ptr @fn_gen_show(ptr %t131) %t133 = call ptr @lp_str_concat(ptr %t130, ptr %t132) - %t134 = call ptr @lp_str_concat(ptr %t133, ptr @.str11421) + %t134 = call ptr @lp_str_concat(ptr %t133, ptr @.str11432) %t135 = load ptr, ptr %t54 %t136 = getelementptr inbounds %LSlice, ptr %t135, i32 0, i32 1 %t137 = load i32, ptr %t136 %t138 = call ptr @fn_itoa(i32 %t137) %t139 = call ptr @lp_str_concat(ptr %t134, ptr %t138) - call void @fn_ck_err(ptr @.str11418, ptr %t120, ptr %t139) + call void @fn_ck_err(ptr @.str11429, ptr %t120, ptr %t139) store ptr null, ptr %retval br label %ret ifend16: @@ -155406,7 +155635,7 @@ scend1: br i1 %t16, label %scend3, label %sc2 sc2: %t18 = load ptr, ptr %t1 - %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str11422) + %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str11433) %t20 = icmp ne i32 %t19, 0 %t21 = zext i1 %t20 to i32 store i32 %t21, ptr %t4 @@ -155438,7 +155667,7 @@ then7: br i1 %t38, label %ixok10, label %ixbad11 ixbad11: %t39 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str11423, i32 %t33, i32 %t37) + call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str11434, i32 %t33, i32 %t37) call void @exit(i32 1) unreachable ixok10: @@ -155459,7 +155688,7 @@ then12: br i1 %t51, label %ixok15, label %ixbad16 ixbad16: %t52 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t52, ptr @.fmt_bounds, ptr @.str11424, i32 %t46, i32 %t50) + call i32 (ptr, ptr, ...) @fprintf(ptr %t52, ptr @.fmt_bounds, ptr @.str11435, i32 %t46, i32 %t50) call void @exit(i32 1) unreachable ixok15: @@ -155560,7 +155789,7 @@ wbody28: br i1 %t115, label %ixok32, label %ixbad33 ixbad33: %t116 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t116, ptr @.fmt_bounds, ptr @.str11425, i32 %t110, i32 %t114) + call i32 (ptr, ptr, ...) @fprintf(ptr %t116, ptr @.fmt_bounds, ptr @.str11436, i32 %t110, i32 %t114) call void @exit(i32 1) unreachable ixok32: @@ -155576,7 +155805,7 @@ ixok32: br i1 %t125, label %ixok34, label %ixbad35 ixbad35: %t126 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t126, ptr @.fmt_bounds, ptr @.str11426, i32 %t120, i32 %t124) + call i32 (ptr, ptr, ...) @fprintf(ptr %t126, ptr @.fmt_bounds, ptr @.str11437, i32 %t120, i32 %t124) call void @exit(i32 1) unreachable ixok34: @@ -155637,7 +155866,7 @@ sc38: br i1 %t166, label %ixok40, label %ixbad41 ixbad41: %t167 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t167, ptr @.fmt_bounds, ptr @.str11427, i32 %t161, i32 %t165) + call i32 (ptr, ptr, ...) @fprintf(ptr %t167, ptr @.fmt_bounds, ptr @.str11438, i32 %t161, i32 %t165) call void @exit(i32 1) unreachable ixok40: @@ -155653,7 +155882,7 @@ ixok40: br i1 %t176, label %ixok42, label %ixbad43 ixbad43: %t177 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t177, ptr @.fmt_bounds, ptr @.str11428, i32 %t171, i32 %t175) + call i32 (ptr, ptr, ...) @fprintf(ptr %t177, ptr @.fmt_bounds, ptr @.str11439, i32 %t171, i32 %t175) call void @exit(i32 1) unreachable ixok42: @@ -155679,7 +155908,7 @@ then44: br i1 %t191, label %ixok47, label %ixbad48 ixbad48: %t192 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t192, ptr @.fmt_bounds, ptr @.str11429, i32 %t186, i32 %t190) + call i32 (ptr, ptr, ...) @fprintf(ptr %t192, ptr @.fmt_bounds, ptr @.str11440, i32 %t186, i32 %t190) call void @exit(i32 1) unreachable ixok47: @@ -155697,7 +155926,7 @@ ixok47: br i1 %t203, label %ixok49, label %ixbad50 ixbad50: %t204 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t204, ptr @.fmt_bounds, ptr @.str11430, i32 %t198, i32 %t202) + call i32 (ptr, ptr, ...) @fprintf(ptr %t204, ptr @.fmt_bounds, ptr @.str11441, i32 %t198, i32 %t202) call void @exit(i32 1) unreachable ixok49: @@ -155744,7 +155973,7 @@ wbody52: br i1 %t235, label %ixok56, label %ixbad57 ixbad57: %t236 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t236, ptr @.fmt_bounds, ptr @.str11431, i32 %t230, i32 %t234) + call i32 (ptr, ptr, ...) @fprintf(ptr %t236, ptr @.fmt_bounds, ptr @.str11442, i32 %t230, i32 %t234) call void @exit(i32 1) unreachable ixok56: @@ -155760,7 +155989,7 @@ ixok56: br i1 %t245, label %ixok58, label %ixbad59 ixbad59: %t246 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t246, ptr @.fmt_bounds, ptr @.str11432, i32 %t240, i32 %t244) + call i32 (ptr, ptr, ...) @fprintf(ptr %t246, ptr @.fmt_bounds, ptr @.str11443, i32 %t240, i32 %t244) call void @exit(i32 1) unreachable ixok58: @@ -155796,7 +156025,7 @@ entry: %t4 = icmp ne i32 %t3, 0 br i1 %t4, label %then0, label %ifend2 then0: - store ptr @.str11433, ptr %retval + store ptr @.str11444, ptr %retval br label %ret ifend2: %t5 = load ptr, ptr %t0 @@ -155807,7 +156036,7 @@ then3: %t8 = load ptr, ptr %t0 %t9 = call ptr @fn_slice_elem(ptr %t8) %t10 = call ptr @fn_gen_show(ptr %t9) - %t11 = call ptr @lp_str_concat(ptr @.str11434, ptr %t10) + %t11 = call ptr @lp_str_concat(ptr @.str11445, ptr %t10) store ptr %t11, ptr %retval br label %ret ifend5: @@ -155834,7 +156063,7 @@ ifend8: br i1 %t26, label %ixok9, label %ixbad10 ixbad10: %t27 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t27, ptr @.fmt_bounds, ptr @.str11435, i32 %t21, i32 %t25) + call i32 (ptr, ptr, ...) @fprintf(ptr %t27, ptr @.fmt_bounds, ptr @.str11446, i32 %t21, i32 %t25) call void @exit(i32 1) unreachable ixok9: @@ -155852,13 +156081,13 @@ ixok9: br i1 %t39, label %ixok11, label %ixbad12 ixbad12: %t40 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11436, i32 %t34, i32 %t38) + call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11447, i32 %t34, i32 %t38) call void @exit(i32 1) unreachable ixok11: %t41 = getelementptr inbounds ptr, ptr %t36, i32 %t34 %t42 = load ptr, ptr %t41 - %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str11437) + %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str11448) store ptr %t43, ptr %t32 store i32 0, ptr %t44 br label %wcond13 @@ -155879,7 +156108,7 @@ wbody14: br i1 %t55, label %then16, label %ifend18 then16: %t56 = load ptr, ptr %t32 - %t57 = call ptr @lp_str_concat(ptr %t56, ptr @.str11438) + %t57 = call ptr @lp_str_concat(ptr %t56, ptr @.str11449) store ptr %t57, ptr %t32 br label %ifend18 ifend18: @@ -155894,7 +156123,7 @@ ifend18: br i1 %t65, label %ixok19, label %ixbad20 ixbad20: %t66 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str11439, i32 %t60, i32 %t64) + call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str11450, i32 %t60, i32 %t64) call void @exit(i32 1) unreachable ixok19: @@ -155909,7 +156138,7 @@ ixok19: br label %wcond13 wend15: %t73 = load ptr, ptr %t32 - %t74 = call ptr @lp_str_concat(ptr %t73, ptr @.str11440) + %t74 = call ptr @lp_str_concat(ptr %t73, ptr @.str11451) store ptr %t74, ptr %retval br label %ret ret: @@ -155941,7 +156170,7 @@ wcond0: br i1 %t11, label %wbody1, label %wend2 wbody1: %t12 = load ptr, ptr %t2 - %t13 = call ptr @lp_str_concat(ptr %t12, ptr @.str11441) + %t13 = call ptr @lp_str_concat(ptr %t12, ptr @.str11452) %t14 = load ptr, ptr %t1 %t15 = load i32, ptr %t4 %t16 = getelementptr inbounds %LSlice, ptr %t14, i32 0, i32 0 @@ -155952,7 +156181,7 @@ wbody1: br i1 %t20, label %ixok3, label %ixbad4 ixbad4: %t21 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11442, i32 %t15, i32 %t19) + call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11453, i32 %t15, i32 %t19) call void @exit(i32 1) unreachable ixok3: @@ -156182,7 +156411,7 @@ wbody6: br i1 %t56, label %ixok8, label %ixbad9 ixbad9: %t57 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t57, ptr @.fmt_bounds, ptr @.str11443, i32 %t51, i32 %t55) + call i32 (ptr, ptr, ...) @fprintf(ptr %t57, ptr @.fmt_bounds, ptr @.str11454, i32 %t51, i32 %t55) call void @exit(i32 1) unreachable ixok8: @@ -156219,7 +156448,7 @@ then13: br i1 %t83, label %ixok16, label %ixbad17 ixbad17: %t84 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str11444, i32 %t78, i32 %t82) + call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str11455, i32 %t78, i32 %t82) call void @exit(i32 1) unreachable ixok16: @@ -156251,7 +156480,7 @@ then18: br i1 %t102, label %ixok21, label %ixbad22 ixbad22: %t103 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t103, ptr @.fmt_bounds, ptr @.str11445, i32 %t97, i32 %t101) + call i32 (ptr, ptr, ...) @fprintf(ptr %t103, ptr @.fmt_bounds, ptr @.str11456, i32 %t97, i32 %t101) call void @exit(i32 1) unreachable ixok21: @@ -156352,13 +156581,13 @@ entry: then0: %t42 = load ptr, ptr %t0 %t43 = load ptr, ptr %t1 - %t44 = call ptr @lp_str_concat(ptr %t43, ptr @.str11447) + %t44 = call ptr @lp_str_concat(ptr %t43, ptr @.str11458) %t45 = load ptr, ptr %t27 %t46 = getelementptr inbounds %LSlice, ptr %t45, i32 0, i32 1 %t47 = load i32, ptr %t46 %t48 = call ptr @fn_itoa(i32 %t47) %t49 = call ptr @lp_str_concat(ptr %t44, ptr %t48) - %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str11448) + %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str11459) %t51 = load ptr, ptr %t0 %t52 = getelementptr inbounds %Cmp_Node, ptr %t51, i32 0, i32 7 %t53 = load ptr, ptr %t52 @@ -156366,7 +156595,7 @@ then0: %t55 = load i32, ptr %t54 %t56 = call ptr @fn_itoa(i32 %t55) %t57 = call ptr @lp_str_concat(ptr %t50, ptr %t56) - call void @fn_ck_err(ptr @.str11446, ptr %t42, ptr %t57) + call void @fn_ck_err(ptr @.str11457, ptr %t42, ptr %t57) br label %ifend2 ifend2: %t58 = load ptr, ptr %t0 @@ -156449,7 +156678,7 @@ wcond8: %t111 = icmp ne i32 %t110, 0 br i1 %t111, label %wbody9, label %wend10 wbody9: - store ptr @.str11449, ptr %t112 + store ptr @.str11460, ptr %t112 %t113 = load ptr, ptr %t61 %t114 = load i32, ptr %t76 %t115 = getelementptr inbounds %LSlice, ptr %t113, i32 0, i32 0 @@ -156460,7 +156689,7 @@ wbody9: br i1 %t119, label %ixok11, label %ixbad12 ixbad12: %t120 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t120, ptr @.fmt_bounds, ptr @.str11450, i32 %t114, i32 %t118) + call i32 (ptr, ptr, ...) @fprintf(ptr %t120, ptr @.fmt_bounds, ptr @.str11461, i32 %t114, i32 %t118) call void @exit(i32 1) unreachable ixok11: @@ -156481,7 +156710,7 @@ then13: br i1 %t132, label %ixok16, label %ixbad17 ixbad17: %t133 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t133, ptr @.fmt_bounds, ptr @.str11451, i32 %t127, i32 %t131) + call i32 (ptr, ptr, ...) @fprintf(ptr %t133, ptr @.fmt_bounds, ptr @.str11462, i32 %t127, i32 %t131) call void @exit(i32 1) unreachable ixok16: @@ -156529,7 +156758,7 @@ put19: br i1 %t164, label %ixok20, label %ixbad21 ixbad21: %t165 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t165, ptr @.fmt_bounds, ptr @.str11452, i32 %t159, i32 %t163) + call i32 (ptr, ptr, ...) @fprintf(ptr %t165, ptr @.fmt_bounds, ptr @.str11463, i32 %t159, i32 %t163) call void @exit(i32 1) unreachable ixok20: @@ -156552,7 +156781,7 @@ sc22: br i1 %t178, label %ixok24, label %ixbad25 ixbad25: %t179 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t179, ptr @.fmt_bounds, ptr @.str11453, i32 %t173, i32 %t177) + call i32 (ptr, ptr, ...) @fprintf(ptr %t179, ptr @.fmt_bounds, ptr @.str11464, i32 %t173, i32 %t177) call void @exit(i32 1) unreachable ixok24: @@ -156580,7 +156809,7 @@ then26: br i1 %t195, label %ixok29, label %ixbad30 ixbad30: %t196 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t196, ptr @.fmt_bounds, ptr @.str11454, i32 %t190, i32 %t194) + call i32 (ptr, ptr, ...) @fprintf(ptr %t196, ptr @.fmt_bounds, ptr @.str11465, i32 %t190, i32 %t194) call void @exit(i32 1) unreachable ixok29: @@ -156626,7 +156855,7 @@ wbody32: br i1 %t224, label %ixok34, label %ixbad35 ixbad35: %t225 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t225, ptr @.fmt_bounds, ptr @.str11455, i32 %t219, i32 %t223) + call i32 (ptr, ptr, ...) @fprintf(ptr %t225, ptr @.fmt_bounds, ptr @.str11466, i32 %t219, i32 %t223) call void @exit(i32 1) unreachable ixok34: @@ -156649,7 +156878,7 @@ sc36: br i1 %t238, label %ixok38, label %ixbad39 ixbad39: %t239 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t239, ptr @.fmt_bounds, ptr @.str11456, i32 %t233, i32 %t237) + call i32 (ptr, ptr, ...) @fprintf(ptr %t239, ptr @.fmt_bounds, ptr @.str11467, i32 %t233, i32 %t237) call void @exit(i32 1) unreachable ixok38: @@ -156675,7 +156904,7 @@ then40: br i1 %t253, label %ixok43, label %ixbad44 ixbad44: %t254 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t254, ptr @.fmt_bounds, ptr @.str11457, i32 %t248, i32 %t252) + call i32 (ptr, ptr, ...) @fprintf(ptr %t254, ptr @.fmt_bounds, ptr @.str11468, i32 %t248, i32 %t252) call void @exit(i32 1) unreachable ixok43: @@ -156691,7 +156920,7 @@ ixok43: br i1 %t263, label %ixok45, label %ixbad46 ixbad46: %t264 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t264, ptr @.fmt_bounds, ptr @.str11458, i32 %t258, i32 %t262) + call i32 (ptr, ptr, ...) @fprintf(ptr %t264, ptr @.fmt_bounds, ptr @.str11469, i32 %t258, i32 %t262) call void @exit(i32 1) unreachable ixok45: @@ -156729,7 +156958,7 @@ wbody48: br i1 %t285, label %ixok50, label %ixbad51 ixbad51: %t286 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t286, ptr @.fmt_bounds, ptr @.str11459, i32 %t280, i32 %t284) + call i32 (ptr, ptr, ...) @fprintf(ptr %t286, ptr @.fmt_bounds, ptr @.str11470, i32 %t280, i32 %t284) call void @exit(i32 1) unreachable ixok50: @@ -156751,19 +156980,19 @@ then52: br i1 %t299, label %ixok55, label %ixbad56 ixbad56: %t300 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t300, ptr @.fmt_bounds, ptr @.str11462, i32 %t294, i32 %t298) + call i32 (ptr, ptr, ...) @fprintf(ptr %t300, ptr @.fmt_bounds, ptr @.str11473, i32 %t294, i32 %t298) call void @exit(i32 1) unreachable ixok55: %t301 = getelementptr inbounds ptr, ptr %t296, i32 %t294 %t302 = load ptr, ptr %t301 - %t303 = call ptr @lp_str_concat(ptr @.str11461, ptr %t302) - %t304 = call ptr @lp_str_concat(ptr %t303, ptr @.str11463) + %t303 = call ptr @lp_str_concat(ptr @.str11472, ptr %t302) + %t304 = call ptr @lp_str_concat(ptr %t303, ptr @.str11474) %t305 = load ptr, ptr %t1 %t306 = call ptr @lp_str_concat(ptr %t304, ptr %t305) - %t307 = call ptr @lp_str_concat(ptr %t306, ptr @.str11464) - call void @fn_ck_err(ptr @.str11460, ptr %t292, ptr %t307) - store ptr @.str11465, ptr %retval + %t307 = call ptr @lp_str_concat(ptr %t306, ptr @.str11475) + call void @fn_ck_err(ptr @.str11471, ptr %t292, ptr %t307) + store ptr @.str11476, ptr %retval br label %ret ifend54: %t308 = load i32, ptr %t271 @@ -156832,7 +157061,7 @@ wbody58: br i1 %t355, label %ixok60, label %ixbad61 ixbad61: %t356 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t356, ptr @.fmt_bounds, ptr @.str11466, i32 %t350, i32 %t354) + call i32 (ptr, ptr, ...) @fprintf(ptr %t356, ptr @.fmt_bounds, ptr @.str11477, i32 %t350, i32 %t354) call void @exit(i32 1) unreachable ixok60: @@ -156853,7 +157082,7 @@ then62: br i1 %t368, label %ixok65, label %ixbad66 ixbad66: %t369 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t369, ptr @.fmt_bounds, ptr @.str11467, i32 %t363, i32 %t367) + call i32 (ptr, ptr, ...) @fprintf(ptr %t369, ptr @.fmt_bounds, ptr @.str11478, i32 %t363, i32 %t367) call void @exit(i32 1) unreachable ixok65: @@ -156869,7 +157098,7 @@ ixok65: br i1 %t378, label %ixok67, label %ixbad68 ixbad68: %t379 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t379, ptr @.fmt_bounds, ptr @.str11468, i32 %t373, i32 %t377) + call i32 (ptr, ptr, ...) @fprintf(ptr %t379, ptr @.fmt_bounds, ptr @.str11479, i32 %t373, i32 %t377) call void @exit(i32 1) unreachable ixok67: @@ -156885,7 +157114,7 @@ ixok67: br i1 %t388, label %ixok69, label %ixbad70 ixbad70: %t389 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t389, ptr @.fmt_bounds, ptr @.str11469, i32 %t383, i32 %t387) + call i32 (ptr, ptr, ...) @fprintf(ptr %t389, ptr @.fmt_bounds, ptr @.str11480, i32 %t383, i32 %t387) call void @exit(i32 1) unreachable ixok69: @@ -156894,8 +157123,8 @@ ixok69: %t392 = load i32, ptr %t341 %t393 = add i32 %t392, 1 %t394 = call ptr @fn_itoa(i32 %t393) - %t395 = call ptr @lp_str_concat(ptr @.str11470, ptr %t394) - %t396 = call ptr @lp_str_concat(ptr %t395, ptr @.str11471) + %t395 = call ptr @lp_str_concat(ptr @.str11481, ptr %t394) + %t396 = call ptr @lp_str_concat(ptr %t395, ptr @.str11482) %t397 = load ptr, ptr %t1 %t398 = call ptr @lp_str_concat(ptr %t396, ptr %t397) call void @fn_ck_give(ptr %t371, ptr %t381, ptr %t391, ptr %t398) @@ -156947,7 +157176,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11472, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11483, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -156981,7 +157210,7 @@ wbody6: br i1 %t35, label %ixok8, label %ixbad9 ixbad9: %t36 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str11473, i32 %t30, i32 %t34) + call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str11484, i32 %t30, i32 %t34) call void @exit(i32 1) unreachable ixok8: @@ -157005,7 +157234,7 @@ sc10: br i1 %t50, label %ixok12, label %ixbad13 ixbad13: %t51 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str11474, i32 %t45, i32 %t49) + call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str11485, i32 %t45, i32 %t49) call void @exit(i32 1) unreachable ixok12: @@ -157033,7 +157262,7 @@ then14: br i1 %t67, label %ixok17, label %ixbad18 ixbad18: %t68 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t68, ptr @.fmt_bounds, ptr @.str11475, i32 %t62, i32 %t66) + call i32 (ptr, ptr, ...) @fprintf(ptr %t68, ptr @.fmt_bounds, ptr @.str11486, i32 %t62, i32 %t66) call void @exit(i32 1) unreachable ixok17: @@ -157109,7 +157338,7 @@ wbody29: br i1 %t115, label %ixok31, label %ixbad32 ixbad32: %t116 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t116, ptr @.fmt_bounds, ptr @.str11476, i32 %t110, i32 %t114) + call i32 (ptr, ptr, ...) @fprintf(ptr %t116, ptr @.fmt_bounds, ptr @.str11487, i32 %t110, i32 %t114) call void @exit(i32 1) unreachable ixok31: @@ -157159,7 +157388,7 @@ ifend27: br i1 %t146, label %ixok35, label %ixbad36 ixbad36: %t147 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t147, ptr @.fmt_bounds, ptr @.str11477, i32 %t141, i32 %t145) + call i32 (ptr, ptr, ...) @fprintf(ptr %t147, ptr @.fmt_bounds, ptr @.str11488, i32 %t141, i32 %t145) call void @exit(i32 1) unreachable ixok35: @@ -157228,7 +157457,7 @@ wbody43: br i1 %t192, label %ixok45, label %ixbad46 ixbad46: %t193 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t193, ptr @.fmt_bounds, ptr @.str11478, i32 %t187, i32 %t191) + call i32 (ptr, ptr, ...) @fprintf(ptr %t193, ptr @.fmt_bounds, ptr @.str11489, i32 %t187, i32 %t191) call void @exit(i32 1) unreachable ixok45: @@ -157405,7 +157634,7 @@ wbody1: br i1 %t16, label %ixok3, label %ixbad4 ixbad4: %t17 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11479, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11490, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok3: @@ -157989,14 +158218,14 @@ then0: br label %ret ifend2: %t11 = load ptr, ptr %t0 - %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str11480) + %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str11491) %t13 = icmp ne i32 %t12, 0 %t14 = zext i1 %t13 to i32 store i32 %t14, ptr %t10 br i1 %t13, label %scend4, label %sc3 sc3: %t15 = load ptr, ptr %t0 - %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str11481) + %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str11492) %t17 = icmp ne i32 %t16, 0 %t18 = zext i1 %t17 to i32 store i32 %t18, ptr %t10 @@ -158009,7 +158238,7 @@ scend4: br i1 %t20, label %scend6, label %sc5 sc5: %t22 = load ptr, ptr %t0 - %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str11482) + %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str11493) %t24 = icmp ne i32 %t23, 0 %t25 = zext i1 %t24 to i32 store i32 %t25, ptr %t9 @@ -158102,7 +158331,7 @@ wbody24: br i1 %t78, label %ixok26, label %ixbad27 ixbad27: %t79 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t79, ptr @.fmt_bounds, ptr @.str11483, i32 %t73, i32 %t77) + call i32 (ptr, ptr, ...) @fprintf(ptr %t79, ptr @.fmt_bounds, ptr @.str11494, i32 %t73, i32 %t77) call void @exit(i32 1) unreachable ixok26: @@ -158153,10 +158382,10 @@ entry: then0: %t12 = load ptr, ptr %t0 %t13 = load ptr, ptr %t3 - %t14 = call ptr @lp_str_concat(ptr %t13, ptr @.str11485) + %t14 = call ptr @lp_str_concat(ptr %t13, ptr @.str11496) %t15 = load ptr, ptr %t7 %t16 = call ptr @lp_str_concat(ptr %t14, ptr %t15) - call void @fn_ck_err(ptr @.str11484, ptr %t12, ptr %t16) + call void @fn_ck_err(ptr @.str11495, ptr %t12, ptr %t16) br label %ifend2 ifend2: br label %ret @@ -158217,7 +158446,7 @@ wbody1: br i1 %t24, label %ixok5, label %ixbad6 ixbad6: %t25 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str11486, i32 %t19, i32 %t23) + call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str11497, i32 %t19, i32 %t23) call void @exit(i32 1) unreachable ixok5: @@ -158290,7 +158519,7 @@ wbody15: br i1 %t75, label %ixok17, label %ixbad18 ixbad18: %t76 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t76, ptr @.fmt_bounds, ptr @.str11487, i32 %t70, i32 %t74) + call i32 (ptr, ptr, ...) @fprintf(ptr %t76, ptr @.fmt_bounds, ptr @.str11498, i32 %t70, i32 %t74) call void @exit(i32 1) unreachable ixok17: @@ -158315,7 +158544,7 @@ then19: %t93 = load ptr, ptr %t28 %t94 = getelementptr inbounds %Cmp_Node, ptr %t93, i32 0, i32 1 %t95 = load ptr, ptr %t94 - %t96 = call ptr @lp_str_concat(ptr %t95, ptr @.str11488) + %t96 = call ptr @lp_str_concat(ptr %t95, ptr @.str11499) %t97 = load ptr, ptr %t79 %t98 = getelementptr inbounds %Cmp_Node, ptr %t97, i32 0, i32 1 %t99 = load ptr, ptr %t98 @@ -158338,7 +158567,7 @@ wend16: %t110 = load ptr, ptr %t28 %t111 = getelementptr inbounds %Cmp_Node, ptr %t110, i32 0, i32 1 %t112 = load ptr, ptr %t111 - %t113 = call ptr @lp_str_concat(ptr %t112, ptr @.str11489) + %t113 = call ptr @lp_str_concat(ptr %t112, ptr @.str11500) call void @fn_ck_ty_say(ptr %t103, ptr %t106, ptr %t109, ptr %t113) br label %ifend13 ifend13: @@ -158440,7 +158669,7 @@ wbody34: br i1 %t182, label %ixok36, label %ixbad37 ixbad37: %t183 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t183, ptr @.fmt_bounds, ptr @.str11490, i32 %t177, i32 %t181) + call i32 (ptr, ptr, ...) @fprintf(ptr %t183, ptr @.fmt_bounds, ptr @.str11501, i32 %t177, i32 %t181) call void @exit(i32 1) unreachable ixok36: @@ -158465,7 +158694,7 @@ then38: %t200 = load ptr, ptr %t28 %t201 = getelementptr inbounds %Cmp_Node, ptr %t200, i32 0, i32 1 %t202 = load ptr, ptr %t201 - %t203 = call ptr @lp_str_concat(ptr %t202, ptr @.str11491) + %t203 = call ptr @lp_str_concat(ptr %t202, ptr @.str11502) %t204 = load ptr, ptr %t186 %t205 = getelementptr inbounds %Cmp_Node, ptr %t204, i32 0, i32 1 %t206 = load ptr, ptr %t205 @@ -158497,14 +158726,14 @@ entry: %t1 = alloca i32 store ptr %arg_t, ptr %t0 %t2 = load ptr, ptr %t0 - %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str11492) + %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str11503) %t4 = icmp ne i32 %t3, 0 %t5 = zext i1 %t4 to i32 store i32 %t5, ptr %t1 br i1 %t4, label %scend1, label %sc0 sc0: %t6 = load ptr, ptr %t0 - %t7 = call i32 @lp_str_eq(ptr %t6, ptr @.str11493) + %t7 = call i32 @lp_str_eq(ptr %t6, ptr @.str11504) %t8 = icmp ne i32 %t7, 0 %t9 = zext i1 %t8 to i32 store i32 %t9, ptr %t1 @@ -158528,14 +158757,14 @@ entry: %t28 = alloca i32 store ptr %arg_name, ptr %t0 %t4 = load ptr, ptr %t0 - %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str11494) + %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str11505) %t6 = icmp ne i32 %t5, 0 %t7 = zext i1 %t6 to i32 store i32 %t7, ptr %t3 br i1 %t6, label %scend1, label %sc0 sc0: %t8 = load ptr, ptr %t0 - %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str11495) + %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str11506) %t10 = icmp ne i32 %t9, 0 %t11 = zext i1 %t10 to i32 store i32 %t11, ptr %t3 @@ -158548,7 +158777,7 @@ scend1: br i1 %t13, label %scend3, label %sc2 sc2: %t15 = load ptr, ptr %t0 - %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str11496) + %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str11507) %t17 = icmp ne i32 %t16, 0 %t18 = zext i1 %t17 to i32 store i32 %t18, ptr %t2 @@ -158561,7 +158790,7 @@ scend3: br i1 %t20, label %scend5, label %sc4 sc4: %t22 = load ptr, ptr %t0 - %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str11497) + %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str11508) %t24 = icmp ne i32 %t23, 0 %t25 = zext i1 %t24 to i32 store i32 %t25, ptr %t1 @@ -158575,14 +158804,14 @@ then6: br label %ret ifend8: %t29 = load ptr, ptr %t0 - %t30 = call i32 @lp_str_eq(ptr %t29, ptr @.str11498) + %t30 = call i32 @lp_str_eq(ptr %t29, ptr @.str11509) %t31 = icmp ne i32 %t30, 0 %t32 = zext i1 %t31 to i32 store i32 %t32, ptr %t28 br i1 %t31, label %scend10, label %sc9 sc9: %t33 = load ptr, ptr %t0 - %t34 = call i32 @lp_str_eq(ptr %t33, ptr @.str11499) + %t34 = call i32 @lp_str_eq(ptr %t33, ptr @.str11510) %t35 = icmp ne i32 %t34, 0 %t36 = zext i1 %t35 to i32 store i32 %t36, ptr %t28 @@ -158653,8 +158882,8 @@ then7: ifend9: %t31 = load ptr, ptr %t0 %t32 = load ptr, ptr %t1 - %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str11501) - call void @fn_ck_err(ptr @.str11500, ptr %t31, ptr %t33) + %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str11512) + call void @fn_ck_err(ptr @.str11511, ptr %t31, ptr %t33) br label %ret ret: ret void @@ -158699,7 +158928,7 @@ then5: br label %ret ifend7: %t21 = load ptr, ptr %t0 - call void @fn_ck_err(ptr @.str11502, ptr %t21, ptr @.str11503) + call void @fn_ck_err(ptr @.str11513, ptr %t21, ptr @.str11514) br label %ret ret: ret void @@ -158759,7 +158988,7 @@ wbody1: br i1 %t33, label %ixok5, label %ixbad6 ixbad6: %t34 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str11504, i32 %t28, i32 %t32) + call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str11515, i32 %t28, i32 %t32) call void @exit(i32 1) unreachable ixok5: @@ -158786,16 +159015,16 @@ entry: store ptr %arg_lt, ptr %t0 store ptr %arg_v, ptr %t1 store ptr %arg_addr, ptr %t2 - call void @fn_emit(ptr @.str11505) + call void @fn_emit(ptr @.str11516) %t3 = load ptr, ptr %t0 call void @fn_emit(ptr %t3) - call void @fn_emit(ptr @.str11506) + call void @fn_emit(ptr @.str11517) %t4 = load ptr, ptr %t1 call void @fn_emit(ptr %t4) - call void @fn_emit(ptr @.str11507) + call void @fn_emit(ptr @.str11518) %t5 = load ptr, ptr %t2 call void @fn_emit(ptr %t5) - call void @fn_emit(ptr @.str11508) + call void @fn_emit(ptr @.str11519) br label %ret ret: ret void @@ -158833,8 +159062,8 @@ entry: %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 4 %t3 = load ptr, ptr %t2 store ptr %t3, ptr %t4 - store ptr @.str11509, ptr %t5 - store ptr @.str11510, ptr %t6 + store ptr @.str11520, ptr %t5 + store ptr @.str11521, ptr %t6 %t7 = load ptr, ptr %t4 %t8 = getelementptr inbounds %Cmp_Node, ptr %t7, i32 0, i32 0 %t9 = load i32, ptr %t8 @@ -158864,7 +159093,7 @@ then3: br i1 %t28, label %ixok6, label %ixbad7 ixbad7: %t29 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str11511, i32 %t23, i32 %t27) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str11522, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok6: @@ -158878,8 +159107,8 @@ then8: %t35 = load ptr, ptr %t4 %t36 = getelementptr inbounds %Cmp_Node, ptr %t35, i32 0, i32 1 %t37 = load ptr, ptr %t36 - %t38 = call ptr @lp_str_concat(ptr @.str11512, ptr %t37) - %t39 = call ptr @lp_str_concat(ptr %t38, ptr @.str11513) + %t38 = call ptr @lp_str_concat(ptr @.str11523, ptr %t37) + %t39 = call ptr @lp_str_concat(ptr %t38, ptr @.str11524) %t40 = load ptr, ptr %t0 %t41 = getelementptr inbounds %Cmp_Node, ptr %t40, i32 0, i32 8 %t42 = load i32, ptr %t41 @@ -158911,7 +159140,7 @@ ifend13: br i1 %t59, label %ixok14, label %ixbad15 ixbad15: %t60 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t60, ptr @.fmt_bounds, ptr @.str11514, i32 %t54, i32 %t58) + call i32 (ptr, ptr, ...) @fprintf(ptr %t60, ptr @.fmt_bounds, ptr @.str11525, i32 %t54, i32 %t58) call void @exit(i32 1) unreachable ixok14: @@ -158928,7 +159157,7 @@ ixok14: br i1 %t69, label %ixok16, label %ixbad17 ixbad17: %t70 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t70, ptr @.fmt_bounds, ptr @.str11515, i32 %t64, i32 %t68) + call i32 (ptr, ptr, ...) @fprintf(ptr %t70, ptr @.fmt_bounds, ptr @.str11526, i32 %t64, i32 %t68) call void @exit(i32 1) unreachable ixok16: @@ -158951,7 +159180,7 @@ then18: %t82 = load ptr, ptr %t4 %t83 = getelementptr inbounds %Cmp_Node, ptr %t82, i32 0, i32 1 %t84 = load ptr, ptr %t83 - %t85 = call ptr @lp_str_concat(ptr @.str11516, ptr %t84) + %t85 = call ptr @lp_str_concat(ptr @.str11527, ptr %t84) call void @fn_perr(ptr %t85) br label %ifend20 ifend20: @@ -158968,7 +159197,7 @@ ifend20: %t94 = load ptr, ptr %t4 %t95 = getelementptr inbounds %Cmp_Node, ptr %t94, i32 0, i32 1 %t96 = load ptr, ptr %t95 - %t97 = call ptr @lp_str_concat(ptr @.str11517, ptr %t96) + %t97 = call ptr @lp_str_concat(ptr @.str11528, ptr %t96) store ptr %t97, ptr %t5 %t98 = load ptr, ptr %t77 %t99 = getelementptr inbounds %Cmp_Node, ptr %t98, i32 0, i32 3 @@ -159043,7 +159272,7 @@ then33: store ptr %t137, ptr %t6 br label %ifend35 else34: - call void @fn_perr(ptr @.str11518) + call void @fn_perr(ptr @.str11529) br label %ifend35 ifend35: br label %ifend32 @@ -159061,15 +159290,15 @@ ifend2: %t146 = load ptr, ptr %t0 %t147 = getelementptr inbounds %Cmp_Node, ptr %t146, i32 0, i32 1 %t148 = load ptr, ptr %t147 - %t149 = call i32 @lp_str_eq(ptr %t148, ptr @.str11519) + %t149 = call i32 @lp_str_eq(ptr %t148, ptr @.str11530) %t150 = icmp eq i32 %t149, 0 %t151 = zext i1 %t150 to i32 %t152 = icmp ne i32 %t151, 0 br i1 %t152, label %then36, label %ifend38 then36: %t153 = load ptr, ptr %t140 - %t154 = call ptr @lp_str_concat(ptr @.str11520, ptr %t153) - %t155 = call ptr @lp_str_concat(ptr %t154, ptr @.str11521) + %t154 = call ptr @lp_str_concat(ptr @.str11531, ptr %t153) + %t155 = call ptr @lp_str_concat(ptr %t154, ptr @.str11532) %t156 = load ptr, ptr %t5 %t157 = call ptr @lp_str_concat(ptr %t155, ptr %t156) %t158 = call ptr @fn_emit_bind(ptr %t157) @@ -159091,13 +159320,13 @@ ifend38: %t171 = call ptr @fn_coerce_code(ptr %t169, ptr %t170) store ptr %t171, ptr %t172 %t173 = load ptr, ptr %t140 - %t174 = call i32 @lp_str_eq(ptr %t173, ptr @.str11522) + %t174 = call i32 @lp_str_eq(ptr %t173, ptr @.str11533) %t175 = icmp ne i32 %t174, 0 br i1 %t175, label %then39, label %ifend41 then39: %t176 = load ptr, ptr %t172 - %t177 = call ptr @lp_str_concat(ptr @.str11523, ptr %t176) - %t178 = call ptr @lp_str_concat(ptr %t177, ptr @.str11524) + %t177 = call ptr @lp_str_concat(ptr @.str11534, ptr %t176) + %t178 = call ptr @lp_str_concat(ptr %t177, ptr @.str11535) %t179 = call ptr @fn_emit_bind(ptr %t178) store ptr %t179, ptr %t172 br label %ifend41 @@ -159129,8 +159358,8 @@ entry: %t6 = load ptr, ptr %t5 %t7 = getelementptr inbounds %Cmp_Val, ptr %t6, i32 0, i32 0 %t8 = load ptr, ptr %t7 - %t9 = call ptr @lp_str_concat(ptr @.str11525, ptr %t8) - %t10 = call ptr @lp_str_concat(ptr %t9, ptr @.str11526) + %t9 = call ptr @lp_str_concat(ptr @.str11536, ptr %t8) + %t10 = call ptr @lp_str_concat(ptr %t9, ptr @.str11537) %t11 = call ptr @fn_emit_bind(ptr %t10) store ptr %t11, ptr %t12 %t13 = load ptr, ptr %t0 @@ -159139,43 +159368,43 @@ entry: %t16 = icmp ne ptr %t15, null %t17 = zext i1 %t16 to i32 store i32 %t17, ptr %t18 - %t19 = call ptr @fn_lbl(ptr @.str11527) + %t19 = call ptr @fn_lbl(ptr @.str11538) store ptr %t19, ptr %t20 - %t21 = call ptr @fn_lbl(ptr @.str11528) + %t21 = call ptr @fn_lbl(ptr @.str11539) store ptr %t21, ptr %t22 - %t23 = call ptr @fn_lbl(ptr @.str11529) + %t23 = call ptr @fn_lbl(ptr @.str11540) store ptr %t23, ptr %t24 %t25 = load i32, ptr %t18 %t26 = icmp ne i32 %t25, 0 br i1 %t26, label %then0, label %else1 then0: - call void @fn_emit(ptr @.str11530) + call void @fn_emit(ptr @.str11541) %t27 = load ptr, ptr %t12 call void @fn_emit(ptr %t27) - call void @fn_emit(ptr @.str11531) + call void @fn_emit(ptr @.str11542) %t28 = load ptr, ptr %t20 call void @fn_emit(ptr %t28) - call void @fn_emit(ptr @.str11532) + call void @fn_emit(ptr @.str11543) %t29 = load ptr, ptr %t22 call void @fn_emit(ptr %t29) - call void @fn_emit(ptr @.str11533) + call void @fn_emit(ptr @.str11544) br label %ifend2 else1: - call void @fn_emit(ptr @.str11534) + call void @fn_emit(ptr @.str11545) %t30 = load ptr, ptr %t12 call void @fn_emit(ptr %t30) - call void @fn_emit(ptr @.str11535) + call void @fn_emit(ptr @.str11546) %t31 = load ptr, ptr %t20 call void @fn_emit(ptr %t31) - call void @fn_emit(ptr @.str11536) + call void @fn_emit(ptr @.str11547) %t32 = load ptr, ptr %t24 call void @fn_emit(ptr %t32) - call void @fn_emit(ptr @.str11537) + call void @fn_emit(ptr @.str11548) br label %ifend2 ifend2: %t33 = load ptr, ptr %t20 call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str11538) + call void @fn_emit(ptr @.str11549) store i32 0, ptr @g_g_term %t34 = load ptr, ptr %t0 %t35 = getelementptr inbounds %Cmp_Node, ptr %t34, i32 0, i32 5 @@ -159187,10 +159416,10 @@ ifend2: %t40 = icmp ne i32 %t39, 0 br i1 %t40, label %then3, label %ifend5 then3: - call void @fn_emit(ptr @.str11539) + call void @fn_emit(ptr @.str11550) %t41 = load ptr, ptr %t24 call void @fn_emit(ptr %t41) - call void @fn_emit(ptr @.str11540) + call void @fn_emit(ptr @.str11551) br label %ifend5 ifend5: %t42 = load i32, ptr %t18 @@ -159199,7 +159428,7 @@ ifend5: then6: %t44 = load ptr, ptr %t22 call void @fn_emit(ptr %t44) - call void @fn_emit(ptr @.str11541) + call void @fn_emit(ptr @.str11552) store i32 0, ptr @g_g_term %t45 = load ptr, ptr %t0 %t46 = getelementptr inbounds %Cmp_Node, ptr %t45, i32 0, i32 6 @@ -159229,17 +159458,17 @@ ifend11: %t62 = icmp ne i32 %t61, 0 br i1 %t62, label %then12, label %ifend14 then12: - call void @fn_emit(ptr @.str11542) + call void @fn_emit(ptr @.str11553) %t63 = load ptr, ptr %t24 call void @fn_emit(ptr %t63) - call void @fn_emit(ptr @.str11543) + call void @fn_emit(ptr @.str11554) br label %ifend14 ifend14: br label %ifend8 ifend8: %t64 = load ptr, ptr %t24 call void @fn_emit(ptr %t64) - call void @fn_emit(ptr @.str11544) + call void @fn_emit(ptr @.str11555) store i32 0, ptr @g_g_term br label %ret ret: @@ -159255,19 +159484,19 @@ entry: %t13 = alloca ptr %t20 = alloca ptr store ptr %arg_st, ptr %t0 - %t1 = call ptr @fn_lbl(ptr @.str11545) + %t1 = call ptr @fn_lbl(ptr @.str11556) store ptr %t1, ptr %t2 - %t3 = call ptr @fn_lbl(ptr @.str11546) + %t3 = call ptr @fn_lbl(ptr @.str11557) store ptr %t3, ptr %t4 - %t5 = call ptr @fn_lbl(ptr @.str11547) + %t5 = call ptr @fn_lbl(ptr @.str11558) store ptr %t5, ptr %t6 - call void @fn_emit(ptr @.str11548) + call void @fn_emit(ptr @.str11559) %t7 = load ptr, ptr %t2 call void @fn_emit(ptr %t7) - call void @fn_emit(ptr @.str11549) + call void @fn_emit(ptr @.str11560) %t8 = load ptr, ptr %t2 call void @fn_emit(ptr %t8) - call void @fn_emit(ptr @.str11550) + call void @fn_emit(ptr @.str11561) %t9 = load ptr, ptr %t0 %t10 = getelementptr inbounds %Cmp_Node, ptr %t9, i32 0, i32 4 %t11 = load ptr, ptr %t10 @@ -159276,23 +159505,23 @@ entry: %t14 = load ptr, ptr %t13 %t15 = getelementptr inbounds %Cmp_Val, ptr %t14, i32 0, i32 0 %t16 = load ptr, ptr %t15 - %t17 = call ptr @lp_str_concat(ptr @.str11551, ptr %t16) - %t18 = call ptr @lp_str_concat(ptr %t17, ptr @.str11552) + %t17 = call ptr @lp_str_concat(ptr @.str11562, ptr %t16) + %t18 = call ptr @lp_str_concat(ptr %t17, ptr @.str11563) %t19 = call ptr @fn_emit_bind(ptr %t18) store ptr %t19, ptr %t20 - call void @fn_emit(ptr @.str11553) + call void @fn_emit(ptr @.str11564) %t21 = load ptr, ptr %t20 call void @fn_emit(ptr %t21) - call void @fn_emit(ptr @.str11554) + call void @fn_emit(ptr @.str11565) %t22 = load ptr, ptr %t4 call void @fn_emit(ptr %t22) - call void @fn_emit(ptr @.str11555) + call void @fn_emit(ptr @.str11566) %t23 = load ptr, ptr %t6 call void @fn_emit(ptr %t23) - call void @fn_emit(ptr @.str11556) + call void @fn_emit(ptr @.str11567) %t24 = load ptr, ptr %t4 call void @fn_emit(ptr %t24) - call void @fn_emit(ptr @.str11557) + call void @fn_emit(ptr @.str11568) store i32 0, ptr @g_g_term %t25 = load ptr, ptr %t2 %t26 = load ptr, ptr %t6 @@ -159308,15 +159537,15 @@ entry: %t33 = icmp ne i32 %t32, 0 br i1 %t33, label %then0, label %ifend2 then0: - call void @fn_emit(ptr @.str11558) + call void @fn_emit(ptr @.str11569) %t34 = load ptr, ptr %t2 call void @fn_emit(ptr %t34) - call void @fn_emit(ptr @.str11559) + call void @fn_emit(ptr @.str11570) br label %ifend2 ifend2: %t35 = load ptr, ptr %t6 call void @fn_emit(ptr %t35) - call void @fn_emit(ptr @.str11560) + call void @fn_emit(ptr @.str11571) store i32 0, ptr @g_g_term br label %ret ret: @@ -159338,7 +159567,7 @@ entry: %t62 = alloca ptr %t67 = alloca ptr store ptr %arg_st, ptr %t0 - %t1 = call ptr @fn_emit_alloca(ptr @.str11561) + %t1 = call ptr @fn_emit_alloca(ptr @.str11572) store ptr %t1, ptr %t2 %t3 = load ptr, ptr %t0 %t4 = getelementptr inbounds %Cmp_Node, ptr %t3, i32 0, i32 4 @@ -159349,29 +159578,29 @@ entry: %t9 = getelementptr inbounds %Cmp_Val, ptr %t8, i32 0, i32 0 %t10 = load ptr, ptr %t9 %t11 = load ptr, ptr %t2 - call void @fn_store_at(ptr @.str11562, ptr %t10, ptr %t11) + call void @fn_store_at(ptr @.str11573, ptr %t10, ptr %t11) %t12 = load ptr, ptr %t0 %t13 = getelementptr inbounds %Cmp_Node, ptr %t12, i32 0, i32 1 %t14 = load ptr, ptr %t13 %t15 = load ptr, ptr %t2 - call void @fn_loc_push(ptr %t14, ptr %t15, ptr @.str11563) - %t16 = call ptr @fn_lbl(ptr @.str11564) + call void @fn_loc_push(ptr %t14, ptr %t15, ptr @.str11574) + %t16 = call ptr @fn_lbl(ptr @.str11575) store ptr %t16, ptr %t17 - %t18 = call ptr @fn_lbl(ptr @.str11565) + %t18 = call ptr @fn_lbl(ptr @.str11576) store ptr %t18, ptr %t19 - %t20 = call ptr @fn_lbl(ptr @.str11566) + %t20 = call ptr @fn_lbl(ptr @.str11577) store ptr %t20, ptr %t21 - %t22 = call ptr @fn_lbl(ptr @.str11567) + %t22 = call ptr @fn_lbl(ptr @.str11578) store ptr %t22, ptr %t23 - call void @fn_emit(ptr @.str11568) + call void @fn_emit(ptr @.str11579) %t24 = load ptr, ptr %t17 call void @fn_emit(ptr %t24) - call void @fn_emit(ptr @.str11569) + call void @fn_emit(ptr @.str11580) %t25 = load ptr, ptr %t17 call void @fn_emit(ptr %t25) - call void @fn_emit(ptr @.str11570) + call void @fn_emit(ptr @.str11581) %t26 = load ptr, ptr %t2 - %t27 = call ptr @lp_str_concat(ptr @.str11571, ptr %t26) + %t27 = call ptr @lp_str_concat(ptr @.str11582, ptr %t26) %t28 = call ptr @fn_emit_bind(ptr %t27) store ptr %t28, ptr %t29 %t30 = load ptr, ptr %t0 @@ -159380,27 +159609,27 @@ entry: %t33 = call ptr @fn_emit_expr(ptr %t32) store ptr %t33, ptr %t34 %t35 = load ptr, ptr %t29 - %t36 = call ptr @lp_str_concat(ptr @.str11572, ptr %t35) - %t37 = call ptr @lp_str_concat(ptr %t36, ptr @.str11573) + %t36 = call ptr @lp_str_concat(ptr @.str11583, ptr %t35) + %t37 = call ptr @lp_str_concat(ptr %t36, ptr @.str11584) %t38 = load ptr, ptr %t34 %t39 = getelementptr inbounds %Cmp_Val, ptr %t38, i32 0, i32 0 %t40 = load ptr, ptr %t39 %t41 = call ptr @lp_str_concat(ptr %t37, ptr %t40) %t42 = call ptr @fn_emit_bind(ptr %t41) store ptr %t42, ptr %t43 - call void @fn_emit(ptr @.str11574) + call void @fn_emit(ptr @.str11585) %t44 = load ptr, ptr %t43 call void @fn_emit(ptr %t44) - call void @fn_emit(ptr @.str11575) + call void @fn_emit(ptr @.str11586) %t45 = load ptr, ptr %t19 call void @fn_emit(ptr %t45) - call void @fn_emit(ptr @.str11576) + call void @fn_emit(ptr @.str11587) %t46 = load ptr, ptr %t23 call void @fn_emit(ptr %t46) - call void @fn_emit(ptr @.str11577) + call void @fn_emit(ptr @.str11588) %t47 = load ptr, ptr %t19 call void @fn_emit(ptr %t47) - call void @fn_emit(ptr @.str11578) + call void @fn_emit(ptr @.str11589) store i32 0, ptr @g_g_term %t48 = load ptr, ptr %t21 %t49 = load ptr, ptr %t23 @@ -159416,34 +159645,34 @@ entry: %t56 = icmp ne i32 %t55, 0 br i1 %t56, label %then0, label %ifend2 then0: - call void @fn_emit(ptr @.str11579) + call void @fn_emit(ptr @.str11590) %t57 = load ptr, ptr %t21 call void @fn_emit(ptr %t57) - call void @fn_emit(ptr @.str11580) + call void @fn_emit(ptr @.str11591) br label %ifend2 ifend2: %t58 = load ptr, ptr %t21 call void @fn_emit(ptr %t58) - call void @fn_emit(ptr @.str11581) + call void @fn_emit(ptr @.str11592) %t59 = load ptr, ptr %t2 - %t60 = call ptr @lp_str_concat(ptr @.str11582, ptr %t59) + %t60 = call ptr @lp_str_concat(ptr @.str11593, ptr %t59) %t61 = call ptr @fn_emit_bind(ptr %t60) store ptr %t61, ptr %t62 %t63 = load ptr, ptr %t62 - %t64 = call ptr @lp_str_concat(ptr @.str11583, ptr %t63) - %t65 = call ptr @lp_str_concat(ptr %t64, ptr @.str11584) + %t64 = call ptr @lp_str_concat(ptr @.str11594, ptr %t63) + %t65 = call ptr @lp_str_concat(ptr %t64, ptr @.str11595) %t66 = call ptr @fn_emit_bind(ptr %t65) store ptr %t66, ptr %t67 %t68 = load ptr, ptr %t67 %t69 = load ptr, ptr %t2 - call void @fn_store_at(ptr @.str11585, ptr %t68, ptr %t69) - call void @fn_emit(ptr @.str11586) + call void @fn_store_at(ptr @.str11596, ptr %t68, ptr %t69) + call void @fn_emit(ptr @.str11597) %t70 = load ptr, ptr %t17 call void @fn_emit(ptr %t70) - call void @fn_emit(ptr @.str11587) + call void @fn_emit(ptr @.str11598) %t71 = load ptr, ptr %t23 call void @fn_emit(ptr %t71) - call void @fn_emit(ptr @.str11588) + call void @fn_emit(ptr @.str11599) store i32 0, ptr @g_g_term br label %ret ret: @@ -159467,7 +159696,7 @@ entry: br i1 %t7, label %sc0, label %scend1 sc0: %t9 = load ptr, ptr @g_ret_ty - %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str11589) + %t10 = call i32 @lp_str_eq(ptr %t9, ptr @.str11600) %t11 = icmp ne i32 %t10, 0 %t12 = zext i1 %t11 to i32 store i32 %t12, ptr %t1 @@ -159477,7 +159706,7 @@ scend1: %t14 = icmp ne i32 %t13, 0 br i1 %t14, label %then2, label %ifend4 then2: - call void @fn_perr(ptr @.str11590) + call void @fn_perr(ptr @.str11601) br label %ifend4 ifend4: %t15 = load ptr, ptr %t0 @@ -159498,12 +159727,12 @@ then5: %t28 = load ptr, ptr %t25 %t29 = load ptr, ptr @g_ret_ty %t30 = call ptr @fn_coerce_code(ptr %t28, ptr %t29) - call void @fn_store_at(ptr %t27, ptr %t30, ptr @.str11591) + call void @fn_store_at(ptr %t27, ptr %t30, ptr @.str11602) br label %ifend7 ifend7: %t31 = load ptr, ptr @g_g_ret_label - %t32 = call ptr @lp_str_concat(ptr @.str11592, ptr %t31) - %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str11593) + %t32 = call ptr @lp_str_concat(ptr @.str11603, ptr %t31) + %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str11604) call void @fn_emit(ptr %t33) store i32 1, ptr @g_g_term br label %ret @@ -159552,7 +159781,7 @@ wbody4: br i1 %t23, label %ixok6, label %ixbad7 ixbad7: %t24 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str11594, i32 %t18, i32 %t22) + call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str11605, i32 %t18, i32 %t22) call void @exit(i32 1) unreachable ixok6: @@ -159707,7 +159936,7 @@ wbody21: br i1 %t82, label %ixok23, label %ixbad24 ixbad24: %t83 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t83, ptr @.fmt_bounds, ptr @.str11595, i32 %t77, i32 %t81) + call i32 (ptr, ptr, ...) @fprintf(ptr %t83, ptr @.fmt_bounds, ptr @.str11606, i32 %t77, i32 %t81) call void @exit(i32 1) unreachable ixok23: @@ -159783,7 +160012,7 @@ wbody1: br i1 %t20, label %ixok3, label %ixbad4 ixbad4: %t21 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11596, i32 %t15, i32 %t19) + call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11607, i32 %t15, i32 %t19) call void @exit(i32 1) unreachable ixok3: @@ -159810,7 +160039,7 @@ sc5: br i1 %t38, label %ixok7, label %ixbad8 ixbad8: %t39 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str11597, i32 %t33, i32 %t37) + call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str11608, i32 %t33, i32 %t37) call void @exit(i32 1) unreachable ixok7: @@ -159818,7 +160047,7 @@ ixok7: %t41 = load ptr, ptr %t40 %t42 = getelementptr inbounds %Cmp_Node, ptr %t41, i32 0, i32 1 %t43 = load ptr, ptr %t42 - %t44 = call i32 @lp_str_eq(ptr %t43, ptr @.str11598) + %t44 = call i32 @lp_str_eq(ptr %t43, ptr @.str11609) %t45 = icmp ne i32 %t44, 0 %t46 = zext i1 %t45 to i32 store i32 %t46, ptr %t11 @@ -159879,7 +160108,7 @@ entry: br i1 %t19, label %ixok0, label %ixbad1 ixbad1: %t20 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str11599, i32 %t14, i32 %t18) + call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str11610, i32 %t14, i32 %t18) call void @exit(i32 1) unreachable ixok0: @@ -159906,8 +160135,8 @@ then2: %t39 = load ptr, ptr %t38 %t40 = getelementptr inbounds %Cmp_Node, ptr %t39, i32 0, i32 1 %t41 = load ptr, ptr %t40 - %t42 = call ptr @lp_str_concat(ptr @.str11600, ptr %t41) - %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str11601) + %t42 = call ptr @lp_str_concat(ptr @.str11611, ptr %t41) + %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str11612) %t44 = load ptr, ptr %t1 %t45 = getelementptr inbounds %Cmp_Node, ptr %t44, i32 0, i32 7 %t46 = load ptr, ptr %t45 @@ -159915,7 +160144,7 @@ then2: %t48 = load i32, ptr %t47 %t49 = call ptr @fn_itoa(i32 %t48) %t50 = call ptr @lp_str_concat(ptr %t43, ptr %t49) - %t51 = call ptr @lp_str_concat(ptr %t50, ptr @.str11602) + %t51 = call ptr @lp_str_concat(ptr %t50, ptr @.str11613) %t52 = load ptr, ptr %t23 %t53 = getelementptr inbounds %Cmp_Node, ptr %t52, i32 0, i32 7 %t54 = load ptr, ptr %t53 @@ -159952,7 +160181,7 @@ wbody6: br i1 %t77, label %ixok8, label %ixbad9 ixbad9: %t78 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t78, ptr @.fmt_bounds, ptr @.str11603, i32 %t72, i32 %t76) + call i32 (ptr, ptr, ...) @fprintf(ptr %t78, ptr @.fmt_bounds, ptr @.str11614, i32 %t72, i32 %t76) call void @exit(i32 1) unreachable ixok8: @@ -159972,12 +160201,12 @@ then10: %t90 = load ptr, ptr %t89 %t91 = getelementptr inbounds %Cmp_Node, ptr %t90, i32 0, i32 1 %t92 = load ptr, ptr %t91 - %t93 = call ptr @lp_str_concat(ptr @.str11604, ptr %t92) - %t94 = call ptr @lp_str_concat(ptr %t93, ptr @.str11605) + %t93 = call ptr @lp_str_concat(ptr @.str11615, ptr %t92) + %t94 = call ptr @lp_str_concat(ptr %t93, ptr @.str11616) %t95 = load i32, ptr %t59 %t96 = call ptr @fn_itoa(i32 %t95) %t97 = call ptr @lp_str_concat(ptr %t94, ptr %t96) - %t98 = call ptr @lp_str_concat(ptr %t97, ptr @.str11606) + %t98 = call ptr @lp_str_concat(ptr %t97, ptr @.str11617) call void @fn_perr(ptr %t98) br label %ifend12 ifend12: @@ -159993,7 +160222,7 @@ ifend12: br i1 %t107, label %ixok13, label %ixbad14 ixbad14: %t108 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t108, ptr @.fmt_bounds, ptr @.str11607, i32 %t102, i32 %t106) + call i32 (ptr, ptr, ...) @fprintf(ptr %t108, ptr @.fmt_bounds, ptr @.str11618, i32 %t102, i32 %t106) call void @exit(i32 1) unreachable ixok13: @@ -160007,24 +160236,24 @@ ixok13: store ptr %t115, ptr %t116 %t117 = call ptr @fn_nreg() store ptr %t117, ptr %t118 - call void @fn_emit(ptr @.str11608) + call void @fn_emit(ptr @.str11619) %t119 = load ptr, ptr %t118 call void @fn_emit(ptr %t119) - call void @fn_emit(ptr @.str11609) + call void @fn_emit(ptr @.str11620) %t120 = load ptr, ptr %t2 %t121 = getelementptr inbounds %Cmp_Val, ptr %t120, i32 0, i32 0 %t122 = load ptr, ptr %t121 call void @fn_emit(ptr %t122) - call void @fn_emit(ptr @.str11610) + call void @fn_emit(ptr @.str11621) %t123 = load i32, ptr %t59 %t124 = add i32 %t123, 1 %t125 = mul i32 8, %t124 %t126 = call ptr @fn_itoa(i32 %t125) call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str11611) + call void @fn_emit(ptr @.str11622) %t127 = load ptr, ptr %t116 - %t128 = call ptr @lp_str_concat(ptr @.str11612, ptr %t127) - %t129 = call ptr @lp_str_concat(ptr %t128, ptr @.str11613) + %t128 = call ptr @lp_str_concat(ptr @.str11623, ptr %t127) + %t129 = call ptr @lp_str_concat(ptr %t128, ptr @.str11624) %t130 = load ptr, ptr %t118 %t131 = call ptr @lp_str_concat(ptr %t129, ptr %t130) %t132 = call ptr @fn_emit_bind(ptr %t131) @@ -160048,7 +160277,7 @@ ixok13: br i1 %t148, label %ixok15, label %ixbad16 ixbad16: %t149 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t149, ptr @.fmt_bounds, ptr @.str11614, i32 %t143, i32 %t147) + call i32 (ptr, ptr, ...) @fprintf(ptr %t149, ptr @.fmt_bounds, ptr @.str11625, i32 %t143, i32 %t147) call void @exit(i32 1) unreachable ixok15: @@ -160099,10 +160328,10 @@ entry: %t3 = load ptr, ptr %t1 %t4 = getelementptr inbounds %Cmp_Val, ptr %t3, i32 0, i32 0 %t5 = load ptr, ptr %t4 - %t6 = call ptr @lp_str_concat(ptr @.str11615, ptr %t5) + %t6 = call ptr @lp_str_concat(ptr @.str11626, ptr %t5) %t7 = call ptr @fn_emit_bind(ptr %t6) store ptr %t7, ptr %t8 - %t9 = call ptr @fn_lbl(ptr @.str11616) + %t9 = call ptr @fn_lbl(ptr @.str11627) store ptr %t9, ptr %t10 store ptr null, ptr %t11 store i32 0, ptr %t12 @@ -160132,7 +160361,7 @@ wbody1: br i1 %t31, label %ixok3, label %ixbad4 ixbad4: %t32 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str11617, i32 %t26, i32 %t30) + call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str11628, i32 %t26, i32 %t30) call void @exit(i32 1) unreachable ixok3: @@ -160148,7 +160377,7 @@ then5: store ptr %t39, ptr %t11 br label %ifend7 else6: - store ptr @.str11618, ptr %t40 + store ptr @.str11629, ptr %t40 store i32 1, ptr %t41 store ptr null, ptr %t42 store i32 0, ptr %t43 @@ -160177,7 +160406,7 @@ wbody9: br i1 %t61, label %ixok11, label %ixbad12 ixbad12: %t62 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t62, ptr @.fmt_bounds, ptr @.str11619, i32 %t56, i32 %t60) + call i32 (ptr, ptr, ...) @fprintf(ptr %t62, ptr @.fmt_bounds, ptr @.str11630, i32 %t56, i32 %t60) call void @exit(i32 1) unreachable ixok11: @@ -160217,8 +160446,8 @@ ifend15: br i1 %t89, label %then16, label %ifend18 then16: %t90 = load ptr, ptr %t69 - %t91 = call ptr @lp_str_concat(ptr @.str11620, ptr %t90) - %t92 = call ptr @lp_str_concat(ptr %t91, ptr @.str11621) + %t91 = call ptr @lp_str_concat(ptr @.str11631, ptr %t90) + %t92 = call ptr @lp_str_concat(ptr %t91, ptr @.str11632) %t93 = load ptr, ptr %t2 %t94 = getelementptr inbounds %Cmp_Node, ptr %t93, i32 0, i32 1 %t95 = load ptr, ptr %t94 @@ -160232,8 +160461,8 @@ ifend18: %t100 = or i32 %t97, %t99 store i32 %t100, ptr %t12 %t101 = load ptr, ptr %t8 - %t102 = call ptr @lp_str_concat(ptr @.str11622, ptr %t101) - %t103 = call ptr @lp_str_concat(ptr %t102, ptr @.str11623) + %t102 = call ptr @lp_str_concat(ptr @.str11633, ptr %t101) + %t103 = call ptr @lp_str_concat(ptr %t102, ptr @.str11634) %t104 = load i32, ptr %t85 %t105 = call ptr @fn_itoa(i32 %t104) %t106 = call ptr @lp_str_concat(ptr %t103, ptr %t105) @@ -160249,8 +160478,8 @@ then19: br label %ifend21 else20: %t112 = load ptr, ptr %t40 - %t113 = call ptr @lp_str_concat(ptr @.str11624, ptr %t112) - %t114 = call ptr @lp_str_concat(ptr %t113, ptr @.str11625) + %t113 = call ptr @lp_str_concat(ptr @.str11635, ptr %t112) + %t114 = call ptr @lp_str_concat(ptr %t113, ptr @.str11636) %t115 = load ptr, ptr %t108 %t116 = call ptr @lp_str_concat(ptr %t114, ptr %t115) %t117 = call ptr @fn_emit_bind(ptr %t116) @@ -160262,23 +160491,23 @@ ifend21: store i32 %t119, ptr %t43 br label %wcond8 wend10: - %t120 = call ptr @fn_lbl(ptr @.str11626) + %t120 = call ptr @fn_lbl(ptr @.str11637) store ptr %t120, ptr %t121 - %t122 = call ptr @fn_lbl(ptr @.str11627) + %t122 = call ptr @fn_lbl(ptr @.str11638) store ptr %t122, ptr %t123 - call void @fn_emit(ptr @.str11628) + call void @fn_emit(ptr @.str11639) %t124 = load ptr, ptr %t40 call void @fn_emit(ptr %t124) - call void @fn_emit(ptr @.str11629) + call void @fn_emit(ptr @.str11640) %t125 = load ptr, ptr %t121 call void @fn_emit(ptr %t125) - call void @fn_emit(ptr @.str11630) + call void @fn_emit(ptr @.str11641) %t126 = load ptr, ptr %t123 call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str11631) + call void @fn_emit(ptr @.str11642) %t127 = load ptr, ptr %t121 call void @fn_emit(ptr %t127) - call void @fn_emit(ptr @.str11632) + call void @fn_emit(ptr @.str11643) store i32 0, ptr @g_g_term %t128 = load i32, ptr @g_nloc store i32 %t128, ptr %t129 @@ -160306,15 +160535,15 @@ ifend24: %t144 = icmp ne i32 %t143, 0 br i1 %t144, label %then25, label %ifend27 then25: - call void @fn_emit(ptr @.str11633) + call void @fn_emit(ptr @.str11644) %t145 = load ptr, ptr %t10 call void @fn_emit(ptr %t145) - call void @fn_emit(ptr @.str11634) + call void @fn_emit(ptr @.str11645) br label %ifend27 ifend27: %t146 = load ptr, ptr %t123 call void @fn_emit(ptr %t146) - call void @fn_emit(ptr @.str11635) + call void @fn_emit(ptr @.str11646) store i32 0, ptr @g_g_term br label %ifend7 ifend7: @@ -160378,8 +160607,8 @@ then37: %t188 = load ptr, ptr %t2 %t189 = getelementptr inbounds %Cmp_Node, ptr %t188, i32 0, i32 1 %t190 = load ptr, ptr %t189 - %t191 = call ptr @lp_str_concat(ptr @.str11636, ptr %t190) - %t192 = call ptr @lp_str_concat(ptr %t191, ptr @.str11637) + %t191 = call ptr @lp_str_concat(ptr @.str11647, ptr %t190) + %t192 = call ptr @lp_str_concat(ptr %t191, ptr @.str11648) %t193 = load ptr, ptr %t2 %t194 = getelementptr inbounds %Cmp_Node, ptr %t193, i32 0, i32 7 %t195 = load ptr, ptr %t194 @@ -160392,7 +160621,7 @@ then37: br i1 %t201, label %ixok40, label %ixbad41 ixbad41: %t202 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t202, ptr @.fmt_bounds, ptr @.str11638, i32 %t196, i32 %t200) + call i32 (ptr, ptr, ...) @fprintf(ptr %t202, ptr @.fmt_bounds, ptr @.str11649, i32 %t196, i32 %t200) call void @exit(i32 1) unreachable ixok40: @@ -160401,7 +160630,7 @@ ixok40: %t205 = getelementptr inbounds %Cmp_Node, ptr %t204, i32 0, i32 1 %t206 = load ptr, ptr %t205 %t207 = call ptr @lp_str_concat(ptr %t192, ptr %t206) - %t208 = call ptr @lp_str_concat(ptr %t207, ptr @.str11639) + %t208 = call ptr @lp_str_concat(ptr %t207, ptr @.str11650) call void @fn_perr(ptr %t208) br label %ifend39 ifend39: @@ -160420,15 +160649,15 @@ ifend30: %t214 = icmp ne i32 %t213, 0 br i1 %t214, label %then42, label %ifend44 then42: - call void @fn_emit(ptr @.str11640) + call void @fn_emit(ptr @.str11651) %t215 = load ptr, ptr %t10 call void @fn_emit(ptr %t215) - call void @fn_emit(ptr @.str11641) + call void @fn_emit(ptr @.str11652) br label %ifend44 ifend44: %t216 = load ptr, ptr %t10 call void @fn_emit(ptr %t216) - call void @fn_emit(ptr @.str11642) + call void @fn_emit(ptr @.str11653) store i32 0, ptr @g_g_term br label %ret ret: @@ -160474,7 +160703,7 @@ then0: call void @fn_emit_match_tagged(ptr %t15, ptr %t16, ptr %t17) br label %ret ifend2: - %t18 = call ptr @fn_lbl(ptr @.str11643) + %t18 = call ptr @fn_lbl(ptr @.str11654) store ptr %t18, ptr %t19 store ptr null, ptr %t20 store i32 0, ptr %t21 @@ -160503,7 +160732,7 @@ wbody4: br i1 %t39, label %ixok6, label %ixbad7 ixbad7: %t40 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11644, i32 %t34, i32 %t38) + call i32 (ptr, ptr, ...) @fprintf(ptr %t40, ptr @.fmt_bounds, ptr @.str11655, i32 %t34, i32 %t38) call void @exit(i32 1) unreachable ixok6: @@ -160519,7 +160748,7 @@ then8: store ptr %t47, ptr %t20 br label %ifend10 else9: - store ptr @.str11645, ptr %t48 + store ptr @.str11656, ptr %t48 store i32 1, ptr %t49 store i32 0, ptr %t50 br label %wcond11 @@ -160547,7 +160776,7 @@ wbody12: br i1 %t68, label %ixok14, label %ixbad15 ixbad15: %t69 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t69, ptr @.fmt_bounds, ptr @.str11646, i32 %t63, i32 %t67) + call i32 (ptr, ptr, ...) @fprintf(ptr %t69, ptr @.fmt_bounds, ptr @.str11657, i32 %t63, i32 %t67) call void @exit(i32 1) unreachable ixok14: @@ -160558,8 +160787,8 @@ ixok14: %t74 = load ptr, ptr %t5 %t75 = getelementptr inbounds %Cmp_Val, ptr %t74, i32 0, i32 0 %t76 = load ptr, ptr %t75 - %t77 = call ptr @lp_str_concat(ptr @.str11647, ptr %t76) - %t78 = call ptr @lp_str_concat(ptr %t77, ptr @.str11648) + %t77 = call ptr @lp_str_concat(ptr @.str11658, ptr %t76) + %t78 = call ptr @lp_str_concat(ptr %t77, ptr @.str11659) %t79 = load ptr, ptr %t73 %t80 = getelementptr inbounds %Cmp_Val, ptr %t79, i32 0, i32 0 %t81 = load ptr, ptr %t80 @@ -160576,8 +160805,8 @@ then16: br label %ifend18 else17: %t88 = load ptr, ptr %t48 - %t89 = call ptr @lp_str_concat(ptr @.str11649, ptr %t88) - %t90 = call ptr @lp_str_concat(ptr %t89, ptr @.str11650) + %t89 = call ptr @lp_str_concat(ptr @.str11660, ptr %t88) + %t90 = call ptr @lp_str_concat(ptr %t89, ptr @.str11661) %t91 = load ptr, ptr %t84 %t92 = call ptr @lp_str_concat(ptr %t90, ptr %t91) %t93 = call ptr @fn_emit_bind(ptr %t92) @@ -160589,23 +160818,23 @@ ifend18: store i32 %t95, ptr %t50 br label %wcond11 wend13: - %t96 = call ptr @fn_lbl(ptr @.str11651) + %t96 = call ptr @fn_lbl(ptr @.str11662) store ptr %t96, ptr %t97 - %t98 = call ptr @fn_lbl(ptr @.str11652) + %t98 = call ptr @fn_lbl(ptr @.str11663) store ptr %t98, ptr %t99 - call void @fn_emit(ptr @.str11653) + call void @fn_emit(ptr @.str11664) %t100 = load ptr, ptr %t48 call void @fn_emit(ptr %t100) - call void @fn_emit(ptr @.str11654) + call void @fn_emit(ptr @.str11665) %t101 = load ptr, ptr %t97 call void @fn_emit(ptr %t101) - call void @fn_emit(ptr @.str11655) + call void @fn_emit(ptr @.str11666) %t102 = load ptr, ptr %t99 call void @fn_emit(ptr %t102) - call void @fn_emit(ptr @.str11656) + call void @fn_emit(ptr @.str11667) %t103 = load ptr, ptr %t97 call void @fn_emit(ptr %t103) - call void @fn_emit(ptr @.str11657) + call void @fn_emit(ptr @.str11668) store i32 0, ptr @g_g_term %t104 = load ptr, ptr %t43 %t105 = getelementptr inbounds %Cmp_Node, ptr %t104, i32 0, i32 4 @@ -160617,15 +160846,15 @@ wend13: %t110 = icmp ne i32 %t109, 0 br i1 %t110, label %then19, label %ifend21 then19: - call void @fn_emit(ptr @.str11658) + call void @fn_emit(ptr @.str11669) %t111 = load ptr, ptr %t19 call void @fn_emit(ptr %t111) - call void @fn_emit(ptr @.str11659) + call void @fn_emit(ptr @.str11670) br label %ifend21 ifend21: %t112 = load ptr, ptr %t99 call void @fn_emit(ptr %t112) - call void @fn_emit(ptr @.str11660) + call void @fn_emit(ptr @.str11671) store i32 0, ptr @g_g_term br label %ifend10 ifend10: @@ -160652,15 +160881,15 @@ ifend24: %t125 = icmp ne i32 %t124, 0 br i1 %t125, label %then25, label %ifend27 then25: - call void @fn_emit(ptr @.str11661) + call void @fn_emit(ptr @.str11672) %t126 = load ptr, ptr %t19 call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str11662) + call void @fn_emit(ptr @.str11673) br label %ifend27 ifend27: %t127 = load ptr, ptr %t19 call void @fn_emit(ptr %t127) - call void @fn_emit(ptr @.str11663) + call void @fn_emit(ptr @.str11674) store i32 0, ptr @g_g_term br label %ret ret: @@ -160705,7 +160934,7 @@ then0: %t10 = load ptr, ptr %t0 %t11 = getelementptr inbounds %Cmp_Node, ptr %t10, i32 0, i32 1 %t12 = load ptr, ptr %t11 - %t13 = call ptr @lp_str_concat(ptr @.str11664, ptr %t12) + %t13 = call ptr @lp_str_concat(ptr @.str11675, ptr %t12) call void @fn_perr(ptr %t13) br label %ifend2 ifend2: @@ -160760,7 +160989,7 @@ wbody4: br i1 %t50, label %ixok6, label %ixbad7 ixbad7: %t51 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str11665, i32 %t45, i32 %t49) + call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str11676, i32 %t45, i32 %t49) call void @exit(i32 1) unreachable ixok6: @@ -160798,7 +161027,7 @@ wbody9: br i1 %t78, label %ixok11, label %ixbad12 ixbad12: %t79 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t79, ptr @.fmt_bounds, ptr @.str11666, i32 %t73, i32 %t77) + call i32 (ptr, ptr, ...) @fprintf(ptr %t79, ptr @.fmt_bounds, ptr @.str11677, i32 %t73, i32 %t77) call void @exit(i32 1) unreachable ixok11: @@ -160827,7 +161056,7 @@ then13: br i1 %t99, label %ixok16, label %ixbad17 ixbad17: %t100 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t100, ptr @.fmt_bounds, ptr @.str11667, i32 %t94, i32 %t98) + call i32 (ptr, ptr, ...) @fprintf(ptr %t100, ptr @.fmt_bounds, ptr @.str11678, i32 %t94, i32 %t98) call void @exit(i32 1) unreachable ixok16: @@ -160848,13 +161077,13 @@ wend10: %t109 = load ptr, ptr %t108 %t110 = call ptr @fn_llty(ptr %t109) store ptr %t110, ptr %t111 - store ptr @.str11668, ptr %t112 + store ptr @.str11679, ptr %t112 %t113 = load ptr, ptr %t111 - %t114 = call i32 @lp_str_eq(ptr %t113, ptr @.str11669) + %t114 = call i32 @lp_str_eq(ptr %t113, ptr @.str11680) %t115 = icmp ne i32 %t114, 0 br i1 %t115, label %then18, label %ifend20 then18: - store ptr @.str11670, ptr %t112 + store ptr @.str11681, ptr %t112 br label %ifend20 ifend20: %t116 = load ptr, ptr %t55 @@ -160964,21 +161193,21 @@ wend5: then31: %t188 = call ptr @fn_nreg() store ptr %t188, ptr %t189 - call void @fn_emit(ptr @.str11671) + call void @fn_emit(ptr @.str11682) %t190 = load ptr, ptr %t189 call void @fn_emit(ptr %t190) - call void @fn_emit(ptr @.str11672) - call void @fn_emit(ptr @.str11673) + call void @fn_emit(ptr @.str11683) + call void @fn_emit(ptr @.str11684) %t191 = load ptr, ptr %t0 %t192 = getelementptr inbounds %Cmp_Node, ptr %t191, i32 0, i32 1 %t193 = load ptr, ptr %t192 %t194 = call i32 @fn_net_event_id(ptr %t193) %t195 = call ptr @fn_itoa(i32 %t194) call void @fn_emit(ptr %t195) - call void @fn_emit(ptr @.str11674) + call void @fn_emit(ptr @.str11685) %t196 = load ptr, ptr %t189 call void @fn_emit(ptr %t196) - call void @fn_emit(ptr @.str11675) + call void @fn_emit(ptr @.str11686) store i32 4, ptr %t197 store i32 0, ptr %t198 br label %wcond34 @@ -160996,15 +161225,15 @@ wcond34: wbody35: %t208 = call ptr @fn_nreg() store ptr %t208, ptr %t209 - call void @fn_emit(ptr @.str11676) + call void @fn_emit(ptr @.str11687) %t210 = load ptr, ptr %t209 call void @fn_emit(ptr %t210) - call void @fn_emit(ptr @.str11677) + call void @fn_emit(ptr @.str11688) %t211 = load i32, ptr %t197 %t212 = call ptr @fn_itoa(i32 %t211) call void @fn_emit(ptr %t212) - call void @fn_emit(ptr @.str11678) - call void @fn_emit(ptr @.str11679) + call void @fn_emit(ptr @.str11689) + call void @fn_emit(ptr @.str11690) %t213 = load ptr, ptr %t31 %t214 = load i32, ptr %t198 %t215 = getelementptr inbounds %LSlice, ptr %t213, i32 0, i32 0 @@ -161015,14 +161244,14 @@ wbody35: br i1 %t219, label %ixok37, label %ixbad38 ixbad38: %t220 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t220, ptr @.fmt_bounds, ptr @.str11680, i32 %t214, i32 %t218) + call i32 (ptr, ptr, ...) @fprintf(ptr %t220, ptr @.fmt_bounds, ptr @.str11691, i32 %t214, i32 %t218) call void @exit(i32 1) unreachable ixok37: %t221 = getelementptr inbounds ptr, ptr %t216, i32 %t214 %t222 = load ptr, ptr %t221 call void @fn_emit(ptr %t222) - call void @fn_emit(ptr @.str11681) + call void @fn_emit(ptr @.str11692) %t223 = load ptr, ptr %t24 %t224 = load i32, ptr %t198 %t225 = getelementptr inbounds %LSlice, ptr %t223, i32 0, i32 0 @@ -161033,17 +161262,17 @@ ixok37: br i1 %t229, label %ixok39, label %ixbad40 ixbad40: %t230 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t230, ptr @.fmt_bounds, ptr @.str11682, i32 %t224, i32 %t228) + call i32 (ptr, ptr, ...) @fprintf(ptr %t230, ptr @.fmt_bounds, ptr @.str11693, i32 %t224, i32 %t228) call void @exit(i32 1) unreachable ixok39: %t231 = getelementptr inbounds ptr, ptr %t226, i32 %t224 %t232 = load ptr, ptr %t231 call void @fn_emit(ptr %t232) - call void @fn_emit(ptr @.str11683) + call void @fn_emit(ptr @.str11694) %t233 = load ptr, ptr %t209 call void @fn_emit(ptr %t233) - call void @fn_emit(ptr @.str11684) + call void @fn_emit(ptr @.str11695) %t234 = load ptr, ptr %t5 %t235 = getelementptr inbounds %Cmp_Node, ptr %t234, i32 0, i32 7 %t236 = load ptr, ptr %t235 @@ -161056,7 +161285,7 @@ ixok39: br i1 %t242, label %ixok41, label %ixbad42 ixbad42: %t243 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t243, ptr @.fmt_bounds, ptr @.str11685, i32 %t237, i32 %t241) + call i32 (ptr, ptr, ...) @fprintf(ptr %t243, ptr @.fmt_bounds, ptr @.str11696, i32 %t237, i32 %t241) call void @exit(i32 1) unreachable ixok41: @@ -161073,18 +161302,18 @@ ixok41: store i32 %t252, ptr %t198 br label %wcond34 wend36: - store ptr @.str11686, ptr %t253 + store ptr @.str11697, ptr %t253 %t254 = load ptr, ptr %t5 %t255 = getelementptr inbounds %Cmp_Node, ptr %t254, i32 0, i32 3 %t256 = load ptr, ptr %t255 - %t257 = call i32 @lp_str_eq(ptr %t256, ptr @.str11687) + %t257 = call i32 @lp_str_eq(ptr %t256, ptr @.str11698) %t258 = icmp ne i32 %t257, 0 br i1 %t258, label %then43, label %ifend45 then43: - store ptr @.str11688, ptr %t253 + store ptr @.str11699, ptr %t253 br label %ifend45 ifend45: - %t259 = call ptr @fn_find_extern(ptr @.str11689) + %t259 = call ptr @fn_find_extern(ptr @.str11700) %t260 = icmp eq ptr %t259, null %t261 = zext i1 %t260 to i32 %t262 = icmp ne i32 %t261, 0 @@ -161093,18 +161322,18 @@ then46: store i32 1, ptr @g_g_uses_loopback br label %ifend48 ifend48: - call void @fn_emit(ptr @.str11690) + call void @fn_emit(ptr @.str11701) %t263 = call ptr @fn_net_send_sym() call void @fn_emit(ptr %t263) - call void @fn_emit(ptr @.str11691) + call void @fn_emit(ptr @.str11702) %t264 = load ptr, ptr %t253 call void @fn_emit(ptr %t264) - call void @fn_emit(ptr @.str11692) + call void @fn_emit(ptr @.str11703) %t265 = load i32, ptr %t197 %t266 = call ptr @fn_itoa(i32 %t265) call void @fn_emit(ptr %t266) - call void @fn_emit(ptr @.str11693) - %t267 = call ptr @fn_val(ptr @.str11694, ptr @.str11695) + call void @fn_emit(ptr @.str11704) + %t267 = call ptr @fn_val(ptr @.str11705, ptr @.str11706) store ptr %t267, ptr %retval br label %ret ifend33: @@ -161129,7 +161358,7 @@ wbody50: br i1 %t281, label %then52, label %ifend54 then52: %t282 = load ptr, ptr %t269 - call void @fn_buf_puts(ptr %t282, ptr @.str11696) + call void @fn_buf_puts(ptr %t282, ptr @.str11707) br label %ifend54 ifend54: %t283 = load ptr, ptr %t269 @@ -161143,7 +161372,7 @@ ifend54: br i1 %t290, label %ixok55, label %ixbad56 ixbad56: %t291 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t291, ptr @.fmt_bounds, ptr @.str11697, i32 %t285, i32 %t289) + call i32 (ptr, ptr, ...) @fprintf(ptr %t291, ptr @.fmt_bounds, ptr @.str11708, i32 %t285, i32 %t289) call void @exit(i32 1) unreachable ixok55: @@ -161151,7 +161380,7 @@ ixok55: %t293 = load ptr, ptr %t292 call void @fn_buf_puts(ptr %t283, ptr %t293) %t294 = load ptr, ptr %t269 - call void @fn_buf_puts(ptr %t294, ptr @.str11698) + call void @fn_buf_puts(ptr %t294, ptr @.str11709) %t295 = load ptr, ptr %t269 %t296 = load ptr, ptr %t24 %t297 = load i32, ptr %t270 @@ -161163,7 +161392,7 @@ ixok55: br i1 %t302, label %ixok57, label %ixbad58 ixbad58: %t303 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t303, ptr @.fmt_bounds, ptr @.str11699, i32 %t297, i32 %t301) + call i32 (ptr, ptr, ...) @fprintf(ptr %t303, ptr @.fmt_bounds, ptr @.str11710, i32 %t297, i32 %t301) call void @exit(i32 1) unreachable ixok57: @@ -161185,35 +161414,35 @@ wend51: then59: %t314 = call ptr @fn_nreg() store ptr %t314, ptr %t315 - call void @fn_emit(ptr @.str11700) + call void @fn_emit(ptr @.str11711) %t316 = load ptr, ptr %t315 call void @fn_emit(ptr %t316) - call void @fn_emit(ptr @.str11701) + call void @fn_emit(ptr @.str11712) %t317 = load ptr, ptr %t0 %t318 = getelementptr inbounds %Cmp_Node, ptr %t317, i32 0, i32 1 %t319 = load ptr, ptr %t318 call void @fn_emit(ptr %t319) - call void @fn_emit(ptr @.str11702) + call void @fn_emit(ptr @.str11713) %t320 = load ptr, ptr %t269 %t321 = call ptr @fn_buf_str(ptr %t320) call void @fn_emit(ptr %t321) - call void @fn_emit(ptr @.str11703) + call void @fn_emit(ptr @.str11714) %t322 = load ptr, ptr %t315 - %t323 = call ptr @fn_val(ptr %t322, ptr @.str11704) + %t323 = call ptr @fn_val(ptr %t322, ptr @.str11715) store ptr %t323, ptr %retval br label %ret ifend61: - call void @fn_emit(ptr @.str11705) + call void @fn_emit(ptr @.str11716) %t324 = load ptr, ptr %t0 %t325 = getelementptr inbounds %Cmp_Node, ptr %t324, i32 0, i32 1 %t326 = load ptr, ptr %t325 call void @fn_emit(ptr %t326) - call void @fn_emit(ptr @.str11706) + call void @fn_emit(ptr @.str11717) %t327 = load ptr, ptr %t269 %t328 = call ptr @fn_buf_str(ptr %t327) call void @fn_emit(ptr %t328) - call void @fn_emit(ptr @.str11707) - %t329 = call ptr @fn_val(ptr @.str11708, ptr @.str11709) + call void @fn_emit(ptr @.str11718) + %t329 = call ptr @fn_val(ptr @.str11719, ptr @.str11720) store ptr %t329, ptr %retval br label %ret ret: @@ -161423,7 +161652,7 @@ ifend23: %t134 = icmp ne i32 %t133, 0 br i1 %t134, label %then24, label %ifend26 then24: - call void @fn_emit(ptr @.str11710) + call void @fn_emit(ptr @.str11721) %t135 = load ptr, ptr @g_brk_lbl %t136 = load i32, ptr @g_nloop %t137 = sub i32 %t136, 1 @@ -161435,14 +161664,14 @@ then24: br i1 %t142, label %ixok27, label %ixbad28 ixbad28: %t143 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t143, ptr @.fmt_bounds, ptr @.str11711, i32 %t137, i32 %t141) + call i32 (ptr, ptr, ...) @fprintf(ptr %t143, ptr @.fmt_bounds, ptr @.str11722, i32 %t137, i32 %t141) call void @exit(i32 1) unreachable ixok27: %t144 = getelementptr inbounds ptr, ptr %t139, i32 %t137 %t145 = load ptr, ptr %t144 call void @fn_emit(ptr %t145) - call void @fn_emit(ptr @.str11712) + call void @fn_emit(ptr @.str11723) store i32 1, ptr @g_g_term br label %ret ifend26: @@ -161454,7 +161683,7 @@ ifend26: %t151 = icmp ne i32 %t150, 0 br i1 %t151, label %then29, label %ifend31 then29: - call void @fn_emit(ptr @.str11713) + call void @fn_emit(ptr @.str11724) %t152 = load ptr, ptr @g_cnt_lbl %t153 = load i32, ptr @g_nloop %t154 = sub i32 %t153, 1 @@ -161466,14 +161695,14 @@ then29: br i1 %t159, label %ixok32, label %ixbad33 ixbad33: %t160 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t160, ptr @.fmt_bounds, ptr @.str11714, i32 %t154, i32 %t158) + call i32 (ptr, ptr, ...) @fprintf(ptr %t160, ptr @.fmt_bounds, ptr @.str11725, i32 %t154, i32 %t158) call void @exit(i32 1) unreachable ixok32: %t161 = getelementptr inbounds ptr, ptr %t156, i32 %t154 %t162 = load ptr, ptr %t161 call void @fn_emit(ptr %t162) - call void @fn_emit(ptr @.str11715) + call void @fn_emit(ptr @.str11726) store i32 1, ptr @g_g_term br label %ret ifend31: @@ -161603,13 +161832,13 @@ then61: %t241 = icmp ne i32 %t240, 0 br i1 %t241, label %then64, label %ifend66 then64: - call void @fn_perr(ptr @.str11716) + call void @fn_perr(ptr @.str11727) br label %ifend66 ifend66: - call void @fn_emit(ptr @.str11717) + call void @fn_emit(ptr @.str11728) %t242 = load ptr, ptr @g_g_cancel_addr call void @fn_emit(ptr %t242) - call void @fn_emit(ptr @.str11718) + call void @fn_emit(ptr @.str11729) br label %ret ifend63: %t243 = load ptr, ptr %t0 @@ -161651,7 +161880,7 @@ then73: store ptr %t266, ptr %t267 br label %ret ifend75: - call void @fn_perr(ptr @.str11719) + call void @fn_perr(ptr @.str11730) br label %ret ret: ret void @@ -161682,7 +161911,7 @@ then0: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str11720, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str11731, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -161699,7 +161928,7 @@ ixok3: br i1 %t25, label %ixok5, label %ixbad6 ixbad6: %t26 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str11721, i32 %t20, i32 %t24) + call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str11732, i32 %t20, i32 %t24) call void @exit(i32 1) unreachable ixok5: @@ -161810,7 +162039,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11722, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11733, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -161871,7 +162100,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11723, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11734, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -161925,7 +162154,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11724, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11735, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -161945,7 +162174,7 @@ ifend7: store i32 %t23, ptr %t0 br label %wcond0 wend2: - %t24 = call ptr @fn_find_comp(ptr @.str11725) + %t24 = call ptr @fn_find_comp(ptr @.str11736) %t25 = icmp ne ptr %t24, null %t26 = zext i1 %t25 to i32 %t27 = icmp ne i32 %t26, 0 @@ -161987,7 +162216,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11726, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str11737, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -162042,12 +162271,12 @@ ret: define void @fn_emit_ecs_storage() { entry: %t7 = alloca ptr - %t24 = alloca i32 - %t42 = alloca ptr - %t94 = alloca i32 - call void @fn_emith(ptr @.str11727) - call void @fn_emith(ptr @.str11728) - call void @fn_emith(ptr @.str11729) + %t12 = alloca i32 + %t30 = alloca ptr + %t71 = alloca i32 + call void @fn_emith(ptr @.str11738) + call void @fn_emith(ptr @.str11739) + call void @fn_emith(ptr @.str11740) %t0 = load ptr, ptr @g_g_scenes %t1 = getelementptr inbounds %LSlice, ptr %t0, i32 0, i32 1 %t2 = load i32, ptr %t1 @@ -162056,176 +162285,155 @@ entry: %t5 = icmp ne i32 %t4, 0 br i1 %t5, label %then0, label %ifend2 then0: - call void @fn_emith(ptr @.str11730) + call void @fn_emith(ptr @.str11741) br label %ifend2 ifend2: - call void @fn_emith(ptr @.str11731) + call void @fn_emith(ptr @.str11742) %t6 = call ptr @fn_itoa(i32 1024) store ptr %t6, ptr %t7 - %t8 = load ptr, ptr %t7 - %t9 = call ptr @lp_str_concat(ptr @.str11732, ptr %t8) - %t10 = call ptr @lp_str_concat(ptr %t9, ptr @.str11733) - call void @fn_emith(ptr %t10) - %t11 = load ptr, ptr %t7 - %t12 = call ptr @lp_str_concat(ptr @.str11734, ptr %t11) - %t13 = call ptr @lp_str_concat(ptr %t12, ptr @.str11735) - call void @fn_emith(ptr %t13) - %t14 = load ptr, ptr %t7 - %t15 = call ptr @lp_str_concat(ptr @.str11736, ptr %t14) - %t16 = call ptr @lp_str_concat(ptr %t15, ptr @.str11737) - call void @fn_emith(ptr %t16) - call void @fn_emith(ptr @.str11738) - %t17 = call i32 @fn_net_any() - %t18 = icmp ne i32 %t17, 0 - br i1 %t18, label %then3, label %ifend5 + call void @fn_emith(ptr @.str11743) + call void @fn_emith(ptr @.str11744) + call void @fn_emith(ptr @.str11745) + call void @fn_emith(ptr @.str11746) + call void @fn_emith(ptr @.str11747) + call void @fn_emith(ptr @.str11748) + %t8 = call i32 @fn_net_any() + %t9 = icmp ne i32 %t8, 0 + br i1 %t9, label %then3, label %ifend5 then3: - call void @fn_emith(ptr @.str11739) - call void @fn_emith(ptr @.str11740) + call void @fn_emith(ptr @.str11749) + call void @fn_emith(ptr @.str11750) br label %ifend5 ifend5: - %t19 = call i32 @fn_net_has_owned() - %t20 = icmp ne i32 %t19, 0 - br i1 %t20, label %then6, label %ifend8 + %t10 = call i32 @fn_net_has_owned() + %t11 = icmp ne i32 %t10, 0 + br i1 %t11, label %then6, label %ifend8 then6: - %t21 = load ptr, ptr %t7 - %t22 = call ptr @lp_str_concat(ptr @.str11741, ptr %t21) - %t23 = call ptr @lp_str_concat(ptr %t22, ptr @.str11742) - call void @fn_emith(ptr %t23) + call void @fn_emith(ptr @.str11751) br label %ifend8 ifend8: - store i32 0, ptr %t24 + store i32 0, ptr %t12 br label %wcond9 wcond9: - %t25 = load i32, ptr %t24 - %t26 = load ptr, ptr @g_prog - %t27 = getelementptr inbounds %LSlice, ptr %t26, i32 0, i32 1 - %t28 = load i32, ptr %t27 - %t29 = icmp slt i32 %t25, %t28 - %t30 = zext i1 %t29 to i32 - %t31 = icmp ne i32 %t30, 0 - br i1 %t31, label %wbody10, label %wend11 + %t13 = load i32, ptr %t12 + %t14 = load ptr, ptr @g_prog + %t15 = getelementptr inbounds %LSlice, ptr %t14, i32 0, i32 1 + %t16 = load i32, ptr %t15 + %t17 = icmp slt i32 %t13, %t16 + %t18 = zext i1 %t17 to i32 + %t19 = icmp ne i32 %t18, 0 + br i1 %t19, label %wbody10, label %wend11 wbody10: - %t32 = load ptr, ptr @g_prog - %t33 = load i32, ptr %t24 - %t34 = getelementptr inbounds %LSlice, ptr %t32, i32 0, i32 0 - %t35 = load ptr, ptr %t34 - %t36 = getelementptr inbounds %LSlice, ptr %t32, i32 0, i32 1 - %t37 = load i32, ptr %t36 - %t38 = icmp ult i32 %t33, %t37 - br i1 %t38, label %ixok12, label %ixbad13 + %t20 = load ptr, ptr @g_prog + %t21 = load i32, ptr %t12 + %t22 = getelementptr inbounds %LSlice, ptr %t20, i32 0, i32 0 + %t23 = load ptr, ptr %t22 + %t24 = getelementptr inbounds %LSlice, ptr %t20, i32 0, i32 1 + %t25 = load i32, ptr %t24 + %t26 = icmp ult i32 %t21, %t25 + br i1 %t26, label %ixok12, label %ixbad13 ixbad13: - %t39 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str11743, i32 %t33, i32 %t37) + %t27 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t27, ptr @.fmt_bounds, ptr @.str11752, i32 %t21, i32 %t25) call void @exit(i32 1) unreachable ixok12: - %t40 = getelementptr inbounds ptr, ptr %t35, i32 %t33 - %t41 = load ptr, ptr %t40 - store ptr %t41, ptr %t42 - %t43 = load ptr, ptr %t42 - %t44 = getelementptr inbounds %Cmp_Node, ptr %t43, i32 0, i32 0 - %t45 = load i32, ptr %t44 - %t46 = icmp eq i32 %t45, 8 - %t47 = zext i1 %t46 to i32 - %t48 = icmp ne i32 %t47, 0 - br i1 %t48, label %then14, label %ifend16 + %t28 = getelementptr inbounds ptr, ptr %t23, i32 %t21 + %t29 = load ptr, ptr %t28 + store ptr %t29, ptr %t30 + %t31 = load ptr, ptr %t30 + %t32 = getelementptr inbounds %Cmp_Node, ptr %t31, i32 0, i32 0 + %t33 = load i32, ptr %t32 + %t34 = icmp eq i32 %t33, 8 + %t35 = zext i1 %t34 to i32 + %t36 = icmp ne i32 %t35, 0 + br i1 %t36, label %then14, label %ifend16 then14: - %t49 = load ptr, ptr %t42 - %t50 = getelementptr inbounds %Cmp_Node, ptr %t49, i32 0, i32 1 - %t51 = load ptr, ptr %t50 - %t52 = call ptr @lp_str_concat(ptr @.str11744, ptr %t51) - %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str11745) - %t54 = load ptr, ptr %t7 - %t55 = call ptr @lp_str_concat(ptr %t53, ptr %t54) - %t56 = call ptr @lp_str_concat(ptr %t55, ptr @.str11746) - %t57 = load ptr, ptr %t42 - %t58 = getelementptr inbounds %Cmp_Node, ptr %t57, i32 0, i32 1 - %t59 = load ptr, ptr %t58 - %t60 = call ptr @lp_str_concat(ptr %t56, ptr %t59) - %t61 = call ptr @lp_str_concat(ptr %t60, ptr @.str11747) - call void @fn_emith(ptr %t61) - %t62 = load ptr, ptr %t42 - %t63 = getelementptr inbounds %Cmp_Node, ptr %t62, i32 0, i32 1 - %t64 = load ptr, ptr %t63 - %t65 = call ptr @lp_str_concat(ptr @.str11748, ptr %t64) - %t66 = call ptr @lp_str_concat(ptr %t65, ptr @.str11749) - %t67 = load ptr, ptr %t7 - %t68 = call ptr @lp_str_concat(ptr %t66, ptr %t67) - %t69 = call ptr @lp_str_concat(ptr %t68, ptr @.str11750) - call void @fn_emith(ptr %t69) + %t37 = load ptr, ptr %t30 + %t38 = getelementptr inbounds %Cmp_Node, ptr %t37, i32 0, i32 1 + %t39 = load ptr, ptr %t38 + %t40 = call ptr @lp_str_concat(ptr @.str11753, ptr %t39) + %t41 = call ptr @lp_str_concat(ptr %t40, ptr @.str11754) + call void @fn_emith(ptr %t41) + %t42 = load ptr, ptr %t30 + %t43 = getelementptr inbounds %Cmp_Node, ptr %t42, i32 0, i32 1 + %t44 = load ptr, ptr %t43 + %t45 = call ptr @lp_str_concat(ptr @.str11755, ptr %t44) + %t46 = call ptr @lp_str_concat(ptr %t45, ptr @.str11756) + call void @fn_emith(ptr %t46) br label %ifend16 ifend16: - %t70 = load ptr, ptr %t42 - %t71 = getelementptr inbounds %Cmp_Node, ptr %t70, i32 0, i32 0 - %t72 = load i32, ptr %t71 - %t73 = icmp eq i32 %t72, 10 - %t74 = zext i1 %t73 to i32 - %t75 = icmp ne i32 %t74, 0 - br i1 %t75, label %then17, label %ifend19 + %t47 = load ptr, ptr %t30 + %t48 = getelementptr inbounds %Cmp_Node, ptr %t47, i32 0, i32 0 + %t49 = load i32, ptr %t48 + %t50 = icmp eq i32 %t49, 10 + %t51 = zext i1 %t50 to i32 + %t52 = icmp ne i32 %t51, 0 + br i1 %t52, label %then17, label %ifend19 then17: - %t76 = load ptr, ptr %t42 - %t77 = getelementptr inbounds %Cmp_Node, ptr %t76, i32 0, i32 1 - %t78 = load ptr, ptr %t77 - %t79 = call ptr @lp_str_concat(ptr @.str11751, ptr %t78) - %t80 = call ptr @lp_str_concat(ptr %t79, ptr @.str11752) - call void @fn_emith(ptr %t80) + %t53 = load ptr, ptr %t30 + %t54 = getelementptr inbounds %Cmp_Node, ptr %t53, i32 0, i32 1 + %t55 = load ptr, ptr %t54 + %t56 = call ptr @lp_str_concat(ptr @.str11757, ptr %t55) + %t57 = call ptr @lp_str_concat(ptr %t56, ptr @.str11758) + call void @fn_emith(ptr %t57) br label %ifend19 ifend19: - %t81 = load ptr, ptr %t42 - %t82 = getelementptr inbounds %Cmp_Node, ptr %t81, i32 0, i32 0 - %t83 = load i32, ptr %t82 - %t84 = icmp eq i32 %t83, 9 - %t85 = zext i1 %t84 to i32 - %t86 = icmp ne i32 %t85, 0 - br i1 %t86, label %then20, label %ifend22 + %t58 = load ptr, ptr %t30 + %t59 = getelementptr inbounds %Cmp_Node, ptr %t58, i32 0, i32 0 + %t60 = load i32, ptr %t59 + %t61 = icmp eq i32 %t60, 9 + %t62 = zext i1 %t61 to i32 + %t63 = icmp ne i32 %t62, 0 + br i1 %t63, label %then20, label %ifend22 then20: - %t87 = load ptr, ptr %t42 - %t88 = getelementptr inbounds %Cmp_Node, ptr %t87, i32 0, i32 1 - %t89 = load ptr, ptr %t88 - %t90 = call ptr @lp_str_concat(ptr @.str11753, ptr %t89) - %t91 = call ptr @lp_str_concat(ptr %t90, ptr @.str11754) - call void @fn_emith(ptr %t91) + %t64 = load ptr, ptr %t30 + %t65 = getelementptr inbounds %Cmp_Node, ptr %t64, i32 0, i32 1 + %t66 = load ptr, ptr %t65 + %t67 = call ptr @lp_str_concat(ptr @.str11759, ptr %t66) + %t68 = call ptr @lp_str_concat(ptr %t67, ptr @.str11760) + call void @fn_emith(ptr %t68) br label %ifend22 ifend22: - %t92 = load i32, ptr %t24 - %t93 = add i32 %t92, 1 - store i32 %t93, ptr %t24 + %t69 = load i32, ptr %t12 + %t70 = add i32 %t69, 1 + store i32 %t70, ptr %t12 br label %wcond9 wend11: - store i32 0, ptr %t94 + store i32 0, ptr %t71 br label %wcond23 wcond23: - %t95 = load i32, ptr %t94 - %t96 = load ptr, ptr @g_g_toggled_layers - %t97 = getelementptr inbounds %LSlice, ptr %t96, i32 0, i32 1 - %t98 = load i32, ptr %t97 - %t99 = icmp slt i32 %t95, %t98 - %t100 = zext i1 %t99 to i32 - %t101 = icmp ne i32 %t100, 0 - br i1 %t101, label %wbody24, label %wend25 + %t72 = load i32, ptr %t71 + %t73 = load ptr, ptr @g_g_toggled_layers + %t74 = getelementptr inbounds %LSlice, ptr %t73, i32 0, i32 1 + %t75 = load i32, ptr %t74 + %t76 = icmp slt i32 %t72, %t75 + %t77 = zext i1 %t76 to i32 + %t78 = icmp ne i32 %t77, 0 + br i1 %t78, label %wbody24, label %wend25 wbody24: - %t102 = load ptr, ptr @g_g_toggled_layers - %t103 = load i32, ptr %t94 - %t104 = getelementptr inbounds %LSlice, ptr %t102, i32 0, i32 0 - %t105 = load ptr, ptr %t104 - %t106 = getelementptr inbounds %LSlice, ptr %t102, i32 0, i32 1 - %t107 = load i32, ptr %t106 - %t108 = icmp ult i32 %t103, %t107 - br i1 %t108, label %ixok26, label %ixbad27 + %t79 = load ptr, ptr @g_g_toggled_layers + %t80 = load i32, ptr %t71 + %t81 = getelementptr inbounds %LSlice, ptr %t79, i32 0, i32 0 + %t82 = load ptr, ptr %t81 + %t83 = getelementptr inbounds %LSlice, ptr %t79, i32 0, i32 1 + %t84 = load i32, ptr %t83 + %t85 = icmp ult i32 %t80, %t84 + br i1 %t85, label %ixok26, label %ixbad27 ixbad27: - %t109 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t109, ptr @.fmt_bounds, ptr @.str11756, i32 %t103, i32 %t107) + %t86 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t86, ptr @.fmt_bounds, ptr @.str11762, i32 %t80, i32 %t84) call void @exit(i32 1) unreachable ixok26: - %t110 = getelementptr inbounds ptr, ptr %t105, i32 %t103 - %t111 = load ptr, ptr %t110 - %t112 = call ptr @lp_str_concat(ptr @.str11755, ptr %t111) - %t113 = call ptr @lp_str_concat(ptr %t112, ptr @.str11757) - call void @fn_emith(ptr %t113) - %t114 = load i32, ptr %t94 - %t115 = add i32 %t114, 1 - store i32 %t115, ptr %t94 + %t87 = getelementptr inbounds ptr, ptr %t82, i32 %t80 + %t88 = load ptr, ptr %t87 + %t89 = call ptr @lp_str_concat(ptr @.str11761, ptr %t88) + %t90 = call ptr @lp_str_concat(ptr %t89, ptr @.str11763) + call void @fn_emith(ptr %t90) + %t91 = load i32, ptr %t71 + %t92 = add i32 %t91, 1 + store i32 %t92, ptr %t71 br label %wcond23 wend25: br label %ret @@ -162238,9 +162446,17 @@ entry: %t1 = alloca ptr %t2 = alloca i32 %t28 = alloca ptr + %t43 = alloca ptr + %t50 = alloca ptr + %t55 = alloca ptr + %t58 = alloca ptr + %t61 = alloca ptr + %t64 = alloca ptr + %t67 = alloca ptr %t0 = call ptr @fn_itoa(i32 1024) store ptr %t0, ptr %t1 - call void @fn_emit(ptr @.str11758) + call void @fn_emit_ecs_grow() + call void @fn_emit(ptr @.str11764) store i32 0, ptr %t2 br label %wcond0 wcond0: @@ -162263,7 +162479,7 @@ wbody1: br i1 %t16, label %ixok3, label %ixbad4 ixbad4: %t17 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11759, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11765, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok3: @@ -162278,73 +162494,68 @@ ixok3: then5: %t25 = load i32, ptr %t2 %t26 = call ptr @fn_itoa(i32 %t25) - %t27 = call ptr @lp_str_concat(ptr @.str11760, ptr %t26) + %t27 = call ptr @lp_str_concat(ptr @.str11766, ptr %t26) store ptr %t27, ptr %t28 - call void @fn_emit(ptr @.str11761) - %t29 = load ptr, ptr %t28 - call void @fn_emit(ptr %t29) - call void @fn_emit(ptr @.str11762) - %t30 = load ptr, ptr %t1 - call void @fn_emit(ptr %t30) - call void @fn_emit(ptr @.str11763) - %t31 = load ptr, ptr @g_prog - %t32 = load i32, ptr %t2 - %t33 = getelementptr inbounds %LSlice, ptr %t31, i32 0, i32 0 - %t34 = load ptr, ptr %t33 - %t35 = getelementptr inbounds %LSlice, ptr %t31, i32 0, i32 1 - %t36 = load i32, ptr %t35 - %t37 = icmp ult i32 %t32, %t36 - br i1 %t37, label %ixok8, label %ixbad9 + %t29 = load ptr, ptr @g_prog + %t30 = load i32, ptr %t2 + %t31 = getelementptr inbounds %LSlice, ptr %t29, i32 0, i32 0 + %t32 = load ptr, ptr %t31 + %t33 = getelementptr inbounds %LSlice, ptr %t29, i32 0, i32 1 + %t34 = load i32, ptr %t33 + %t35 = icmp ult i32 %t30, %t34 + br i1 %t35, label %ixok8, label %ixbad9 ixbad9: - %t38 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t38, ptr @.fmt_bounds, ptr @.str11764, i32 %t32, i32 %t36) + %t36 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str11768, i32 %t30, i32 %t34) call void @exit(i32 1) unreachable ixok8: - %t39 = getelementptr inbounds ptr, ptr %t34, i32 %t32 + %t37 = getelementptr inbounds ptr, ptr %t32, i32 %t30 + %t38 = load ptr, ptr %t37 + %t39 = getelementptr inbounds %Cmp_Node, ptr %t38, i32 0, i32 1 %t40 = load ptr, ptr %t39 - %t41 = getelementptr inbounds %Cmp_Node, ptr %t40, i32 0, i32 1 - %t42 = load ptr, ptr %t41 - call void @fn_emit(ptr %t42) - call void @fn_emit(ptr @.str11765) - call void @fn_emit(ptr @.str11766) - %t43 = load ptr, ptr %t28 - call void @fn_emit(ptr %t43) - call void @fn_emit(ptr @.str11767) + %t41 = call ptr @lp_str_concat(ptr @.str11767, ptr %t40) + %t42 = call ptr @fn_ecs_base(ptr %t41) + store ptr %t42, ptr %t43 + call void @fn_emit(ptr @.str11769) + %t44 = load ptr, ptr %t28 + call void @fn_emit(ptr %t44) + call void @fn_emit(ptr @.str11770) + %t45 = load ptr, ptr %t43 + call void @fn_emit(ptr %t45) + call void @fn_emit(ptr @.str11771) + call void @fn_emit(ptr @.str11772) + %t46 = load ptr, ptr %t28 + call void @fn_emit(ptr %t46) + call void @fn_emit(ptr @.str11773) br label %ifend7 ifend7: - %t44 = load i32, ptr %t2 - %t45 = add i32 %t44, 1 - store i32 %t45, ptr %t2 + %t47 = load i32, ptr %t2 + %t48 = add i32 %t47, 1 + store i32 %t48, ptr %t2 br label %wcond0 wend2: - call void @fn_emit(ptr @.str11768) - %t46 = load ptr, ptr %t1 - call void @fn_emit(ptr %t46) - call void @fn_emit(ptr @.str11769) - call void @fn_emit(ptr @.str11770) - %t47 = call i32 @fn_net_has_owned() - %t48 = icmp ne i32 %t47, 0 - br i1 %t48, label %then10, label %ifend12 -then10: - call void @fn_emit(ptr @.str11771) - %t49 = load ptr, ptr %t1 - call void @fn_emit(ptr %t49) - call void @fn_emit(ptr @.str11772) - call void @fn_emit(ptr @.str11773) - br label %ifend12 -ifend12: - call void @fn_emit(ptr @.str11774) + %t49 = call ptr @fn_ecs_base(ptr @.str11774) + store ptr %t49, ptr %t50 call void @fn_emit(ptr @.str11775) + %t51 = load ptr, ptr %t50 + call void @fn_emit(ptr %t51) call void @fn_emit(ptr @.str11776) call void @fn_emit(ptr @.str11777) - call void @fn_emit(ptr @.str11778) + %t52 = call i32 @fn_net_has_owned() + %t53 = icmp ne i32 %t52, 0 + br i1 %t53, label %then10, label %ifend12 +then10: + %t54 = call ptr @fn_ecs_base(ptr @.str11778) + store ptr %t54, ptr %t55 call void @fn_emit(ptr @.str11779) + %t56 = load ptr, ptr %t55 + call void @fn_emit(ptr %t56) call void @fn_emit(ptr @.str11780) call void @fn_emit(ptr @.str11781) + br label %ifend12 +ifend12: call void @fn_emit(ptr @.str11782) - %t50 = load ptr, ptr %t1 - call void @fn_emit(ptr %t50) call void @fn_emit(ptr @.str11783) call void @fn_emit(ptr @.str11784) call void @fn_emit(ptr @.str11785) @@ -162352,32 +162563,418 @@ ifend12: call void @fn_emit(ptr @.str11787) call void @fn_emit(ptr @.str11788) call void @fn_emit(ptr @.str11789) - call void @fn_emit(ptr @.str11790) + %t57 = call ptr @fn_ecs_base(ptr @.str11790) + store ptr %t57, ptr %t58 call void @fn_emit(ptr @.str11791) + %t59 = load ptr, ptr %t58 + call void @fn_emit(ptr %t59) call void @fn_emit(ptr @.str11792) call void @fn_emit(ptr @.str11793) call void @fn_emit(ptr @.str11794) - %t51 = load ptr, ptr %t1 - call void @fn_emit(ptr %t51) call void @fn_emit(ptr @.str11795) call void @fn_emit(ptr @.str11796) call void @fn_emit(ptr @.str11797) call void @fn_emit(ptr @.str11798) call void @fn_emit(ptr @.str11799) - %t52 = load ptr, ptr %t1 - call void @fn_emit(ptr %t52) call void @fn_emit(ptr @.str11800) call void @fn_emit(ptr @.str11801) call void @fn_emit(ptr @.str11802) call void @fn_emit(ptr @.str11803) - call void @fn_emit(ptr @.str11804) - %t53 = load ptr, ptr %t1 - call void @fn_emit(ptr %t53) + %t60 = call ptr @fn_ecs_base(ptr @.str11804) + store ptr %t60, ptr %t61 call void @fn_emit(ptr @.str11805) + %t62 = load ptr, ptr %t61 + call void @fn_emit(ptr %t62) call void @fn_emit(ptr @.str11806) call void @fn_emit(ptr @.str11807) call void @fn_emit(ptr @.str11808) call void @fn_emit(ptr @.str11809) + %t63 = call ptr @fn_ecs_base(ptr @.str11810) + store ptr %t63, ptr %t64 + call void @fn_emit(ptr @.str11811) + %t65 = load ptr, ptr %t64 + call void @fn_emit(ptr %t65) + call void @fn_emit(ptr @.str11812) + call void @fn_emit(ptr @.str11813) + call void @fn_emit(ptr @.str11814) + call void @fn_emit(ptr @.str11815) + %t66 = call ptr @fn_ecs_base(ptr @.str11816) + store ptr %t66, ptr %t67 + call void @fn_emit(ptr @.str11817) + %t68 = load ptr, ptr %t67 + call void @fn_emit(ptr %t68) + call void @fn_emit(ptr @.str11818) + call void @fn_emit(ptr @.str11819) + call void @fn_emit(ptr @.str11820) + call void @fn_emit(ptr @.str11821) + call void @fn_emit(ptr @.str11822) + br label %ret +ret: + ret void +} + +define ptr @fn_ecs_base(ptr %arg_store) { +entry: + %retval = alloca ptr + %t0 = alloca ptr + %t4 = alloca ptr + store ptr %arg_store, ptr %t0 + %t1 = load i32, ptr @g_ll_t + %t2 = call ptr @fn_itoa(i32 %t1) + %t3 = call ptr @lp_str_concat(ptr @.str11823, ptr %t2) + store ptr %t3, ptr %t4 + %t5 = load i32, ptr @g_ll_t + %t6 = add i32 %t5, 1 + store i32 %t6, ptr @g_ll_t + %t7 = load ptr, ptr %t4 + %t8 = call ptr @lp_str_concat(ptr @.str11824, ptr %t7) + %t9 = call ptr @lp_str_concat(ptr %t8, ptr @.str11825) + %t10 = load ptr, ptr %t0 + %t11 = call ptr @lp_str_concat(ptr %t9, ptr %t10) + %t12 = call ptr @lp_str_concat(ptr %t11, ptr @.str11826) + call void @fn_emit(ptr %t12) + %t13 = load ptr, ptr %t4 + store ptr %t13, ptr %retval + br label %ret +ret: + %t14 = load ptr, ptr %retval + ret ptr %t14 +} + +define void @fn_emit_ecs_grow() { +entry: + %t5 = alloca i32 + %t6 = alloca i32 + %t32 = alloca ptr + call void @fn_emit(ptr @.str11827) + call void @fn_emit(ptr @.str11828) + %t0 = call ptr @fn_itoa(i32 1024) + %t1 = call ptr @lp_str_concat(ptr @.str11829, ptr %t0) + %t2 = call ptr @lp_str_concat(ptr %t1, ptr @.str11830) + call void @fn_emit(ptr %t2) + call void @fn_emit(ptr @.str11831) + call void @fn_emit(ptr @.str11832) + call void @fn_emit(ptr @.str11833) + call void @fn_emit_grow_store(ptr @.str11834, ptr @.str11835, i32 0) + call void @fn_emit_grow_store(ptr @.str11836, ptr @.str11837, i32 1) + call void @fn_emit_grow_store(ptr @.str11838, ptr @.str11839, i32 2) + %t3 = call i32 @fn_net_has_owned() + %t4 = icmp ne i32 %t3, 0 + br i1 %t4, label %then0, label %ifend2 +then0: + call void @fn_emit_grow_store(ptr @.str11840, ptr @.str11841, i32 3) + br label %ifend2 +ifend2: + store i32 4, ptr %t5 + store i32 0, ptr %t6 + br label %wcond3 +wcond3: + %t7 = load i32, ptr %t6 + %t8 = load ptr, ptr @g_prog + %t9 = getelementptr inbounds %LSlice, ptr %t8, i32 0, i32 1 + %t10 = load i32, ptr %t9 + %t11 = icmp slt i32 %t7, %t10 + %t12 = zext i1 %t11 to i32 + %t13 = icmp ne i32 %t12, 0 + br i1 %t13, label %wbody4, label %wend5 +wbody4: + %t14 = load ptr, ptr @g_prog + %t15 = load i32, ptr %t6 + %t16 = getelementptr inbounds %LSlice, ptr %t14, i32 0, i32 0 + %t17 = load ptr, ptr %t16 + %t18 = getelementptr inbounds %LSlice, ptr %t14, i32 0, i32 1 + %t19 = load i32, ptr %t18 + %t20 = icmp ult i32 %t15, %t19 + br i1 %t20, label %ixok6, label %ixbad7 +ixbad7: + %t21 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str11842, i32 %t15, i32 %t19) + call void @exit(i32 1) + unreachable +ixok6: + %t22 = getelementptr inbounds ptr, ptr %t17, i32 %t15 + %t23 = load ptr, ptr %t22 + %t24 = getelementptr inbounds %Cmp_Node, ptr %t23, i32 0, i32 0 + %t25 = load i32, ptr %t24 + %t26 = icmp eq i32 %t25, 8 + %t27 = zext i1 %t26 to i32 + %t28 = icmp ne i32 %t27, 0 + br i1 %t28, label %then8, label %ifend10 +then8: + %t29 = load i32, ptr %t5 + %t30 = call ptr @fn_itoa(i32 %t29) + %t31 = call ptr @lp_str_concat(ptr @.str11843, ptr %t30) + store ptr %t31, ptr %t32 + %t33 = load ptr, ptr %t32 + %t34 = call ptr @lp_str_concat(ptr @.str11844, ptr %t33) + %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str11845) + %t36 = load ptr, ptr @g_prog + %t37 = load i32, ptr %t6 + %t38 = getelementptr inbounds %LSlice, ptr %t36, i32 0, i32 0 + %t39 = load ptr, ptr %t38 + %t40 = getelementptr inbounds %LSlice, ptr %t36, i32 0, i32 1 + %t41 = load i32, ptr %t40 + %t42 = icmp ult i32 %t37, %t41 + br i1 %t42, label %ixok11, label %ixbad12 +ixbad12: + %t43 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str11846, i32 %t37, i32 %t41) + call void @exit(i32 1) + unreachable +ixok11: + %t44 = getelementptr inbounds ptr, ptr %t39, i32 %t37 + %t45 = load ptr, ptr %t44 + %t46 = getelementptr inbounds %Cmp_Node, ptr %t45, i32 0, i32 1 + %t47 = load ptr, ptr %t46 + %t48 = call ptr @lp_str_concat(ptr %t35, ptr %t47) + %t49 = call ptr @lp_str_concat(ptr %t48, ptr @.str11847) + call void @fn_emit(ptr %t49) + %t50 = load ptr, ptr @g_prog + %t51 = load i32, ptr %t6 + %t52 = getelementptr inbounds %LSlice, ptr %t50, i32 0, i32 0 + %t53 = load ptr, ptr %t52 + %t54 = getelementptr inbounds %LSlice, ptr %t50, i32 0, i32 1 + %t55 = load i32, ptr %t54 + %t56 = icmp ult i32 %t51, %t55 + br i1 %t56, label %ixok13, label %ixbad14 +ixbad14: + %t57 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t57, ptr @.fmt_bounds, ptr @.str11849, i32 %t51, i32 %t55) + call void @exit(i32 1) + unreachable +ixok13: + %t58 = getelementptr inbounds ptr, ptr %t53, i32 %t51 + %t59 = load ptr, ptr %t58 + %t60 = getelementptr inbounds %Cmp_Node, ptr %t59, i32 0, i32 1 + %t61 = load ptr, ptr %t60 + %t62 = call ptr @lp_str_concat(ptr @.str11848, ptr %t61) + %t63 = load ptr, ptr %t32 + %t64 = load i32, ptr %t5 + call void @fn_emit_grow_store(ptr %t62, ptr %t63, i32 %t64) + %t65 = load ptr, ptr @g_prog + %t66 = load i32, ptr %t6 + %t67 = getelementptr inbounds %LSlice, ptr %t65, i32 0, i32 0 + %t68 = load ptr, ptr %t67 + %t69 = getelementptr inbounds %LSlice, ptr %t65, i32 0, i32 1 + %t70 = load i32, ptr %t69 + %t71 = icmp ult i32 %t66, %t70 + br i1 %t71, label %ixok15, label %ixbad16 +ixbad16: + %t72 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t72, ptr @.fmt_bounds, ptr @.str11851, i32 %t66, i32 %t70) + call void @exit(i32 1) + unreachable +ixok15: + %t73 = getelementptr inbounds ptr, ptr %t68, i32 %t66 + %t74 = load ptr, ptr %t73 + %t75 = getelementptr inbounds %Cmp_Node, ptr %t74, i32 0, i32 1 + %t76 = load ptr, ptr %t75 + %t77 = call ptr @lp_str_concat(ptr @.str11850, ptr %t76) + %t78 = load i32, ptr %t5 + %t79 = add i32 %t78, 1 + call void @fn_emit_grow_store(ptr %t77, ptr @.str11852, i32 %t79) + %t80 = load i32, ptr %t5 + %t81 = add i32 %t80, 2 + store i32 %t81, ptr %t5 + br label %ifend10 +ifend10: + %t82 = load i32, ptr %t6 + %t83 = add i32 %t82, 1 + store i32 %t83, ptr %t6 + br label %wcond3 +wend5: + call void @fn_emit_grow_dyn() + call void @fn_emit(ptr @.str11853) + br label %ret +ret: + ret void +} + +define void @fn_emit_grow_store(ptr %arg_store, ptr %arg_esz, i32 %arg_k) { +entry: + %t0 = alloca ptr + %t1 = alloca ptr + %t2 = alloca i32 + %t5 = alloca ptr + store ptr %arg_store, ptr %t0 + store ptr %arg_esz, ptr %t1 + store i32 %arg_k, ptr %t2 + %t3 = load i32, ptr %t2 + %t4 = call ptr @fn_itoa(i32 %t3) + store ptr %t4, ptr %t5 + %t6 = load ptr, ptr %t5 + %t7 = call ptr @lp_str_concat(ptr @.str11854, ptr %t6) + %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str11855) + %t9 = load ptr, ptr %t0 + %t10 = call ptr @lp_str_concat(ptr %t8, ptr %t9) + %t11 = call ptr @lp_str_concat(ptr %t10, ptr @.str11856) + %t12 = load ptr, ptr %t5 + %t13 = call ptr @lp_str_concat(ptr %t11, ptr %t12) + %t14 = call ptr @lp_str_concat(ptr %t13, ptr @.str11857) + %t15 = load ptr, ptr %t1 + %t16 = call ptr @lp_str_concat(ptr %t14, ptr %t15) + %t17 = call ptr @lp_str_concat(ptr %t16, ptr @.str11858) + %t18 = load ptr, ptr %t5 + %t19 = call ptr @lp_str_concat(ptr %t17, ptr %t18) + %t20 = call ptr @lp_str_concat(ptr %t19, ptr @.str11859) + %t21 = load ptr, ptr %t5 + %t22 = call ptr @lp_str_concat(ptr %t20, ptr %t21) + %t23 = call ptr @lp_str_concat(ptr %t22, ptr @.str11860) + call void @fn_emit(ptr %t23) + %t24 = load ptr, ptr %t5 + %t25 = call ptr @lp_str_concat(ptr @.str11861, ptr %t24) + %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str11862) + %t27 = load ptr, ptr %t5 + %t28 = call ptr @lp_str_concat(ptr %t26, ptr %t27) + %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str11863) + %t30 = load ptr, ptr %t5 + %t31 = call ptr @lp_str_concat(ptr %t29, ptr %t30) + %t32 = call ptr @lp_str_concat(ptr %t31, ptr @.str11864) + %t33 = load ptr, ptr %t5 + %t34 = call ptr @lp_str_concat(ptr %t32, ptr %t33) + %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str11865) + %t36 = load ptr, ptr %t1 + %t37 = call ptr @lp_str_concat(ptr %t35, ptr %t36) + %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str11866) + call void @fn_emit(ptr %t38) + %t39 = load ptr, ptr %t5 + %t40 = call ptr @lp_str_concat(ptr @.str11867, ptr %t39) + %t41 = call ptr @lp_str_concat(ptr %t40, ptr @.str11868) + %t42 = load ptr, ptr %t5 + %t43 = call ptr @lp_str_concat(ptr %t41, ptr %t42) + %t44 = call ptr @lp_str_concat(ptr %t43, ptr @.str11869) + %t45 = load ptr, ptr %t5 + %t46 = call ptr @lp_str_concat(ptr %t44, ptr %t45) + %t47 = call ptr @lp_str_concat(ptr %t46, ptr @.str11870) + %t48 = load ptr, ptr %t5 + %t49 = call ptr @lp_str_concat(ptr %t47, ptr %t48) + %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str11871) + %t51 = load ptr, ptr %t5 + %t52 = call ptr @lp_str_concat(ptr %t50, ptr %t51) + %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str11872) + %t54 = load ptr, ptr %t5 + %t55 = call ptr @lp_str_concat(ptr %t53, ptr %t54) + %t56 = call ptr @lp_str_concat(ptr %t55, ptr @.str11873) + call void @fn_emit(ptr %t56) + %t57 = load ptr, ptr %t5 + %t58 = call ptr @lp_str_concat(ptr @.str11874, ptr %t57) + %t59 = call ptr @lp_str_concat(ptr %t58, ptr @.str11875) + %t60 = load ptr, ptr %t5 + %t61 = call ptr @lp_str_concat(ptr %t59, ptr %t60) + %t62 = call ptr @lp_str_concat(ptr %t61, ptr @.str11876) + %t63 = load ptr, ptr %t5 + %t64 = call ptr @lp_str_concat(ptr %t62, ptr %t63) + %t65 = call ptr @lp_str_concat(ptr %t64, ptr @.str11877) + %t66 = load ptr, ptr %t5 + %t67 = call ptr @lp_str_concat(ptr %t65, ptr %t66) + %t68 = call ptr @lp_str_concat(ptr %t67, ptr @.str11878) + %t69 = load ptr, ptr %t0 + %t70 = call ptr @lp_str_concat(ptr %t68, ptr %t69) + %t71 = call ptr @lp_str_concat(ptr %t70, ptr @.str11879) + call void @fn_emit(ptr %t71) + br label %ret +ret: + ret void +} + +define void @fn_emit_grow_dyn() { +entry: + call void @fn_emit(ptr @.str11880) + call void @fn_emit(ptr @.str11881) + call void @fn_emit(ptr @.str11882) + call void @fn_emit(ptr @.str11883) + call void @fn_emit_grow_slot(ptr @.str11884, ptr @.str11885, ptr @.str11886) + call void @fn_emit_grow_slot(ptr @.str11887, ptr @.str11888, ptr @.str11889) + call void @fn_emit(ptr @.str11890) + br label %ret +ret: + ret void +} + +define void @fn_emit_grow_slot(ptr %arg_table, ptr %arg_esz, ptr %arg_t) { +entry: + %t0 = alloca ptr + %t1 = alloca ptr + %t2 = alloca ptr + store ptr %arg_table, ptr %t0 + store ptr %arg_esz, ptr %t1 + store ptr %arg_t, ptr %t2 + %t3 = load ptr, ptr %t2 + %t4 = call ptr @lp_str_concat(ptr @.str11891, ptr %t3) + %t5 = call ptr @lp_str_concat(ptr %t4, ptr @.str11892) + %t6 = load ptr, ptr %t0 + %t7 = call ptr @lp_str_concat(ptr %t5, ptr %t6) + %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str11893) + %t9 = load ptr, ptr %t2 + %t10 = call ptr @lp_str_concat(ptr %t8, ptr %t9) + %t11 = call ptr @lp_str_concat(ptr %t10, ptr @.str11894) + %t12 = load ptr, ptr %t2 + %t13 = call ptr @lp_str_concat(ptr %t11, ptr %t12) + %t14 = call ptr @lp_str_concat(ptr %t13, ptr @.str11895) + call void @fn_emit(ptr %t14) + %t15 = load ptr, ptr %t2 + %t16 = call ptr @lp_str_concat(ptr @.str11896, ptr %t15) + %t17 = call ptr @lp_str_concat(ptr %t16, ptr @.str11897) + %t18 = load ptr, ptr %t1 + %t19 = call ptr @lp_str_concat(ptr %t17, ptr %t18) + %t20 = call ptr @lp_str_concat(ptr %t19, ptr @.str11898) + %t21 = load ptr, ptr %t2 + %t22 = call ptr @lp_str_concat(ptr %t20, ptr %t21) + %t23 = call ptr @lp_str_concat(ptr %t22, ptr @.str11899) + %t24 = load ptr, ptr %t2 + %t25 = call ptr @lp_str_concat(ptr %t23, ptr %t24) + %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str11900) + %t27 = load ptr, ptr %t2 + %t28 = call ptr @lp_str_concat(ptr %t26, ptr %t27) + %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str11901) + %t30 = load ptr, ptr %t2 + %t31 = call ptr @lp_str_concat(ptr %t29, ptr %t30) + %t32 = call ptr @lp_str_concat(ptr %t31, ptr @.str11902) + %t33 = load ptr, ptr %t2 + %t34 = call ptr @lp_str_concat(ptr %t32, ptr %t33) + %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str11903) + call void @fn_emit(ptr %t35) + %t36 = load ptr, ptr %t2 + %t37 = call ptr @lp_str_concat(ptr @.str11904, ptr %t36) + %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str11905) + %t39 = load ptr, ptr %t1 + %t40 = call ptr @lp_str_concat(ptr %t38, ptr %t39) + %t41 = call ptr @lp_str_concat(ptr %t40, ptr @.str11906) + %t42 = load ptr, ptr %t2 + %t43 = call ptr @lp_str_concat(ptr %t41, ptr %t42) + %t44 = call ptr @lp_str_concat(ptr %t43, ptr @.str11907) + %t45 = load ptr, ptr %t2 + %t46 = call ptr @lp_str_concat(ptr %t44, ptr %t45) + %t47 = call ptr @lp_str_concat(ptr %t46, ptr @.str11908) + %t48 = load ptr, ptr %t2 + %t49 = call ptr @lp_str_concat(ptr %t47, ptr %t48) + %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str11909) + %t51 = load ptr, ptr %t2 + %t52 = call ptr @lp_str_concat(ptr %t50, ptr %t51) + %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str11910) + %t54 = load ptr, ptr %t2 + %t55 = call ptr @lp_str_concat(ptr %t53, ptr %t54) + %t56 = call ptr @lp_str_concat(ptr %t55, ptr @.str11911) + %t57 = load ptr, ptr %t2 + %t58 = call ptr @lp_str_concat(ptr %t56, ptr %t57) + %t59 = call ptr @lp_str_concat(ptr %t58, ptr @.str11912) + call void @fn_emit(ptr %t59) + %t60 = load ptr, ptr %t2 + %t61 = call ptr @lp_str_concat(ptr @.str11913, ptr %t60) + %t62 = call ptr @lp_str_concat(ptr %t61, ptr @.str11914) + %t63 = load ptr, ptr %t2 + %t64 = call ptr @lp_str_concat(ptr %t62, ptr %t63) + %t65 = call ptr @lp_str_concat(ptr %t64, ptr @.str11915) + %t66 = load ptr, ptr %t2 + %t67 = call ptr @lp_str_concat(ptr %t65, ptr %t66) + %t68 = call ptr @lp_str_concat(ptr %t67, ptr @.str11916) + %t69 = load ptr, ptr %t2 + %t70 = call ptr @lp_str_concat(ptr %t68, ptr %t69) + %t71 = call ptr @lp_str_concat(ptr %t70, ptr @.str11917) + %t72 = load ptr, ptr %t2 + %t73 = call ptr @lp_str_concat(ptr %t71, ptr %t72) + %t74 = call ptr @lp_str_concat(ptr %t73, ptr @.str11918) + call void @fn_emit(ptr %t74) br label %ret ret: ret void @@ -162413,7 +163010,7 @@ wbody1: br i1 %t16, label %ixok3, label %ixbad4 ixbad4: %t17 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11810, i32 %t11, i32 %t15) + call i32 (ptr, ptr, ...) @fprintf(ptr %t17, ptr @.fmt_bounds, ptr @.str11919, i32 %t11, i32 %t15) call void @exit(i32 1) unreachable ixok3: @@ -162436,7 +163033,7 @@ then5: br i1 %t31, label %ixok8, label %ixbad9 ixbad9: %t32 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str11811, i32 %t26, i32 %t30) + call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str11920, i32 %t26, i32 %t30) call void @exit(i32 1) unreachable ixok8: @@ -162484,40 +163081,44 @@ entry: %t67 = alloca ptr %t75 = alloca ptr %t77 = alloca ptr - %t84 = alloca ptr - %t89 = alloca ptr + %t79 = alloca ptr + %t86 = alloca ptr %t91 = alloca ptr - %t99 = alloca ptr - %t100 = alloca i32 - %t122 = alloca ptr - %t127 = alloca i32 - %t128 = alloca ptr - %t134 = alloca ptr - %t141 = alloca ptr - %t149 = alloca ptr - %t155 = alloca ptr - %t160 = alloca ptr - %t168 = alloca ptr + %t93 = alloca ptr + %t101 = alloca ptr + %t102 = alloca i32 + %t124 = alloca ptr + %t129 = alloca i32 + %t130 = alloca ptr + %t136 = alloca ptr + %t138 = alloca ptr + %t145 = alloca ptr + %t153 = alloca ptr + %t159 = alloca ptr + %t164 = alloca ptr + %t176 = alloca ptr %t178 = alloca ptr - %t184 = alloca ptr - %t192 = alloca i32 - %t193 = alloca i32 - %t215 = alloca ptr - %t216 = alloca i32 - %t244 = alloca ptr - %t255 = alloca ptr - %t290 = alloca ptr - %t297 = alloca ptr - %t299 = alloca ptr - %t319 = alloca ptr - %t324 = alloca ptr + %t185 = alloca ptr + %t191 = alloca ptr + %t199 = alloca i32 + %t200 = alloca i32 + %t222 = alloca ptr + %t223 = alloca i32 + %t251 = alloca ptr + %t257 = alloca ptr + %t265 = alloca ptr + %t300 = alloca ptr + %t307 = alloca ptr + %t309 = alloca ptr + %t329 = alloca ptr + %t334 = alloca ptr store ptr %arg_st, ptr %t0 %t1 = call ptr @fn_itoa(i32 1024) store ptr %t1, ptr %t2 - %t3 = call ptr @fn_emit_alloca(ptr @.str11812) + %t3 = call ptr @fn_emit_alloca(ptr @.str11921) store ptr %t3, ptr %t4 %t5 = load ptr, ptr %t4 - call void @fn_store_at(ptr @.str11813, ptr @.str11814, ptr %t5) + call void @fn_store_at(ptr @.str11922, ptr @.str11923, ptr %t5) %t6 = load i32, ptr @g_nself %t7 = load ptr, ptr @g_self_stk %t8 = getelementptr inbounds %LSlice, ptr %t7, i32 0, i32 1 @@ -162537,7 +163138,7 @@ then0: br i1 %t19, label %ixok3, label %ixbad4 ixbad4: %t20 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str11815, i32 %t14, i32 %t18) + call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str11924, i32 %t14, i32 %t18) call void @exit(i32 1) unreachable ixok3: @@ -162579,454 +163180,460 @@ ifend2: %t43 = load i32, ptr @g_nself %t44 = add i32 %t43, 1 store i32 %t44, ptr @g_nself - %t45 = call ptr @fn_lbl(ptr @.str11816) + %t45 = call ptr @fn_lbl(ptr @.str11925) store ptr %t45, ptr %t46 - %t47 = call ptr @fn_lbl(ptr @.str11817) + %t47 = call ptr @fn_lbl(ptr @.str11926) store ptr %t47, ptr %t48 - %t49 = call ptr @fn_lbl(ptr @.str11818) + %t49 = call ptr @fn_lbl(ptr @.str11927) store ptr %t49, ptr %t50 - %t51 = call ptr @fn_lbl(ptr @.str11819) + %t51 = call ptr @fn_lbl(ptr @.str11928) store ptr %t51, ptr %t52 - call void @fn_emit(ptr @.str11820) + call void @fn_emit(ptr @.str11929) %t53 = load ptr, ptr %t46 call void @fn_emit(ptr %t53) - call void @fn_emit(ptr @.str11821) + call void @fn_emit(ptr @.str11930) %t54 = load ptr, ptr %t46 call void @fn_emit(ptr %t54) - call void @fn_emit(ptr @.str11822) + call void @fn_emit(ptr @.str11931) %t55 = load ptr, ptr %t4 - %t56 = call ptr @lp_str_concat(ptr @.str11823, ptr %t55) + %t56 = call ptr @lp_str_concat(ptr @.str11932, ptr %t55) %t57 = call ptr @fn_emit_bind(ptr %t56) store ptr %t57, ptr %t58 - %t59 = call ptr @fn_emit_bind(ptr @.str11824) + %t59 = call ptr @fn_emit_bind(ptr @.str11933) store ptr %t59, ptr %t60 %t61 = load ptr, ptr %t58 - %t62 = call ptr @lp_str_concat(ptr @.str11825, ptr %t61) - %t63 = call ptr @lp_str_concat(ptr %t62, ptr @.str11826) + %t62 = call ptr @lp_str_concat(ptr @.str11934, ptr %t61) + %t63 = call ptr @lp_str_concat(ptr %t62, ptr @.str11935) %t64 = load ptr, ptr %t60 %t65 = call ptr @lp_str_concat(ptr %t63, ptr %t64) %t66 = call ptr @fn_emit_bind(ptr %t65) store ptr %t66, ptr %t67 - call void @fn_emit(ptr @.str11827) + call void @fn_emit(ptr @.str11936) %t68 = load ptr, ptr %t67 call void @fn_emit(ptr %t68) - call void @fn_emit(ptr @.str11828) + call void @fn_emit(ptr @.str11937) %t69 = load ptr, ptr %t48 call void @fn_emit(ptr %t69) - call void @fn_emit(ptr @.str11829) + call void @fn_emit(ptr @.str11938) %t70 = load ptr, ptr %t52 call void @fn_emit(ptr %t70) - call void @fn_emit(ptr @.str11830) + call void @fn_emit(ptr @.str11939) %t71 = load ptr, ptr %t48 call void @fn_emit(ptr %t71) - call void @fn_emit(ptr @.str11831) + call void @fn_emit(ptr @.str11940) store i32 0, ptr @g_g_term %t72 = load ptr, ptr %t4 - %t73 = call ptr @lp_str_concat(ptr @.str11832, ptr %t72) + %t73 = call ptr @lp_str_concat(ptr @.str11941, ptr %t72) %t74 = call ptr @fn_emit_bind(ptr %t73) store ptr %t74, ptr %t75 - %t76 = call ptr @fn_nreg() + %t76 = call ptr @fn_ecs_base(ptr @.str11942) store ptr %t76, ptr %t77 - call void @fn_emit(ptr @.str11833) - %t78 = load ptr, ptr %t77 - call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str11834) - %t79 = load ptr, ptr %t2 - call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str11835) - %t80 = load ptr, ptr %t75 + %t78 = call ptr @fn_nreg() + store ptr %t78, ptr %t79 + call void @fn_emit(ptr @.str11943) + %t80 = load ptr, ptr %t79 call void @fn_emit(ptr %t80) - call void @fn_emit(ptr @.str11836) + call void @fn_emit(ptr @.str11944) %t81 = load ptr, ptr %t77 - %t82 = call ptr @lp_str_concat(ptr @.str11837, ptr %t81) - %t83 = call ptr @fn_emit_bind(ptr %t82) - store ptr %t83, ptr %t84 - %t85 = load ptr, ptr %t84 - %t86 = call ptr @lp_str_concat(ptr @.str11838, ptr %t85) - %t87 = call ptr @lp_str_concat(ptr %t86, ptr @.str11839) - %t88 = call ptr @fn_emit_bind(ptr %t87) - store ptr %t88, ptr %t89 - %t90 = call ptr @fn_lbl(ptr @.str11840) + call void @fn_emit(ptr %t81) + call void @fn_emit(ptr @.str11945) + %t82 = load ptr, ptr %t75 + call void @fn_emit(ptr %t82) + call void @fn_emit(ptr @.str11946) + %t83 = load ptr, ptr %t79 + %t84 = call ptr @lp_str_concat(ptr @.str11947, ptr %t83) + %t85 = call ptr @fn_emit_bind(ptr %t84) + store ptr %t85, ptr %t86 + %t87 = load ptr, ptr %t86 + %t88 = call ptr @lp_str_concat(ptr @.str11948, ptr %t87) + %t89 = call ptr @lp_str_concat(ptr %t88, ptr @.str11949) + %t90 = call ptr @fn_emit_bind(ptr %t89) store ptr %t90, ptr %t91 - call void @fn_emit(ptr @.str11841) - %t92 = load ptr, ptr %t89 - call void @fn_emit(ptr %t92) - call void @fn_emit(ptr @.str11842) - %t93 = load ptr, ptr %t91 - call void @fn_emit(ptr %t93) - call void @fn_emit(ptr @.str11843) - %t94 = load ptr, ptr %t50 + %t92 = call ptr @fn_lbl(ptr @.str11950) + store ptr %t92, ptr %t93 + call void @fn_emit(ptr @.str11951) + %t94 = load ptr, ptr %t91 call void @fn_emit(ptr %t94) - call void @fn_emit(ptr @.str11844) - %t95 = load ptr, ptr %t91 + call void @fn_emit(ptr @.str11952) + %t95 = load ptr, ptr %t93 call void @fn_emit(ptr %t95) - call void @fn_emit(ptr @.str11845) - %t96 = load ptr, ptr %t0 - %t97 = getelementptr inbounds %Cmp_Node, ptr %t96, i32 0, i32 6 - %t98 = load ptr, ptr %t97 - store ptr %t98, ptr %t99 - store i32 0, ptr %t100 + call void @fn_emit(ptr @.str11953) + %t96 = load ptr, ptr %t50 + call void @fn_emit(ptr %t96) + call void @fn_emit(ptr @.str11954) + %t97 = load ptr, ptr %t93 + call void @fn_emit(ptr %t97) + call void @fn_emit(ptr @.str11955) + %t98 = load ptr, ptr %t0 + %t99 = getelementptr inbounds %Cmp_Node, ptr %t98, i32 0, i32 6 + %t100 = load ptr, ptr %t99 + store ptr %t100, ptr %t101 + store i32 0, ptr %t102 br label %wcond7 wcond7: - %t101 = load i32, ptr %t100 - %t102 = load ptr, ptr %t99 - %t103 = getelementptr inbounds %Cmp_Node, ptr %t102, i32 0, i32 7 - %t104 = load ptr, ptr %t103 - %t105 = getelementptr inbounds %LSlice, ptr %t104, i32 0, i32 1 - %t106 = load i32, ptr %t105 - %t107 = icmp slt i32 %t101, %t106 - %t108 = zext i1 %t107 to i32 - %t109 = icmp ne i32 %t108, 0 - br i1 %t109, label %wbody8, label %wend9 + %t103 = load i32, ptr %t102 + %t104 = load ptr, ptr %t101 + %t105 = getelementptr inbounds %Cmp_Node, ptr %t104, i32 0, i32 7 + %t106 = load ptr, ptr %t105 + %t107 = getelementptr inbounds %LSlice, ptr %t106, i32 0, i32 1 + %t108 = load i32, ptr %t107 + %t109 = icmp slt i32 %t103, %t108 + %t110 = zext i1 %t109 to i32 + %t111 = icmp ne i32 %t110, 0 + br i1 %t111, label %wbody8, label %wend9 wbody8: - %t110 = load ptr, ptr %t99 - %t111 = getelementptr inbounds %Cmp_Node, ptr %t110, i32 0, i32 7 - %t112 = load ptr, ptr %t111 - %t113 = load i32, ptr %t100 - %t114 = getelementptr inbounds %LSlice, ptr %t112, i32 0, i32 0 - %t115 = load ptr, ptr %t114 - %t116 = getelementptr inbounds %LSlice, ptr %t112, i32 0, i32 1 - %t117 = load i32, ptr %t116 - %t118 = icmp ult i32 %t113, %t117 - br i1 %t118, label %ixok10, label %ixbad11 + %t112 = load ptr, ptr %t101 + %t113 = getelementptr inbounds %Cmp_Node, ptr %t112, i32 0, i32 7 + %t114 = load ptr, ptr %t113 + %t115 = load i32, ptr %t102 + %t116 = getelementptr inbounds %LSlice, ptr %t114, i32 0, i32 0 + %t117 = load ptr, ptr %t116 + %t118 = getelementptr inbounds %LSlice, ptr %t114, i32 0, i32 1 + %t119 = load i32, ptr %t118 + %t120 = icmp ult i32 %t115, %t119 + br i1 %t120, label %ixok10, label %ixbad11 ixbad11: - %t119 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t119, ptr @.fmt_bounds, ptr @.str11846, i32 %t113, i32 %t117) + %t121 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t121, ptr @.fmt_bounds, ptr @.str11956, i32 %t115, i32 %t119) call void @exit(i32 1) unreachable ixok10: - %t120 = getelementptr inbounds ptr, ptr %t115, i32 %t113 - %t121 = load ptr, ptr %t120 - store ptr %t121, ptr %t122 + %t122 = getelementptr inbounds ptr, ptr %t117, i32 %t115 %t123 = load ptr, ptr %t122 - %t124 = getelementptr inbounds %Cmp_Node, ptr %t123, i32 0, i32 1 + store ptr %t123, ptr %t124 %t125 = load ptr, ptr %t124 - %t126 = call i32 @fn_find_arch_id(ptr %t125) - store i32 %t126, ptr %t127 - store ptr @.str11847, ptr %t128 - %t129 = load i32, ptr %t127 - %t130 = icmp sgt i32 %t129, 0 - %t131 = zext i1 %t130 to i32 - %t132 = icmp ne i32 %t131, 0 - br i1 %t132, label %then12, label %else13 + %t126 = getelementptr inbounds %Cmp_Node, ptr %t125, i32 0, i32 1 + %t127 = load ptr, ptr %t126 + %t128 = call i32 @fn_find_arch_id(ptr %t127) + store i32 %t128, ptr %t129 + store ptr @.str11957, ptr %t130 + %t131 = load i32, ptr %t129 + %t132 = icmp sgt i32 %t131, 0 + %t133 = zext i1 %t132 to i32 + %t134 = icmp ne i32 %t133, 0 + br i1 %t134, label %then12, label %else13 then12: - %t133 = call ptr @fn_nreg() - store ptr %t133, ptr %t134 - call void @fn_emit(ptr @.str11848) - %t135 = load ptr, ptr %t134 - call void @fn_emit(ptr %t135) - call void @fn_emit(ptr @.str11849) - %t136 = load ptr, ptr %t2 - call void @fn_emit(ptr %t136) - call void @fn_emit(ptr @.str11850) - %t137 = load ptr, ptr %t75 - call void @fn_emit(ptr %t137) - call void @fn_emit(ptr @.str11851) - %t138 = load ptr, ptr %t134 - %t139 = call ptr @lp_str_concat(ptr @.str11852, ptr %t138) - %t140 = call ptr @fn_emit_bind(ptr %t139) - store ptr %t140, ptr %t141 - %t142 = load ptr, ptr %t141 - %t143 = call ptr @lp_str_concat(ptr @.str11853, ptr %t142) - %t144 = call ptr @lp_str_concat(ptr %t143, ptr @.str11854) - %t145 = load i32, ptr %t127 - %t146 = call ptr @fn_itoa(i32 %t145) - %t147 = call ptr @lp_str_concat(ptr %t144, ptr %t146) - %t148 = call ptr @fn_emit_bind(ptr %t147) - store ptr %t148, ptr %t149 - %t150 = load ptr, ptr %t122 - %t151 = getelementptr inbounds %Cmp_Node, ptr %t150, i32 0, i32 1 - %t152 = load ptr, ptr %t151 - %t153 = call ptr @lp_str_concat(ptr @.str11855, ptr %t152) - %t154 = call ptr @fn_emit_bind(ptr %t153) - store ptr %t154, ptr %t155 + %t135 = call ptr @fn_ecs_base(ptr @.str11958) + store ptr %t135, ptr %t136 + %t137 = call ptr @fn_nreg() + store ptr %t137, ptr %t138 + call void @fn_emit(ptr @.str11959) + %t139 = load ptr, ptr %t138 + call void @fn_emit(ptr %t139) + call void @fn_emit(ptr @.str11960) + %t140 = load ptr, ptr %t136 + call void @fn_emit(ptr %t140) + call void @fn_emit(ptr @.str11961) + %t141 = load ptr, ptr %t75 + call void @fn_emit(ptr %t141) + call void @fn_emit(ptr @.str11962) + %t142 = load ptr, ptr %t138 + %t143 = call ptr @lp_str_concat(ptr @.str11963, ptr %t142) + %t144 = call ptr @fn_emit_bind(ptr %t143) + store ptr %t144, ptr %t145 + %t146 = load ptr, ptr %t145 + %t147 = call ptr @lp_str_concat(ptr @.str11964, ptr %t146) + %t148 = call ptr @lp_str_concat(ptr %t147, ptr @.str11965) + %t149 = load i32, ptr %t129 + %t150 = call ptr @fn_itoa(i32 %t149) + %t151 = call ptr @lp_str_concat(ptr %t148, ptr %t150) + %t152 = call ptr @fn_emit_bind(ptr %t151) + store ptr %t152, ptr %t153 + %t154 = load ptr, ptr %t124 + %t155 = getelementptr inbounds %Cmp_Node, ptr %t154, i32 0, i32 1 %t156 = load ptr, ptr %t155 - %t157 = call ptr @lp_str_concat(ptr @.str11856, ptr %t156) - %t158 = call ptr @lp_str_concat(ptr %t157, ptr @.str11857) - %t159 = call ptr @fn_emit_bind(ptr %t158) - store ptr %t159, ptr %t160 - %t161 = load ptr, ptr %t149 - %t162 = call ptr @lp_str_concat(ptr @.str11858, ptr %t161) - %t163 = call ptr @lp_str_concat(ptr %t162, ptr @.str11859) - %t164 = load ptr, ptr %t160 - %t165 = call ptr @lp_str_concat(ptr %t163, ptr %t164) - %t166 = call ptr @fn_emit_bind(ptr %t165) - store ptr %t166, ptr %t128 + %t157 = call ptr @lp_str_concat(ptr @.str11966, ptr %t156) + %t158 = call ptr @fn_emit_bind(ptr %t157) + store ptr %t158, ptr %t159 + %t160 = load ptr, ptr %t159 + %t161 = call ptr @lp_str_concat(ptr @.str11967, ptr %t160) + %t162 = call ptr @lp_str_concat(ptr %t161, ptr @.str11968) + %t163 = call ptr @fn_emit_bind(ptr %t162) + store ptr %t163, ptr %t164 + %t165 = load ptr, ptr %t153 + %t166 = call ptr @lp_str_concat(ptr @.str11969, ptr %t165) + %t167 = call ptr @lp_str_concat(ptr %t166, ptr @.str11970) + %t168 = load ptr, ptr %t164 + %t169 = call ptr @lp_str_concat(ptr %t167, ptr %t168) + %t170 = call ptr @fn_emit_bind(ptr %t169) + store ptr %t170, ptr %t130 br label %ifend14 else13: - %t167 = call ptr @fn_nreg() - store ptr %t167, ptr %t168 - call void @fn_emit(ptr @.str11860) - %t169 = load ptr, ptr %t168 - call void @fn_emit(ptr %t169) - call void @fn_emit(ptr @.str11861) - %t170 = load ptr, ptr %t2 - call void @fn_emit(ptr %t170) - call void @fn_emit(ptr @.str11862) - %t171 = load ptr, ptr %t122 + %t171 = load ptr, ptr %t124 %t172 = getelementptr inbounds %Cmp_Node, ptr %t171, i32 0, i32 1 %t173 = load ptr, ptr %t172 - call void @fn_emit(ptr %t173) - call void @fn_emit(ptr @.str11863) - %t174 = load ptr, ptr %t75 - call void @fn_emit(ptr %t174) - call void @fn_emit(ptr @.str11864) - %t175 = load ptr, ptr %t168 - %t176 = call ptr @lp_str_concat(ptr @.str11865, ptr %t175) - %t177 = call ptr @fn_emit_bind(ptr %t176) + %t174 = call ptr @lp_str_concat(ptr @.str11971, ptr %t173) + %t175 = call ptr @fn_ecs_base(ptr %t174) + store ptr %t175, ptr %t176 + %t177 = call ptr @fn_nreg() store ptr %t177, ptr %t178 + call void @fn_emit(ptr @.str11972) %t179 = load ptr, ptr %t178 - %t180 = call ptr @lp_str_concat(ptr @.str11866, ptr %t179) - %t181 = call ptr @lp_str_concat(ptr %t180, ptr @.str11867) - %t182 = call ptr @fn_emit_bind(ptr %t181) - store ptr %t182, ptr %t128 + call void @fn_emit(ptr %t179) + call void @fn_emit(ptr @.str11973) + %t180 = load ptr, ptr %t176 + call void @fn_emit(ptr %t180) + call void @fn_emit(ptr @.str11974) + %t181 = load ptr, ptr %t75 + call void @fn_emit(ptr %t181) + call void @fn_emit(ptr @.str11975) + %t182 = load ptr, ptr %t178 + %t183 = call ptr @lp_str_concat(ptr @.str11976, ptr %t182) + %t184 = call ptr @fn_emit_bind(ptr %t183) + store ptr %t184, ptr %t185 + %t186 = load ptr, ptr %t185 + %t187 = call ptr @lp_str_concat(ptr @.str11977, ptr %t186) + %t188 = call ptr @lp_str_concat(ptr %t187, ptr @.str11978) + %t189 = call ptr @fn_emit_bind(ptr %t188) + store ptr %t189, ptr %t130 br label %ifend14 ifend14: - %t183 = call ptr @fn_lbl(ptr @.str11868) - store ptr %t183, ptr %t184 - call void @fn_emit(ptr @.str11869) - %t185 = load ptr, ptr %t128 - call void @fn_emit(ptr %t185) - call void @fn_emit(ptr @.str11870) - %t186 = load ptr, ptr %t184 - call void @fn_emit(ptr %t186) - call void @fn_emit(ptr @.str11871) - %t187 = load ptr, ptr %t50 - call void @fn_emit(ptr %t187) - call void @fn_emit(ptr @.str11872) - %t188 = load ptr, ptr %t184 - call void @fn_emit(ptr %t188) - call void @fn_emit(ptr @.str11873) - %t189 = load i32, ptr %t100 - %t190 = add i32 %t189, 1 - store i32 %t190, ptr %t100 + %t190 = call ptr @fn_lbl(ptr @.str11979) + store ptr %t190, ptr %t191 + call void @fn_emit(ptr @.str11980) + %t192 = load ptr, ptr %t130 + call void @fn_emit(ptr %t192) + call void @fn_emit(ptr @.str11981) + %t193 = load ptr, ptr %t191 + call void @fn_emit(ptr %t193) + call void @fn_emit(ptr @.str11982) + %t194 = load ptr, ptr %t50 + call void @fn_emit(ptr %t194) + call void @fn_emit(ptr @.str11983) + %t195 = load ptr, ptr %t191 + call void @fn_emit(ptr %t195) + call void @fn_emit(ptr @.str11984) + %t196 = load i32, ptr %t102 + %t197 = add i32 %t196, 1 + store i32 %t197, ptr %t102 br label %wcond7 wend9: - %t191 = load i32, ptr @g_nloc - store i32 %t191, ptr %t192 - store i32 0, ptr %t193 - store i32 0, ptr %t100 + %t198 = load i32, ptr @g_nloc + store i32 %t198, ptr %t199 + store i32 0, ptr %t200 + store i32 0, ptr %t102 br label %wcond15 wcond15: - %t194 = load i32, ptr %t100 - %t195 = load ptr, ptr %t99 - %t196 = getelementptr inbounds %Cmp_Node, ptr %t195, i32 0, i32 7 - %t197 = load ptr, ptr %t196 - %t198 = getelementptr inbounds %LSlice, ptr %t197, i32 0, i32 1 - %t199 = load i32, ptr %t198 - %t200 = icmp slt i32 %t194, %t199 - %t201 = zext i1 %t200 to i32 - %t202 = icmp ne i32 %t201, 0 - br i1 %t202, label %wbody16, label %wend17 + %t201 = load i32, ptr %t102 + %t202 = load ptr, ptr %t101 + %t203 = getelementptr inbounds %Cmp_Node, ptr %t202, i32 0, i32 7 + %t204 = load ptr, ptr %t203 + %t205 = getelementptr inbounds %LSlice, ptr %t204, i32 0, i32 1 + %t206 = load i32, ptr %t205 + %t207 = icmp slt i32 %t201, %t206 + %t208 = zext i1 %t207 to i32 + %t209 = icmp ne i32 %t208, 0 + br i1 %t209, label %wbody16, label %wend17 wbody16: - %t203 = load ptr, ptr %t99 - %t204 = getelementptr inbounds %Cmp_Node, ptr %t203, i32 0, i32 7 - %t205 = load ptr, ptr %t204 - %t206 = load i32, ptr %t100 - %t207 = getelementptr inbounds %LSlice, ptr %t205, i32 0, i32 0 - %t208 = load ptr, ptr %t207 - %t209 = getelementptr inbounds %LSlice, ptr %t205, i32 0, i32 1 - %t210 = load i32, ptr %t209 - %t211 = icmp ult i32 %t206, %t210 - br i1 %t211, label %ixok18, label %ixbad19 + %t210 = load ptr, ptr %t101 + %t211 = getelementptr inbounds %Cmp_Node, ptr %t210, i32 0, i32 7 + %t212 = load ptr, ptr %t211 + %t213 = load i32, ptr %t102 + %t214 = getelementptr inbounds %LSlice, ptr %t212, i32 0, i32 0 + %t215 = load ptr, ptr %t214 + %t216 = getelementptr inbounds %LSlice, ptr %t212, i32 0, i32 1 + %t217 = load i32, ptr %t216 + %t218 = icmp ult i32 %t213, %t217 + br i1 %t218, label %ixok18, label %ixbad19 ixbad19: - %t212 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t212, ptr @.fmt_bounds, ptr @.str11874, i32 %t206, i32 %t210) + %t219 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t219, ptr @.fmt_bounds, ptr @.str11985, i32 %t213, i32 %t217) call void @exit(i32 1) unreachable ixok18: - %t213 = getelementptr inbounds ptr, ptr %t208, i32 %t206 - %t214 = load ptr, ptr %t213 - store ptr %t214, ptr %t215 - %t217 = load ptr, ptr %t215 - %t218 = getelementptr inbounds %Cmp_Node, ptr %t217, i32 0, i32 2 - %t219 = load i32, ptr %t218 - %t220 = icmp eq i32 %t219, 0 - %t221 = zext i1 %t220 to i32 - %t222 = icmp ne i32 %t221, 0 - %t223 = zext i1 %t222 to i32 - store i32 %t223, ptr %t216 - br i1 %t222, label %sc20, label %scend21 + %t220 = getelementptr inbounds ptr, ptr %t215, i32 %t213 + %t221 = load ptr, ptr %t220 + store ptr %t221, ptr %t222 + %t224 = load ptr, ptr %t222 + %t225 = getelementptr inbounds %Cmp_Node, ptr %t224, i32 0, i32 2 + %t226 = load i32, ptr %t225 + %t227 = icmp eq i32 %t226, 0 + %t228 = zext i1 %t227 to i32 + %t229 = icmp ne i32 %t228, 0 + %t230 = zext i1 %t229 to i32 + store i32 %t230, ptr %t223 + br i1 %t229, label %sc20, label %scend21 sc20: - %t224 = load ptr, ptr %t215 - %t225 = getelementptr inbounds %Cmp_Node, ptr %t224, i32 0, i32 1 - %t226 = load ptr, ptr %t225 - %t227 = call i32 @fn_find_arch_id(ptr %t226) - %t228 = icmp eq i32 %t227, 0 - %t229 = zext i1 %t228 to i32 - %t230 = icmp ne i32 %t229, 0 - %t231 = zext i1 %t230 to i32 - store i32 %t231, ptr %t216 + %t231 = load ptr, ptr %t222 + %t232 = getelementptr inbounds %Cmp_Node, ptr %t231, i32 0, i32 1 + %t233 = load ptr, ptr %t232 + %t234 = call i32 @fn_find_arch_id(ptr %t233) + %t235 = icmp eq i32 %t234, 0 + %t236 = zext i1 %t235 to i32 + %t237 = icmp ne i32 %t236, 0 + %t238 = zext i1 %t237 to i32 + store i32 %t238, ptr %t223 br label %scend21 scend21: - %t232 = load i32, ptr %t216 - %t233 = icmp ne i32 %t232, 0 - br i1 %t233, label %then22, label %ifend24 + %t239 = load i32, ptr %t223 + %t240 = icmp ne i32 %t239, 0 + br i1 %t240, label %then22, label %ifend24 then22: - %t234 = load i32, ptr %t193 - %t235 = load ptr, ptr %t0 - %t236 = getelementptr inbounds %Cmp_Node, ptr %t235, i32 0, i32 7 - %t237 = load ptr, ptr %t236 - %t238 = getelementptr inbounds %LSlice, ptr %t237, i32 0, i32 1 - %t239 = load i32, ptr %t238 - %t240 = icmp slt i32 %t234, %t239 - %t241 = zext i1 %t240 to i32 - %t242 = icmp ne i32 %t241, 0 - br i1 %t242, label %then25, label %ifend27 + %t241 = load i32, ptr %t200 + %t242 = load ptr, ptr %t0 + %t243 = getelementptr inbounds %Cmp_Node, ptr %t242, i32 0, i32 7 + %t244 = load ptr, ptr %t243 + %t245 = getelementptr inbounds %LSlice, ptr %t244, i32 0, i32 1 + %t246 = load i32, ptr %t245 + %t247 = icmp slt i32 %t241, %t246 + %t248 = zext i1 %t247 to i32 + %t249 = icmp ne i32 %t248, 0 + br i1 %t249, label %then25, label %ifend27 then25: - %t243 = call ptr @fn_nreg() - store ptr %t243, ptr %t244 - call void @fn_emit(ptr @.str11875) - %t245 = load ptr, ptr %t244 - call void @fn_emit(ptr %t245) - call void @fn_emit(ptr @.str11876) - %t246 = load ptr, ptr %t2 - call void @fn_emit(ptr %t246) - call void @fn_emit(ptr @.str11877) - %t247 = load ptr, ptr %t215 - %t248 = getelementptr inbounds %Cmp_Node, ptr %t247, i32 0, i32 1 - %t249 = load ptr, ptr %t248 - call void @fn_emit(ptr %t249) - call void @fn_emit(ptr @.str11878) - %t250 = load ptr, ptr %t215 - %t251 = getelementptr inbounds %Cmp_Node, ptr %t250, i32 0, i32 1 - %t252 = load ptr, ptr %t251 - call void @fn_emit(ptr %t252) - call void @fn_emit(ptr @.str11879) - %t253 = load ptr, ptr %t75 - call void @fn_emit(ptr %t253) - call void @fn_emit(ptr @.str11880) - %t254 = call ptr @fn_emit_alloca(ptr @.str11881) - store ptr %t254, ptr %t255 - call void @fn_emit(ptr @.str11882) - %t256 = load ptr, ptr %t244 - call void @fn_emit(ptr %t256) - call void @fn_emit(ptr @.str11883) - %t257 = load ptr, ptr %t255 - call void @fn_emit(ptr %t257) - call void @fn_emit(ptr @.str11884) - %t258 = load ptr, ptr %t0 - %t259 = getelementptr inbounds %Cmp_Node, ptr %t258, i32 0, i32 7 - %t260 = load ptr, ptr %t259 - %t261 = load i32, ptr %t193 - %t262 = getelementptr inbounds %LSlice, ptr %t260, i32 0, i32 0 - %t263 = load ptr, ptr %t262 - %t264 = getelementptr inbounds %LSlice, ptr %t260, i32 0, i32 1 - %t265 = load i32, ptr %t264 - %t266 = icmp ult i32 %t261, %t265 - br i1 %t266, label %ixok28, label %ixbad29 + %t250 = call ptr @fn_nreg() + store ptr %t250, ptr %t251 + %t252 = load ptr, ptr %t222 + %t253 = getelementptr inbounds %Cmp_Node, ptr %t252, i32 0, i32 1 + %t254 = load ptr, ptr %t253 + %t255 = call ptr @lp_str_concat(ptr @.str11986, ptr %t254) + %t256 = call ptr @fn_ecs_base(ptr %t255) + store ptr %t256, ptr %t257 + call void @fn_emit(ptr @.str11987) + %t258 = load ptr, ptr %t251 + call void @fn_emit(ptr %t258) + call void @fn_emit(ptr @.str11988) + %t259 = load ptr, ptr %t222 + %t260 = getelementptr inbounds %Cmp_Node, ptr %t259, i32 0, i32 1 + %t261 = load ptr, ptr %t260 + call void @fn_emit(ptr %t261) + call void @fn_emit(ptr @.str11989) + %t262 = load ptr, ptr %t257 + call void @fn_emit(ptr %t262) + call void @fn_emit(ptr @.str11990) + %t263 = load ptr, ptr %t75 + call void @fn_emit(ptr %t263) + call void @fn_emit(ptr @.str11991) + %t264 = call ptr @fn_emit_alloca(ptr @.str11992) + store ptr %t264, ptr %t265 + call void @fn_emit(ptr @.str11993) + %t266 = load ptr, ptr %t251 + call void @fn_emit(ptr %t266) + call void @fn_emit(ptr @.str11994) + %t267 = load ptr, ptr %t265 + call void @fn_emit(ptr %t267) + call void @fn_emit(ptr @.str11995) + %t268 = load ptr, ptr %t0 + %t269 = getelementptr inbounds %Cmp_Node, ptr %t268, i32 0, i32 7 + %t270 = load ptr, ptr %t269 + %t271 = load i32, ptr %t200 + %t272 = getelementptr inbounds %LSlice, ptr %t270, i32 0, i32 0 + %t273 = load ptr, ptr %t272 + %t274 = getelementptr inbounds %LSlice, ptr %t270, i32 0, i32 1 + %t275 = load i32, ptr %t274 + %t276 = icmp ult i32 %t271, %t275 + br i1 %t276, label %ixok28, label %ixbad29 ixbad29: - %t267 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t267, ptr @.fmt_bounds, ptr @.str11885, i32 %t261, i32 %t265) + %t277 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t277, ptr @.fmt_bounds, ptr @.str11996, i32 %t271, i32 %t275) call void @exit(i32 1) unreachable ixok28: - %t268 = getelementptr inbounds ptr, ptr %t263, i32 %t261 - %t269 = load ptr, ptr %t268 - %t270 = getelementptr inbounds %Cmp_Node, ptr %t269, i32 0, i32 1 - %t271 = load ptr, ptr %t270 - %t272 = load ptr, ptr %t255 - %t273 = load ptr, ptr %t215 - %t274 = getelementptr inbounds %Cmp_Node, ptr %t273, i32 0, i32 1 - %t275 = load ptr, ptr %t274 - call void @fn_loc_push(ptr %t271, ptr %t272, ptr %t275) - %t276 = load i32, ptr %t193 - %t277 = add i32 %t276, 1 - store i32 %t277, ptr %t193 + %t278 = getelementptr inbounds ptr, ptr %t273, i32 %t271 + %t279 = load ptr, ptr %t278 + %t280 = getelementptr inbounds %Cmp_Node, ptr %t279, i32 0, i32 1 + %t281 = load ptr, ptr %t280 + %t282 = load ptr, ptr %t265 + %t283 = load ptr, ptr %t222 + %t284 = getelementptr inbounds %Cmp_Node, ptr %t283, i32 0, i32 1 + %t285 = load ptr, ptr %t284 + call void @fn_loc_push(ptr %t281, ptr %t282, ptr %t285) + %t286 = load i32, ptr %t200 + %t287 = add i32 %t286, 1 + store i32 %t287, ptr %t200 br label %ifend27 ifend27: br label %ifend24 ifend24: - %t278 = load i32, ptr %t100 - %t279 = add i32 %t278, 1 - store i32 %t279, ptr %t100 + %t288 = load i32, ptr %t102 + %t289 = add i32 %t288, 1 + store i32 %t289, ptr %t102 br label %wcond15 wend17: - %t280 = load ptr, ptr %t0 - %t281 = getelementptr inbounds %Cmp_Node, ptr %t280, i32 0, i32 5 - %t282 = load ptr, ptr %t281 - %t283 = icmp ne ptr %t282, null - %t284 = zext i1 %t283 to i32 - %t285 = icmp ne i32 %t284, 0 - br i1 %t285, label %then30, label %ifend32 + %t290 = load ptr, ptr %t0 + %t291 = getelementptr inbounds %Cmp_Node, ptr %t290, i32 0, i32 5 + %t292 = load ptr, ptr %t291 + %t293 = icmp ne ptr %t292, null + %t294 = zext i1 %t293 to i32 + %t295 = icmp ne i32 %t294, 0 + br i1 %t295, label %then30, label %ifend32 then30: - %t286 = load ptr, ptr %t0 - %t287 = getelementptr inbounds %Cmp_Node, ptr %t286, i32 0, i32 5 - %t288 = load ptr, ptr %t287 - %t289 = call ptr @fn_emit_expr(ptr %t288) - store ptr %t289, ptr %t290 - %t291 = load ptr, ptr %t290 - %t292 = getelementptr inbounds %Cmp_Val, ptr %t291, i32 0, i32 0 - %t293 = load ptr, ptr %t292 - %t294 = call ptr @lp_str_concat(ptr @.str11886, ptr %t293) - %t295 = call ptr @lp_str_concat(ptr %t294, ptr @.str11887) - %t296 = call ptr @fn_emit_bind(ptr %t295) - store ptr %t296, ptr %t297 - %t298 = call ptr @fn_lbl(ptr @.str11888) - store ptr %t298, ptr %t299 - call void @fn_emit(ptr @.str11889) - %t300 = load ptr, ptr %t297 - call void @fn_emit(ptr %t300) - call void @fn_emit(ptr @.str11890) - %t301 = load ptr, ptr %t299 - call void @fn_emit(ptr %t301) - call void @fn_emit(ptr @.str11891) - %t302 = load ptr, ptr %t50 - call void @fn_emit(ptr %t302) - call void @fn_emit(ptr @.str11892) - %t303 = load ptr, ptr %t299 - call void @fn_emit(ptr %t303) - call void @fn_emit(ptr @.str11893) + %t296 = load ptr, ptr %t0 + %t297 = getelementptr inbounds %Cmp_Node, ptr %t296, i32 0, i32 5 + %t298 = load ptr, ptr %t297 + %t299 = call ptr @fn_emit_expr(ptr %t298) + store ptr %t299, ptr %t300 + %t301 = load ptr, ptr %t300 + %t302 = getelementptr inbounds %Cmp_Val, ptr %t301, i32 0, i32 0 + %t303 = load ptr, ptr %t302 + %t304 = call ptr @lp_str_concat(ptr @.str11997, ptr %t303) + %t305 = call ptr @lp_str_concat(ptr %t304, ptr @.str11998) + %t306 = call ptr @fn_emit_bind(ptr %t305) + store ptr %t306, ptr %t307 + %t308 = call ptr @fn_lbl(ptr @.str11999) + store ptr %t308, ptr %t309 + call void @fn_emit(ptr @.str12000) + %t310 = load ptr, ptr %t307 + call void @fn_emit(ptr %t310) + call void @fn_emit(ptr @.str12001) + %t311 = load ptr, ptr %t309 + call void @fn_emit(ptr %t311) + call void @fn_emit(ptr @.str12002) + %t312 = load ptr, ptr %t50 + call void @fn_emit(ptr %t312) + call void @fn_emit(ptr @.str12003) + %t313 = load ptr, ptr %t309 + call void @fn_emit(ptr %t313) + call void @fn_emit(ptr @.str12004) br label %ifend32 ifend32: - %t304 = load ptr, ptr %t50 - %t305 = load ptr, ptr %t52 - call void @fn_loop_push(ptr %t304, ptr %t305) - %t306 = load ptr, ptr %t0 - %t307 = getelementptr inbounds %Cmp_Node, ptr %t306, i32 0, i32 4 - %t308 = load ptr, ptr %t307 - call void @fn_emit_block(ptr %t308) - call void @fn_loop_pop() - %t309 = load i32, ptr %t192 - store i32 %t309, ptr @g_nloc - %t310 = load i32, ptr @g_g_term - %t311 = icmp eq i32 %t310, 0 - %t312 = zext i1 %t311 to i32 - %t313 = icmp ne i32 %t312, 0 - br i1 %t313, label %then33, label %ifend35 -then33: - call void @fn_emit(ptr @.str11894) %t314 = load ptr, ptr %t50 - call void @fn_emit(ptr %t314) - call void @fn_emit(ptr @.str11895) + %t315 = load ptr, ptr %t52 + call void @fn_loop_push(ptr %t314, ptr %t315) + %t316 = load ptr, ptr %t0 + %t317 = getelementptr inbounds %Cmp_Node, ptr %t316, i32 0, i32 4 + %t318 = load ptr, ptr %t317 + call void @fn_emit_block(ptr %t318) + call void @fn_loop_pop() + %t319 = load i32, ptr %t199 + store i32 %t319, ptr @g_nloc + %t320 = load i32, ptr @g_g_term + %t321 = icmp eq i32 %t320, 0 + %t322 = zext i1 %t321 to i32 + %t323 = icmp ne i32 %t322, 0 + br i1 %t323, label %then33, label %ifend35 +then33: + call void @fn_emit(ptr @.str12005) + %t324 = load ptr, ptr %t50 + call void @fn_emit(ptr %t324) + call void @fn_emit(ptr @.str12006) br label %ifend35 ifend35: - %t315 = load ptr, ptr %t50 - call void @fn_emit(ptr %t315) - call void @fn_emit(ptr @.str11896) - %t316 = load ptr, ptr %t4 - %t317 = call ptr @lp_str_concat(ptr @.str11897, ptr %t316) - %t318 = call ptr @fn_emit_bind(ptr %t317) - store ptr %t318, ptr %t319 - %t320 = load ptr, ptr %t319 - %t321 = call ptr @lp_str_concat(ptr @.str11898, ptr %t320) - %t322 = call ptr @lp_str_concat(ptr %t321, ptr @.str11899) - %t323 = call ptr @fn_emit_bind(ptr %t322) - store ptr %t323, ptr %t324 - %t325 = load ptr, ptr %t324 + %t325 = load ptr, ptr %t50 + call void @fn_emit(ptr %t325) + call void @fn_emit(ptr @.str12007) %t326 = load ptr, ptr %t4 - call void @fn_store_at(ptr @.str11900, ptr %t325, ptr %t326) - call void @fn_emit(ptr @.str11901) - %t327 = load ptr, ptr %t46 - call void @fn_emit(ptr %t327) - call void @fn_emit(ptr @.str11902) - %t328 = load ptr, ptr %t52 - call void @fn_emit(ptr %t328) - call void @fn_emit(ptr @.str11903) + %t327 = call ptr @lp_str_concat(ptr @.str12008, ptr %t326) + %t328 = call ptr @fn_emit_bind(ptr %t327) + store ptr %t328, ptr %t329 + %t330 = load ptr, ptr %t329 + %t331 = call ptr @lp_str_concat(ptr @.str12009, ptr %t330) + %t332 = call ptr @lp_str_concat(ptr %t331, ptr @.str12010) + %t333 = call ptr @fn_emit_bind(ptr %t332) + store ptr %t333, ptr %t334 + %t335 = load ptr, ptr %t334 + %t336 = load ptr, ptr %t4 + call void @fn_store_at(ptr @.str12011, ptr %t335, ptr %t336) + call void @fn_emit(ptr @.str12012) + %t337 = load ptr, ptr %t46 + call void @fn_emit(ptr %t337) + call void @fn_emit(ptr @.str12013) + %t338 = load ptr, ptr %t52 + call void @fn_emit(ptr %t338) + call void @fn_emit(ptr @.str12014) store i32 0, ptr @g_g_term - %t329 = load i32, ptr @g_nself - %t330 = sub i32 %t329, 1 - store i32 %t330, ptr @g_nself + %t339 = load i32, ptr @g_nself + %t340 = sub i32 %t339, 1 + store i32 %t340, ptr @g_nself br label %ret ret: ret void @@ -163039,15 +163646,15 @@ entry: %t3 = alloca ptr store ptr %arg_e, ptr %t0 store ptr %arg_body, ptr %t1 - %t2 = call ptr @fn_emit_alloca(ptr @.str11904) + %t2 = call ptr @fn_emit_alloca(ptr @.str12015) store ptr %t2, ptr %t3 - call void @fn_emit(ptr @.str11905) + call void @fn_emit(ptr @.str12016) %t4 = load ptr, ptr %t0 call void @fn_emit(ptr %t4) - call void @fn_emit(ptr @.str11906) + call void @fn_emit(ptr @.str12017) %t5 = load ptr, ptr %t3 call void @fn_emit(ptr %t5) - call void @fn_emit(ptr @.str11907) + call void @fn_emit(ptr @.str12018) %t6 = load i32, ptr @g_nself %t7 = load ptr, ptr @g_self_stk %t8 = getelementptr inbounds %LSlice, ptr %t7, i32 0, i32 1 @@ -163067,7 +163674,7 @@ then0: br i1 %t19, label %ixok3, label %ixbad4 ixbad4: %t20 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str11908, i32 %t14, i32 %t18) + call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str12019, i32 %t14, i32 %t18) call void @exit(i32 1) unreachable ixok3: @@ -163126,25 +163733,27 @@ entry: %t2 = alloca ptr %t4 = alloca ptr %t7 = alloca ptr - %t15 = alloca ptr - %t22 = alloca ptr - %t28 = alloca i32 - %t50 = alloca ptr - %t52 = alloca ptr - %t62 = alloca ptr - %t65 = alloca ptr - %t76 = alloca ptr - %t91 = alloca i32 - %t113 = alloca ptr - %t119 = alloca i32 - %t125 = alloca ptr - %t135 = alloca ptr + %t17 = alloca ptr + %t19 = alloca ptr + %t25 = alloca ptr + %t29 = alloca ptr + %t34 = alloca i32 + %t56 = alloca ptr + %t58 = alloca ptr + %t68 = alloca ptr + %t71 = alloca ptr + %t82 = alloca ptr + %t97 = alloca i32 + %t119 = alloca ptr + %t125 = alloca i32 + %t131 = alloca ptr %t141 = alloca ptr - %t145 = alloca ptr - %t154 = alloca ptr - %t160 = alloca i32 - %t162 = alloca ptr - %t174 = alloca ptr + %t147 = alloca ptr + %t151 = alloca ptr + %t160 = alloca ptr + %t166 = alloca i32 + %t168 = alloca ptr + %t180 = alloca ptr store ptr %arg_e, ptr %t0 store ptr %arg_comp, ptr %t1 store ptr %arg_rec, ptr %t2 @@ -163160,291 +163769,293 @@ entry: br i1 %t11, label %then0, label %ifend2 then0: %t12 = load ptr, ptr %t1 - %t13 = call ptr @lp_str_concat(ptr @.str11909, ptr %t12) + %t13 = call ptr @lp_str_concat(ptr @.str12020, ptr %t12) call void @fn_perr(ptr %t13) br label %ifend2 ifend2: - %t14 = call ptr @fn_nreg() - store ptr %t14, ptr %t15 - call void @fn_emit(ptr @.str11910) - %t16 = load ptr, ptr %t15 - call void @fn_emit(ptr %t16) - call void @fn_emit(ptr @.str11911) - %t17 = load ptr, ptr %t4 - call void @fn_emit(ptr %t17) - call void @fn_emit(ptr @.str11912) - %t18 = load ptr, ptr %t1 - call void @fn_emit(ptr %t18) - call void @fn_emit(ptr @.str11913) - %t19 = load ptr, ptr %t0 - call void @fn_emit(ptr %t19) - call void @fn_emit(ptr @.str11914) - call void @fn_emit(ptr @.str11915) - %t20 = load ptr, ptr %t15 + %t14 = load ptr, ptr %t1 + %t15 = call ptr @lp_str_concat(ptr @.str12021, ptr %t14) + %t16 = call ptr @fn_ecs_base(ptr %t15) + store ptr %t16, ptr %t17 + %t18 = call ptr @fn_nreg() + store ptr %t18, ptr %t19 + call void @fn_emit(ptr @.str12022) + %t20 = load ptr, ptr %t19 call void @fn_emit(ptr %t20) - call void @fn_emit(ptr @.str11916) - %t21 = call ptr @fn_nreg() - store ptr %t21, ptr %t22 - call void @fn_emit(ptr @.str11917) - %t23 = load ptr, ptr %t22 + call void @fn_emit(ptr @.str12023) + %t21 = load ptr, ptr %t17 + call void @fn_emit(ptr %t21) + call void @fn_emit(ptr @.str12024) + %t22 = load ptr, ptr %t0 + call void @fn_emit(ptr %t22) + call void @fn_emit(ptr @.str12025) + call void @fn_emit(ptr @.str12026) + %t23 = load ptr, ptr %t19 call void @fn_emit(ptr %t23) - call void @fn_emit(ptr @.str11918) - %t24 = load ptr, ptr %t4 - call void @fn_emit(ptr %t24) - call void @fn_emit(ptr @.str11919) - %t25 = load ptr, ptr %t1 - call void @fn_emit(ptr %t25) - call void @fn_emit(ptr @.str11920) + call void @fn_emit(ptr @.str12027) + %t24 = call ptr @fn_nreg() + store ptr %t24, ptr %t25 %t26 = load ptr, ptr %t1 - call void @fn_emit(ptr %t26) - call void @fn_emit(ptr @.str11921) - %t27 = load ptr, ptr %t0 - call void @fn_emit(ptr %t27) - call void @fn_emit(ptr @.str11922) - store i32 0, ptr %t28 + %t27 = call ptr @lp_str_concat(ptr @.str12028, ptr %t26) + %t28 = call ptr @fn_ecs_base(ptr %t27) + store ptr %t28, ptr %t29 + call void @fn_emit(ptr @.str12029) + %t30 = load ptr, ptr %t25 + call void @fn_emit(ptr %t30) + call void @fn_emit(ptr @.str12030) + %t31 = load ptr, ptr %t1 + call void @fn_emit(ptr %t31) + call void @fn_emit(ptr @.str12031) + %t32 = load ptr, ptr %t29 + call void @fn_emit(ptr %t32) + call void @fn_emit(ptr @.str12032) + %t33 = load ptr, ptr %t0 + call void @fn_emit(ptr %t33) + call void @fn_emit(ptr @.str12033) + store i32 0, ptr %t34 br label %wcond3 wcond3: - %t29 = load i32, ptr %t28 - %t30 = load ptr, ptr %t7 - %t31 = getelementptr inbounds %Cmp_Node, ptr %t30, i32 0, i32 7 - %t32 = load ptr, ptr %t31 - %t33 = getelementptr inbounds %LSlice, ptr %t32, i32 0, i32 1 - %t34 = load i32, ptr %t33 - %t35 = icmp slt i32 %t29, %t34 - %t36 = zext i1 %t35 to i32 - %t37 = icmp ne i32 %t36, 0 - br i1 %t37, label %wbody4, label %wend5 + %t35 = load i32, ptr %t34 + %t36 = load ptr, ptr %t7 + %t37 = getelementptr inbounds %Cmp_Node, ptr %t36, i32 0, i32 7 + %t38 = load ptr, ptr %t37 + %t39 = getelementptr inbounds %LSlice, ptr %t38, i32 0, i32 1 + %t40 = load i32, ptr %t39 + %t41 = icmp slt i32 %t35, %t40 + %t42 = zext i1 %t41 to i32 + %t43 = icmp ne i32 %t42, 0 + br i1 %t43, label %wbody4, label %wend5 wbody4: - %t38 = load ptr, ptr %t7 - %t39 = getelementptr inbounds %Cmp_Node, ptr %t38, i32 0, i32 7 - %t40 = load ptr, ptr %t39 - %t41 = load i32, ptr %t28 - %t42 = getelementptr inbounds %LSlice, ptr %t40, i32 0, i32 0 - %t43 = load ptr, ptr %t42 - %t44 = getelementptr inbounds %LSlice, ptr %t40, i32 0, i32 1 - %t45 = load i32, ptr %t44 - %t46 = icmp ult i32 %t41, %t45 - br i1 %t46, label %ixok6, label %ixbad7 + %t44 = load ptr, ptr %t7 + %t45 = getelementptr inbounds %Cmp_Node, ptr %t44, i32 0, i32 7 + %t46 = load ptr, ptr %t45 + %t47 = load i32, ptr %t34 + %t48 = getelementptr inbounds %LSlice, ptr %t46, i32 0, i32 0 + %t49 = load ptr, ptr %t48 + %t50 = getelementptr inbounds %LSlice, ptr %t46, i32 0, i32 1 + %t51 = load i32, ptr %t50 + %t52 = icmp ult i32 %t47, %t51 + br i1 %t52, label %ixok6, label %ixbad7 ixbad7: - %t47 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t47, ptr @.fmt_bounds, ptr @.str11923, i32 %t41, i32 %t45) + %t53 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t53, ptr @.fmt_bounds, ptr @.str12034, i32 %t47, i32 %t51) call void @exit(i32 1) unreachable ixok6: - %t48 = getelementptr inbounds ptr, ptr %t43, i32 %t41 - %t49 = load ptr, ptr %t48 - store ptr %t49, ptr %t50 - %t51 = call ptr @fn_nreg() - store ptr %t51, ptr %t52 - call void @fn_emit(ptr @.str11924) - %t53 = load ptr, ptr %t52 - call void @fn_emit(ptr %t53) - call void @fn_emit(ptr @.str11925) - %t54 = load ptr, ptr %t1 - call void @fn_emit(ptr %t54) - call void @fn_emit(ptr @.str11926) - %t55 = load ptr, ptr %t22 - call void @fn_emit(ptr %t55) - call void @fn_emit(ptr @.str11927) - %t56 = load i32, ptr %t28 - %t57 = call ptr @fn_itoa(i32 %t56) - call void @fn_emit(ptr %t57) - call void @fn_emit(ptr @.str11928) - %t58 = load ptr, ptr %t50 - %t59 = getelementptr inbounds %Cmp_Node, ptr %t58, i32 0, i32 3 - %t60 = load ptr, ptr %t59 - %t61 = call ptr @fn_llty(ptr %t60) - store ptr %t61, ptr %t62 - %t63 = load ptr, ptr %t62 - %t64 = call ptr @fn_zero_of(ptr %t63) - store ptr %t64, ptr %t65 - %t66 = load ptr, ptr %t50 - %t67 = getelementptr inbounds %Cmp_Node, ptr %t66, i32 0, i32 4 - %t68 = load ptr, ptr %t67 - %t69 = icmp ne ptr %t68, null - %t70 = zext i1 %t69 to i32 - %t71 = icmp ne i32 %t70, 0 - br i1 %t71, label %then8, label %ifend10 -then8: - %t72 = load ptr, ptr %t50 + %t54 = getelementptr inbounds ptr, ptr %t49, i32 %t47 + %t55 = load ptr, ptr %t54 + store ptr %t55, ptr %t56 + %t57 = call ptr @fn_nreg() + store ptr %t57, ptr %t58 + call void @fn_emit(ptr @.str12035) + %t59 = load ptr, ptr %t58 + call void @fn_emit(ptr %t59) + call void @fn_emit(ptr @.str12036) + %t60 = load ptr, ptr %t1 + call void @fn_emit(ptr %t60) + call void @fn_emit(ptr @.str12037) + %t61 = load ptr, ptr %t25 + call void @fn_emit(ptr %t61) + call void @fn_emit(ptr @.str12038) + %t62 = load i32, ptr %t34 + %t63 = call ptr @fn_itoa(i32 %t62) + call void @fn_emit(ptr %t63) + call void @fn_emit(ptr @.str12039) + %t64 = load ptr, ptr %t56 + %t65 = getelementptr inbounds %Cmp_Node, ptr %t64, i32 0, i32 3 + %t66 = load ptr, ptr %t65 + %t67 = call ptr @fn_llty(ptr %t66) + store ptr %t67, ptr %t68 + %t69 = load ptr, ptr %t68 + %t70 = call ptr @fn_zero_of(ptr %t69) + store ptr %t70, ptr %t71 + %t72 = load ptr, ptr %t56 %t73 = getelementptr inbounds %Cmp_Node, ptr %t72, i32 0, i32 4 %t74 = load ptr, ptr %t73 - %t75 = call ptr @fn_emit_expr(ptr %t74) - store ptr %t75, ptr %t76 - %t77 = load ptr, ptr %t76 - %t78 = load ptr, ptr %t50 - %t79 = getelementptr inbounds %Cmp_Node, ptr %t78, i32 0, i32 3 + %t75 = icmp ne ptr %t74, null + %t76 = zext i1 %t75 to i32 + %t77 = icmp ne i32 %t76, 0 + br i1 %t77, label %then8, label %ifend10 +then8: + %t78 = load ptr, ptr %t56 + %t79 = getelementptr inbounds %Cmp_Node, ptr %t78, i32 0, i32 4 %t80 = load ptr, ptr %t79 - %t81 = call ptr @fn_coerce_code(ptr %t77, ptr %t80) - store ptr %t81, ptr %t65 + %t81 = call ptr @fn_emit_expr(ptr %t80) + store ptr %t81, ptr %t82 + %t83 = load ptr, ptr %t82 + %t84 = load ptr, ptr %t56 + %t85 = getelementptr inbounds %Cmp_Node, ptr %t84, i32 0, i32 3 + %t86 = load ptr, ptr %t85 + %t87 = call ptr @fn_coerce_code(ptr %t83, ptr %t86) + store ptr %t87, ptr %t71 br label %ifend10 ifend10: - call void @fn_emit(ptr @.str11929) - %t82 = load ptr, ptr %t62 - call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str11930) - %t83 = load ptr, ptr %t65 - call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str11931) - %t84 = load ptr, ptr %t52 - call void @fn_emit(ptr %t84) - call void @fn_emit(ptr @.str11932) - %t85 = load i32, ptr %t28 - %t86 = add i32 %t85, 1 - store i32 %t86, ptr %t28 + call void @fn_emit(ptr @.str12040) + %t88 = load ptr, ptr %t68 + call void @fn_emit(ptr %t88) + call void @fn_emit(ptr @.str12041) + %t89 = load ptr, ptr %t71 + call void @fn_emit(ptr %t89) + call void @fn_emit(ptr @.str12042) + %t90 = load ptr, ptr %t58 + call void @fn_emit(ptr %t90) + call void @fn_emit(ptr @.str12043) + %t91 = load i32, ptr %t34 + %t92 = add i32 %t91, 1 + store i32 %t92, ptr %t34 br label %wcond3 wend5: - %t87 = load ptr, ptr %t2 - %t88 = icmp ne ptr %t87, null - %t89 = zext i1 %t88 to i32 - %t90 = icmp ne i32 %t89, 0 - br i1 %t90, label %then11, label %ifend13 + %t93 = load ptr, ptr %t2 + %t94 = icmp ne ptr %t93, null + %t95 = zext i1 %t94 to i32 + %t96 = icmp ne i32 %t95, 0 + br i1 %t96, label %then11, label %ifend13 then11: - store i32 0, ptr %t91 + store i32 0, ptr %t97 br label %wcond14 wcond14: - %t92 = load i32, ptr %t91 - %t93 = load ptr, ptr %t2 - %t94 = getelementptr inbounds %Cmp_Node, ptr %t93, i32 0, i32 7 - %t95 = load ptr, ptr %t94 - %t96 = getelementptr inbounds %LSlice, ptr %t95, i32 0, i32 1 - %t97 = load i32, ptr %t96 - %t98 = icmp slt i32 %t92, %t97 - %t99 = zext i1 %t98 to i32 - %t100 = icmp ne i32 %t99, 0 - br i1 %t100, label %wbody15, label %wend16 + %t98 = load i32, ptr %t97 + %t99 = load ptr, ptr %t2 + %t100 = getelementptr inbounds %Cmp_Node, ptr %t99, i32 0, i32 7 + %t101 = load ptr, ptr %t100 + %t102 = getelementptr inbounds %LSlice, ptr %t101, i32 0, i32 1 + %t103 = load i32, ptr %t102 + %t104 = icmp slt i32 %t98, %t103 + %t105 = zext i1 %t104 to i32 + %t106 = icmp ne i32 %t105, 0 + br i1 %t106, label %wbody15, label %wend16 wbody15: - %t101 = load ptr, ptr %t2 - %t102 = getelementptr inbounds %Cmp_Node, ptr %t101, i32 0, i32 7 - %t103 = load ptr, ptr %t102 - %t104 = load i32, ptr %t91 - %t105 = getelementptr inbounds %LSlice, ptr %t103, i32 0, i32 0 - %t106 = load ptr, ptr %t105 - %t107 = getelementptr inbounds %LSlice, ptr %t103, i32 0, i32 1 - %t108 = load i32, ptr %t107 - %t109 = icmp ult i32 %t104, %t108 - br i1 %t109, label %ixok17, label %ixbad18 + %t107 = load ptr, ptr %t2 + %t108 = getelementptr inbounds %Cmp_Node, ptr %t107, i32 0, i32 7 + %t109 = load ptr, ptr %t108 + %t110 = load i32, ptr %t97 + %t111 = getelementptr inbounds %LSlice, ptr %t109, i32 0, i32 0 + %t112 = load ptr, ptr %t111 + %t113 = getelementptr inbounds %LSlice, ptr %t109, i32 0, i32 1 + %t114 = load i32, ptr %t113 + %t115 = icmp ult i32 %t110, %t114 + br i1 %t115, label %ixok17, label %ixbad18 ixbad18: - %t110 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t110, ptr @.fmt_bounds, ptr @.str11933, i32 %t104, i32 %t108) + %t116 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t116, ptr @.fmt_bounds, ptr @.str12044, i32 %t110, i32 %t114) call void @exit(i32 1) unreachable ixok17: - %t111 = getelementptr inbounds ptr, ptr %t106, i32 %t104 - %t112 = load ptr, ptr %t111 - store ptr %t112, ptr %t113 - %t114 = load ptr, ptr %t7 - %t115 = load ptr, ptr %t113 - %t116 = getelementptr inbounds %Cmp_Node, ptr %t115, i32 0, i32 1 - %t117 = load ptr, ptr %t116 - %t118 = call i32 @fn_field_index(ptr %t114, ptr %t117) - store i32 %t118, ptr %t119 - %t120 = load i32, ptr %t119 - %t121 = icmp sge i32 %t120, 0 - %t122 = zext i1 %t121 to i32 - %t123 = icmp ne i32 %t122, 0 - br i1 %t123, label %then19, label %ifend21 + %t117 = getelementptr inbounds ptr, ptr %t112, i32 %t110 + %t118 = load ptr, ptr %t117 + store ptr %t118, ptr %t119 + %t120 = load ptr, ptr %t7 + %t121 = load ptr, ptr %t119 + %t122 = getelementptr inbounds %Cmp_Node, ptr %t121, i32 0, i32 1 + %t123 = load ptr, ptr %t122 + %t124 = call i32 @fn_field_index(ptr %t120, ptr %t123) + store i32 %t124, ptr %t125 + %t126 = load i32, ptr %t125 + %t127 = icmp sge i32 %t126, 0 + %t128 = zext i1 %t127 to i32 + %t129 = icmp ne i32 %t128, 0 + br i1 %t129, label %then19, label %ifend21 then19: - %t124 = call ptr @fn_nreg() - store ptr %t124, ptr %t125 - call void @fn_emit(ptr @.str11934) - %t126 = load ptr, ptr %t125 - call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str11935) - %t127 = load ptr, ptr %t1 - call void @fn_emit(ptr %t127) - call void @fn_emit(ptr @.str11936) - %t128 = load ptr, ptr %t22 - call void @fn_emit(ptr %t128) - call void @fn_emit(ptr @.str11937) - %t129 = load i32, ptr %t119 - %t130 = call ptr @fn_itoa(i32 %t129) - call void @fn_emit(ptr %t130) - call void @fn_emit(ptr @.str11938) - %t131 = load ptr, ptr %t113 - %t132 = getelementptr inbounds %Cmp_Node, ptr %t131, i32 0, i32 4 - %t133 = load ptr, ptr %t132 - %t134 = call ptr @fn_emit_expr(ptr %t133) - store ptr %t134, ptr %t135 - %t136 = load ptr, ptr %t7 - %t137 = load ptr, ptr %t113 - %t138 = getelementptr inbounds %Cmp_Node, ptr %t137, i32 0, i32 1 + %t130 = call ptr @fn_nreg() + store ptr %t130, ptr %t131 + call void @fn_emit(ptr @.str12045) + %t132 = load ptr, ptr %t131 + call void @fn_emit(ptr %t132) + call void @fn_emit(ptr @.str12046) + %t133 = load ptr, ptr %t1 + call void @fn_emit(ptr %t133) + call void @fn_emit(ptr @.str12047) + %t134 = load ptr, ptr %t25 + call void @fn_emit(ptr %t134) + call void @fn_emit(ptr @.str12048) + %t135 = load i32, ptr %t125 + %t136 = call ptr @fn_itoa(i32 %t135) + call void @fn_emit(ptr %t136) + call void @fn_emit(ptr @.str12049) + %t137 = load ptr, ptr %t119 + %t138 = getelementptr inbounds %Cmp_Node, ptr %t137, i32 0, i32 4 %t139 = load ptr, ptr %t138 - %t140 = call ptr @fn_field_type(ptr %t136, ptr %t139) + %t140 = call ptr @fn_emit_expr(ptr %t139) store ptr %t140, ptr %t141 - %t142 = load ptr, ptr %t135 - %t143 = load ptr, ptr %t141 - %t144 = call ptr @fn_coerce_code(ptr %t142, ptr %t143) - store ptr %t144, ptr %t145 - call void @fn_emit(ptr @.str11939) - %t146 = load ptr, ptr %t141 - %t147 = call ptr @fn_llty(ptr %t146) - call void @fn_emit(ptr %t147) - call void @fn_emit(ptr @.str11940) - %t148 = load ptr, ptr %t145 - call void @fn_emit(ptr %t148) - call void @fn_emit(ptr @.str11941) - %t149 = load ptr, ptr %t125 - call void @fn_emit(ptr %t149) - call void @fn_emit(ptr @.str11942) + %t142 = load ptr, ptr %t7 + %t143 = load ptr, ptr %t119 + %t144 = getelementptr inbounds %Cmp_Node, ptr %t143, i32 0, i32 1 + %t145 = load ptr, ptr %t144 + %t146 = call ptr @fn_field_type(ptr %t142, ptr %t145) + store ptr %t146, ptr %t147 + %t148 = load ptr, ptr %t141 + %t149 = load ptr, ptr %t147 + %t150 = call ptr @fn_coerce_code(ptr %t148, ptr %t149) + store ptr %t150, ptr %t151 + call void @fn_emit(ptr @.str12050) + %t152 = load ptr, ptr %t147 + %t153 = call ptr @fn_llty(ptr %t152) + call void @fn_emit(ptr %t153) + call void @fn_emit(ptr @.str12051) + %t154 = load ptr, ptr %t151 + call void @fn_emit(ptr %t154) + call void @fn_emit(ptr @.str12052) + %t155 = load ptr, ptr %t131 + call void @fn_emit(ptr %t155) + call void @fn_emit(ptr @.str12053) br label %ifend21 ifend21: - %t150 = load i32, ptr %t91 - %t151 = add i32 %t150, 1 - store i32 %t151, ptr %t91 + %t156 = load i32, ptr %t97 + %t157 = add i32 %t156, 1 + store i32 %t157, ptr %t97 br label %wcond14 wend16: br label %ifend13 ifend13: - %t152 = load ptr, ptr %t1 - %t153 = call ptr @fn_onattach_body(ptr %t152) - store ptr %t153, ptr %t154 - %t155 = load ptr, ptr %t154 - %t156 = icmp ne ptr %t155, null - %t157 = zext i1 %t156 to i32 - %t158 = icmp ne i32 %t157, 0 - br i1 %t158, label %then22, label %ifend24 + %t158 = load ptr, ptr %t1 + %t159 = call ptr @fn_onattach_body(ptr %t158) + store ptr %t159, ptr %t160 + %t161 = load ptr, ptr %t160 + %t162 = icmp ne ptr %t161, null + %t163 = zext i1 %t162 to i32 + %t164 = icmp ne i32 %t163, 0 + br i1 %t164, label %then22, label %ifend24 then22: - %t159 = load i32, ptr @g_nloc - store i32 %t159, ptr %t160 - %t161 = call ptr @fn_emit_alloca(ptr @.str11943) - store ptr %t161, ptr %t162 - call void @fn_emit(ptr @.str11944) - %t163 = load ptr, ptr %t22 - call void @fn_emit(ptr %t163) - call void @fn_emit(ptr @.str11945) - %t164 = load ptr, ptr %t162 - call void @fn_emit(ptr %t164) - call void @fn_emit(ptr @.str11946) - %t165 = load ptr, ptr %t1 - %t166 = load ptr, ptr %t162 - %t167 = load ptr, ptr %t1 - call void @fn_loc_push(ptr %t165, ptr %t166, ptr %t167) - %t168 = load ptr, ptr %t0 - %t169 = load ptr, ptr %t154 - call void @fn_emit_hook_with_self(ptr %t168, ptr %t169) - %t170 = load i32, ptr %t160 - store i32 %t170, ptr @g_nloc + %t165 = load i32, ptr @g_nloc + store i32 %t165, ptr %t166 + %t167 = call ptr @fn_emit_alloca(ptr @.str12054) + store ptr %t167, ptr %t168 + call void @fn_emit(ptr @.str12055) + %t169 = load ptr, ptr %t25 + call void @fn_emit(ptr %t169) + call void @fn_emit(ptr @.str12056) + %t170 = load ptr, ptr %t168 + call void @fn_emit(ptr %t170) + call void @fn_emit(ptr @.str12057) + %t171 = load ptr, ptr %t1 + %t172 = load ptr, ptr %t168 + %t173 = load ptr, ptr %t1 + call void @fn_loc_push(ptr %t171, ptr %t172, ptr %t173) + %t174 = load ptr, ptr %t0 + %t175 = load ptr, ptr %t160 + call void @fn_emit_hook_with_self(ptr %t174, ptr %t175) + %t176 = load i32, ptr %t166 + store i32 %t176, ptr @g_nloc br label %ifend24 ifend24: - %t171 = load ptr, ptr %t1 - %t172 = call ptr @lp_str_concat(ptr @.str11947, ptr %t171) - %t173 = call ptr @lp_str_concat(ptr %t172, ptr @.str11948) - store ptr %t173, ptr %t174 - %t175 = load ptr, ptr %t174 - %t176 = call ptr @fn_find_event(ptr %t175) - %t177 = icmp ne ptr %t176, null - %t178 = zext i1 %t177 to i32 - %t179 = icmp ne i32 %t178, 0 - br i1 %t179, label %then25, label %ifend27 + %t177 = load ptr, ptr %t1 + %t178 = call ptr @lp_str_concat(ptr @.str12058, ptr %t177) + %t179 = call ptr @lp_str_concat(ptr %t178, ptr @.str12059) + store ptr %t179, ptr %t180 + %t181 = load ptr, ptr %t180 + %t182 = call ptr @fn_find_event(ptr %t181) + %t183 = icmp ne ptr %t182, null + %t184 = zext i1 %t183 to i32 + %t185 = icmp ne i32 %t184, 0 + br i1 %t185, label %then25, label %ifend27 then25: - call void @fn_emit(ptr @.str11949) - %t180 = load ptr, ptr %t174 - call void @fn_emit(ptr %t180) - call void @fn_emit(ptr @.str11950) - %t181 = load ptr, ptr %t0 - call void @fn_emit(ptr %t181) - call void @fn_emit(ptr @.str11951) + call void @fn_emit(ptr @.str12060) + %t186 = load ptr, ptr %t180 + call void @fn_emit(ptr %t186) + call void @fn_emit(ptr @.str12061) + %t187 = load ptr, ptr %t0 + call void @fn_emit(ptr %t187) + call void @fn_emit(ptr @.str12062) br label %ifend27 ifend27: br label %ret @@ -163460,7 +164071,8 @@ entry: %t4 = alloca i32 %t28 = alloca ptr %t30 = alloca ptr - %t37 = alloca ptr + %t34 = alloca ptr + %t40 = alloca ptr store ptr %arg_model, ptr %t0 store ptr %arg_e, ptr %t1 %t2 = call ptr @fn_itoa(i32 1024) @@ -163491,7 +164103,7 @@ wbody1: br i1 %t22, label %ixok3, label %ixbad4 ixbad4: %t23 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str11952, i32 %t17, i32 %t21) + call i32 (ptr, ptr, ...) @fprintf(ptr %t23, ptr @.fmt_bounds, ptr @.str12063, i32 %t17, i32 %t21) call void @exit(i32 1) unreachable ixok3: @@ -163502,38 +164114,39 @@ ixok3: store ptr %t27, ptr %t28 %t29 = call ptr @fn_nreg() store ptr %t29, ptr %t30 - call void @fn_emit(ptr @.str11953) - %t31 = load ptr, ptr %t30 - call void @fn_emit(ptr %t31) - call void @fn_emit(ptr @.str11954) - %t32 = load ptr, ptr %t3 - call void @fn_emit(ptr %t32) - call void @fn_emit(ptr @.str11955) - %t33 = load ptr, ptr %t28 - call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str11956) - %t34 = load ptr, ptr %t28 - call void @fn_emit(ptr %t34) - call void @fn_emit(ptr @.str11957) - %t35 = load ptr, ptr %t1 + %t31 = load ptr, ptr %t28 + %t32 = call ptr @lp_str_concat(ptr @.str12064, ptr %t31) + %t33 = call ptr @fn_ecs_base(ptr %t32) + store ptr %t33, ptr %t34 + call void @fn_emit(ptr @.str12065) + %t35 = load ptr, ptr %t30 call void @fn_emit(ptr %t35) - call void @fn_emit(ptr @.str11958) - %t36 = call ptr @fn_emit_alloca(ptr @.str11959) - store ptr %t36, ptr %t37 - call void @fn_emit(ptr @.str11960) - %t38 = load ptr, ptr %t30 + call void @fn_emit(ptr @.str12066) + %t36 = load ptr, ptr %t28 + call void @fn_emit(ptr %t36) + call void @fn_emit(ptr @.str12067) + %t37 = load ptr, ptr %t34 + call void @fn_emit(ptr %t37) + call void @fn_emit(ptr @.str12068) + %t38 = load ptr, ptr %t1 call void @fn_emit(ptr %t38) - call void @fn_emit(ptr @.str11961) - %t39 = load ptr, ptr %t37 - call void @fn_emit(ptr %t39) - call void @fn_emit(ptr @.str11962) - %t40 = load ptr, ptr %t28 - %t41 = load ptr, ptr %t37 - %t42 = load ptr, ptr %t28 - call void @fn_loc_push(ptr %t40, ptr %t41, ptr %t42) - %t43 = load i32, ptr %t4 - %t44 = add i32 %t43, 1 - store i32 %t44, ptr %t4 + call void @fn_emit(ptr @.str12069) + %t39 = call ptr @fn_emit_alloca(ptr @.str12070) + store ptr %t39, ptr %t40 + call void @fn_emit(ptr @.str12071) + %t41 = load ptr, ptr %t30 + call void @fn_emit(ptr %t41) + call void @fn_emit(ptr @.str12072) + %t42 = load ptr, ptr %t40 + call void @fn_emit(ptr %t42) + call void @fn_emit(ptr @.str12073) + %t43 = load ptr, ptr %t28 + %t44 = load ptr, ptr %t40 + %t45 = load ptr, ptr %t28 + call void @fn_loc_push(ptr %t43, ptr %t44, ptr %t45) + %t46 = load i32, ptr %t4 + %t47 = add i32 %t46, 1 + store i32 %t47, ptr %t4 br label %wcond0 wend2: br label %ret @@ -163584,7 +164197,7 @@ wbody4: br i1 %t24, label %ixok6, label %ixbad7 ixbad7: %t25 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str11963, i32 %t19, i32 %t23) + call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str12074, i32 %t19, i32 %t23) call void @exit(i32 1) unreachable ixok6: @@ -163609,7 +164222,7 @@ then8: br i1 %t41, label %ixok11, label %ixbad12 ixbad12: %t42 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str11964, i32 %t36, i32 %t40) + call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str12075, i32 %t36, i32 %t40) call void @exit(i32 1) unreachable ixok11: @@ -163692,7 +164305,7 @@ wbody7: br i1 %t35, label %ixok9, label %ixbad10 ixbad10: %t36 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str11965, i32 %t30, i32 %t34) + call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str12076, i32 %t30, i32 %t34) call void @exit(i32 1) unreachable ixok9: @@ -163758,7 +164371,7 @@ wbody14: br i1 %t79, label %ixok16, label %ixbad17 ixbad17: %t80 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t80, ptr @.fmt_bounds, ptr @.str11966, i32 %t74, i32 %t78) + call i32 (ptr, ptr, ...) @fprintf(ptr %t80, ptr @.fmt_bounds, ptr @.str12077, i32 %t74, i32 %t78) call void @exit(i32 1) unreachable ixok16: @@ -163846,8 +164459,8 @@ ifend5: br i1 %t21, label %then6, label %ifend8 then6: %t22 = load ptr, ptr %t0 - %t23 = call ptr @lp_str_concat(ptr @.str11967, ptr %t22) - %t24 = call ptr @lp_str_concat(ptr %t23, ptr @.str11968) + %t23 = call ptr @lp_str_concat(ptr @.str12078, ptr %t22) + %t24 = call ptr @lp_str_concat(ptr %t23, ptr @.str12079) call void @fn_perr(ptr %t24) br label %ifend8 ifend8: @@ -163919,58 +164532,58 @@ then0: br label %ret ifend2: store i32 1, ptr @g_g_uses_panic - %t6 = call ptr @fn_emit_bind(ptr @.str11969) + %t6 = call ptr @fn_emit_bind(ptr @.str12080) store ptr %t6, ptr %t7 %t8 = load ptr, ptr %t7 - %t9 = call ptr @lp_str_concat(ptr @.str11970, ptr %t8) - %t10 = call ptr @lp_str_concat(ptr %t9, ptr @.str11971) + %t9 = call ptr @lp_str_concat(ptr @.str12081, ptr %t8) + %t10 = call ptr @lp_str_concat(ptr %t9, ptr @.str12082) %t11 = call ptr @fn_emit_bind(ptr %t10) store ptr %t11, ptr %t12 - %t13 = call ptr @fn_lbl(ptr @.str11972) + %t13 = call ptr @fn_lbl(ptr @.str12083) store ptr %t13, ptr %t14 - %t15 = call ptr @fn_lbl(ptr @.str11973) + %t15 = call ptr @fn_lbl(ptr @.str12084) store ptr %t15, ptr %t16 %t17 = load ptr, ptr %t12 - %t18 = call ptr @lp_str_concat(ptr @.str11974, ptr %t17) - %t19 = call ptr @lp_str_concat(ptr %t18, ptr @.str11975) + %t18 = call ptr @lp_str_concat(ptr @.str12085, ptr %t17) + %t19 = call ptr @lp_str_concat(ptr %t18, ptr @.str12086) %t20 = load ptr, ptr %t16 %t21 = call ptr @lp_str_concat(ptr %t19, ptr %t20) - %t22 = call ptr @lp_str_concat(ptr %t21, ptr @.str11976) + %t22 = call ptr @lp_str_concat(ptr %t21, ptr @.str12087) %t23 = load ptr, ptr %t14 %t24 = call ptr @lp_str_concat(ptr %t22, ptr %t23) - %t25 = call ptr @lp_str_concat(ptr %t24, ptr @.str11977) + %t25 = call ptr @lp_str_concat(ptr %t24, ptr @.str12088) call void @fn_emit(ptr %t25) %t26 = load ptr, ptr %t16 - %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str11978) + %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str12089) call void @fn_emit(ptr %t27) %t28 = load ptr, ptr @g_g_src_name - %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str11979) + %t29 = call ptr @lp_str_concat(ptr %t28, ptr @.str12090) %t30 = load i32, ptr %t1 %t31 = call ptr @fn_itoa(i32 %t30) %t32 = call ptr @lp_str_concat(ptr %t29, ptr %t31) - %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str11980) + %t33 = call ptr @lp_str_concat(ptr %t32, ptr @.str12091) %t34 = call ptr @fn_emit_str_const(ptr %t33) store ptr %t34, ptr %t35 %t36 = load ptr, ptr %t0 - %t37 = call ptr @lp_str_concat(ptr %t36, ptr @.str11981) + %t37 = call ptr @lp_str_concat(ptr %t36, ptr @.str12092) %t38 = call ptr @fn_emit_str_const(ptr %t37) store ptr %t38, ptr %t39 %t40 = call ptr @fn_stdstream_rhs(i32 2) %t41 = call ptr @fn_emit_bind(ptr %t40) store ptr %t41, ptr %t42 %t43 = load ptr, ptr %t42 - %t44 = call ptr @lp_str_concat(ptr @.str11982, ptr %t43) - %t45 = call ptr @lp_str_concat(ptr %t44, ptr @.str11983) + %t44 = call ptr @lp_str_concat(ptr @.str12093, ptr %t43) + %t45 = call ptr @lp_str_concat(ptr %t44, ptr @.str12094) %t46 = load ptr, ptr %t35 %t47 = call ptr @lp_str_concat(ptr %t45, ptr %t46) - %t48 = call ptr @lp_str_concat(ptr %t47, ptr @.str11984) + %t48 = call ptr @lp_str_concat(ptr %t47, ptr @.str12095) %t49 = load ptr, ptr %t39 %t50 = call ptr @lp_str_concat(ptr %t48, ptr %t49) - %t51 = call ptr @lp_str_concat(ptr %t50, ptr @.str11985) + %t51 = call ptr @lp_str_concat(ptr %t50, ptr @.str12096) call void @fn_emit(ptr %t51) - call void @fn_emit(ptr @.str11986) + call void @fn_emit(ptr @.str12097) %t52 = load ptr, ptr %t14 - %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str11987) + %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str12098) call void @fn_emit(ptr %t53) br label %ret ret: @@ -163987,19 +164600,20 @@ entry: %t14 = alloca i32 %t42 = alloca ptr %t44 = alloca ptr - %t53 = alloca ptr - %t54 = alloca i32 - %t78 = alloca ptr - %t94 = alloca ptr - %t100 = alloca i32 - %t109 = alloca ptr - %t117 = alloca i32 + %t46 = alloca ptr + %t55 = alloca ptr + %t56 = alloca i32 + %t80 = alloca ptr + %t96 = alloca ptr + %t102 = alloca i32 + %t111 = alloca ptr + %t119 = alloca i32 store ptr %arg_st, ptr %t0 %t1 = load ptr, ptr %t0 %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 8 %t3 = load i32, ptr %t2 - call void @fn_emit_worker_guard(ptr @.str11988, i32 %t3) - %t4 = call ptr @fn_emit_bind(ptr @.str11989) + call void @fn_emit_worker_guard(ptr @.str12099, i32 %t3) + %t4 = call ptr @fn_emit_bind(ptr @.str12100) store ptr %t4, ptr %t5 %t6 = load ptr, ptr %t0 %t7 = getelementptr inbounds %Cmp_Node, ptr %t6, i32 0, i32 1 @@ -164035,8 +164649,8 @@ then2: %t30 = load ptr, ptr %t0 %t31 = getelementptr inbounds %Cmp_Node, ptr %t30, i32 0, i32 1 %t32 = load ptr, ptr %t31 - %t33 = call ptr @lp_str_concat(ptr @.str11990, ptr %t32) - %t34 = call ptr @lp_str_concat(ptr %t33, ptr @.str11991) + %t33 = call ptr @lp_str_concat(ptr @.str12101, ptr %t32) + %t34 = call ptr @lp_str_concat(ptr %t33, ptr @.str12102) %t35 = load ptr, ptr %t10 %t36 = call ptr @lp_str_concat(ptr %t34, ptr %t35) call void @fn_perr(ptr %t36) @@ -164050,193 +164664,195 @@ ifend4: then5: %t41 = call ptr @fn_itoa(i32 1024) store ptr %t41, ptr %t42 - %t43 = call ptr @fn_nreg() + %t43 = call ptr @fn_ecs_base(ptr @.str12103) store ptr %t43, ptr %t44 - call void @fn_emit(ptr @.str11992) - %t45 = load ptr, ptr %t44 - call void @fn_emit(ptr %t45) - call void @fn_emit(ptr @.str11993) - %t46 = load ptr, ptr %t42 - call void @fn_emit(ptr %t46) - call void @fn_emit(ptr @.str11994) - %t47 = load ptr, ptr %t5 + %t45 = call ptr @fn_nreg() + store ptr %t45, ptr %t46 + call void @fn_emit(ptr @.str12104) + %t47 = load ptr, ptr %t46 call void @fn_emit(ptr %t47) - call void @fn_emit(ptr @.str11995) - call void @fn_emit(ptr @.str11996) - %t48 = load i32, ptr %t13 - %t49 = call ptr @fn_itoa(i32 %t48) + call void @fn_emit(ptr @.str12105) + %t48 = load ptr, ptr %t44 + call void @fn_emit(ptr %t48) + call void @fn_emit(ptr @.str12106) + %t49 = load ptr, ptr %t5 call void @fn_emit(ptr %t49) - call void @fn_emit(ptr @.str11997) - %t50 = load ptr, ptr %t44 - call void @fn_emit(ptr %t50) - call void @fn_emit(ptr @.str11998) - %t51 = load ptr, ptr %t10 - %t52 = call ptr @fn_find_arch(ptr %t51) - store ptr %t52, ptr %t53 - store i32 0, ptr %t54 + call void @fn_emit(ptr @.str12107) + call void @fn_emit(ptr @.str12108) + %t50 = load i32, ptr %t13 + %t51 = call ptr @fn_itoa(i32 %t50) + call void @fn_emit(ptr %t51) + call void @fn_emit(ptr @.str12109) + %t52 = load ptr, ptr %t46 + call void @fn_emit(ptr %t52) + call void @fn_emit(ptr @.str12110) + %t53 = load ptr, ptr %t10 + %t54 = call ptr @fn_find_arch(ptr %t53) + store ptr %t54, ptr %t55 + store i32 0, ptr %t56 br label %wcond8 wcond8: - %t55 = load i32, ptr %t54 - %t56 = load ptr, ptr %t53 - %t57 = getelementptr inbounds %Cmp_Node, ptr %t56, i32 0, i32 7 - %t58 = load ptr, ptr %t57 - %t59 = getelementptr inbounds %LSlice, ptr %t58, i32 0, i32 1 - %t60 = load i32, ptr %t59 - %t61 = icmp slt i32 %t55, %t60 - %t62 = zext i1 %t61 to i32 - %t63 = icmp ne i32 %t62, 0 - br i1 %t63, label %wbody9, label %wend10 + %t57 = load i32, ptr %t56 + %t58 = load ptr, ptr %t55 + %t59 = getelementptr inbounds %Cmp_Node, ptr %t58, i32 0, i32 7 + %t60 = load ptr, ptr %t59 + %t61 = getelementptr inbounds %LSlice, ptr %t60, i32 0, i32 1 + %t62 = load i32, ptr %t61 + %t63 = icmp slt i32 %t57, %t62 + %t64 = zext i1 %t63 to i32 + %t65 = icmp ne i32 %t64, 0 + br i1 %t65, label %wbody9, label %wend10 wbody9: - %t64 = load ptr, ptr %t53 - %t65 = getelementptr inbounds %Cmp_Node, ptr %t64, i32 0, i32 7 - %t66 = load ptr, ptr %t65 - %t67 = load i32, ptr %t54 - %t68 = getelementptr inbounds %LSlice, ptr %t66, i32 0, i32 0 - %t69 = load ptr, ptr %t68 - %t70 = getelementptr inbounds %LSlice, ptr %t66, i32 0, i32 1 - %t71 = load i32, ptr %t70 - %t72 = icmp ult i32 %t67, %t71 - br i1 %t72, label %ixok11, label %ixbad12 + %t66 = load ptr, ptr %t55 + %t67 = getelementptr inbounds %Cmp_Node, ptr %t66, i32 0, i32 7 + %t68 = load ptr, ptr %t67 + %t69 = load i32, ptr %t56 + %t70 = getelementptr inbounds %LSlice, ptr %t68, i32 0, i32 0 + %t71 = load ptr, ptr %t70 + %t72 = getelementptr inbounds %LSlice, ptr %t68, i32 0, i32 1 + %t73 = load i32, ptr %t72 + %t74 = icmp ult i32 %t69, %t73 + br i1 %t74, label %ixok11, label %ixbad12 ixbad12: - %t73 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t73, ptr @.fmt_bounds, ptr @.str11999, i32 %t67, i32 %t71) + %t75 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t75, ptr @.fmt_bounds, ptr @.str12111, i32 %t69, i32 %t73) call void @exit(i32 1) unreachable ixok11: - %t74 = getelementptr inbounds ptr, ptr %t69, i32 %t67 - %t75 = load ptr, ptr %t74 - %t76 = getelementptr inbounds %Cmp_Node, ptr %t75, i32 0, i32 1 + %t76 = getelementptr inbounds ptr, ptr %t71, i32 %t69 %t77 = load ptr, ptr %t76 - store ptr %t77, ptr %t78 - %t79 = load ptr, ptr %t5 - %t80 = load ptr, ptr %t78 - %t81 = load ptr, ptr %t0 - %t82 = getelementptr inbounds %Cmp_Node, ptr %t81, i32 0, i32 1 - %t83 = load ptr, ptr %t82 - %t84 = load ptr, ptr %t78 - %t85 = call ptr @fn_prefab_record(ptr %t83, ptr %t84) - %t86 = load ptr, ptr %t0 - %t87 = load ptr, ptr %t78 - %t88 = call ptr @fn_spawn_record(ptr %t86, ptr %t87) - %t89 = call ptr @fn_merge_records(ptr %t85, ptr %t88) - call void @fn_emit_init_component(ptr %t79, ptr %t80, ptr %t89) - %t90 = load i32, ptr %t54 - %t91 = add i32 %t90, 1 - store i32 %t91, ptr %t54 + %t78 = getelementptr inbounds %Cmp_Node, ptr %t77, i32 0, i32 1 + %t79 = load ptr, ptr %t78 + store ptr %t79, ptr %t80 + %t81 = load ptr, ptr %t5 + %t82 = load ptr, ptr %t80 + %t83 = load ptr, ptr %t0 + %t84 = getelementptr inbounds %Cmp_Node, ptr %t83, i32 0, i32 1 + %t85 = load ptr, ptr %t84 + %t86 = load ptr, ptr %t80 + %t87 = call ptr @fn_prefab_record(ptr %t85, ptr %t86) + %t88 = load ptr, ptr %t0 + %t89 = load ptr, ptr %t80 + %t90 = call ptr @fn_spawn_record(ptr %t88, ptr %t89) + %t91 = call ptr @fn_merge_records(ptr %t87, ptr %t90) + call void @fn_emit_init_component(ptr %t81, ptr %t82, ptr %t91) + %t92 = load i32, ptr %t56 + %t93 = add i32 %t92, 1 + store i32 %t93, ptr %t56 br label %wcond8 wend10: - %t92 = load ptr, ptr %t10 - %t93 = call ptr @fn_onspawn_body(ptr %t92) - store ptr %t93, ptr %t94 - %t95 = load ptr, ptr %t94 - %t96 = icmp ne ptr %t95, null - %t97 = zext i1 %t96 to i32 - %t98 = icmp ne i32 %t97, 0 - br i1 %t98, label %then13, label %ifend15 + %t94 = load ptr, ptr %t10 + %t95 = call ptr @fn_onspawn_body(ptr %t94) + store ptr %t95, ptr %t96 + %t97 = load ptr, ptr %t96 + %t98 = icmp ne ptr %t97, null + %t99 = zext i1 %t98 to i32 + %t100 = icmp ne i32 %t99, 0 + br i1 %t100, label %then13, label %ifend15 then13: - %t99 = load i32, ptr @g_nloc - store i32 %t99, ptr %t100 - %t101 = load ptr, ptr %t53 - %t102 = load ptr, ptr %t5 - call void @fn_emit_bind_props(ptr %t101, ptr %t102) - %t103 = load ptr, ptr %t5 - %t104 = load ptr, ptr %t94 - call void @fn_emit_hook_with_self(ptr %t103, ptr %t104) - %t105 = load i32, ptr %t100 - store i32 %t105, ptr @g_nloc + %t101 = load i32, ptr @g_nloc + store i32 %t101, ptr %t102 + %t103 = load ptr, ptr %t55 + %t104 = load ptr, ptr %t5 + call void @fn_emit_bind_props(ptr %t103, ptr %t104) + %t105 = load ptr, ptr %t5 + %t106 = load ptr, ptr %t96 + call void @fn_emit_hook_with_self(ptr %t105, ptr %t106) + %t107 = load i32, ptr %t102 + store i32 %t107, ptr @g_nloc br label %ifend15 ifend15: - %t106 = load ptr, ptr %t10 - %t107 = call ptr @lp_str_concat(ptr @.str12000, ptr %t106) - %t108 = call ptr @lp_str_concat(ptr %t107, ptr @.str12001) - store ptr %t108, ptr %t109 - %t110 = load ptr, ptr %t109 - %t111 = call ptr @fn_find_event(ptr %t110) - %t112 = icmp ne ptr %t111, null - %t113 = zext i1 %t112 to i32 - %t114 = icmp ne i32 %t113, 0 - br i1 %t114, label %then16, label %ifend18 + %t108 = load ptr, ptr %t10 + %t109 = call ptr @lp_str_concat(ptr @.str12112, ptr %t108) + %t110 = call ptr @lp_str_concat(ptr %t109, ptr @.str12113) + store ptr %t110, ptr %t111 + %t112 = load ptr, ptr %t111 + %t113 = call ptr @fn_find_event(ptr %t112) + %t114 = icmp ne ptr %t113, null + %t115 = zext i1 %t114 to i32 + %t116 = icmp ne i32 %t115, 0 + br i1 %t116, label %then16, label %ifend18 then16: - call void @fn_emit(ptr @.str12002) - %t115 = load ptr, ptr %t109 - call void @fn_emit(ptr %t115) - call void @fn_emit(ptr @.str12003) - %t116 = load ptr, ptr %t5 - call void @fn_emit(ptr %t116) - call void @fn_emit(ptr @.str12004) + call void @fn_emit(ptr @.str12114) + %t117 = load ptr, ptr %t111 + call void @fn_emit(ptr %t117) + call void @fn_emit(ptr @.str12115) + %t118 = load ptr, ptr %t5 + call void @fn_emit(ptr %t118) + call void @fn_emit(ptr @.str12116) br label %ifend18 ifend18: br label %ifend7 else6: - store i32 0, ptr %t117 + store i32 0, ptr %t119 br label %wcond19 wcond19: - %t118 = load i32, ptr %t117 - %t119 = load ptr, ptr %t0 - %t120 = getelementptr inbounds %Cmp_Node, ptr %t119, i32 0, i32 7 - %t121 = load ptr, ptr %t120 - %t122 = getelementptr inbounds %LSlice, ptr %t121, i32 0, i32 1 - %t123 = load i32, ptr %t122 - %t124 = icmp slt i32 %t118, %t123 - %t125 = zext i1 %t124 to i32 - %t126 = icmp ne i32 %t125, 0 - br i1 %t126, label %wbody20, label %wend21 + %t120 = load i32, ptr %t119 + %t121 = load ptr, ptr %t0 + %t122 = getelementptr inbounds %Cmp_Node, ptr %t121, i32 0, i32 7 + %t123 = load ptr, ptr %t122 + %t124 = getelementptr inbounds %LSlice, ptr %t123, i32 0, i32 1 + %t125 = load i32, ptr %t124 + %t126 = icmp slt i32 %t120, %t125 + %t127 = zext i1 %t126 to i32 + %t128 = icmp ne i32 %t127, 0 + br i1 %t128, label %wbody20, label %wend21 wbody20: - %t127 = load ptr, ptr %t5 - %t128 = load ptr, ptr %t0 - %t129 = getelementptr inbounds %Cmp_Node, ptr %t128, i32 0, i32 7 - %t130 = load ptr, ptr %t129 - %t131 = load i32, ptr %t117 - %t132 = getelementptr inbounds %LSlice, ptr %t130, i32 0, i32 0 - %t133 = load ptr, ptr %t132 - %t134 = getelementptr inbounds %LSlice, ptr %t130, i32 0, i32 1 - %t135 = load i32, ptr %t134 - %t136 = icmp ult i32 %t131, %t135 - br i1 %t136, label %ixok22, label %ixbad23 + %t129 = load ptr, ptr %t5 + %t130 = load ptr, ptr %t0 + %t131 = getelementptr inbounds %Cmp_Node, ptr %t130, i32 0, i32 7 + %t132 = load ptr, ptr %t131 + %t133 = load i32, ptr %t119 + %t134 = getelementptr inbounds %LSlice, ptr %t132, i32 0, i32 0 + %t135 = load ptr, ptr %t134 + %t136 = getelementptr inbounds %LSlice, ptr %t132, i32 0, i32 1 + %t137 = load i32, ptr %t136 + %t138 = icmp ult i32 %t133, %t137 + br i1 %t138, label %ixok22, label %ixbad23 ixbad23: - %t137 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t137, ptr @.fmt_bounds, ptr @.str12005, i32 %t131, i32 %t135) + %t139 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t139, ptr @.fmt_bounds, ptr @.str12117, i32 %t133, i32 %t137) call void @exit(i32 1) unreachable ixok22: - %t138 = getelementptr inbounds ptr, ptr %t133, i32 %t131 - %t139 = load ptr, ptr %t138 - %t140 = getelementptr inbounds %Cmp_Node, ptr %t139, i32 0, i32 1 + %t140 = getelementptr inbounds ptr, ptr %t135, i32 %t133 %t141 = load ptr, ptr %t140 - %t142 = load ptr, ptr %t0 - %t143 = getelementptr inbounds %Cmp_Node, ptr %t142, i32 0, i32 7 - %t144 = load ptr, ptr %t143 - %t145 = load i32, ptr %t117 - %t146 = getelementptr inbounds %LSlice, ptr %t144, i32 0, i32 0 - %t147 = load ptr, ptr %t146 - %t148 = getelementptr inbounds %LSlice, ptr %t144, i32 0, i32 1 - %t149 = load i32, ptr %t148 - %t150 = icmp ult i32 %t145, %t149 - br i1 %t150, label %ixok24, label %ixbad25 + %t142 = getelementptr inbounds %Cmp_Node, ptr %t141, i32 0, i32 1 + %t143 = load ptr, ptr %t142 + %t144 = load ptr, ptr %t0 + %t145 = getelementptr inbounds %Cmp_Node, ptr %t144, i32 0, i32 7 + %t146 = load ptr, ptr %t145 + %t147 = load i32, ptr %t119 + %t148 = getelementptr inbounds %LSlice, ptr %t146, i32 0, i32 0 + %t149 = load ptr, ptr %t148 + %t150 = getelementptr inbounds %LSlice, ptr %t146, i32 0, i32 1 + %t151 = load i32, ptr %t150 + %t152 = icmp ult i32 %t147, %t151 + br i1 %t152, label %ixok24, label %ixbad25 ixbad25: - %t151 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t151, ptr @.fmt_bounds, ptr @.str12006, i32 %t145, i32 %t149) + %t153 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t153, ptr @.fmt_bounds, ptr @.str12118, i32 %t147, i32 %t151) call void @exit(i32 1) unreachable ixok24: - %t152 = getelementptr inbounds ptr, ptr %t147, i32 %t145 - %t153 = load ptr, ptr %t152 - %t154 = getelementptr inbounds %Cmp_Node, ptr %t153, i32 0, i32 4 + %t154 = getelementptr inbounds ptr, ptr %t149, i32 %t147 %t155 = load ptr, ptr %t154 - call void @fn_emit_init_component(ptr %t127, ptr %t141, ptr %t155) - %t156 = load i32, ptr %t117 - %t157 = add i32 %t156, 1 - store i32 %t157, ptr %t117 + %t156 = getelementptr inbounds %Cmp_Node, ptr %t155, i32 0, i32 4 + %t157 = load ptr, ptr %t156 + call void @fn_emit_init_component(ptr %t129, ptr %t143, ptr %t157) + %t158 = load i32, ptr %t119 + %t159 = add i32 %t158, 1 + store i32 %t159, ptr %t119 br label %wcond19 wend21: br label %ifend7 ifend7: - %t158 = load ptr, ptr %t5 - store ptr %t158, ptr %retval + %t160 = load ptr, ptr %t5 + store ptr %t160, ptr %retval br label %ret ret: - %t159 = load ptr, ptr %retval - ret ptr %t159 + %t161 = load ptr, ptr %retval + ret ptr %t161 } define void @fn_emit_despawn(ptr %arg_st) { @@ -164245,18 +164861,19 @@ entry: %t8 = alloca ptr %t16 = alloca ptr %t18 = alloca ptr - %t27 = alloca ptr - %t28 = alloca i32 - %t48 = alloca ptr - %t57 = alloca ptr + %t20 = alloca ptr + %t29 = alloca ptr + %t30 = alloca i32 + %t50 = alloca ptr %t59 = alloca ptr %t61 = alloca ptr - %t73 = alloca ptr + %t63 = alloca ptr + %t75 = alloca ptr store ptr %arg_st, ptr %t0 %t1 = load ptr, ptr %t0 %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 8 %t3 = load i32, ptr %t2 - call void @fn_emit_worker_guard(ptr @.str12007, i32 %t3) + call void @fn_emit_worker_guard(ptr @.str12119, i32 %t3) %t4 = load ptr, ptr %t0 %t5 = getelementptr inbounds %Cmp_Node, ptr %t4, i32 0, i32 4 %t6 = load ptr, ptr %t5 @@ -164272,147 +164889,149 @@ entry: then0: %t15 = call ptr @fn_itoa(i32 1024) store ptr %t15, ptr %t16 - %t17 = call ptr @fn_nreg() + %t17 = call ptr @fn_ecs_base(ptr @.str12120) store ptr %t17, ptr %t18 - call void @fn_emit(ptr @.str12008) - %t19 = load ptr, ptr %t18 - call void @fn_emit(ptr %t19) - call void @fn_emit(ptr @.str12009) - %t20 = load ptr, ptr %t16 - call void @fn_emit(ptr %t20) - call void @fn_emit(ptr @.str12010) - %t21 = load ptr, ptr %t8 - %t22 = getelementptr inbounds %Cmp_Val, ptr %t21, i32 0, i32 0 - %t23 = load ptr, ptr %t22 - call void @fn_emit(ptr %t23) - call void @fn_emit(ptr @.str12011) - %t24 = load ptr, ptr %t18 - %t25 = call ptr @lp_str_concat(ptr @.str12012, ptr %t24) - %t26 = call ptr @fn_emit_bind(ptr %t25) - store ptr %t26, ptr %t27 - store i32 0, ptr %t28 + %t19 = call ptr @fn_nreg() + store ptr %t19, ptr %t20 + call void @fn_emit(ptr @.str12121) + %t21 = load ptr, ptr %t20 + call void @fn_emit(ptr %t21) + call void @fn_emit(ptr @.str12122) + %t22 = load ptr, ptr %t18 + call void @fn_emit(ptr %t22) + call void @fn_emit(ptr @.str12123) + %t23 = load ptr, ptr %t8 + %t24 = getelementptr inbounds %Cmp_Val, ptr %t23, i32 0, i32 0 + %t25 = load ptr, ptr %t24 + call void @fn_emit(ptr %t25) + call void @fn_emit(ptr @.str12124) + %t26 = load ptr, ptr %t20 + %t27 = call ptr @lp_str_concat(ptr @.str12125, ptr %t26) + %t28 = call ptr @fn_emit_bind(ptr %t27) + store ptr %t28, ptr %t29 + store i32 0, ptr %t30 br label %wcond3 wcond3: - %t29 = load i32, ptr %t28 - %t30 = load ptr, ptr @g_g_ondespawn - %t31 = getelementptr inbounds %LSlice, ptr %t30, i32 0, i32 1 - %t32 = load i32, ptr %t31 - %t33 = icmp slt i32 %t29, %t32 - %t34 = zext i1 %t33 to i32 - %t35 = icmp ne i32 %t34, 0 - br i1 %t35, label %wbody4, label %wend5 + %t31 = load i32, ptr %t30 + %t32 = load ptr, ptr @g_g_ondespawn + %t33 = getelementptr inbounds %LSlice, ptr %t32, i32 0, i32 1 + %t34 = load i32, ptr %t33 + %t35 = icmp slt i32 %t31, %t34 + %t36 = zext i1 %t35 to i32 + %t37 = icmp ne i32 %t36, 0 + br i1 %t37, label %wbody4, label %wend5 wbody4: - %t36 = load ptr, ptr @g_g_ondespawn - %t37 = load i32, ptr %t28 - %t38 = getelementptr inbounds %LSlice, ptr %t36, i32 0, i32 0 - %t39 = load ptr, ptr %t38 - %t40 = getelementptr inbounds %LSlice, ptr %t36, i32 0, i32 1 - %t41 = load i32, ptr %t40 - %t42 = icmp ult i32 %t37, %t41 - br i1 %t42, label %ixok6, label %ixbad7 + %t38 = load ptr, ptr @g_g_ondespawn + %t39 = load i32, ptr %t30 + %t40 = getelementptr inbounds %LSlice, ptr %t38, i32 0, i32 0 + %t41 = load ptr, ptr %t40 + %t42 = getelementptr inbounds %LSlice, ptr %t38, i32 0, i32 1 + %t43 = load i32, ptr %t42 + %t44 = icmp ult i32 %t39, %t43 + br i1 %t44, label %ixok6, label %ixbad7 ixbad7: - %t43 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str12013, i32 %t37, i32 %t41) + %t45 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t45, ptr @.fmt_bounds, ptr @.str12126, i32 %t39, i32 %t43) call void @exit(i32 1) unreachable ixok6: - %t44 = getelementptr inbounds ptr, ptr %t39, i32 %t37 - %t45 = load ptr, ptr %t44 - %t46 = getelementptr inbounds %Cmp_Node, ptr %t45, i32 0, i32 1 + %t46 = getelementptr inbounds ptr, ptr %t41, i32 %t39 %t47 = load ptr, ptr %t46 - store ptr %t47, ptr %t48 - %t49 = load ptr, ptr %t27 - %t50 = call ptr @lp_str_concat(ptr @.str12014, ptr %t49) - %t51 = call ptr @lp_str_concat(ptr %t50, ptr @.str12015) - %t52 = load ptr, ptr %t48 - %t53 = call i32 @fn_find_arch_id(ptr %t52) - %t54 = call ptr @fn_itoa(i32 %t53) - %t55 = call ptr @lp_str_concat(ptr %t51, ptr %t54) - %t56 = call ptr @fn_emit_bind(ptr %t55) - store ptr %t56, ptr %t57 - %t58 = call ptr @fn_lbl(ptr @.str12016) + %t48 = getelementptr inbounds %Cmp_Node, ptr %t47, i32 0, i32 1 + %t49 = load ptr, ptr %t48 + store ptr %t49, ptr %t50 + %t51 = load ptr, ptr %t29 + %t52 = call ptr @lp_str_concat(ptr @.str12127, ptr %t51) + %t53 = call ptr @lp_str_concat(ptr %t52, ptr @.str12128) + %t54 = load ptr, ptr %t50 + %t55 = call i32 @fn_find_arch_id(ptr %t54) + %t56 = call ptr @fn_itoa(i32 %t55) + %t57 = call ptr @lp_str_concat(ptr %t53, ptr %t56) + %t58 = call ptr @fn_emit_bind(ptr %t57) store ptr %t58, ptr %t59 - %t60 = call ptr @fn_lbl(ptr @.str12017) + %t60 = call ptr @fn_lbl(ptr @.str12129) store ptr %t60, ptr %t61 - call void @fn_emit(ptr @.str12018) - %t62 = load ptr, ptr %t57 - call void @fn_emit(ptr %t62) - call void @fn_emit(ptr @.str12019) - %t63 = load ptr, ptr %t59 - call void @fn_emit(ptr %t63) - call void @fn_emit(ptr @.str12020) - %t64 = load ptr, ptr %t61 + %t62 = call ptr @fn_lbl(ptr @.str12130) + store ptr %t62, ptr %t63 + call void @fn_emit(ptr @.str12131) + %t64 = load ptr, ptr %t59 call void @fn_emit(ptr %t64) - call void @fn_emit(ptr @.str12021) - %t65 = load ptr, ptr %t59 + call void @fn_emit(ptr @.str12132) + %t65 = load ptr, ptr %t61 call void @fn_emit(ptr %t65) - call void @fn_emit(ptr @.str12022) - %t66 = load ptr, ptr %t48 + call void @fn_emit(ptr @.str12133) + %t66 = load ptr, ptr %t63 call void @fn_emit(ptr %t66) - call void @fn_emit(ptr @.str12023) - %t67 = load ptr, ptr %t8 - %t68 = getelementptr inbounds %Cmp_Val, ptr %t67, i32 0, i32 0 - %t69 = load ptr, ptr %t68 - call void @fn_emit(ptr %t69) - call void @fn_emit(ptr @.str12024) - %t70 = load ptr, ptr %t48 - %t71 = call ptr @lp_str_concat(ptr @.str12025, ptr %t70) - %t72 = call ptr @lp_str_concat(ptr %t71, ptr @.str12026) - store ptr %t72, ptr %t73 - %t74 = load ptr, ptr %t73 - %t75 = call ptr @fn_find_event(ptr %t74) - %t76 = icmp ne ptr %t75, null - %t77 = zext i1 %t76 to i32 - %t78 = icmp ne i32 %t77, 0 - br i1 %t78, label %then8, label %ifend10 + call void @fn_emit(ptr @.str12134) + %t67 = load ptr, ptr %t61 + call void @fn_emit(ptr %t67) + call void @fn_emit(ptr @.str12135) + %t68 = load ptr, ptr %t50 + call void @fn_emit(ptr %t68) + call void @fn_emit(ptr @.str12136) + %t69 = load ptr, ptr %t8 + %t70 = getelementptr inbounds %Cmp_Val, ptr %t69, i32 0, i32 0 + %t71 = load ptr, ptr %t70 + call void @fn_emit(ptr %t71) + call void @fn_emit(ptr @.str12137) + %t72 = load ptr, ptr %t50 + %t73 = call ptr @lp_str_concat(ptr @.str12138, ptr %t72) + %t74 = call ptr @lp_str_concat(ptr %t73, ptr @.str12139) + store ptr %t74, ptr %t75 + %t76 = load ptr, ptr %t75 + %t77 = call ptr @fn_find_event(ptr %t76) + %t78 = icmp ne ptr %t77, null + %t79 = zext i1 %t78 to i32 + %t80 = icmp ne i32 %t79, 0 + br i1 %t80, label %then8, label %ifend10 then8: - call void @fn_emit(ptr @.str12027) - %t79 = load ptr, ptr %t73 - call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str12028) - %t80 = load ptr, ptr %t8 - %t81 = getelementptr inbounds %Cmp_Val, ptr %t80, i32 0, i32 0 - %t82 = load ptr, ptr %t81 - call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str12029) + call void @fn_emit(ptr @.str12140) + %t81 = load ptr, ptr %t75 + call void @fn_emit(ptr %t81) + call void @fn_emit(ptr @.str12141) + %t82 = load ptr, ptr %t8 + %t83 = getelementptr inbounds %Cmp_Val, ptr %t82, i32 0, i32 0 + %t84 = load ptr, ptr %t83 + call void @fn_emit(ptr %t84) + call void @fn_emit(ptr @.str12142) br label %ifend10 ifend10: - call void @fn_emit(ptr @.str12030) - %t83 = load ptr, ptr %t61 - call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str12031) - %t84 = load ptr, ptr %t61 - call void @fn_emit(ptr %t84) - call void @fn_emit(ptr @.str12032) - %t85 = load i32, ptr %t28 - %t86 = add i32 %t85, 1 - store i32 %t86, ptr %t28 + call void @fn_emit(ptr @.str12143) + %t85 = load ptr, ptr %t63 + call void @fn_emit(ptr %t85) + call void @fn_emit(ptr @.str12144) + %t86 = load ptr, ptr %t63 + call void @fn_emit(ptr %t86) + call void @fn_emit(ptr @.str12145) + %t87 = load i32, ptr %t30 + %t88 = add i32 %t87, 1 + store i32 %t88, ptr %t30 br label %wcond3 wend5: br label %ifend2 ifend2: - %t87 = load ptr, ptr @g_g_events - %t88 = getelementptr inbounds %LSlice, ptr %t87, i32 0, i32 1 - %t89 = load i32, ptr %t88 - %t90 = icmp sgt i32 %t89, 0 - %t91 = zext i1 %t90 to i32 - %t92 = icmp ne i32 %t91, 0 - br i1 %t92, label %then11, label %ifend13 + %t89 = load ptr, ptr @g_g_events + %t90 = getelementptr inbounds %LSlice, ptr %t89, i32 0, i32 1 + %t91 = load i32, ptr %t90 + %t92 = icmp sgt i32 %t91, 0 + %t93 = zext i1 %t92 to i32 + %t94 = icmp ne i32 %t93, 0 + br i1 %t94, label %then11, label %ifend13 then11: - call void @fn_emit(ptr @.str12033) - %t93 = load ptr, ptr %t8 - %t94 = getelementptr inbounds %Cmp_Val, ptr %t93, i32 0, i32 0 - %t95 = load ptr, ptr %t94 - call void @fn_emit(ptr %t95) - call void @fn_emit(ptr @.str12034) + call void @fn_emit(ptr @.str12146) + %t95 = load ptr, ptr %t8 + %t96 = getelementptr inbounds %Cmp_Val, ptr %t95, i32 0, i32 0 + %t97 = load ptr, ptr %t96 + call void @fn_emit(ptr %t97) + call void @fn_emit(ptr @.str12147) br label %ifend13 ifend13: - call void @fn_emit(ptr @.str12035) - %t96 = load ptr, ptr %t8 - %t97 = getelementptr inbounds %Cmp_Val, ptr %t96, i32 0, i32 0 - %t98 = load ptr, ptr %t97 - call void @fn_emit(ptr %t98) - call void @fn_emit(ptr @.str12036) + call void @fn_emit(ptr @.str12148) + %t98 = load ptr, ptr %t8 + %t99 = getelementptr inbounds %Cmp_Val, ptr %t98, i32 0, i32 0 + %t100 = load ptr, ptr %t99 + call void @fn_emit(ptr %t100) + call void @fn_emit(ptr @.str12149) br label %ret ret: ret void @@ -164423,11 +165042,12 @@ entry: %t0 = alloca ptr %t5 = alloca ptr %t7 = alloca ptr - %t9 = alloca ptr - %t21 = alloca ptr - %t26 = alloca ptr - %t28 = alloca ptr - %t30 = alloca ptr + %t13 = alloca ptr + %t15 = alloca ptr + %t24 = alloca ptr + %t29 = alloca ptr + %t31 = alloca ptr + %t33 = alloca ptr store ptr %arg_st, ptr %t0 %t1 = load ptr, ptr %t0 %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 4 @@ -164436,77 +165056,78 @@ entry: store ptr %t4, ptr %t5 %t6 = call ptr @fn_itoa(i32 1024) store ptr %t6, ptr %t7 - %t8 = call ptr @fn_nreg() - store ptr %t8, ptr %t9 - call void @fn_emit(ptr @.str12037) + %t8 = load ptr, ptr %t0 + %t9 = getelementptr inbounds %Cmp_Node, ptr %t8, i32 0, i32 1 %t10 = load ptr, ptr %t9 - call void @fn_emit(ptr %t10) - call void @fn_emit(ptr @.str12038) - %t11 = load ptr, ptr %t7 - call void @fn_emit(ptr %t11) - call void @fn_emit(ptr @.str12039) - %t12 = load ptr, ptr %t0 - %t13 = getelementptr inbounds %Cmp_Node, ptr %t12, i32 0, i32 1 - %t14 = load ptr, ptr %t13 - call void @fn_emit(ptr %t14) - call void @fn_emit(ptr @.str12040) - %t15 = load ptr, ptr %t5 - %t16 = getelementptr inbounds %Cmp_Val, ptr %t15, i32 0, i32 0 - %t17 = load ptr, ptr %t16 + %t11 = call ptr @lp_str_concat(ptr @.str12150, ptr %t10) + %t12 = call ptr @fn_ecs_base(ptr %t11) + store ptr %t12, ptr %t13 + %t14 = call ptr @fn_nreg() + store ptr %t14, ptr %t15 + call void @fn_emit(ptr @.str12151) + %t16 = load ptr, ptr %t15 + call void @fn_emit(ptr %t16) + call void @fn_emit(ptr @.str12152) + %t17 = load ptr, ptr %t13 call void @fn_emit(ptr %t17) - call void @fn_emit(ptr @.str12041) - %t18 = load ptr, ptr %t9 - %t19 = call ptr @lp_str_concat(ptr @.str12042, ptr %t18) - %t20 = call ptr @fn_emit_bind(ptr %t19) - store ptr %t20, ptr %t21 - %t22 = load ptr, ptr %t21 - %t23 = call ptr @lp_str_concat(ptr @.str12043, ptr %t22) - %t24 = call ptr @lp_str_concat(ptr %t23, ptr @.str12044) - %t25 = call ptr @fn_emit_bind(ptr %t24) - store ptr %t25, ptr %t26 - %t27 = call ptr @fn_lbl(ptr @.str12045) - store ptr %t27, ptr %t28 - %t29 = call ptr @fn_lbl(ptr @.str12046) - store ptr %t29, ptr %t30 - call void @fn_emit(ptr @.str12047) - %t31 = load ptr, ptr %t26 - call void @fn_emit(ptr %t31) - call void @fn_emit(ptr @.str12048) - %t32 = load ptr, ptr %t28 - call void @fn_emit(ptr %t32) - call void @fn_emit(ptr @.str12049) - %t33 = load ptr, ptr %t30 - call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str12050) - %t34 = load ptr, ptr %t28 + call void @fn_emit(ptr @.str12153) + %t18 = load ptr, ptr %t5 + %t19 = getelementptr inbounds %Cmp_Val, ptr %t18, i32 0, i32 0 + %t20 = load ptr, ptr %t19 + call void @fn_emit(ptr %t20) + call void @fn_emit(ptr @.str12154) + %t21 = load ptr, ptr %t15 + %t22 = call ptr @lp_str_concat(ptr @.str12155, ptr %t21) + %t23 = call ptr @fn_emit_bind(ptr %t22) + store ptr %t23, ptr %t24 + %t25 = load ptr, ptr %t24 + %t26 = call ptr @lp_str_concat(ptr @.str12156, ptr %t25) + %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str12157) + %t28 = call ptr @fn_emit_bind(ptr %t27) + store ptr %t28, ptr %t29 + %t30 = call ptr @fn_lbl(ptr @.str12158) + store ptr %t30, ptr %t31 + %t32 = call ptr @fn_lbl(ptr @.str12159) + store ptr %t32, ptr %t33 + call void @fn_emit(ptr @.str12160) + %t34 = load ptr, ptr %t29 call void @fn_emit(ptr %t34) - call void @fn_emit(ptr @.str12051) + call void @fn_emit(ptr @.str12161) + %t35 = load ptr, ptr %t31 + call void @fn_emit(ptr %t35) + call void @fn_emit(ptr @.str12162) + %t36 = load ptr, ptr %t33 + call void @fn_emit(ptr %t36) + call void @fn_emit(ptr @.str12163) + %t37 = load ptr, ptr %t31 + call void @fn_emit(ptr %t37) + call void @fn_emit(ptr @.str12164) store i32 0, ptr @g_g_term - %t35 = load ptr, ptr %t5 - %t36 = getelementptr inbounds %Cmp_Val, ptr %t35, i32 0, i32 0 - %t37 = load ptr, ptr %t36 - %t38 = load ptr, ptr %t0 - %t39 = getelementptr inbounds %Cmp_Node, ptr %t38, i32 0, i32 1 + %t38 = load ptr, ptr %t5 + %t39 = getelementptr inbounds %Cmp_Val, ptr %t38, i32 0, i32 0 %t40 = load ptr, ptr %t39 %t41 = load ptr, ptr %t0 - %t42 = getelementptr inbounds %Cmp_Node, ptr %t41, i32 0, i32 5 + %t42 = getelementptr inbounds %Cmp_Node, ptr %t41, i32 0, i32 1 %t43 = load ptr, ptr %t42 - call void @fn_emit_init_component(ptr %t37, ptr %t40, ptr %t43) - %t44 = load i32, ptr @g_g_term - %t45 = icmp eq i32 %t44, 0 - %t46 = zext i1 %t45 to i32 - %t47 = icmp ne i32 %t46, 0 - br i1 %t47, label %then0, label %ifend2 + %t44 = load ptr, ptr %t0 + %t45 = getelementptr inbounds %Cmp_Node, ptr %t44, i32 0, i32 5 + %t46 = load ptr, ptr %t45 + call void @fn_emit_init_component(ptr %t40, ptr %t43, ptr %t46) + %t47 = load i32, ptr @g_g_term + %t48 = icmp eq i32 %t47, 0 + %t49 = zext i1 %t48 to i32 + %t50 = icmp ne i32 %t49, 0 + br i1 %t50, label %then0, label %ifend2 then0: - call void @fn_emit(ptr @.str12052) - %t48 = load ptr, ptr %t30 - call void @fn_emit(ptr %t48) - call void @fn_emit(ptr @.str12053) + call void @fn_emit(ptr @.str12165) + %t51 = load ptr, ptr %t33 + call void @fn_emit(ptr %t51) + call void @fn_emit(ptr @.str12166) br label %ifend2 ifend2: - %t49 = load ptr, ptr %t30 - call void @fn_emit(ptr %t49) - call void @fn_emit(ptr @.str12054) + %t52 = load ptr, ptr %t33 + call void @fn_emit(ptr %t52) + call void @fn_emit(ptr @.str12167) store i32 0, ptr @g_g_term br label %ret ret: @@ -164518,16 +165139,18 @@ entry: %t0 = alloca ptr %t5 = alloca ptr %t7 = alloca ptr - %t9 = alloca ptr - %t21 = alloca ptr - %t26 = alloca ptr - %t28 = alloca ptr - %t30 = alloca ptr - %t40 = alloca ptr - %t46 = alloca i32 - %t48 = alloca ptr - %t61 = alloca ptr - %t78 = alloca ptr + %t13 = alloca ptr + %t15 = alloca ptr + %t24 = alloca ptr + %t29 = alloca ptr + %t31 = alloca ptr + %t33 = alloca ptr + %t43 = alloca ptr + %t49 = alloca i32 + %t55 = alloca ptr + %t57 = alloca ptr + %t67 = alloca ptr + %t84 = alloca ptr store ptr %arg_st, ptr %t0 %t1 = load ptr, ptr %t0 %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 4 @@ -164536,155 +165159,157 @@ entry: store ptr %t4, ptr %t5 %t6 = call ptr @fn_itoa(i32 1024) store ptr %t6, ptr %t7 - %t8 = call ptr @fn_nreg() - store ptr %t8, ptr %t9 - call void @fn_emit(ptr @.str12055) + %t8 = load ptr, ptr %t0 + %t9 = getelementptr inbounds %Cmp_Node, ptr %t8, i32 0, i32 1 %t10 = load ptr, ptr %t9 - call void @fn_emit(ptr %t10) - call void @fn_emit(ptr @.str12056) - %t11 = load ptr, ptr %t7 - call void @fn_emit(ptr %t11) - call void @fn_emit(ptr @.str12057) - %t12 = load ptr, ptr %t0 - %t13 = getelementptr inbounds %Cmp_Node, ptr %t12, i32 0, i32 1 - %t14 = load ptr, ptr %t13 - call void @fn_emit(ptr %t14) - call void @fn_emit(ptr @.str12058) - %t15 = load ptr, ptr %t5 - %t16 = getelementptr inbounds %Cmp_Val, ptr %t15, i32 0, i32 0 - %t17 = load ptr, ptr %t16 + %t11 = call ptr @lp_str_concat(ptr @.str12168, ptr %t10) + %t12 = call ptr @fn_ecs_base(ptr %t11) + store ptr %t12, ptr %t13 + %t14 = call ptr @fn_nreg() + store ptr %t14, ptr %t15 + call void @fn_emit(ptr @.str12169) + %t16 = load ptr, ptr %t15 + call void @fn_emit(ptr %t16) + call void @fn_emit(ptr @.str12170) + %t17 = load ptr, ptr %t13 call void @fn_emit(ptr %t17) - call void @fn_emit(ptr @.str12059) - %t18 = load ptr, ptr %t9 - %t19 = call ptr @lp_str_concat(ptr @.str12060, ptr %t18) - %t20 = call ptr @fn_emit_bind(ptr %t19) - store ptr %t20, ptr %t21 - %t22 = load ptr, ptr %t21 - %t23 = call ptr @lp_str_concat(ptr @.str12061, ptr %t22) - %t24 = call ptr @lp_str_concat(ptr %t23, ptr @.str12062) - %t25 = call ptr @fn_emit_bind(ptr %t24) - store ptr %t25, ptr %t26 - %t27 = call ptr @fn_lbl(ptr @.str12063) - store ptr %t27, ptr %t28 - %t29 = call ptr @fn_lbl(ptr @.str12064) - store ptr %t29, ptr %t30 - call void @fn_emit(ptr @.str12065) - %t31 = load ptr, ptr %t26 - call void @fn_emit(ptr %t31) - call void @fn_emit(ptr @.str12066) - %t32 = load ptr, ptr %t28 - call void @fn_emit(ptr %t32) - call void @fn_emit(ptr @.str12067) - %t33 = load ptr, ptr %t30 - call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str12068) - %t34 = load ptr, ptr %t28 + call void @fn_emit(ptr @.str12171) + %t18 = load ptr, ptr %t5 + %t19 = getelementptr inbounds %Cmp_Val, ptr %t18, i32 0, i32 0 + %t20 = load ptr, ptr %t19 + call void @fn_emit(ptr %t20) + call void @fn_emit(ptr @.str12172) + %t21 = load ptr, ptr %t15 + %t22 = call ptr @lp_str_concat(ptr @.str12173, ptr %t21) + %t23 = call ptr @fn_emit_bind(ptr %t22) + store ptr %t23, ptr %t24 + %t25 = load ptr, ptr %t24 + %t26 = call ptr @lp_str_concat(ptr @.str12174, ptr %t25) + %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str12175) + %t28 = call ptr @fn_emit_bind(ptr %t27) + store ptr %t28, ptr %t29 + %t30 = call ptr @fn_lbl(ptr @.str12176) + store ptr %t30, ptr %t31 + %t32 = call ptr @fn_lbl(ptr @.str12177) + store ptr %t32, ptr %t33 + call void @fn_emit(ptr @.str12178) + %t34 = load ptr, ptr %t29 call void @fn_emit(ptr %t34) - call void @fn_emit(ptr @.str12069) - store i32 0, ptr @g_g_term - call void @fn_emit(ptr @.str12070) - %t35 = load ptr, ptr %t9 + call void @fn_emit(ptr @.str12179) + %t35 = load ptr, ptr %t31 call void @fn_emit(ptr %t35) - call void @fn_emit(ptr @.str12071) - %t36 = load ptr, ptr %t0 - %t37 = getelementptr inbounds %Cmp_Node, ptr %t36, i32 0, i32 1 - %t38 = load ptr, ptr %t37 - %t39 = call ptr @fn_ondetach_body(ptr %t38) - store ptr %t39, ptr %t40 + call void @fn_emit(ptr @.str12180) + %t36 = load ptr, ptr %t33 + call void @fn_emit(ptr %t36) + call void @fn_emit(ptr @.str12181) + %t37 = load ptr, ptr %t31 + call void @fn_emit(ptr %t37) + call void @fn_emit(ptr @.str12182) + store i32 0, ptr @g_g_term + call void @fn_emit(ptr @.str12183) + %t38 = load ptr, ptr %t15 + call void @fn_emit(ptr %t38) + call void @fn_emit(ptr @.str12184) + %t39 = load ptr, ptr %t0 + %t40 = getelementptr inbounds %Cmp_Node, ptr %t39, i32 0, i32 1 %t41 = load ptr, ptr %t40 - %t42 = icmp ne ptr %t41, null - %t43 = zext i1 %t42 to i32 - %t44 = icmp ne i32 %t43, 0 - br i1 %t44, label %then0, label %ifend2 + %t42 = call ptr @fn_ondetach_body(ptr %t41) + store ptr %t42, ptr %t43 + %t44 = load ptr, ptr %t43 + %t45 = icmp ne ptr %t44, null + %t46 = zext i1 %t45 to i32 + %t47 = icmp ne i32 %t46, 0 + br i1 %t47, label %then0, label %ifend2 then0: - %t45 = load i32, ptr @g_nloc - store i32 %t45, ptr %t46 - %t47 = call ptr @fn_nreg() - store ptr %t47, ptr %t48 - call void @fn_emit(ptr @.str12072) - %t49 = load ptr, ptr %t48 - call void @fn_emit(ptr %t49) - call void @fn_emit(ptr @.str12073) - %t50 = load ptr, ptr %t7 - call void @fn_emit(ptr %t50) - call void @fn_emit(ptr @.str12074) - %t51 = load ptr, ptr %t0 - %t52 = getelementptr inbounds %Cmp_Node, ptr %t51, i32 0, i32 1 - %t53 = load ptr, ptr %t52 - call void @fn_emit(ptr %t53) - call void @fn_emit(ptr @.str12075) - %t54 = load ptr, ptr %t0 - %t55 = getelementptr inbounds %Cmp_Node, ptr %t54, i32 0, i32 1 - %t56 = load ptr, ptr %t55 - call void @fn_emit(ptr %t56) - call void @fn_emit(ptr @.str12076) - %t57 = load ptr, ptr %t5 - %t58 = getelementptr inbounds %Cmp_Val, ptr %t57, i32 0, i32 0 - %t59 = load ptr, ptr %t58 - call void @fn_emit(ptr %t59) - call void @fn_emit(ptr @.str12077) - %t60 = call ptr @fn_emit_alloca(ptr @.str12078) - store ptr %t60, ptr %t61 - call void @fn_emit(ptr @.str12079) - %t62 = load ptr, ptr %t48 + %t48 = load i32, ptr @g_nloc + store i32 %t48, ptr %t49 + %t50 = load ptr, ptr %t0 + %t51 = getelementptr inbounds %Cmp_Node, ptr %t50, i32 0, i32 1 + %t52 = load ptr, ptr %t51 + %t53 = call ptr @lp_str_concat(ptr @.str12185, ptr %t52) + %t54 = call ptr @fn_ecs_base(ptr %t53) + store ptr %t54, ptr %t55 + %t56 = call ptr @fn_nreg() + store ptr %t56, ptr %t57 + call void @fn_emit(ptr @.str12186) + %t58 = load ptr, ptr %t57 + call void @fn_emit(ptr %t58) + call void @fn_emit(ptr @.str12187) + %t59 = load ptr, ptr %t0 + %t60 = getelementptr inbounds %Cmp_Node, ptr %t59, i32 0, i32 1 + %t61 = load ptr, ptr %t60 + call void @fn_emit(ptr %t61) + call void @fn_emit(ptr @.str12188) + %t62 = load ptr, ptr %t55 call void @fn_emit(ptr %t62) - call void @fn_emit(ptr @.str12080) - %t63 = load ptr, ptr %t61 - call void @fn_emit(ptr %t63) - call void @fn_emit(ptr @.str12081) - %t64 = load ptr, ptr %t0 - %t65 = getelementptr inbounds %Cmp_Node, ptr %t64, i32 0, i32 1 - %t66 = load ptr, ptr %t65 - %t67 = load ptr, ptr %t61 - %t68 = load ptr, ptr %t0 - %t69 = getelementptr inbounds %Cmp_Node, ptr %t68, i32 0, i32 1 - %t70 = load ptr, ptr %t69 - call void @fn_loc_push(ptr %t66, ptr %t67, ptr %t70) - %t71 = load ptr, ptr %t40 - call void @fn_emit_block(ptr %t71) - %t72 = load i32, ptr %t46 - store i32 %t72, ptr @g_nloc + call void @fn_emit(ptr @.str12189) + %t63 = load ptr, ptr %t5 + %t64 = getelementptr inbounds %Cmp_Val, ptr %t63, i32 0, i32 0 + %t65 = load ptr, ptr %t64 + call void @fn_emit(ptr %t65) + call void @fn_emit(ptr @.str12190) + %t66 = call ptr @fn_emit_alloca(ptr @.str12191) + store ptr %t66, ptr %t67 + call void @fn_emit(ptr @.str12192) + %t68 = load ptr, ptr %t57 + call void @fn_emit(ptr %t68) + call void @fn_emit(ptr @.str12193) + %t69 = load ptr, ptr %t67 + call void @fn_emit(ptr %t69) + call void @fn_emit(ptr @.str12194) + %t70 = load ptr, ptr %t0 + %t71 = getelementptr inbounds %Cmp_Node, ptr %t70, i32 0, i32 1 + %t72 = load ptr, ptr %t71 + %t73 = load ptr, ptr %t67 + %t74 = load ptr, ptr %t0 + %t75 = getelementptr inbounds %Cmp_Node, ptr %t74, i32 0, i32 1 + %t76 = load ptr, ptr %t75 + call void @fn_loc_push(ptr %t72, ptr %t73, ptr %t76) + %t77 = load ptr, ptr %t43 + call void @fn_emit_block(ptr %t77) + %t78 = load i32, ptr %t49 + store i32 %t78, ptr @g_nloc br label %ifend2 ifend2: - %t73 = load ptr, ptr %t0 - %t74 = getelementptr inbounds %Cmp_Node, ptr %t73, i32 0, i32 1 - %t75 = load ptr, ptr %t74 - %t76 = call ptr @lp_str_concat(ptr @.str12082, ptr %t75) - %t77 = call ptr @lp_str_concat(ptr %t76, ptr @.str12083) - store ptr %t77, ptr %t78 - %t79 = load ptr, ptr %t78 - %t80 = call ptr @fn_find_event(ptr %t79) - %t81 = icmp ne ptr %t80, null - %t82 = zext i1 %t81 to i32 - %t83 = icmp ne i32 %t82, 0 - br i1 %t83, label %then3, label %ifend5 + %t79 = load ptr, ptr %t0 + %t80 = getelementptr inbounds %Cmp_Node, ptr %t79, i32 0, i32 1 + %t81 = load ptr, ptr %t80 + %t82 = call ptr @lp_str_concat(ptr @.str12195, ptr %t81) + %t83 = call ptr @lp_str_concat(ptr %t82, ptr @.str12196) + store ptr %t83, ptr %t84 + %t85 = load ptr, ptr %t84 + %t86 = call ptr @fn_find_event(ptr %t85) + %t87 = icmp ne ptr %t86, null + %t88 = zext i1 %t87 to i32 + %t89 = icmp ne i32 %t88, 0 + br i1 %t89, label %then3, label %ifend5 then3: - call void @fn_emit(ptr @.str12084) - %t84 = load ptr, ptr %t78 - call void @fn_emit(ptr %t84) - call void @fn_emit(ptr @.str12085) - %t85 = load ptr, ptr %t5 - %t86 = getelementptr inbounds %Cmp_Val, ptr %t85, i32 0, i32 0 - %t87 = load ptr, ptr %t86 - call void @fn_emit(ptr %t87) - call void @fn_emit(ptr @.str12086) + call void @fn_emit(ptr @.str12197) + %t90 = load ptr, ptr %t84 + call void @fn_emit(ptr %t90) + call void @fn_emit(ptr @.str12198) + %t91 = load ptr, ptr %t5 + %t92 = getelementptr inbounds %Cmp_Val, ptr %t91, i32 0, i32 0 + %t93 = load ptr, ptr %t92 + call void @fn_emit(ptr %t93) + call void @fn_emit(ptr @.str12199) br label %ifend5 ifend5: - %t88 = load i32, ptr @g_g_term - %t89 = icmp eq i32 %t88, 0 - %t90 = zext i1 %t89 to i32 - %t91 = icmp ne i32 %t90, 0 - br i1 %t91, label %then6, label %ifend8 + %t94 = load i32, ptr @g_g_term + %t95 = icmp eq i32 %t94, 0 + %t96 = zext i1 %t95 to i32 + %t97 = icmp ne i32 %t96, 0 + br i1 %t97, label %then6, label %ifend8 then6: - call void @fn_emit(ptr @.str12087) - %t92 = load ptr, ptr %t30 - call void @fn_emit(ptr %t92) - call void @fn_emit(ptr @.str12088) + call void @fn_emit(ptr @.str12200) + %t98 = load ptr, ptr %t33 + call void @fn_emit(ptr %t98) + call void @fn_emit(ptr @.str12201) br label %ifend8 ifend8: - %t93 = load ptr, ptr %t30 - call void @fn_emit(ptr %t93) - call void @fn_emit(ptr @.str12089) + %t99 = load ptr, ptr %t33 + call void @fn_emit(ptr %t99) + call void @fn_emit(ptr @.str12202) store i32 0, ptr @g_g_term br label %ret ret: @@ -164721,7 +165346,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12090, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12203, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -164777,19 +165402,21 @@ entry: %t49 = alloca ptr %t77 = alloca ptr %t79 = alloca ptr - %t81 = alloca ptr - %t92 = alloca ptr - %t112 = alloca i32 - %t114 = alloca ptr - %t127 = alloca ptr - %t144 = alloca ptr - %t165 = alloca ptr - %t174 = alloca ptr - %t175 = alloca i32 - %t176 = alloca i32 - %t203 = alloca ptr + %t85 = alloca ptr + %t87 = alloca ptr + %t95 = alloca ptr + %t115 = alloca i32 + %t121 = alloca ptr + %t123 = alloca ptr + %t133 = alloca ptr + %t150 = alloca ptr + %t171 = alloca ptr + %t180 = alloca ptr + %t181 = alloca i32 + %t182 = alloca i32 + %t209 = alloca ptr store ptr %arg_st, ptr %t0 - store ptr @.str12091, ptr %t1 + store ptr @.str12204, ptr %t1 %t2 = load ptr, ptr %t0 %t3 = getelementptr inbounds %Cmp_Node, ptr %t2, i32 0, i32 2 %t4 = load i32, ptr %t3 @@ -164798,7 +165425,7 @@ entry: %t7 = icmp ne i32 %t6, 0 br i1 %t7, label %then0, label %ifend2 then0: - store ptr @.str12092, ptr %t1 + store ptr @.str12205, ptr %t1 br label %ifend2 ifend2: %t9 = load ptr, ptr %t0 @@ -164814,7 +165441,7 @@ sc3: %t16 = load ptr, ptr %t0 %t17 = getelementptr inbounds %Cmp_Node, ptr %t16, i32 0, i32 3 %t18 = load ptr, ptr %t17 - %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str12093) + %t19 = call i32 @lp_str_eq(ptr %t18, ptr @.str12206) %t20 = icmp ne i32 %t19, 0 %t21 = zext i1 %t20 to i32 store i32 %t21, ptr %t8 @@ -164839,7 +165466,7 @@ sc8: %t32 = load ptr, ptr %t0 %t33 = getelementptr inbounds %Cmp_Node, ptr %t32, i32 0, i32 3 %t34 = load ptr, ptr %t33 - %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str12094) + %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str12207) %t36 = icmp ne i32 %t35, 0 %t37 = zext i1 %t36 to i32 store i32 %t37, ptr %t24 @@ -164849,20 +165476,20 @@ scend9: %t39 = icmp ne i32 %t38, 0 br i1 %t39, label %then10, label %ifend12 then10: - call void @fn_emit(ptr @.str12095) + call void @fn_emit(ptr @.str12208) %t40 = load ptr, ptr %t1 call void @fn_emit(ptr %t40) - call void @fn_emit(ptr @.str12096) + call void @fn_emit(ptr @.str12209) %t41 = load ptr, ptr %t0 %t42 = getelementptr inbounds %Cmp_Node, ptr %t41, i32 0, i32 1 %t43 = load ptr, ptr %t42 call void @fn_emit(ptr %t43) - call void @fn_emit(ptr @.str12097) + call void @fn_emit(ptr @.str12210) %t44 = load ptr, ptr %t0 %t45 = getelementptr inbounds %Cmp_Node, ptr %t44, i32 0, i32 1 %t46 = load ptr, ptr %t45 - %t47 = call ptr @lp_str_concat(ptr @.str12098, ptr %t46) - %t48 = call ptr @lp_str_concat(ptr %t47, ptr @.str12099) + %t47 = call ptr @lp_str_concat(ptr @.str12211, ptr %t46) + %t48 = call ptr @lp_str_concat(ptr %t47, ptr @.str12212) store ptr %t48, ptr %t49 %t50 = load ptr, ptr %t0 %t51 = getelementptr inbounds %Cmp_Node, ptr %t50, i32 0, i32 2 @@ -164875,8 +165502,8 @@ then13: %t56 = load ptr, ptr %t0 %t57 = getelementptr inbounds %Cmp_Node, ptr %t56, i32 0, i32 1 %t58 = load ptr, ptr %t57 - %t59 = call ptr @lp_str_concat(ptr @.str12100, ptr %t58) - %t60 = call ptr @lp_str_concat(ptr %t59, ptr @.str12101) + %t59 = call ptr @lp_str_concat(ptr @.str12213, ptr %t58) + %t60 = call ptr @lp_str_concat(ptr %t59, ptr @.str12214) store ptr %t60, ptr %t49 br label %ifend15 ifend15: @@ -164887,10 +165514,10 @@ ifend15: %t65 = icmp ne i32 %t64, 0 br i1 %t65, label %then16, label %ifend18 then16: - call void @fn_emit(ptr @.str12102) + call void @fn_emit(ptr @.str12215) %t66 = load ptr, ptr %t49 call void @fn_emit(ptr %t66) - call void @fn_emit(ptr @.str12103) + call void @fn_emit(ptr @.str12216) br label %ifend18 ifend18: br label %ret @@ -164910,230 +165537,232 @@ then19: store ptr %t76, ptr %t77 %t78 = call ptr @fn_itoa(i32 1024) store ptr %t78, ptr %t79 - %t80 = call ptr @fn_nreg() - store ptr %t80, ptr %t81 - call void @fn_emit(ptr @.str12104) + %t80 = load ptr, ptr %t0 + %t81 = getelementptr inbounds %Cmp_Node, ptr %t80, i32 0, i32 1 %t82 = load ptr, ptr %t81 - call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str12105) - %t83 = load ptr, ptr %t79 - call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str12106) - %t84 = load ptr, ptr %t0 - %t85 = getelementptr inbounds %Cmp_Node, ptr %t84, i32 0, i32 1 - %t86 = load ptr, ptr %t85 - call void @fn_emit(ptr %t86) - call void @fn_emit(ptr @.str12107) - %t87 = load ptr, ptr %t77 - %t88 = getelementptr inbounds %Cmp_Val, ptr %t87, i32 0, i32 0 - %t89 = load ptr, ptr %t88 + %t83 = call ptr @lp_str_concat(ptr @.str12217, ptr %t82) + %t84 = call ptr @fn_ecs_base(ptr %t83) + store ptr %t84, ptr %t85 + %t86 = call ptr @fn_nreg() + store ptr %t86, ptr %t87 + call void @fn_emit(ptr @.str12218) + %t88 = load ptr, ptr %t87 + call void @fn_emit(ptr %t88) + call void @fn_emit(ptr @.str12219) + %t89 = load ptr, ptr %t85 call void @fn_emit(ptr %t89) - call void @fn_emit(ptr @.str12108) - call void @fn_emit(ptr @.str12109) - %t90 = load ptr, ptr %t1 - call void @fn_emit(ptr %t90) - call void @fn_emit(ptr @.str12110) - %t91 = load ptr, ptr %t81 - call void @fn_emit(ptr %t91) - call void @fn_emit(ptr @.str12111) - store ptr null, ptr %t92 - %t93 = load ptr, ptr %t0 - %t94 = getelementptr inbounds %Cmp_Node, ptr %t93, i32 0, i32 2 - %t95 = load i32, ptr %t94 - %t96 = icmp eq i32 %t95, 1 - %t97 = zext i1 %t96 to i32 - %t98 = icmp ne i32 %t97, 0 - br i1 %t98, label %then22, label %else23 + call void @fn_emit(ptr @.str12220) + %t90 = load ptr, ptr %t77 + %t91 = getelementptr inbounds %Cmp_Val, ptr %t90, i32 0, i32 0 + %t92 = load ptr, ptr %t91 + call void @fn_emit(ptr %t92) + call void @fn_emit(ptr @.str12221) + call void @fn_emit(ptr @.str12222) + %t93 = load ptr, ptr %t1 + call void @fn_emit(ptr %t93) + call void @fn_emit(ptr @.str12223) + %t94 = load ptr, ptr %t87 + call void @fn_emit(ptr %t94) + call void @fn_emit(ptr @.str12224) + store ptr null, ptr %t95 + %t96 = load ptr, ptr %t0 + %t97 = getelementptr inbounds %Cmp_Node, ptr %t96, i32 0, i32 2 + %t98 = load i32, ptr %t97 + %t99 = icmp eq i32 %t98, 1 + %t100 = zext i1 %t99 to i32 + %t101 = icmp ne i32 %t100, 0 + br i1 %t101, label %then22, label %else23 then22: - %t99 = load ptr, ptr %t0 - %t100 = getelementptr inbounds %Cmp_Node, ptr %t99, i32 0, i32 1 - %t101 = load ptr, ptr %t100 - %t102 = call ptr @fn_onenable_body(ptr %t101) - store ptr %t102, ptr %t92 + %t102 = load ptr, ptr %t0 + %t103 = getelementptr inbounds %Cmp_Node, ptr %t102, i32 0, i32 1 + %t104 = load ptr, ptr %t103 + %t105 = call ptr @fn_onenable_body(ptr %t104) + store ptr %t105, ptr %t95 br label %ifend24 else23: - %t103 = load ptr, ptr %t0 - %t104 = getelementptr inbounds %Cmp_Node, ptr %t103, i32 0, i32 1 - %t105 = load ptr, ptr %t104 - %t106 = call ptr @fn_ondisable_body(ptr %t105) - store ptr %t106, ptr %t92 + %t106 = load ptr, ptr %t0 + %t107 = getelementptr inbounds %Cmp_Node, ptr %t106, i32 0, i32 1 + %t108 = load ptr, ptr %t107 + %t109 = call ptr @fn_ondisable_body(ptr %t108) + store ptr %t109, ptr %t95 br label %ifend24 ifend24: - %t107 = load ptr, ptr %t92 - %t108 = icmp ne ptr %t107, null - %t109 = zext i1 %t108 to i32 - %t110 = icmp ne i32 %t109, 0 - br i1 %t110, label %then25, label %ifend27 + %t110 = load ptr, ptr %t95 + %t111 = icmp ne ptr %t110, null + %t112 = zext i1 %t111 to i32 + %t113 = icmp ne i32 %t112, 0 + br i1 %t113, label %then25, label %ifend27 then25: - %t111 = load i32, ptr @g_nloc - store i32 %t111, ptr %t112 - %t113 = call ptr @fn_nreg() - store ptr %t113, ptr %t114 - call void @fn_emit(ptr @.str12112) - %t115 = load ptr, ptr %t114 - call void @fn_emit(ptr %t115) - call void @fn_emit(ptr @.str12113) - %t116 = load ptr, ptr %t79 - call void @fn_emit(ptr %t116) - call void @fn_emit(ptr @.str12114) - %t117 = load ptr, ptr %t0 - %t118 = getelementptr inbounds %Cmp_Node, ptr %t117, i32 0, i32 1 - %t119 = load ptr, ptr %t118 - call void @fn_emit(ptr %t119) - call void @fn_emit(ptr @.str12115) - %t120 = load ptr, ptr %t0 - %t121 = getelementptr inbounds %Cmp_Node, ptr %t120, i32 0, i32 1 - %t122 = load ptr, ptr %t121 - call void @fn_emit(ptr %t122) - call void @fn_emit(ptr @.str12116) - %t123 = load ptr, ptr %t77 - %t124 = getelementptr inbounds %Cmp_Val, ptr %t123, i32 0, i32 0 - %t125 = load ptr, ptr %t124 - call void @fn_emit(ptr %t125) - call void @fn_emit(ptr @.str12117) - %t126 = call ptr @fn_emit_alloca(ptr @.str12118) - store ptr %t126, ptr %t127 - call void @fn_emit(ptr @.str12119) - %t128 = load ptr, ptr %t114 + %t114 = load i32, ptr @g_nloc + store i32 %t114, ptr %t115 + %t116 = load ptr, ptr %t0 + %t117 = getelementptr inbounds %Cmp_Node, ptr %t116, i32 0, i32 1 + %t118 = load ptr, ptr %t117 + %t119 = call ptr @lp_str_concat(ptr @.str12225, ptr %t118) + %t120 = call ptr @fn_ecs_base(ptr %t119) + store ptr %t120, ptr %t121 + %t122 = call ptr @fn_nreg() + store ptr %t122, ptr %t123 + call void @fn_emit(ptr @.str12226) + %t124 = load ptr, ptr %t123 + call void @fn_emit(ptr %t124) + call void @fn_emit(ptr @.str12227) + %t125 = load ptr, ptr %t0 + %t126 = getelementptr inbounds %Cmp_Node, ptr %t125, i32 0, i32 1 + %t127 = load ptr, ptr %t126 + call void @fn_emit(ptr %t127) + call void @fn_emit(ptr @.str12228) + %t128 = load ptr, ptr %t121 call void @fn_emit(ptr %t128) - call void @fn_emit(ptr @.str12120) - %t129 = load ptr, ptr %t127 - call void @fn_emit(ptr %t129) - call void @fn_emit(ptr @.str12121) - %t130 = load ptr, ptr %t0 - %t131 = getelementptr inbounds %Cmp_Node, ptr %t130, i32 0, i32 1 - %t132 = load ptr, ptr %t131 - %t133 = load ptr, ptr %t127 - %t134 = load ptr, ptr %t0 - %t135 = getelementptr inbounds %Cmp_Node, ptr %t134, i32 0, i32 1 - %t136 = load ptr, ptr %t135 - call void @fn_loc_push(ptr %t132, ptr %t133, ptr %t136) - %t137 = load ptr, ptr %t92 - call void @fn_emit_block(ptr %t137) - %t138 = load i32, ptr %t112 - store i32 %t138, ptr @g_nloc + call void @fn_emit(ptr @.str12229) + %t129 = load ptr, ptr %t77 + %t130 = getelementptr inbounds %Cmp_Val, ptr %t129, i32 0, i32 0 + %t131 = load ptr, ptr %t130 + call void @fn_emit(ptr %t131) + call void @fn_emit(ptr @.str12230) + %t132 = call ptr @fn_emit_alloca(ptr @.str12231) + store ptr %t132, ptr %t133 + call void @fn_emit(ptr @.str12232) + %t134 = load ptr, ptr %t123 + call void @fn_emit(ptr %t134) + call void @fn_emit(ptr @.str12233) + %t135 = load ptr, ptr %t133 + call void @fn_emit(ptr %t135) + call void @fn_emit(ptr @.str12234) + %t136 = load ptr, ptr %t0 + %t137 = getelementptr inbounds %Cmp_Node, ptr %t136, i32 0, i32 1 + %t138 = load ptr, ptr %t137 + %t139 = load ptr, ptr %t133 + %t140 = load ptr, ptr %t0 + %t141 = getelementptr inbounds %Cmp_Node, ptr %t140, i32 0, i32 1 + %t142 = load ptr, ptr %t141 + call void @fn_loc_push(ptr %t138, ptr %t139, ptr %t142) + %t143 = load ptr, ptr %t95 + call void @fn_emit_block(ptr %t143) + %t144 = load i32, ptr %t115 + store i32 %t144, ptr @g_nloc br label %ifend27 ifend27: - %t139 = load ptr, ptr %t0 - %t140 = getelementptr inbounds %Cmp_Node, ptr %t139, i32 0, i32 1 - %t141 = load ptr, ptr %t140 - %t142 = call ptr @lp_str_concat(ptr @.str12122, ptr %t141) - %t143 = call ptr @lp_str_concat(ptr %t142, ptr @.str12123) - store ptr %t143, ptr %t144 %t145 = load ptr, ptr %t0 - %t146 = getelementptr inbounds %Cmp_Node, ptr %t145, i32 0, i32 2 - %t147 = load i32, ptr %t146 - %t148 = icmp eq i32 %t147, 1 - %t149 = zext i1 %t148 to i32 - %t150 = icmp ne i32 %t149, 0 - br i1 %t150, label %then28, label %ifend30 -then28: + %t146 = getelementptr inbounds %Cmp_Node, ptr %t145, i32 0, i32 1 + %t147 = load ptr, ptr %t146 + %t148 = call ptr @lp_str_concat(ptr @.str12235, ptr %t147) + %t149 = call ptr @lp_str_concat(ptr %t148, ptr @.str12236) + store ptr %t149, ptr %t150 %t151 = load ptr, ptr %t0 - %t152 = getelementptr inbounds %Cmp_Node, ptr %t151, i32 0, i32 1 - %t153 = load ptr, ptr %t152 - %t154 = call ptr @lp_str_concat(ptr @.str12124, ptr %t153) - %t155 = call ptr @lp_str_concat(ptr %t154, ptr @.str12125) - store ptr %t155, ptr %t144 + %t152 = getelementptr inbounds %Cmp_Node, ptr %t151, i32 0, i32 2 + %t153 = load i32, ptr %t152 + %t154 = icmp eq i32 %t153, 1 + %t155 = zext i1 %t154 to i32 + %t156 = icmp ne i32 %t155, 0 + br i1 %t156, label %then28, label %ifend30 +then28: + %t157 = load ptr, ptr %t0 + %t158 = getelementptr inbounds %Cmp_Node, ptr %t157, i32 0, i32 1 + %t159 = load ptr, ptr %t158 + %t160 = call ptr @lp_str_concat(ptr @.str12237, ptr %t159) + %t161 = call ptr @lp_str_concat(ptr %t160, ptr @.str12238) + store ptr %t161, ptr %t150 br label %ifend30 ifend30: - %t156 = load ptr, ptr %t144 - %t157 = call ptr @fn_find_event(ptr %t156) - %t158 = icmp ne ptr %t157, null - %t159 = zext i1 %t158 to i32 - %t160 = icmp ne i32 %t159, 0 - br i1 %t160, label %then31, label %ifend33 + %t162 = load ptr, ptr %t150 + %t163 = call ptr @fn_find_event(ptr %t162) + %t164 = icmp ne ptr %t163, null + %t165 = zext i1 %t164 to i32 + %t166 = icmp ne i32 %t165, 0 + br i1 %t166, label %then31, label %ifend33 then31: - call void @fn_emit(ptr @.str12126) - %t161 = load ptr, ptr %t144 - call void @fn_emit(ptr %t161) - call void @fn_emit(ptr @.str12127) - %t162 = load ptr, ptr %t77 - %t163 = getelementptr inbounds %Cmp_Val, ptr %t162, i32 0, i32 0 - %t164 = load ptr, ptr %t163 - call void @fn_emit(ptr %t164) - call void @fn_emit(ptr @.str12128) + call void @fn_emit(ptr @.str12239) + %t167 = load ptr, ptr %t150 + call void @fn_emit(ptr %t167) + call void @fn_emit(ptr @.str12240) + %t168 = load ptr, ptr %t77 + %t169 = getelementptr inbounds %Cmp_Val, ptr %t168, i32 0, i32 0 + %t170 = load ptr, ptr %t169 + call void @fn_emit(ptr %t170) + call void @fn_emit(ptr @.str12241) br label %ifend33 ifend33: br label %ifend21 else20: - store ptr @.str12129, ptr %t165 - %t166 = load ptr, ptr %t0 - %t167 = getelementptr inbounds %Cmp_Node, ptr %t166, i32 0, i32 1 - %t168 = load ptr, ptr %t167 - %t169 = call i32 @fn_is_model(ptr %t168) - %t170 = icmp ne i32 %t169, 0 - br i1 %t170, label %then34, label %ifend36 + store ptr @.str12242, ptr %t171 + %t172 = load ptr, ptr %t0 + %t173 = getelementptr inbounds %Cmp_Node, ptr %t172, i32 0, i32 1 + %t174 = load ptr, ptr %t173 + %t175 = call i32 @fn_is_model(ptr %t174) + %t176 = icmp ne i32 %t175, 0 + br i1 %t176, label %then34, label %ifend36 then34: - store ptr @.str12130, ptr %t165 + store ptr @.str12243, ptr %t171 br label %ifend36 ifend36: - %t171 = load ptr, ptr %t0 - %t172 = getelementptr inbounds %Cmp_Node, ptr %t171, i32 0, i32 1 - %t173 = load ptr, ptr %t172 - store ptr %t173, ptr %t174 - %t177 = load ptr, ptr %t165 - %t178 = call i32 @lp_str_eq(ptr %t177, ptr @.str12131) - %t179 = icmp ne i32 %t178, 0 - %t180 = zext i1 %t179 to i32 - store i32 %t180, ptr %t176 - br i1 %t179, label %sc37, label %scend38 -sc37: - %t181 = load ptr, ptr %t174 - %t182 = call ptr @fn_find_sys(ptr %t181) - %t183 = icmp eq ptr %t182, null - %t184 = zext i1 %t183 to i32 + %t177 = load ptr, ptr %t0 + %t178 = getelementptr inbounds %Cmp_Node, ptr %t177, i32 0, i32 1 + %t179 = load ptr, ptr %t178 + store ptr %t179, ptr %t180 + %t183 = load ptr, ptr %t171 + %t184 = call i32 @lp_str_eq(ptr %t183, ptr @.str12244) %t185 = icmp ne i32 %t184, 0 %t186 = zext i1 %t185 to i32 - store i32 %t186, ptr %t176 + store i32 %t186, ptr %t182 + br i1 %t185, label %sc37, label %scend38 +sc37: + %t187 = load ptr, ptr %t180 + %t188 = call ptr @fn_find_sys(ptr %t187) + %t189 = icmp eq ptr %t188, null + %t190 = zext i1 %t189 to i32 + %t191 = icmp ne i32 %t190, 0 + %t192 = zext i1 %t191 to i32 + store i32 %t192, ptr %t182 br label %scend38 scend38: - %t187 = load i32, ptr %t176 - %t188 = icmp ne i32 %t187, 0 - %t189 = zext i1 %t188 to i32 - store i32 %t189, ptr %t175 - br i1 %t188, label %sc39, label %scend40 + %t193 = load i32, ptr %t182 + %t194 = icmp ne i32 %t193, 0 + %t195 = zext i1 %t194 to i32 + store i32 %t195, ptr %t181 + br i1 %t194, label %sc39, label %scend40 sc39: - %t190 = load ptr, ptr @g_g_cur_scene - %t191 = icmp ne ptr %t190, null - %t192 = zext i1 %t191 to i32 - %t193 = icmp ne i32 %t192, 0 - %t194 = zext i1 %t193 to i32 - store i32 %t194, ptr %t175 + %t196 = load ptr, ptr @g_g_cur_scene + %t197 = icmp ne ptr %t196, null + %t198 = zext i1 %t197 to i32 + %t199 = icmp ne i32 %t198, 0 + %t200 = zext i1 %t199 to i32 + store i32 %t200, ptr %t181 br label %scend40 scend40: - %t195 = load i32, ptr %t175 - %t196 = icmp ne i32 %t195, 0 - br i1 %t196, label %then41, label %ifend43 + %t201 = load i32, ptr %t181 + %t202 = icmp ne i32 %t201, 0 + br i1 %t202, label %then41, label %ifend43 then41: - %t197 = load ptr, ptr @g_g_cur_scene - %t198 = getelementptr inbounds %Cmp_Node, ptr %t197, i32 0, i32 1 - %t199 = load ptr, ptr %t198 - %t200 = call ptr @lp_str_concat(ptr %t199, ptr @.str12132) - %t201 = load ptr, ptr %t174 - %t202 = call ptr @lp_str_concat(ptr %t200, ptr %t201) - store ptr %t202, ptr %t203 - %t204 = load ptr, ptr %t203 - %t205 = call ptr @fn_find_sys(ptr %t204) - %t206 = icmp ne ptr %t205, null - %t207 = zext i1 %t206 to i32 - %t208 = icmp ne i32 %t207, 0 - br i1 %t208, label %then44, label %ifend46 + %t203 = load ptr, ptr @g_g_cur_scene + %t204 = getelementptr inbounds %Cmp_Node, ptr %t203, i32 0, i32 1 + %t205 = load ptr, ptr %t204 + %t206 = call ptr @lp_str_concat(ptr %t205, ptr @.str12245) + %t207 = load ptr, ptr %t180 + %t208 = call ptr @lp_str_concat(ptr %t206, ptr %t207) + store ptr %t208, ptr %t209 + %t210 = load ptr, ptr %t209 + %t211 = call ptr @fn_find_sys(ptr %t210) + %t212 = icmp ne ptr %t211, null + %t213 = zext i1 %t212 to i32 + %t214 = icmp ne i32 %t213, 0 + br i1 %t214, label %then44, label %ifend46 then44: - %t209 = load ptr, ptr %t203 - store ptr %t209, ptr %t174 + %t215 = load ptr, ptr %t209 + store ptr %t215, ptr %t180 br label %ifend46 ifend46: br label %ifend43 ifend43: - call void @fn_emit(ptr @.str12133) - %t210 = load ptr, ptr %t1 - call void @fn_emit(ptr %t210) - call void @fn_emit(ptr @.str12134) - %t211 = load ptr, ptr %t165 - call void @fn_emit(ptr %t211) - %t212 = load ptr, ptr %t174 - call void @fn_emit(ptr %t212) - call void @fn_emit(ptr @.str12135) + call void @fn_emit(ptr @.str12246) + %t216 = load ptr, ptr %t1 + call void @fn_emit(ptr %t216) + call void @fn_emit(ptr @.str12247) + %t217 = load ptr, ptr %t171 + call void @fn_emit(ptr %t217) + %t218 = load ptr, ptr %t180 + call void @fn_emit(ptr %t218) + call void @fn_emit(ptr @.str12248) br label %ifend21 ifend21: br label %ret @@ -165161,7 +165790,7 @@ entry: call void @fn_loc_reset() store i32 0, ptr @g_nloop store i32 0, ptr @g_nself - store ptr @.str12136, ptr @g_ret_ty + store ptr @.str12249, ptr @g_ret_ty %t7 = call ptr @fn_buf_new() store ptr %t7, ptr %t8 %t9 = call ptr @fn_buf_new() @@ -165180,26 +165809,26 @@ entry: %t19 = icmp ne i32 %t18, 0 br i1 %t19, label %then0, label %ifend2 then0: - call void @fn_emit(ptr @.str12137) + call void @fn_emit(ptr @.str12250) br label %ifend2 ifend2: - call void @fn_emit(ptr @.str12138) + call void @fn_emit(ptr @.str12251) %t20 = load ptr, ptr %t11 store ptr %t20, ptr @g_code - call void @fn_emit(ptr @.str12139) + call void @fn_emit(ptr @.str12252) %t21 = load ptr, ptr %t0 %t22 = getelementptr inbounds %Cmp_Node, ptr %t21, i32 0, i32 1 %t23 = load ptr, ptr %t22 call void @fn_emit(ptr %t23) - call void @fn_emit(ptr @.str12140) + call void @fn_emit(ptr @.str12253) %t24 = load ptr, ptr @g_falloc %t25 = call ptr @fn_buf_str(ptr %t24) call void @fn_emit(ptr %t25) %t26 = load ptr, ptr %t8 %t27 = call ptr @fn_buf_str(ptr %t26) call void @fn_emit(ptr %t27) - call void @fn_emit(ptr @.str12141) - store ptr @.str12142, ptr @g_g_det_ctx + call void @fn_emit(ptr @.str12254) + store ptr @.str12255, ptr @g_g_det_ctx br label %ret ret: ret void @@ -165221,12 +165850,12 @@ entry: %t1 = load ptr, ptr %t0 %t2 = getelementptr inbounds %Cmp_Node, ptr %t1, i32 0, i32 1 %t3 = load ptr, ptr %t2 - %t4 = call ptr @lp_str_concat(ptr @.str12143, ptr %t3) + %t4 = call ptr @lp_str_concat(ptr @.str12256, ptr %t3) %t5 = call ptr @fn_emit_bind(ptr %t4) store ptr %t5, ptr %t6 %t7 = load ptr, ptr %t6 - %t8 = call ptr @lp_str_concat(ptr @.str12144, ptr %t7) - %t9 = call ptr @lp_str_concat(ptr %t8, ptr @.str12145) + %t8 = call ptr @lp_str_concat(ptr @.str12257, ptr %t7) + %t9 = call ptr @lp_str_concat(ptr %t8, ptr @.str12258) %t10 = call ptr @fn_emit_bind(ptr %t9) store ptr %t10, ptr %t11 %t13 = load ptr, ptr %t0 @@ -165259,17 +165888,17 @@ then2: %t32 = load ptr, ptr %t31 %t33 = getelementptr inbounds %Cmp_Node, ptr %t32, i32 0, i32 1 %t34 = load ptr, ptr %t33 - %t35 = call ptr @lp_str_concat(ptr @.str12146, ptr %t34) + %t35 = call ptr @lp_str_concat(ptr @.str12259, ptr %t34) %t36 = call ptr @fn_emit_bind(ptr %t35) store ptr %t36, ptr %t37 %t38 = load ptr, ptr %t37 - %t39 = call ptr @lp_str_concat(ptr @.str12147, ptr %t38) - %t40 = call ptr @lp_str_concat(ptr %t39, ptr @.str12148) + %t39 = call ptr @lp_str_concat(ptr @.str12260, ptr %t38) + %t40 = call ptr @lp_str_concat(ptr %t39, ptr @.str12261) %t41 = call ptr @fn_emit_bind(ptr %t40) store ptr %t41, ptr %t42 %t43 = load ptr, ptr %t11 - %t44 = call ptr @lp_str_concat(ptr @.str12149, ptr %t43) - %t45 = call ptr @lp_str_concat(ptr %t44, ptr @.str12150) + %t44 = call ptr @lp_str_concat(ptr @.str12262, ptr %t43) + %t45 = call ptr @lp_str_concat(ptr %t44, ptr @.str12263) %t46 = load ptr, ptr %t42 %t47 = call ptr @lp_str_concat(ptr %t45, ptr %t46) %t48 = call ptr @fn_emit_bind(ptr %t47) @@ -165284,51 +165913,51 @@ ifend4: %t54 = icmp ne i32 %t53, 0 br i1 %t54, label %then5, label %ifend7 then5: - %t55 = call ptr @fn_emit_bind(ptr @.str12151) + %t55 = call ptr @fn_emit_bind(ptr @.str12264) store ptr %t55, ptr %t56 %t57 = load ptr, ptr %t56 - %t58 = call ptr @lp_str_concat(ptr @.str12152, ptr %t57) - %t59 = call ptr @lp_str_concat(ptr %t58, ptr @.str12153) + %t58 = call ptr @lp_str_concat(ptr @.str12265, ptr %t57) + %t59 = call ptr @lp_str_concat(ptr %t58, ptr @.str12266) %t60 = call ptr @fn_emit_bind(ptr %t59) store ptr %t60, ptr %t61 %t62 = load ptr, ptr %t11 - %t63 = call ptr @lp_str_concat(ptr @.str12154, ptr %t62) - %t64 = call ptr @lp_str_concat(ptr %t63, ptr @.str12155) + %t63 = call ptr @lp_str_concat(ptr @.str12267, ptr %t62) + %t64 = call ptr @lp_str_concat(ptr %t63, ptr @.str12268) %t65 = load ptr, ptr %t61 %t66 = call ptr @lp_str_concat(ptr %t64, ptr %t65) %t67 = call ptr @fn_emit_bind(ptr %t66) store ptr %t67, ptr %t11 br label %ifend7 ifend7: - %t68 = call ptr @fn_lbl(ptr @.str12156) + %t68 = call ptr @fn_lbl(ptr @.str12269) store ptr %t68, ptr %t69 - %t70 = call ptr @fn_lbl(ptr @.str12157) + %t70 = call ptr @fn_lbl(ptr @.str12270) store ptr %t70, ptr %t71 - call void @fn_emit(ptr @.str12158) + call void @fn_emit(ptr @.str12271) %t72 = load ptr, ptr %t11 call void @fn_emit(ptr %t72) - call void @fn_emit(ptr @.str12159) + call void @fn_emit(ptr @.str12272) %t73 = load ptr, ptr %t69 call void @fn_emit(ptr %t73) - call void @fn_emit(ptr @.str12160) + call void @fn_emit(ptr @.str12273) %t74 = load ptr, ptr %t71 call void @fn_emit(ptr %t74) - call void @fn_emit(ptr @.str12161) + call void @fn_emit(ptr @.str12274) %t75 = load ptr, ptr %t69 call void @fn_emit(ptr %t75) - call void @fn_emit(ptr @.str12162) + call void @fn_emit(ptr @.str12275) %t76 = load ptr, ptr %t0 %t77 = getelementptr inbounds %Cmp_Node, ptr %t76, i32 0, i32 1 %t78 = load ptr, ptr %t77 call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str12163) - call void @fn_emit(ptr @.str12164) + call void @fn_emit(ptr @.str12276) + call void @fn_emit(ptr @.str12277) %t79 = load ptr, ptr %t71 call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str12165) + call void @fn_emit(ptr @.str12278) %t80 = load ptr, ptr %t71 call void @fn_emit(ptr %t80) - call void @fn_emit(ptr @.str12166) + call void @fn_emit(ptr @.str12279) br label %ret ret: ret void @@ -165372,8 +166001,8 @@ scend4: then5: %t20 = load ptr, ptr %t1 %t21 = call ptr @fn_fn_sym(ptr %t20) - %t22 = call ptr @lp_str_concat(ptr @.str12167, ptr %t21) - %t23 = call ptr @lp_str_concat(ptr %t22, ptr @.str12168) + %t22 = call ptr @lp_str_concat(ptr @.str12280, ptr %t21) + %t23 = call ptr @lp_str_concat(ptr %t22, ptr @.str12281) call void @fn_emit(ptr %t23) br label %ifend7 ifend7: @@ -165412,7 +166041,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12169, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12282, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -165433,7 +166062,7 @@ then5: br i1 %t28, label %ixok8, label %ixbad9 ixbad9: %t29 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str12170, i32 %t23, i32 %t27) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str12283, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok8: @@ -165449,7 +166078,7 @@ ixok8: br i1 %t38, label %ixok10, label %ixbad11 ixbad11: %t39 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str12171, i32 %t33, i32 %t37) + call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str12284, i32 %t33, i32 %t37) call void @exit(i32 1) unreachable ixok10: @@ -165464,7 +166093,7 @@ ifend7: br label %wcond0 wend2: %t44 = load ptr, ptr %t0 - %t45 = call i32 @lp_str_eq(ptr %t44, ptr @.str12172) + %t45 = call i32 @lp_str_eq(ptr %t44, ptr @.str12285) %t46 = icmp ne i32 %t45, 0 br i1 %t46, label %then12, label %ifend14 then12: @@ -165474,7 +166103,7 @@ then12: store i32 %t50, ptr %t47 br i1 %t49, label %sc15, label %scend16 sc15: - %t51 = call ptr @fn_find_fn(ptr @.str12173) + %t51 = call ptr @fn_find_fn(ptr @.str12286) %t52 = icmp ne ptr %t51, null %t53 = zext i1 %t52 to i32 %t54 = icmp ne i32 %t53, 0 @@ -165486,9 +166115,9 @@ scend16: %t57 = icmp ne i32 %t56, 0 br i1 %t57, label %then17, label %ifend19 then17: - %t58 = call ptr @fn_fn_sym(ptr @.str12175) - %t59 = call ptr @lp_str_concat(ptr @.str12174, ptr %t58) - %t60 = call ptr @lp_str_concat(ptr %t59, ptr @.str12176) + %t58 = call ptr @fn_fn_sym(ptr @.str12288) + %t59 = call ptr @lp_str_concat(ptr @.str12287, ptr %t58) + %t60 = call ptr @lp_str_concat(ptr %t59, ptr @.str12289) call void @fn_emit(ptr %t60) br label %ifend19 ifend19: @@ -165496,7 +166125,7 @@ ifend19: %t62 = icmp ne i32 %t61, 0 br i1 %t62, label %then20, label %ifend22 then20: - call void @fn_emit(ptr @.str12177) + call void @fn_emit(ptr @.str12290) br label %ifend22 ifend22: %t64 = load i32, ptr @g_g_uses_fx @@ -165505,7 +166134,7 @@ ifend22: store i32 %t66, ptr %t63 br i1 %t65, label %sc23, label %scend24 sc23: - %t67 = call ptr @fn_find_fn(ptr @.str12178) + %t67 = call ptr @fn_find_fn(ptr @.str12291) %t68 = icmp ne ptr %t67, null %t69 = zext i1 %t68 to i32 %t70 = icmp ne i32 %t69, 0 @@ -165517,16 +166146,16 @@ scend24: %t73 = icmp ne i32 %t72, 0 br i1 %t73, label %then25, label %ifend27 then25: - %t74 = call ptr @fn_fn_sym(ptr @.str12180) - %t75 = call ptr @lp_str_concat(ptr @.str12179, ptr %t74) - %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str12181) + %t74 = call ptr @fn_fn_sym(ptr @.str12293) + %t75 = call ptr @lp_str_concat(ptr @.str12292, ptr %t74) + %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str12294) call void @fn_emit(ptr %t76) br label %ifend27 ifend27: br label %ifend14 ifend14: %t77 = load ptr, ptr %t0 - %t78 = call i32 @lp_str_eq(ptr %t77, ptr @.str12182) + %t78 = call i32 @lp_str_eq(ptr %t77, ptr @.str12295) %t79 = icmp ne i32 %t78, 0 br i1 %t79, label %then28, label %ifend30 then28: @@ -165536,7 +166165,7 @@ then28: store i32 %t83, ptr %t80 br i1 %t82, label %sc31, label %scend32 sc31: - %t84 = call ptr @fn_find_fn(ptr @.str12183) + %t84 = call ptr @fn_find_fn(ptr @.str12296) %t85 = icmp ne ptr %t84, null %t86 = zext i1 %t85 to i32 %t87 = icmp ne i32 %t86, 0 @@ -165548,9 +166177,9 @@ scend32: %t90 = icmp ne i32 %t89, 0 br i1 %t90, label %then33, label %ifend35 then33: - %t91 = call ptr @fn_fn_sym(ptr @.str12185) - %t92 = call ptr @lp_str_concat(ptr @.str12184, ptr %t91) - %t93 = call ptr @lp_str_concat(ptr %t92, ptr @.str12186) + %t91 = call ptr @fn_fn_sym(ptr @.str12298) + %t92 = call ptr @lp_str_concat(ptr @.str12297, ptr %t91) + %t93 = call ptr @lp_str_concat(ptr %t92, ptr @.str12299) call void @fn_emit(ptr %t93) br label %ifend35 ifend35: @@ -165564,312 +166193,319 @@ ret: define void @fn_emit_countdown_system() { entry: %t1 = alloca ptr - %t3 = alloca i32 - %t4 = alloca i32 - %t22 = alloca ptr - %t29 = alloca i32 - %t30 = alloca i32 - %t62 = alloca ptr - %t66 = alloca ptr - %t119 = alloca ptr + %t3 = alloca ptr + %t5 = alloca i32 + %t6 = alloca i32 + %t24 = alloca ptr + %t31 = alloca i32 + %t32 = alloca i32 + %t64 = alloca ptr + %t68 = alloca ptr + %t75 = alloca ptr + %t91 = alloca ptr + %t127 = alloca ptr %t0 = call ptr @fn_itoa(i32 1024) store ptr %t0, ptr %t1 - call void @fn_emit(ptr @.str12187) - call void @fn_emit(ptr @.str12188) - call void @fn_emit(ptr @.str12189) - call void @fn_emit(ptr @.str12190) - call void @fn_emit(ptr @.str12191) - %t2 = load ptr, ptr %t1 - call void @fn_emit(ptr %t2) - call void @fn_emit(ptr @.str12192) - call void @fn_emit(ptr @.str12193) - store i32 0, ptr %t3 - store i32 0, ptr %t4 + call void @fn_emit(ptr @.str12300) + call void @fn_emit(ptr @.str12301) + call void @fn_emit(ptr @.str12302) + call void @fn_emit(ptr @.str12303) + %t2 = call ptr @fn_ecs_base(ptr @.str12304) + store ptr %t2, ptr %t3 + call void @fn_emit(ptr @.str12305) + %t4 = load ptr, ptr %t3 + call void @fn_emit(ptr %t4) + call void @fn_emit(ptr @.str12306) + call void @fn_emit(ptr @.str12307) + store i32 0, ptr %t5 + store i32 0, ptr %t6 br label %wcond0 wcond0: - %t5 = load i32, ptr %t4 - %t6 = load ptr, ptr @g_prog - %t7 = getelementptr inbounds %LSlice, ptr %t6, i32 0, i32 1 - %t8 = load i32, ptr %t7 - %t9 = icmp slt i32 %t5, %t8 - %t10 = zext i1 %t9 to i32 - %t11 = icmp ne i32 %t10, 0 - br i1 %t11, label %wbody1, label %wend2 + %t7 = load i32, ptr %t6 + %t8 = load ptr, ptr @g_prog + %t9 = getelementptr inbounds %LSlice, ptr %t8, i32 0, i32 1 + %t10 = load i32, ptr %t9 + %t11 = icmp slt i32 %t7, %t10 + %t12 = zext i1 %t11 to i32 + %t13 = icmp ne i32 %t12, 0 + br i1 %t13, label %wbody1, label %wend2 wbody1: - %t12 = load ptr, ptr @g_prog - %t13 = load i32, ptr %t4 - %t14 = getelementptr inbounds %LSlice, ptr %t12, i32 0, i32 0 - %t15 = load ptr, ptr %t14 - %t16 = getelementptr inbounds %LSlice, ptr %t12, i32 0, i32 1 - %t17 = load i32, ptr %t16 - %t18 = icmp ult i32 %t13, %t17 - br i1 %t18, label %ixok3, label %ixbad4 + %t14 = load ptr, ptr @g_prog + %t15 = load i32, ptr %t6 + %t16 = getelementptr inbounds %LSlice, ptr %t14, i32 0, i32 0 + %t17 = load ptr, ptr %t16 + %t18 = getelementptr inbounds %LSlice, ptr %t14, i32 0, i32 1 + %t19 = load i32, ptr %t18 + %t20 = icmp ult i32 %t15, %t19 + br i1 %t20, label %ixok3, label %ixbad4 ixbad4: - %t19 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t19, ptr @.fmt_bounds, ptr @.str12194, i32 %t13, i32 %t17) + %t21 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str12308, i32 %t15, i32 %t19) call void @exit(i32 1) unreachable ixok3: - %t20 = getelementptr inbounds ptr, ptr %t15, i32 %t13 - %t21 = load ptr, ptr %t20 - store ptr %t21, ptr %t22 + %t22 = getelementptr inbounds ptr, ptr %t17, i32 %t15 %t23 = load ptr, ptr %t22 - %t24 = getelementptr inbounds %Cmp_Node, ptr %t23, i32 0, i32 0 - %t25 = load i32, ptr %t24 - %t26 = icmp eq i32 %t25, 8 - %t27 = zext i1 %t26 to i32 - %t28 = icmp ne i32 %t27, 0 - br i1 %t28, label %then5, label %ifend7 + store ptr %t23, ptr %t24 + %t25 = load ptr, ptr %t24 + %t26 = getelementptr inbounds %Cmp_Node, ptr %t25, i32 0, i32 0 + %t27 = load i32, ptr %t26 + %t28 = icmp eq i32 %t27, 8 + %t29 = zext i1 %t28 to i32 + %t30 = icmp ne i32 %t29, 0 + br i1 %t30, label %then5, label %ifend7 then5: - store i32 0, ptr %t29 - store i32 0, ptr %t30 + store i32 0, ptr %t31 + store i32 0, ptr %t32 br label %wcond8 wcond8: - %t31 = load i32, ptr %t30 - %t32 = load ptr, ptr %t22 - %t33 = getelementptr inbounds %Cmp_Node, ptr %t32, i32 0, i32 7 - %t34 = load ptr, ptr %t33 - %t35 = getelementptr inbounds %LSlice, ptr %t34, i32 0, i32 1 - %t36 = load i32, ptr %t35 - %t37 = icmp slt i32 %t31, %t36 - %t38 = zext i1 %t37 to i32 - %t39 = icmp ne i32 %t38, 0 - br i1 %t39, label %wbody9, label %wend10 + %t33 = load i32, ptr %t32 + %t34 = load ptr, ptr %t24 + %t35 = getelementptr inbounds %Cmp_Node, ptr %t34, i32 0, i32 7 + %t36 = load ptr, ptr %t35 + %t37 = getelementptr inbounds %LSlice, ptr %t36, i32 0, i32 1 + %t38 = load i32, ptr %t37 + %t39 = icmp slt i32 %t33, %t38 + %t40 = zext i1 %t39 to i32 + %t41 = icmp ne i32 %t40, 0 + br i1 %t41, label %wbody9, label %wend10 wbody9: - %t40 = load ptr, ptr %t22 - %t41 = getelementptr inbounds %Cmp_Node, ptr %t40, i32 0, i32 7 - %t42 = load ptr, ptr %t41 - %t43 = load i32, ptr %t30 - %t44 = getelementptr inbounds %LSlice, ptr %t42, i32 0, i32 0 - %t45 = load ptr, ptr %t44 - %t46 = getelementptr inbounds %LSlice, ptr %t42, i32 0, i32 1 - %t47 = load i32, ptr %t46 - %t48 = icmp ult i32 %t43, %t47 - br i1 %t48, label %ixok11, label %ixbad12 + %t42 = load ptr, ptr %t24 + %t43 = getelementptr inbounds %Cmp_Node, ptr %t42, i32 0, i32 7 + %t44 = load ptr, ptr %t43 + %t45 = load i32, ptr %t32 + %t46 = getelementptr inbounds %LSlice, ptr %t44, i32 0, i32 0 + %t47 = load ptr, ptr %t46 + %t48 = getelementptr inbounds %LSlice, ptr %t44, i32 0, i32 1 + %t49 = load i32, ptr %t48 + %t50 = icmp ult i32 %t45, %t49 + br i1 %t50, label %ixok11, label %ixbad12 ixbad12: - %t49 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str12195, i32 %t43, i32 %t47) + %t51 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str12309, i32 %t45, i32 %t49) call void @exit(i32 1) unreachable ixok11: - %t50 = getelementptr inbounds ptr, ptr %t45, i32 %t43 - %t51 = load ptr, ptr %t50 - %t52 = getelementptr inbounds %Cmp_Node, ptr %t51, i32 0, i32 3 + %t52 = getelementptr inbounds ptr, ptr %t47, i32 %t45 %t53 = load ptr, ptr %t52 - %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str12196) - %t55 = icmp ne i32 %t54, 0 - br i1 %t55, label %then13, label %ifend15 + %t54 = getelementptr inbounds %Cmp_Node, ptr %t53, i32 0, i32 3 + %t55 = load ptr, ptr %t54 + %t56 = call i32 @lp_str_eq(ptr %t55, ptr @.str12310) + %t57 = icmp ne i32 %t56, 0 + br i1 %t57, label %then13, label %ifend15 then13: - store i32 1, ptr %t29 + store i32 1, ptr %t31 br label %ifend15 ifend15: - %t56 = load i32, ptr %t30 - %t57 = add i32 %t56, 1 - store i32 %t57, ptr %t30 + %t58 = load i32, ptr %t32 + %t59 = add i32 %t58, 1 + store i32 %t59, ptr %t32 br label %wcond8 wend10: - %t58 = load i32, ptr %t29 - %t59 = icmp ne i32 %t58, 0 - br i1 %t59, label %then16, label %ifend18 + %t60 = load i32, ptr %t31 + %t61 = icmp ne i32 %t60, 0 + br i1 %t61, label %then16, label %ifend18 then16: - %t60 = load i32, ptr %t3 - %t61 = call ptr @fn_itoa(i32 %t60) - store ptr %t61, ptr %t62 - %t63 = load i32, ptr %t3 - %t64 = add i32 %t63, 1 - %t65 = call ptr @fn_itoa(i32 %t64) - store ptr %t65, ptr %t66 - call void @fn_emit(ptr @.str12197) - %t67 = load ptr, ptr %t62 - call void @fn_emit(ptr %t67) - call void @fn_emit(ptr @.str12198) - call void @fn_emit(ptr @.str12199) - %t68 = load ptr, ptr %t62 - call void @fn_emit(ptr %t68) - call void @fn_emit(ptr @.str12200) - %t69 = load ptr, ptr %t1 + %t62 = load i32, ptr %t5 + %t63 = call ptr @fn_itoa(i32 %t62) + store ptr %t63, ptr %t64 + %t65 = load i32, ptr %t5 + %t66 = add i32 %t65, 1 + %t67 = call ptr @fn_itoa(i32 %t66) + store ptr %t67, ptr %t68 + call void @fn_emit(ptr @.str12311) + %t69 = load ptr, ptr %t64 call void @fn_emit(ptr %t69) - call void @fn_emit(ptr @.str12201) - %t70 = load ptr, ptr %t22 + call void @fn_emit(ptr @.str12312) + %t70 = load ptr, ptr %t24 %t71 = getelementptr inbounds %Cmp_Node, ptr %t70, i32 0, i32 1 %t72 = load ptr, ptr %t71 - call void @fn_emit(ptr %t72) - call void @fn_emit(ptr @.str12202) - call void @fn_emit(ptr @.str12203) - %t73 = load ptr, ptr %t62 - call void @fn_emit(ptr %t73) - call void @fn_emit(ptr @.str12204) - %t74 = load ptr, ptr %t62 - call void @fn_emit(ptr %t74) - call void @fn_emit(ptr @.str12205) - call void @fn_emit(ptr @.str12206) - %t75 = load ptr, ptr %t62 - call void @fn_emit(ptr %t75) - call void @fn_emit(ptr @.str12207) - %t76 = load ptr, ptr %t62 + %t73 = call ptr @lp_str_concat(ptr @.str12313, ptr %t72) + %t74 = call ptr @fn_ecs_base(ptr %t73) + store ptr %t74, ptr %t75 + call void @fn_emit(ptr @.str12314) + %t76 = load ptr, ptr %t64 call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str12208) - call void @fn_emit(ptr @.str12209) - %t77 = load ptr, ptr %t62 + call void @fn_emit(ptr @.str12315) + %t77 = load ptr, ptr %t75 call void @fn_emit(ptr %t77) - call void @fn_emit(ptr @.str12210) - %t78 = load ptr, ptr %t62 + call void @fn_emit(ptr @.str12316) + call void @fn_emit(ptr @.str12317) + %t78 = load ptr, ptr %t64 call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str12211) - %t79 = load ptr, ptr %t66 + call void @fn_emit(ptr @.str12318) + %t79 = load ptr, ptr %t64 call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str12212) - call void @fn_emit(ptr @.str12213) - %t80 = load ptr, ptr %t62 + call void @fn_emit(ptr @.str12319) + call void @fn_emit(ptr @.str12320) + %t80 = load ptr, ptr %t64 call void @fn_emit(ptr %t80) - call void @fn_emit(ptr @.str12214) - call void @fn_emit(ptr @.str12215) - %t81 = load ptr, ptr %t62 + call void @fn_emit(ptr @.str12321) + %t81 = load ptr, ptr %t64 call void @fn_emit(ptr %t81) - call void @fn_emit(ptr @.str12216) - %t82 = load ptr, ptr %t1 + call void @fn_emit(ptr @.str12322) + call void @fn_emit(ptr @.str12323) + %t82 = load ptr, ptr %t64 call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str12217) - %t83 = load ptr, ptr %t22 - %t84 = getelementptr inbounds %Cmp_Node, ptr %t83, i32 0, i32 1 - %t85 = load ptr, ptr %t84 + call void @fn_emit(ptr @.str12324) + %t83 = load ptr, ptr %t64 + call void @fn_emit(ptr %t83) + call void @fn_emit(ptr @.str12325) + %t84 = load ptr, ptr %t68 + call void @fn_emit(ptr %t84) + call void @fn_emit(ptr @.str12326) + call void @fn_emit(ptr @.str12327) + %t85 = load ptr, ptr %t64 call void @fn_emit(ptr %t85) - call void @fn_emit(ptr @.str12218) - %t86 = load ptr, ptr %t22 + call void @fn_emit(ptr @.str12328) + %t86 = load ptr, ptr %t24 %t87 = getelementptr inbounds %Cmp_Node, ptr %t86, i32 0, i32 1 %t88 = load ptr, ptr %t87 - call void @fn_emit(ptr %t88) - call void @fn_emit(ptr @.str12219) - store i32 0, ptr %t30 + %t89 = call ptr @lp_str_concat(ptr @.str12329, ptr %t88) + %t90 = call ptr @fn_ecs_base(ptr %t89) + store ptr %t90, ptr %t91 + call void @fn_emit(ptr @.str12330) + %t92 = load ptr, ptr %t64 + call void @fn_emit(ptr %t92) + call void @fn_emit(ptr @.str12331) + %t93 = load ptr, ptr %t24 + %t94 = getelementptr inbounds %Cmp_Node, ptr %t93, i32 0, i32 1 + %t95 = load ptr, ptr %t94 + call void @fn_emit(ptr %t95) + call void @fn_emit(ptr @.str12332) + %t96 = load ptr, ptr %t91 + call void @fn_emit(ptr %t96) + call void @fn_emit(ptr @.str12333) + store i32 0, ptr %t32 br label %wcond19 wcond19: - %t89 = load i32, ptr %t30 - %t90 = load ptr, ptr %t22 - %t91 = getelementptr inbounds %Cmp_Node, ptr %t90, i32 0, i32 7 - %t92 = load ptr, ptr %t91 - %t93 = getelementptr inbounds %LSlice, ptr %t92, i32 0, i32 1 - %t94 = load i32, ptr %t93 - %t95 = icmp slt i32 %t89, %t94 - %t96 = zext i1 %t95 to i32 - %t97 = icmp ne i32 %t96, 0 - br i1 %t97, label %wbody20, label %wend21 -wbody20: - %t98 = load ptr, ptr %t22 + %t97 = load i32, ptr %t32 + %t98 = load ptr, ptr %t24 %t99 = getelementptr inbounds %Cmp_Node, ptr %t98, i32 0, i32 7 %t100 = load ptr, ptr %t99 - %t101 = load i32, ptr %t30 - %t102 = getelementptr inbounds %LSlice, ptr %t100, i32 0, i32 0 - %t103 = load ptr, ptr %t102 - %t104 = getelementptr inbounds %LSlice, ptr %t100, i32 0, i32 1 - %t105 = load i32, ptr %t104 - %t106 = icmp ult i32 %t101, %t105 - br i1 %t106, label %ixok22, label %ixbad23 + %t101 = getelementptr inbounds %LSlice, ptr %t100, i32 0, i32 1 + %t102 = load i32, ptr %t101 + %t103 = icmp slt i32 %t97, %t102 + %t104 = zext i1 %t103 to i32 + %t105 = icmp ne i32 %t104, 0 + br i1 %t105, label %wbody20, label %wend21 +wbody20: + %t106 = load ptr, ptr %t24 + %t107 = getelementptr inbounds %Cmp_Node, ptr %t106, i32 0, i32 7 + %t108 = load ptr, ptr %t107 + %t109 = load i32, ptr %t32 + %t110 = getelementptr inbounds %LSlice, ptr %t108, i32 0, i32 0 + %t111 = load ptr, ptr %t110 + %t112 = getelementptr inbounds %LSlice, ptr %t108, i32 0, i32 1 + %t113 = load i32, ptr %t112 + %t114 = icmp ult i32 %t109, %t113 + br i1 %t114, label %ixok22, label %ixbad23 ixbad23: - %t107 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t107, ptr @.fmt_bounds, ptr @.str12220, i32 %t101, i32 %t105) + %t115 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t115, ptr @.fmt_bounds, ptr @.str12334, i32 %t109, i32 %t113) call void @exit(i32 1) unreachable ixok22: - %t108 = getelementptr inbounds ptr, ptr %t103, i32 %t101 - %t109 = load ptr, ptr %t108 - %t110 = getelementptr inbounds %Cmp_Node, ptr %t109, i32 0, i32 3 - %t111 = load ptr, ptr %t110 - %t112 = call i32 @lp_str_eq(ptr %t111, ptr @.str12221) - %t113 = icmp ne i32 %t112, 0 - br i1 %t113, label %then24, label %ifend26 + %t116 = getelementptr inbounds ptr, ptr %t111, i32 %t109 + %t117 = load ptr, ptr %t116 + %t118 = getelementptr inbounds %Cmp_Node, ptr %t117, i32 0, i32 3 + %t119 = load ptr, ptr %t118 + %t120 = call i32 @lp_str_eq(ptr %t119, ptr @.str12335) + %t121 = icmp ne i32 %t120, 0 + br i1 %t121, label %then24, label %ifend26 then24: - %t114 = load ptr, ptr %t62 - %t115 = call ptr @lp_str_concat(ptr %t114, ptr @.str12222) - %t116 = load i32, ptr %t30 - %t117 = call ptr @fn_itoa(i32 %t116) - %t118 = call ptr @lp_str_concat(ptr %t115, ptr %t117) - store ptr %t118, ptr %t119 - call void @fn_emit(ptr @.str12223) - %t120 = load ptr, ptr %t119 - call void @fn_emit(ptr %t120) - call void @fn_emit(ptr @.str12224) - %t121 = load ptr, ptr %t22 - %t122 = getelementptr inbounds %Cmp_Node, ptr %t121, i32 0, i32 1 - %t123 = load ptr, ptr %t122 - call void @fn_emit(ptr %t123) - call void @fn_emit(ptr @.str12225) - %t124 = load ptr, ptr %t62 - call void @fn_emit(ptr %t124) - call void @fn_emit(ptr @.str12226) - %t125 = load i32, ptr %t30 - %t126 = call ptr @fn_itoa(i32 %t125) - call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str12227) - call void @fn_emit(ptr @.str12228) - %t127 = load ptr, ptr %t119 - call void @fn_emit(ptr %t127) - call void @fn_emit(ptr @.str12229) - %t128 = load ptr, ptr %t119 + %t122 = load ptr, ptr %t64 + %t123 = call ptr @lp_str_concat(ptr %t122, ptr @.str12336) + %t124 = load i32, ptr %t32 + %t125 = call ptr @fn_itoa(i32 %t124) + %t126 = call ptr @lp_str_concat(ptr %t123, ptr %t125) + store ptr %t126, ptr %t127 + call void @fn_emit(ptr @.str12337) + %t128 = load ptr, ptr %t127 call void @fn_emit(ptr %t128) - call void @fn_emit(ptr @.str12230) - call void @fn_emit(ptr @.str12231) - %t129 = load ptr, ptr %t119 - call void @fn_emit(ptr %t129) - call void @fn_emit(ptr @.str12232) - %t130 = load ptr, ptr %t119 - call void @fn_emit(ptr %t130) - call void @fn_emit(ptr @.str12233) - call void @fn_emit(ptr @.str12234) - %t131 = load ptr, ptr %t119 + call void @fn_emit(ptr @.str12338) + %t129 = load ptr, ptr %t24 + %t130 = getelementptr inbounds %Cmp_Node, ptr %t129, i32 0, i32 1 + %t131 = load ptr, ptr %t130 call void @fn_emit(ptr %t131) - call void @fn_emit(ptr @.str12235) - %t132 = load ptr, ptr %t119 + call void @fn_emit(ptr @.str12339) + %t132 = load ptr, ptr %t64 call void @fn_emit(ptr %t132) - call void @fn_emit(ptr @.str12236) - call void @fn_emit(ptr @.str12237) - %t133 = load ptr, ptr %t119 - call void @fn_emit(ptr %t133) - call void @fn_emit(ptr @.str12238) - %t134 = load ptr, ptr %t119 + call void @fn_emit(ptr @.str12340) + %t133 = load i32, ptr %t32 + %t134 = call ptr @fn_itoa(i32 %t133) call void @fn_emit(ptr %t134) - call void @fn_emit(ptr @.str12239) - %t135 = load ptr, ptr %t119 + call void @fn_emit(ptr @.str12341) + call void @fn_emit(ptr @.str12342) + %t135 = load ptr, ptr %t127 call void @fn_emit(ptr %t135) - call void @fn_emit(ptr @.str12240) - %t136 = load ptr, ptr %t119 + call void @fn_emit(ptr @.str12343) + %t136 = load ptr, ptr %t127 call void @fn_emit(ptr %t136) - call void @fn_emit(ptr @.str12241) - call void @fn_emit(ptr @.str12242) - %t137 = load ptr, ptr %t119 + call void @fn_emit(ptr @.str12344) + call void @fn_emit(ptr @.str12345) + %t137 = load ptr, ptr %t127 call void @fn_emit(ptr %t137) - call void @fn_emit(ptr @.str12243) - %t138 = load ptr, ptr %t119 + call void @fn_emit(ptr @.str12346) + %t138 = load ptr, ptr %t127 call void @fn_emit(ptr %t138) - call void @fn_emit(ptr @.str12244) + call void @fn_emit(ptr @.str12347) + call void @fn_emit(ptr @.str12348) + %t139 = load ptr, ptr %t127 + call void @fn_emit(ptr %t139) + call void @fn_emit(ptr @.str12349) + %t140 = load ptr, ptr %t127 + call void @fn_emit(ptr %t140) + call void @fn_emit(ptr @.str12350) + call void @fn_emit(ptr @.str12351) + %t141 = load ptr, ptr %t127 + call void @fn_emit(ptr %t141) + call void @fn_emit(ptr @.str12352) + %t142 = load ptr, ptr %t127 + call void @fn_emit(ptr %t142) + call void @fn_emit(ptr @.str12353) + %t143 = load ptr, ptr %t127 + call void @fn_emit(ptr %t143) + call void @fn_emit(ptr @.str12354) + %t144 = load ptr, ptr %t127 + call void @fn_emit(ptr %t144) + call void @fn_emit(ptr @.str12355) + call void @fn_emit(ptr @.str12356) + %t145 = load ptr, ptr %t127 + call void @fn_emit(ptr %t145) + call void @fn_emit(ptr @.str12357) + %t146 = load ptr, ptr %t127 + call void @fn_emit(ptr %t146) + call void @fn_emit(ptr @.str12358) br label %ifend26 ifend26: - %t139 = load i32, ptr %t30 - %t140 = add i32 %t139, 1 - store i32 %t140, ptr %t30 + %t147 = load i32, ptr %t32 + %t148 = add i32 %t147, 1 + store i32 %t148, ptr %t32 br label %wcond19 wend21: - call void @fn_emit(ptr @.str12245) - %t141 = load ptr, ptr %t66 - call void @fn_emit(ptr %t141) - call void @fn_emit(ptr @.str12246) - %t142 = load i32, ptr %t3 - %t143 = add i32 %t142, 1 - store i32 %t143, ptr %t3 + call void @fn_emit(ptr @.str12359) + %t149 = load ptr, ptr %t68 + call void @fn_emit(ptr %t149) + call void @fn_emit(ptr @.str12360) + %t150 = load i32, ptr %t5 + %t151 = add i32 %t150, 1 + store i32 %t151, ptr %t5 br label %ifend18 ifend18: br label %ifend7 ifend7: - %t144 = load i32, ptr %t4 - %t145 = add i32 %t144, 1 - store i32 %t145, ptr %t4 + %t152 = load i32, ptr %t6 + %t153 = add i32 %t152, 1 + store i32 %t153, ptr %t6 br label %wcond0 wend2: - call void @fn_emit(ptr @.str12247) - %t146 = load i32, ptr %t3 - %t147 = call ptr @fn_itoa(i32 %t146) - call void @fn_emit(ptr %t147) - call void @fn_emit(ptr @.str12248) - call void @fn_emit(ptr @.str12249) + call void @fn_emit(ptr @.str12361) + %t154 = load i32, ptr %t5 + %t155 = call ptr @fn_itoa(i32 %t154) + call void @fn_emit(ptr %t155) + call void @fn_emit(ptr @.str12362) + call void @fn_emit(ptr @.str12363) br label %ret ret: ret void @@ -165890,7 +166526,7 @@ entry: store i32 0, ptr @g_nloop store i32 0, ptr @g_nself store ptr null, ptr @g_g_cur_scene - store ptr @.str12250, ptr @g_ret_ty + store ptr @.str12364, ptr @g_ret_ty %t1 = call ptr @fn_buf_new() store ptr %t1, ptr %t2 %t3 = call ptr @fn_buf_new() @@ -165910,25 +166546,25 @@ entry: %t14 = load ptr, ptr %t8 %t15 = call ptr @fn_emit_spawn(ptr %t14) store ptr %t15, ptr %t16 - call void @fn_emit(ptr @.str12251) + call void @fn_emit(ptr @.str12365) %t17 = load ptr, ptr %t16 call void @fn_emit(ptr %t17) - call void @fn_emit(ptr @.str12252) + call void @fn_emit(ptr @.str12366) %t18 = load ptr, ptr %t5 store ptr %t18, ptr @g_code - call void @fn_emit(ptr @.str12253) + call void @fn_emit(ptr @.str12367) %t19 = load ptr, ptr %t0 %t20 = getelementptr inbounds %Cmp_Node, ptr %t19, i32 0, i32 1 %t21 = load ptr, ptr %t20 call void @fn_emit(ptr %t21) - call void @fn_emit(ptr @.str12254) + call void @fn_emit(ptr @.str12368) %t22 = load ptr, ptr @g_falloc %t23 = call ptr @fn_buf_str(ptr %t22) call void @fn_emit(ptr %t23) %t24 = load ptr, ptr %t2 %t25 = call ptr @fn_buf_str(ptr %t24) call void @fn_emit(ptr %t25) - call void @fn_emit(ptr @.str12255) + call void @fn_emit(ptr @.str12369) br label %ret ret: ret void @@ -165969,7 +166605,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12256, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12370, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -165992,7 +166628,7 @@ then5: br i1 %t29, label %ixok8, label %ixbad9 ixbad9: %t30 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str12257, i32 %t24, i32 %t28) + call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str12371, i32 %t24, i32 %t28) call void @exit(i32 1) unreachable ixok8: @@ -166043,7 +166679,7 @@ wbody11: br i1 %t54, label %ixok13, label %ixbad14 ixbad14: %t55 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t55, ptr @.fmt_bounds, ptr @.str12258, i32 %t49, i32 %t53) + call i32 (ptr, ptr, ...) @fprintf(ptr %t55, ptr @.fmt_bounds, ptr @.str12372, i32 %t49, i32 %t53) call void @exit(i32 1) unreachable ixok13: @@ -166072,46 +166708,46 @@ then15: %t75 = load ptr, ptr %t74 %t76 = getelementptr inbounds %Cmp_Val, ptr %t75, i32 0, i32 0 %t77 = load ptr, ptr %t76 - %t78 = call ptr @lp_str_concat(ptr @.str12259, ptr %t77) - %t79 = call ptr @lp_str_concat(ptr %t78, ptr @.str12260) + %t78 = call ptr @lp_str_concat(ptr @.str12373, ptr %t77) + %t79 = call ptr @lp_str_concat(ptr %t78, ptr @.str12374) %t80 = call ptr @fn_emit_bind(ptr %t79) store ptr %t80, ptr %t81 %t82 = load ptr, ptr %t81 - %t83 = call ptr @lp_str_concat(ptr @.str12261, ptr %t82) - %t84 = call ptr @lp_str_concat(ptr %t83, ptr @.str12262) + %t83 = call ptr @lp_str_concat(ptr @.str12375, ptr %t82) + %t84 = call ptr @lp_str_concat(ptr %t83, ptr @.str12376) %t85 = call ptr @fn_emit_bind(ptr %t84) store ptr %t85, ptr %t86 - %t87 = call ptr @fn_lbl(ptr @.str12263) + %t87 = call ptr @fn_lbl(ptr @.str12377) store ptr %t87, ptr %t88 - %t89 = call ptr @fn_lbl(ptr @.str12264) + %t89 = call ptr @fn_lbl(ptr @.str12378) store ptr %t89, ptr %t90 - call void @fn_emit(ptr @.str12265) + call void @fn_emit(ptr @.str12379) %t91 = load ptr, ptr %t86 call void @fn_emit(ptr %t91) - call void @fn_emit(ptr @.str12266) + call void @fn_emit(ptr @.str12380) %t92 = load ptr, ptr %t88 call void @fn_emit(ptr %t92) - call void @fn_emit(ptr @.str12267) + call void @fn_emit(ptr @.str12381) %t93 = load ptr, ptr %t90 call void @fn_emit(ptr %t93) - call void @fn_emit(ptr @.str12268) + call void @fn_emit(ptr @.str12382) %t94 = load ptr, ptr %t88 call void @fn_emit(ptr %t94) - call void @fn_emit(ptr @.str12269) + call void @fn_emit(ptr @.str12383) %t95 = load ptr, ptr %t58 %t96 = getelementptr inbounds %Cmp_Node, ptr %t95, i32 0, i32 1 %t97 = load ptr, ptr %t96 - %t98 = call ptr @lp_str_concat(ptr @.str12270, ptr %t97) - %t99 = call ptr @lp_str_concat(ptr %t98, ptr @.str12271) + %t98 = call ptr @lp_str_concat(ptr @.str12384, ptr %t97) + %t99 = call ptr @lp_str_concat(ptr %t98, ptr @.str12385) %t100 = call ptr @fn_emit_bind(ptr %t99) store ptr %t100, ptr %t101 - call void @fn_emit(ptr @.str12272) + call void @fn_emit(ptr @.str12386) %t102 = load ptr, ptr %t101 call void @fn_emit(ptr %t102) - call void @fn_emit(ptr @.str12273) + call void @fn_emit(ptr @.str12387) %t103 = load ptr, ptr %t90 call void @fn_emit(ptr %t103) - call void @fn_emit(ptr @.str12274) + call void @fn_emit(ptr @.str12388) br label %ifend17 ifend17: %t104 = load i32, ptr %t0 @@ -166119,17 +166755,17 @@ ifend17: store i32 %t105, ptr %t0 br label %wcond10 wend12: - call void @fn_emit(ptr @.str12275) + call void @fn_emit(ptr @.str12389) %t106 = load ptr, ptr %t39 store ptr %t106, ptr @g_code - call void @fn_emit(ptr @.str12276) + call void @fn_emit(ptr @.str12390) %t107 = load ptr, ptr @g_falloc %t108 = call ptr @fn_buf_str(ptr %t107) call void @fn_emit(ptr %t108) %t109 = load ptr, ptr %t36 %t110 = call ptr @fn_buf_str(ptr %t109) call void @fn_emit(ptr %t110) - call void @fn_emit(ptr @.str12277) + call void @fn_emit(ptr @.str12391) br label %ret ret: ret void @@ -166141,7 +166777,7 @@ entry: %t0 = alloca ptr store ptr %arg_phase, ptr %t0 %t1 = load ptr, ptr %t0 - %t2 = call i32 @lp_str_eq(ptr %t1, ptr @.str12278) + %t2 = call i32 @lp_str_eq(ptr %t1, ptr @.str12392) %t3 = icmp ne i32 %t2, 0 br i1 %t3, label %then0, label %ifend2 then0: @@ -166149,7 +166785,7 @@ then0: br label %ret ifend2: %t4 = load ptr, ptr %t0 - %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str12279) + %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str12393) %t6 = icmp ne i32 %t5, 0 br i1 %t6, label %then3, label %ifend5 then3: @@ -166157,7 +166793,7 @@ then3: br label %ret ifend5: %t7 = load ptr, ptr %t0 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str12280) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str12394) %t9 = icmp ne i32 %t8, 0 br i1 %t9, label %then6, label %ifend8 then6: @@ -166165,7 +166801,7 @@ then6: br label %ret ifend8: %t10 = load ptr, ptr %t0 - %t11 = call i32 @lp_str_eq(ptr %t10, ptr @.str12281) + %t11 = call i32 @lp_str_eq(ptr %t10, ptr @.str12395) %t12 = icmp ne i32 %t11, 0 br i1 %t12, label %then9, label %ifend11 then9: @@ -166173,7 +166809,7 @@ then9: br label %ret ifend11: %t13 = load ptr, ptr %t0 - %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str12282) + %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str12396) %t15 = icmp ne i32 %t14, 0 br i1 %t15, label %then12, label %ifend14 then12: @@ -166181,7 +166817,7 @@ then12: br label %ret ifend14: %t16 = load ptr, ptr %t0 - %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str12283) + %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str12397) %t18 = icmp ne i32 %t17, 0 br i1 %t18, label %then15, label %ifend17 then15: @@ -166189,7 +166825,7 @@ then15: br label %ret ifend17: %t19 = load ptr, ptr %t0 - %t20 = call i32 @lp_str_eq(ptr %t19, ptr @.str12284) + %t20 = call i32 @lp_str_eq(ptr %t19, ptr @.str12398) %t21 = icmp ne i32 %t20, 0 br i1 %t21, label %then18, label %ifend20 then18: @@ -166197,7 +166833,7 @@ then18: br label %ret ifend20: %t22 = load ptr, ptr %t0 - %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str12285) + %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str12399) %t24 = icmp ne i32 %t23, 0 br i1 %t24, label %then21, label %ifend23 then21: @@ -166205,8 +166841,8 @@ then21: br label %ret ifend23: %t25 = load ptr, ptr %t0 - %t26 = call ptr @lp_str_concat(ptr @.str12286, ptr %t25) - %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str12287) + %t26 = call ptr @lp_str_concat(ptr @.str12400, ptr %t25) + %t27 = call ptr @lp_str_concat(ptr %t26, ptr @.str12401) call void @fn_perr(ptr %t27) store i32 7, ptr %retval br label %ret @@ -166226,14 +166862,14 @@ entry: %t29 = alloca i32 store ptr %arg_name, ptr %t0 %t4 = load ptr, ptr %t0 - %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str12288) + %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str12402) %t6 = icmp ne i32 %t5, 0 %t7 = zext i1 %t6 to i32 store i32 %t7, ptr %t3 br i1 %t6, label %scend1, label %sc0 sc0: %t8 = load ptr, ptr %t0 - %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str12289) + %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str12403) %t10 = icmp ne i32 %t9, 0 %t11 = zext i1 %t10 to i32 store i32 %t11, ptr %t3 @@ -166246,7 +166882,7 @@ scend1: br i1 %t13, label %scend3, label %sc2 sc2: %t15 = load ptr, ptr %t0 - %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str12290) + %t16 = call i32 @lp_str_eq(ptr %t15, ptr @.str12404) %t17 = icmp ne i32 %t16, 0 %t18 = zext i1 %t17 to i32 store i32 %t18, ptr %t2 @@ -166259,7 +166895,7 @@ scend3: br i1 %t20, label %scend5, label %sc4 sc4: %t22 = load ptr, ptr %t0 - %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str12291) + %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str12405) %t24 = icmp ne i32 %t23, 0 %t25 = zext i1 %t24 to i32 store i32 %t25, ptr %t1 @@ -166273,14 +166909,14 @@ then6: br label %ret ifend8: %t30 = load ptr, ptr %t0 - %t31 = call i32 @lp_str_eq(ptr %t30, ptr @.str12292) + %t31 = call i32 @lp_str_eq(ptr %t30, ptr @.str12406) %t32 = icmp ne i32 %t31, 0 %t33 = zext i1 %t32 to i32 store i32 %t33, ptr %t29 br i1 %t32, label %scend10, label %sc9 sc9: %t34 = load ptr, ptr %t0 - %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str12293) + %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str12407) %t36 = icmp ne i32 %t35, 0 %t37 = zext i1 %t36 to i32 store i32 %t37, ptr %t29 @@ -166293,7 +166929,7 @@ scend10: br i1 %t39, label %scend12, label %sc11 sc11: %t41 = load ptr, ptr %t0 - %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str12294) + %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str12408) %t43 = icmp ne i32 %t42, 0 %t44 = zext i1 %t43 to i32 store i32 %t44, ptr %t28 @@ -166316,33 +166952,33 @@ ret: define void @fn_emit_module_glue() { entry: %t4 = alloca i32 - call void @fn_emith(ptr @.str12295) - call void @fn_emith(ptr @.str12296) - call void @fn_emith(ptr @.str12297) - call void @fn_emith(ptr @.str12298) - call void @fn_emith(ptr @.str12299) - call void @fn_emith(ptr @.str12300) - call void @fn_emith(ptr @.str12301) - call void @fn_emith(ptr @.str12302) - call void @fn_emith(ptr @.str12303) - call void @fn_emith(ptr @.str12304) - call void @fn_emith(ptr @.str12305) - call void @fn_emith(ptr @.str12306) - call void @fn_emith(ptr @.str12307) - call void @fn_emith(ptr @.str12308) - call void @fn_emith(ptr @.str12309) - call void @fn_emith(ptr @.str12310) - call void @fn_emith(ptr @.str12311) - call void @fn_emith(ptr @.str12312) - call void @fn_emith(ptr @.str12313) - call void @fn_emit(ptr @.str12314) - %t0 = call ptr @fn_find_fn(ptr @.str12315) + call void @fn_emith(ptr @.str12409) + call void @fn_emith(ptr @.str12410) + call void @fn_emith(ptr @.str12411) + call void @fn_emith(ptr @.str12412) + call void @fn_emith(ptr @.str12413) + call void @fn_emith(ptr @.str12414) + call void @fn_emith(ptr @.str12415) + call void @fn_emith(ptr @.str12416) + call void @fn_emith(ptr @.str12417) + call void @fn_emith(ptr @.str12418) + call void @fn_emith(ptr @.str12419) + call void @fn_emith(ptr @.str12420) + call void @fn_emith(ptr @.str12421) + call void @fn_emith(ptr @.str12422) + call void @fn_emith(ptr @.str12423) + call void @fn_emith(ptr @.str12424) + call void @fn_emith(ptr @.str12425) + call void @fn_emith(ptr @.str12426) + call void @fn_emith(ptr @.str12427) + call void @fn_emit(ptr @.str12428) + %t0 = call ptr @fn_find_fn(ptr @.str12429) %t1 = icmp ne ptr %t0, null %t2 = zext i1 %t1 to i32 %t3 = icmp ne i32 %t2, 0 br i1 %t3, label %then0, label %ifend2 then0: - call void @fn_emit(ptr @.str12316) + call void @fn_emit(ptr @.str12430) br label %ifend2 ifend2: store i32 0, ptr %t4 @@ -166357,7 +166993,7 @@ wcond3: %t11 = icmp ne i32 %t10, 0 br i1 %t11, label %wbody4, label %wend5 wbody4: - call void @fn_emit(ptr @.str12317) + call void @fn_emit(ptr @.str12431) %t12 = load ptr, ptr @g_g_mod_sys_fn %t13 = load i32, ptr %t4 %t14 = getelementptr inbounds %LSlice, ptr %t12, i32 0, i32 0 @@ -166368,14 +167004,14 @@ wbody4: br i1 %t18, label %ixok6, label %ixbad7 ixbad7: %t19 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t19, ptr @.fmt_bounds, ptr @.str12318, i32 %t13, i32 %t17) + call i32 (ptr, ptr, ...) @fprintf(ptr %t19, ptr @.fmt_bounds, ptr @.str12432, i32 %t13, i32 %t17) call void @exit(i32 1) unreachable ixok6: %t20 = getelementptr inbounds ptr, ptr %t15, i32 %t13 %t21 = load ptr, ptr %t20 call void @fn_emit(ptr %t21) - call void @fn_emit(ptr @.str12319) + call void @fn_emit(ptr @.str12433) %t22 = load ptr, ptr @g_g_mod_sys_phase %t23 = load i32, ptr %t4 %t24 = getelementptr inbounds %LSlice, ptr %t22, i32 0, i32 0 @@ -166386,7 +167022,7 @@ ixok6: br i1 %t28, label %ixok8, label %ixbad9 ixbad9: %t29 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str12320, i32 %t23, i32 %t27) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str12434, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok8: @@ -166395,14 +167031,14 @@ ixok8: %t32 = call i32 @fn_phase_id(ptr %t31) %t33 = call ptr @fn_itoa(i32 %t32) call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str12321) + call void @fn_emit(ptr @.str12435) %t34 = load i32, ptr %t4 %t35 = add i32 %t34, 1 store i32 %t35, ptr %t4 br label %wcond3 wend5: - call void @fn_emit(ptr @.str12322) - call void @fn_emith(ptr @.str12323) + call void @fn_emit(ptr @.str12436) + call void @fn_emith(ptr @.str12437) br label %ret ret: ret void @@ -166413,35 +167049,35 @@ entry: %t1 = alloca ptr %t0 = call ptr @fn_itoa(i32 64) store ptr %t0, ptr %t1 - call void @fn_emith(ptr @.str12324) + call void @fn_emith(ptr @.str12438) %t2 = load ptr, ptr %t1 call void @fn_emith(ptr %t2) - call void @fn_emith(ptr @.str12325) - call void @fn_emith(ptr @.str12326) + call void @fn_emith(ptr @.str12439) + call void @fn_emith(ptr @.str12440) %t3 = load ptr, ptr %t1 call void @fn_emith(ptr %t3) - call void @fn_emith(ptr @.str12327) - call void @fn_emith(ptr @.str12328) - call void @fn_emit(ptr @.str12329) - call void @fn_emit(ptr @.str12330) - call void @fn_emit(ptr @.str12331) + call void @fn_emith(ptr @.str12441) + call void @fn_emith(ptr @.str12442) + call void @fn_emit(ptr @.str12443) + call void @fn_emit(ptr @.str12444) + call void @fn_emit(ptr @.str12445) %t4 = load ptr, ptr %t1 call void @fn_emit(ptr %t4) - call void @fn_emit(ptr @.str12332) - call void @fn_emit(ptr @.str12333) - call void @fn_emit(ptr @.str12334) - call void @fn_emit(ptr @.str12335) + call void @fn_emit(ptr @.str12446) + call void @fn_emit(ptr @.str12447) + call void @fn_emit(ptr @.str12448) + call void @fn_emit(ptr @.str12449) %t5 = load ptr, ptr %t1 call void @fn_emit(ptr %t5) - call void @fn_emit(ptr @.str12336) - call void @fn_emit(ptr @.str12337) - call void @fn_emit(ptr @.str12338) + call void @fn_emit(ptr @.str12450) + call void @fn_emit(ptr @.str12451) + call void @fn_emit(ptr @.str12452) %t6 = load ptr, ptr %t1 call void @fn_emit(ptr %t6) - call void @fn_emit(ptr @.str12339) - call void @fn_emit(ptr @.str12340) - call void @fn_emit(ptr @.str12341) - call void @fn_emit(ptr @.str12342) + call void @fn_emit(ptr @.str12453) + call void @fn_emit(ptr @.str12454) + call void @fn_emit(ptr @.str12455) + call void @fn_emit(ptr @.str12456) br label %ret ret: ret void @@ -166478,141 +167114,141 @@ entry: store ptr %t7, ptr %t8 %t9 = call ptr @fn_nreg() store ptr %t9, ptr %t10 - %t11 = call ptr @fn_lbl(ptr @.str12343) + %t11 = call ptr @fn_lbl(ptr @.str12457) store ptr %t11, ptr %t12 - %t13 = call ptr @fn_lbl(ptr @.str12344) + %t13 = call ptr @fn_lbl(ptr @.str12458) store ptr %t13, ptr %t14 - %t15 = call ptr @fn_lbl(ptr @.str12345) + %t15 = call ptr @fn_lbl(ptr @.str12459) store ptr %t15, ptr %t16 - %t17 = call ptr @fn_lbl(ptr @.str12346) + %t17 = call ptr @fn_lbl(ptr @.str12460) store ptr %t17, ptr %t18 - %t19 = call ptr @fn_lbl(ptr @.str12347) + %t19 = call ptr @fn_lbl(ptr @.str12461) store ptr %t19, ptr %t20 - %t21 = call ptr @fn_lbl(ptr @.str12348) + %t21 = call ptr @fn_lbl(ptr @.str12462) store ptr %t21, ptr %t22 - call void @fn_emit(ptr @.str12349) + call void @fn_emit(ptr @.str12463) %t23 = load ptr, ptr %t12 call void @fn_emit(ptr %t23) - call void @fn_emit(ptr @.str12350) + call void @fn_emit(ptr @.str12464) %t24 = load ptr, ptr %t12 call void @fn_emit(ptr %t24) - call void @fn_emit(ptr @.str12351) + call void @fn_emit(ptr @.str12465) %t25 = load ptr, ptr %t14 call void @fn_emit(ptr %t25) - call void @fn_emit(ptr @.str12352) + call void @fn_emit(ptr @.str12466) %t26 = load ptr, ptr %t14 call void @fn_emit(ptr %t26) - call void @fn_emit(ptr @.str12353) - call void @fn_emit(ptr @.str12354) + call void @fn_emit(ptr @.str12467) + call void @fn_emit(ptr @.str12468) %t27 = load ptr, ptr %t8 call void @fn_emit(ptr %t27) - call void @fn_emit(ptr @.str12355) + call void @fn_emit(ptr @.str12469) %t28 = load ptr, ptr %t12 call void @fn_emit(ptr %t28) - call void @fn_emit(ptr @.str12356) + call void @fn_emit(ptr @.str12470) %t29 = load ptr, ptr %t10 call void @fn_emit(ptr %t29) - call void @fn_emit(ptr @.str12357) + call void @fn_emit(ptr @.str12471) %t30 = load ptr, ptr %t20 call void @fn_emit(ptr %t30) - call void @fn_emit(ptr @.str12358) - %t31 = call ptr @fn_emit_bind(ptr @.str12359) + call void @fn_emit(ptr @.str12472) + %t31 = call ptr @fn_emit_bind(ptr @.str12473) store ptr %t31, ptr %t32 %t33 = load ptr, ptr %t8 - %t34 = call ptr @lp_str_concat(ptr @.str12360, ptr %t33) - %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str12361) + %t34 = call ptr @lp_str_concat(ptr @.str12474, ptr %t33) + %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str12475) %t36 = load ptr, ptr %t32 %t37 = call ptr @lp_str_concat(ptr %t35, ptr %t36) %t38 = call ptr @fn_emit_bind(ptr %t37) store ptr %t38, ptr %t39 - call void @fn_emit(ptr @.str12362) + call void @fn_emit(ptr @.str12476) %t40 = load ptr, ptr %t39 call void @fn_emit(ptr %t40) - call void @fn_emit(ptr @.str12363) + call void @fn_emit(ptr @.str12477) %t41 = load ptr, ptr %t16 call void @fn_emit(ptr %t41) - call void @fn_emit(ptr @.str12364) + call void @fn_emit(ptr @.str12478) %t42 = load ptr, ptr %t22 call void @fn_emit(ptr %t42) - call void @fn_emit(ptr @.str12365) + call void @fn_emit(ptr @.str12479) %t43 = load ptr, ptr %t16 call void @fn_emit(ptr %t43) - call void @fn_emit(ptr @.str12366) + call void @fn_emit(ptr @.str12480) %t44 = call ptr @fn_nreg() store ptr %t44, ptr %t45 - call void @fn_emit(ptr @.str12367) + call void @fn_emit(ptr @.str12481) %t46 = load ptr, ptr %t45 call void @fn_emit(ptr %t46) - call void @fn_emit(ptr @.str12368) + call void @fn_emit(ptr @.str12482) %t47 = load ptr, ptr %t2 call void @fn_emit(ptr %t47) - call void @fn_emit(ptr @.str12369) + call void @fn_emit(ptr @.str12483) %t48 = load ptr, ptr %t8 call void @fn_emit(ptr %t48) - call void @fn_emit(ptr @.str12370) + call void @fn_emit(ptr @.str12484) %t49 = load ptr, ptr %t45 - %t50 = call ptr @lp_str_concat(ptr @.str12371, ptr %t49) + %t50 = call ptr @lp_str_concat(ptr @.str12485, ptr %t49) %t51 = call ptr @fn_emit_bind(ptr %t50) store ptr %t51, ptr %t52 %t53 = load ptr, ptr %t52 - %t54 = call ptr @lp_str_concat(ptr @.str12372, ptr %t53) - %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str12373) + %t54 = call ptr @lp_str_concat(ptr @.str12486, ptr %t53) + %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str12487) %t56 = load ptr, ptr %t6 %t57 = call ptr @lp_str_concat(ptr %t55, ptr %t56) %t58 = call ptr @fn_emit_bind(ptr %t57) store ptr %t58, ptr %t59 - call void @fn_emit(ptr @.str12374) + call void @fn_emit(ptr @.str12488) %t60 = load ptr, ptr %t59 call void @fn_emit(ptr %t60) - call void @fn_emit(ptr @.str12375) + call void @fn_emit(ptr @.str12489) %t61 = load ptr, ptr %t18 call void @fn_emit(ptr %t61) - call void @fn_emit(ptr @.str12376) + call void @fn_emit(ptr @.str12490) %t62 = load ptr, ptr %t20 call void @fn_emit(ptr %t62) - call void @fn_emit(ptr @.str12377) + call void @fn_emit(ptr @.str12491) %t63 = load ptr, ptr %t18 call void @fn_emit(ptr %t63) - call void @fn_emit(ptr @.str12378) + call void @fn_emit(ptr @.str12492) %t64 = call ptr @fn_nreg() store ptr %t64, ptr %t65 - call void @fn_emit(ptr @.str12379) + call void @fn_emit(ptr @.str12493) %t66 = load ptr, ptr %t65 call void @fn_emit(ptr %t66) - call void @fn_emit(ptr @.str12380) + call void @fn_emit(ptr @.str12494) %t67 = load ptr, ptr %t2 call void @fn_emit(ptr %t67) - call void @fn_emit(ptr @.str12381) + call void @fn_emit(ptr @.str12495) %t68 = load ptr, ptr %t8 call void @fn_emit(ptr %t68) - call void @fn_emit(ptr @.str12382) + call void @fn_emit(ptr @.str12496) %t69 = load ptr, ptr %t65 - %t70 = call ptr @lp_str_concat(ptr @.str12383, ptr %t69) + %t70 = call ptr @lp_str_concat(ptr @.str12497, ptr %t69) %t71 = call ptr @fn_emit_bind(ptr %t70) store ptr %t71, ptr %t72 - call void @fn_emit(ptr @.str12384) + call void @fn_emit(ptr @.str12498) %t73 = load ptr, ptr %t72 call void @fn_emit(ptr %t73) - call void @fn_emit(ptr @.str12385) - call void @fn_emit(ptr @.str12386) + call void @fn_emit(ptr @.str12499) + call void @fn_emit(ptr @.str12500) %t74 = load ptr, ptr %t20 call void @fn_emit(ptr %t74) - call void @fn_emit(ptr @.str12387) + call void @fn_emit(ptr @.str12501) %t75 = load ptr, ptr %t20 call void @fn_emit(ptr %t75) - call void @fn_emit(ptr @.str12388) + call void @fn_emit(ptr @.str12502) %t76 = load ptr, ptr %t10 call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str12389) + call void @fn_emit(ptr @.str12503) %t77 = load ptr, ptr %t8 call void @fn_emit(ptr %t77) - call void @fn_emit(ptr @.str12390) + call void @fn_emit(ptr @.str12504) %t78 = load ptr, ptr %t14 call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str12391) + call void @fn_emit(ptr @.str12505) %t79 = load ptr, ptr %t22 call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str12392) + call void @fn_emit(ptr @.str12506) br label %ret ret: ret void @@ -166659,7 +167295,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12393, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12507, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -166738,7 +167374,7 @@ wbody13: br i1 %t65, label %ixok15, label %ixbad16 ixbad16: %t66 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str12394, i32 %t60, i32 %t64) + call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str12508, i32 %t60, i32 %t64) call void @exit(i32 1) unreachable ixok15: @@ -166797,7 +167433,7 @@ wend14: %t101 = icmp ne i32 %t100, 0 br i1 %t101, label %then24, label %ifend26 then24: - %t102 = call ptr @fn_emit_bind(ptr @.str12395) + %t102 = call ptr @fn_emit_bind(ptr @.str12509) store ptr %t102, ptr %t103 store i32 0, ptr %t1 br label %wcond27 @@ -166821,7 +167457,7 @@ wbody28: br i1 %t117, label %ixok30, label %ixbad31 ixbad31: %t118 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t118, ptr @.fmt_bounds, ptr @.str12396, i32 %t112, i32 %t116) + call i32 (ptr, ptr, ...) @fprintf(ptr %t118, ptr @.fmt_bounds, ptr @.str12510, i32 %t112, i32 %t116) call void @exit(i32 1) unreachable ixok30: @@ -166869,8 +167505,8 @@ scend35: br i1 %t149, label %then36, label %ifend38 then36: %t150 = load ptr, ptr %t103 - %t151 = call ptr @lp_str_concat(ptr @.str12397, ptr %t150) - %t152 = call ptr @lp_str_concat(ptr %t151, ptr @.str12398) + %t151 = call ptr @lp_str_concat(ptr @.str12511, ptr %t150) + %t152 = call ptr @lp_str_concat(ptr %t151, ptr @.str12512) %t153 = load ptr, ptr %t121 %t154 = getelementptr inbounds %Cmp_Node, ptr %t153, i32 0, i32 6 %t155 = load ptr, ptr %t154 @@ -166880,32 +167516,32 @@ then36: %t159 = call ptr @lp_str_concat(ptr %t152, ptr %t158) %t160 = call ptr @fn_emit_bind(ptr %t159) store ptr %t160, ptr %t161 - %t162 = call ptr @fn_lbl(ptr @.str12399) + %t162 = call ptr @fn_lbl(ptr @.str12513) store ptr %t162, ptr %t163 - %t164 = call ptr @fn_lbl(ptr @.str12400) + %t164 = call ptr @fn_lbl(ptr @.str12514) store ptr %t164, ptr %t165 - call void @fn_emit(ptr @.str12401) + call void @fn_emit(ptr @.str12515) %t166 = load ptr, ptr %t161 call void @fn_emit(ptr %t166) - call void @fn_emit(ptr @.str12402) + call void @fn_emit(ptr @.str12516) %t167 = load ptr, ptr %t163 call void @fn_emit(ptr %t167) - call void @fn_emit(ptr @.str12403) + call void @fn_emit(ptr @.str12517) %t168 = load ptr, ptr %t165 call void @fn_emit(ptr %t168) - call void @fn_emit(ptr @.str12404) + call void @fn_emit(ptr @.str12518) %t169 = load ptr, ptr %t163 call void @fn_emit(ptr %t169) - call void @fn_emit(ptr @.str12405) + call void @fn_emit(ptr @.str12519) %t170 = load ptr, ptr %t121 call void @fn_emit_call_one(ptr %t170) - call void @fn_emit(ptr @.str12406) + call void @fn_emit(ptr @.str12520) %t171 = load ptr, ptr %t165 call void @fn_emit(ptr %t171) - call void @fn_emit(ptr @.str12407) + call void @fn_emit(ptr @.str12521) %t172 = load ptr, ptr %t165 call void @fn_emit(ptr %t172) - call void @fn_emit(ptr @.str12408) + call void @fn_emit(ptr @.str12522) br label %ifend38 ifend38: %t173 = load i32, ptr %t1 @@ -166920,7 +167556,7 @@ ifend26: %t176 = load ptr, ptr %t0 call void @fn_emit_dyn_systems_for_phase(ptr %t176) %t177 = load ptr, ptr %t0 - %t178 = call i32 @lp_str_eq(ptr %t177, ptr @.str12409) + %t178 = call i32 @lp_str_eq(ptr %t177, ptr @.str12523) %t179 = icmp ne i32 %t178, 0 br i1 %t179, label %then39, label %ifend41 then39: @@ -166935,9 +167571,9 @@ ifend41: %t185 = icmp ne i32 %t184, 0 br i1 %t185, label %then42, label %ifend44 then42: - %t186 = call ptr @fn_fn_sym(ptr @.str12411) - %t187 = call ptr @lp_str_concat(ptr @.str12410, ptr %t186) - %t188 = call ptr @lp_str_concat(ptr %t187, ptr @.str12412) + %t186 = call ptr @fn_fn_sym(ptr @.str12525) + %t187 = call ptr @lp_str_concat(ptr @.str12524, ptr %t186) + %t188 = call ptr @lp_str_concat(ptr %t187, ptr @.str12526) call void @fn_emit(ptr %t188) br label %ifend44 ifend44: @@ -166978,7 +167614,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12413, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str12527, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -167007,7 +167643,7 @@ wend2: then8: br label %ret ifend10: - %t30 = call ptr @fn_emit_bind(ptr @.str12414) + %t30 = call ptr @fn_emit_bind(ptr @.str12528) store ptr %t30, ptr %t31 store i32 0, ptr %t1 br label %wcond11 @@ -167031,7 +167667,7 @@ wbody12: br i1 %t45, label %ixok14, label %ixbad15 ixbad15: %t46 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t46, ptr @.fmt_bounds, ptr @.str12415, i32 %t40, i32 %t44) + call i32 (ptr, ptr, ...) @fprintf(ptr %t46, ptr @.fmt_bounds, ptr @.str12529, i32 %t40, i32 %t44) call void @exit(i32 1) unreachable ixok14: @@ -167047,8 +167683,8 @@ ixok14: br i1 %t55, label %then16, label %ifend18 then16: %t56 = load ptr, ptr %t31 - %t57 = call ptr @lp_str_concat(ptr @.str12416, ptr %t56) - %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str12417) + %t57 = call ptr @lp_str_concat(ptr @.str12530, ptr %t56) + %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str12531) %t59 = load ptr, ptr %t49 %t60 = getelementptr inbounds %Cmp_Node, ptr %t59, i32 0, i32 2 %t61 = load i32, ptr %t60 @@ -167056,33 +167692,33 @@ then16: %t63 = call ptr @lp_str_concat(ptr %t58, ptr %t62) %t64 = call ptr @fn_emit_bind(ptr %t63) store ptr %t64, ptr %t65 - %t66 = call ptr @fn_lbl(ptr @.str12418) + %t66 = call ptr @fn_lbl(ptr @.str12532) store ptr %t66, ptr %t67 - %t68 = call ptr @fn_lbl(ptr @.str12419) + %t68 = call ptr @fn_lbl(ptr @.str12533) store ptr %t68, ptr %t69 - call void @fn_emit(ptr @.str12420) + call void @fn_emit(ptr @.str12534) %t70 = load ptr, ptr %t65 call void @fn_emit(ptr %t70) - call void @fn_emit(ptr @.str12421) + call void @fn_emit(ptr @.str12535) %t71 = load ptr, ptr %t67 call void @fn_emit(ptr %t71) - call void @fn_emit(ptr @.str12422) + call void @fn_emit(ptr @.str12536) %t72 = load ptr, ptr %t69 call void @fn_emit(ptr %t72) - call void @fn_emit(ptr @.str12423) + call void @fn_emit(ptr @.str12537) %t73 = load ptr, ptr %t67 call void @fn_emit(ptr %t73) - %t74 = call ptr @fn_fn_sym(ptr @.str12425) - %t75 = call ptr @lp_str_concat(ptr @.str12424, ptr %t74) - %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str12426) + %t74 = call ptr @fn_fn_sym(ptr @.str12539) + %t75 = call ptr @lp_str_concat(ptr @.str12538, ptr %t74) + %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str12540) call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str12427) + call void @fn_emit(ptr @.str12541) %t77 = load ptr, ptr %t69 call void @fn_emit(ptr %t77) - call void @fn_emit(ptr @.str12428) + call void @fn_emit(ptr @.str12542) %t78 = load ptr, ptr %t69 call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str12429) + call void @fn_emit(ptr @.str12543) br label %ifend18 ifend18: %t79 = load i32, ptr %t1 @@ -167117,7 +167753,7 @@ entry: call void @fn_loc_reset() store i32 0, ptr @g_nloop store i32 0, ptr @g_nself - store ptr @.str12430, ptr @g_ret_ty + store ptr @.str12544, ptr @g_ret_ty %t4 = call ptr @fn_buf_new() store ptr %t4, ptr %t5 %t6 = call ptr @fn_buf_new() @@ -167135,7 +167771,7 @@ entry: br i1 %t14, label %sc0, label %scend1 sc0: %t16 = load ptr, ptr %t1 - %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str12431) + %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str12545) %t18 = icmp ne i32 %t17, 0 %t19 = zext i1 %t18 to i32 store i32 %t19, ptr %t10 @@ -167145,28 +167781,28 @@ scend1: %t21 = icmp ne i32 %t20, 0 br i1 %t21, label %then2, label %ifend4 then2: - %t22 = call ptr @fn_find_fn(ptr @.str12432) + %t22 = call ptr @fn_find_fn(ptr @.str12546) %t23 = icmp ne ptr %t22, null %t24 = zext i1 %t23 to i32 %t25 = icmp ne i32 %t24, 0 br i1 %t25, label %then5, label %ifend7 then5: - %t26 = call ptr @fn_fn_sym(ptr @.str12434) - %t27 = call ptr @lp_str_concat(ptr @.str12433, ptr %t26) - %t28 = call ptr @lp_str_concat(ptr %t27, ptr @.str12435) + %t26 = call ptr @fn_fn_sym(ptr @.str12548) + %t27 = call ptr @lp_str_concat(ptr @.str12547, ptr %t26) + %t28 = call ptr @lp_str_concat(ptr %t27, ptr @.str12549) call void @fn_emit(ptr %t28) br label %ifend7 ifend7: - %t29 = call ptr @fn_fn_sym(ptr @.str12437) - %t30 = call ptr @lp_str_concat(ptr @.str12436, ptr %t29) - %t31 = call ptr @lp_str_concat(ptr %t30, ptr @.str12438) + %t29 = call ptr @fn_fn_sym(ptr @.str12551) + %t30 = call ptr @lp_str_concat(ptr @.str12550, ptr %t29) + %t31 = call ptr @lp_str_concat(ptr %t30, ptr @.str12552) call void @fn_emit(ptr %t31) %t32 = load ptr, ptr %t3 - %t33 = call ptr @lp_str_concat(ptr @.str12439, ptr %t32) + %t33 = call ptr @lp_str_concat(ptr @.str12553, ptr %t32) %t34 = call i32 @fn_ui_index_of(ptr %t33) %t35 = call ptr @fn_itoa(i32 %t34) call void @fn_emit(ptr %t35) - call void @fn_emit(ptr @.str12440) + call void @fn_emit(ptr @.str12554) br label %ifend4 ifend4: %t37 = load ptr, ptr %t3 @@ -167178,7 +167814,7 @@ ifend4: br i1 %t40, label %sc8, label %scend9 sc8: %t42 = load ptr, ptr %t1 - %t43 = call i32 @lp_str_eq(ptr %t42, ptr @.str12441) + %t43 = call i32 @lp_str_eq(ptr %t42, ptr @.str12555) %t44 = icmp ne i32 %t43, 0 %t45 = zext i1 %t44 to i32 store i32 %t45, ptr %t36 @@ -167188,9 +167824,9 @@ scend9: %t47 = icmp ne i32 %t46, 0 br i1 %t47, label %then10, label %ifend12 then10: - %t48 = call ptr @fn_fn_sym(ptr @.str12443) - %t49 = call ptr @lp_str_concat(ptr @.str12442, ptr %t48) - %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str12444) + %t48 = call ptr @fn_fn_sym(ptr @.str12557) + %t49 = call ptr @lp_str_concat(ptr @.str12556, ptr %t48) + %t50 = call ptr @lp_str_concat(ptr %t49, ptr @.str12558) call void @fn_emit(ptr %t50) br label %ifend12 ifend12: @@ -167205,8 +167841,8 @@ then13: br label %ifend15 ifend15: %t56 = load ptr, ptr %t0 - %t57 = call ptr @lp_str_concat(ptr @.str12445, ptr %t56) - %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str12446) + %t57 = call ptr @lp_str_concat(ptr @.str12559, ptr %t56) + %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str12560) %t59 = load ptr, ptr %t1 %t60 = call ptr @lp_str_concat(ptr %t58, ptr %t59) store ptr %t60, ptr %t61 @@ -167231,10 +167867,10 @@ scend17: %t75 = icmp ne i32 %t74, 0 br i1 %t75, label %then18, label %ifend20 then18: - call void @fn_emit(ptr @.str12447) + call void @fn_emit(ptr @.str12561) %t76 = load ptr, ptr %t61 call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str12448) + call void @fn_emit(ptr @.str12562) br label %ifend20 ifend20: %t77 = load i32, ptr @g_g_term @@ -167243,26 +167879,26 @@ ifend20: %t80 = icmp ne i32 %t79, 0 br i1 %t80, label %then21, label %ifend23 then21: - call void @fn_emit(ptr @.str12449) + call void @fn_emit(ptr @.str12563) br label %ifend23 ifend23: - call void @fn_emit(ptr @.str12450) + call void @fn_emit(ptr @.str12564) %t81 = load ptr, ptr %t8 store ptr %t81, ptr @g_code - call void @fn_emit(ptr @.str12451) + call void @fn_emit(ptr @.str12565) %t82 = load ptr, ptr %t1 call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str12452) + call void @fn_emit(ptr @.str12566) %t83 = load ptr, ptr %t0 call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str12453) + call void @fn_emit(ptr @.str12567) %t84 = load ptr, ptr @g_falloc %t85 = call ptr @fn_buf_str(ptr %t84) call void @fn_emit(ptr %t85) %t86 = load ptr, ptr %t5 %t87 = call ptr @fn_buf_str(ptr %t86) call void @fn_emit(ptr %t87) - call void @fn_emit(ptr @.str12454) + call void @fn_emit(ptr @.str12568) br label %ret ret: ret void @@ -167294,7 +167930,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12455, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12569, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -167312,7 +167948,7 @@ ixok3: %t26 = load ptr, ptr %t18 %t27 = getelementptr inbounds %Cmp_Node, ptr %t26, i32 0, i32 3 %t28 = load ptr, ptr %t27 - call void @fn_emit_scene_fn(ptr %t22, ptr @.str12456, ptr %t25, ptr %t28) + call void @fn_emit_scene_fn(ptr %t22, ptr @.str12570, ptr %t25, ptr %t28) %t29 = load ptr, ptr %t18 %t30 = getelementptr inbounds %Cmp_Node, ptr %t29, i32 0, i32 1 %t31 = load ptr, ptr %t30 @@ -167322,7 +167958,7 @@ ixok3: %t35 = load ptr, ptr %t18 %t36 = getelementptr inbounds %Cmp_Node, ptr %t35, i32 0, i32 3 %t37 = load ptr, ptr %t36 - call void @fn_emit_scene_fn(ptr %t31, ptr @.str12457, ptr %t34, ptr %t37) + call void @fn_emit_scene_fn(ptr %t31, ptr @.str12571, ptr %t34, ptr %t37) %t38 = load i32, ptr %t0 %t39 = add i32 %t38, 1 store i32 %t39, ptr %t0 @@ -167350,8 +167986,8 @@ entry: %t0 = alloca i32 %t18 = alloca ptr %t21 = alloca ptr - call void @fn_emit(ptr @.str12458) - call void @fn_emit(ptr @.str12459) + call void @fn_emit(ptr @.str12572) + call void @fn_emit(ptr @.str12573) store i32 0, ptr %t0 br label %wcond0 wcond0: @@ -167374,7 +168010,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12460, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12574, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -167384,45 +168020,45 @@ ixok3: %t19 = load i32, ptr %t0 %t20 = call ptr @fn_itoa(i32 %t19) store ptr %t20, ptr %t21 - call void @fn_emit(ptr @.str12461) + call void @fn_emit(ptr @.str12575) %t22 = load ptr, ptr %t21 call void @fn_emit(ptr %t22) - call void @fn_emit(ptr @.str12462) + call void @fn_emit(ptr @.str12576) %t23 = load ptr, ptr %t18 %t24 = getelementptr inbounds %Cmp_Node, ptr %t23, i32 0, i32 2 %t25 = load i32, ptr %t24 %t26 = call ptr @fn_itoa(i32 %t25) call void @fn_emit(ptr %t26) - call void @fn_emit(ptr @.str12463) - call void @fn_emit(ptr @.str12464) + call void @fn_emit(ptr @.str12577) + call void @fn_emit(ptr @.str12578) %t27 = load ptr, ptr %t21 call void @fn_emit(ptr %t27) - call void @fn_emit(ptr @.str12465) + call void @fn_emit(ptr @.str12579) %t28 = load ptr, ptr %t21 call void @fn_emit(ptr %t28) - call void @fn_emit(ptr @.str12466) + call void @fn_emit(ptr @.str12580) %t29 = load ptr, ptr %t21 call void @fn_emit(ptr %t29) - call void @fn_emit(ptr @.str12467) - call void @fn_emit(ptr @.str12468) + call void @fn_emit(ptr @.str12581) + call void @fn_emit(ptr @.str12582) %t30 = load ptr, ptr %t21 call void @fn_emit(ptr %t30) - call void @fn_emit(ptr @.str12469) + call void @fn_emit(ptr @.str12583) %t31 = load ptr, ptr %t18 %t32 = getelementptr inbounds %Cmp_Node, ptr %t31, i32 0, i32 1 %t33 = load ptr, ptr %t32 call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str12470) - call void @fn_emit(ptr @.str12471) + call void @fn_emit(ptr @.str12584) + call void @fn_emit(ptr @.str12585) %t34 = load ptr, ptr %t21 call void @fn_emit(ptr %t34) - call void @fn_emit(ptr @.str12472) + call void @fn_emit(ptr @.str12586) %t35 = load i32, ptr %t0 %t36 = add i32 %t35, 1 store i32 %t36, ptr %t0 br label %wcond0 wend2: - call void @fn_emit(ptr @.str12473) + call void @fn_emit(ptr @.str12587) br label %ret ret: ret void @@ -167458,7 +168094,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12474, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12588, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -167476,7 +168112,7 @@ ixok3: call void @fn_loc_reset() store i32 0, ptr @g_nloop store i32 0, ptr @g_nself - store ptr @.str12475, ptr @g_ret_ty + store ptr @.str12589, ptr @g_ret_ty %t24 = call ptr @fn_buf_new() store ptr %t24, ptr %t25 %t26 = call ptr @fn_buf_new() @@ -167493,21 +168129,21 @@ ixok3: %t35 = icmp ne i32 %t34, 0 br i1 %t35, label %then5, label %ifend7 then5: - %t36 = call ptr @fn_emit_alloca(ptr @.str12476) + %t36 = call ptr @fn_emit_alloca(ptr @.str12590) store ptr %t36, ptr %t37 - call void @fn_emit(ptr @.str12477) + call void @fn_emit(ptr @.str12591) %t38 = load ptr, ptr %t37 call void @fn_emit(ptr %t38) - call void @fn_emit(ptr @.str12478) + call void @fn_emit(ptr @.str12592) %t39 = load ptr, ptr %t18 %t40 = getelementptr inbounds %Cmp_Node, ptr %t39, i32 0, i32 3 %t41 = load ptr, ptr %t40 %t42 = load ptr, ptr %t37 - call void @fn_loc_push(ptr %t41, ptr %t42, ptr @.str12479) + call void @fn_loc_push(ptr %t41, ptr %t42, ptr @.str12593) br label %ifend7 ifend7: %t43 = load ptr, ptr %t23 - call void @fn_emit_bind_props(ptr %t43, ptr @.str12480) + call void @fn_emit_bind_props(ptr %t43, ptr @.str12594) %t44 = load ptr, ptr %t18 %t45 = getelementptr inbounds %Cmp_Node, ptr %t44, i32 0, i32 4 %t46 = load ptr, ptr %t45 @@ -167518,25 +168154,25 @@ ifend7: %t50 = icmp ne i32 %t49, 0 br i1 %t50, label %then8, label %ifend10 then8: - call void @fn_emit(ptr @.str12481) + call void @fn_emit(ptr @.str12595) br label %ifend10 ifend10: - call void @fn_emit(ptr @.str12482) + call void @fn_emit(ptr @.str12596) %t51 = load ptr, ptr %t28 store ptr %t51, ptr @g_code - call void @fn_emit(ptr @.str12483) + call void @fn_emit(ptr @.str12597) %t52 = load ptr, ptr %t18 %t53 = getelementptr inbounds %Cmp_Node, ptr %t52, i32 0, i32 1 %t54 = load ptr, ptr %t53 call void @fn_emit(ptr %t54) - call void @fn_emit(ptr @.str12484) + call void @fn_emit(ptr @.str12598) %t55 = load ptr, ptr @g_falloc %t56 = call ptr @fn_buf_str(ptr %t55) call void @fn_emit(ptr %t56) %t57 = load ptr, ptr %t25 %t58 = call ptr @fn_buf_str(ptr %t57) call void @fn_emit(ptr %t58) - call void @fn_emit(ptr @.str12485) + call void @fn_emit(ptr @.str12599) %t59 = load i32, ptr %t0 %t60 = add i32 %t59, 1 store i32 %t60, ptr %t0 @@ -167551,11 +168187,12 @@ ret: define void @fn_emit_world_despawn_fn() { entry: %t7 = alloca ptr - %t9 = alloca i32 - %t29 = alloca ptr - %t32 = alloca ptr - %t45 = alloca ptr - call void @fn_emit(ptr @.str12486) + %t9 = alloca ptr + %t11 = alloca i32 + %t31 = alloca ptr + %t34 = alloca ptr + %t47 = alloca ptr + call void @fn_emit(ptr @.str12600) %t0 = load ptr, ptr @g_g_ondespawn %t1 = getelementptr inbounds %LSlice, ptr %t0, i32 0, i32 1 %t2 = load i32, ptr %t1 @@ -167566,116 +168203,118 @@ entry: then0: %t6 = call ptr @fn_itoa(i32 1024) store ptr %t6, ptr %t7 - call void @fn_emit(ptr @.str12487) - %t8 = load ptr, ptr %t7 - call void @fn_emit(ptr %t8) - call void @fn_emit(ptr @.str12488) - call void @fn_emit(ptr @.str12489) - store i32 0, ptr %t9 + %t8 = call ptr @fn_ecs_base(ptr @.str12601) + store ptr %t8, ptr %t9 + call void @fn_emit(ptr @.str12602) + %t10 = load ptr, ptr %t9 + call void @fn_emit(ptr %t10) + call void @fn_emit(ptr @.str12603) + call void @fn_emit(ptr @.str12604) + store i32 0, ptr %t11 br label %wcond3 wcond3: - %t10 = load i32, ptr %t9 - %t11 = load ptr, ptr @g_g_ondespawn - %t12 = getelementptr inbounds %LSlice, ptr %t11, i32 0, i32 1 - %t13 = load i32, ptr %t12 - %t14 = icmp slt i32 %t10, %t13 - %t15 = zext i1 %t14 to i32 - %t16 = icmp ne i32 %t15, 0 - br i1 %t16, label %wbody4, label %wend5 + %t12 = load i32, ptr %t11 + %t13 = load ptr, ptr @g_g_ondespawn + %t14 = getelementptr inbounds %LSlice, ptr %t13, i32 0, i32 1 + %t15 = load i32, ptr %t14 + %t16 = icmp slt i32 %t12, %t15 + %t17 = zext i1 %t16 to i32 + %t18 = icmp ne i32 %t17, 0 + br i1 %t18, label %wbody4, label %wend5 wbody4: - %t17 = load ptr, ptr @g_g_ondespawn - %t18 = load i32, ptr %t9 - %t19 = getelementptr inbounds %LSlice, ptr %t17, i32 0, i32 0 - %t20 = load ptr, ptr %t19 - %t21 = getelementptr inbounds %LSlice, ptr %t17, i32 0, i32 1 - %t22 = load i32, ptr %t21 - %t23 = icmp ult i32 %t18, %t22 - br i1 %t23, label %ixok6, label %ixbad7 + %t19 = load ptr, ptr @g_g_ondespawn + %t20 = load i32, ptr %t11 + %t21 = getelementptr inbounds %LSlice, ptr %t19, i32 0, i32 0 + %t22 = load ptr, ptr %t21 + %t23 = getelementptr inbounds %LSlice, ptr %t19, i32 0, i32 1 + %t24 = load i32, ptr %t23 + %t25 = icmp ult i32 %t20, %t24 + br i1 %t25, label %ixok6, label %ixbad7 ixbad7: - %t24 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str12490, i32 %t18, i32 %t22) + %t26 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str12605, i32 %t20, i32 %t24) call void @exit(i32 1) unreachable ixok6: - %t25 = getelementptr inbounds ptr, ptr %t20, i32 %t18 - %t26 = load ptr, ptr %t25 - %t27 = getelementptr inbounds %Cmp_Node, ptr %t26, i32 0, i32 1 + %t27 = getelementptr inbounds ptr, ptr %t22, i32 %t20 %t28 = load ptr, ptr %t27 - store ptr %t28, ptr %t29 - %t30 = load i32, ptr %t9 - %t31 = call ptr @fn_itoa(i32 %t30) - store ptr %t31, ptr %t32 - call void @fn_emit(ptr @.str12491) - %t33 = load ptr, ptr %t32 - call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str12492) - %t34 = load ptr, ptr %t29 - %t35 = call i32 @fn_find_arch_id(ptr %t34) - %t36 = call ptr @fn_itoa(i32 %t35) - call void @fn_emit(ptr %t36) - call void @fn_emit(ptr @.str12493) - call void @fn_emit(ptr @.str12494) - %t37 = load ptr, ptr %t32 - call void @fn_emit(ptr %t37) - call void @fn_emit(ptr @.str12495) - %t38 = load ptr, ptr %t32 + %t29 = getelementptr inbounds %Cmp_Node, ptr %t28, i32 0, i32 1 + %t30 = load ptr, ptr %t29 + store ptr %t30, ptr %t31 + %t32 = load i32, ptr %t11 + %t33 = call ptr @fn_itoa(i32 %t32) + store ptr %t33, ptr %t34 + call void @fn_emit(ptr @.str12606) + %t35 = load ptr, ptr %t34 + call void @fn_emit(ptr %t35) + call void @fn_emit(ptr @.str12607) + %t36 = load ptr, ptr %t31 + %t37 = call i32 @fn_find_arch_id(ptr %t36) + %t38 = call ptr @fn_itoa(i32 %t37) call void @fn_emit(ptr %t38) - call void @fn_emit(ptr @.str12496) - %t39 = load ptr, ptr %t32 + call void @fn_emit(ptr @.str12608) + call void @fn_emit(ptr @.str12609) + %t39 = load ptr, ptr %t34 call void @fn_emit(ptr %t39) - call void @fn_emit(ptr @.str12497) - call void @fn_emit(ptr @.str12498) - %t40 = load ptr, ptr %t32 + call void @fn_emit(ptr @.str12610) + %t40 = load ptr, ptr %t34 call void @fn_emit(ptr %t40) - call void @fn_emit(ptr @.str12499) - %t41 = load ptr, ptr %t29 + call void @fn_emit(ptr @.str12611) + %t41 = load ptr, ptr %t34 call void @fn_emit(ptr %t41) - call void @fn_emit(ptr @.str12500) - %t42 = load ptr, ptr %t29 - %t43 = call ptr @lp_str_concat(ptr @.str12501, ptr %t42) - %t44 = call ptr @lp_str_concat(ptr %t43, ptr @.str12502) - store ptr %t44, ptr %t45 - %t46 = load ptr, ptr %t45 - %t47 = call ptr @fn_find_event(ptr %t46) - %t48 = icmp ne ptr %t47, null - %t49 = zext i1 %t48 to i32 - %t50 = icmp ne i32 %t49, 0 - br i1 %t50, label %then8, label %ifend10 + call void @fn_emit(ptr @.str12612) + call void @fn_emit(ptr @.str12613) + %t42 = load ptr, ptr %t34 + call void @fn_emit(ptr %t42) + call void @fn_emit(ptr @.str12614) + %t43 = load ptr, ptr %t31 + call void @fn_emit(ptr %t43) + call void @fn_emit(ptr @.str12615) + %t44 = load ptr, ptr %t31 + %t45 = call ptr @lp_str_concat(ptr @.str12616, ptr %t44) + %t46 = call ptr @lp_str_concat(ptr %t45, ptr @.str12617) + store ptr %t46, ptr %t47 + %t48 = load ptr, ptr %t47 + %t49 = call ptr @fn_find_event(ptr %t48) + %t50 = icmp ne ptr %t49, null + %t51 = zext i1 %t50 to i32 + %t52 = icmp ne i32 %t51, 0 + br i1 %t52, label %then8, label %ifend10 then8: - call void @fn_emit(ptr @.str12503) - %t51 = load ptr, ptr %t45 - call void @fn_emit(ptr %t51) - call void @fn_emit(ptr @.str12504) + call void @fn_emit(ptr @.str12618) + %t53 = load ptr, ptr %t47 + call void @fn_emit(ptr %t53) + call void @fn_emit(ptr @.str12619) br label %ifend10 ifend10: - call void @fn_emit(ptr @.str12505) - %t52 = load ptr, ptr %t32 - call void @fn_emit(ptr %t52) - call void @fn_emit(ptr @.str12506) - call void @fn_emit(ptr @.str12507) - %t53 = load ptr, ptr %t32 - call void @fn_emit(ptr %t53) - call void @fn_emit(ptr @.str12508) - %t54 = load i32, ptr %t9 - %t55 = add i32 %t54, 1 - store i32 %t55, ptr %t9 + call void @fn_emit(ptr @.str12620) + %t54 = load ptr, ptr %t34 + call void @fn_emit(ptr %t54) + call void @fn_emit(ptr @.str12621) + call void @fn_emit(ptr @.str12622) + %t55 = load ptr, ptr %t34 + call void @fn_emit(ptr %t55) + call void @fn_emit(ptr @.str12623) + %t56 = load i32, ptr %t11 + %t57 = add i32 %t56, 1 + store i32 %t57, ptr %t11 br label %wcond3 wend5: br label %ifend2 ifend2: - %t56 = load ptr, ptr @g_g_events - %t57 = getelementptr inbounds %LSlice, ptr %t56, i32 0, i32 1 - %t58 = load i32, ptr %t57 - %t59 = icmp sgt i32 %t58, 0 - %t60 = zext i1 %t59 to i32 - %t61 = icmp ne i32 %t60, 0 - br i1 %t61, label %then11, label %ifend13 + %t58 = load ptr, ptr @g_g_events + %t59 = getelementptr inbounds %LSlice, ptr %t58, i32 0, i32 1 + %t60 = load i32, ptr %t59 + %t61 = icmp sgt i32 %t60, 0 + %t62 = zext i1 %t61 to i32 + %t63 = icmp ne i32 %t62, 0 + br i1 %t63, label %then11, label %ifend13 then11: - call void @fn_emit(ptr @.str12509) + call void @fn_emit(ptr @.str12624) br label %ifend13 ifend13: - call void @fn_emit(ptr @.str12510) - call void @fn_emit(ptr @.str12511) + call void @fn_emit(ptr @.str12625) + call void @fn_emit(ptr @.str12626) br label %ret ret: ret void @@ -167684,10 +168323,12 @@ ret: define void @fn_emit_despawn_all_fn() { entry: %t7 = alloca ptr - %t10 = alloca i32 - %t30 = alloca ptr - %t33 = alloca ptr - %t46 = alloca ptr + %t9 = alloca ptr + %t12 = alloca ptr + %t14 = alloca i32 + %t34 = alloca ptr + %t37 = alloca ptr + %t50 = alloca ptr %t0 = load ptr, ptr @g_g_ondespawn %t1 = getelementptr inbounds %LSlice, ptr %t0, i32 0, i32 1 %t2 = load i32, ptr %t1 @@ -167700,114 +168341,120 @@ then0: ifend2: %t6 = call ptr @fn_itoa(i32 1024) store ptr %t6, ptr %t7 - call void @fn_emit(ptr @.str12512) - call void @fn_emit(ptr @.str12513) - call void @fn_emit(ptr @.str12514) - call void @fn_emit(ptr @.str12515) - call void @fn_emit(ptr @.str12516) - %t8 = load ptr, ptr %t7 - call void @fn_emit(ptr %t8) - call void @fn_emit(ptr @.str12517) - call void @fn_emit(ptr @.str12518) - call void @fn_emit(ptr @.str12519) - call void @fn_emit(ptr @.str12520) - %t9 = load ptr, ptr %t7 - call void @fn_emit(ptr %t9) - call void @fn_emit(ptr @.str12521) - call void @fn_emit(ptr @.str12522) - store i32 0, ptr %t10 + call void @fn_emit(ptr @.str12627) + call void @fn_emit(ptr @.str12628) + call void @fn_emit(ptr @.str12629) + call void @fn_emit(ptr @.str12630) + call void @fn_emit(ptr @.str12631) + %t8 = call ptr @fn_ecs_base(ptr @.str12632) + store ptr %t8, ptr %t9 + call void @fn_emit(ptr @.str12633) + %t10 = load ptr, ptr %t9 + call void @fn_emit(ptr %t10) + call void @fn_emit(ptr @.str12634) + call void @fn_emit(ptr @.str12635) + call void @fn_emit(ptr @.str12636) + call void @fn_emit(ptr @.str12637) + %t11 = call ptr @fn_ecs_base(ptr @.str12638) + store ptr %t11, ptr %t12 + call void @fn_emit(ptr @.str12639) + %t13 = load ptr, ptr %t12 + call void @fn_emit(ptr %t13) + call void @fn_emit(ptr @.str12640) + call void @fn_emit(ptr @.str12641) + store i32 0, ptr %t14 br label %wcond3 wcond3: - %t11 = load i32, ptr %t10 - %t12 = load ptr, ptr @g_g_ondespawn - %t13 = getelementptr inbounds %LSlice, ptr %t12, i32 0, i32 1 - %t14 = load i32, ptr %t13 - %t15 = icmp slt i32 %t11, %t14 - %t16 = zext i1 %t15 to i32 - %t17 = icmp ne i32 %t16, 0 - br i1 %t17, label %wbody4, label %wend5 + %t15 = load i32, ptr %t14 + %t16 = load ptr, ptr @g_g_ondespawn + %t17 = getelementptr inbounds %LSlice, ptr %t16, i32 0, i32 1 + %t18 = load i32, ptr %t17 + %t19 = icmp slt i32 %t15, %t18 + %t20 = zext i1 %t19 to i32 + %t21 = icmp ne i32 %t20, 0 + br i1 %t21, label %wbody4, label %wend5 wbody4: - %t18 = load ptr, ptr @g_g_ondespawn - %t19 = load i32, ptr %t10 - %t20 = getelementptr inbounds %LSlice, ptr %t18, i32 0, i32 0 - %t21 = load ptr, ptr %t20 - %t22 = getelementptr inbounds %LSlice, ptr %t18, i32 0, i32 1 - %t23 = load i32, ptr %t22 - %t24 = icmp ult i32 %t19, %t23 - br i1 %t24, label %ixok6, label %ixbad7 + %t22 = load ptr, ptr @g_g_ondespawn + %t23 = load i32, ptr %t14 + %t24 = getelementptr inbounds %LSlice, ptr %t22, i32 0, i32 0 + %t25 = load ptr, ptr %t24 + %t26 = getelementptr inbounds %LSlice, ptr %t22, i32 0, i32 1 + %t27 = load i32, ptr %t26 + %t28 = icmp ult i32 %t23, %t27 + br i1 %t28, label %ixok6, label %ixbad7 ixbad7: - %t25 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str12523, i32 %t19, i32 %t23) + %t29 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str12642, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok6: - %t26 = getelementptr inbounds ptr, ptr %t21, i32 %t19 - %t27 = load ptr, ptr %t26 - %t28 = getelementptr inbounds %Cmp_Node, ptr %t27, i32 0, i32 1 - %t29 = load ptr, ptr %t28 - store ptr %t29, ptr %t30 - %t31 = load i32, ptr %t10 - %t32 = call ptr @fn_itoa(i32 %t31) - store ptr %t32, ptr %t33 - call void @fn_emit(ptr @.str12524) - %t34 = load ptr, ptr %t33 - call void @fn_emit(ptr %t34) - call void @fn_emit(ptr @.str12525) - %t35 = load ptr, ptr %t30 - %t36 = call i32 @fn_find_arch_id(ptr %t35) - %t37 = call ptr @fn_itoa(i32 %t36) - call void @fn_emit(ptr %t37) - call void @fn_emit(ptr @.str12526) - call void @fn_emit(ptr @.str12527) - %t38 = load ptr, ptr %t33 + %t30 = getelementptr inbounds ptr, ptr %t25, i32 %t23 + %t31 = load ptr, ptr %t30 + %t32 = getelementptr inbounds %Cmp_Node, ptr %t31, i32 0, i32 1 + %t33 = load ptr, ptr %t32 + store ptr %t33, ptr %t34 + %t35 = load i32, ptr %t14 + %t36 = call ptr @fn_itoa(i32 %t35) + store ptr %t36, ptr %t37 + call void @fn_emit(ptr @.str12643) + %t38 = load ptr, ptr %t37 call void @fn_emit(ptr %t38) - call void @fn_emit(ptr @.str12528) - %t39 = load ptr, ptr %t33 - call void @fn_emit(ptr %t39) - call void @fn_emit(ptr @.str12529) - %t40 = load ptr, ptr %t33 - call void @fn_emit(ptr %t40) - call void @fn_emit(ptr @.str12530) - call void @fn_emit(ptr @.str12531) - %t41 = load ptr, ptr %t33 + call void @fn_emit(ptr @.str12644) + %t39 = load ptr, ptr %t34 + %t40 = call i32 @fn_find_arch_id(ptr %t39) + %t41 = call ptr @fn_itoa(i32 %t40) call void @fn_emit(ptr %t41) - call void @fn_emit(ptr @.str12532) - %t42 = load ptr, ptr %t30 + call void @fn_emit(ptr @.str12645) + call void @fn_emit(ptr @.str12646) + %t42 = load ptr, ptr %t37 call void @fn_emit(ptr %t42) - call void @fn_emit(ptr @.str12533) - %t43 = load ptr, ptr %t30 - %t44 = call ptr @lp_str_concat(ptr @.str12534, ptr %t43) - %t45 = call ptr @lp_str_concat(ptr %t44, ptr @.str12535) - store ptr %t45, ptr %t46 - %t47 = load ptr, ptr %t46 - %t48 = call ptr @fn_find_event(ptr %t47) - %t49 = icmp ne ptr %t48, null - %t50 = zext i1 %t49 to i32 - %t51 = icmp ne i32 %t50, 0 - br i1 %t51, label %then8, label %ifend10 + call void @fn_emit(ptr @.str12647) + %t43 = load ptr, ptr %t37 + call void @fn_emit(ptr %t43) + call void @fn_emit(ptr @.str12648) + %t44 = load ptr, ptr %t37 + call void @fn_emit(ptr %t44) + call void @fn_emit(ptr @.str12649) + call void @fn_emit(ptr @.str12650) + %t45 = load ptr, ptr %t37 + call void @fn_emit(ptr %t45) + call void @fn_emit(ptr @.str12651) + %t46 = load ptr, ptr %t34 + call void @fn_emit(ptr %t46) + call void @fn_emit(ptr @.str12652) + %t47 = load ptr, ptr %t34 + %t48 = call ptr @lp_str_concat(ptr @.str12653, ptr %t47) + %t49 = call ptr @lp_str_concat(ptr %t48, ptr @.str12654) + store ptr %t49, ptr %t50 + %t51 = load ptr, ptr %t50 + %t52 = call ptr @fn_find_event(ptr %t51) + %t53 = icmp ne ptr %t52, null + %t54 = zext i1 %t53 to i32 + %t55 = icmp ne i32 %t54, 0 + br i1 %t55, label %then8, label %ifend10 then8: - call void @fn_emit(ptr @.str12536) - %t52 = load ptr, ptr %t46 - call void @fn_emit(ptr %t52) - call void @fn_emit(ptr @.str12537) + call void @fn_emit(ptr @.str12655) + %t56 = load ptr, ptr %t50 + call void @fn_emit(ptr %t56) + call void @fn_emit(ptr @.str12656) br label %ifend10 ifend10: - call void @fn_emit(ptr @.str12538) - %t53 = load ptr, ptr %t33 - call void @fn_emit(ptr %t53) - call void @fn_emit(ptr @.str12539) - call void @fn_emit(ptr @.str12540) - %t54 = load ptr, ptr %t33 - call void @fn_emit(ptr %t54) - call void @fn_emit(ptr @.str12541) - %t55 = load i32, ptr %t10 - %t56 = add i32 %t55, 1 - store i32 %t56, ptr %t10 + call void @fn_emit(ptr @.str12657) + %t57 = load ptr, ptr %t37 + call void @fn_emit(ptr %t57) + call void @fn_emit(ptr @.str12658) + call void @fn_emit(ptr @.str12659) + %t58 = load ptr, ptr %t37 + call void @fn_emit(ptr %t58) + call void @fn_emit(ptr @.str12660) + %t59 = load i32, ptr %t14 + %t60 = add i32 %t59, 1 + store i32 %t60, ptr %t14 br label %wcond3 wend5: - call void @fn_emit(ptr @.str12542) - call void @fn_emit(ptr @.str12543) - call void @fn_emit(ptr @.str12544) + call void @fn_emit(ptr @.str12661) + call void @fn_emit(ptr @.str12662) + call void @fn_emit(ptr @.str12663) br label %ret ret: ret void @@ -167852,7 +168499,7 @@ entry: %t385 = alloca i32 %t405 = alloca ptr %t408 = alloca ptr - call void @fn_emith(ptr @.str12545) + call void @fn_emith(ptr @.str12664) store i32 0, ptr %t0 br label %wcond0 wcond0: @@ -167875,7 +168522,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12546, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str12665, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -167888,10 +168535,10 @@ ixok3: store ptr %t21, ptr %t22 %t23 = call ptr @fn_itoa(i32 16) store ptr %t23, ptr %t24 - call void @fn_emith(ptr @.str12547) + call void @fn_emith(ptr @.str12666) %t25 = load ptr, ptr %t22 call void @fn_emith(ptr %t25) - call void @fn_emith(ptr @.str12548) + call void @fn_emith(ptr @.str12667) store i32 0, ptr %t26 br label %wcond5 wcond5: @@ -167912,7 +168559,7 @@ wbody6: %t39 = icmp ne i32 %t38, 0 br i1 %t39, label %then8, label %ifend10 then8: - call void @fn_emith(ptr @.str12549) + call void @fn_emith(ptr @.str12668) br label %ifend10 ifend10: %t40 = load ptr, ptr %t18 @@ -167927,7 +168574,7 @@ ifend10: br i1 %t48, label %ixok11, label %ixbad12 ixbad12: %t49 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str12550, i32 %t43, i32 %t47) + call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str12669, i32 %t43, i32 %t47) call void @exit(i32 1) unreachable ixok11: @@ -167960,118 +168607,119 @@ then13: %t70 = icmp ne i32 %t69, 0 br i1 %t70, label %then16, label %ifend18 then16: - call void @fn_emith(ptr @.str12551) + call void @fn_emith(ptr @.str12670) br label %ifend18 ifend18: - call void @fn_emith(ptr @.str12552) + call void @fn_emith(ptr @.str12671) br label %ifend15 ifend15: - call void @fn_emith(ptr @.str12553) - call void @fn_emith(ptr @.str12554) + call void @fn_emith(ptr @.str12672) + call void @fn_emith(ptr @.str12673) %t71 = load ptr, ptr %t22 call void @fn_emith(ptr %t71) - call void @fn_emith(ptr @.str12555) + call void @fn_emith(ptr @.str12674) %t72 = load ptr, ptr %t24 call void @fn_emith(ptr %t72) - call void @fn_emith(ptr @.str12556) - call void @fn_emith(ptr @.str12557) + call void @fn_emith(ptr @.str12675) + call void @fn_emith(ptr @.str12676) %t73 = load ptr, ptr %t22 call void @fn_emith(ptr %t73) - call void @fn_emith(ptr @.str12558) - call void @fn_emith(ptr @.str12559) + call void @fn_emith(ptr @.str12677) + call void @fn_emith(ptr @.str12678) %t74 = load ptr, ptr %t22 call void @fn_emith(ptr %t74) - call void @fn_emith(ptr @.str12560) + call void @fn_emith(ptr @.str12679) %t75 = load ptr, ptr %t24 call void @fn_emith(ptr %t75) - call void @fn_emith(ptr @.str12561) - call void @fn_emit(ptr @.str12562) + call void @fn_emith(ptr @.str12680) + call void @fn_emit(ptr @.str12681) %t76 = load ptr, ptr %t22 call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str12563) - call void @fn_emit(ptr @.str12564) + call void @fn_emit(ptr @.str12682) + call void @fn_emit(ptr @.str12683) %t77 = load ptr, ptr %t22 call void @fn_emit(ptr %t77) - call void @fn_emit(ptr @.str12565) - call void @fn_emit(ptr @.str12566) + call void @fn_emit(ptr @.str12684) + call void @fn_emit(ptr @.str12685) %t78 = load ptr, ptr %t24 call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str12567) - call void @fn_emit(ptr @.str12568) - call void @fn_emit(ptr @.str12569) + call void @fn_emit(ptr @.str12686) + call void @fn_emit(ptr @.str12687) + call void @fn_emit(ptr @.str12688) %t79 = load ptr, ptr %t24 call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str12570) + call void @fn_emit(ptr @.str12689) %t80 = load ptr, ptr %t22 call void @fn_emit(ptr %t80) - call void @fn_emit(ptr @.str12571) - call void @fn_emit(ptr @.str12572) - call void @fn_emit(ptr @.str12573) + call void @fn_emit(ptr @.str12690) + call void @fn_emit(ptr @.str12691) + call void @fn_emit(ptr @.str12692) %t81 = load ptr, ptr %t24 call void @fn_emit(ptr %t81) - call void @fn_emit(ptr @.str12574) + call void @fn_emit(ptr @.str12693) %t82 = load ptr, ptr %t22 call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str12575) - call void @fn_emit(ptr @.str12576) - call void @fn_emit(ptr @.str12577) + call void @fn_emit(ptr @.str12694) + call void @fn_emit(ptr @.str12695) + call void @fn_emit(ptr @.str12696) %t83 = load ptr, ptr %t22 call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str12578) - call void @fn_emit(ptr @.str12579) - call void @fn_emit(ptr @.str12580) + call void @fn_emit(ptr @.str12697) + call void @fn_emit(ptr @.str12698) + call void @fn_emit(ptr @.str12699) %t84 = load ptr, ptr %t22 call void @fn_emit(ptr %t84) - call void @fn_emit(ptr @.str12581) - call void @fn_emit(ptr @.str12582) + call void @fn_emit(ptr @.str12700) + call void @fn_emit(ptr @.str12701) %t85 = load ptr, ptr %t22 call void @fn_emit(ptr %t85) - call void @fn_emit(ptr @.str12583) - call void @fn_emit(ptr @.str12584) + call void @fn_emit(ptr @.str12702) + call void @fn_emit(ptr @.str12703) %t86 = load ptr, ptr %t24 call void @fn_emit(ptr %t86) - call void @fn_emit(ptr @.str12585) - call void @fn_emit(ptr @.str12586) - call void @fn_emit(ptr @.str12587) + call void @fn_emit(ptr @.str12704) + call void @fn_emit(ptr @.str12705) + call void @fn_emit(ptr @.str12706) %t87 = load ptr, ptr %t24 call void @fn_emit(ptr %t87) - call void @fn_emit(ptr @.str12588) + call void @fn_emit(ptr @.str12707) %t88 = load ptr, ptr %t22 call void @fn_emit(ptr %t88) - call void @fn_emit(ptr @.str12589) - call void @fn_emit(ptr @.str12590) - call void @fn_emit(ptr @.str12591) + call void @fn_emit(ptr @.str12708) + call void @fn_emit(ptr @.str12709) + call void @fn_emit(ptr @.str12710) %t89 = load ptr, ptr %t24 call void @fn_emit(ptr %t89) - call void @fn_emit(ptr @.str12592) + call void @fn_emit(ptr @.str12711) %t90 = load ptr, ptr %t22 call void @fn_emit(ptr %t90) - call void @fn_emit(ptr @.str12593) - call void @fn_emit(ptr @.str12594) - call void @fn_emit(ptr @.str12595) + call void @fn_emit(ptr @.str12712) + call void @fn_emit(ptr @.str12713) + call void @fn_emit(ptr @.str12714) %t91 = load ptr, ptr %t22 call void @fn_emit(ptr %t91) - call void @fn_emit(ptr @.str12596) - call void @fn_emit(ptr @.str12597) - call void @fn_emit(ptr @.str12598) + call void @fn_emit(ptr @.str12715) + call void @fn_emit(ptr @.str12716) + call void @fn_emit(ptr @.str12717) %t92 = load ptr, ptr %t22 call void @fn_emit(ptr %t92) - call void @fn_emit(ptr @.str12599) - call void @fn_emit(ptr @.str12600) + call void @fn_emit(ptr @.str12718) + call void @fn_emit(ptr @.str12719) %t93 = load ptr, ptr %t22 call void @fn_emit(ptr %t93) - call void @fn_emit(ptr @.str12601) - call void @fn_emit(ptr @.str12602) - call void @fn_emit(ptr @.str12603) - call void @fn_emit(ptr @.str12604) + call void @fn_emit(ptr @.str12720) + call void @fn_emit(ptr @.str12721) + call void @fn_emit(ptr @.str12722) + call void @fn_emit(ptr @.str12723) + call void @fn_emit(ptr @.str12724) %t94 = load ptr, ptr %t24 call void @fn_emit(ptr %t94) - call void @fn_emit(ptr @.str12605) + call void @fn_emit(ptr @.str12725) %t95 = load ptr, ptr %t22 call void @fn_emit(ptr %t95) - call void @fn_emit(ptr @.str12606) - call void @fn_emit(ptr @.str12607) - call void @fn_emit(ptr @.str12608) + call void @fn_emit(ptr @.str12726) + call void @fn_emit(ptr @.str12727) + call void @fn_emit(ptr @.str12728) store i32 0, ptr @g_ll_t store i32 0, ptr @g_ll_lbl store i32 0, ptr @g_g_term @@ -168079,7 +168727,7 @@ ifend15: store i32 0, ptr @g_nloop store i32 0, ptr @g_nself store ptr null, ptr @g_g_cur_scene - store ptr @.str12609, ptr @g_ret_ty + store ptr @.str12729, ptr @g_ret_ty %t96 = call ptr @fn_buf_new() store ptr %t96, ptr %t97 %t98 = call ptr @fn_buf_new() @@ -168088,13 +168736,13 @@ ifend15: store ptr %t99, ptr %t100 %t101 = load ptr, ptr %t97 store ptr %t101, ptr @g_code - call void @fn_emit(ptr @.str12610) - call void @fn_emit(ptr @.str12611) + call void @fn_emit(ptr @.str12730) + call void @fn_emit(ptr @.str12731) %t102 = call ptr @fn_itoa(i32 32) call void @fn_emit(ptr %t102) - call void @fn_emit(ptr @.str12612) - call void @fn_emit(ptr @.str12613) - call void @fn_emit(ptr @.str12614) + call void @fn_emit(ptr @.str12732) + call void @fn_emit(ptr @.str12733) + call void @fn_emit(ptr @.str12734) %t103 = load ptr, ptr %t18 %t104 = getelementptr inbounds %Cmp_Node, ptr %t103, i32 0, i32 2 %t105 = load i32, ptr %t104 @@ -168103,16 +168751,16 @@ ifend15: %t108 = icmp ne i32 %t107, 0 br i1 %t108, label %then19, label %else20 then19: - call void @fn_emit(ptr @.str12615) + call void @fn_emit(ptr @.str12735) br label %ifend21 else20: - call void @fn_emit(ptr @.str12616) + call void @fn_emit(ptr @.str12736) br label %ifend21 ifend21: - call void @fn_emit(ptr @.str12617) - call void @fn_emit(ptr @.str12618) + call void @fn_emit(ptr @.str12737) + call void @fn_emit(ptr @.str12738) %t109 = load ptr, ptr %t22 - %t110 = call ptr @lp_str_concat(ptr @.str12619, ptr %t109) + %t110 = call ptr @lp_str_concat(ptr @.str12739, ptr %t109) %t111 = call ptr @fn_emit_alloca(ptr %t110) store ptr %t111, ptr %t112 store i32 0, ptr %t113 @@ -168141,7 +168789,7 @@ wbody23: br i1 %t131, label %ixok25, label %ixbad26 ixbad26: %t132 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t132, ptr @.fmt_bounds, ptr @.str12620, i32 %t126, i32 %t130) + call i32 (ptr, ptr, ...) @fprintf(ptr %t132, ptr @.fmt_bounds, ptr @.str12740, i32 %t126, i32 %t130) call void @exit(i32 1) unreachable ixok25: @@ -168155,45 +168803,45 @@ ixok25: store ptr %t139, ptr %t140 %t141 = call ptr @fn_nreg() store ptr %t141, ptr %t142 - call void @fn_emit(ptr @.str12621) + call void @fn_emit(ptr @.str12741) %t143 = load ptr, ptr %t142 call void @fn_emit(ptr %t143) - call void @fn_emit(ptr @.str12622) + call void @fn_emit(ptr @.str12742) %t144 = load ptr, ptr %t22 call void @fn_emit(ptr %t144) - call void @fn_emit(ptr @.str12623) + call void @fn_emit(ptr @.str12743) %t145 = load ptr, ptr %t112 call void @fn_emit(ptr %t145) - call void @fn_emit(ptr @.str12624) + call void @fn_emit(ptr @.str12744) %t146 = load i32, ptr %t113 %t147 = call ptr @fn_itoa(i32 %t146) call void @fn_emit(ptr %t147) - call void @fn_emit(ptr @.str12625) - call void @fn_emit(ptr @.str12626) + call void @fn_emit(ptr @.str12745) + call void @fn_emit(ptr @.str12746) %t148 = load ptr, ptr %t140 call void @fn_emit(ptr %t148) - call void @fn_emit(ptr @.str12627) + call void @fn_emit(ptr @.str12747) %t149 = load i32, ptr %t113 %t150 = call ptr @fn_itoa(i32 %t149) call void @fn_emit(ptr %t150) - call void @fn_emit(ptr @.str12628) + call void @fn_emit(ptr @.str12748) %t151 = load ptr, ptr %t142 call void @fn_emit(ptr %t151) - call void @fn_emit(ptr @.str12629) + call void @fn_emit(ptr @.str12749) %t152 = load ptr, ptr %t140 %t153 = call ptr @fn_emit_alloca(ptr %t152) store ptr %t153, ptr %t154 - call void @fn_emit(ptr @.str12630) + call void @fn_emit(ptr @.str12750) %t155 = load ptr, ptr %t140 call void @fn_emit(ptr %t155) - call void @fn_emit(ptr @.str12631) + call void @fn_emit(ptr @.str12751) %t156 = load i32, ptr %t113 %t157 = call ptr @fn_itoa(i32 %t156) call void @fn_emit(ptr %t157) - call void @fn_emit(ptr @.str12632) + call void @fn_emit(ptr @.str12752) %t158 = load ptr, ptr %t154 call void @fn_emit(ptr %t158) - call void @fn_emit(ptr @.str12633) + call void @fn_emit(ptr @.str12753) %t159 = load ptr, ptr %t135 %t160 = getelementptr inbounds %Cmp_Node, ptr %t159, i32 0, i32 1 %t161 = load ptr, ptr %t160 @@ -168218,16 +168866,16 @@ wend24: then27: %t175 = call ptr @fn_nreg() store ptr %t175, ptr %t168 - call void @fn_emit(ptr @.str12634) + call void @fn_emit(ptr @.str12754) %t176 = load ptr, ptr %t168 call void @fn_emit(ptr %t176) - call void @fn_emit(ptr @.str12635) + call void @fn_emit(ptr @.str12755) %t177 = load ptr, ptr %t22 call void @fn_emit(ptr %t177) - call void @fn_emit(ptr @.str12636) + call void @fn_emit(ptr @.str12756) %t178 = load ptr, ptr %t112 call void @fn_emit(ptr %t178) - call void @fn_emit(ptr @.str12637) + call void @fn_emit(ptr @.str12757) %t179 = load ptr, ptr %t18 %t180 = getelementptr inbounds %Cmp_Node, ptr %t179, i32 0, i32 7 %t181 = load ptr, ptr %t180 @@ -168235,11 +168883,11 @@ then27: %t183 = load i32, ptr %t182 %t184 = call ptr @fn_itoa(i32 %t183) call void @fn_emit(ptr %t184) - call void @fn_emit(ptr @.str12638) - call void @fn_emit(ptr @.str12639) + call void @fn_emit(ptr @.str12758) + call void @fn_emit(ptr @.str12759) %t185 = load ptr, ptr %t168 call void @fn_emit(ptr %t185) - call void @fn_emit(ptr @.str12640) + call void @fn_emit(ptr @.str12760) %t186 = load ptr, ptr %t168 store ptr %t186, ptr @g_g_cancel_addr br label %ifend29 @@ -168268,7 +168916,7 @@ wbody31: br i1 %t203, label %ixok33, label %ixbad34 ixbad34: %t204 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t204, ptr @.fmt_bounds, ptr @.str12641, i32 %t198, i32 %t202) + call i32 (ptr, ptr, ...) @fprintf(ptr %t204, ptr @.fmt_bounds, ptr @.str12761, i32 %t198, i32 %t202) call void @exit(i32 1) unreachable ixok33: @@ -168284,7 +168932,7 @@ then35: %t212 = load i32, ptr %t188 store i32 %t212, ptr @g_nloc store i32 0, ptr @g_g_term - %t213 = call ptr @fn_lbl(ptr @.str12642) + %t213 = call ptr @fn_lbl(ptr @.str12762) store ptr %t213, ptr %t214 %t215 = load ptr, ptr %t214 store ptr %t215, ptr @g_g_ret_label @@ -168298,7 +168946,7 @@ then35: br i1 %t222, label %ixok38, label %ixbad39 ixbad39: %t223 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t223, ptr @.fmt_bounds, ptr @.str12643, i32 %t217, i32 %t221) + call i32 (ptr, ptr, ...) @fprintf(ptr %t223, ptr @.fmt_bounds, ptr @.str12763, i32 %t217, i32 %t221) call void @exit(i32 1) unreachable ixok38: @@ -168320,7 +168968,7 @@ ixok38: br i1 %t236, label %ixok40, label %ixbad41 ixbad41: %t237 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t237, ptr @.fmt_bounds, ptr @.str12644, i32 %t231, i32 %t235) + call i32 (ptr, ptr, ...) @fprintf(ptr %t237, ptr @.fmt_bounds, ptr @.str12764, i32 %t231, i32 %t235) call void @exit(i32 1) unreachable ixok40: @@ -168329,7 +168977,7 @@ ixok40: %t240 = getelementptr inbounds %Cmp_Node, ptr %t239, i32 0, i32 4 %t241 = load ptr, ptr %t240 call void @fn_emit_block(ptr %t241) - store ptr @.str12645, ptr @g_g_ret_label + store ptr @.str12765, ptr @g_g_ret_label %t242 = load i32, ptr @g_g_term %t243 = icmp eq i32 %t242, 0 %t244 = zext i1 %t243 to i32 @@ -168337,13 +168985,13 @@ ixok40: br i1 %t245, label %then42, label %ifend44 then42: %t246 = load ptr, ptr %t214 - %t247 = call ptr @lp_str_concat(ptr @.str12646, ptr %t246) - %t248 = call ptr @lp_str_concat(ptr %t247, ptr @.str12647) + %t247 = call ptr @lp_str_concat(ptr @.str12766, ptr %t246) + %t248 = call ptr @lp_str_concat(ptr %t247, ptr @.str12767) call void @fn_emit(ptr %t248) br label %ifend44 ifend44: %t249 = load ptr, ptr %t214 - %t250 = call ptr @lp_str_concat(ptr %t249, ptr @.str12648) + %t250 = call ptr @lp_str_concat(ptr %t249, ptr @.str12768) call void @fn_emit(ptr %t250) store i32 0, ptr @g_g_term br label %ifend37 @@ -168359,132 +169007,132 @@ wend32: %t256 = icmp ne i32 %t255, 0 br i1 %t256, label %then45, label %ifend47 then45: - %t257 = call ptr @fn_emit_alloca(ptr @.str12649) + %t257 = call ptr @fn_emit_alloca(ptr @.str12769) store ptr %t257, ptr %t258 - call void @fn_emit(ptr @.str12650) + call void @fn_emit(ptr @.str12770) %t259 = load ptr, ptr %t258 call void @fn_emit(ptr %t259) - call void @fn_emit(ptr @.str12651) - %t260 = call ptr @fn_lbl(ptr @.str12652) + call void @fn_emit(ptr @.str12771) + %t260 = call ptr @fn_lbl(ptr @.str12772) store ptr %t260, ptr %t261 - %t262 = call ptr @fn_lbl(ptr @.str12653) + %t262 = call ptr @fn_lbl(ptr @.str12773) store ptr %t262, ptr %t263 - %t264 = call ptr @fn_lbl(ptr @.str12654) + %t264 = call ptr @fn_lbl(ptr @.str12774) store ptr %t264, ptr %t265 - call void @fn_emit(ptr @.str12655) + call void @fn_emit(ptr @.str12775) %t266 = load ptr, ptr %t261 call void @fn_emit(ptr %t266) - call void @fn_emit(ptr @.str12656) + call void @fn_emit(ptr @.str12776) %t267 = load ptr, ptr %t261 call void @fn_emit(ptr %t267) - call void @fn_emit(ptr @.str12657) + call void @fn_emit(ptr @.str12777) %t268 = load ptr, ptr %t258 - %t269 = call ptr @lp_str_concat(ptr @.str12658, ptr %t268) + %t269 = call ptr @lp_str_concat(ptr @.str12778, ptr %t268) %t270 = call ptr @fn_emit_bind(ptr %t269) store ptr %t270, ptr %t271 %t272 = load ptr, ptr %t22 - %t273 = call ptr @lp_str_concat(ptr @.str12659, ptr %t272) + %t273 = call ptr @lp_str_concat(ptr @.str12779, ptr %t272) %t274 = call ptr @fn_emit_bind(ptr %t273) store ptr %t274, ptr %t275 %t276 = load ptr, ptr %t271 - %t277 = call ptr @lp_str_concat(ptr @.str12660, ptr %t276) - %t278 = call ptr @lp_str_concat(ptr %t277, ptr @.str12661) + %t277 = call ptr @lp_str_concat(ptr @.str12780, ptr %t276) + %t278 = call ptr @lp_str_concat(ptr %t277, ptr @.str12781) %t279 = load ptr, ptr %t275 %t280 = call ptr @lp_str_concat(ptr %t278, ptr %t279) %t281 = call ptr @fn_emit_bind(ptr %t280) store ptr %t281, ptr %t282 - call void @fn_emit(ptr @.str12662) + call void @fn_emit(ptr @.str12782) %t283 = load ptr, ptr %t282 call void @fn_emit(ptr %t283) - call void @fn_emit(ptr @.str12663) + call void @fn_emit(ptr @.str12783) %t284 = load ptr, ptr %t263 call void @fn_emit(ptr %t284) - call void @fn_emit(ptr @.str12664) + call void @fn_emit(ptr @.str12784) %t285 = load ptr, ptr %t265 call void @fn_emit(ptr %t285) - call void @fn_emit(ptr @.str12665) + call void @fn_emit(ptr @.str12785) %t286 = load ptr, ptr %t263 call void @fn_emit(ptr %t286) - call void @fn_emit(ptr @.str12666) + call void @fn_emit(ptr @.str12786) %t287 = call ptr @fn_nreg() store ptr %t287, ptr %t288 - call void @fn_emit(ptr @.str12667) + call void @fn_emit(ptr @.str12787) %t289 = load ptr, ptr %t288 call void @fn_emit(ptr %t289) - call void @fn_emit(ptr @.str12668) + call void @fn_emit(ptr @.str12788) %t290 = load ptr, ptr %t24 call void @fn_emit(ptr %t290) - call void @fn_emit(ptr @.str12669) + call void @fn_emit(ptr @.str12789) %t291 = load ptr, ptr %t22 call void @fn_emit(ptr %t291) - call void @fn_emit(ptr @.str12670) + call void @fn_emit(ptr @.str12790) %t292 = load ptr, ptr %t271 call void @fn_emit(ptr %t292) - call void @fn_emit(ptr @.str12671) + call void @fn_emit(ptr @.str12791) %t293 = load ptr, ptr %t288 - %t294 = call ptr @lp_str_concat(ptr @.str12672, ptr %t293) + %t294 = call ptr @lp_str_concat(ptr @.str12792, ptr %t293) %t295 = call ptr @fn_emit_bind(ptr %t294) store ptr %t295, ptr %t296 %t297 = load ptr, ptr %t296 - %t298 = call ptr @lp_str_concat(ptr @.str12673, ptr %t297) - %t299 = call ptr @lp_str_concat(ptr %t298, ptr @.str12674) + %t298 = call ptr @lp_str_concat(ptr @.str12793, ptr %t297) + %t299 = call ptr @lp_str_concat(ptr %t298, ptr @.str12794) %t300 = call ptr @fn_emit_bind(ptr %t299) store ptr %t300, ptr %t301 - %t302 = call ptr @fn_lbl(ptr @.str12675) + %t302 = call ptr @fn_lbl(ptr @.str12795) store ptr %t302, ptr %t303 - %t304 = call ptr @fn_lbl(ptr @.str12676) + %t304 = call ptr @fn_lbl(ptr @.str12796) store ptr %t304, ptr %t305 - call void @fn_emit(ptr @.str12677) + call void @fn_emit(ptr @.str12797) %t306 = load ptr, ptr %t301 call void @fn_emit(ptr %t306) - call void @fn_emit(ptr @.str12678) + call void @fn_emit(ptr @.str12798) %t307 = load ptr, ptr %t305 call void @fn_emit(ptr %t307) - call void @fn_emit(ptr @.str12679) + call void @fn_emit(ptr @.str12799) %t308 = load ptr, ptr %t303 call void @fn_emit(ptr %t308) - call void @fn_emit(ptr @.str12680) + call void @fn_emit(ptr @.str12800) %t309 = load ptr, ptr %t303 call void @fn_emit(ptr %t309) - call void @fn_emit(ptr @.str12681) - call void @fn_emit(ptr @.str12682) + call void @fn_emit(ptr @.str12801) + call void @fn_emit(ptr @.str12802) %t310 = load ptr, ptr %t296 call void @fn_emit(ptr %t310) - call void @fn_emit(ptr @.str12683) + call void @fn_emit(ptr @.str12803) %t311 = load ptr, ptr %t112 call void @fn_emit(ptr %t311) - call void @fn_emit(ptr @.str12684) - call void @fn_emit(ptr @.str12685) + call void @fn_emit(ptr @.str12804) + call void @fn_emit(ptr @.str12805) %t312 = load ptr, ptr %t305 call void @fn_emit(ptr %t312) - call void @fn_emit(ptr @.str12686) + call void @fn_emit(ptr @.str12806) %t313 = load ptr, ptr %t305 call void @fn_emit(ptr %t313) - call void @fn_emit(ptr @.str12687) + call void @fn_emit(ptr @.str12807) %t314 = load ptr, ptr %t271 - %t315 = call ptr @lp_str_concat(ptr @.str12688, ptr %t314) - %t316 = call ptr @lp_str_concat(ptr %t315, ptr @.str12689) + %t315 = call ptr @lp_str_concat(ptr @.str12808, ptr %t314) + %t316 = call ptr @lp_str_concat(ptr %t315, ptr @.str12809) %t317 = call ptr @fn_emit_bind(ptr %t316) store ptr %t317, ptr %t318 - call void @fn_emit(ptr @.str12690) + call void @fn_emit(ptr @.str12810) %t319 = load ptr, ptr %t318 call void @fn_emit(ptr %t319) - call void @fn_emit(ptr @.str12691) + call void @fn_emit(ptr @.str12811) %t320 = load ptr, ptr %t258 call void @fn_emit(ptr %t320) - call void @fn_emit(ptr @.str12692) - call void @fn_emit(ptr @.str12693) + call void @fn_emit(ptr @.str12812) + call void @fn_emit(ptr @.str12813) %t321 = load ptr, ptr %t261 call void @fn_emit(ptr %t321) - call void @fn_emit(ptr @.str12694) + call void @fn_emit(ptr @.str12814) %t322 = load ptr, ptr %t265 call void @fn_emit(ptr %t322) - call void @fn_emit(ptr @.str12695) - call void @fn_emit(ptr @.str12696) + call void @fn_emit(ptr @.str12815) + call void @fn_emit(ptr @.str12816) br label %ifend47 ifend47: - call void @fn_emit(ptr @.str12697) - call void @fn_emit(ptr @.str12698) + call void @fn_emit(ptr @.str12817) + call void @fn_emit(ptr @.str12818) %t323 = load ptr, ptr %t18 %t324 = getelementptr inbounds %Cmp_Node, ptr %t323, i32 0, i32 2 %t325 = load i32, ptr %t324 @@ -168494,22 +169142,22 @@ ifend47: br i1 %t328, label %then48, label %else49 then48: %t329 = load ptr, ptr %t168 - %t330 = call ptr @lp_str_concat(ptr @.str12699, ptr %t329) + %t330 = call ptr @lp_str_concat(ptr @.str12819, ptr %t329) %t331 = call ptr @fn_emit_bind(ptr %t330) store ptr %t331, ptr %t332 - call void @fn_emit(ptr @.str12700) + call void @fn_emit(ptr @.str12820) %t333 = load ptr, ptr %t332 call void @fn_emit(ptr %t333) - call void @fn_emit(ptr @.str12701) + call void @fn_emit(ptr @.str12821) br label %ifend50 else49: - call void @fn_emit(ptr @.str12702) + call void @fn_emit(ptr @.str12822) br label %ifend50 ifend50: store ptr null, ptr @g_g_cancel_addr %t334 = load ptr, ptr %t100 store ptr %t334, ptr @g_code - store ptr @.str12703, ptr %t335 + store ptr @.str12823, ptr %t335 %t336 = load ptr, ptr %t18 %t337 = getelementptr inbounds %Cmp_Node, ptr %t336, i32 0, i32 2 %t338 = load i32, ptr %t337 @@ -168518,16 +169166,16 @@ ifend50: %t341 = icmp ne i32 %t340, 0 br i1 %t341, label %then51, label %ifend53 then51: - store ptr @.str12704, ptr %t335 + store ptr @.str12824, ptr %t335 br label %ifend53 ifend53: - call void @fn_emit(ptr @.str12705) + call void @fn_emit(ptr @.str12825) %t342 = load ptr, ptr %t335 call void @fn_emit(ptr %t342) - call void @fn_emit(ptr @.str12706) + call void @fn_emit(ptr @.str12826) %t343 = load ptr, ptr %t22 call void @fn_emit(ptr %t343) - call void @fn_emit(ptr @.str12707) + call void @fn_emit(ptr @.str12827) store i32 0, ptr %t344 br label %wcond54 wcond54: @@ -168548,7 +169196,7 @@ wbody55: %t357 = icmp ne i32 %t356, 0 br i1 %t357, label %then57, label %ifend59 then57: - call void @fn_emit(ptr @.str12708) + call void @fn_emit(ptr @.str12828) br label %ifend59 ifend59: %t358 = load ptr, ptr %t18 @@ -168563,7 +169211,7 @@ ifend59: br i1 %t366, label %ixok60, label %ixbad61 ixbad61: %t367 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t367, ptr @.fmt_bounds, ptr @.str12709, i32 %t361, i32 %t365) + call i32 (ptr, ptr, ...) @fprintf(ptr %t367, ptr @.fmt_bounds, ptr @.str12829, i32 %t361, i32 %t365) call void @exit(i32 1) unreachable ixok60: @@ -168573,7 +169221,7 @@ ixok60: %t371 = load ptr, ptr %t370 %t372 = call ptr @fn_llty(ptr %t371) call void @fn_emit(ptr %t372) - call void @fn_emit(ptr @.str12710) + call void @fn_emit(ptr @.str12830) %t373 = load i32, ptr %t344 %t374 = call ptr @fn_itoa(i32 %t373) call void @fn_emit(ptr %t374) @@ -168582,14 +169230,14 @@ ixok60: store i32 %t376, ptr %t344 br label %wcond54 wend56: - call void @fn_emit(ptr @.str12711) + call void @fn_emit(ptr @.str12831) %t377 = load ptr, ptr @g_falloc %t378 = call ptr @fn_buf_str(ptr %t377) call void @fn_emit(ptr %t378) %t379 = load ptr, ptr %t97 %t380 = call ptr @fn_buf_str(ptr %t379) call void @fn_emit(ptr %t380) - call void @fn_emit(ptr @.str12712) + call void @fn_emit(ptr @.str12832) %t381 = load i32, ptr %t0 %t382 = add i32 %t381, 1 store i32 %t382, ptr %t0 @@ -168597,7 +169245,7 @@ wend56: wend2: %t383 = call ptr @fn_itoa(i32 16) store ptr %t383, ptr %t384 - call void @fn_emit(ptr @.str12713) + call void @fn_emit(ptr @.str12833) store i32 0, ptr %t385 br label %wcond62 wcond62: @@ -168620,7 +169268,7 @@ wbody63: br i1 %t399, label %ixok65, label %ixbad66 ixbad66: %t400 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t400, ptr @.fmt_bounds, ptr @.str12714, i32 %t394, i32 %t398) + call i32 (ptr, ptr, ...) @fprintf(ptr %t400, ptr @.fmt_bounds, ptr @.str12834, i32 %t394, i32 %t398) call void @exit(i32 1) unreachable ixok65: @@ -168632,127 +169280,127 @@ ixok65: %t406 = load i32, ptr %t385 %t407 = call ptr @fn_itoa(i32 %t406) store ptr %t407, ptr %t408 - call void @fn_emit(ptr @.str12715) + call void @fn_emit(ptr @.str12835) %t409 = load ptr, ptr %t408 call void @fn_emit(ptr %t409) - call void @fn_emit(ptr @.str12716) - call void @fn_emit(ptr @.str12717) + call void @fn_emit(ptr @.str12836) + call void @fn_emit(ptr @.str12837) %t410 = load ptr, ptr %t408 call void @fn_emit(ptr %t410) - call void @fn_emit(ptr @.str12718) - call void @fn_emit(ptr @.str12719) + call void @fn_emit(ptr @.str12838) + call void @fn_emit(ptr @.str12839) %t411 = load ptr, ptr %t408 call void @fn_emit(ptr %t411) - call void @fn_emit(ptr @.str12720) + call void @fn_emit(ptr @.str12840) %t412 = load ptr, ptr %t405 call void @fn_emit(ptr %t412) - call void @fn_emit(ptr @.str12721) - call void @fn_emit(ptr @.str12722) + call void @fn_emit(ptr @.str12841) + call void @fn_emit(ptr @.str12842) %t413 = load ptr, ptr %t408 call void @fn_emit(ptr %t413) - call void @fn_emit(ptr @.str12723) + call void @fn_emit(ptr @.str12843) %t414 = load ptr, ptr %t408 call void @fn_emit(ptr %t414) - call void @fn_emit(ptr @.str12724) + call void @fn_emit(ptr @.str12844) %t415 = load ptr, ptr %t408 call void @fn_emit(ptr %t415) - call void @fn_emit(ptr @.str12725) - call void @fn_emit(ptr @.str12726) + call void @fn_emit(ptr @.str12845) + call void @fn_emit(ptr @.str12846) %t416 = load ptr, ptr %t408 call void @fn_emit(ptr %t416) - call void @fn_emit(ptr @.str12727) + call void @fn_emit(ptr @.str12847) %t417 = load ptr, ptr %t408 call void @fn_emit(ptr %t417) - call void @fn_emit(ptr @.str12728) + call void @fn_emit(ptr @.str12848) %t418 = load ptr, ptr %t408 call void @fn_emit(ptr %t418) - call void @fn_emit(ptr @.str12729) - call void @fn_emit(ptr @.str12730) + call void @fn_emit(ptr @.str12849) + call void @fn_emit(ptr @.str12850) %t419 = load ptr, ptr %t408 call void @fn_emit(ptr %t419) - call void @fn_emit(ptr @.str12731) - call void @fn_emit(ptr @.str12732) + call void @fn_emit(ptr @.str12851) + call void @fn_emit(ptr @.str12852) %t420 = load ptr, ptr %t408 call void @fn_emit(ptr %t420) - call void @fn_emit(ptr @.str12733) + call void @fn_emit(ptr @.str12853) %t421 = load ptr, ptr %t384 call void @fn_emit(ptr %t421) - call void @fn_emit(ptr @.str12734) + call void @fn_emit(ptr @.str12854) %t422 = load ptr, ptr %t405 call void @fn_emit(ptr %t422) - call void @fn_emit(ptr @.str12735) + call void @fn_emit(ptr @.str12855) %t423 = load ptr, ptr %t408 call void @fn_emit(ptr %t423) - call void @fn_emit(ptr @.str12736) - call void @fn_emit(ptr @.str12737) + call void @fn_emit(ptr @.str12856) + call void @fn_emit(ptr @.str12857) %t424 = load ptr, ptr %t408 call void @fn_emit(ptr %t424) - call void @fn_emit(ptr @.str12738) + call void @fn_emit(ptr @.str12858) %t425 = load ptr, ptr %t408 call void @fn_emit(ptr %t425) - call void @fn_emit(ptr @.str12739) - call void @fn_emit(ptr @.str12740) + call void @fn_emit(ptr @.str12859) + call void @fn_emit(ptr @.str12860) %t426 = load ptr, ptr %t408 call void @fn_emit(ptr %t426) - call void @fn_emit(ptr @.str12741) + call void @fn_emit(ptr @.str12861) %t427 = load ptr, ptr %t408 call void @fn_emit(ptr %t427) - call void @fn_emit(ptr @.str12742) - call void @fn_emit(ptr @.str12743) + call void @fn_emit(ptr @.str12862) + call void @fn_emit(ptr @.str12863) %t428 = load ptr, ptr %t408 call void @fn_emit(ptr %t428) - call void @fn_emit(ptr @.str12744) + call void @fn_emit(ptr @.str12864) %t429 = load ptr, ptr %t408 call void @fn_emit(ptr %t429) - call void @fn_emit(ptr @.str12745) + call void @fn_emit(ptr @.str12865) %t430 = load ptr, ptr %t408 call void @fn_emit(ptr %t430) - call void @fn_emit(ptr @.str12746) - call void @fn_emit(ptr @.str12747) + call void @fn_emit(ptr @.str12866) + call void @fn_emit(ptr @.str12867) %t431 = load ptr, ptr %t408 call void @fn_emit(ptr %t431) - call void @fn_emit(ptr @.str12748) - call void @fn_emit(ptr @.str12749) + call void @fn_emit(ptr @.str12868) + call void @fn_emit(ptr @.str12869) %t432 = load ptr, ptr %t408 call void @fn_emit(ptr %t432) - call void @fn_emit(ptr @.str12750) + call void @fn_emit(ptr @.str12870) %t433 = load ptr, ptr %t384 call void @fn_emit(ptr %t433) - call void @fn_emit(ptr @.str12751) + call void @fn_emit(ptr @.str12871) %t434 = load ptr, ptr %t405 call void @fn_emit(ptr %t434) - call void @fn_emit(ptr @.str12752) + call void @fn_emit(ptr @.str12872) %t435 = load ptr, ptr %t408 call void @fn_emit(ptr %t435) - call void @fn_emit(ptr @.str12753) - call void @fn_emit(ptr @.str12754) + call void @fn_emit(ptr @.str12873) + call void @fn_emit(ptr @.str12874) %t436 = load ptr, ptr %t408 call void @fn_emit(ptr %t436) - call void @fn_emit(ptr @.str12755) + call void @fn_emit(ptr @.str12875) %t437 = load ptr, ptr %t408 call void @fn_emit(ptr %t437) - call void @fn_emit(ptr @.str12756) - call void @fn_emit(ptr @.str12757) + call void @fn_emit(ptr @.str12876) + call void @fn_emit(ptr @.str12877) %t438 = load ptr, ptr %t408 call void @fn_emit(ptr %t438) - call void @fn_emit(ptr @.str12758) - call void @fn_emit(ptr @.str12759) + call void @fn_emit(ptr @.str12878) + call void @fn_emit(ptr @.str12879) %t439 = load ptr, ptr %t408 call void @fn_emit(ptr %t439) - call void @fn_emit(ptr @.str12760) + call void @fn_emit(ptr @.str12880) %t440 = load ptr, ptr %t408 call void @fn_emit(ptr %t440) - call void @fn_emit(ptr @.str12761) + call void @fn_emit(ptr @.str12881) %t441 = load ptr, ptr %t408 call void @fn_emit(ptr %t441) - call void @fn_emit(ptr @.str12762) + call void @fn_emit(ptr @.str12882) %t442 = load ptr, ptr %t408 call void @fn_emit(ptr %t442) - call void @fn_emit(ptr @.str12763) - call void @fn_emit(ptr @.str12764) + call void @fn_emit(ptr @.str12883) + call void @fn_emit(ptr @.str12884) %t443 = load ptr, ptr %t408 call void @fn_emit(ptr %t443) - call void @fn_emit(ptr @.str12765) + call void @fn_emit(ptr @.str12885) %t444 = load i32, ptr %t385 %t445 = add i32 %t444, 1 %t446 = load ptr, ptr @g_g_events @@ -168763,15 +169411,15 @@ ixok65: %t451 = icmp ne i32 %t450, 0 br i1 %t451, label %then67, label %else68 then67: - call void @fn_emit(ptr @.str12766) + call void @fn_emit(ptr @.str12886) %t452 = load i32, ptr %t385 %t453 = add i32 %t452, 1 %t454 = call ptr @fn_itoa(i32 %t453) call void @fn_emit(ptr %t454) - call void @fn_emit(ptr @.str12767) + call void @fn_emit(ptr @.str12887) br label %ifend69 else68: - call void @fn_emit(ptr @.str12768) + call void @fn_emit(ptr @.str12888) br label %ifend69 ifend69: %t455 = load i32, ptr %t385 @@ -168779,7 +169427,7 @@ ifend69: store i32 %t456, ptr %t385 br label %wcond62 wend64: - call void @fn_emit(ptr @.str12769) + call void @fn_emit(ptr @.str12889) br label %ret ret: ret void @@ -168803,26 +169451,31 @@ entry: %t213 = alloca ptr %t217 = alloca ptr %t220 = alloca ptr - %t231 = alloca i32 - %t256 = alloca ptr - %t262 = alloca ptr - %t337 = alloca ptr - %t341 = alloca ptr + %t230 = alloca ptr + %t234 = alloca i32 + %t259 = alloca ptr + %t265 = alloca ptr + %t340 = alloca ptr %t344 = alloca ptr - %t355 = alloca i32 - %t380 = alloca ptr + %t347 = alloca ptr + %t357 = alloca ptr + %t361 = alloca i32 %t386 = alloca ptr - %t457 = alloca ptr - %t460 = alloca ptr - %t523 = alloca ptr - %t526 = alloca ptr - %t588 = alloca ptr - %t590 = alloca ptr - %t593 = alloca ptr + %t392 = alloca ptr + %t463 = alloca ptr + %t466 = alloca ptr + %t476 = alloca ptr + %t494 = alloca ptr + %t531 = alloca ptr + %t534 = alloca ptr %t596 = alloca ptr - %t602 = alloca ptr - %t646 = alloca ptr - %t649 = alloca ptr + %t598 = alloca ptr + %t601 = alloca ptr + %t604 = alloca ptr + %t610 = alloca ptr + %t654 = alloca ptr + %t657 = alloca ptr + %t675 = alloca ptr %t0 = call ptr @fn_itoa(i32 1024) store ptr %t0, ptr %t1 store i32 0, ptr %t2 @@ -168848,7 +169501,7 @@ wbody1: br i1 %t17, label %ixok3, label %ixbad4 ixbad4: %t18 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str12770, i32 %t12, i32 %t16) + call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str12890, i32 %t12, i32 %t16) call void @exit(i32 1) unreachable ixok3: @@ -168874,12 +169527,12 @@ wend2: %t30 = load i32, ptr %t2 %t31 = call ptr @fn_itoa(i32 %t30) store ptr %t31, ptr %t32 - call void @fn_emith(ptr @.str12771) - call void @fn_emith(ptr @.str12772) - call void @fn_emith(ptr @.str12773) - call void @fn_emith(ptr @.str12774) - call void @fn_emith(ptr @.str12775) - call void @fn_emit(ptr @.str12776) + call void @fn_emith(ptr @.str12891) + call void @fn_emith(ptr @.str12892) + call void @fn_emith(ptr @.str12893) + call void @fn_emith(ptr @.str12894) + call void @fn_emith(ptr @.str12895) + call void @fn_emit(ptr @.str12896) store i32 0, ptr %t33 store i32 0, ptr %t34 br label %wcond8 @@ -168903,7 +169556,7 @@ wbody9: br i1 %t48, label %ixok11, label %ixbad12 ixbad12: %t49 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str12777, i32 %t43, i32 %t47) + call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str12897, i32 %t43, i32 %t47) call void @exit(i32 1) unreachable ixok11: @@ -168926,7 +169579,7 @@ then13: br i1 %t63, label %ixok16, label %ixbad17 ixbad17: %t64 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t64, ptr @.fmt_bounds, ptr @.str12778, i32 %t58, i32 %t62) + call i32 (ptr, ptr, ...) @fprintf(ptr %t64, ptr @.fmt_bounds, ptr @.str12898, i32 %t58, i32 %t62) call void @exit(i32 1) unreachable ixok16: @@ -168939,41 +169592,41 @@ ixok16: %t71 = load i32, ptr %t33 %t72 = call ptr @fn_itoa(i32 %t71) store ptr %t72, ptr %t73 - call void @fn_emit(ptr @.str12779) + call void @fn_emit(ptr @.str12899) %t74 = load ptr, ptr %t73 call void @fn_emit(ptr %t74) - call void @fn_emit(ptr @.str12780) + call void @fn_emit(ptr @.str12900) %t75 = load ptr, ptr %t70 call void @fn_emit(ptr %t75) - call void @fn_emit(ptr @.str12781) - call void @fn_emit(ptr @.str12782) + call void @fn_emit(ptr @.str12901) + call void @fn_emit(ptr @.str12902) %t76 = load ptr, ptr %t73 call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str12783) + call void @fn_emit(ptr @.str12903) %t77 = load ptr, ptr %t73 call void @fn_emit(ptr %t77) - call void @fn_emit(ptr @.str12784) - call void @fn_emit(ptr @.str12785) + call void @fn_emit(ptr @.str12904) + call void @fn_emit(ptr @.str12905) %t78 = load ptr, ptr %t73 call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str12786) + call void @fn_emit(ptr @.str12906) %t79 = load ptr, ptr %t73 call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str12787) + call void @fn_emit(ptr @.str12907) %t80 = load ptr, ptr %t73 call void @fn_emit(ptr %t80) - call void @fn_emit(ptr @.str12788) - call void @fn_emit(ptr @.str12789) + call void @fn_emit(ptr @.str12908) + call void @fn_emit(ptr @.str12909) %t81 = load ptr, ptr %t73 call void @fn_emit(ptr %t81) - call void @fn_emit(ptr @.str12790) + call void @fn_emit(ptr @.str12910) %t82 = load ptr, ptr %t73 call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str12791) - call void @fn_emit(ptr @.str12792) + call void @fn_emit(ptr @.str12911) + call void @fn_emit(ptr @.str12912) %t83 = load ptr, ptr %t73 call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str12793) + call void @fn_emit(ptr @.str12913) %t84 = load i32, ptr %t33 %t85 = add i32 %t84, 1 store i32 %t85, ptr %t33 @@ -168984,16 +169637,16 @@ ifend15: store i32 %t87, ptr %t34 br label %wcond8 wend10: - call void @fn_emit(ptr @.str12794) - call void @fn_emit(ptr @.str12795) - call void @fn_emit(ptr @.str12796) - call void @fn_emit(ptr @.str12797) + call void @fn_emit(ptr @.str12914) + call void @fn_emit(ptr @.str12915) + call void @fn_emit(ptr @.str12916) + call void @fn_emit(ptr @.str12917) %t88 = load ptr, ptr %t32 call void @fn_emit(ptr %t88) - call void @fn_emit(ptr @.str12798) - call void @fn_emit(ptr @.str12799) - call void @fn_emit(ptr @.str12800) - call void @fn_emit(ptr @.str12801) + call void @fn_emit(ptr @.str12918) + call void @fn_emit(ptr @.str12919) + call void @fn_emit(ptr @.str12920) + call void @fn_emit(ptr @.str12921) store i32 0, ptr %t33 store i32 0, ptr %t34 br label %wcond18 @@ -169017,7 +169670,7 @@ wbody19: br i1 %t102, label %ixok21, label %ixbad22 ixbad22: %t103 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t103, ptr @.fmt_bounds, ptr @.str12802, i32 %t97, i32 %t101) + call i32 (ptr, ptr, ...) @fprintf(ptr %t103, ptr @.fmt_bounds, ptr @.str12922, i32 %t97, i32 %t101) call void @exit(i32 1) unreachable ixok21: @@ -169040,7 +169693,7 @@ then23: br i1 %t117, label %ixok26, label %ixbad27 ixbad27: %t118 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t118, ptr @.fmt_bounds, ptr @.str12803, i32 %t112, i32 %t116) + call i32 (ptr, ptr, ...) @fprintf(ptr %t118, ptr @.fmt_bounds, ptr @.str12923, i32 %t112, i32 %t116) call void @exit(i32 1) unreachable ixok26: @@ -169050,27 +169703,27 @@ ixok26: %t122 = load i32, ptr %t33 %t123 = call ptr @fn_itoa(i32 %t122) store ptr %t123, ptr %t124 - call void @fn_emit(ptr @.str12804) + call void @fn_emit(ptr @.str12924) %t125 = load ptr, ptr %t124 call void @fn_emit(ptr %t125) - call void @fn_emit(ptr @.str12805) + call void @fn_emit(ptr @.str12925) %t126 = load ptr, ptr %t124 call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str12806) - call void @fn_emit(ptr @.str12807) + call void @fn_emit(ptr @.str12926) + call void @fn_emit(ptr @.str12927) %t127 = load ptr, ptr %t124 call void @fn_emit(ptr %t127) - call void @fn_emit(ptr @.str12808) + call void @fn_emit(ptr @.str12928) %t128 = load ptr, ptr %t124 call void @fn_emit(ptr %t128) - call void @fn_emit(ptr @.str12809) + call void @fn_emit(ptr @.str12929) %t129 = load ptr, ptr %t124 call void @fn_emit(ptr %t129) - call void @fn_emit(ptr @.str12810) - call void @fn_emit(ptr @.str12811) + call void @fn_emit(ptr @.str12930) + call void @fn_emit(ptr @.str12931) %t130 = load ptr, ptr %t124 call void @fn_emit(ptr %t130) - call void @fn_emit(ptr @.str12812) + call void @fn_emit(ptr @.str12932) store i32 0, ptr %t131 br label %wcond28 wcond28: @@ -169097,7 +169750,7 @@ wbody29: br i1 %t149, label %ixok31, label %ixbad32 ixbad32: %t150 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t150, ptr @.fmt_bounds, ptr @.str12813, i32 %t144, i32 %t148) + call i32 (ptr, ptr, ...) @fprintf(ptr %t150, ptr @.fmt_bounds, ptr @.str12933, i32 %t144, i32 %t148) call void @exit(i32 1) unreachable ixok31: @@ -169108,57 +169761,57 @@ ixok31: %t155 = call ptr @fn_emit_str_const(ptr %t154) store ptr %t155, ptr %t156 %t157 = load ptr, ptr %t124 - %t158 = call ptr @lp_str_concat(ptr %t157, ptr @.str12814) + %t158 = call ptr @lp_str_concat(ptr %t157, ptr @.str12934) %t159 = load i32, ptr %t131 %t160 = call ptr @fn_itoa(i32 %t159) %t161 = call ptr @lp_str_concat(ptr %t158, ptr %t160) store ptr %t161, ptr %t162 - call void @fn_emit(ptr @.str12815) + call void @fn_emit(ptr @.str12935) %t163 = load ptr, ptr %t162 call void @fn_emit(ptr %t163) - call void @fn_emit(ptr @.str12816) + call void @fn_emit(ptr @.str12936) %t164 = load ptr, ptr %t156 call void @fn_emit(ptr %t164) - call void @fn_emit(ptr @.str12817) - call void @fn_emit(ptr @.str12818) + call void @fn_emit(ptr @.str12937) + call void @fn_emit(ptr @.str12938) %t165 = load ptr, ptr %t162 call void @fn_emit(ptr %t165) - call void @fn_emit(ptr @.str12819) + call void @fn_emit(ptr @.str12939) %t166 = load ptr, ptr %t162 call void @fn_emit(ptr %t166) - call void @fn_emit(ptr @.str12820) - call void @fn_emit(ptr @.str12821) + call void @fn_emit(ptr @.str12940) + call void @fn_emit(ptr @.str12941) %t167 = load ptr, ptr %t162 call void @fn_emit(ptr %t167) - call void @fn_emit(ptr @.str12822) + call void @fn_emit(ptr @.str12942) %t168 = load ptr, ptr %t162 call void @fn_emit(ptr %t168) - call void @fn_emit(ptr @.str12823) + call void @fn_emit(ptr @.str12943) %t169 = load ptr, ptr %t162 call void @fn_emit(ptr %t169) - call void @fn_emit(ptr @.str12824) - call void @fn_emit(ptr @.str12825) + call void @fn_emit(ptr @.str12944) + call void @fn_emit(ptr @.str12945) %t170 = load ptr, ptr %t162 call void @fn_emit(ptr %t170) - call void @fn_emit(ptr @.str12826) + call void @fn_emit(ptr @.str12946) %t171 = load i32, ptr %t131 %t172 = call ptr @fn_itoa(i32 %t171) call void @fn_emit(ptr %t172) - call void @fn_emit(ptr @.str12827) - call void @fn_emit(ptr @.str12828) + call void @fn_emit(ptr @.str12947) + call void @fn_emit(ptr @.str12948) %t173 = load ptr, ptr %t162 call void @fn_emit(ptr %t173) - call void @fn_emit(ptr @.str12829) + call void @fn_emit(ptr @.str12949) %t174 = load i32, ptr %t131 %t175 = add i32 %t174, 1 store i32 %t175, ptr %t131 br label %wcond28 wend30: - call void @fn_emit(ptr @.str12830) - call void @fn_emit(ptr @.str12831) + call void @fn_emit(ptr @.str12950) + call void @fn_emit(ptr @.str12951) %t176 = load ptr, ptr %t124 call void @fn_emit(ptr %t176) - call void @fn_emit(ptr @.str12832) + call void @fn_emit(ptr @.str12952) %t177 = load i32, ptr %t33 %t178 = add i32 %t177, 1 store i32 %t178, ptr %t33 @@ -169169,8 +169822,8 @@ ifend25: store i32 %t180, ptr %t34 br label %wcond18 wend20: - call void @fn_emit(ptr @.str12833) - call void @fn_emit(ptr @.str12834) + call void @fn_emit(ptr @.str12953) + call void @fn_emit(ptr @.str12954) store i32 0, ptr %t33 store i32 0, ptr %t34 br label %wcond33 @@ -169194,7 +169847,7 @@ wbody34: br i1 %t194, label %ixok36, label %ixbad37 ixbad37: %t195 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t195, ptr @.fmt_bounds, ptr @.str12835, i32 %t189, i32 %t193) + call i32 (ptr, ptr, ...) @fprintf(ptr %t195, ptr @.fmt_bounds, ptr @.str12955, i32 %t189, i32 %t193) call void @exit(i32 1) unreachable ixok36: @@ -169217,7 +169870,7 @@ then38: br i1 %t209, label %ixok41, label %ixbad42 ixbad42: %t210 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t210, ptr @.fmt_bounds, ptr @.str12836, i32 %t204, i32 %t208) + call i32 (ptr, ptr, ...) @fprintf(ptr %t210, ptr @.fmt_bounds, ptr @.str12956, i32 %t204, i32 %t208) call void @exit(i32 1) unreachable ixok41: @@ -169231,991 +169884,990 @@ ixok41: %t218 = load i32, ptr %t33 %t219 = call ptr @fn_itoa(i32 %t218) store ptr %t219, ptr %t220 - call void @fn_emit(ptr @.str12837) + call void @fn_emit(ptr @.str12957) %t221 = load ptr, ptr %t220 call void @fn_emit(ptr %t221) - call void @fn_emit(ptr @.str12838) + call void @fn_emit(ptr @.str12958) %t222 = load ptr, ptr %t220 call void @fn_emit(ptr %t222) - call void @fn_emit(ptr @.str12839) - call void @fn_emit(ptr @.str12840) + call void @fn_emit(ptr @.str12959) + call void @fn_emit(ptr @.str12960) %t223 = load ptr, ptr %t220 call void @fn_emit(ptr %t223) - call void @fn_emit(ptr @.str12841) + call void @fn_emit(ptr @.str12961) %t224 = load ptr, ptr %t220 call void @fn_emit(ptr %t224) - call void @fn_emit(ptr @.str12842) + call void @fn_emit(ptr @.str12962) %t225 = load ptr, ptr %t220 call void @fn_emit(ptr %t225) - call void @fn_emit(ptr @.str12843) - call void @fn_emit(ptr @.str12844) + call void @fn_emit(ptr @.str12963) + call void @fn_emit(ptr @.str12964) %t226 = load ptr, ptr %t220 call void @fn_emit(ptr %t226) - call void @fn_emit(ptr @.str12845) - call void @fn_emit(ptr @.str12846) - %t227 = load ptr, ptr %t220 - call void @fn_emit(ptr %t227) - call void @fn_emit(ptr @.str12847) - %t228 = load ptr, ptr %t1 - call void @fn_emit(ptr %t228) - call void @fn_emit(ptr @.str12848) - %t229 = load ptr, ptr %t217 - call void @fn_emit(ptr %t229) - call void @fn_emit(ptr @.str12849) - %t230 = load ptr, ptr %t217 - call void @fn_emit(ptr %t230) - call void @fn_emit(ptr @.str12850) - store i32 0, ptr %t231 + call void @fn_emit(ptr @.str12965) + %t227 = load ptr, ptr %t217 + %t228 = call ptr @lp_str_concat(ptr @.str12966, ptr %t227) + %t229 = call ptr @fn_ecs_base(ptr %t228) + store ptr %t229, ptr %t230 + call void @fn_emit(ptr @.str12967) + %t231 = load ptr, ptr %t220 + call void @fn_emit(ptr %t231) + call void @fn_emit(ptr @.str12968) + %t232 = load ptr, ptr %t217 + call void @fn_emit(ptr %t232) + call void @fn_emit(ptr @.str12969) + %t233 = load ptr, ptr %t230 + call void @fn_emit(ptr %t233) + call void @fn_emit(ptr @.str12970) + store i32 0, ptr %t234 br label %wcond43 wcond43: - %t232 = load i32, ptr %t231 - %t233 = load ptr, ptr %t213 - %t234 = getelementptr inbounds %Cmp_Node, ptr %t233, i32 0, i32 7 - %t235 = load ptr, ptr %t234 - %t236 = getelementptr inbounds %LSlice, ptr %t235, i32 0, i32 1 - %t237 = load i32, ptr %t236 - %t238 = icmp slt i32 %t232, %t237 - %t239 = zext i1 %t238 to i32 - %t240 = icmp ne i32 %t239, 0 - br i1 %t240, label %wbody44, label %wend45 + %t235 = load i32, ptr %t234 + %t236 = load ptr, ptr %t213 + %t237 = getelementptr inbounds %Cmp_Node, ptr %t236, i32 0, i32 7 + %t238 = load ptr, ptr %t237 + %t239 = getelementptr inbounds %LSlice, ptr %t238, i32 0, i32 1 + %t240 = load i32, ptr %t239 + %t241 = icmp slt i32 %t235, %t240 + %t242 = zext i1 %t241 to i32 + %t243 = icmp ne i32 %t242, 0 + br i1 %t243, label %wbody44, label %wend45 wbody44: - %t241 = load ptr, ptr %t213 - %t242 = getelementptr inbounds %Cmp_Node, ptr %t241, i32 0, i32 7 - %t243 = load ptr, ptr %t242 - %t244 = load i32, ptr %t231 - %t245 = getelementptr inbounds %LSlice, ptr %t243, i32 0, i32 0 + %t244 = load ptr, ptr %t213 + %t245 = getelementptr inbounds %Cmp_Node, ptr %t244, i32 0, i32 7 %t246 = load ptr, ptr %t245 - %t247 = getelementptr inbounds %LSlice, ptr %t243, i32 0, i32 1 - %t248 = load i32, ptr %t247 - %t249 = icmp ult i32 %t244, %t248 - br i1 %t249, label %ixok46, label %ixbad47 + %t247 = load i32, ptr %t234 + %t248 = getelementptr inbounds %LSlice, ptr %t246, i32 0, i32 0 + %t249 = load ptr, ptr %t248 + %t250 = getelementptr inbounds %LSlice, ptr %t246, i32 0, i32 1 + %t251 = load i32, ptr %t250 + %t252 = icmp ult i32 %t247, %t251 + br i1 %t252, label %ixok46, label %ixbad47 ixbad47: - %t250 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t250, ptr @.fmt_bounds, ptr @.str12851, i32 %t244, i32 %t248) + %t253 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t253, ptr @.fmt_bounds, ptr @.str12971, i32 %t247, i32 %t251) call void @exit(i32 1) unreachable ixok46: - %t251 = getelementptr inbounds ptr, ptr %t246, i32 %t244 - %t252 = load ptr, ptr %t251 - %t253 = getelementptr inbounds %Cmp_Node, ptr %t252, i32 0, i32 3 - %t254 = load ptr, ptr %t253 - %t255 = call ptr @fn_llty(ptr %t254) - store ptr %t255, ptr %t256 - %t257 = load ptr, ptr %t220 - %t258 = call ptr @lp_str_concat(ptr %t257, ptr @.str12852) - %t259 = load i32, ptr %t231 - %t260 = call ptr @fn_itoa(i32 %t259) - %t261 = call ptr @lp_str_concat(ptr %t258, ptr %t260) - store ptr %t261, ptr %t262 - call void @fn_emit(ptr @.str12853) - %t263 = load ptr, ptr %t262 - call void @fn_emit(ptr %t263) - call void @fn_emit(ptr @.str12854) - %t264 = load i32, ptr %t231 - %t265 = call ptr @fn_itoa(i32 %t264) - call void @fn_emit(ptr %t265) - call void @fn_emit(ptr @.str12855) - call void @fn_emit(ptr @.str12856) - %t266 = load ptr, ptr %t262 + %t254 = getelementptr inbounds ptr, ptr %t249, i32 %t247 + %t255 = load ptr, ptr %t254 + %t256 = getelementptr inbounds %Cmp_Node, ptr %t255, i32 0, i32 3 + %t257 = load ptr, ptr %t256 + %t258 = call ptr @fn_llty(ptr %t257) + store ptr %t258, ptr %t259 + %t260 = load ptr, ptr %t220 + %t261 = call ptr @lp_str_concat(ptr %t260, ptr @.str12972) + %t262 = load i32, ptr %t234 + %t263 = call ptr @fn_itoa(i32 %t262) + %t264 = call ptr @lp_str_concat(ptr %t261, ptr %t263) + store ptr %t264, ptr %t265 + call void @fn_emit(ptr @.str12973) + %t266 = load ptr, ptr %t265 call void @fn_emit(ptr %t266) - call void @fn_emit(ptr @.str12857) - %t267 = load ptr, ptr %t262 - call void @fn_emit(ptr %t267) - call void @fn_emit(ptr @.str12858) - %t268 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str12974) + %t267 = load i32, ptr %t234 + %t268 = call ptr @fn_itoa(i32 %t267) call void @fn_emit(ptr %t268) - call void @fn_emit(ptr @.str12859) - call void @fn_emit(ptr @.str12860) - %t269 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str12975) + call void @fn_emit(ptr @.str12976) + %t269 = load ptr, ptr %t265 call void @fn_emit(ptr %t269) - call void @fn_emit(ptr @.str12861) - call void @fn_emit(ptr @.str12862) - %t270 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str12977) + %t270 = load ptr, ptr %t265 call void @fn_emit(ptr %t270) - call void @fn_emit(ptr @.str12863) - %t271 = load ptr, ptr %t217 + call void @fn_emit(ptr @.str12978) + %t271 = load ptr, ptr %t265 call void @fn_emit(ptr %t271) - call void @fn_emit(ptr @.str12864) - %t272 = load ptr, ptr %t220 + call void @fn_emit(ptr @.str12979) + call void @fn_emit(ptr @.str12980) + %t272 = load ptr, ptr %t265 call void @fn_emit(ptr %t272) - call void @fn_emit(ptr @.str12865) - %t273 = load i32, ptr %t231 - %t274 = call ptr @fn_itoa(i32 %t273) + call void @fn_emit(ptr @.str12981) + call void @fn_emit(ptr @.str12982) + %t273 = load ptr, ptr %t265 + call void @fn_emit(ptr %t273) + call void @fn_emit(ptr @.str12983) + %t274 = load ptr, ptr %t217 call void @fn_emit(ptr %t274) - call void @fn_emit(ptr @.str12866) - %t275 = load ptr, ptr %t256 - %t276 = call i32 @lp_str_eq(ptr %t275, ptr @.str12867) - %t277 = icmp ne i32 %t276, 0 - br i1 %t277, label %then48, label %else49 + call void @fn_emit(ptr @.str12984) + %t275 = load ptr, ptr %t220 + call void @fn_emit(ptr %t275) + call void @fn_emit(ptr @.str12985) + %t276 = load i32, ptr %t234 + %t277 = call ptr @fn_itoa(i32 %t276) + call void @fn_emit(ptr %t277) + call void @fn_emit(ptr @.str12986) + %t278 = load ptr, ptr %t259 + %t279 = call i32 @lp_str_eq(ptr %t278, ptr @.str12987) + %t280 = icmp ne i32 %t279, 0 + br i1 %t280, label %then48, label %else49 then48: - call void @fn_emit(ptr @.str12868) - %t278 = load ptr, ptr %t262 - call void @fn_emit(ptr %t278) - call void @fn_emit(ptr @.str12869) - %t279 = load ptr, ptr %t262 - call void @fn_emit(ptr %t279) - call void @fn_emit(ptr @.str12870) - call void @fn_emit(ptr @.str12871) - %t280 = load ptr, ptr %t262 - call void @fn_emit(ptr %t280) - call void @fn_emit(ptr @.str12872) - %t281 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str12988) + %t281 = load ptr, ptr %t265 call void @fn_emit(ptr %t281) - call void @fn_emit(ptr @.str12873) - %t282 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str12989) + %t282 = load ptr, ptr %t265 call void @fn_emit(ptr %t282) - call void @fn_emit(ptr @.str12874) + call void @fn_emit(ptr @.str12990) + call void @fn_emit(ptr @.str12991) + %t283 = load ptr, ptr %t265 + call void @fn_emit(ptr %t283) + call void @fn_emit(ptr @.str12992) + %t284 = load ptr, ptr %t265 + call void @fn_emit(ptr %t284) + call void @fn_emit(ptr @.str12993) + %t285 = load ptr, ptr %t265 + call void @fn_emit(ptr %t285) + call void @fn_emit(ptr @.str12994) br label %ifend50 else49: - %t283 = load ptr, ptr %t256 - %t284 = call i32 @lp_str_eq(ptr %t283, ptr @.str12875) - %t285 = icmp ne i32 %t284, 0 - br i1 %t285, label %then51, label %else52 + %t286 = load ptr, ptr %t259 + %t287 = call i32 @lp_str_eq(ptr %t286, ptr @.str12995) + %t288 = icmp ne i32 %t287, 0 + br i1 %t288, label %then51, label %else52 then51: - call void @fn_emit(ptr @.str12876) - %t286 = load ptr, ptr %t262 - call void @fn_emit(ptr %t286) - call void @fn_emit(ptr @.str12877) - %t287 = load ptr, ptr %t262 - call void @fn_emit(ptr %t287) - call void @fn_emit(ptr @.str12878) - call void @fn_emit(ptr @.str12879) - %t288 = load ptr, ptr %t262 - call void @fn_emit(ptr %t288) - call void @fn_emit(ptr @.str12880) - %t289 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str12996) + %t289 = load ptr, ptr %t265 call void @fn_emit(ptr %t289) - call void @fn_emit(ptr @.str12881) - %t290 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str12997) + %t290 = load ptr, ptr %t265 call void @fn_emit(ptr %t290) - call void @fn_emit(ptr @.str12882) + call void @fn_emit(ptr @.str12998) + call void @fn_emit(ptr @.str12999) + %t291 = load ptr, ptr %t265 + call void @fn_emit(ptr %t291) + call void @fn_emit(ptr @.str13000) + %t292 = load ptr, ptr %t265 + call void @fn_emit(ptr %t292) + call void @fn_emit(ptr @.str13001) + %t293 = load ptr, ptr %t265 + call void @fn_emit(ptr %t293) + call void @fn_emit(ptr @.str13002) br label %ifend53 else52: - call void @fn_emit(ptr @.str12883) - %t291 = load ptr, ptr %t262 - call void @fn_emit(ptr %t291) - call void @fn_emit(ptr @.str12884) - %t292 = load ptr, ptr %t262 - call void @fn_emit(ptr %t292) - call void @fn_emit(ptr @.str12885) - call void @fn_emit(ptr @.str12886) - %t293 = load ptr, ptr %t262 - call void @fn_emit(ptr %t293) - call void @fn_emit(ptr @.str12887) - %t294 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str13003) + %t294 = load ptr, ptr %t265 call void @fn_emit(ptr %t294) - call void @fn_emit(ptr @.str12888) - %t295 = load ptr, ptr %t262 + call void @fn_emit(ptr @.str13004) + %t295 = load ptr, ptr %t265 call void @fn_emit(ptr %t295) - call void @fn_emit(ptr @.str12889) + call void @fn_emit(ptr @.str13005) + call void @fn_emit(ptr @.str13006) + %t296 = load ptr, ptr %t265 + call void @fn_emit(ptr %t296) + call void @fn_emit(ptr @.str13007) + %t297 = load ptr, ptr %t265 + call void @fn_emit(ptr %t297) + call void @fn_emit(ptr @.str13008) + %t298 = load ptr, ptr %t265 + call void @fn_emit(ptr %t298) + call void @fn_emit(ptr @.str13009) br label %ifend53 ifend53: br label %ifend50 ifend50: - call void @fn_emit(ptr @.str12890) - %t296 = load ptr, ptr %t262 - call void @fn_emit(ptr %t296) - call void @fn_emit(ptr @.str12891) - %t297 = load i32, ptr %t231 - %t298 = add i32 %t297, 1 - store i32 %t298, ptr %t231 + call void @fn_emit(ptr @.str13010) + %t299 = load ptr, ptr %t265 + call void @fn_emit(ptr %t299) + call void @fn_emit(ptr @.str13011) + %t300 = load i32, ptr %t234 + %t301 = add i32 %t300, 1 + store i32 %t301, ptr %t234 br label %wcond43 wend45: - call void @fn_emit(ptr @.str12892) - call void @fn_emit(ptr @.str12893) - %t299 = load ptr, ptr %t220 - call void @fn_emit(ptr %t299) - call void @fn_emit(ptr @.str12894) - %t300 = load i32, ptr %t33 - %t301 = add i32 %t300, 1 - store i32 %t301, ptr %t33 + call void @fn_emit(ptr @.str13012) + call void @fn_emit(ptr @.str13013) + %t302 = load ptr, ptr %t220 + call void @fn_emit(ptr %t302) + call void @fn_emit(ptr @.str13014) + %t303 = load i32, ptr %t33 + %t304 = add i32 %t303, 1 + store i32 %t304, ptr %t33 br label %ifend40 ifend40: - %t302 = load i32, ptr %t34 - %t303 = add i32 %t302, 1 - store i32 %t303, ptr %t34 + %t305 = load i32, ptr %t34 + %t306 = add i32 %t305, 1 + store i32 %t306, ptr %t34 br label %wcond33 wend35: - call void @fn_emit(ptr @.str12895) - %t304 = load ptr, ptr %t32 - call void @fn_emit(ptr %t304) - call void @fn_emit(ptr @.str12896) - call void @fn_emit(ptr @.str12897) - call void @fn_emit(ptr @.str12898) - call void @fn_emit(ptr @.str12899) - call void @fn_emit(ptr @.str12900) - call void @fn_emit(ptr @.str12901) - call void @fn_emit(ptr @.str12902) + call void @fn_emit(ptr @.str13015) + %t307 = load ptr, ptr %t32 + call void @fn_emit(ptr %t307) + call void @fn_emit(ptr @.str13016) + call void @fn_emit(ptr @.str13017) + call void @fn_emit(ptr @.str13018) + call void @fn_emit(ptr @.str13019) + call void @fn_emit(ptr @.str13020) + call void @fn_emit(ptr @.str13021) + call void @fn_emit(ptr @.str13022) store i32 0, ptr %t33 store i32 0, ptr %t34 br label %wcond54 wcond54: - %t305 = load i32, ptr %t34 - %t306 = load ptr, ptr @g_prog - %t307 = getelementptr inbounds %LSlice, ptr %t306, i32 0, i32 1 - %t308 = load i32, ptr %t307 - %t309 = icmp slt i32 %t305, %t308 - %t310 = zext i1 %t309 to i32 - %t311 = icmp ne i32 %t310, 0 - br i1 %t311, label %wbody55, label %wend56 + %t308 = load i32, ptr %t34 + %t309 = load ptr, ptr @g_prog + %t310 = getelementptr inbounds %LSlice, ptr %t309, i32 0, i32 1 + %t311 = load i32, ptr %t310 + %t312 = icmp slt i32 %t308, %t311 + %t313 = zext i1 %t312 to i32 + %t314 = icmp ne i32 %t313, 0 + br i1 %t314, label %wbody55, label %wend56 wbody55: - %t312 = load ptr, ptr @g_prog - %t313 = load i32, ptr %t34 - %t314 = getelementptr inbounds %LSlice, ptr %t312, i32 0, i32 0 - %t315 = load ptr, ptr %t314 - %t316 = getelementptr inbounds %LSlice, ptr %t312, i32 0, i32 1 - %t317 = load i32, ptr %t316 - %t318 = icmp ult i32 %t313, %t317 - br i1 %t318, label %ixok57, label %ixbad58 + %t315 = load ptr, ptr @g_prog + %t316 = load i32, ptr %t34 + %t317 = getelementptr inbounds %LSlice, ptr %t315, i32 0, i32 0 + %t318 = load ptr, ptr %t317 + %t319 = getelementptr inbounds %LSlice, ptr %t315, i32 0, i32 1 + %t320 = load i32, ptr %t319 + %t321 = icmp ult i32 %t316, %t320 + br i1 %t321, label %ixok57, label %ixbad58 ixbad58: - %t319 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t319, ptr @.fmt_bounds, ptr @.str12903, i32 %t313, i32 %t317) + %t322 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t322, ptr @.fmt_bounds, ptr @.str13023, i32 %t316, i32 %t320) call void @exit(i32 1) unreachable ixok57: - %t320 = getelementptr inbounds ptr, ptr %t315, i32 %t313 - %t321 = load ptr, ptr %t320 - %t322 = getelementptr inbounds %Cmp_Node, ptr %t321, i32 0, i32 0 - %t323 = load i32, ptr %t322 - %t324 = icmp eq i32 %t323, 8 - %t325 = zext i1 %t324 to i32 - %t326 = icmp ne i32 %t325, 0 - br i1 %t326, label %then59, label %ifend61 + %t323 = getelementptr inbounds ptr, ptr %t318, i32 %t316 + %t324 = load ptr, ptr %t323 + %t325 = getelementptr inbounds %Cmp_Node, ptr %t324, i32 0, i32 0 + %t326 = load i32, ptr %t325 + %t327 = icmp eq i32 %t326, 8 + %t328 = zext i1 %t327 to i32 + %t329 = icmp ne i32 %t328, 0 + br i1 %t329, label %then59, label %ifend61 then59: - %t327 = load ptr, ptr @g_prog - %t328 = load i32, ptr %t34 - %t329 = getelementptr inbounds %LSlice, ptr %t327, i32 0, i32 0 - %t330 = load ptr, ptr %t329 - %t331 = getelementptr inbounds %LSlice, ptr %t327, i32 0, i32 1 - %t332 = load i32, ptr %t331 - %t333 = icmp ult i32 %t328, %t332 - br i1 %t333, label %ixok62, label %ixbad63 + %t330 = load ptr, ptr @g_prog + %t331 = load i32, ptr %t34 + %t332 = getelementptr inbounds %LSlice, ptr %t330, i32 0, i32 0 + %t333 = load ptr, ptr %t332 + %t334 = getelementptr inbounds %LSlice, ptr %t330, i32 0, i32 1 + %t335 = load i32, ptr %t334 + %t336 = icmp ult i32 %t331, %t335 + br i1 %t336, label %ixok62, label %ixbad63 ixbad63: - %t334 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t334, ptr @.fmt_bounds, ptr @.str12904, i32 %t328, i32 %t332) + %t337 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t337, ptr @.fmt_bounds, ptr @.str13024, i32 %t331, i32 %t335) call void @exit(i32 1) unreachable ixok62: - %t335 = getelementptr inbounds ptr, ptr %t330, i32 %t328 - %t336 = load ptr, ptr %t335 - store ptr %t336, ptr %t337 - %t338 = load ptr, ptr %t337 - %t339 = getelementptr inbounds %Cmp_Node, ptr %t338, i32 0, i32 1 - %t340 = load ptr, ptr %t339 - store ptr %t340, ptr %t341 - %t342 = load i32, ptr %t33 - %t343 = call ptr @fn_itoa(i32 %t342) + %t338 = getelementptr inbounds ptr, ptr %t333, i32 %t331 + %t339 = load ptr, ptr %t338 + store ptr %t339, ptr %t340 + %t341 = load ptr, ptr %t340 + %t342 = getelementptr inbounds %Cmp_Node, ptr %t341, i32 0, i32 1 + %t343 = load ptr, ptr %t342 store ptr %t343, ptr %t344 - call void @fn_emit(ptr @.str12905) - %t345 = load ptr, ptr %t344 - call void @fn_emit(ptr %t345) - call void @fn_emit(ptr @.str12906) - %t346 = load ptr, ptr %t344 - call void @fn_emit(ptr %t346) - call void @fn_emit(ptr @.str12907) - call void @fn_emit(ptr @.str12908) - %t347 = load ptr, ptr %t344 - call void @fn_emit(ptr %t347) - call void @fn_emit(ptr @.str12909) - %t348 = load ptr, ptr %t344 + %t345 = load i32, ptr %t33 + %t346 = call ptr @fn_itoa(i32 %t345) + store ptr %t346, ptr %t347 + call void @fn_emit(ptr @.str13025) + %t348 = load ptr, ptr %t347 call void @fn_emit(ptr %t348) - call void @fn_emit(ptr @.str12910) - %t349 = load ptr, ptr %t344 + call void @fn_emit(ptr @.str13026) + %t349 = load ptr, ptr %t347 call void @fn_emit(ptr %t349) - call void @fn_emit(ptr @.str12911) - call void @fn_emit(ptr @.str12912) - %t350 = load ptr, ptr %t344 + call void @fn_emit(ptr @.str13027) + call void @fn_emit(ptr @.str13028) + %t350 = load ptr, ptr %t347 call void @fn_emit(ptr %t350) - call void @fn_emit(ptr @.str12913) - call void @fn_emit(ptr @.str12914) - %t351 = load ptr, ptr %t344 + call void @fn_emit(ptr @.str13029) + %t351 = load ptr, ptr %t347 call void @fn_emit(ptr %t351) - call void @fn_emit(ptr @.str12915) - %t352 = load ptr, ptr %t1 + call void @fn_emit(ptr @.str13030) + %t352 = load ptr, ptr %t347 call void @fn_emit(ptr %t352) - call void @fn_emit(ptr @.str12916) - %t353 = load ptr, ptr %t341 + call void @fn_emit(ptr @.str13031) + call void @fn_emit(ptr @.str13032) + %t353 = load ptr, ptr %t347 call void @fn_emit(ptr %t353) - call void @fn_emit(ptr @.str12917) - %t354 = load ptr, ptr %t341 - call void @fn_emit(ptr %t354) - call void @fn_emit(ptr @.str12918) - store i32 0, ptr %t355 + call void @fn_emit(ptr @.str13033) + %t354 = load ptr, ptr %t344 + %t355 = call ptr @lp_str_concat(ptr @.str13034, ptr %t354) + %t356 = call ptr @fn_ecs_base(ptr %t355) + store ptr %t356, ptr %t357 + call void @fn_emit(ptr @.str13035) + %t358 = load ptr, ptr %t347 + call void @fn_emit(ptr %t358) + call void @fn_emit(ptr @.str13036) + %t359 = load ptr, ptr %t344 + call void @fn_emit(ptr %t359) + call void @fn_emit(ptr @.str13037) + %t360 = load ptr, ptr %t357 + call void @fn_emit(ptr %t360) + call void @fn_emit(ptr @.str13038) + store i32 0, ptr %t361 br label %wcond64 wcond64: - %t356 = load i32, ptr %t355 - %t357 = load ptr, ptr %t337 - %t358 = getelementptr inbounds %Cmp_Node, ptr %t357, i32 0, i32 7 - %t359 = load ptr, ptr %t358 - %t360 = getelementptr inbounds %LSlice, ptr %t359, i32 0, i32 1 - %t361 = load i32, ptr %t360 - %t362 = icmp slt i32 %t356, %t361 - %t363 = zext i1 %t362 to i32 - %t364 = icmp ne i32 %t363, 0 - br i1 %t364, label %wbody65, label %wend66 + %t362 = load i32, ptr %t361 + %t363 = load ptr, ptr %t340 + %t364 = getelementptr inbounds %Cmp_Node, ptr %t363, i32 0, i32 7 + %t365 = load ptr, ptr %t364 + %t366 = getelementptr inbounds %LSlice, ptr %t365, i32 0, i32 1 + %t367 = load i32, ptr %t366 + %t368 = icmp slt i32 %t362, %t367 + %t369 = zext i1 %t368 to i32 + %t370 = icmp ne i32 %t369, 0 + br i1 %t370, label %wbody65, label %wend66 wbody65: - %t365 = load ptr, ptr %t337 - %t366 = getelementptr inbounds %Cmp_Node, ptr %t365, i32 0, i32 7 - %t367 = load ptr, ptr %t366 - %t368 = load i32, ptr %t355 - %t369 = getelementptr inbounds %LSlice, ptr %t367, i32 0, i32 0 - %t370 = load ptr, ptr %t369 - %t371 = getelementptr inbounds %LSlice, ptr %t367, i32 0, i32 1 - %t372 = load i32, ptr %t371 - %t373 = icmp ult i32 %t368, %t372 - br i1 %t373, label %ixok67, label %ixbad68 + %t371 = load ptr, ptr %t340 + %t372 = getelementptr inbounds %Cmp_Node, ptr %t371, i32 0, i32 7 + %t373 = load ptr, ptr %t372 + %t374 = load i32, ptr %t361 + %t375 = getelementptr inbounds %LSlice, ptr %t373, i32 0, i32 0 + %t376 = load ptr, ptr %t375 + %t377 = getelementptr inbounds %LSlice, ptr %t373, i32 0, i32 1 + %t378 = load i32, ptr %t377 + %t379 = icmp ult i32 %t374, %t378 + br i1 %t379, label %ixok67, label %ixbad68 ixbad68: - %t374 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t374, ptr @.fmt_bounds, ptr @.str12919, i32 %t368, i32 %t372) + %t380 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t380, ptr @.fmt_bounds, ptr @.str13039, i32 %t374, i32 %t378) call void @exit(i32 1) unreachable ixok67: - %t375 = getelementptr inbounds ptr, ptr %t370, i32 %t368 - %t376 = load ptr, ptr %t375 - %t377 = getelementptr inbounds %Cmp_Node, ptr %t376, i32 0, i32 3 - %t378 = load ptr, ptr %t377 - %t379 = call ptr @fn_llty(ptr %t378) - store ptr %t379, ptr %t380 - %t381 = load ptr, ptr %t344 - %t382 = call ptr @lp_str_concat(ptr %t381, ptr @.str12920) - %t383 = load i32, ptr %t355 - %t384 = call ptr @fn_itoa(i32 %t383) - %t385 = call ptr @lp_str_concat(ptr %t382, ptr %t384) + %t381 = getelementptr inbounds ptr, ptr %t376, i32 %t374 + %t382 = load ptr, ptr %t381 + %t383 = getelementptr inbounds %Cmp_Node, ptr %t382, i32 0, i32 3 + %t384 = load ptr, ptr %t383 + %t385 = call ptr @fn_llty(ptr %t384) store ptr %t385, ptr %t386 - call void @fn_emit(ptr @.str12921) - %t387 = load ptr, ptr %t386 - call void @fn_emit(ptr %t387) - call void @fn_emit(ptr @.str12922) - %t388 = load i32, ptr %t355 - %t389 = call ptr @fn_itoa(i32 %t388) - call void @fn_emit(ptr %t389) - call void @fn_emit(ptr @.str12923) - call void @fn_emit(ptr @.str12924) - %t390 = load ptr, ptr %t386 - call void @fn_emit(ptr %t390) - call void @fn_emit(ptr @.str12925) - %t391 = load ptr, ptr %t386 - call void @fn_emit(ptr %t391) - call void @fn_emit(ptr @.str12926) - %t392 = load ptr, ptr %t386 - call void @fn_emit(ptr %t392) - call void @fn_emit(ptr @.str12927) - call void @fn_emit(ptr @.str12928) - %t393 = load ptr, ptr %t386 + %t387 = load ptr, ptr %t347 + %t388 = call ptr @lp_str_concat(ptr %t387, ptr @.str13040) + %t389 = load i32, ptr %t361 + %t390 = call ptr @fn_itoa(i32 %t389) + %t391 = call ptr @lp_str_concat(ptr %t388, ptr %t390) + store ptr %t391, ptr %t392 + call void @fn_emit(ptr @.str13041) + %t393 = load ptr, ptr %t392 call void @fn_emit(ptr %t393) - call void @fn_emit(ptr @.str12929) - call void @fn_emit(ptr @.str12930) - %t394 = load ptr, ptr %t386 - call void @fn_emit(ptr %t394) - call void @fn_emit(ptr @.str12931) - %t395 = load ptr, ptr %t341 + call void @fn_emit(ptr @.str13042) + %t394 = load i32, ptr %t361 + %t395 = call ptr @fn_itoa(i32 %t394) call void @fn_emit(ptr %t395) - call void @fn_emit(ptr @.str12932) - %t396 = load ptr, ptr %t344 + call void @fn_emit(ptr @.str13043) + call void @fn_emit(ptr @.str13044) + %t396 = load ptr, ptr %t392 call void @fn_emit(ptr %t396) - call void @fn_emit(ptr @.str12933) - %t397 = load i32, ptr %t355 - %t398 = call ptr @fn_itoa(i32 %t397) + call void @fn_emit(ptr @.str13045) + %t397 = load ptr, ptr %t392 + call void @fn_emit(ptr %t397) + call void @fn_emit(ptr @.str13046) + %t398 = load ptr, ptr %t392 call void @fn_emit(ptr %t398) - call void @fn_emit(ptr @.str12934) - %t399 = load ptr, ptr %t380 - %t400 = call i32 @lp_str_eq(ptr %t399, ptr @.str12935) - %t401 = icmp ne i32 %t400, 0 - br i1 %t401, label %then69, label %else70 -then69: - call void @fn_emit(ptr @.str12936) - %t402 = load ptr, ptr %t386 + call void @fn_emit(ptr @.str13047) + call void @fn_emit(ptr @.str13048) + %t399 = load ptr, ptr %t392 + call void @fn_emit(ptr %t399) + call void @fn_emit(ptr @.str13049) + call void @fn_emit(ptr @.str13050) + %t400 = load ptr, ptr %t392 + call void @fn_emit(ptr %t400) + call void @fn_emit(ptr @.str13051) + %t401 = load ptr, ptr %t344 + call void @fn_emit(ptr %t401) + call void @fn_emit(ptr @.str13052) + %t402 = load ptr, ptr %t347 call void @fn_emit(ptr %t402) - call void @fn_emit(ptr @.str12937) - call void @fn_emit(ptr @.str12938) - %t403 = load ptr, ptr %t386 - call void @fn_emit(ptr %t403) - call void @fn_emit(ptr @.str12939) - %t404 = load ptr, ptr %t386 + call void @fn_emit(ptr @.str13053) + %t403 = load i32, ptr %t361 + %t404 = call ptr @fn_itoa(i32 %t403) call void @fn_emit(ptr %t404) - call void @fn_emit(ptr @.str12940) + call void @fn_emit(ptr @.str13054) + %t405 = load ptr, ptr %t386 + %t406 = call i32 @lp_str_eq(ptr %t405, ptr @.str13055) + %t407 = icmp ne i32 %t406, 0 + br i1 %t407, label %then69, label %else70 +then69: + call void @fn_emit(ptr @.str13056) + %t408 = load ptr, ptr %t392 + call void @fn_emit(ptr %t408) + call void @fn_emit(ptr @.str13057) + call void @fn_emit(ptr @.str13058) + %t409 = load ptr, ptr %t392 + call void @fn_emit(ptr %t409) + call void @fn_emit(ptr @.str13059) + %t410 = load ptr, ptr %t392 + call void @fn_emit(ptr %t410) + call void @fn_emit(ptr @.str13060) br label %ifend71 else70: - %t405 = load ptr, ptr %t380 - %t406 = call i32 @lp_str_eq(ptr %t405, ptr @.str12941) - %t407 = icmp ne i32 %t406, 0 - br i1 %t407, label %then72, label %else73 + %t411 = load ptr, ptr %t386 + %t412 = call i32 @lp_str_eq(ptr %t411, ptr @.str13061) + %t413 = icmp ne i32 %t412, 0 + br i1 %t413, label %then72, label %else73 then72: - call void @fn_emit(ptr @.str12942) - %t408 = load ptr, ptr %t386 - call void @fn_emit(ptr %t408) - call void @fn_emit(ptr @.str12943) - call void @fn_emit(ptr @.str12944) - %t409 = load ptr, ptr %t386 - call void @fn_emit(ptr %t409) - call void @fn_emit(ptr @.str12945) - %t410 = load ptr, ptr %t386 - call void @fn_emit(ptr %t410) - call void @fn_emit(ptr @.str12946) + call void @fn_emit(ptr @.str13062) + %t414 = load ptr, ptr %t392 + call void @fn_emit(ptr %t414) + call void @fn_emit(ptr @.str13063) + call void @fn_emit(ptr @.str13064) + %t415 = load ptr, ptr %t392 + call void @fn_emit(ptr %t415) + call void @fn_emit(ptr @.str13065) + %t416 = load ptr, ptr %t392 + call void @fn_emit(ptr %t416) + call void @fn_emit(ptr @.str13066) br label %ifend74 else73: - call void @fn_emit(ptr @.str12947) - %t411 = load ptr, ptr %t386 - call void @fn_emit(ptr %t411) - call void @fn_emit(ptr @.str12948) - call void @fn_emit(ptr @.str12949) - %t412 = load ptr, ptr %t386 - call void @fn_emit(ptr %t412) - call void @fn_emit(ptr @.str12950) - %t413 = load ptr, ptr %t386 - call void @fn_emit(ptr %t413) - call void @fn_emit(ptr @.str12951) + call void @fn_emit(ptr @.str13067) + %t417 = load ptr, ptr %t392 + call void @fn_emit(ptr %t417) + call void @fn_emit(ptr @.str13068) + call void @fn_emit(ptr @.str13069) + %t418 = load ptr, ptr %t392 + call void @fn_emit(ptr %t418) + call void @fn_emit(ptr @.str13070) + %t419 = load ptr, ptr %t392 + call void @fn_emit(ptr %t419) + call void @fn_emit(ptr @.str13071) br label %ifend74 ifend74: br label %ifend71 ifend71: - call void @fn_emit(ptr @.str12952) - %t414 = load ptr, ptr %t386 - call void @fn_emit(ptr %t414) - call void @fn_emit(ptr @.str12953) - %t415 = load i32, ptr %t355 - %t416 = add i32 %t415, 1 - store i32 %t416, ptr %t355 + call void @fn_emit(ptr @.str13072) + %t420 = load ptr, ptr %t392 + call void @fn_emit(ptr %t420) + call void @fn_emit(ptr @.str13073) + %t421 = load i32, ptr %t361 + %t422 = add i32 %t421, 1 + store i32 %t422, ptr %t361 br label %wcond64 wend66: - call void @fn_emit(ptr @.str12954) - call void @fn_emit(ptr @.str12955) - %t417 = load ptr, ptr %t344 - call void @fn_emit(ptr %t417) - call void @fn_emit(ptr @.str12956) - %t418 = load i32, ptr %t33 - %t419 = add i32 %t418, 1 - store i32 %t419, ptr %t33 + call void @fn_emit(ptr @.str13074) + call void @fn_emit(ptr @.str13075) + %t423 = load ptr, ptr %t347 + call void @fn_emit(ptr %t423) + call void @fn_emit(ptr @.str13076) + %t424 = load i32, ptr %t33 + %t425 = add i32 %t424, 1 + store i32 %t425, ptr %t33 br label %ifend61 ifend61: - %t420 = load i32, ptr %t34 - %t421 = add i32 %t420, 1 - store i32 %t421, ptr %t34 + %t426 = load i32, ptr %t34 + %t427 = add i32 %t426, 1 + store i32 %t427, ptr %t34 br label %wcond54 wend56: - call void @fn_emit(ptr @.str12957) - %t422 = load ptr, ptr %t32 - call void @fn_emit(ptr %t422) - call void @fn_emit(ptr @.str12958) - call void @fn_emit(ptr @.str12959) - call void @fn_emit(ptr @.str12960) - call void @fn_emit(ptr @.str12961) - call void @fn_emit(ptr @.str12962) - call void @fn_emit(ptr @.str12963) - call void @fn_emit(ptr @.str12964) + call void @fn_emit(ptr @.str13077) + %t428 = load ptr, ptr %t32 + call void @fn_emit(ptr %t428) + call void @fn_emit(ptr @.str13078) + call void @fn_emit(ptr @.str13079) + call void @fn_emit(ptr @.str13080) + call void @fn_emit(ptr @.str13081) + call void @fn_emit(ptr @.str13082) + call void @fn_emit(ptr @.str13083) + call void @fn_emit(ptr @.str13084) store i32 0, ptr %t33 store i32 0, ptr %t34 br label %wcond75 wcond75: - %t423 = load i32, ptr %t34 - %t424 = load ptr, ptr @g_prog - %t425 = getelementptr inbounds %LSlice, ptr %t424, i32 0, i32 1 - %t426 = load i32, ptr %t425 - %t427 = icmp slt i32 %t423, %t426 - %t428 = zext i1 %t427 to i32 - %t429 = icmp ne i32 %t428, 0 - br i1 %t429, label %wbody76, label %wend77 -wbody76: + %t429 = load i32, ptr %t34 %t430 = load ptr, ptr @g_prog - %t431 = load i32, ptr %t34 - %t432 = getelementptr inbounds %LSlice, ptr %t430, i32 0, i32 0 - %t433 = load ptr, ptr %t432 - %t434 = getelementptr inbounds %LSlice, ptr %t430, i32 0, i32 1 - %t435 = load i32, ptr %t434 - %t436 = icmp ult i32 %t431, %t435 - br i1 %t436, label %ixok78, label %ixbad79 + %t431 = getelementptr inbounds %LSlice, ptr %t430, i32 0, i32 1 + %t432 = load i32, ptr %t431 + %t433 = icmp slt i32 %t429, %t432 + %t434 = zext i1 %t433 to i32 + %t435 = icmp ne i32 %t434, 0 + br i1 %t435, label %wbody76, label %wend77 +wbody76: + %t436 = load ptr, ptr @g_prog + %t437 = load i32, ptr %t34 + %t438 = getelementptr inbounds %LSlice, ptr %t436, i32 0, i32 0 + %t439 = load ptr, ptr %t438 + %t440 = getelementptr inbounds %LSlice, ptr %t436, i32 0, i32 1 + %t441 = load i32, ptr %t440 + %t442 = icmp ult i32 %t437, %t441 + br i1 %t442, label %ixok78, label %ixbad79 ixbad79: - %t437 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t437, ptr @.fmt_bounds, ptr @.str12965, i32 %t431, i32 %t435) + %t443 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t443, ptr @.fmt_bounds, ptr @.str13085, i32 %t437, i32 %t441) call void @exit(i32 1) unreachable ixok78: - %t438 = getelementptr inbounds ptr, ptr %t433, i32 %t431 - %t439 = load ptr, ptr %t438 - %t440 = getelementptr inbounds %Cmp_Node, ptr %t439, i32 0, i32 0 - %t441 = load i32, ptr %t440 - %t442 = icmp eq i32 %t441, 8 - %t443 = zext i1 %t442 to i32 - %t444 = icmp ne i32 %t443, 0 - br i1 %t444, label %then80, label %ifend82 + %t444 = getelementptr inbounds ptr, ptr %t439, i32 %t437 + %t445 = load ptr, ptr %t444 + %t446 = getelementptr inbounds %Cmp_Node, ptr %t445, i32 0, i32 0 + %t447 = load i32, ptr %t446 + %t448 = icmp eq i32 %t447, 8 + %t449 = zext i1 %t448 to i32 + %t450 = icmp ne i32 %t449, 0 + br i1 %t450, label %then80, label %ifend82 then80: - %t445 = load ptr, ptr @g_prog - %t446 = load i32, ptr %t34 - %t447 = getelementptr inbounds %LSlice, ptr %t445, i32 0, i32 0 - %t448 = load ptr, ptr %t447 - %t449 = getelementptr inbounds %LSlice, ptr %t445, i32 0, i32 1 - %t450 = load i32, ptr %t449 - %t451 = icmp ult i32 %t446, %t450 - br i1 %t451, label %ixok83, label %ixbad84 + %t451 = load ptr, ptr @g_prog + %t452 = load i32, ptr %t34 + %t453 = getelementptr inbounds %LSlice, ptr %t451, i32 0, i32 0 + %t454 = load ptr, ptr %t453 + %t455 = getelementptr inbounds %LSlice, ptr %t451, i32 0, i32 1 + %t456 = load i32, ptr %t455 + %t457 = icmp ult i32 %t452, %t456 + br i1 %t457, label %ixok83, label %ixbad84 ixbad84: - %t452 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t452, ptr @.fmt_bounds, ptr @.str12966, i32 %t446, i32 %t450) + %t458 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t458, ptr @.fmt_bounds, ptr @.str13086, i32 %t452, i32 %t456) call void @exit(i32 1) unreachable ixok83: - %t453 = getelementptr inbounds ptr, ptr %t448, i32 %t446 - %t454 = load ptr, ptr %t453 - %t455 = getelementptr inbounds %Cmp_Node, ptr %t454, i32 0, i32 1 - %t456 = load ptr, ptr %t455 - store ptr %t456, ptr %t457 - %t458 = load i32, ptr %t33 - %t459 = call ptr @fn_itoa(i32 %t458) - store ptr %t459, ptr %t460 - call void @fn_emit(ptr @.str12967) - %t461 = load ptr, ptr %t460 - call void @fn_emit(ptr %t461) - call void @fn_emit(ptr @.str12968) - %t462 = load ptr, ptr %t460 - call void @fn_emit(ptr %t462) - call void @fn_emit(ptr @.str12969) - call void @fn_emit(ptr @.str12970) - %t463 = load ptr, ptr %t460 - call void @fn_emit(ptr %t463) - call void @fn_emit(ptr @.str12971) - %t464 = load ptr, ptr %t460 - call void @fn_emit(ptr %t464) - call void @fn_emit(ptr @.str12972) - %t465 = load ptr, ptr %t460 - call void @fn_emit(ptr %t465) - call void @fn_emit(ptr @.str12973) - call void @fn_emit(ptr @.str12974) - %t466 = load ptr, ptr %t460 - call void @fn_emit(ptr %t466) - call void @fn_emit(ptr @.str12975) - call void @fn_emit(ptr @.str12976) - %t467 = load ptr, ptr %t460 + %t459 = getelementptr inbounds ptr, ptr %t454, i32 %t452 + %t460 = load ptr, ptr %t459 + %t461 = getelementptr inbounds %Cmp_Node, ptr %t460, i32 0, i32 1 + %t462 = load ptr, ptr %t461 + store ptr %t462, ptr %t463 + %t464 = load i32, ptr %t33 + %t465 = call ptr @fn_itoa(i32 %t464) + store ptr %t465, ptr %t466 + call void @fn_emit(ptr @.str13087) + %t467 = load ptr, ptr %t466 call void @fn_emit(ptr %t467) - call void @fn_emit(ptr @.str12977) - %t468 = load ptr, ptr %t1 + call void @fn_emit(ptr @.str13088) + %t468 = load ptr, ptr %t466 call void @fn_emit(ptr %t468) - call void @fn_emit(ptr @.str12978) - %t469 = load ptr, ptr %t457 + call void @fn_emit(ptr @.str13089) + call void @fn_emit(ptr @.str13090) + %t469 = load ptr, ptr %t466 call void @fn_emit(ptr %t469) - call void @fn_emit(ptr @.str12979) - call void @fn_emit(ptr @.str12980) - %t470 = load ptr, ptr %t460 + call void @fn_emit(ptr @.str13091) + %t470 = load ptr, ptr %t466 call void @fn_emit(ptr %t470) - call void @fn_emit(ptr @.str12981) - %t471 = load ptr, ptr %t460 + call void @fn_emit(ptr @.str13092) + %t471 = load ptr, ptr %t466 call void @fn_emit(ptr %t471) - call void @fn_emit(ptr @.str12982) - call void @fn_emit(ptr @.str12983) - %t472 = load ptr, ptr %t460 + call void @fn_emit(ptr @.str13093) + call void @fn_emit(ptr @.str13094) + %t472 = load ptr, ptr %t466 call void @fn_emit(ptr %t472) - call void @fn_emit(ptr @.str12984) - %t473 = load ptr, ptr %t460 - call void @fn_emit(ptr %t473) - call void @fn_emit(ptr @.str12985) - %t474 = load ptr, ptr %t460 - call void @fn_emit(ptr %t474) - call void @fn_emit(ptr @.str12986) - call void @fn_emit(ptr @.str12987) - %t475 = load ptr, ptr %t460 - call void @fn_emit(ptr %t475) - call void @fn_emit(ptr @.str12988) - %t476 = load i32, ptr %t33 - %t477 = add i32 %t476, 1 - store i32 %t477, ptr %t33 + call void @fn_emit(ptr @.str13095) + %t473 = load ptr, ptr %t463 + %t474 = call ptr @lp_str_concat(ptr @.str13096, ptr %t473) + %t475 = call ptr @fn_ecs_base(ptr %t474) + store ptr %t475, ptr %t476 + call void @fn_emit(ptr @.str13097) + %t477 = load ptr, ptr %t466 + call void @fn_emit(ptr %t477) + call void @fn_emit(ptr @.str13098) + %t478 = load ptr, ptr %t476 + call void @fn_emit(ptr %t478) + call void @fn_emit(ptr @.str13099) + call void @fn_emit(ptr @.str13100) + %t479 = load ptr, ptr %t466 + call void @fn_emit(ptr %t479) + call void @fn_emit(ptr @.str13101) + %t480 = load ptr, ptr %t466 + call void @fn_emit(ptr %t480) + call void @fn_emit(ptr @.str13102) + call void @fn_emit(ptr @.str13103) + %t481 = load ptr, ptr %t466 + call void @fn_emit(ptr %t481) + call void @fn_emit(ptr @.str13104) + %t482 = load ptr, ptr %t466 + call void @fn_emit(ptr %t482) + call void @fn_emit(ptr @.str13105) + %t483 = load ptr, ptr %t466 + call void @fn_emit(ptr %t483) + call void @fn_emit(ptr @.str13106) + call void @fn_emit(ptr @.str13107) + %t484 = load ptr, ptr %t466 + call void @fn_emit(ptr %t484) + call void @fn_emit(ptr @.str13108) + %t485 = load i32, ptr %t33 + %t486 = add i32 %t485, 1 + store i32 %t486, ptr %t33 br label %ifend82 ifend82: - %t478 = load i32, ptr %t34 - %t479 = add i32 %t478, 1 - store i32 %t479, ptr %t34 + %t487 = load i32, ptr %t34 + %t488 = add i32 %t487, 1 + store i32 %t488, ptr %t34 br label %wcond75 wend77: - call void @fn_emit(ptr @.str12989) - %t480 = load ptr, ptr %t32 - call void @fn_emit(ptr %t480) - call void @fn_emit(ptr @.str12990) - call void @fn_emit(ptr @.str12991) - call void @fn_emit(ptr @.str12992) - call void @fn_emit(ptr @.str12993) - call void @fn_emit(ptr @.str12994) - call void @fn_emit(ptr @.str12995) - call void @fn_emit(ptr @.str12996) - %t481 = load ptr, ptr %t1 - call void @fn_emit(ptr %t481) - call void @fn_emit(ptr @.str12997) - call void @fn_emit(ptr @.str12998) - call void @fn_emit(ptr @.str12999) - call void @fn_emit(ptr @.str13000) - %t482 = load ptr, ptr %t1 - call void @fn_emit(ptr %t482) - call void @fn_emit(ptr @.str13001) - %t483 = load ptr, ptr %t1 - call void @fn_emit(ptr %t483) - call void @fn_emit(ptr @.str13002) - call void @fn_emit(ptr @.str13003) - call void @fn_emit(ptr @.str13004) - call void @fn_emit(ptr @.str13005) - call void @fn_emit(ptr @.str13006) - %t484 = load ptr, ptr %t32 - call void @fn_emit(ptr %t484) - call void @fn_emit(ptr @.str13007) - call void @fn_emit(ptr @.str13008) - call void @fn_emit(ptr @.str13009) - call void @fn_emit(ptr @.str13010) - %t485 = load ptr, ptr %t32 - call void @fn_emit(ptr %t485) - call void @fn_emit(ptr @.str13011) - call void @fn_emit(ptr @.str13012) - call void @fn_emit(ptr @.str13013) - %t486 = load ptr, ptr %t32 - call void @fn_emit(ptr %t486) - call void @fn_emit(ptr @.str13014) - call void @fn_emit(ptr @.str13015) - call void @fn_emit(ptr @.str13016) - call void @fn_emit(ptr @.str13017) - %t487 = load ptr, ptr %t1 - call void @fn_emit(ptr %t487) - call void @fn_emit(ptr @.str13018) - call void @fn_emit(ptr @.str13019) - call void @fn_emit(ptr @.str13020) + call void @fn_emit(ptr @.str13109) + %t489 = load ptr, ptr %t32 + call void @fn_emit(ptr %t489) + call void @fn_emit(ptr @.str13110) + call void @fn_emit(ptr @.str13111) + call void @fn_emit(ptr @.str13112) + call void @fn_emit(ptr @.str13113) + call void @fn_emit(ptr @.str13114) + call void @fn_emit(ptr @.str13115) + call void @fn_emit(ptr @.str13116) + call void @fn_emit(ptr @.str13117) + call void @fn_emit(ptr @.str13118) + call void @fn_emit(ptr @.str13119) + call void @fn_emit(ptr @.str13120) + call void @fn_emit(ptr @.str13121) + call void @fn_emit(ptr @.str13122) + call void @fn_emit(ptr @.str13123) + %t490 = load ptr, ptr %t32 + call void @fn_emit(ptr %t490) + call void @fn_emit(ptr @.str13124) + call void @fn_emit(ptr @.str13125) + call void @fn_emit(ptr @.str13126) + call void @fn_emit(ptr @.str13127) + %t491 = load ptr, ptr %t32 + call void @fn_emit(ptr %t491) + call void @fn_emit(ptr @.str13128) + call void @fn_emit(ptr @.str13129) + call void @fn_emit(ptr @.str13130) + %t492 = load ptr, ptr %t32 + call void @fn_emit(ptr %t492) + call void @fn_emit(ptr @.str13131) + call void @fn_emit(ptr @.str13132) + call void @fn_emit(ptr @.str13133) + %t493 = call ptr @fn_ecs_base(ptr @.str13134) + store ptr %t493, ptr %t494 + call void @fn_emit(ptr @.str13135) + %t495 = load ptr, ptr %t494 + call void @fn_emit(ptr %t495) + call void @fn_emit(ptr @.str13136) + call void @fn_emit(ptr @.str13137) + call void @fn_emit(ptr @.str13138) store i32 0, ptr %t33 store i32 0, ptr %t34 br label %wcond85 wcond85: - %t488 = load i32, ptr %t34 - %t489 = load ptr, ptr @g_prog - %t490 = getelementptr inbounds %LSlice, ptr %t489, i32 0, i32 1 - %t491 = load i32, ptr %t490 - %t492 = icmp slt i32 %t488, %t491 - %t493 = zext i1 %t492 to i32 - %t494 = icmp ne i32 %t493, 0 - br i1 %t494, label %wbody86, label %wend87 -wbody86: - %t495 = load ptr, ptr @g_prog %t496 = load i32, ptr %t34 - %t497 = getelementptr inbounds %LSlice, ptr %t495, i32 0, i32 0 - %t498 = load ptr, ptr %t497 - %t499 = getelementptr inbounds %LSlice, ptr %t495, i32 0, i32 1 - %t500 = load i32, ptr %t499 - %t501 = icmp ult i32 %t496, %t500 - br i1 %t501, label %ixok88, label %ixbad89 + %t497 = load ptr, ptr @g_prog + %t498 = getelementptr inbounds %LSlice, ptr %t497, i32 0, i32 1 + %t499 = load i32, ptr %t498 + %t500 = icmp slt i32 %t496, %t499 + %t501 = zext i1 %t500 to i32 + %t502 = icmp ne i32 %t501, 0 + br i1 %t502, label %wbody86, label %wend87 +wbody86: + %t503 = load ptr, ptr @g_prog + %t504 = load i32, ptr %t34 + %t505 = getelementptr inbounds %LSlice, ptr %t503, i32 0, i32 0 + %t506 = load ptr, ptr %t505 + %t507 = getelementptr inbounds %LSlice, ptr %t503, i32 0, i32 1 + %t508 = load i32, ptr %t507 + %t509 = icmp ult i32 %t504, %t508 + br i1 %t509, label %ixok88, label %ixbad89 ixbad89: - %t502 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t502, ptr @.fmt_bounds, ptr @.str13021, i32 %t496, i32 %t500) + %t510 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t510, ptr @.fmt_bounds, ptr @.str13139, i32 %t504, i32 %t508) call void @exit(i32 1) unreachable ixok88: - %t503 = getelementptr inbounds ptr, ptr %t498, i32 %t496 - %t504 = load ptr, ptr %t503 - %t505 = getelementptr inbounds %Cmp_Node, ptr %t504, i32 0, i32 0 - %t506 = load i32, ptr %t505 - %t507 = icmp eq i32 %t506, 10 - %t508 = zext i1 %t507 to i32 - %t509 = icmp ne i32 %t508, 0 - br i1 %t509, label %then90, label %ifend92 + %t511 = getelementptr inbounds ptr, ptr %t506, i32 %t504 + %t512 = load ptr, ptr %t511 + %t513 = getelementptr inbounds %Cmp_Node, ptr %t512, i32 0, i32 0 + %t514 = load i32, ptr %t513 + %t515 = icmp eq i32 %t514, 10 + %t516 = zext i1 %t515 to i32 + %t517 = icmp ne i32 %t516, 0 + br i1 %t517, label %then90, label %ifend92 then90: - %t510 = load ptr, ptr @g_prog - %t511 = load i32, ptr %t34 - %t512 = getelementptr inbounds %LSlice, ptr %t510, i32 0, i32 0 - %t513 = load ptr, ptr %t512 - %t514 = getelementptr inbounds %LSlice, ptr %t510, i32 0, i32 1 - %t515 = load i32, ptr %t514 - %t516 = icmp ult i32 %t511, %t515 - br i1 %t516, label %ixok93, label %ixbad94 + %t518 = load ptr, ptr @g_prog + %t519 = load i32, ptr %t34 + %t520 = getelementptr inbounds %LSlice, ptr %t518, i32 0, i32 0 + %t521 = load ptr, ptr %t520 + %t522 = getelementptr inbounds %LSlice, ptr %t518, i32 0, i32 1 + %t523 = load i32, ptr %t522 + %t524 = icmp ult i32 %t519, %t523 + br i1 %t524, label %ixok93, label %ixbad94 ixbad94: - %t517 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t517, ptr @.fmt_bounds, ptr @.str13022, i32 %t511, i32 %t515) + %t525 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t525, ptr @.fmt_bounds, ptr @.str13140, i32 %t519, i32 %t523) call void @exit(i32 1) unreachable ixok93: - %t518 = getelementptr inbounds ptr, ptr %t513, i32 %t511 - %t519 = load ptr, ptr %t518 - %t520 = getelementptr inbounds %Cmp_Node, ptr %t519, i32 0, i32 1 - %t521 = load ptr, ptr %t520 - %t522 = call ptr @fn_emit_str_const(ptr %t521) - store ptr %t522, ptr %t523 - %t524 = load i32, ptr %t33 - %t525 = call ptr @fn_itoa(i32 %t524) - store ptr %t525, ptr %t526 - call void @fn_emit(ptr @.str13023) + %t526 = getelementptr inbounds ptr, ptr %t521, i32 %t519 %t527 = load ptr, ptr %t526 - call void @fn_emit(ptr %t527) - call void @fn_emit(ptr @.str13024) - %t528 = load ptr, ptr %t523 - call void @fn_emit(ptr %t528) - call void @fn_emit(ptr @.str13025) - call void @fn_emit(ptr @.str13026) - %t529 = load ptr, ptr %t526 - call void @fn_emit(ptr %t529) - call void @fn_emit(ptr @.str13027) - %t530 = load ptr, ptr %t526 - call void @fn_emit(ptr %t530) - call void @fn_emit(ptr @.str13028) - call void @fn_emit(ptr @.str13029) - %t531 = load ptr, ptr %t526 - call void @fn_emit(ptr %t531) - call void @fn_emit(ptr @.str13030) - %t532 = load ptr, ptr %t526 - call void @fn_emit(ptr %t532) - call void @fn_emit(ptr @.str13031) - %t533 = load ptr, ptr %t526 - call void @fn_emit(ptr %t533) - call void @fn_emit(ptr @.str13032) - call void @fn_emit(ptr @.str13033) - %t534 = load ptr, ptr %t526 - call void @fn_emit(ptr %t534) - call void @fn_emit(ptr @.str13034) - %t535 = load ptr, ptr @g_prog - %t536 = load i32, ptr %t34 - %t537 = getelementptr inbounds %LSlice, ptr %t535, i32 0, i32 0 - %t538 = load ptr, ptr %t537 - %t539 = getelementptr inbounds %LSlice, ptr %t535, i32 0, i32 1 - %t540 = load i32, ptr %t539 - %t541 = icmp ult i32 %t536, %t540 - br i1 %t541, label %ixok95, label %ixbad96 + %t528 = getelementptr inbounds %Cmp_Node, ptr %t527, i32 0, i32 1 + %t529 = load ptr, ptr %t528 + %t530 = call ptr @fn_emit_str_const(ptr %t529) + store ptr %t530, ptr %t531 + %t532 = load i32, ptr %t33 + %t533 = call ptr @fn_itoa(i32 %t532) + store ptr %t533, ptr %t534 + call void @fn_emit(ptr @.str13141) + %t535 = load ptr, ptr %t534 + call void @fn_emit(ptr %t535) + call void @fn_emit(ptr @.str13142) + %t536 = load ptr, ptr %t531 + call void @fn_emit(ptr %t536) + call void @fn_emit(ptr @.str13143) + call void @fn_emit(ptr @.str13144) + %t537 = load ptr, ptr %t534 + call void @fn_emit(ptr %t537) + call void @fn_emit(ptr @.str13145) + %t538 = load ptr, ptr %t534 + call void @fn_emit(ptr %t538) + call void @fn_emit(ptr @.str13146) + call void @fn_emit(ptr @.str13147) + %t539 = load ptr, ptr %t534 + call void @fn_emit(ptr %t539) + call void @fn_emit(ptr @.str13148) + %t540 = load ptr, ptr %t534 + call void @fn_emit(ptr %t540) + call void @fn_emit(ptr @.str13149) + %t541 = load ptr, ptr %t534 + call void @fn_emit(ptr %t541) + call void @fn_emit(ptr @.str13150) + call void @fn_emit(ptr @.str13151) + %t542 = load ptr, ptr %t534 + call void @fn_emit(ptr %t542) + call void @fn_emit(ptr @.str13152) + %t543 = load ptr, ptr @g_prog + %t544 = load i32, ptr %t34 + %t545 = getelementptr inbounds %LSlice, ptr %t543, i32 0, i32 0 + %t546 = load ptr, ptr %t545 + %t547 = getelementptr inbounds %LSlice, ptr %t543, i32 0, i32 1 + %t548 = load i32, ptr %t547 + %t549 = icmp ult i32 %t544, %t548 + br i1 %t549, label %ixok95, label %ixbad96 ixbad96: - %t542 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t542, ptr @.fmt_bounds, ptr @.str13035, i32 %t536, i32 %t540) + %t550 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t550, ptr @.fmt_bounds, ptr @.str13153, i32 %t544, i32 %t548) call void @exit(i32 1) unreachable ixok95: - %t543 = getelementptr inbounds ptr, ptr %t538, i32 %t536 - %t544 = load ptr, ptr %t543 - %t545 = getelementptr inbounds %Cmp_Node, ptr %t544, i32 0, i32 1 - %t546 = load ptr, ptr %t545 - %t547 = call i32 @fn_find_arch_id(ptr %t546) - %t548 = call ptr @fn_itoa(i32 %t547) - call void @fn_emit(ptr %t548) - call void @fn_emit(ptr @.str13036) - call void @fn_emit(ptr @.str13037) - %t549 = load ptr, ptr %t526 - call void @fn_emit(ptr %t549) - call void @fn_emit(ptr @.str13038) - %t550 = load i32, ptr %t33 - %t551 = add i32 %t550, 1 - store i32 %t551, ptr %t33 + %t551 = getelementptr inbounds ptr, ptr %t546, i32 %t544 + %t552 = load ptr, ptr %t551 + %t553 = getelementptr inbounds %Cmp_Node, ptr %t552, i32 0, i32 1 + %t554 = load ptr, ptr %t553 + %t555 = call i32 @fn_find_arch_id(ptr %t554) + %t556 = call ptr @fn_itoa(i32 %t555) + call void @fn_emit(ptr %t556) + call void @fn_emit(ptr @.str13154) + call void @fn_emit(ptr @.str13155) + %t557 = load ptr, ptr %t534 + call void @fn_emit(ptr %t557) + call void @fn_emit(ptr @.str13156) + %t558 = load i32, ptr %t33 + %t559 = add i32 %t558, 1 + store i32 %t559, ptr %t33 br label %ifend92 ifend92: - %t552 = load i32, ptr %t34 - %t553 = add i32 %t552, 1 - store i32 %t553, ptr %t34 + %t560 = load i32, ptr %t34 + %t561 = add i32 %t560, 1 + store i32 %t561, ptr %t34 br label %wcond85 wend87: - call void @fn_emit(ptr @.str13039) + call void @fn_emit(ptr @.str13157) store i32 0, ptr %t34 br label %wcond97 wcond97: - %t554 = load i32, ptr %t34 - %t555 = load ptr, ptr @g_prog - %t556 = getelementptr inbounds %LSlice, ptr %t555, i32 0, i32 1 - %t557 = load i32, ptr %t556 - %t558 = icmp slt i32 %t554, %t557 - %t559 = zext i1 %t558 to i32 - %t560 = icmp ne i32 %t559, 0 - br i1 %t560, label %wbody98, label %wend99 -wbody98: - %t561 = load ptr, ptr @g_prog %t562 = load i32, ptr %t34 - %t563 = getelementptr inbounds %LSlice, ptr %t561, i32 0, i32 0 - %t564 = load ptr, ptr %t563 - %t565 = getelementptr inbounds %LSlice, ptr %t561, i32 0, i32 1 - %t566 = load i32, ptr %t565 - %t567 = icmp ult i32 %t562, %t566 - br i1 %t567, label %ixok100, label %ixbad101 + %t563 = load ptr, ptr @g_prog + %t564 = getelementptr inbounds %LSlice, ptr %t563, i32 0, i32 1 + %t565 = load i32, ptr %t564 + %t566 = icmp slt i32 %t562, %t565 + %t567 = zext i1 %t566 to i32 + %t568 = icmp ne i32 %t567, 0 + br i1 %t568, label %wbody98, label %wend99 +wbody98: + %t569 = load ptr, ptr @g_prog + %t570 = load i32, ptr %t34 + %t571 = getelementptr inbounds %LSlice, ptr %t569, i32 0, i32 0 + %t572 = load ptr, ptr %t571 + %t573 = getelementptr inbounds %LSlice, ptr %t569, i32 0, i32 1 + %t574 = load i32, ptr %t573 + %t575 = icmp ult i32 %t570, %t574 + br i1 %t575, label %ixok100, label %ixbad101 ixbad101: - %t568 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t568, ptr @.fmt_bounds, ptr @.str13040, i32 %t562, i32 %t566) + %t576 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t576, ptr @.fmt_bounds, ptr @.str13158, i32 %t570, i32 %t574) call void @exit(i32 1) unreachable ixok100: - %t569 = getelementptr inbounds ptr, ptr %t564, i32 %t562 - %t570 = load ptr, ptr %t569 - %t571 = getelementptr inbounds %Cmp_Node, ptr %t570, i32 0, i32 0 - %t572 = load i32, ptr %t571 - %t573 = icmp eq i32 %t572, 10 - %t574 = zext i1 %t573 to i32 - %t575 = icmp ne i32 %t574, 0 - br i1 %t575, label %then102, label %ifend104 + %t577 = getelementptr inbounds ptr, ptr %t572, i32 %t570 + %t578 = load ptr, ptr %t577 + %t579 = getelementptr inbounds %Cmp_Node, ptr %t578, i32 0, i32 0 + %t580 = load i32, ptr %t579 + %t581 = icmp eq i32 %t580, 10 + %t582 = zext i1 %t581 to i32 + %t583 = icmp ne i32 %t582, 0 + br i1 %t583, label %then102, label %ifend104 then102: - %t576 = load ptr, ptr @g_prog - %t577 = load i32, ptr %t34 - %t578 = getelementptr inbounds %LSlice, ptr %t576, i32 0, i32 0 - %t579 = load ptr, ptr %t578 - %t580 = getelementptr inbounds %LSlice, ptr %t576, i32 0, i32 1 - %t581 = load i32, ptr %t580 - %t582 = icmp ult i32 %t577, %t581 - br i1 %t582, label %ixok105, label %ixbad106 + %t584 = load ptr, ptr @g_prog + %t585 = load i32, ptr %t34 + %t586 = getelementptr inbounds %LSlice, ptr %t584, i32 0, i32 0 + %t587 = load ptr, ptr %t586 + %t588 = getelementptr inbounds %LSlice, ptr %t584, i32 0, i32 1 + %t589 = load i32, ptr %t588 + %t590 = icmp ult i32 %t585, %t589 + br i1 %t590, label %ixok105, label %ixbad106 ixbad106: - %t583 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t583, ptr @.fmt_bounds, ptr @.str13041, i32 %t577, i32 %t581) + %t591 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t591, ptr @.fmt_bounds, ptr @.str13159, i32 %t585, i32 %t589) call void @exit(i32 1) unreachable ixok105: - %t584 = getelementptr inbounds ptr, ptr %t579, i32 %t577 - %t585 = load ptr, ptr %t584 - %t586 = getelementptr inbounds %Cmp_Node, ptr %t585, i32 0, i32 1 - %t587 = load ptr, ptr %t586 - store ptr %t587, ptr %t588 + %t592 = getelementptr inbounds ptr, ptr %t587, i32 %t585 + %t593 = load ptr, ptr %t592 + %t594 = getelementptr inbounds %Cmp_Node, ptr %t593, i32 0, i32 1 + %t595 = load ptr, ptr %t594 + store ptr %t595, ptr %t596 store i32 0, ptr @g_ll_t store i32 0, ptr @g_ll_lbl store i32 0, ptr @g_g_term call void @fn_loc_reset() store i32 0, ptr @g_nloop store i32 0, ptr @g_nself - store ptr @.str13042, ptr @g_ret_ty - %t589 = call ptr @fn_buf_new() - store ptr %t589, ptr %t590 - %t591 = call ptr @fn_buf_new() - store ptr %t591, ptr @g_falloc - %t592 = load ptr, ptr @g_code - store ptr %t592, ptr %t593 - %t594 = load ptr, ptr %t590 - store ptr %t594, ptr @g_code - %t595 = call ptr @fn_node(i32 22) - store ptr %t595, ptr %t596 - %t597 = load ptr, ptr %t596 - %t598 = getelementptr inbounds %Cmp_Node, ptr %t597, i32 0, i32 1 - %t599 = load ptr, ptr %t588 - store ptr %t599, ptr %t598 - %t600 = load ptr, ptr %t596 - %t601 = call ptr @fn_emit_spawn(ptr %t600) - store ptr %t601, ptr %t602 - call void @fn_emit(ptr @.str13043) - %t603 = load ptr, ptr %t602 - call void @fn_emit(ptr %t603) - call void @fn_emit(ptr @.str13044) - %t604 = load ptr, ptr %t593 - store ptr %t604, ptr @g_code - call void @fn_emit(ptr @.str13045) - %t605 = load ptr, ptr %t588 - call void @fn_emit(ptr %t605) - call void @fn_emit(ptr @.str13046) - %t606 = load ptr, ptr @g_falloc - %t607 = call ptr @fn_buf_str(ptr %t606) - call void @fn_emit(ptr %t607) - %t608 = load ptr, ptr %t590 - %t609 = call ptr @fn_buf_str(ptr %t608) - call void @fn_emit(ptr %t609) - call void @fn_emit(ptr @.str13047) + store ptr @.str13160, ptr @g_ret_ty + %t597 = call ptr @fn_buf_new() + store ptr %t597, ptr %t598 + %t599 = call ptr @fn_buf_new() + store ptr %t599, ptr @g_falloc + %t600 = load ptr, ptr @g_code + store ptr %t600, ptr %t601 + %t602 = load ptr, ptr %t598 + store ptr %t602, ptr @g_code + %t603 = call ptr @fn_node(i32 22) + store ptr %t603, ptr %t604 + %t605 = load ptr, ptr %t604 + %t606 = getelementptr inbounds %Cmp_Node, ptr %t605, i32 0, i32 1 + %t607 = load ptr, ptr %t596 + store ptr %t607, ptr %t606 + %t608 = load ptr, ptr %t604 + %t609 = call ptr @fn_emit_spawn(ptr %t608) + store ptr %t609, ptr %t610 + call void @fn_emit(ptr @.str13161) + %t611 = load ptr, ptr %t610 + call void @fn_emit(ptr %t611) + call void @fn_emit(ptr @.str13162) + %t612 = load ptr, ptr %t601 + store ptr %t612, ptr @g_code + call void @fn_emit(ptr @.str13163) + %t613 = load ptr, ptr %t596 + call void @fn_emit(ptr %t613) + call void @fn_emit(ptr @.str13164) + %t614 = load ptr, ptr @g_falloc + %t615 = call ptr @fn_buf_str(ptr %t614) + call void @fn_emit(ptr %t615) + %t616 = load ptr, ptr %t598 + %t617 = call ptr @fn_buf_str(ptr %t616) + call void @fn_emit(ptr %t617) + call void @fn_emit(ptr @.str13165) br label %ifend104 ifend104: - %t610 = load i32, ptr %t34 - %t611 = add i32 %t610, 1 - store i32 %t611, ptr %t34 + %t618 = load i32, ptr %t34 + %t619 = add i32 %t618, 1 + store i32 %t619, ptr %t34 br label %wcond97 wend99: - call void @fn_emit(ptr @.str13048) + call void @fn_emit(ptr @.str13166) store i32 0, ptr %t33 store i32 0, ptr %t34 br label %wcond107 wcond107: - %t612 = load i32, ptr %t34 - %t613 = load ptr, ptr @g_prog - %t614 = getelementptr inbounds %LSlice, ptr %t613, i32 0, i32 1 - %t615 = load i32, ptr %t614 - %t616 = icmp slt i32 %t612, %t615 - %t617 = zext i1 %t616 to i32 - %t618 = icmp ne i32 %t617, 0 - br i1 %t618, label %wbody108, label %wend109 -wbody108: - %t619 = load ptr, ptr @g_prog %t620 = load i32, ptr %t34 - %t621 = getelementptr inbounds %LSlice, ptr %t619, i32 0, i32 0 - %t622 = load ptr, ptr %t621 - %t623 = getelementptr inbounds %LSlice, ptr %t619, i32 0, i32 1 - %t624 = load i32, ptr %t623 - %t625 = icmp ult i32 %t620, %t624 - br i1 %t625, label %ixok110, label %ixbad111 + %t621 = load ptr, ptr @g_prog + %t622 = getelementptr inbounds %LSlice, ptr %t621, i32 0, i32 1 + %t623 = load i32, ptr %t622 + %t624 = icmp slt i32 %t620, %t623 + %t625 = zext i1 %t624 to i32 + %t626 = icmp ne i32 %t625, 0 + br i1 %t626, label %wbody108, label %wend109 +wbody108: + %t627 = load ptr, ptr @g_prog + %t628 = load i32, ptr %t34 + %t629 = getelementptr inbounds %LSlice, ptr %t627, i32 0, i32 0 + %t630 = load ptr, ptr %t629 + %t631 = getelementptr inbounds %LSlice, ptr %t627, i32 0, i32 1 + %t632 = load i32, ptr %t631 + %t633 = icmp ult i32 %t628, %t632 + br i1 %t633, label %ixok110, label %ixbad111 ixbad111: - %t626 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t626, ptr @.fmt_bounds, ptr @.str13049, i32 %t620, i32 %t624) + %t634 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t634, ptr @.fmt_bounds, ptr @.str13167, i32 %t628, i32 %t632) call void @exit(i32 1) unreachable ixok110: - %t627 = getelementptr inbounds ptr, ptr %t622, i32 %t620 - %t628 = load ptr, ptr %t627 - %t629 = getelementptr inbounds %Cmp_Node, ptr %t628, i32 0, i32 0 - %t630 = load i32, ptr %t629 - %t631 = icmp eq i32 %t630, 10 - %t632 = zext i1 %t631 to i32 - %t633 = icmp ne i32 %t632, 0 - br i1 %t633, label %then112, label %ifend114 + %t635 = getelementptr inbounds ptr, ptr %t630, i32 %t628 + %t636 = load ptr, ptr %t635 + %t637 = getelementptr inbounds %Cmp_Node, ptr %t636, i32 0, i32 0 + %t638 = load i32, ptr %t637 + %t639 = icmp eq i32 %t638, 10 + %t640 = zext i1 %t639 to i32 + %t641 = icmp ne i32 %t640, 0 + br i1 %t641, label %then112, label %ifend114 then112: - %t634 = load ptr, ptr @g_prog - %t635 = load i32, ptr %t34 - %t636 = getelementptr inbounds %LSlice, ptr %t634, i32 0, i32 0 - %t637 = load ptr, ptr %t636 - %t638 = getelementptr inbounds %LSlice, ptr %t634, i32 0, i32 1 - %t639 = load i32, ptr %t638 - %t640 = icmp ult i32 %t635, %t639 - br i1 %t640, label %ixok115, label %ixbad116 + %t642 = load ptr, ptr @g_prog + %t643 = load i32, ptr %t34 + %t644 = getelementptr inbounds %LSlice, ptr %t642, i32 0, i32 0 + %t645 = load ptr, ptr %t644 + %t646 = getelementptr inbounds %LSlice, ptr %t642, i32 0, i32 1 + %t647 = load i32, ptr %t646 + %t648 = icmp ult i32 %t643, %t647 + br i1 %t648, label %ixok115, label %ixbad116 ixbad116: - %t641 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t641, ptr @.fmt_bounds, ptr @.str13050, i32 %t635, i32 %t639) + %t649 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t649, ptr @.fmt_bounds, ptr @.str13168, i32 %t643, i32 %t647) call void @exit(i32 1) unreachable ixok115: - %t642 = getelementptr inbounds ptr, ptr %t637, i32 %t635 - %t643 = load ptr, ptr %t642 - %t644 = getelementptr inbounds %Cmp_Node, ptr %t643, i32 0, i32 1 - %t645 = load ptr, ptr %t644 - store ptr %t645, ptr %t646 - %t647 = load i32, ptr %t33 - %t648 = call ptr @fn_itoa(i32 %t647) - store ptr %t648, ptr %t649 - call void @fn_emit(ptr @.str13051) - %t650 = load ptr, ptr %t649 - call void @fn_emit(ptr %t650) - call void @fn_emit(ptr @.str13052) - %t651 = load ptr, ptr %t646 - %t652 = call i32 @fn_find_arch_id(ptr %t651) - %t653 = call ptr @fn_itoa(i32 %t652) - call void @fn_emit(ptr %t653) - call void @fn_emit(ptr @.str13053) - call void @fn_emit(ptr @.str13054) - %t654 = load ptr, ptr %t649 - call void @fn_emit(ptr %t654) - call void @fn_emit(ptr @.str13055) - %t655 = load ptr, ptr %t649 - call void @fn_emit(ptr %t655) - call void @fn_emit(ptr @.str13056) - %t656 = load ptr, ptr %t649 - call void @fn_emit(ptr %t656) - call void @fn_emit(ptr @.str13057) - call void @fn_emit(ptr @.str13058) - %t657 = load ptr, ptr %t649 - call void @fn_emit(ptr %t657) - call void @fn_emit(ptr @.str13059) - %t658 = load ptr, ptr %t649 + %t650 = getelementptr inbounds ptr, ptr %t645, i32 %t643 + %t651 = load ptr, ptr %t650 + %t652 = getelementptr inbounds %Cmp_Node, ptr %t651, i32 0, i32 1 + %t653 = load ptr, ptr %t652 + store ptr %t653, ptr %t654 + %t655 = load i32, ptr %t33 + %t656 = call ptr @fn_itoa(i32 %t655) + store ptr %t656, ptr %t657 + call void @fn_emit(ptr @.str13169) + %t658 = load ptr, ptr %t657 call void @fn_emit(ptr %t658) - call void @fn_emit(ptr @.str13060) - %t659 = load ptr, ptr %t646 - call void @fn_emit(ptr %t659) - call void @fn_emit(ptr @.str13061) - %t660 = load ptr, ptr %t649 - call void @fn_emit(ptr %t660) - call void @fn_emit(ptr @.str13062) - call void @fn_emit(ptr @.str13063) - %t661 = load ptr, ptr %t649 + call void @fn_emit(ptr @.str13170) + %t659 = load ptr, ptr %t654 + %t660 = call i32 @fn_find_arch_id(ptr %t659) + %t661 = call ptr @fn_itoa(i32 %t660) call void @fn_emit(ptr %t661) - call void @fn_emit(ptr @.str13064) - %t662 = load i32, ptr %t33 - %t663 = add i32 %t662, 1 - store i32 %t663, ptr %t33 + call void @fn_emit(ptr @.str13171) + call void @fn_emit(ptr @.str13172) + %t662 = load ptr, ptr %t657 + call void @fn_emit(ptr %t662) + call void @fn_emit(ptr @.str13173) + %t663 = load ptr, ptr %t657 + call void @fn_emit(ptr %t663) + call void @fn_emit(ptr @.str13174) + %t664 = load ptr, ptr %t657 + call void @fn_emit(ptr %t664) + call void @fn_emit(ptr @.str13175) + call void @fn_emit(ptr @.str13176) + %t665 = load ptr, ptr %t657 + call void @fn_emit(ptr %t665) + call void @fn_emit(ptr @.str13177) + %t666 = load ptr, ptr %t657 + call void @fn_emit(ptr %t666) + call void @fn_emit(ptr @.str13178) + %t667 = load ptr, ptr %t654 + call void @fn_emit(ptr %t667) + call void @fn_emit(ptr @.str13179) + %t668 = load ptr, ptr %t657 + call void @fn_emit(ptr %t668) + call void @fn_emit(ptr @.str13180) + call void @fn_emit(ptr @.str13181) + %t669 = load ptr, ptr %t657 + call void @fn_emit(ptr %t669) + call void @fn_emit(ptr @.str13182) + %t670 = load i32, ptr %t33 + %t671 = add i32 %t670, 1 + store i32 %t671, ptr %t33 br label %ifend114 ifend114: - %t664 = load i32, ptr %t34 - %t665 = add i32 %t664, 1 - store i32 %t665, ptr %t34 + %t672 = load i32, ptr %t34 + %t673 = add i32 %t672, 1 + store i32 %t673, ptr %t34 br label %wcond107 wend109: - call void @fn_emit(ptr @.str13065) - call void @fn_emit(ptr @.str13066) - call void @fn_emit(ptr @.str13067) - call void @fn_emit(ptr @.str13068) - call void @fn_emit(ptr @.str13069) - call void @fn_emit(ptr @.str13070) - %t666 = load ptr, ptr %t1 - call void @fn_emit(ptr %t666) - call void @fn_emit(ptr @.str13071) - call void @fn_emit(ptr @.str13072) - call void @fn_emit(ptr @.str13073) - call void @fn_emit(ptr @.str13074) - call void @fn_emit(ptr @.str13075) - call void @fn_emit(ptr @.str13076) + call void @fn_emit(ptr @.str13183) + call void @fn_emit(ptr @.str13184) + call void @fn_emit(ptr @.str13185) + call void @fn_emit(ptr @.str13186) + call void @fn_emit(ptr @.str13187) + call void @fn_emit(ptr @.str13188) + %t674 = call ptr @fn_ecs_base(ptr @.str13189) + store ptr %t674, ptr %t675 + call void @fn_emit(ptr @.str13190) + %t676 = load ptr, ptr %t675 + call void @fn_emit(ptr %t676) + call void @fn_emit(ptr @.str13191) + call void @fn_emit(ptr @.str13192) + call void @fn_emit(ptr @.str13193) + call void @fn_emit(ptr @.str13194) + call void @fn_emit(ptr @.str13195) + call void @fn_emit(ptr @.str13196) call void @fn_emit_world_reflect_enum() br label %ret ret: @@ -170244,9 +170896,9 @@ entry: %t278 = alloca i32 %t303 = alloca ptr %t309 = alloca ptr - %t0 = call ptr @fn_emit_str_const(ptr @.str13077) + %t0 = call ptr @fn_emit_str_const(ptr @.str13197) store ptr %t0, ptr %t1 - %t2 = call ptr @fn_emit_str_const(ptr @.str13078) + %t2 = call ptr @fn_emit_str_const(ptr @.str13198) store ptr %t2, ptr %t3 store i32 0, ptr %t4 store i32 0, ptr %t5 @@ -170271,7 +170923,7 @@ wbody1: br i1 %t19, label %ixok3, label %ixbad4 ixbad4: %t20 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str13079, i32 %t14, i32 %t18) + call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str13199, i32 %t14, i32 %t18) call void @exit(i32 1) unreachable ixok3: @@ -170297,12 +170949,12 @@ wend2: %t32 = load i32, ptr %t4 %t33 = call ptr @fn_itoa(i32 %t32) store ptr %t33, ptr %t34 - call void @fn_emit(ptr @.str13080) - call void @fn_emit(ptr @.str13081) + call void @fn_emit(ptr @.str13200) + call void @fn_emit(ptr @.str13201) %t35 = load ptr, ptr %t34 call void @fn_emit(ptr %t35) - call void @fn_emit(ptr @.str13082) - call void @fn_emit(ptr @.str13083) + call void @fn_emit(ptr @.str13202) + call void @fn_emit(ptr @.str13203) store i32 0, ptr %t36 store i32 0, ptr %t5 br label %wcond8 @@ -170326,7 +170978,7 @@ wbody9: br i1 %t50, label %ixok11, label %ixbad12 ixbad12: %t51 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str13084, i32 %t45, i32 %t49) + call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str13204, i32 %t45, i32 %t49) call void @exit(i32 1) unreachable ixok11: @@ -170349,7 +171001,7 @@ then13: br i1 %t65, label %ixok16, label %ixbad17 ixbad17: %t66 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str13085, i32 %t60, i32 %t64) + call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str13205, i32 %t60, i32 %t64) call void @exit(i32 1) unreachable ixok16: @@ -170362,34 +171014,34 @@ ixok16: %t73 = load i32, ptr %t36 %t74 = call ptr @fn_itoa(i32 %t73) store ptr %t74, ptr %t75 - call void @fn_emit(ptr @.str13086) + call void @fn_emit(ptr @.str13206) %t76 = load ptr, ptr %t75 call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str13087) + call void @fn_emit(ptr @.str13207) %t77 = load ptr, ptr %t75 call void @fn_emit(ptr %t77) - call void @fn_emit(ptr @.str13088) - call void @fn_emit(ptr @.str13089) + call void @fn_emit(ptr @.str13208) + call void @fn_emit(ptr @.str13209) %t78 = load ptr, ptr %t75 call void @fn_emit(ptr %t78) - call void @fn_emit(ptr @.str13090) + call void @fn_emit(ptr @.str13210) %t79 = load ptr, ptr %t75 call void @fn_emit(ptr %t79) - call void @fn_emit(ptr @.str13091) + call void @fn_emit(ptr @.str13211) %t80 = load ptr, ptr %t75 call void @fn_emit(ptr %t80) - call void @fn_emit(ptr @.str13092) - call void @fn_emit(ptr @.str13093) + call void @fn_emit(ptr @.str13212) + call void @fn_emit(ptr @.str13213) %t81 = load ptr, ptr %t75 call void @fn_emit(ptr %t81) - call void @fn_emit(ptr @.str13094) + call void @fn_emit(ptr @.str13214) %t82 = load ptr, ptr %t72 call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str13095) - call void @fn_emit(ptr @.str13096) + call void @fn_emit(ptr @.str13215) + call void @fn_emit(ptr @.str13216) %t83 = load ptr, ptr %t75 call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str13097) + call void @fn_emit(ptr @.str13217) %t84 = load i32, ptr %t36 %t85 = add i32 %t84, 1 store i32 %t85, ptr %t36 @@ -170400,17 +171052,17 @@ ifend15: store i32 %t87, ptr %t5 br label %wcond8 wend10: - call void @fn_emit(ptr @.str13098) + call void @fn_emit(ptr @.str13218) %t88 = load ptr, ptr %t34 call void @fn_emit(ptr %t88) - call void @fn_emit(ptr @.str13099) - call void @fn_emit(ptr @.str13100) - call void @fn_emit(ptr @.str13101) - call void @fn_emit(ptr @.str13102) + call void @fn_emit(ptr @.str13219) + call void @fn_emit(ptr @.str13220) + call void @fn_emit(ptr @.str13221) + call void @fn_emit(ptr @.str13222) %t89 = load ptr, ptr %t1 call void @fn_emit(ptr %t89) - call void @fn_emit(ptr @.str13103) - call void @fn_emit(ptr @.str13104) + call void @fn_emit(ptr @.str13223) + call void @fn_emit(ptr @.str13224) store i32 0, ptr %t36 store i32 0, ptr %t5 br label %wcond18 @@ -170434,7 +171086,7 @@ wbody19: br i1 %t103, label %ixok21, label %ixbad22 ixbad22: %t104 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t104, ptr @.fmt_bounds, ptr @.str13105, i32 %t98, i32 %t102) + call i32 (ptr, ptr, ...) @fprintf(ptr %t104, ptr @.fmt_bounds, ptr @.str13225, i32 %t98, i32 %t102) call void @exit(i32 1) unreachable ixok21: @@ -170457,7 +171109,7 @@ then23: br i1 %t118, label %ixok26, label %ixbad27 ixbad27: %t119 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t119, ptr @.fmt_bounds, ptr @.str13106, i32 %t113, i32 %t117) + call i32 (ptr, ptr, ...) @fprintf(ptr %t119, ptr @.fmt_bounds, ptr @.str13226, i32 %t113, i32 %t117) call void @exit(i32 1) unreachable ixok26: @@ -170467,27 +171119,27 @@ ixok26: %t123 = load i32, ptr %t36 %t124 = call ptr @fn_itoa(i32 %t123) store ptr %t124, ptr %t125 - call void @fn_emit(ptr @.str13107) + call void @fn_emit(ptr @.str13227) %t126 = load ptr, ptr %t125 call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str13108) + call void @fn_emit(ptr @.str13228) %t127 = load ptr, ptr %t125 call void @fn_emit(ptr %t127) - call void @fn_emit(ptr @.str13109) - call void @fn_emit(ptr @.str13110) + call void @fn_emit(ptr @.str13229) + call void @fn_emit(ptr @.str13230) %t128 = load ptr, ptr %t125 call void @fn_emit(ptr %t128) - call void @fn_emit(ptr @.str13111) + call void @fn_emit(ptr @.str13231) %t129 = load ptr, ptr %t125 call void @fn_emit(ptr %t129) - call void @fn_emit(ptr @.str13112) + call void @fn_emit(ptr @.str13232) %t130 = load ptr, ptr %t125 call void @fn_emit(ptr %t130) - call void @fn_emit(ptr @.str13113) - call void @fn_emit(ptr @.str13114) + call void @fn_emit(ptr @.str13233) + call void @fn_emit(ptr @.str13234) %t131 = load ptr, ptr %t125 call void @fn_emit(ptr %t131) - call void @fn_emit(ptr @.str13115) + call void @fn_emit(ptr @.str13235) %t132 = load ptr, ptr %t122 %t133 = getelementptr inbounds %Cmp_Node, ptr %t132, i32 0, i32 7 %t134 = load ptr, ptr %t133 @@ -170495,11 +171147,11 @@ ixok26: %t136 = load i32, ptr %t135 %t137 = call ptr @fn_itoa(i32 %t136) call void @fn_emit(ptr %t137) - call void @fn_emit(ptr @.str13116) - call void @fn_emit(ptr @.str13117) + call void @fn_emit(ptr @.str13236) + call void @fn_emit(ptr @.str13237) %t138 = load ptr, ptr %t125 call void @fn_emit(ptr %t138) - call void @fn_emit(ptr @.str13118) + call void @fn_emit(ptr @.str13238) %t139 = load i32, ptr %t36 %t140 = add i32 %t139, 1 store i32 %t140, ptr %t36 @@ -170510,14 +171162,14 @@ ifend25: store i32 %t142, ptr %t5 br label %wcond18 wend20: - call void @fn_emit(ptr @.str13119) + call void @fn_emit(ptr @.str13239) %t143 = load ptr, ptr %t34 call void @fn_emit(ptr %t143) - call void @fn_emit(ptr @.str13120) - call void @fn_emit(ptr @.str13121) - call void @fn_emit(ptr @.str13122) - call void @fn_emit(ptr @.str13123) - call void @fn_emit(ptr @.str13124) + call void @fn_emit(ptr @.str13240) + call void @fn_emit(ptr @.str13241) + call void @fn_emit(ptr @.str13242) + call void @fn_emit(ptr @.str13243) + call void @fn_emit(ptr @.str13244) store i32 0, ptr %t36 store i32 0, ptr %t5 br label %wcond28 @@ -170541,7 +171193,7 @@ wbody29: br i1 %t157, label %ixok31, label %ixbad32 ixbad32: %t158 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t158, ptr @.fmt_bounds, ptr @.str13125, i32 %t152, i32 %t156) + call i32 (ptr, ptr, ...) @fprintf(ptr %t158, ptr @.fmt_bounds, ptr @.str13245, i32 %t152, i32 %t156) call void @exit(i32 1) unreachable ixok31: @@ -170564,7 +171216,7 @@ then33: br i1 %t172, label %ixok36, label %ixbad37 ixbad37: %t173 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t173, ptr @.fmt_bounds, ptr @.str13126, i32 %t167, i32 %t171) + call i32 (ptr, ptr, ...) @fprintf(ptr %t173, ptr @.fmt_bounds, ptr @.str13246, i32 %t167, i32 %t171) call void @exit(i32 1) unreachable ixok36: @@ -170574,27 +171226,27 @@ ixok36: %t177 = load i32, ptr %t36 %t178 = call ptr @fn_itoa(i32 %t177) store ptr %t178, ptr %t179 - call void @fn_emit(ptr @.str13127) + call void @fn_emit(ptr @.str13247) %t180 = load ptr, ptr %t179 call void @fn_emit(ptr %t180) - call void @fn_emit(ptr @.str13128) + call void @fn_emit(ptr @.str13248) %t181 = load ptr, ptr %t179 call void @fn_emit(ptr %t181) - call void @fn_emit(ptr @.str13129) - call void @fn_emit(ptr @.str13130) + call void @fn_emit(ptr @.str13249) + call void @fn_emit(ptr @.str13250) %t182 = load ptr, ptr %t179 call void @fn_emit(ptr %t182) - call void @fn_emit(ptr @.str13131) + call void @fn_emit(ptr @.str13251) %t183 = load ptr, ptr %t179 call void @fn_emit(ptr %t183) - call void @fn_emit(ptr @.str13132) + call void @fn_emit(ptr @.str13252) %t184 = load ptr, ptr %t179 call void @fn_emit(ptr %t184) - call void @fn_emit(ptr @.str13133) - call void @fn_emit(ptr @.str13134) + call void @fn_emit(ptr @.str13253) + call void @fn_emit(ptr @.str13254) %t185 = load ptr, ptr %t179 call void @fn_emit(ptr %t185) - call void @fn_emit(ptr @.str13135) + call void @fn_emit(ptr @.str13255) store i32 0, ptr %t186 br label %wcond38 wcond38: @@ -170621,7 +171273,7 @@ wbody39: br i1 %t204, label %ixok41, label %ixbad42 ixbad42: %t205 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t205, ptr @.fmt_bounds, ptr @.str13136, i32 %t199, i32 %t203) + call i32 (ptr, ptr, ...) @fprintf(ptr %t205, ptr @.fmt_bounds, ptr @.str13256, i32 %t199, i32 %t203) call void @exit(i32 1) unreachable ixok41: @@ -170632,53 +171284,53 @@ ixok41: %t210 = call ptr @fn_emit_str_const(ptr %t209) store ptr %t210, ptr %t211 %t212 = load ptr, ptr %t179 - %t213 = call ptr @lp_str_concat(ptr %t212, ptr @.str13137) + %t213 = call ptr @lp_str_concat(ptr %t212, ptr @.str13257) %t214 = load i32, ptr %t186 %t215 = call ptr @fn_itoa(i32 %t214) %t216 = call ptr @lp_str_concat(ptr %t213, ptr %t215) store ptr %t216, ptr %t217 - call void @fn_emit(ptr @.str13138) + call void @fn_emit(ptr @.str13258) %t218 = load ptr, ptr %t217 call void @fn_emit(ptr %t218) - call void @fn_emit(ptr @.str13139) + call void @fn_emit(ptr @.str13259) %t219 = load i32, ptr %t186 %t220 = call ptr @fn_itoa(i32 %t219) call void @fn_emit(ptr %t220) - call void @fn_emit(ptr @.str13140) - call void @fn_emit(ptr @.str13141) + call void @fn_emit(ptr @.str13260) + call void @fn_emit(ptr @.str13261) %t221 = load ptr, ptr %t217 call void @fn_emit(ptr %t221) - call void @fn_emit(ptr @.str13142) + call void @fn_emit(ptr @.str13262) %t222 = load ptr, ptr %t217 call void @fn_emit(ptr %t222) - call void @fn_emit(ptr @.str13143) + call void @fn_emit(ptr @.str13263) %t223 = load ptr, ptr %t217 call void @fn_emit(ptr %t223) - call void @fn_emit(ptr @.str13144) - call void @fn_emit(ptr @.str13145) + call void @fn_emit(ptr @.str13264) + call void @fn_emit(ptr @.str13265) %t224 = load ptr, ptr %t217 call void @fn_emit(ptr %t224) - call void @fn_emit(ptr @.str13146) + call void @fn_emit(ptr @.str13266) %t225 = load ptr, ptr %t211 call void @fn_emit(ptr %t225) - call void @fn_emit(ptr @.str13147) - call void @fn_emit(ptr @.str13148) + call void @fn_emit(ptr @.str13267) + call void @fn_emit(ptr @.str13268) %t226 = load ptr, ptr %t217 call void @fn_emit(ptr %t226) - call void @fn_emit(ptr @.str13149) + call void @fn_emit(ptr @.str13269) %t227 = load i32, ptr %t186 %t228 = add i32 %t227, 1 store i32 %t228, ptr %t186 br label %wcond38 wend40: - call void @fn_emit(ptr @.str13150) + call void @fn_emit(ptr @.str13270) %t229 = load ptr, ptr %t1 call void @fn_emit(ptr %t229) - call void @fn_emit(ptr @.str13151) - call void @fn_emit(ptr @.str13152) + call void @fn_emit(ptr @.str13271) + call void @fn_emit(ptr @.str13272) %t230 = load ptr, ptr %t179 call void @fn_emit(ptr %t230) - call void @fn_emit(ptr @.str13153) + call void @fn_emit(ptr @.str13273) %t231 = load i32, ptr %t36 %t232 = add i32 %t231, 1 store i32 %t232, ptr %t36 @@ -170689,11 +171341,11 @@ ifend35: store i32 %t234, ptr %t5 br label %wcond28 wend30: - call void @fn_emit(ptr @.str13154) + call void @fn_emit(ptr @.str13274) %t235 = load ptr, ptr %t1 call void @fn_emit(ptr %t235) - call void @fn_emit(ptr @.str13155) - call void @fn_emit(ptr @.str13156) + call void @fn_emit(ptr @.str13275) + call void @fn_emit(ptr @.str13276) store i32 0, ptr %t36 store i32 0, ptr %t5 br label %wcond43 @@ -170717,7 +171369,7 @@ wbody44: br i1 %t249, label %ixok46, label %ixbad47 ixbad47: %t250 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t250, ptr @.fmt_bounds, ptr @.str13157, i32 %t244, i32 %t248) + call i32 (ptr, ptr, ...) @fprintf(ptr %t250, ptr @.fmt_bounds, ptr @.str13277, i32 %t244, i32 %t248) call void @exit(i32 1) unreachable ixok46: @@ -170740,7 +171392,7 @@ then48: br i1 %t264, label %ixok51, label %ixbad52 ixbad52: %t265 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t265, ptr @.fmt_bounds, ptr @.str13158, i32 %t259, i32 %t263) + call i32 (ptr, ptr, ...) @fprintf(ptr %t265, ptr @.fmt_bounds, ptr @.str13278, i32 %t259, i32 %t263) call void @exit(i32 1) unreachable ixok51: @@ -170750,27 +171402,27 @@ ixok51: %t269 = load i32, ptr %t36 %t270 = call ptr @fn_itoa(i32 %t269) store ptr %t270, ptr %t271 - call void @fn_emit(ptr @.str13159) + call void @fn_emit(ptr @.str13279) %t272 = load ptr, ptr %t271 call void @fn_emit(ptr %t272) - call void @fn_emit(ptr @.str13160) + call void @fn_emit(ptr @.str13280) %t273 = load ptr, ptr %t271 call void @fn_emit(ptr %t273) - call void @fn_emit(ptr @.str13161) - call void @fn_emit(ptr @.str13162) + call void @fn_emit(ptr @.str13281) + call void @fn_emit(ptr @.str13282) %t274 = load ptr, ptr %t271 call void @fn_emit(ptr %t274) - call void @fn_emit(ptr @.str13163) + call void @fn_emit(ptr @.str13283) %t275 = load ptr, ptr %t271 call void @fn_emit(ptr %t275) - call void @fn_emit(ptr @.str13164) + call void @fn_emit(ptr @.str13284) %t276 = load ptr, ptr %t271 call void @fn_emit(ptr %t276) - call void @fn_emit(ptr @.str13165) - call void @fn_emit(ptr @.str13166) + call void @fn_emit(ptr @.str13285) + call void @fn_emit(ptr @.str13286) %t277 = load ptr, ptr %t271 call void @fn_emit(ptr %t277) - call void @fn_emit(ptr @.str13167) + call void @fn_emit(ptr @.str13287) store i32 0, ptr %t278 br label %wcond53 wcond53: @@ -170797,7 +171449,7 @@ wbody54: br i1 %t296, label %ixok56, label %ixbad57 ixbad57: %t297 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t297, ptr @.fmt_bounds, ptr @.str13168, i32 %t291, i32 %t295) + call i32 (ptr, ptr, ...) @fprintf(ptr %t297, ptr @.fmt_bounds, ptr @.str13288, i32 %t291, i32 %t295) call void @exit(i32 1) unreachable ixok56: @@ -170808,53 +171460,53 @@ ixok56: %t302 = call ptr @fn_emit_str_const(ptr %t301) store ptr %t302, ptr %t303 %t304 = load ptr, ptr %t271 - %t305 = call ptr @lp_str_concat(ptr %t304, ptr @.str13169) + %t305 = call ptr @lp_str_concat(ptr %t304, ptr @.str13289) %t306 = load i32, ptr %t278 %t307 = call ptr @fn_itoa(i32 %t306) %t308 = call ptr @lp_str_concat(ptr %t305, ptr %t307) store ptr %t308, ptr %t309 - call void @fn_emit(ptr @.str13170) + call void @fn_emit(ptr @.str13290) %t310 = load ptr, ptr %t309 call void @fn_emit(ptr %t310) - call void @fn_emit(ptr @.str13171) + call void @fn_emit(ptr @.str13291) %t311 = load i32, ptr %t278 %t312 = call ptr @fn_itoa(i32 %t311) call void @fn_emit(ptr %t312) - call void @fn_emit(ptr @.str13172) - call void @fn_emit(ptr @.str13173) + call void @fn_emit(ptr @.str13292) + call void @fn_emit(ptr @.str13293) %t313 = load ptr, ptr %t309 call void @fn_emit(ptr %t313) - call void @fn_emit(ptr @.str13174) + call void @fn_emit(ptr @.str13294) %t314 = load ptr, ptr %t309 call void @fn_emit(ptr %t314) - call void @fn_emit(ptr @.str13175) + call void @fn_emit(ptr @.str13295) %t315 = load ptr, ptr %t309 call void @fn_emit(ptr %t315) - call void @fn_emit(ptr @.str13176) - call void @fn_emit(ptr @.str13177) + call void @fn_emit(ptr @.str13296) + call void @fn_emit(ptr @.str13297) %t316 = load ptr, ptr %t309 call void @fn_emit(ptr %t316) - call void @fn_emit(ptr @.str13178) + call void @fn_emit(ptr @.str13298) %t317 = load ptr, ptr %t303 call void @fn_emit(ptr %t317) - call void @fn_emit(ptr @.str13179) - call void @fn_emit(ptr @.str13180) + call void @fn_emit(ptr @.str13299) + call void @fn_emit(ptr @.str13300) %t318 = load ptr, ptr %t309 call void @fn_emit(ptr %t318) - call void @fn_emit(ptr @.str13181) + call void @fn_emit(ptr @.str13301) %t319 = load i32, ptr %t278 %t320 = add i32 %t319, 1 store i32 %t320, ptr %t278 br label %wcond53 wend55: - call void @fn_emit(ptr @.str13182) + call void @fn_emit(ptr @.str13302) %t321 = load ptr, ptr %t3 call void @fn_emit(ptr %t321) - call void @fn_emit(ptr @.str13183) - call void @fn_emit(ptr @.str13184) + call void @fn_emit(ptr @.str13303) + call void @fn_emit(ptr @.str13304) %t322 = load ptr, ptr %t271 call void @fn_emit(ptr %t322) - call void @fn_emit(ptr @.str13185) + call void @fn_emit(ptr @.str13305) %t323 = load i32, ptr %t36 %t324 = add i32 %t323, 1 store i32 %t324, ptr %t36 @@ -170865,10 +171517,10 @@ ifend50: store i32 %t326, ptr %t5 br label %wcond43 wend45: - call void @fn_emit(ptr @.str13186) + call void @fn_emit(ptr @.str13306) %t327 = load ptr, ptr %t3 call void @fn_emit(ptr %t327) - call void @fn_emit(ptr @.str13187) + call void @fn_emit(ptr @.str13307) br label %ret ret: ret void @@ -170876,20 +171528,20 @@ ret: define void @fn_emit_tick_helpers() { entry: - call void @fn_emit(ptr @.str13188) + call void @fn_emit(ptr @.str13308) store i32 0, ptr @g_ll_t store i32 0, ptr @g_ll_lbl - call void @fn_emit_calls_for_phase(ptr @.str13189) - call void @fn_emit_calls_for_phase(ptr @.str13190) - call void @fn_emit_calls_for_phase(ptr @.str13191) - call void @fn_emit_calls_for_phase(ptr @.str13192) - call void @fn_emit(ptr @.str13193) - call void @fn_emit(ptr @.str13194) + call void @fn_emit_calls_for_phase(ptr @.str13309) + call void @fn_emit_calls_for_phase(ptr @.str13310) + call void @fn_emit_calls_for_phase(ptr @.str13311) + call void @fn_emit_calls_for_phase(ptr @.str13312) + call void @fn_emit(ptr @.str13313) + call void @fn_emit(ptr @.str13314) store i32 0, ptr @g_ll_t store i32 0, ptr @g_ll_lbl - call void @fn_emit_calls_for_phase(ptr @.str13195) - call void @fn_emit_calls_for_phase(ptr @.str13196) - call void @fn_emit(ptr @.str13197) + call void @fn_emit_calls_for_phase(ptr @.str13315) + call void @fn_emit_calls_for_phase(ptr @.str13316) + call void @fn_emit(ptr @.str13317) br label %ret ret: ret void @@ -170921,7 +171573,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13198, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13318, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -170944,7 +171596,7 @@ then5: br i1 %t29, label %ixok8, label %ixbad9 ixbad9: %t30 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str13199, i32 %t24, i32 %t28) + call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str13319, i32 %t24, i32 %t28) call void @exit(i32 1) unreachable ixok8: @@ -170982,360 +171634,367 @@ ret: define void @fn_emit_game_main() { entry: - %t15 = alloca i32 - %t58 = alloca ptr - %t63 = alloca ptr - %t72 = alloca ptr - %t77 = alloca ptr - %t84 = alloca ptr - %t87 = alloca i32 - %t102 = alloca ptr - %t112 = alloca ptr - %t114 = alloca i32 - %t126 = alloca ptr - %t131 = alloca i32 - %t144 = alloca ptr - %t151 = alloca i32 - %t166 = alloca ptr - %t171 = alloca ptr + %t17 = alloca i32 + %t60 = alloca ptr + %t65 = alloca ptr + %t74 = alloca ptr + %t79 = alloca ptr + %t86 = alloca ptr + %t89 = alloca i32 + %t104 = alloca ptr + %t114 = alloca ptr + %t116 = alloca i32 + %t128 = alloca ptr + %t133 = alloca i32 + %t146 = alloca ptr + %t153 = alloca i32 + %t168 = alloca ptr + %t173 = alloca ptr call void @fn_emit_game_defs() - call void @fn_emit(ptr @.str13200) - call void @fn_emit(ptr @.str13201) - call void @fn_emit(ptr @.str13202) - call void @fn_emit(ptr @.str13203) - %t0 = call ptr @fn_find_fn(ptr @.str13204) - %t1 = icmp ne ptr %t0, null - %t2 = zext i1 %t1 to i32 - %t3 = icmp ne i32 %t2, 0 - br i1 %t3, label %then0, label %ifend2 + call void @fn_emit(ptr @.str13320) + call void @fn_emit(ptr @.str13321) + call void @fn_emit(ptr @.str13322) + call void @fn_emit(ptr @.str13323) + %t0 = call i32 @fn_has_ecs() + %t1 = icmp ne i32 %t0, 0 + br i1 %t1, label %then0, label %ifend2 then0: - %t4 = call ptr @fn_fn_sym(ptr @.str13206) - %t5 = call ptr @lp_str_concat(ptr @.str13205, ptr %t4) - %t6 = call ptr @lp_str_concat(ptr %t5, ptr @.str13207) - call void @fn_emit(ptr %t6) + call void @fn_emit(ptr @.str13324) br label %ifend2 ifend2: - call void @fn_emit(ptr @.str13208) - call void @fn_emit_calls_for_phase(ptr @.str13209) - %t7 = load ptr, ptr @g_g_scenes - %t8 = getelementptr inbounds %LSlice, ptr %t7, i32 0, i32 1 - %t9 = load i32, ptr %t8 - %t10 = icmp sgt i32 %t9, 0 - %t11 = zext i1 %t10 to i32 - %t12 = icmp ne i32 %t11, 0 - br i1 %t12, label %then3, label %ifend5 + %t2 = call ptr @fn_find_fn(ptr @.str13325) + %t3 = icmp ne ptr %t2, null + %t4 = zext i1 %t3 to i32 + %t5 = icmp ne i32 %t4, 0 + br i1 %t5, label %then3, label %ifend5 then3: - call void @fn_emit(ptr @.str13210) - %t13 = load i32, ptr @g_g_start_scene - %t14 = call ptr @fn_itoa(i32 %t13) - call void @fn_emit(ptr %t14) - call void @fn_emit(ptr @.str13211) - store i32 0, ptr %t15 - br label %wcond6 -wcond6: - %t16 = load i32, ptr %t15 - %t17 = load ptr, ptr @g_g_scenes - %t18 = getelementptr inbounds %LSlice, ptr %t17, i32 0, i32 1 - %t19 = load i32, ptr %t18 - %t20 = icmp slt i32 %t16, %t19 - %t21 = zext i1 %t20 to i32 - %t22 = icmp ne i32 %t21, 0 - br i1 %t22, label %wbody7, label %wend8 -wbody7: - %t23 = load ptr, ptr @g_g_scenes - %t24 = load i32, ptr %t15 - %t25 = getelementptr inbounds %LSlice, ptr %t23, i32 0, i32 0 - %t26 = load ptr, ptr %t25 - %t27 = getelementptr inbounds %LSlice, ptr %t23, i32 0, i32 1 - %t28 = load i32, ptr %t27 - %t29 = icmp ult i32 %t24, %t28 - br i1 %t29, label %ixok9, label %ixbad10 -ixbad10: - %t30 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str13212, i32 %t24, i32 %t28) - call void @exit(i32 1) - unreachable -ixok9: - %t31 = getelementptr inbounds ptr, ptr %t26, i32 %t24 - %t32 = load ptr, ptr %t31 - %t33 = getelementptr inbounds %Cmp_Node, ptr %t32, i32 0, i32 2 - %t34 = load i32, ptr %t33 - %t35 = load i32, ptr @g_g_start_scene - %t36 = icmp eq i32 %t34, %t35 - %t37 = zext i1 %t36 to i32 - %t38 = icmp ne i32 %t37, 0 - br i1 %t38, label %then11, label %ifend13 -then11: - call void @fn_emit(ptr @.str13213) - %t39 = load ptr, ptr @g_g_scenes - %t40 = load i32, ptr %t15 - %t41 = getelementptr inbounds %LSlice, ptr %t39, i32 0, i32 0 - %t42 = load ptr, ptr %t41 - %t43 = getelementptr inbounds %LSlice, ptr %t39, i32 0, i32 1 - %t44 = load i32, ptr %t43 - %t45 = icmp ult i32 %t40, %t44 - br i1 %t45, label %ixok14, label %ixbad15 -ixbad15: - %t46 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t46, ptr @.fmt_bounds, ptr @.str13214, i32 %t40, i32 %t44) - call void @exit(i32 1) - unreachable -ixok14: - %t47 = getelementptr inbounds ptr, ptr %t42, i32 %t40 - %t48 = load ptr, ptr %t47 - %t49 = getelementptr inbounds %Cmp_Node, ptr %t48, i32 0, i32 1 - %t50 = load ptr, ptr %t49 - call void @fn_emit(ptr %t50) - call void @fn_emit(ptr @.str13215) - br label %ifend13 -ifend13: - %t51 = load i32, ptr %t15 - %t52 = add i32 %t51, 1 - store i32 %t52, ptr %t15 - br label %wcond6 -wend8: + %t6 = call ptr @fn_fn_sym(ptr @.str13327) + %t7 = call ptr @lp_str_concat(ptr @.str13326, ptr %t6) + %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str13328) + call void @fn_emit(ptr %t8) br label %ifend5 ifend5: - %t53 = call ptr @fn_find_event(ptr @.str13216) - %t54 = icmp ne ptr %t53, null - %t55 = zext i1 %t54 to i32 - %t56 = icmp ne i32 %t55, 0 - br i1 %t56, label %then16, label %ifend18 -then16: - call void @fn_emit(ptr @.str13217) - br label %ifend18 -ifend18: - call void @fn_emit(ptr @.str13218) - call void @fn_emit(ptr @.str13219) - %t57 = call ptr @fn_emit_bind(ptr @.str13220) - store ptr %t57, ptr %t58 - %t59 = load ptr, ptr %t58 - %t60 = call ptr @lp_str_concat(ptr @.str13221, ptr %t59) - %t61 = call ptr @lp_str_concat(ptr %t60, ptr @.str13222) - %t62 = call ptr @fn_emit_bind(ptr %t61) - store ptr %t62, ptr %t63 - %t64 = call ptr @fn_find_fn(ptr @.str13223) - %t65 = icmp ne ptr %t64, null - %t66 = zext i1 %t65 to i32 - %t67 = icmp ne i32 %t66, 0 - br i1 %t67, label %then19, label %else20 + call void @fn_emit(ptr @.str13329) + call void @fn_emit_calls_for_phase(ptr @.str13330) + %t9 = load ptr, ptr @g_g_scenes + %t10 = getelementptr inbounds %LSlice, ptr %t9, i32 0, i32 1 + %t11 = load i32, ptr %t10 + %t12 = icmp sgt i32 %t11, 0 + %t13 = zext i1 %t12 to i32 + %t14 = icmp ne i32 %t13, 0 + br i1 %t14, label %then6, label %ifend8 +then6: + call void @fn_emit(ptr @.str13331) + %t15 = load i32, ptr @g_g_start_scene + %t16 = call ptr @fn_itoa(i32 %t15) + call void @fn_emit(ptr %t16) + call void @fn_emit(ptr @.str13332) + store i32 0, ptr %t17 + br label %wcond9 +wcond9: + %t18 = load i32, ptr %t17 + %t19 = load ptr, ptr @g_g_scenes + %t20 = getelementptr inbounds %LSlice, ptr %t19, i32 0, i32 1 + %t21 = load i32, ptr %t20 + %t22 = icmp slt i32 %t18, %t21 + %t23 = zext i1 %t22 to i32 + %t24 = icmp ne i32 %t23, 0 + br i1 %t24, label %wbody10, label %wend11 +wbody10: + %t25 = load ptr, ptr @g_g_scenes + %t26 = load i32, ptr %t17 + %t27 = getelementptr inbounds %LSlice, ptr %t25, i32 0, i32 0 + %t28 = load ptr, ptr %t27 + %t29 = getelementptr inbounds %LSlice, ptr %t25, i32 0, i32 1 + %t30 = load i32, ptr %t29 + %t31 = icmp ult i32 %t26, %t30 + br i1 %t31, label %ixok12, label %ixbad13 +ixbad13: + %t32 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str13333, i32 %t26, i32 %t30) + call void @exit(i32 1) + unreachable +ixok12: + %t33 = getelementptr inbounds ptr, ptr %t28, i32 %t26 + %t34 = load ptr, ptr %t33 + %t35 = getelementptr inbounds %Cmp_Node, ptr %t34, i32 0, i32 2 + %t36 = load i32, ptr %t35 + %t37 = load i32, ptr @g_g_start_scene + %t38 = icmp eq i32 %t36, %t37 + %t39 = zext i1 %t38 to i32 + %t40 = icmp ne i32 %t39, 0 + br i1 %t40, label %then14, label %ifend16 +then14: + call void @fn_emit(ptr @.str13334) + %t41 = load ptr, ptr @g_g_scenes + %t42 = load i32, ptr %t17 + %t43 = getelementptr inbounds %LSlice, ptr %t41, i32 0, i32 0 + %t44 = load ptr, ptr %t43 + %t45 = getelementptr inbounds %LSlice, ptr %t41, i32 0, i32 1 + %t46 = load i32, ptr %t45 + %t47 = icmp ult i32 %t42, %t46 + br i1 %t47, label %ixok17, label %ixbad18 +ixbad18: + %t48 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t48, ptr @.fmt_bounds, ptr @.str13335, i32 %t42, i32 %t46) + call void @exit(i32 1) + unreachable +ixok17: + %t49 = getelementptr inbounds ptr, ptr %t44, i32 %t42 + %t50 = load ptr, ptr %t49 + %t51 = getelementptr inbounds %Cmp_Node, ptr %t50, i32 0, i32 1 + %t52 = load ptr, ptr %t51 + call void @fn_emit(ptr %t52) + call void @fn_emit(ptr @.str13336) + br label %ifend16 +ifend16: + %t53 = load i32, ptr %t17 + %t54 = add i32 %t53, 1 + store i32 %t54, ptr %t17 + br label %wcond9 +wend11: + br label %ifend8 +ifend8: + %t55 = call ptr @fn_find_event(ptr @.str13337) + %t56 = icmp ne ptr %t55, null + %t57 = zext i1 %t56 to i32 + %t58 = icmp ne i32 %t57, 0 + br i1 %t58, label %then19, label %ifend21 then19: - %t68 = call ptr @fn_fn_sym(ptr @.str13225) - %t69 = call ptr @lp_str_concat(ptr @.str13224, ptr %t68) - %t70 = call ptr @lp_str_concat(ptr %t69, ptr @.str13226) - %t71 = call ptr @fn_emit_bind(ptr %t70) - store ptr %t71, ptr %t72 - %t73 = load ptr, ptr %t72 - %t74 = call ptr @lp_str_concat(ptr @.str13227, ptr %t73) - %t75 = call ptr @lp_str_concat(ptr %t74, ptr @.str13228) - %t76 = call ptr @fn_emit_bind(ptr %t75) - store ptr %t76, ptr %t77 - %t78 = load ptr, ptr %t63 - %t79 = call ptr @lp_str_concat(ptr @.str13229, ptr %t78) - %t80 = call ptr @lp_str_concat(ptr %t79, ptr @.str13230) - %t81 = load ptr, ptr %t77 - %t82 = call ptr @lp_str_concat(ptr %t80, ptr %t81) - %t83 = call ptr @fn_emit_bind(ptr %t82) - store ptr %t83, ptr %t84 - call void @fn_emit(ptr @.str13231) - %t85 = load ptr, ptr %t84 - call void @fn_emit(ptr %t85) - call void @fn_emit(ptr @.str13232) - br label %ifend21 -else20: - call void @fn_emit(ptr @.str13233) - %t86 = load ptr, ptr %t63 - call void @fn_emit(ptr %t86) - call void @fn_emit(ptr @.str13234) + call void @fn_emit(ptr @.str13338) br label %ifend21 ifend21: - call void @fn_emit(ptr @.str13235) - %t88 = load i32, ptr @g_g_uses_input - %t89 = icmp ne i32 %t88, 0 - %t90 = zext i1 %t89 to i32 - store i32 %t90, ptr %t87 - br i1 %t89, label %sc22, label %scend23 -sc22: - %t91 = call ptr @fn_find_fn(ptr @.str13236) - %t92 = icmp ne ptr %t91, null - %t93 = zext i1 %t92 to i32 - %t94 = icmp ne i32 %t93, 0 + call void @fn_emit(ptr @.str13339) + call void @fn_emit(ptr @.str13340) + %t59 = call ptr @fn_emit_bind(ptr @.str13341) + store ptr %t59, ptr %t60 + %t61 = load ptr, ptr %t60 + %t62 = call ptr @lp_str_concat(ptr @.str13342, ptr %t61) + %t63 = call ptr @lp_str_concat(ptr %t62, ptr @.str13343) + %t64 = call ptr @fn_emit_bind(ptr %t63) + store ptr %t64, ptr %t65 + %t66 = call ptr @fn_find_fn(ptr @.str13344) + %t67 = icmp ne ptr %t66, null + %t68 = zext i1 %t67 to i32 + %t69 = icmp ne i32 %t68, 0 + br i1 %t69, label %then22, label %else23 +then22: + %t70 = call ptr @fn_fn_sym(ptr @.str13346) + %t71 = call ptr @lp_str_concat(ptr @.str13345, ptr %t70) + %t72 = call ptr @lp_str_concat(ptr %t71, ptr @.str13347) + %t73 = call ptr @fn_emit_bind(ptr %t72) + store ptr %t73, ptr %t74 + %t75 = load ptr, ptr %t74 + %t76 = call ptr @lp_str_concat(ptr @.str13348, ptr %t75) + %t77 = call ptr @lp_str_concat(ptr %t76, ptr @.str13349) + %t78 = call ptr @fn_emit_bind(ptr %t77) + store ptr %t78, ptr %t79 + %t80 = load ptr, ptr %t65 + %t81 = call ptr @lp_str_concat(ptr @.str13350, ptr %t80) + %t82 = call ptr @lp_str_concat(ptr %t81, ptr @.str13351) + %t83 = load ptr, ptr %t79 + %t84 = call ptr @lp_str_concat(ptr %t82, ptr %t83) + %t85 = call ptr @fn_emit_bind(ptr %t84) + store ptr %t85, ptr %t86 + call void @fn_emit(ptr @.str13352) + %t87 = load ptr, ptr %t86 + call void @fn_emit(ptr %t87) + call void @fn_emit(ptr @.str13353) + br label %ifend24 +else23: + call void @fn_emit(ptr @.str13354) + %t88 = load ptr, ptr %t65 + call void @fn_emit(ptr %t88) + call void @fn_emit(ptr @.str13355) + br label %ifend24 +ifend24: + call void @fn_emit(ptr @.str13356) + %t90 = load i32, ptr @g_g_uses_input + %t91 = icmp ne i32 %t90, 0 + %t92 = zext i1 %t91 to i32 + store i32 %t92, ptr %t89 + br i1 %t91, label %sc25, label %scend26 +sc25: + %t93 = call ptr @fn_find_fn(ptr @.str13357) + %t94 = icmp ne ptr %t93, null %t95 = zext i1 %t94 to i32 - store i32 %t95, ptr %t87 - br label %scend23 -scend23: - %t96 = load i32, ptr %t87 - %t97 = icmp ne i32 %t96, 0 - br i1 %t97, label %then24, label %else25 -then24: - %t98 = call ptr @fn_fn_sym(ptr @.str13238) - %t99 = call ptr @lp_str_concat(ptr @.str13237, ptr %t98) - %t100 = call ptr @lp_str_concat(ptr %t99, ptr @.str13239) - %t101 = call ptr @fn_emit_bind(ptr %t100) - store ptr %t101, ptr %t102 - call void @fn_emit(ptr @.str13240) - %t103 = load ptr, ptr %t102 - call void @fn_emit(ptr %t103) - call void @fn_emit(ptr @.str13241) - br label %ifend26 -else25: - %t104 = call ptr @fn_find_fn(ptr @.str13242) - %t105 = icmp ne ptr %t104, null - %t106 = zext i1 %t105 to i32 - %t107 = icmp ne i32 %t106, 0 - br i1 %t107, label %then27, label %ifend29 + %t96 = icmp ne i32 %t95, 0 + %t97 = zext i1 %t96 to i32 + store i32 %t97, ptr %t89 + br label %scend26 +scend26: + %t98 = load i32, ptr %t89 + %t99 = icmp ne i32 %t98, 0 + br i1 %t99, label %then27, label %else28 then27: - %t108 = call ptr @fn_fn_sym(ptr @.str13244) - %t109 = call ptr @lp_str_concat(ptr @.str13243, ptr %t108) - %t110 = call ptr @lp_str_concat(ptr %t109, ptr @.str13245) - %t111 = call ptr @fn_emit_bind(ptr %t110) - store ptr %t111, ptr %t112 - call void @fn_emit(ptr @.str13246) - %t113 = load ptr, ptr %t112 - call void @fn_emit(ptr %t113) - call void @fn_emit(ptr @.str13247) + %t100 = call ptr @fn_fn_sym(ptr @.str13359) + %t101 = call ptr @lp_str_concat(ptr @.str13358, ptr %t100) + %t102 = call ptr @lp_str_concat(ptr %t101, ptr @.str13360) + %t103 = call ptr @fn_emit_bind(ptr %t102) + store ptr %t103, ptr %t104 + call void @fn_emit(ptr @.str13361) + %t105 = load ptr, ptr %t104 + call void @fn_emit(ptr %t105) + call void @fn_emit(ptr @.str13362) + br label %ifend29 +else28: + %t106 = call ptr @fn_find_fn(ptr @.str13363) + %t107 = icmp ne ptr %t106, null + %t108 = zext i1 %t107 to i32 + %t109 = icmp ne i32 %t108, 0 + br i1 %t109, label %then30, label %ifend32 +then30: + %t110 = call ptr @fn_fn_sym(ptr @.str13365) + %t111 = call ptr @lp_str_concat(ptr @.str13364, ptr %t110) + %t112 = call ptr @lp_str_concat(ptr %t111, ptr @.str13366) + %t113 = call ptr @fn_emit_bind(ptr %t112) + store ptr %t113, ptr %t114 + call void @fn_emit(ptr @.str13367) + %t115 = load ptr, ptr %t114 + call void @fn_emit(ptr %t115) + call void @fn_emit(ptr @.str13368) + br label %ifend32 +ifend32: br label %ifend29 ifend29: - br label %ifend26 -ifend26: - %t115 = call i32 @fn_has_ui() - %t116 = icmp ne i32 %t115, 0 - %t117 = zext i1 %t116 to i32 - store i32 %t117, ptr %t114 - br i1 %t116, label %sc30, label %scend31 -sc30: - %t118 = call ptr @fn_find_fn(ptr @.str13248) - %t119 = icmp ne ptr %t118, null - %t120 = zext i1 %t119 to i32 - %t121 = icmp ne i32 %t120, 0 + %t117 = call i32 @fn_has_ui() + %t118 = icmp ne i32 %t117, 0 + %t119 = zext i1 %t118 to i32 + store i32 %t119, ptr %t116 + br i1 %t118, label %sc33, label %scend34 +sc33: + %t120 = call ptr @fn_find_fn(ptr @.str13369) + %t121 = icmp ne ptr %t120, null %t122 = zext i1 %t121 to i32 - store i32 %t122, ptr %t114 - br label %scend31 -scend31: - %t123 = load i32, ptr %t114 - %t124 = icmp ne i32 %t123, 0 - br i1 %t124, label %then32, label %ifend34 -then32: - %t125 = call ptr @fn_emit_bind(ptr @.str13249) - store ptr %t125, ptr %t126 - %t127 = call ptr @fn_fn_sym(ptr @.str13251) - %t128 = call ptr @lp_str_concat(ptr @.str13250, ptr %t127) - %t129 = call ptr @lp_str_concat(ptr %t128, ptr @.str13252) - call void @fn_emit(ptr %t129) - %t130 = load ptr, ptr %t126 - call void @fn_emit(ptr %t130) - call void @fn_emit(ptr @.str13253) - br label %ifend34 -ifend34: - call void @fn_emit_calls_for_phase(ptr @.str13254) - call void @fn_emit_calls_for_phase(ptr @.str13255) - call void @fn_emit_calls_for_phase(ptr @.str13256) - call void @fn_emit_calls_for_phase(ptr @.str13257) - %t132 = load i32, ptr @g_g_has_clear_color - %t133 = icmp ne i32 %t132, 0 - %t134 = zext i1 %t133 to i32 - store i32 %t134, ptr %t131 - br i1 %t133, label %sc35, label %scend36 -sc35: - %t135 = call ptr @fn_find_fn(ptr @.str13258) - %t136 = icmp ne ptr %t135, null - %t137 = zext i1 %t136 to i32 - %t138 = icmp ne i32 %t137, 0 + %t123 = icmp ne i32 %t122, 0 + %t124 = zext i1 %t123 to i32 + store i32 %t124, ptr %t116 + br label %scend34 +scend34: + %t125 = load i32, ptr %t116 + %t126 = icmp ne i32 %t125, 0 + br i1 %t126, label %then35, label %ifend37 +then35: + %t127 = call ptr @fn_emit_bind(ptr @.str13370) + store ptr %t127, ptr %t128 + %t129 = call ptr @fn_fn_sym(ptr @.str13372) + %t130 = call ptr @lp_str_concat(ptr @.str13371, ptr %t129) + %t131 = call ptr @lp_str_concat(ptr %t130, ptr @.str13373) + call void @fn_emit(ptr %t131) + %t132 = load ptr, ptr %t128 + call void @fn_emit(ptr %t132) + call void @fn_emit(ptr @.str13374) + br label %ifend37 +ifend37: + call void @fn_emit_calls_for_phase(ptr @.str13375) + call void @fn_emit_calls_for_phase(ptr @.str13376) + call void @fn_emit_calls_for_phase(ptr @.str13377) + call void @fn_emit_calls_for_phase(ptr @.str13378) + %t134 = load i32, ptr @g_g_has_clear_color + %t135 = icmp ne i32 %t134, 0 + %t136 = zext i1 %t135 to i32 + store i32 %t136, ptr %t133 + br i1 %t135, label %sc38, label %scend39 +sc38: + %t137 = call ptr @fn_find_fn(ptr @.str13379) + %t138 = icmp ne ptr %t137, null %t139 = zext i1 %t138 to i32 - store i32 %t139, ptr %t131 - br label %scend36 -scend36: - %t140 = load i32, ptr %t131 - %t141 = icmp ne i32 %t140, 0 - br i1 %t141, label %then37, label %ifend39 -then37: - %t142 = load ptr, ptr @g_g_clear_color - %t143 = call ptr @fn_emit_expr(ptr %t142) - store ptr %t143, ptr %t144 - %t145 = call ptr @fn_fn_sym(ptr @.str13260) - %t146 = call ptr @lp_str_concat(ptr @.str13259, ptr %t145) - %t147 = call ptr @lp_str_concat(ptr %t146, ptr @.str13261) - call void @fn_emit(ptr %t147) - %t148 = load ptr, ptr %t144 - %t149 = getelementptr inbounds %Cmp_Val, ptr %t148, i32 0, i32 0 - %t150 = load ptr, ptr %t149 - call void @fn_emit(ptr %t150) - call void @fn_emit(ptr @.str13262) - br label %ifend39 -ifend39: - call void @fn_emit_calls_for_phase(ptr @.str13263) - call void @fn_emit_calls_for_phase(ptr @.str13264) - %t152 = load i32, ptr @g_g_has_clear_color - %t153 = icmp ne i32 %t152, 0 - %t154 = zext i1 %t153 to i32 - store i32 %t154, ptr %t151 - br i1 %t153, label %sc40, label %scend41 -sc40: - %t155 = call ptr @fn_find_fn(ptr @.str13265) - %t156 = icmp ne ptr %t155, null - %t157 = zext i1 %t156 to i32 - %t158 = icmp ne i32 %t157, 0 + %t140 = icmp ne i32 %t139, 0 + %t141 = zext i1 %t140 to i32 + store i32 %t141, ptr %t133 + br label %scend39 +scend39: + %t142 = load i32, ptr %t133 + %t143 = icmp ne i32 %t142, 0 + br i1 %t143, label %then40, label %ifend42 +then40: + %t144 = load ptr, ptr @g_g_clear_color + %t145 = call ptr @fn_emit_expr(ptr %t144) + store ptr %t145, ptr %t146 + %t147 = call ptr @fn_fn_sym(ptr @.str13381) + %t148 = call ptr @lp_str_concat(ptr @.str13380, ptr %t147) + %t149 = call ptr @lp_str_concat(ptr %t148, ptr @.str13382) + call void @fn_emit(ptr %t149) + %t150 = load ptr, ptr %t146 + %t151 = getelementptr inbounds %Cmp_Val, ptr %t150, i32 0, i32 0 + %t152 = load ptr, ptr %t151 + call void @fn_emit(ptr %t152) + call void @fn_emit(ptr @.str13383) + br label %ifend42 +ifend42: + call void @fn_emit_calls_for_phase(ptr @.str13384) + call void @fn_emit_calls_for_phase(ptr @.str13385) + %t154 = load i32, ptr @g_g_has_clear_color + %t155 = icmp ne i32 %t154, 0 + %t156 = zext i1 %t155 to i32 + store i32 %t156, ptr %t153 + br i1 %t155, label %sc43, label %scend44 +sc43: + %t157 = call ptr @fn_find_fn(ptr @.str13386) + %t158 = icmp ne ptr %t157, null %t159 = zext i1 %t158 to i32 - store i32 %t159, ptr %t151 - br label %scend41 -scend41: - %t160 = load i32, ptr %t151 - %t161 = icmp ne i32 %t160, 0 - br i1 %t161, label %then42, label %ifend44 -then42: - %t162 = call ptr @fn_fn_sym(ptr @.str13267) - %t163 = call ptr @lp_str_concat(ptr @.str13266, ptr %t162) - %t164 = call ptr @lp_str_concat(ptr %t163, ptr @.str13268) - call void @fn_emit(ptr %t164) - br label %ifend44 -ifend44: - %t165 = call ptr @fn_emit_bind(ptr @.str13269) - store ptr %t165, ptr %t166 - %t167 = load ptr, ptr %t166 - %t168 = call ptr @lp_str_concat(ptr @.str13270, ptr %t167) - %t169 = call ptr @lp_str_concat(ptr %t168, ptr @.str13271) - %t170 = call ptr @fn_emit_bind(ptr %t169) - store ptr %t170, ptr %t171 - call void @fn_emit(ptr @.str13272) - %t172 = load ptr, ptr %t171 - call void @fn_emit(ptr %t172) - call void @fn_emit(ptr @.str13273) - call void @fn_emit(ptr @.str13274) - call void @fn_emit(ptr @.str13275) - %t173 = load ptr, ptr @g_g_ondespawn - %t174 = getelementptr inbounds %LSlice, ptr %t173, i32 0, i32 1 - %t175 = load i32, ptr %t174 - %t176 = icmp sgt i32 %t175, 0 - %t177 = zext i1 %t176 to i32 - %t178 = icmp ne i32 %t177, 0 - br i1 %t178, label %then45, label %ifend47 + %t160 = icmp ne i32 %t159, 0 + %t161 = zext i1 %t160 to i32 + store i32 %t161, ptr %t153 + br label %scend44 +scend44: + %t162 = load i32, ptr %t153 + %t163 = icmp ne i32 %t162, 0 + br i1 %t163, label %then45, label %ifend47 then45: - call void @fn_emit(ptr @.str13276) + %t164 = call ptr @fn_fn_sym(ptr @.str13388) + %t165 = call ptr @lp_str_concat(ptr @.str13387, ptr %t164) + %t166 = call ptr @lp_str_concat(ptr %t165, ptr @.str13389) + call void @fn_emit(ptr %t166) br label %ifend47 ifend47: - call void @fn_emit_calls_for_phase(ptr @.str13277) - %t179 = call ptr @fn_find_event(ptr @.str13278) - %t180 = icmp ne ptr %t179, null - %t181 = zext i1 %t180 to i32 - %t182 = icmp ne i32 %t181, 0 - br i1 %t182, label %then48, label %ifend50 + %t167 = call ptr @fn_emit_bind(ptr @.str13390) + store ptr %t167, ptr %t168 + %t169 = load ptr, ptr %t168 + %t170 = call ptr @lp_str_concat(ptr @.str13391, ptr %t169) + %t171 = call ptr @lp_str_concat(ptr %t170, ptr @.str13392) + %t172 = call ptr @fn_emit_bind(ptr %t171) + store ptr %t172, ptr %t173 + call void @fn_emit(ptr @.str13393) + %t174 = load ptr, ptr %t173 + call void @fn_emit(ptr %t174) + call void @fn_emit(ptr @.str13394) + call void @fn_emit(ptr @.str13395) + call void @fn_emit(ptr @.str13396) + %t175 = load ptr, ptr @g_g_ondespawn + %t176 = getelementptr inbounds %LSlice, ptr %t175, i32 0, i32 1 + %t177 = load i32, ptr %t176 + %t178 = icmp sgt i32 %t177, 0 + %t179 = zext i1 %t178 to i32 + %t180 = icmp ne i32 %t179, 0 + br i1 %t180, label %then48, label %ifend50 then48: - call void @fn_emit(ptr @.str13279) + call void @fn_emit(ptr @.str13397) br label %ifend50 ifend50: - %t183 = call ptr @fn_find_fn(ptr @.str13280) - %t184 = icmp ne ptr %t183, null - %t185 = zext i1 %t184 to i32 - %t186 = icmp ne i32 %t185, 0 - br i1 %t186, label %then51, label %ifend53 + call void @fn_emit_calls_for_phase(ptr @.str13398) + %t181 = call ptr @fn_find_event(ptr @.str13399) + %t182 = icmp ne ptr %t181, null + %t183 = zext i1 %t182 to i32 + %t184 = icmp ne i32 %t183, 0 + br i1 %t184, label %then51, label %ifend53 then51: - %t187 = call ptr @fn_fn_sym(ptr @.str13282) - %t188 = call ptr @lp_str_concat(ptr @.str13281, ptr %t187) - %t189 = call ptr @lp_str_concat(ptr %t188, ptr @.str13283) - call void @fn_emit(ptr %t189) + call void @fn_emit(ptr @.str13400) br label %ifend53 ifend53: - call void @fn_emit(ptr @.str13284) + %t185 = call ptr @fn_find_fn(ptr @.str13401) + %t186 = icmp ne ptr %t185, null + %t187 = zext i1 %t186 to i32 + %t188 = icmp ne i32 %t187, 0 + br i1 %t188, label %then54, label %ifend56 +then54: + %t189 = call ptr @fn_fn_sym(ptr @.str13403) + %t190 = call ptr @lp_str_concat(ptr @.str13402, ptr %t189) + %t191 = call ptr @lp_str_concat(ptr %t190, ptr @.str13404) + call void @fn_emit(ptr %t191) + br label %ifend56 +ifend56: + call void @fn_emit(ptr @.str13405) br label %ret ret: ret void @@ -171443,7 +172102,7 @@ then6: br i1 %t33, label %ixok9, label %ixbad10 ixbad10: %t34 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str13285, i32 %t28, i32 %t32) + call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str13406, i32 %t28, i32 %t32) call void @exit(i32 1) unreachable ixok9: @@ -171460,7 +172119,7 @@ ixok9: br i1 %t43, label %ixok11, label %ixbad12 ixbad12: %t44 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str13286, i32 %t38, i32 %t42) + call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str13407, i32 %t38, i32 %t42) call void @exit(i32 1) unreachable ixok11: @@ -171485,7 +172144,7 @@ then13: %t57 = load ptr, ptr %t0 %t58 = getelementptr inbounds %Cmp_Node, ptr %t57, i32 0, i32 1 %t59 = load ptr, ptr %t58 - %t60 = call ptr @lp_str_concat(ptr @.str13287, ptr %t59) + %t60 = call ptr @lp_str_concat(ptr @.str13408, ptr %t59) store ptr %t60, ptr %retval br label %ret ifend15: @@ -171581,8 +172240,8 @@ then11: %t51 = load ptr, ptr %t1 %t52 = getelementptr inbounds %Cmp_Node, ptr %t51, i32 0, i32 1 %t53 = load ptr, ptr %t52 - %t54 = call ptr @lp_str_concat(ptr @.str13288, ptr %t53) - %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str13289) + %t54 = call ptr @lp_str_concat(ptr @.str13409, ptr %t53) + %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str13410) %t56 = load ptr, ptr %t20 %t57 = call ptr @lp_str_concat(ptr %t55, ptr %t56) call void @fn_perr(ptr %t57) @@ -171620,7 +172279,7 @@ entry: %t3 = load ptr, ptr %t2 %t4 = call ptr @fn_machine_addr(ptr %t3) store ptr %t4, ptr %t5 - store ptr @.str13290, ptr %t6 + store ptr @.str13411, ptr %t6 %t7 = load ptr, ptr %t5 %t8 = icmp ne ptr %t7, null %t9 = zext i1 %t8 to i32 @@ -171628,7 +172287,7 @@ entry: br i1 %t10, label %then0, label %else1 then0: %t11 = load ptr, ptr %t5 - %t12 = call ptr @lp_str_concat(ptr @.str13291, ptr %t11) + %t12 = call ptr @lp_str_concat(ptr @.str13412, ptr %t11) %t13 = call ptr @fn_emit_bind(ptr %t12) store ptr %t13, ptr %t6 br label %ifend2 @@ -171638,14 +172297,14 @@ else1: %t16 = load ptr, ptr %t15 %t17 = call ptr @fn_emit_expr(ptr %t16) store ptr %t17, ptr %t18 - %t19 = call ptr @fn_fn_sym(ptr @.str13293) - %t20 = call ptr @lp_str_concat(ptr @.str13292, ptr %t19) - %t21 = call ptr @lp_str_concat(ptr %t20, ptr @.str13294) + %t19 = call ptr @fn_fn_sym(ptr @.str13414) + %t20 = call ptr @lp_str_concat(ptr @.str13413, ptr %t19) + %t21 = call ptr @lp_str_concat(ptr %t20, ptr @.str13415) %t22 = load ptr, ptr %t18 %t23 = getelementptr inbounds %Cmp_Val, ptr %t22, i32 0, i32 0 %t24 = load ptr, ptr %t23 %t25 = call ptr @lp_str_concat(ptr %t21, ptr %t24) - %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str13295) + %t26 = call ptr @lp_str_concat(ptr %t25, ptr @.str13416) %t27 = call ptr @fn_emit_bind(ptr %t26) store ptr %t27, ptr %t6 br label %ifend2 @@ -171669,7 +172328,7 @@ then3: br i1 %t41, label %ixok6, label %ixbad7 ixbad7: %t42 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str13296, i32 %t36, i32 %t40) + call i32 (ptr, ptr, ...) @fprintf(ptr %t42, ptr @.fmt_bounds, ptr @.str13417, i32 %t36, i32 %t40) call void @exit(i32 1) unreachable ixok6: @@ -171711,7 +172370,7 @@ ifend5: %t65 = load i32, ptr @g_nmach %t66 = add i32 %t65, 1 store i32 %t66, ptr @g_nmach - %t67 = call ptr @fn_lbl(ptr @.str13297) + %t67 = call ptr @fn_lbl(ptr @.str13418) store ptr %t67, ptr %t68 store i32 0, ptr %t69 br label %wcond10 @@ -171739,7 +172398,7 @@ wbody11: br i1 %t87, label %ixok13, label %ixbad14 ixbad14: %t88 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t88, ptr @.fmt_bounds, ptr @.str13298, i32 %t82, i32 %t86) + call i32 (ptr, ptr, ...) @fprintf(ptr %t88, ptr @.fmt_bounds, ptr @.str13419, i32 %t82, i32 %t86) call void @exit(i32 1) unreachable ixok13: @@ -171751,29 +172410,29 @@ ixok13: %t94 = call ptr @fn_machine_state_value(ptr %t92, ptr %t93) store ptr %t94, ptr %t95 %t96 = load ptr, ptr %t6 - %t97 = call ptr @lp_str_concat(ptr @.str13299, ptr %t96) - %t98 = call ptr @lp_str_concat(ptr %t97, ptr @.str13300) + %t97 = call ptr @lp_str_concat(ptr @.str13420, ptr %t96) + %t98 = call ptr @lp_str_concat(ptr %t97, ptr @.str13421) %t99 = load ptr, ptr %t95 %t100 = call ptr @lp_str_concat(ptr %t98, ptr %t99) %t101 = call ptr @fn_emit_bind(ptr %t100) store ptr %t101, ptr %t102 - %t103 = call ptr @fn_lbl(ptr @.str13301) + %t103 = call ptr @fn_lbl(ptr @.str13422) store ptr %t103, ptr %t104 - %t105 = call ptr @fn_lbl(ptr @.str13302) + %t105 = call ptr @fn_lbl(ptr @.str13423) store ptr %t105, ptr %t106 - call void @fn_emit(ptr @.str13303) + call void @fn_emit(ptr @.str13424) %t107 = load ptr, ptr %t102 call void @fn_emit(ptr %t107) - call void @fn_emit(ptr @.str13304) + call void @fn_emit(ptr @.str13425) %t108 = load ptr, ptr %t104 call void @fn_emit(ptr %t108) - call void @fn_emit(ptr @.str13305) + call void @fn_emit(ptr @.str13426) %t109 = load ptr, ptr %t106 call void @fn_emit(ptr %t109) - call void @fn_emit(ptr @.str13306) + call void @fn_emit(ptr @.str13427) %t110 = load ptr, ptr %t104 call void @fn_emit(ptr %t110) - call void @fn_emit(ptr @.str13307) + call void @fn_emit(ptr @.str13428) store i32 0, ptr @g_g_term %t111 = load ptr, ptr %t91 %t112 = getelementptr inbounds %Cmp_Node, ptr %t111, i32 0, i32 4 @@ -171785,15 +172444,15 @@ ixok13: %t117 = icmp ne i32 %t116, 0 br i1 %t117, label %then15, label %ifend17 then15: - call void @fn_emit(ptr @.str13308) + call void @fn_emit(ptr @.str13429) %t118 = load ptr, ptr %t68 call void @fn_emit(ptr %t118) - call void @fn_emit(ptr @.str13309) + call void @fn_emit(ptr @.str13430) br label %ifend17 ifend17: %t119 = load ptr, ptr %t106 call void @fn_emit(ptr %t119) - call void @fn_emit(ptr @.str13310) + call void @fn_emit(ptr @.str13431) store i32 0, ptr @g_g_term %t120 = load i32, ptr %t69 %t121 = add i32 %t120, 1 @@ -171806,15 +172465,15 @@ wend12: %t125 = icmp ne i32 %t124, 0 br i1 %t125, label %then18, label %ifend20 then18: - call void @fn_emit(ptr @.str13311) + call void @fn_emit(ptr @.str13432) %t126 = load ptr, ptr %t68 call void @fn_emit(ptr %t126) - call void @fn_emit(ptr @.str13312) + call void @fn_emit(ptr @.str13433) br label %ifend20 ifend20: %t127 = load ptr, ptr %t68 call void @fn_emit(ptr %t127) - call void @fn_emit(ptr @.str13313) + call void @fn_emit(ptr @.str13434) store i32 0, ptr @g_g_term %t128 = load i32, ptr @g_nmach %t129 = sub i32 %t128, 1 @@ -171852,7 +172511,7 @@ then0: br i1 %t12, label %ixok3, label %ixbad4 ixbad4: %t13 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t13, ptr @.fmt_bounds, ptr @.str13314, i32 %t7, i32 %t11) + call i32 (ptr, ptr, ...) @fprintf(ptr %t13, ptr @.fmt_bounds, ptr @.str13435, i32 %t7, i32 %t11) call void @exit(i32 1) unreachable ixok3: @@ -171886,7 +172545,7 @@ wbody6: br i1 %t36, label %ixok8, label %ixbad9 ixbad9: %t37 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t37, ptr @.fmt_bounds, ptr @.str13315, i32 %t31, i32 %t35) + call i32 (ptr, ptr, ...) @fprintf(ptr %t37, ptr @.fmt_bounds, ptr @.str13436, i32 %t31, i32 %t35) call void @exit(i32 1) unreachable ixok8: @@ -171913,7 +172572,7 @@ then10: br i1 %t55, label %ixok13, label %ixbad14 ixbad14: %t56 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t56, ptr @.fmt_bounds, ptr @.str13316, i32 %t50, i32 %t54) + call i32 (ptr, ptr, ...) @fprintf(ptr %t56, ptr @.fmt_bounds, ptr @.str13437, i32 %t50, i32 %t54) call void @exit(i32 1) unreachable ixok13: @@ -171949,11 +172608,11 @@ then15: br i1 %t77, label %then18, label %else19 then18: %t78 = load ptr, ptr %t68 - %t79 = call ptr @lp_str_concat(ptr @.str13317, ptr %t78) - %t80 = call ptr @lp_str_concat(ptr %t79, ptr @.str13318) + %t79 = call ptr @lp_str_concat(ptr @.str13438, ptr %t78) + %t80 = call ptr @lp_str_concat(ptr %t79, ptr @.str13439) %t81 = load ptr, ptr %t73 %t82 = call ptr @lp_str_concat(ptr %t80, ptr %t81) - %t83 = call ptr @lp_str_concat(ptr %t82, ptr @.str13319) + %t83 = call ptr @lp_str_concat(ptr %t82, ptr @.str13440) call void @fn_emit(ptr %t83) br label %ifend20 else19: @@ -171962,18 +172621,18 @@ else19: %t86 = load ptr, ptr %t85 %t87 = call ptr @fn_emit_expr(ptr %t86) store ptr %t87, ptr %t88 - %t89 = call ptr @fn_fn_sym(ptr @.str13321) - %t90 = call ptr @lp_str_concat(ptr @.str13320, ptr %t89) - %t91 = call ptr @lp_str_concat(ptr %t90, ptr @.str13322) + %t89 = call ptr @fn_fn_sym(ptr @.str13442) + %t90 = call ptr @lp_str_concat(ptr @.str13441, ptr %t89) + %t91 = call ptr @lp_str_concat(ptr %t90, ptr @.str13443) call void @fn_emit(ptr %t91) %t92 = load ptr, ptr %t88 %t93 = getelementptr inbounds %Cmp_Val, ptr %t92, i32 0, i32 0 %t94 = load ptr, ptr %t93 call void @fn_emit(ptr %t94) - call void @fn_emit(ptr @.str13323) + call void @fn_emit(ptr @.str13444) %t95 = load ptr, ptr %t68 call void @fn_emit(ptr %t95) - call void @fn_emit(ptr @.str13324) + call void @fn_emit(ptr @.str13445) br label %ifend20 ifend20: br label %ret @@ -171994,7 +172653,7 @@ then21: %t105 = load ptr, ptr %t0 %t106 = getelementptr inbounds %Cmp_Node, ptr %t105, i32 0, i32 1 %t107 = load ptr, ptr %t106 - %t108 = call ptr @lp_str_concat(ptr @.str13325, ptr %t107) + %t108 = call ptr @lp_str_concat(ptr @.str13446, ptr %t107) call void @fn_perr(ptr %t108) br label %ifend23 ifend23: @@ -172004,30 +172663,30 @@ ifend23: %t112 = icmp ne i32 %t111, 0 br i1 %t112, label %then24, label %else25 then24: - call void @fn_emit(ptr @.str13326) + call void @fn_emit(ptr @.str13447) %t113 = load ptr, ptr @g_g_cur_scene %t114 = getelementptr inbounds %Cmp_Node, ptr %t113, i32 0, i32 1 %t115 = load ptr, ptr %t114 call void @fn_emit(ptr %t115) - call void @fn_emit(ptr @.str13327) + call void @fn_emit(ptr @.str13448) br label %ifend26 else25: - call void @fn_emit(ptr @.str13328) + call void @fn_emit(ptr @.str13449) br label %ifend26 ifend26: - call void @fn_emit(ptr @.str13329) + call void @fn_emit(ptr @.str13450) %t116 = load ptr, ptr %t100 %t117 = getelementptr inbounds %Cmp_Node, ptr %t116, i32 0, i32 2 %t118 = load i32, ptr %t117 %t119 = call ptr @fn_itoa(i32 %t118) call void @fn_emit(ptr %t119) - call void @fn_emit(ptr @.str13330) - call void @fn_emit(ptr @.str13331) + call void @fn_emit(ptr @.str13451) + call void @fn_emit(ptr @.str13452) %t120 = load ptr, ptr %t100 %t121 = getelementptr inbounds %Cmp_Node, ptr %t120, i32 0, i32 1 %t122 = load ptr, ptr %t121 call void @fn_emit(ptr %t122) - call void @fn_emit(ptr @.str13332) + call void @fn_emit(ptr @.str13453) br label %ret ret: ret void @@ -172046,51 +172705,51 @@ entry: store ptr %arg_p, ptr %t1 store ptr %arg_bytes, ptr %t2 %t3 = load ptr, ptr @g_g_snap_mode - %t4 = call i32 @lp_str_eq(ptr %t3, ptr @.str13333) + %t4 = call i32 @lp_str_eq(ptr %t3, ptr @.str13454) %t5 = icmp ne i32 %t4, 0 br i1 %t5, label %then0, label %ifend2 then0: %t6 = load i32, ptr @g_g_iok %t7 = call ptr @fn_itoa(i32 %t6) - %t8 = call ptr @lp_str_concat(ptr @.str13334, ptr %t7) + %t8 = call ptr @lp_str_concat(ptr @.str13455, ptr %t7) store ptr %t8, ptr %t9 %t10 = load i32, ptr @g_g_iok %t11 = add i32 %t10, 1 store i32 %t11, ptr @g_g_iok - call void @fn_emit(ptr @.str13335) + call void @fn_emit(ptr @.str13456) %t12 = load ptr, ptr %t9 call void @fn_emit(ptr %t12) - call void @fn_emit(ptr @.str13336) + call void @fn_emit(ptr @.str13457) %t13 = load ptr, ptr %t0 call void @fn_emit(ptr %t13) - call void @fn_emit(ptr @.str13337) + call void @fn_emit(ptr @.str13458) %t14 = load ptr, ptr %t1 call void @fn_emit(ptr %t14) - call void @fn_emit(ptr @.str13338) + call void @fn_emit(ptr @.str13459) %t15 = load ptr, ptr %t2 call void @fn_emit(ptr %t15) - call void @fn_emit(ptr @.str13339) + call void @fn_emit(ptr @.str13460) br label %ret ifend2: %t16 = load ptr, ptr @g_g_snap_mode - %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str13340) + %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str13461) %t18 = icmp ne i32 %t17, 0 br i1 %t18, label %then3, label %ifend5 then3: %t19 = load i32, ptr @g_g_iok %t20 = call ptr @fn_itoa(i32 %t19) - %t21 = call ptr @lp_str_concat(ptr @.str13341, ptr %t20) + %t21 = call ptr @lp_str_concat(ptr @.str13462, ptr %t20) store ptr %t21, ptr %t22 - call void @fn_emit(ptr @.str13342) + call void @fn_emit(ptr @.str13463) %t23 = load ptr, ptr %t22 call void @fn_emit(ptr %t23) - call void @fn_emit(ptr @.str13343) + call void @fn_emit(ptr @.str13464) %t24 = load ptr, ptr @g_g_off call void @fn_emit(ptr %t24) - call void @fn_emit(ptr @.str13344) + call void @fn_emit(ptr @.str13465) %t25 = load ptr, ptr %t2 call void @fn_emit(ptr %t25) - call void @fn_emit(ptr @.str13345) + call void @fn_emit(ptr @.str13466) %t26 = load ptr, ptr %t22 store ptr %t26, ptr @g_g_off %t27 = load i32, ptr @g_g_iok @@ -172100,58 +172759,58 @@ then3: ifend5: %t29 = load i32, ptr @g_g_iok %t30 = call ptr @fn_itoa(i32 %t29) - %t31 = call ptr @lp_str_concat(ptr @.str13346, ptr %t30) + %t31 = call ptr @lp_str_concat(ptr @.str13467, ptr %t30) store ptr %t31, ptr %t32 - call void @fn_emit(ptr @.str13347) + call void @fn_emit(ptr @.str13468) %t33 = load ptr, ptr %t32 call void @fn_emit(ptr %t33) - call void @fn_emit(ptr @.str13348) + call void @fn_emit(ptr @.str13469) %t34 = load ptr, ptr @g_g_off call void @fn_emit(ptr %t34) - call void @fn_emit(ptr @.str13349) + call void @fn_emit(ptr @.str13470) %t35 = load ptr, ptr @g_g_snap_mode - %t36 = call i32 @lp_str_eq(ptr %t35, ptr @.str13350) + %t36 = call i32 @lp_str_eq(ptr %t35, ptr @.str13471) %t37 = icmp ne i32 %t36, 0 br i1 %t37, label %then6, label %else7 then6: - call void @fn_emit(ptr @.str13351) + call void @fn_emit(ptr @.str13472) %t38 = load ptr, ptr %t32 call void @fn_emit(ptr %t38) - call void @fn_emit(ptr @.str13352) + call void @fn_emit(ptr @.str13473) %t39 = load ptr, ptr %t1 call void @fn_emit(ptr %t39) - call void @fn_emit(ptr @.str13353) + call void @fn_emit(ptr @.str13474) %t40 = load ptr, ptr %t2 call void @fn_emit(ptr %t40) - call void @fn_emit(ptr @.str13354) + call void @fn_emit(ptr @.str13475) br label %ifend8 else7: - call void @fn_emit(ptr @.str13355) + call void @fn_emit(ptr @.str13476) %t41 = load ptr, ptr %t1 call void @fn_emit(ptr %t41) - call void @fn_emit(ptr @.str13356) + call void @fn_emit(ptr @.str13477) %t42 = load ptr, ptr %t32 call void @fn_emit(ptr %t42) - call void @fn_emit(ptr @.str13357) + call void @fn_emit(ptr @.str13478) %t43 = load ptr, ptr %t2 call void @fn_emit(ptr %t43) - call void @fn_emit(ptr @.str13358) + call void @fn_emit(ptr @.str13479) br label %ifend8 ifend8: %t44 = load i32, ptr @g_g_iok %t45 = call ptr @fn_itoa(i32 %t44) - %t46 = call ptr @lp_str_concat(ptr @.str13359, ptr %t45) + %t46 = call ptr @lp_str_concat(ptr @.str13480, ptr %t45) store ptr %t46, ptr %t47 - call void @fn_emit(ptr @.str13360) + call void @fn_emit(ptr @.str13481) %t48 = load ptr, ptr %t47 call void @fn_emit(ptr %t48) - call void @fn_emit(ptr @.str13361) + call void @fn_emit(ptr @.str13482) %t49 = load ptr, ptr @g_g_off call void @fn_emit(ptr %t49) - call void @fn_emit(ptr @.str13362) + call void @fn_emit(ptr @.str13483) %t50 = load ptr, ptr %t2 call void @fn_emit(ptr %t50) - call void @fn_emit(ptr @.str13363) + call void @fn_emit(ptr @.str13484) %t51 = load ptr, ptr %t47 store ptr %t51, ptr @g_g_off %t52 = load i32, ptr @g_g_iok @@ -172165,286 +172824,365 @@ ret: define void @fn_emit_snapshot_blocks(ptr %arg_fn2) { entry: %t0 = alloca ptr - %t2 = alloca ptr - %t12 = alloca i32 - %t51 = alloca i32 - %t86 = alloca ptr - %t90 = alloca ptr + %t1 = alloca i32 + %t11 = alloca i32 + %t31 = alloca i32 + %t70 = alloca i32 + %t105 = alloca ptr + %t109 = alloca ptr + %t113 = alloca ptr store ptr %arg_fn2, ptr %t0 store i32 0, ptr @g_g_iok - store ptr @.str13364, ptr @g_g_off - %t1 = call ptr @fn_itoa(i32 1024) - store ptr %t1, ptr %t2 - %t3 = load ptr, ptr %t0 - call void @fn_emit_io(ptr %t3, ptr @.str13365, ptr @.str13366) - %t4 = load ptr, ptr %t0 - call void @fn_emit_io(ptr %t4, ptr @.str13367, ptr @.str13368) - call void @fn_emit(ptr @.str13369) - %t5 = load ptr, ptr %t2 - call void @fn_emit(ptr %t5) - call void @fn_emit(ptr @.str13370) - %t6 = load ptr, ptr %t0 - call void @fn_emit_io(ptr %t6, ptr @.str13371, ptr @.str13372) - %t7 = load ptr, ptr %t0 - call void @fn_emit_io(ptr %t7, ptr @.str13373, ptr @.str13374) - %t8 = load ptr, ptr %t0 - call void @fn_emit_io(ptr %t8, ptr @.str13375, ptr @.str13376) - %t9 = call i32 @fn_net_has_owned() - %t10 = icmp ne i32 %t9, 0 - br i1 %t10, label %then0, label %ifend2 -then0: - %t11 = load ptr, ptr %t0 - call void @fn_emit_io(ptr %t11, ptr @.str13377, ptr @.str13378) - br label %ifend2 -ifend2: - store i32 0, ptr %t12 - br label %wcond3 -wcond3: - %t13 = load i32, ptr %t12 - %t14 = load ptr, ptr @g_prog - %t15 = getelementptr inbounds %LSlice, ptr %t14, i32 0, i32 1 - %t16 = load i32, ptr %t15 - %t17 = icmp slt i32 %t13, %t16 - %t18 = zext i1 %t17 to i32 - %t19 = icmp ne i32 %t18, 0 - br i1 %t19, label %wbody4, label %wend5 -wbody4: - %t20 = load ptr, ptr @g_prog - %t21 = load i32, ptr %t12 - %t22 = getelementptr inbounds %LSlice, ptr %t20, i32 0, i32 0 - %t23 = load ptr, ptr %t22 - %t24 = getelementptr inbounds %LSlice, ptr %t20, i32 0, i32 1 - %t25 = load i32, ptr %t24 - %t26 = icmp ult i32 %t21, %t25 - br i1 %t26, label %ixok6, label %ixbad7 -ixbad7: - %t27 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t27, ptr @.fmt_bounds, ptr @.str13379, i32 %t21, i32 %t25) - call void @exit(i32 1) - unreachable -ixok6: - %t28 = getelementptr inbounds ptr, ptr %t23, i32 %t21 - %t29 = load ptr, ptr %t28 - %t30 = getelementptr inbounds %Cmp_Node, ptr %t29, i32 0, i32 0 - %t31 = load i32, ptr %t30 - %t32 = icmp eq i32 %t31, 2 - %t33 = zext i1 %t32 to i32 - %t34 = icmp ne i32 %t33, 0 - br i1 %t34, label %then8, label %ifend10 + store ptr @.str13485, ptr @g_g_off + %t2 = load ptr, ptr %t0 + %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str13486) + %t4 = icmp ne i32 %t3, 0 + %t5 = zext i1 %t4 to i32 + store i32 %t5, ptr %t1 + br i1 %t4, label %scend1, label %sc0 +sc0: + %t6 = load ptr, ptr @g_g_snap_mode + %t7 = call i32 @lp_str_eq(ptr %t6, ptr @.str13487) + %t8 = icmp ne i32 %t7, 0 + %t9 = zext i1 %t8 to i32 + store i32 %t9, ptr %t1 + br label %scend1 +scend1: + %t10 = load i32, ptr %t1 + store i32 %t10, ptr %t11 + %t12 = load i32, ptr %t11 + %t13 = icmp eq i32 %t12, 0 + %t14 = zext i1 %t13 to i32 + %t15 = icmp ne i32 %t14, 0 + br i1 %t15, label %then2, label %ifend4 +then2: + call void @fn_emit(ptr @.str13488) + br label %ifend4 +ifend4: + %t16 = load ptr, ptr %t0 + call void @fn_emit_io(ptr %t16, ptr @.str13489, ptr @.str13490) + call void @fn_emit(ptr @.str13491) + %t17 = load i32, ptr %t11 + %t18 = icmp ne i32 %t17, 0 + br i1 %t18, label %then5, label %ifend7 +then5: + call void @fn_emit(ptr @.str13492) + br label %ifend7 +ifend7: + call void @fn_emit(ptr @.str13493) + %t19 = load ptr, ptr %t0 + call void @fn_emit_io(ptr %t19, ptr @.str13494, ptr @.str13495) + %t20 = load ptr, ptr %t0 + call void @fn_emit_io(ptr %t20, ptr @.str13496, ptr @.str13497) + call void @fn_emit(ptr @.str13498) + %t21 = load ptr, ptr %t0 + %t22 = call ptr @fn_snap_base(ptr @.str13499, i32 0) + call void @fn_emit_io(ptr %t21, ptr %t22, ptr @.str13500) + %t23 = load ptr, ptr %t0 + %t24 = call ptr @fn_snap_base(ptr @.str13501, i32 1) + call void @fn_emit_io(ptr %t23, ptr %t24, ptr @.str13502) + %t25 = load ptr, ptr %t0 + %t26 = call ptr @fn_snap_base(ptr @.str13503, i32 2) + call void @fn_emit_io(ptr %t25, ptr %t26, ptr @.str13504) + %t27 = call i32 @fn_net_has_owned() + %t28 = icmp ne i32 %t27, 0 + br i1 %t28, label %then8, label %ifend10 then8: - %t35 = load ptr, ptr %t0 - %t36 = load ptr, ptr @g_prog - %t37 = load i32, ptr %t12 - %t38 = getelementptr inbounds %LSlice, ptr %t36, i32 0, i32 0 - %t39 = load ptr, ptr %t38 - %t40 = getelementptr inbounds %LSlice, ptr %t36, i32 0, i32 1 - %t41 = load i32, ptr %t40 - %t42 = icmp ult i32 %t37, %t41 - br i1 %t42, label %ixok11, label %ixbad12 -ixbad12: - %t43 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13381, i32 %t37, i32 %t41) - call void @exit(i32 1) - unreachable -ixok11: - %t44 = getelementptr inbounds ptr, ptr %t39, i32 %t37 - %t45 = load ptr, ptr %t44 - %t46 = getelementptr inbounds %Cmp_Node, ptr %t45, i32 0, i32 1 - %t47 = load ptr, ptr %t46 - %t48 = call ptr @lp_str_concat(ptr @.str13380, ptr %t47) - call void @fn_emit_io(ptr %t35, ptr %t48, ptr @.str13382) + %t29 = load ptr, ptr %t0 + %t30 = call ptr @fn_snap_base(ptr @.str13505, i32 3) + call void @fn_emit_io(ptr %t29, ptr %t30, ptr @.str13506) br label %ifend10 ifend10: - %t49 = load i32, ptr %t12 - %t50 = add i32 %t49, 1 - store i32 %t50, ptr %t12 - br label %wcond3 -wend5: - store i32 0, ptr %t51 - store i32 0, ptr %t12 - br label %wcond13 -wcond13: - %t52 = load i32, ptr %t12 - %t53 = load ptr, ptr @g_prog - %t54 = getelementptr inbounds %LSlice, ptr %t53, i32 0, i32 1 - %t55 = load i32, ptr %t54 - %t56 = icmp slt i32 %t52, %t55 - %t57 = zext i1 %t56 to i32 - %t58 = icmp ne i32 %t57, 0 - br i1 %t58, label %wbody14, label %wend15 -wbody14: - %t59 = load ptr, ptr @g_prog - %t60 = load i32, ptr %t12 - %t61 = getelementptr inbounds %LSlice, ptr %t59, i32 0, i32 0 - %t62 = load ptr, ptr %t61 - %t63 = getelementptr inbounds %LSlice, ptr %t59, i32 0, i32 1 - %t64 = load i32, ptr %t63 - %t65 = icmp ult i32 %t60, %t64 - br i1 %t65, label %ixok16, label %ixbad17 -ixbad17: - %t66 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t66, ptr @.fmt_bounds, ptr @.str13383, i32 %t60, i32 %t64) + store i32 0, ptr %t31 + br label %wcond11 +wcond11: + %t32 = load i32, ptr %t31 + %t33 = load ptr, ptr @g_prog + %t34 = getelementptr inbounds %LSlice, ptr %t33, i32 0, i32 1 + %t35 = load i32, ptr %t34 + %t36 = icmp slt i32 %t32, %t35 + %t37 = zext i1 %t36 to i32 + %t38 = icmp ne i32 %t37, 0 + br i1 %t38, label %wbody12, label %wend13 +wbody12: + %t39 = load ptr, ptr @g_prog + %t40 = load i32, ptr %t31 + %t41 = getelementptr inbounds %LSlice, ptr %t39, i32 0, i32 0 + %t42 = load ptr, ptr %t41 + %t43 = getelementptr inbounds %LSlice, ptr %t39, i32 0, i32 1 + %t44 = load i32, ptr %t43 + %t45 = icmp ult i32 %t40, %t44 + br i1 %t45, label %ixok14, label %ixbad15 +ixbad15: + %t46 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t46, ptr @.fmt_bounds, ptr @.str13507, i32 %t40, i32 %t44) call void @exit(i32 1) unreachable -ixok16: - %t67 = getelementptr inbounds ptr, ptr %t62, i32 %t60 - %t68 = load ptr, ptr %t67 - %t69 = getelementptr inbounds %Cmp_Node, ptr %t68, i32 0, i32 0 - %t70 = load i32, ptr %t69 - %t71 = icmp eq i32 %t70, 8 - %t72 = zext i1 %t71 to i32 - %t73 = icmp ne i32 %t72, 0 - br i1 %t73, label %then18, label %ifend20 -then18: - %t74 = load ptr, ptr @g_prog - %t75 = load i32, ptr %t12 - %t76 = getelementptr inbounds %LSlice, ptr %t74, i32 0, i32 0 - %t77 = load ptr, ptr %t76 - %t78 = getelementptr inbounds %LSlice, ptr %t74, i32 0, i32 1 - %t79 = load i32, ptr %t78 - %t80 = icmp ult i32 %t75, %t79 - br i1 %t80, label %ixok21, label %ixbad22 -ixbad22: - %t81 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t81, ptr @.fmt_bounds, ptr @.str13384, i32 %t75, i32 %t79) +ixok14: + %t47 = getelementptr inbounds ptr, ptr %t42, i32 %t40 + %t48 = load ptr, ptr %t47 + %t49 = getelementptr inbounds %Cmp_Node, ptr %t48, i32 0, i32 0 + %t50 = load i32, ptr %t49 + %t51 = icmp eq i32 %t50, 2 + %t52 = zext i1 %t51 to i32 + %t53 = icmp ne i32 %t52, 0 + br i1 %t53, label %then16, label %ifend18 +then16: + %t54 = load ptr, ptr %t0 + %t55 = load ptr, ptr @g_prog + %t56 = load i32, ptr %t31 + %t57 = getelementptr inbounds %LSlice, ptr %t55, i32 0, i32 0 + %t58 = load ptr, ptr %t57 + %t59 = getelementptr inbounds %LSlice, ptr %t55, i32 0, i32 1 + %t60 = load i32, ptr %t59 + %t61 = icmp ult i32 %t56, %t60 + br i1 %t61, label %ixok19, label %ixbad20 +ixbad20: + %t62 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t62, ptr @.fmt_bounds, ptr @.str13509, i32 %t56, i32 %t60) call void @exit(i32 1) unreachable -ixok21: - %t82 = getelementptr inbounds ptr, ptr %t77, i32 %t75 - %t83 = load ptr, ptr %t82 - %t84 = getelementptr inbounds %Cmp_Node, ptr %t83, i32 0, i32 1 - %t85 = load ptr, ptr %t84 - store ptr %t85, ptr %t86 - %t87 = load i32, ptr %t51 - %t88 = call ptr @fn_itoa(i32 %t87) - %t89 = call ptr @lp_str_concat(ptr @.str13385, ptr %t88) - store ptr %t89, ptr %t90 - call void @fn_emit(ptr @.str13386) - %t91 = load ptr, ptr %t90 - call void @fn_emit(ptr %t91) - call void @fn_emit(ptr @.str13387) - %t92 = load ptr, ptr %t86 - call void @fn_emit(ptr %t92) - call void @fn_emit(ptr @.str13388) - %t93 = load ptr, ptr %t2 - call void @fn_emit(ptr %t93) - call void @fn_emit(ptr @.str13389) - %t94 = load ptr, ptr %t0 - %t95 = load ptr, ptr %t86 - %t96 = call ptr @lp_str_concat(ptr @.str13390, ptr %t95) - %t97 = load ptr, ptr %t90 - call void @fn_emit_io(ptr %t94, ptr %t96, ptr %t97) - %t98 = load ptr, ptr %t0 - %t99 = load ptr, ptr %t86 - %t100 = call ptr @lp_str_concat(ptr @.str13391, ptr %t99) - %t101 = load ptr, ptr %t2 - call void @fn_emit_io(ptr %t98, ptr %t100, ptr %t101) - %t102 = load i32, ptr %t51 - %t103 = add i32 %t102, 1 - store i32 %t103, ptr %t51 - br label %ifend20 -ifend20: - %t104 = load i32, ptr %t12 - %t105 = add i32 %t104, 1 - store i32 %t105, ptr %t12 - br label %wcond13 -wend15: +ixok19: + %t63 = getelementptr inbounds ptr, ptr %t58, i32 %t56 + %t64 = load ptr, ptr %t63 + %t65 = getelementptr inbounds %Cmp_Node, ptr %t64, i32 0, i32 1 + %t66 = load ptr, ptr %t65 + %t67 = call ptr @lp_str_concat(ptr @.str13508, ptr %t66) + call void @fn_emit_io(ptr %t54, ptr %t67, ptr @.str13510) + br label %ifend18 +ifend18: + %t68 = load i32, ptr %t31 + %t69 = add i32 %t68, 1 + store i32 %t69, ptr %t31 + br label %wcond11 +wend13: + store i32 0, ptr %t70 + store i32 0, ptr %t31 + br label %wcond21 +wcond21: + %t71 = load i32, ptr %t31 + %t72 = load ptr, ptr @g_prog + %t73 = getelementptr inbounds %LSlice, ptr %t72, i32 0, i32 1 + %t74 = load i32, ptr %t73 + %t75 = icmp slt i32 %t71, %t74 + %t76 = zext i1 %t75 to i32 + %t77 = icmp ne i32 %t76, 0 + br i1 %t77, label %wbody22, label %wend23 +wbody22: + %t78 = load ptr, ptr @g_prog + %t79 = load i32, ptr %t31 + %t80 = getelementptr inbounds %LSlice, ptr %t78, i32 0, i32 0 + %t81 = load ptr, ptr %t80 + %t82 = getelementptr inbounds %LSlice, ptr %t78, i32 0, i32 1 + %t83 = load i32, ptr %t82 + %t84 = icmp ult i32 %t79, %t83 + br i1 %t84, label %ixok24, label %ixbad25 +ixbad25: + %t85 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str13511, i32 %t79, i32 %t83) + call void @exit(i32 1) + unreachable +ixok24: + %t86 = getelementptr inbounds ptr, ptr %t81, i32 %t79 + %t87 = load ptr, ptr %t86 + %t88 = getelementptr inbounds %Cmp_Node, ptr %t87, i32 0, i32 0 + %t89 = load i32, ptr %t88 + %t90 = icmp eq i32 %t89, 8 + %t91 = zext i1 %t90 to i32 + %t92 = icmp ne i32 %t91, 0 + br i1 %t92, label %then26, label %ifend28 +then26: + %t93 = load ptr, ptr @g_prog + %t94 = load i32, ptr %t31 + %t95 = getelementptr inbounds %LSlice, ptr %t93, i32 0, i32 0 + %t96 = load ptr, ptr %t95 + %t97 = getelementptr inbounds %LSlice, ptr %t93, i32 0, i32 1 + %t98 = load i32, ptr %t97 + %t99 = icmp ult i32 %t94, %t98 + br i1 %t99, label %ixok29, label %ixbad30 +ixbad30: + %t100 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t100, ptr @.fmt_bounds, ptr @.str13512, i32 %t94, i32 %t98) + call void @exit(i32 1) + unreachable +ixok29: + %t101 = getelementptr inbounds ptr, ptr %t96, i32 %t94 + %t102 = load ptr, ptr %t101 + %t103 = getelementptr inbounds %Cmp_Node, ptr %t102, i32 0, i32 1 + %t104 = load ptr, ptr %t103 + store ptr %t104, ptr %t105 + %t106 = load i32, ptr %t70 + %t107 = call ptr @fn_itoa(i32 %t106) + %t108 = call ptr @lp_str_concat(ptr @.str13513, ptr %t107) + store ptr %t108, ptr %t109 + %t110 = load i32, ptr %t70 + %t111 = call ptr @fn_itoa(i32 %t110) + %t112 = call ptr @lp_str_concat(ptr @.str13514, ptr %t111) + store ptr %t112, ptr %t113 + call void @fn_emit(ptr @.str13515) + %t114 = load ptr, ptr %t109 + call void @fn_emit(ptr %t114) + call void @fn_emit(ptr @.str13516) + %t115 = load ptr, ptr %t105 + call void @fn_emit(ptr %t115) + call void @fn_emit(ptr @.str13517) + call void @fn_emit(ptr @.str13518) + %t116 = load ptr, ptr %t113 + call void @fn_emit(ptr %t116) + call void @fn_emit(ptr @.str13519) + %t117 = load ptr, ptr %t109 + call void @fn_emit(ptr %t117) + call void @fn_emit(ptr @.str13520) + %t118 = load ptr, ptr %t0 + %t119 = load ptr, ptr %t105 + %t120 = call ptr @lp_str_concat(ptr @.str13521, ptr %t119) + %t121 = load i32, ptr %t70 + %t122 = mul i32 %t121, 2 + %t123 = add i32 4, %t122 + %t124 = call ptr @fn_snap_base(ptr %t120, i32 %t123) + %t125 = load ptr, ptr %t113 + call void @fn_emit_io(ptr %t118, ptr %t124, ptr %t125) + %t126 = load ptr, ptr %t0 + %t127 = load ptr, ptr %t105 + %t128 = call ptr @lp_str_concat(ptr @.str13522, ptr %t127) + %t129 = load i32, ptr %t70 + %t130 = mul i32 %t129, 2 + %t131 = add i32 5, %t130 + %t132 = call ptr @fn_snap_base(ptr %t128, i32 %t131) + call void @fn_emit_io(ptr %t126, ptr %t132, ptr @.str13523) + %t133 = load i32, ptr %t70 + %t134 = add i32 %t133, 1 + store i32 %t134, ptr %t70 + br label %ifend28 +ifend28: + %t135 = load i32, ptr %t31 + %t136 = add i32 %t135, 1 + store i32 %t136, ptr %t31 + br label %wcond21 +wend23: br label %ret ret: ret void } +define ptr @fn_snap_base(ptr %arg_store, i32 %arg_k) { +entry: + %retval = alloca ptr + %t0 = alloca ptr + %t1 = alloca i32 + %t5 = alloca ptr + store ptr %arg_store, ptr %t0 + store i32 %arg_k, ptr %t1 + %t2 = load i32, ptr %t1 + %t3 = call ptr @fn_itoa(i32 %t2) + %t4 = call ptr @lp_str_concat(ptr @.str13524, ptr %t3) + store ptr %t4, ptr %t5 + %t6 = load ptr, ptr %t5 + %t7 = call ptr @lp_str_concat(ptr @.str13525, ptr %t6) + %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str13526) + %t9 = load ptr, ptr %t0 + %t10 = call ptr @lp_str_concat(ptr %t8, ptr %t9) + %t11 = call ptr @lp_str_concat(ptr %t10, ptr @.str13527) + call void @fn_emit(ptr %t11) + %t12 = load ptr, ptr %t5 + store ptr %t12, ptr %retval + br label %ret +ret: + %t13 = load ptr, ptr %retval + ret ptr %t13 +} + define void @fn_emit_snapshot() { entry: %t3 = alloca i32 %t7 = alloca i32 %t21 = alloca ptr %t28 = alloca ptr - store ptr @.str13392, ptr @g_g_snap_mode - call void @fn_emith(ptr @.str13393) - call void @fn_emith(ptr @.str13394) - call void @fn_emith(ptr @.str13395) - %t0 = call ptr @fn_find_fn(ptr @.str13396) + store ptr @.str13528, ptr @g_g_snap_mode + call void @fn_emith(ptr @.str13529) + call void @fn_emith(ptr @.str13530) + call void @fn_emith(ptr @.str13531) + %t0 = call ptr @fn_find_fn(ptr @.str13532) %t1 = icmp ne ptr %t0, null %t2 = zext i1 %t1 to i32 store i32 %t2, ptr %t3 - %t4 = call ptr @fn_find_fn(ptr @.str13397) + %t4 = call ptr @fn_find_fn(ptr @.str13533) %t5 = icmp ne ptr %t4, null %t6 = zext i1 %t5 to i32 store i32 %t6, ptr %t7 - call void @fn_emit(ptr @.str13398) - call void @fn_emit(ptr @.str13399) - call void @fn_emit(ptr @.str13400) - call void @fn_emit(ptr @.str13401) - call void @fn_emit_snapshot_blocks(ptr @.str13402) + call void @fn_emit(ptr @.str13534) + call void @fn_emit(ptr @.str13535) + call void @fn_emit(ptr @.str13536) + call void @fn_emit(ptr @.str13537) + call void @fn_emit_snapshot_blocks(ptr @.str13538) %t8 = load i32, ptr %t3 %t9 = icmp ne i32 %t8, 0 br i1 %t9, label %then0, label %ifend2 then0: - %t10 = call ptr @fn_fn_sym(ptr @.str13404) - %t11 = call ptr @lp_str_concat(ptr @.str13403, ptr %t10) - %t12 = call ptr @lp_str_concat(ptr %t11, ptr @.str13405) + %t10 = call ptr @fn_fn_sym(ptr @.str13540) + %t11 = call ptr @lp_str_concat(ptr @.str13539, ptr %t10) + %t12 = call ptr @lp_str_concat(ptr %t11, ptr @.str13541) call void @fn_emit(ptr %t12) br label %ifend2 ifend2: - call void @fn_emit(ptr @.str13406) - call void @fn_emit(ptr @.str13407) - call void @fn_emit(ptr @.str13408) - call void @fn_emit(ptr @.str13409) - call void @fn_emit(ptr @.str13410) - call void @fn_emit_snapshot_blocks(ptr @.str13411) + call void @fn_emit(ptr @.str13542) + call void @fn_emit(ptr @.str13543) + call void @fn_emit(ptr @.str13544) + call void @fn_emit(ptr @.str13545) + call void @fn_emit(ptr @.str13546) + call void @fn_emit_snapshot_blocks(ptr @.str13547) %t13 = load i32, ptr %t7 %t14 = icmp ne i32 %t13, 0 br i1 %t14, label %then3, label %ifend5 then3: - %t15 = call ptr @fn_fn_sym(ptr @.str13413) - %t16 = call ptr @lp_str_concat(ptr @.str13412, ptr %t15) - %t17 = call ptr @lp_str_concat(ptr %t16, ptr @.str13414) + %t15 = call ptr @fn_fn_sym(ptr @.str13549) + %t16 = call ptr @lp_str_concat(ptr @.str13548, ptr %t15) + %t17 = call ptr @lp_str_concat(ptr %t16, ptr @.str13550) call void @fn_emit(ptr %t17) br label %ifend5 ifend5: - call void @fn_emit(ptr @.str13415) - call void @fn_emit(ptr @.str13416) - store ptr @.str13417, ptr @g_g_snap_mode - call void @fn_emit_snapshot_blocks(ptr @.str13418) + call void @fn_emit(ptr @.str13551) + call void @fn_emit(ptr @.str13552) + store ptr @.str13553, ptr @g_g_snap_mode + call void @fn_emit_snapshot_blocks(ptr @.str13554) %t18 = load i32, ptr @g_g_iok %t19 = call ptr @fn_itoa(i32 %t18) - %t20 = call ptr @lp_str_concat(ptr @.str13419, ptr %t19) + %t20 = call ptr @lp_str_concat(ptr @.str13555, ptr %t19) store ptr %t20, ptr %t21 - call void @fn_emit(ptr @.str13420) + call void @fn_emit(ptr @.str13556) %t22 = load ptr, ptr %t21 call void @fn_emit(ptr %t22) - call void @fn_emit(ptr @.str13421) + call void @fn_emit(ptr @.str13557) %t23 = load ptr, ptr @g_g_off call void @fn_emit(ptr %t23) - call void @fn_emit(ptr @.str13422) - call void @fn_emit(ptr @.str13423) + call void @fn_emit(ptr @.str13558) + call void @fn_emit(ptr @.str13559) %t24 = load ptr, ptr %t21 call void @fn_emit(ptr %t24) - call void @fn_emit(ptr @.str13424) - call void @fn_emit(ptr @.str13425) - store ptr @.str13426, ptr @g_g_snap_mode - call void @fn_emit_snapshot_blocks(ptr @.str13427) - call void @fn_emit(ptr @.str13428) - call void @fn_emit(ptr @.str13429) - store ptr @.str13430, ptr @g_g_snap_mode - call void @fn_emit_snapshot_blocks(ptr @.str13431) + call void @fn_emit(ptr @.str13560) + call void @fn_emit(ptr @.str13561) + store ptr @.str13562, ptr @g_g_snap_mode + call void @fn_emit_snapshot_blocks(ptr @.str13563) + call void @fn_emit(ptr @.str13564) + call void @fn_emit(ptr @.str13565) + store ptr @.str13566, ptr @g_g_snap_mode + call void @fn_emit_snapshot_blocks(ptr @.str13567) %t25 = load i32, ptr @g_g_iok %t26 = call ptr @fn_itoa(i32 %t25) - %t27 = call ptr @lp_str_concat(ptr @.str13432, ptr %t26) + %t27 = call ptr @lp_str_concat(ptr @.str13568, ptr %t26) store ptr %t27, ptr %t28 - call void @fn_emit(ptr @.str13433) + call void @fn_emit(ptr @.str13569) %t29 = load ptr, ptr %t28 call void @fn_emit(ptr %t29) - call void @fn_emit(ptr @.str13434) + call void @fn_emit(ptr @.str13570) %t30 = load ptr, ptr @g_g_off call void @fn_emit(ptr %t30) - call void @fn_emit(ptr @.str13435) - call void @fn_emit(ptr @.str13436) + call void @fn_emit(ptr @.str13571) + call void @fn_emit(ptr @.str13572) %t31 = load ptr, ptr %t28 call void @fn_emit(ptr %t31) - call void @fn_emit(ptr @.str13437) - store ptr @.str13438, ptr @g_g_snap_mode + call void @fn_emit(ptr @.str13573) + store ptr @.str13574, ptr @g_g_snap_mode br label %ret ret: ret void @@ -172457,7 +173195,7 @@ entry: store ptr %arg_ty, ptr %t0 %t1 = load ptr, ptr %t0 %t2 = call ptr @fn_llty(ptr %t1) - %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str13439) + %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str13575) %t4 = icmp ne i32 %t3, 0 br i1 %t4, label %then0, label %ifend2 then0: @@ -172478,14 +173216,14 @@ entry: store ptr %arg_ty, ptr %t0 %t1 = load ptr, ptr %t0 %t2 = call ptr @fn_llty(ptr %t1) - %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str13440) + %t3 = call i32 @lp_str_eq(ptr %t2, ptr @.str13576) %t4 = icmp ne i32 %t3, 0 br i1 %t4, label %then0, label %ifend2 then0: - store ptr @.str13441, ptr %retval + store ptr @.str13577, ptr %retval br label %ret ifend2: - store ptr @.str13442, ptr %retval + store ptr @.str13578, ptr %retval br label %ret ret: %t5 = load ptr, ptr %retval @@ -172528,7 +173266,7 @@ wbody1: br i1 %t20, label %ixok3, label %ixbad4 ixbad4: %t21 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str13443, i32 %t15, i32 %t19) + call i32 (ptr, ptr, ...) @fprintf(ptr %t21, ptr @.fmt_bounds, ptr @.str13579, i32 %t15, i32 %t19) call void @exit(i32 1) unreachable ixok3: @@ -172553,7 +173291,7 @@ then5: br i1 %t37, label %ixok8, label %ixbad9 ixbad9: %t38 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t38, ptr @.fmt_bounds, ptr @.str13444, i32 %t32, i32 %t36) + call i32 (ptr, ptr, ...) @fprintf(ptr %t38, ptr @.fmt_bounds, ptr @.str13580, i32 %t32, i32 %t36) call void @exit(i32 1) unreachable ixok8: @@ -172595,7 +173333,7 @@ wbody14: br i1 %t67, label %ixok16, label %ixbad17 ixbad17: %t68 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t68, ptr @.fmt_bounds, ptr @.str13445, i32 %t62, i32 %t66) + call i32 (ptr, ptr, ...) @fprintf(ptr %t68, ptr @.fmt_bounds, ptr @.str13581, i32 %t62, i32 %t66) call void @exit(i32 1) unreachable ixok16: @@ -172620,7 +173358,7 @@ then18: br i1 %t84, label %ixok21, label %ixbad22 ixbad22: %t85 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str13446, i32 %t79, i32 %t83) + call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str13582, i32 %t79, i32 %t83) call void @exit(i32 1) unreachable ixok21: @@ -172698,7 +173436,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13447, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13583, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -172721,7 +173459,7 @@ then5: br i1 %t29, label %ixok8, label %ixbad9 ixbad9: %t30 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str13448, i32 %t24, i32 %t28) + call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str13584, i32 %t24, i32 %t28) call void @exit(i32 1) unreachable ixok8: @@ -172775,7 +173513,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13449, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13585, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -172800,7 +173538,7 @@ sc5: br i1 %t31, label %ixok7, label %ixbad8 ixbad8: %t32 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str13450, i32 %t26, i32 %t30) + call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str13586, i32 %t26, i32 %t30) call void @exit(i32 1) unreachable ixok7: @@ -172861,7 +173599,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13451, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13587, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -172886,7 +173624,7 @@ sc5: br i1 %t31, label %ixok7, label %ixbad8 ixbad8: %t32 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str13452, i32 %t26, i32 %t30) + call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str13588, i32 %t26, i32 %t30) call void @exit(i32 1) unreachable ixok7: @@ -172966,7 +173704,7 @@ entry: store ptr %t1, ptr %t2 %t3 = load ptr, ptr %t2 %t4 = zext i32 23 to i64 - %t5 = call i64 @fwrite(ptr @.str13453, i64 1, i64 %t4, ptr %t3) + %t5 = call i64 @fwrite(ptr @.str13589, i64 1, i64 %t4, ptr %t3) %t6 = trunc i64 %t5 to i32 %t7 = load ptr, ptr %t2 %t8 = load ptr, ptr %t0 @@ -172978,7 +173716,7 @@ entry: %t14 = trunc i64 %t13 to i32 %t15 = load ptr, ptr %t2 %t16 = zext i32 1 to i64 - %t17 = call i64 @fwrite(ptr @.str13454, i64 1, i64 %t16, ptr %t15) + %t17 = call i64 @fwrite(ptr @.str13590, i64 1, i64 %t16, ptr %t15) %t18 = trunc i64 %t17 to i32 br label %ret ret: @@ -173016,7 +173754,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13455, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13591, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -173039,7 +173777,7 @@ then5: br i1 %t29, label %ixok8, label %ixbad9 ixbad9: %t30 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str13456, i32 %t24, i32 %t28) + call i32 (ptr, ptr, ...) @fprintf(ptr %t30, ptr @.fmt_bounds, ptr @.str13592, i32 %t24, i32 %t28) call void @exit(i32 1) unreachable ixok8: @@ -173072,7 +173810,7 @@ wbody11: br i1 %t52, label %ixok13, label %ixbad14 ixbad14: %t53 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t53, ptr @.fmt_bounds, ptr @.str13457, i32 %t47, i32 %t51) + call i32 (ptr, ptr, ...) @fprintf(ptr %t53, ptr @.fmt_bounds, ptr @.str13593, i32 %t47, i32 %t51) call void @exit(i32 1) unreachable ixok13: @@ -173097,7 +173835,7 @@ then15: br i1 %t69, label %ixok18, label %ixbad19 ixbad19: %t70 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t70, ptr @.fmt_bounds, ptr @.str13458, i32 %t64, i32 %t68) + call i32 (ptr, ptr, ...) @fprintf(ptr %t70, ptr @.fmt_bounds, ptr @.str13594, i32 %t64, i32 %t68) call void @exit(i32 1) unreachable ixok18: @@ -173142,7 +173880,7 @@ wbody24: br i1 %t102, label %ixok26, label %ixbad27 ixbad27: %t103 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t103, ptr @.fmt_bounds, ptr @.str13459, i32 %t97, i32 %t101) + call i32 (ptr, ptr, ...) @fprintf(ptr %t103, ptr @.fmt_bounds, ptr @.str13595, i32 %t97, i32 %t101) call void @exit(i32 1) unreachable ixok26: @@ -173168,7 +173906,7 @@ then28: br i1 %t119, label %ixok31, label %ixbad32 ixbad32: %t120 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t120, ptr @.fmt_bounds, ptr @.str13460, i32 %t114, i32 %t118) + call i32 (ptr, ptr, ...) @fprintf(ptr %t120, ptr @.fmt_bounds, ptr @.str13596, i32 %t114, i32 %t118) call void @exit(i32 1) unreachable ixok31: @@ -173177,13 +173915,13 @@ ixok31: %t123 = getelementptr inbounds %Cmp_Node, ptr %t122, i32 0, i32 3 %t124 = load ptr, ptr %t123 %t125 = call ptr @fn_llty(ptr %t124) - %t126 = call i32 @lp_str_eq(ptr %t125, ptr @.str13461) + %t126 = call i32 @lp_str_eq(ptr %t125, ptr @.str13597) %t127 = icmp ne i32 %t126, 0 br i1 %t127, label %then33, label %ifend35 then33: %t128 = load ptr, ptr %t75 - %t129 = call ptr @lp_str_concat(ptr @.str13462, ptr %t128) - %t130 = call ptr @lp_str_concat(ptr %t129, ptr @.str13463) + %t129 = call ptr @lp_str_concat(ptr @.str13598, ptr %t128) + %t130 = call ptr @lp_str_concat(ptr %t129, ptr @.str13599) %t131 = load ptr, ptr %t78 %t132 = getelementptr inbounds %Cmp_Node, ptr %t131, i32 0, i32 7 %t133 = load ptr, ptr %t132 @@ -173196,7 +173934,7 @@ then33: br i1 %t139, label %ixok36, label %ixbad37 ixbad37: %t140 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t140, ptr @.fmt_bounds, ptr @.str13464, i32 %t134, i32 %t138) + call i32 (ptr, ptr, ...) @fprintf(ptr %t140, ptr @.fmt_bounds, ptr @.str13600, i32 %t134, i32 %t138) call void @exit(i32 1) unreachable ixok36: @@ -173205,7 +173943,7 @@ ixok36: %t143 = getelementptr inbounds %Cmp_Node, ptr %t142, i32 0, i32 1 %t144 = load ptr, ptr %t143 %t145 = call ptr @lp_str_concat(ptr %t130, ptr %t144) - %t146 = call ptr @lp_str_concat(ptr %t145, ptr @.str13465) + %t146 = call ptr @lp_str_concat(ptr %t145, ptr @.str13601) call void @fn_perr(ptr %t146) br label %ifend35 ifend35: @@ -173225,11 +173963,11 @@ then38: %t153 = load ptr, ptr %t33 %t154 = getelementptr inbounds %Cmp_Node, ptr %t153, i32 0, i32 1 %t155 = load ptr, ptr %t154 - %t156 = call ptr @lp_str_concat(ptr @.str13466, ptr %t155) - %t157 = call ptr @lp_str_concat(ptr %t156, ptr @.str13467) + %t156 = call ptr @lp_str_concat(ptr @.str13602, ptr %t155) + %t157 = call ptr @lp_str_concat(ptr %t156, ptr @.str13603) %t158 = load ptr, ptr %t75 %t159 = call ptr @lp_str_concat(ptr %t157, ptr %t158) - %t160 = call ptr @lp_str_concat(ptr %t159, ptr @.str13468) + %t160 = call ptr @lp_str_concat(ptr %t159, ptr @.str13604) call void @fn_net_warn(ptr %t160) br label %ifend40 ifend40: @@ -173262,21 +174000,22 @@ entry: %t7 = alloca i32 %t48 = alloca ptr %t51 = alloca ptr - %t57 = alloca ptr - %t62 = alloca i32 - %t104 = alloca ptr - %t106 = alloca ptr - %t113 = alloca ptr + %t59 = alloca ptr + %t61 = alloca ptr + %t65 = alloca i32 + %t107 = alloca ptr + %t109 = alloca ptr + %t116 = alloca ptr store ptr %arg_m, ptr %t0 store i32 0, ptr @g_ll_t %t1 = call ptr @fn_itoa(i32 1024) store ptr %t1, ptr %t2 - call void @fn_emit(ptr @.str13469) + call void @fn_emit(ptr @.str13605) %t3 = load ptr, ptr %t0 %t4 = getelementptr inbounds %Cmp_Node, ptr %t3, i32 0, i32 1 %t5 = load ptr, ptr %t4 call void @fn_emit(ptr %t5) - call void @fn_emit(ptr @.str13470) + call void @fn_emit(ptr @.str13606) store i32 0, ptr %t6 store i32 0, ptr %t7 br label %wcond0 @@ -173304,7 +174043,7 @@ wbody1: br i1 %t25, label %ixok3, label %ixbad4 ixbad4: %t26 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str13471, i32 %t20, i32 %t24) + call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str13607, i32 %t20, i32 %t24) call void @exit(i32 1) unreachable ixok3: @@ -173329,7 +174068,7 @@ then5: br i1 %t42, label %ixok8, label %ixbad9 ixbad9: %t43 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13472, i32 %t37, i32 %t41) + call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13608, i32 %t37, i32 %t41) call void @exit(i32 1) unreachable ixok8: @@ -173347,163 +174086,164 @@ ixok8: %t55 = icmp ne i32 %t54, 0 br i1 %t55, label %then10, label %ifend12 then10: - %t56 = call ptr @fn_nreg() - store ptr %t56, ptr %t57 - call void @fn_emit(ptr @.str13473) - %t58 = load ptr, ptr %t57 - call void @fn_emit(ptr %t58) - call void @fn_emit(ptr @.str13474) - %t59 = load ptr, ptr %t2 - call void @fn_emit(ptr %t59) - call void @fn_emit(ptr @.str13475) - %t60 = load ptr, ptr %t48 - call void @fn_emit(ptr %t60) - call void @fn_emit(ptr @.str13476) - %t61 = load ptr, ptr %t48 - call void @fn_emit(ptr %t61) - call void @fn_emit(ptr @.str13477) - store i32 0, ptr %t62 + %t56 = load ptr, ptr %t48 + %t57 = call ptr @lp_str_concat(ptr @.str13609, ptr %t56) + %t58 = call ptr @fn_ecs_base(ptr %t57) + store ptr %t58, ptr %t59 + %t60 = call ptr @fn_nreg() + store ptr %t60, ptr %t61 + call void @fn_emit(ptr @.str13610) + %t62 = load ptr, ptr %t61 + call void @fn_emit(ptr %t62) + call void @fn_emit(ptr @.str13611) + %t63 = load ptr, ptr %t48 + call void @fn_emit(ptr %t63) + call void @fn_emit(ptr @.str13612) + %t64 = load ptr, ptr %t59 + call void @fn_emit(ptr %t64) + call void @fn_emit(ptr @.str13613) + store i32 0, ptr %t65 br label %wcond13 wcond13: - %t63 = load i32, ptr %t62 - %t64 = load ptr, ptr %t51 - %t65 = getelementptr inbounds %Cmp_Node, ptr %t64, i32 0, i32 7 - %t66 = load ptr, ptr %t65 - %t67 = getelementptr inbounds %LSlice, ptr %t66, i32 0, i32 1 - %t68 = load i32, ptr %t67 - %t69 = icmp slt i32 %t63, %t68 - %t70 = zext i1 %t69 to i32 - %t71 = icmp ne i32 %t70, 0 - br i1 %t71, label %wbody14, label %wend15 + %t66 = load i32, ptr %t65 + %t67 = load ptr, ptr %t51 + %t68 = getelementptr inbounds %Cmp_Node, ptr %t67, i32 0, i32 7 + %t69 = load ptr, ptr %t68 + %t70 = getelementptr inbounds %LSlice, ptr %t69, i32 0, i32 1 + %t71 = load i32, ptr %t70 + %t72 = icmp slt i32 %t66, %t71 + %t73 = zext i1 %t72 to i32 + %t74 = icmp ne i32 %t73, 0 + br i1 %t74, label %wbody14, label %wend15 wbody14: - %t72 = load ptr, ptr %t51 - %t73 = getelementptr inbounds %Cmp_Node, ptr %t72, i32 0, i32 7 - %t74 = load ptr, ptr %t73 - %t75 = load i32, ptr %t62 - %t76 = getelementptr inbounds %LSlice, ptr %t74, i32 0, i32 0 + %t75 = load ptr, ptr %t51 + %t76 = getelementptr inbounds %Cmp_Node, ptr %t75, i32 0, i32 7 %t77 = load ptr, ptr %t76 - %t78 = getelementptr inbounds %LSlice, ptr %t74, i32 0, i32 1 - %t79 = load i32, ptr %t78 - %t80 = icmp ult i32 %t75, %t79 - br i1 %t80, label %ixok16, label %ixbad17 + %t78 = load i32, ptr %t65 + %t79 = getelementptr inbounds %LSlice, ptr %t77, i32 0, i32 0 + %t80 = load ptr, ptr %t79 + %t81 = getelementptr inbounds %LSlice, ptr %t77, i32 0, i32 1 + %t82 = load i32, ptr %t81 + %t83 = icmp ult i32 %t78, %t82 + br i1 %t83, label %ixok16, label %ixbad17 ixbad17: - %t81 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t81, ptr @.fmt_bounds, ptr @.str13478, i32 %t75, i32 %t79) + %t84 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str13614, i32 %t78, i32 %t82) call void @exit(i32 1) unreachable ixok16: - %t82 = getelementptr inbounds ptr, ptr %t77, i32 %t75 - %t83 = load ptr, ptr %t82 - %t84 = getelementptr inbounds %Cmp_Node, ptr %t83, i32 0, i32 2 - %t85 = load i32, ptr %t84 - %t86 = icmp eq i32 %t85, 1 - %t87 = zext i1 %t86 to i32 - %t88 = icmp ne i32 %t87, 0 - br i1 %t88, label %then18, label %ifend20 + %t85 = getelementptr inbounds ptr, ptr %t80, i32 %t78 + %t86 = load ptr, ptr %t85 + %t87 = getelementptr inbounds %Cmp_Node, ptr %t86, i32 0, i32 2 + %t88 = load i32, ptr %t87 + %t89 = icmp eq i32 %t88, 1 + %t90 = zext i1 %t89 to i32 + %t91 = icmp ne i32 %t90, 0 + br i1 %t91, label %then18, label %ifend20 then18: - %t89 = load ptr, ptr %t51 - %t90 = getelementptr inbounds %Cmp_Node, ptr %t89, i32 0, i32 7 - %t91 = load ptr, ptr %t90 - %t92 = load i32, ptr %t62 - %t93 = getelementptr inbounds %LSlice, ptr %t91, i32 0, i32 0 + %t92 = load ptr, ptr %t51 + %t93 = getelementptr inbounds %Cmp_Node, ptr %t92, i32 0, i32 7 %t94 = load ptr, ptr %t93 - %t95 = getelementptr inbounds %LSlice, ptr %t91, i32 0, i32 1 - %t96 = load i32, ptr %t95 - %t97 = icmp ult i32 %t92, %t96 - br i1 %t97, label %ixok21, label %ixbad22 + %t95 = load i32, ptr %t65 + %t96 = getelementptr inbounds %LSlice, ptr %t94, i32 0, i32 0 + %t97 = load ptr, ptr %t96 + %t98 = getelementptr inbounds %LSlice, ptr %t94, i32 0, i32 1 + %t99 = load i32, ptr %t98 + %t100 = icmp ult i32 %t95, %t99 + br i1 %t100, label %ixok21, label %ixbad22 ixbad22: - %t98 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t98, ptr @.fmt_bounds, ptr @.str13479, i32 %t92, i32 %t96) + %t101 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t101, ptr @.fmt_bounds, ptr @.str13615, i32 %t95, i32 %t99) call void @exit(i32 1) unreachable ixok21: - %t99 = getelementptr inbounds ptr, ptr %t94, i32 %t92 - %t100 = load ptr, ptr %t99 - %t101 = getelementptr inbounds %Cmp_Node, ptr %t100, i32 0, i32 3 - %t102 = load ptr, ptr %t101 - %t103 = call ptr @fn_net_field_bytes(ptr %t102) - store ptr %t103, ptr %t104 - %t105 = call ptr @fn_nreg() - store ptr %t105, ptr %t106 - call void @fn_emit(ptr @.str13480) - %t107 = load ptr, ptr %t106 - call void @fn_emit(ptr %t107) - call void @fn_emit(ptr @.str13481) - %t108 = load ptr, ptr %t48 - call void @fn_emit(ptr %t108) - call void @fn_emit(ptr @.str13482) - %t109 = load ptr, ptr %t57 - call void @fn_emit(ptr %t109) - call void @fn_emit(ptr @.str13483) - %t110 = load i32, ptr %t62 - %t111 = call ptr @fn_itoa(i32 %t110) + %t102 = getelementptr inbounds ptr, ptr %t97, i32 %t95 + %t103 = load ptr, ptr %t102 + %t104 = getelementptr inbounds %Cmp_Node, ptr %t103, i32 0, i32 3 + %t105 = load ptr, ptr %t104 + %t106 = call ptr @fn_net_field_bytes(ptr %t105) + store ptr %t106, ptr %t107 + %t108 = call ptr @fn_nreg() + store ptr %t108, ptr %t109 + call void @fn_emit(ptr @.str13616) + %t110 = load ptr, ptr %t109 + call void @fn_emit(ptr %t110) + call void @fn_emit(ptr @.str13617) + %t111 = load ptr, ptr %t48 call void @fn_emit(ptr %t111) - call void @fn_emit(ptr @.str13484) - %t112 = call ptr @fn_nreg() - store ptr %t112, ptr %t113 - call void @fn_emit(ptr @.str13485) - %t114 = load ptr, ptr %t113 + call void @fn_emit(ptr @.str13618) + %t112 = load ptr, ptr %t61 + call void @fn_emit(ptr %t112) + call void @fn_emit(ptr @.str13619) + %t113 = load i32, ptr %t65 + %t114 = call ptr @fn_itoa(i32 %t113) call void @fn_emit(ptr %t114) - call void @fn_emit(ptr @.str13486) - %t115 = load i32, ptr %t6 - %t116 = call ptr @fn_itoa(i32 %t115) - call void @fn_emit(ptr %t116) - call void @fn_emit(ptr @.str13487) - call void @fn_emit(ptr @.str13488) - %t117 = load ptr, ptr %t113 + call void @fn_emit(ptr @.str13620) + %t115 = call ptr @fn_nreg() + store ptr %t115, ptr %t116 + call void @fn_emit(ptr @.str13621) + %t117 = load ptr, ptr %t116 call void @fn_emit(ptr %t117) - call void @fn_emit(ptr @.str13489) - %t118 = load ptr, ptr %t106 - call void @fn_emit(ptr %t118) - call void @fn_emit(ptr @.str13490) - %t119 = load ptr, ptr %t104 + call void @fn_emit(ptr @.str13622) + %t118 = load i32, ptr %t6 + %t119 = call ptr @fn_itoa(i32 %t118) call void @fn_emit(ptr %t119) - call void @fn_emit(ptr @.str13491) - %t120 = load ptr, ptr %t51 - %t121 = getelementptr inbounds %Cmp_Node, ptr %t120, i32 0, i32 7 - %t122 = load ptr, ptr %t121 - %t123 = load i32, ptr %t62 - %t124 = getelementptr inbounds %LSlice, ptr %t122, i32 0, i32 0 + call void @fn_emit(ptr @.str13623) + call void @fn_emit(ptr @.str13624) + %t120 = load ptr, ptr %t116 + call void @fn_emit(ptr %t120) + call void @fn_emit(ptr @.str13625) + %t121 = load ptr, ptr %t109 + call void @fn_emit(ptr %t121) + call void @fn_emit(ptr @.str13626) + %t122 = load ptr, ptr %t107 + call void @fn_emit(ptr %t122) + call void @fn_emit(ptr @.str13627) + %t123 = load ptr, ptr %t51 + %t124 = getelementptr inbounds %Cmp_Node, ptr %t123, i32 0, i32 7 %t125 = load ptr, ptr %t124 - %t126 = getelementptr inbounds %LSlice, ptr %t122, i32 0, i32 1 - %t127 = load i32, ptr %t126 - %t128 = icmp ult i32 %t123, %t127 - br i1 %t128, label %ixok23, label %ixbad24 + %t126 = load i32, ptr %t65 + %t127 = getelementptr inbounds %LSlice, ptr %t125, i32 0, i32 0 + %t128 = load ptr, ptr %t127 + %t129 = getelementptr inbounds %LSlice, ptr %t125, i32 0, i32 1 + %t130 = load i32, ptr %t129 + %t131 = icmp ult i32 %t126, %t130 + br i1 %t131, label %ixok23, label %ixbad24 ixbad24: - %t129 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t129, ptr @.fmt_bounds, ptr @.str13492, i32 %t123, i32 %t127) + %t132 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t132, ptr @.fmt_bounds, ptr @.str13628, i32 %t126, i32 %t130) call void @exit(i32 1) unreachable ixok23: - %t130 = getelementptr inbounds ptr, ptr %t125, i32 %t123 - %t131 = load ptr, ptr %t130 - %t132 = getelementptr inbounds %Cmp_Node, ptr %t131, i32 0, i32 3 - %t133 = load ptr, ptr %t132 - %t134 = call i32 @fn_net_field_ibytes(ptr %t133) - %t135 = load i32, ptr %t6 - %t136 = add i32 %t135, %t134 - store i32 %t136, ptr %t6 + %t133 = getelementptr inbounds ptr, ptr %t128, i32 %t126 + %t134 = load ptr, ptr %t133 + %t135 = getelementptr inbounds %Cmp_Node, ptr %t134, i32 0, i32 3 + %t136 = load ptr, ptr %t135 + %t137 = call i32 @fn_net_field_ibytes(ptr %t136) + %t138 = load i32, ptr %t6 + %t139 = add i32 %t138, %t137 + store i32 %t139, ptr %t6 br label %ifend20 ifend20: - %t137 = load i32, ptr %t62 - %t138 = add i32 %t137, 1 - store i32 %t138, ptr %t62 + %t140 = load i32, ptr %t65 + %t141 = add i32 %t140, 1 + store i32 %t141, ptr %t65 br label %wcond13 wend15: br label %ifend12 ifend12: br label %ifend7 ifend7: - %t139 = load i32, ptr %t7 - %t140 = add i32 %t139, 1 - store i32 %t140, ptr %t7 + %t142 = load i32, ptr %t7 + %t143 = add i32 %t142, 1 + store i32 %t143, ptr %t7 br label %wcond0 wend2: - call void @fn_emit(ptr @.str13493) - %t141 = load i32, ptr %t6 - %t142 = call ptr @fn_itoa(i32 %t141) - call void @fn_emit(ptr %t142) - call void @fn_emit(ptr @.str13494) + call void @fn_emit(ptr @.str13629) + %t144 = load i32, ptr %t6 + %t145 = call ptr @fn_itoa(i32 %t144) + call void @fn_emit(ptr %t145) + call void @fn_emit(ptr @.str13630) br label %ret ret: ret void @@ -173517,21 +174257,22 @@ entry: %t7 = alloca i32 %t48 = alloca ptr %t51 = alloca ptr - %t57 = alloca ptr - %t62 = alloca i32 - %t104 = alloca ptr - %t106 = alloca ptr - %t113 = alloca ptr + %t59 = alloca ptr + %t61 = alloca ptr + %t65 = alloca i32 + %t107 = alloca ptr + %t109 = alloca ptr + %t116 = alloca ptr store ptr %arg_m, ptr %t0 store i32 0, ptr @g_ll_t %t1 = call ptr @fn_itoa(i32 1024) store ptr %t1, ptr %t2 - call void @fn_emit(ptr @.str13495) + call void @fn_emit(ptr @.str13631) %t3 = load ptr, ptr %t0 %t4 = getelementptr inbounds %Cmp_Node, ptr %t3, i32 0, i32 1 %t5 = load ptr, ptr %t4 call void @fn_emit(ptr %t5) - call void @fn_emit(ptr @.str13496) + call void @fn_emit(ptr @.str13632) store i32 0, ptr %t6 store i32 0, ptr %t7 br label %wcond0 @@ -173559,7 +174300,7 @@ wbody1: br i1 %t25, label %ixok3, label %ixbad4 ixbad4: %t26 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str13497, i32 %t20, i32 %t24) + call i32 (ptr, ptr, ...) @fprintf(ptr %t26, ptr @.fmt_bounds, ptr @.str13633, i32 %t20, i32 %t24) call void @exit(i32 1) unreachable ixok3: @@ -173584,7 +174325,7 @@ then5: br i1 %t42, label %ixok8, label %ixbad9 ixbad9: %t43 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13498, i32 %t37, i32 %t41) + call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13634, i32 %t37, i32 %t41) call void @exit(i32 1) unreachable ixok8: @@ -173602,159 +174343,160 @@ ixok8: %t55 = icmp ne i32 %t54, 0 br i1 %t55, label %then10, label %ifend12 then10: - %t56 = call ptr @fn_nreg() - store ptr %t56, ptr %t57 - call void @fn_emit(ptr @.str13499) - %t58 = load ptr, ptr %t57 - call void @fn_emit(ptr %t58) - call void @fn_emit(ptr @.str13500) - %t59 = load ptr, ptr %t2 - call void @fn_emit(ptr %t59) - call void @fn_emit(ptr @.str13501) - %t60 = load ptr, ptr %t48 - call void @fn_emit(ptr %t60) - call void @fn_emit(ptr @.str13502) - %t61 = load ptr, ptr %t48 - call void @fn_emit(ptr %t61) - call void @fn_emit(ptr @.str13503) - store i32 0, ptr %t62 + %t56 = load ptr, ptr %t48 + %t57 = call ptr @lp_str_concat(ptr @.str13635, ptr %t56) + %t58 = call ptr @fn_ecs_base(ptr %t57) + store ptr %t58, ptr %t59 + %t60 = call ptr @fn_nreg() + store ptr %t60, ptr %t61 + call void @fn_emit(ptr @.str13636) + %t62 = load ptr, ptr %t61 + call void @fn_emit(ptr %t62) + call void @fn_emit(ptr @.str13637) + %t63 = load ptr, ptr %t48 + call void @fn_emit(ptr %t63) + call void @fn_emit(ptr @.str13638) + %t64 = load ptr, ptr %t59 + call void @fn_emit(ptr %t64) + call void @fn_emit(ptr @.str13639) + store i32 0, ptr %t65 br label %wcond13 wcond13: - %t63 = load i32, ptr %t62 - %t64 = load ptr, ptr %t51 - %t65 = getelementptr inbounds %Cmp_Node, ptr %t64, i32 0, i32 7 - %t66 = load ptr, ptr %t65 - %t67 = getelementptr inbounds %LSlice, ptr %t66, i32 0, i32 1 - %t68 = load i32, ptr %t67 - %t69 = icmp slt i32 %t63, %t68 - %t70 = zext i1 %t69 to i32 - %t71 = icmp ne i32 %t70, 0 - br i1 %t71, label %wbody14, label %wend15 + %t66 = load i32, ptr %t65 + %t67 = load ptr, ptr %t51 + %t68 = getelementptr inbounds %Cmp_Node, ptr %t67, i32 0, i32 7 + %t69 = load ptr, ptr %t68 + %t70 = getelementptr inbounds %LSlice, ptr %t69, i32 0, i32 1 + %t71 = load i32, ptr %t70 + %t72 = icmp slt i32 %t66, %t71 + %t73 = zext i1 %t72 to i32 + %t74 = icmp ne i32 %t73, 0 + br i1 %t74, label %wbody14, label %wend15 wbody14: - %t72 = load ptr, ptr %t51 - %t73 = getelementptr inbounds %Cmp_Node, ptr %t72, i32 0, i32 7 - %t74 = load ptr, ptr %t73 - %t75 = load i32, ptr %t62 - %t76 = getelementptr inbounds %LSlice, ptr %t74, i32 0, i32 0 + %t75 = load ptr, ptr %t51 + %t76 = getelementptr inbounds %Cmp_Node, ptr %t75, i32 0, i32 7 %t77 = load ptr, ptr %t76 - %t78 = getelementptr inbounds %LSlice, ptr %t74, i32 0, i32 1 - %t79 = load i32, ptr %t78 - %t80 = icmp ult i32 %t75, %t79 - br i1 %t80, label %ixok16, label %ixbad17 + %t78 = load i32, ptr %t65 + %t79 = getelementptr inbounds %LSlice, ptr %t77, i32 0, i32 0 + %t80 = load ptr, ptr %t79 + %t81 = getelementptr inbounds %LSlice, ptr %t77, i32 0, i32 1 + %t82 = load i32, ptr %t81 + %t83 = icmp ult i32 %t78, %t82 + br i1 %t83, label %ixok16, label %ixbad17 ixbad17: - %t81 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t81, ptr @.fmt_bounds, ptr @.str13504, i32 %t75, i32 %t79) + %t84 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t84, ptr @.fmt_bounds, ptr @.str13640, i32 %t78, i32 %t82) call void @exit(i32 1) unreachable ixok16: - %t82 = getelementptr inbounds ptr, ptr %t77, i32 %t75 - %t83 = load ptr, ptr %t82 - %t84 = getelementptr inbounds %Cmp_Node, ptr %t83, i32 0, i32 2 - %t85 = load i32, ptr %t84 - %t86 = icmp eq i32 %t85, 1 - %t87 = zext i1 %t86 to i32 - %t88 = icmp ne i32 %t87, 0 - br i1 %t88, label %then18, label %ifend20 + %t85 = getelementptr inbounds ptr, ptr %t80, i32 %t78 + %t86 = load ptr, ptr %t85 + %t87 = getelementptr inbounds %Cmp_Node, ptr %t86, i32 0, i32 2 + %t88 = load i32, ptr %t87 + %t89 = icmp eq i32 %t88, 1 + %t90 = zext i1 %t89 to i32 + %t91 = icmp ne i32 %t90, 0 + br i1 %t91, label %then18, label %ifend20 then18: - %t89 = load ptr, ptr %t51 - %t90 = getelementptr inbounds %Cmp_Node, ptr %t89, i32 0, i32 7 - %t91 = load ptr, ptr %t90 - %t92 = load i32, ptr %t62 - %t93 = getelementptr inbounds %LSlice, ptr %t91, i32 0, i32 0 + %t92 = load ptr, ptr %t51 + %t93 = getelementptr inbounds %Cmp_Node, ptr %t92, i32 0, i32 7 %t94 = load ptr, ptr %t93 - %t95 = getelementptr inbounds %LSlice, ptr %t91, i32 0, i32 1 - %t96 = load i32, ptr %t95 - %t97 = icmp ult i32 %t92, %t96 - br i1 %t97, label %ixok21, label %ixbad22 + %t95 = load i32, ptr %t65 + %t96 = getelementptr inbounds %LSlice, ptr %t94, i32 0, i32 0 + %t97 = load ptr, ptr %t96 + %t98 = getelementptr inbounds %LSlice, ptr %t94, i32 0, i32 1 + %t99 = load i32, ptr %t98 + %t100 = icmp ult i32 %t95, %t99 + br i1 %t100, label %ixok21, label %ixbad22 ixbad22: - %t98 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t98, ptr @.fmt_bounds, ptr @.str13505, i32 %t92, i32 %t96) + %t101 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t101, ptr @.fmt_bounds, ptr @.str13641, i32 %t95, i32 %t99) call void @exit(i32 1) unreachable ixok21: - %t99 = getelementptr inbounds ptr, ptr %t94, i32 %t92 - %t100 = load ptr, ptr %t99 - %t101 = getelementptr inbounds %Cmp_Node, ptr %t100, i32 0, i32 3 - %t102 = load ptr, ptr %t101 - %t103 = call ptr @fn_net_field_bytes(ptr %t102) - store ptr %t103, ptr %t104 - %t105 = call ptr @fn_nreg() - store ptr %t105, ptr %t106 - call void @fn_emit(ptr @.str13506) - %t107 = load ptr, ptr %t106 - call void @fn_emit(ptr %t107) - call void @fn_emit(ptr @.str13507) - %t108 = load ptr, ptr %t48 - call void @fn_emit(ptr %t108) - call void @fn_emit(ptr @.str13508) - %t109 = load ptr, ptr %t57 - call void @fn_emit(ptr %t109) - call void @fn_emit(ptr @.str13509) - %t110 = load i32, ptr %t62 - %t111 = call ptr @fn_itoa(i32 %t110) + %t102 = getelementptr inbounds ptr, ptr %t97, i32 %t95 + %t103 = load ptr, ptr %t102 + %t104 = getelementptr inbounds %Cmp_Node, ptr %t103, i32 0, i32 3 + %t105 = load ptr, ptr %t104 + %t106 = call ptr @fn_net_field_bytes(ptr %t105) + store ptr %t106, ptr %t107 + %t108 = call ptr @fn_nreg() + store ptr %t108, ptr %t109 + call void @fn_emit(ptr @.str13642) + %t110 = load ptr, ptr %t109 + call void @fn_emit(ptr %t110) + call void @fn_emit(ptr @.str13643) + %t111 = load ptr, ptr %t48 call void @fn_emit(ptr %t111) - call void @fn_emit(ptr @.str13510) - %t112 = call ptr @fn_nreg() - store ptr %t112, ptr %t113 - call void @fn_emit(ptr @.str13511) - %t114 = load ptr, ptr %t113 + call void @fn_emit(ptr @.str13644) + %t112 = load ptr, ptr %t61 + call void @fn_emit(ptr %t112) + call void @fn_emit(ptr @.str13645) + %t113 = load i32, ptr %t65 + %t114 = call ptr @fn_itoa(i32 %t113) call void @fn_emit(ptr %t114) - call void @fn_emit(ptr @.str13512) - %t115 = load i32, ptr %t6 - %t116 = call ptr @fn_itoa(i32 %t115) - call void @fn_emit(ptr %t116) - call void @fn_emit(ptr @.str13513) - call void @fn_emit(ptr @.str13514) - %t117 = load ptr, ptr %t106 + call void @fn_emit(ptr @.str13646) + %t115 = call ptr @fn_nreg() + store ptr %t115, ptr %t116 + call void @fn_emit(ptr @.str13647) + %t117 = load ptr, ptr %t116 call void @fn_emit(ptr %t117) - call void @fn_emit(ptr @.str13515) - %t118 = load ptr, ptr %t113 - call void @fn_emit(ptr %t118) - call void @fn_emit(ptr @.str13516) - %t119 = load ptr, ptr %t104 + call void @fn_emit(ptr @.str13648) + %t118 = load i32, ptr %t6 + %t119 = call ptr @fn_itoa(i32 %t118) call void @fn_emit(ptr %t119) - call void @fn_emit(ptr @.str13517) - %t120 = load ptr, ptr %t51 - %t121 = getelementptr inbounds %Cmp_Node, ptr %t120, i32 0, i32 7 - %t122 = load ptr, ptr %t121 - %t123 = load i32, ptr %t62 - %t124 = getelementptr inbounds %LSlice, ptr %t122, i32 0, i32 0 + call void @fn_emit(ptr @.str13649) + call void @fn_emit(ptr @.str13650) + %t120 = load ptr, ptr %t109 + call void @fn_emit(ptr %t120) + call void @fn_emit(ptr @.str13651) + %t121 = load ptr, ptr %t116 + call void @fn_emit(ptr %t121) + call void @fn_emit(ptr @.str13652) + %t122 = load ptr, ptr %t107 + call void @fn_emit(ptr %t122) + call void @fn_emit(ptr @.str13653) + %t123 = load ptr, ptr %t51 + %t124 = getelementptr inbounds %Cmp_Node, ptr %t123, i32 0, i32 7 %t125 = load ptr, ptr %t124 - %t126 = getelementptr inbounds %LSlice, ptr %t122, i32 0, i32 1 - %t127 = load i32, ptr %t126 - %t128 = icmp ult i32 %t123, %t127 - br i1 %t128, label %ixok23, label %ixbad24 + %t126 = load i32, ptr %t65 + %t127 = getelementptr inbounds %LSlice, ptr %t125, i32 0, i32 0 + %t128 = load ptr, ptr %t127 + %t129 = getelementptr inbounds %LSlice, ptr %t125, i32 0, i32 1 + %t130 = load i32, ptr %t129 + %t131 = icmp ult i32 %t126, %t130 + br i1 %t131, label %ixok23, label %ixbad24 ixbad24: - %t129 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t129, ptr @.fmt_bounds, ptr @.str13518, i32 %t123, i32 %t127) + %t132 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t132, ptr @.fmt_bounds, ptr @.str13654, i32 %t126, i32 %t130) call void @exit(i32 1) unreachable ixok23: - %t130 = getelementptr inbounds ptr, ptr %t125, i32 %t123 - %t131 = load ptr, ptr %t130 - %t132 = getelementptr inbounds %Cmp_Node, ptr %t131, i32 0, i32 3 - %t133 = load ptr, ptr %t132 - %t134 = call i32 @fn_net_field_ibytes(ptr %t133) - %t135 = load i32, ptr %t6 - %t136 = add i32 %t135, %t134 - store i32 %t136, ptr %t6 + %t133 = getelementptr inbounds ptr, ptr %t128, i32 %t126 + %t134 = load ptr, ptr %t133 + %t135 = getelementptr inbounds %Cmp_Node, ptr %t134, i32 0, i32 3 + %t136 = load ptr, ptr %t135 + %t137 = call i32 @fn_net_field_ibytes(ptr %t136) + %t138 = load i32, ptr %t6 + %t139 = add i32 %t138, %t137 + store i32 %t139, ptr %t6 br label %ifend20 ifend20: - %t137 = load i32, ptr %t62 - %t138 = add i32 %t137, 1 - store i32 %t138, ptr %t62 + %t140 = load i32, ptr %t65 + %t141 = add i32 %t140, 1 + store i32 %t141, ptr %t65 br label %wcond13 wend15: br label %ifend12 ifend12: br label %ifend7 ifend7: - %t139 = load i32, ptr %t7 - %t140 = add i32 %t139, 1 - store i32 %t140, ptr %t7 + %t142 = load i32, ptr %t7 + %t143 = add i32 %t142, 1 + store i32 %t143, ptr %t7 br label %wcond0 wend2: - call void @fn_emit(ptr @.str13519) + call void @fn_emit(ptr @.str13655) br label %ret ret: ret void @@ -173763,438 +174505,447 @@ ret: define void @fn_emit_net_dispatch() { entry: %t1 = alloca ptr - %t3 = alloca i32 - %t4 = alloca i32 - %t12 = alloca i32 - %t56 = alloca ptr - %t59 = alloca ptr - %t84 = alloca i32 - %t128 = alloca ptr - %t131 = alloca ptr - %t154 = alloca i32 - %t198 = alloca ptr - %t201 = alloca ptr + %t3 = alloca ptr + %t5 = alloca i32 + %t6 = alloca i32 + %t14 = alloca i32 + %t58 = alloca ptr + %t61 = alloca ptr + %t79 = alloca ptr + %t88 = alloca i32 + %t132 = alloca ptr + %t135 = alloca ptr + %t151 = alloca ptr + %t160 = alloca i32 + %t204 = alloca ptr + %t207 = alloca ptr %t0 = call ptr @fn_itoa(i32 1024) store ptr %t0, ptr %t1 - call void @fn_emit(ptr @.str13520) - call void @fn_emit(ptr @.str13521) - %t2 = load ptr, ptr %t1 - call void @fn_emit(ptr %t2) - call void @fn_emit(ptr @.str13522) - store i32 0, ptr %t3 - store i32 0, ptr %t4 + call void @fn_emit(ptr @.str13656) + %t2 = call ptr @fn_ecs_base(ptr @.str13657) + store ptr %t2, ptr %t3 + call void @fn_emit(ptr @.str13658) + %t4 = load ptr, ptr %t3 + call void @fn_emit(ptr %t4) + call void @fn_emit(ptr @.str13659) + store i32 0, ptr %t5 + store i32 0, ptr %t6 br label %wcond0 wcond0: - %t5 = load i32, ptr %t4 - %t6 = load ptr, ptr @g_prog - %t7 = getelementptr inbounds %LSlice, ptr %t6, i32 0, i32 1 - %t8 = load i32, ptr %t7 - %t9 = icmp slt i32 %t5, %t8 - %t10 = zext i1 %t9 to i32 - %t11 = icmp ne i32 %t10, 0 - br i1 %t11, label %wbody1, label %wend2 + %t7 = load i32, ptr %t6 + %t8 = load ptr, ptr @g_prog + %t9 = getelementptr inbounds %LSlice, ptr %t8, i32 0, i32 1 + %t10 = load i32, ptr %t9 + %t11 = icmp slt i32 %t7, %t10 + %t12 = zext i1 %t11 to i32 + %t13 = icmp ne i32 %t12, 0 + br i1 %t13, label %wbody1, label %wend2 wbody1: - %t13 = load ptr, ptr @g_prog - %t14 = load i32, ptr %t4 - %t15 = getelementptr inbounds %LSlice, ptr %t13, i32 0, i32 0 - %t16 = load ptr, ptr %t15 - %t17 = getelementptr inbounds %LSlice, ptr %t13, i32 0, i32 1 - %t18 = load i32, ptr %t17 - %t19 = icmp ult i32 %t14, %t18 - br i1 %t19, label %ixok3, label %ixbad4 + %t15 = load ptr, ptr @g_prog + %t16 = load i32, ptr %t6 + %t17 = getelementptr inbounds %LSlice, ptr %t15, i32 0, i32 0 + %t18 = load ptr, ptr %t17 + %t19 = getelementptr inbounds %LSlice, ptr %t15, i32 0, i32 1 + %t20 = load i32, ptr %t19 + %t21 = icmp ult i32 %t16, %t20 + br i1 %t21, label %ixok3, label %ixbad4 ixbad4: - %t20 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t20, ptr @.fmt_bounds, ptr @.str13523, i32 %t14, i32 %t18) + %t22 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str13660, i32 %t16, i32 %t20) call void @exit(i32 1) unreachable ixok3: - %t21 = getelementptr inbounds ptr, ptr %t16, i32 %t14 - %t22 = load ptr, ptr %t21 - %t23 = getelementptr inbounds %Cmp_Node, ptr %t22, i32 0, i32 0 - %t24 = load i32, ptr %t23 - %t25 = icmp eq i32 %t24, 10 - %t26 = zext i1 %t25 to i32 - %t27 = icmp ne i32 %t26, 0 + %t23 = getelementptr inbounds ptr, ptr %t18, i32 %t16 + %t24 = load ptr, ptr %t23 + %t25 = getelementptr inbounds %Cmp_Node, ptr %t24, i32 0, i32 0 + %t26 = load i32, ptr %t25 + %t27 = icmp eq i32 %t26, 10 %t28 = zext i1 %t27 to i32 - store i32 %t28, ptr %t12 - br i1 %t27, label %sc5, label %scend6 + %t29 = icmp ne i32 %t28, 0 + %t30 = zext i1 %t29 to i32 + store i32 %t30, ptr %t14 + br i1 %t29, label %sc5, label %scend6 sc5: - %t29 = load ptr, ptr @g_prog - %t30 = load i32, ptr %t4 - %t31 = getelementptr inbounds %LSlice, ptr %t29, i32 0, i32 0 - %t32 = load ptr, ptr %t31 - %t33 = getelementptr inbounds %LSlice, ptr %t29, i32 0, i32 1 - %t34 = load i32, ptr %t33 - %t35 = icmp ult i32 %t30, %t34 - br i1 %t35, label %ixok7, label %ixbad8 + %t31 = load ptr, ptr @g_prog + %t32 = load i32, ptr %t6 + %t33 = getelementptr inbounds %LSlice, ptr %t31, i32 0, i32 0 + %t34 = load ptr, ptr %t33 + %t35 = getelementptr inbounds %LSlice, ptr %t31, i32 0, i32 1 + %t36 = load i32, ptr %t35 + %t37 = icmp ult i32 %t32, %t36 + br i1 %t37, label %ixok7, label %ixbad8 ixbad8: - %t36 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t36, ptr @.fmt_bounds, ptr @.str13524, i32 %t30, i32 %t34) + %t38 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t38, ptr @.fmt_bounds, ptr @.str13661, i32 %t32, i32 %t36) call void @exit(i32 1) unreachable ixok7: - %t37 = getelementptr inbounds ptr, ptr %t32, i32 %t30 - %t38 = load ptr, ptr %t37 - %t39 = call i32 @fn_net_model_syncs(ptr %t38) - %t40 = icmp ne i32 %t39, 0 - %t41 = zext i1 %t40 to i32 - store i32 %t41, ptr %t12 + %t39 = getelementptr inbounds ptr, ptr %t34, i32 %t32 + %t40 = load ptr, ptr %t39 + %t41 = call i32 @fn_net_model_syncs(ptr %t40) + %t42 = icmp ne i32 %t41, 0 + %t43 = zext i1 %t42 to i32 + store i32 %t43, ptr %t14 br label %scend6 scend6: - %t42 = load i32, ptr %t12 - %t43 = icmp ne i32 %t42, 0 - br i1 %t43, label %then9, label %ifend11 + %t44 = load i32, ptr %t14 + %t45 = icmp ne i32 %t44, 0 + br i1 %t45, label %then9, label %ifend11 then9: - %t44 = load ptr, ptr @g_prog - %t45 = load i32, ptr %t4 - %t46 = getelementptr inbounds %LSlice, ptr %t44, i32 0, i32 0 - %t47 = load ptr, ptr %t46 - %t48 = getelementptr inbounds %LSlice, ptr %t44, i32 0, i32 1 - %t49 = load i32, ptr %t48 - %t50 = icmp ult i32 %t45, %t49 - br i1 %t50, label %ixok12, label %ixbad13 + %t46 = load ptr, ptr @g_prog + %t47 = load i32, ptr %t6 + %t48 = getelementptr inbounds %LSlice, ptr %t46, i32 0, i32 0 + %t49 = load ptr, ptr %t48 + %t50 = getelementptr inbounds %LSlice, ptr %t46, i32 0, i32 1 + %t51 = load i32, ptr %t50 + %t52 = icmp ult i32 %t47, %t51 + br i1 %t52, label %ixok12, label %ixbad13 ixbad13: - %t51 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t51, ptr @.fmt_bounds, ptr @.str13525, i32 %t45, i32 %t49) + %t53 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t53, ptr @.fmt_bounds, ptr @.str13662, i32 %t47, i32 %t51) call void @exit(i32 1) unreachable ixok12: - %t52 = getelementptr inbounds ptr, ptr %t47, i32 %t45 - %t53 = load ptr, ptr %t52 - %t54 = getelementptr inbounds %Cmp_Node, ptr %t53, i32 0, i32 1 + %t54 = getelementptr inbounds ptr, ptr %t49, i32 %t47 %t55 = load ptr, ptr %t54 - store ptr %t55, ptr %t56 - %t57 = load i32, ptr %t3 - %t58 = call ptr @fn_itoa(i32 %t57) - store ptr %t58, ptr %t59 - call void @fn_emit(ptr @.str13526) - %t60 = load ptr, ptr %t59 - call void @fn_emit(ptr %t60) - call void @fn_emit(ptr @.str13527) - %t61 = load ptr, ptr %t56 - %t62 = call i32 @fn_find_arch_id(ptr %t61) - %t63 = call ptr @fn_itoa(i32 %t62) - call void @fn_emit(ptr %t63) - call void @fn_emit(ptr @.str13528) - call void @fn_emit(ptr @.str13529) - %t64 = load ptr, ptr %t59 - call void @fn_emit(ptr %t64) - call void @fn_emit(ptr @.str13530) - %t65 = load ptr, ptr %t59 + %t56 = getelementptr inbounds %Cmp_Node, ptr %t55, i32 0, i32 1 + %t57 = load ptr, ptr %t56 + store ptr %t57, ptr %t58 + %t59 = load i32, ptr %t5 + %t60 = call ptr @fn_itoa(i32 %t59) + store ptr %t60, ptr %t61 + call void @fn_emit(ptr @.str13663) + %t62 = load ptr, ptr %t61 + call void @fn_emit(ptr %t62) + call void @fn_emit(ptr @.str13664) + %t63 = load ptr, ptr %t58 + %t64 = call i32 @fn_find_arch_id(ptr %t63) + %t65 = call ptr @fn_itoa(i32 %t64) call void @fn_emit(ptr %t65) - call void @fn_emit(ptr @.str13531) - %t66 = load ptr, ptr %t59 + call void @fn_emit(ptr @.str13665) + call void @fn_emit(ptr @.str13666) + %t66 = load ptr, ptr %t61 call void @fn_emit(ptr %t66) - call void @fn_emit(ptr @.str13532) - call void @fn_emit(ptr @.str13533) - %t67 = load ptr, ptr %t59 + call void @fn_emit(ptr @.str13667) + %t67 = load ptr, ptr %t61 call void @fn_emit(ptr %t67) - call void @fn_emit(ptr @.str13534) - %t68 = load ptr, ptr %t59 + call void @fn_emit(ptr @.str13668) + %t68 = load ptr, ptr %t61 call void @fn_emit(ptr %t68) - call void @fn_emit(ptr @.str13535) - %t69 = load ptr, ptr %t56 + call void @fn_emit(ptr @.str13669) + call void @fn_emit(ptr @.str13670) + %t69 = load ptr, ptr %t61 call void @fn_emit(ptr %t69) - call void @fn_emit(ptr @.str13536) - %t70 = load ptr, ptr %t59 + call void @fn_emit(ptr @.str13671) + %t70 = load ptr, ptr %t61 call void @fn_emit(ptr %t70) - call void @fn_emit(ptr @.str13537) - call void @fn_emit(ptr @.str13538) - %t71 = load ptr, ptr %t59 + call void @fn_emit(ptr @.str13672) + %t71 = load ptr, ptr %t58 call void @fn_emit(ptr %t71) - call void @fn_emit(ptr @.str13539) - %t72 = load i32, ptr %t3 - %t73 = add i32 %t72, 1 - store i32 %t73, ptr %t3 + call void @fn_emit(ptr @.str13673) + %t72 = load ptr, ptr %t61 + call void @fn_emit(ptr %t72) + call void @fn_emit(ptr @.str13674) + call void @fn_emit(ptr @.str13675) + %t73 = load ptr, ptr %t61 + call void @fn_emit(ptr %t73) + call void @fn_emit(ptr @.str13676) + %t74 = load i32, ptr %t5 + %t75 = add i32 %t74, 1 + store i32 %t75, ptr %t5 br label %ifend11 ifend11: - %t74 = load i32, ptr %t4 - %t75 = add i32 %t74, 1 - store i32 %t75, ptr %t4 + %t76 = load i32, ptr %t6 + %t77 = add i32 %t76, 1 + store i32 %t77, ptr %t6 br label %wcond0 wend2: - call void @fn_emit(ptr @.str13540) - call void @fn_emit(ptr @.str13541) - call void @fn_emit(ptr @.str13542) - %t76 = load ptr, ptr %t1 - call void @fn_emit(ptr %t76) - call void @fn_emit(ptr @.str13543) - store i32 0, ptr %t3 - store i32 0, ptr %t4 + call void @fn_emit(ptr @.str13677) + call void @fn_emit(ptr @.str13678) + %t78 = call ptr @fn_ecs_base(ptr @.str13679) + store ptr %t78, ptr %t79 + call void @fn_emit(ptr @.str13680) + %t80 = load ptr, ptr %t79 + call void @fn_emit(ptr %t80) + call void @fn_emit(ptr @.str13681) + store i32 0, ptr %t5 + store i32 0, ptr %t6 br label %wcond14 wcond14: - %t77 = load i32, ptr %t4 - %t78 = load ptr, ptr @g_prog - %t79 = getelementptr inbounds %LSlice, ptr %t78, i32 0, i32 1 - %t80 = load i32, ptr %t79 - %t81 = icmp slt i32 %t77, %t80 - %t82 = zext i1 %t81 to i32 - %t83 = icmp ne i32 %t82, 0 - br i1 %t83, label %wbody15, label %wend16 + %t81 = load i32, ptr %t6 + %t82 = load ptr, ptr @g_prog + %t83 = getelementptr inbounds %LSlice, ptr %t82, i32 0, i32 1 + %t84 = load i32, ptr %t83 + %t85 = icmp slt i32 %t81, %t84 + %t86 = zext i1 %t85 to i32 + %t87 = icmp ne i32 %t86, 0 + br i1 %t87, label %wbody15, label %wend16 wbody15: - %t85 = load ptr, ptr @g_prog - %t86 = load i32, ptr %t4 - %t87 = getelementptr inbounds %LSlice, ptr %t85, i32 0, i32 0 - %t88 = load ptr, ptr %t87 - %t89 = getelementptr inbounds %LSlice, ptr %t85, i32 0, i32 1 - %t90 = load i32, ptr %t89 - %t91 = icmp ult i32 %t86, %t90 - br i1 %t91, label %ixok17, label %ixbad18 + %t89 = load ptr, ptr @g_prog + %t90 = load i32, ptr %t6 + %t91 = getelementptr inbounds %LSlice, ptr %t89, i32 0, i32 0 + %t92 = load ptr, ptr %t91 + %t93 = getelementptr inbounds %LSlice, ptr %t89, i32 0, i32 1 + %t94 = load i32, ptr %t93 + %t95 = icmp ult i32 %t90, %t94 + br i1 %t95, label %ixok17, label %ixbad18 ixbad18: - %t92 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t92, ptr @.fmt_bounds, ptr @.str13544, i32 %t86, i32 %t90) + %t96 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t96, ptr @.fmt_bounds, ptr @.str13682, i32 %t90, i32 %t94) call void @exit(i32 1) unreachable ixok17: - %t93 = getelementptr inbounds ptr, ptr %t88, i32 %t86 - %t94 = load ptr, ptr %t93 - %t95 = getelementptr inbounds %Cmp_Node, ptr %t94, i32 0, i32 0 - %t96 = load i32, ptr %t95 - %t97 = icmp eq i32 %t96, 10 - %t98 = zext i1 %t97 to i32 - %t99 = icmp ne i32 %t98, 0 - %t100 = zext i1 %t99 to i32 - store i32 %t100, ptr %t84 - br i1 %t99, label %sc19, label %scend20 + %t97 = getelementptr inbounds ptr, ptr %t92, i32 %t90 + %t98 = load ptr, ptr %t97 + %t99 = getelementptr inbounds %Cmp_Node, ptr %t98, i32 0, i32 0 + %t100 = load i32, ptr %t99 + %t101 = icmp eq i32 %t100, 10 + %t102 = zext i1 %t101 to i32 + %t103 = icmp ne i32 %t102, 0 + %t104 = zext i1 %t103 to i32 + store i32 %t104, ptr %t88 + br i1 %t103, label %sc19, label %scend20 sc19: - %t101 = load ptr, ptr @g_prog - %t102 = load i32, ptr %t4 - %t103 = getelementptr inbounds %LSlice, ptr %t101, i32 0, i32 0 - %t104 = load ptr, ptr %t103 - %t105 = getelementptr inbounds %LSlice, ptr %t101, i32 0, i32 1 - %t106 = load i32, ptr %t105 - %t107 = icmp ult i32 %t102, %t106 - br i1 %t107, label %ixok21, label %ixbad22 + %t105 = load ptr, ptr @g_prog + %t106 = load i32, ptr %t6 + %t107 = getelementptr inbounds %LSlice, ptr %t105, i32 0, i32 0 + %t108 = load ptr, ptr %t107 + %t109 = getelementptr inbounds %LSlice, ptr %t105, i32 0, i32 1 + %t110 = load i32, ptr %t109 + %t111 = icmp ult i32 %t106, %t110 + br i1 %t111, label %ixok21, label %ixbad22 ixbad22: - %t108 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t108, ptr @.fmt_bounds, ptr @.str13545, i32 %t102, i32 %t106) + %t112 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t112, ptr @.fmt_bounds, ptr @.str13683, i32 %t106, i32 %t110) call void @exit(i32 1) unreachable ixok21: - %t109 = getelementptr inbounds ptr, ptr %t104, i32 %t102 - %t110 = load ptr, ptr %t109 - %t111 = call i32 @fn_net_model_syncs(ptr %t110) - %t112 = icmp ne i32 %t111, 0 - %t113 = zext i1 %t112 to i32 - store i32 %t113, ptr %t84 + %t113 = getelementptr inbounds ptr, ptr %t108, i32 %t106 + %t114 = load ptr, ptr %t113 + %t115 = call i32 @fn_net_model_syncs(ptr %t114) + %t116 = icmp ne i32 %t115, 0 + %t117 = zext i1 %t116 to i32 + store i32 %t117, ptr %t88 br label %scend20 scend20: - %t114 = load i32, ptr %t84 - %t115 = icmp ne i32 %t114, 0 - br i1 %t115, label %then23, label %ifend25 + %t118 = load i32, ptr %t88 + %t119 = icmp ne i32 %t118, 0 + br i1 %t119, label %then23, label %ifend25 then23: - %t116 = load ptr, ptr @g_prog - %t117 = load i32, ptr %t4 - %t118 = getelementptr inbounds %LSlice, ptr %t116, i32 0, i32 0 - %t119 = load ptr, ptr %t118 - %t120 = getelementptr inbounds %LSlice, ptr %t116, i32 0, i32 1 - %t121 = load i32, ptr %t120 - %t122 = icmp ult i32 %t117, %t121 - br i1 %t122, label %ixok26, label %ixbad27 + %t120 = load ptr, ptr @g_prog + %t121 = load i32, ptr %t6 + %t122 = getelementptr inbounds %LSlice, ptr %t120, i32 0, i32 0 + %t123 = load ptr, ptr %t122 + %t124 = getelementptr inbounds %LSlice, ptr %t120, i32 0, i32 1 + %t125 = load i32, ptr %t124 + %t126 = icmp ult i32 %t121, %t125 + br i1 %t126, label %ixok26, label %ixbad27 ixbad27: - %t123 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t123, ptr @.fmt_bounds, ptr @.str13546, i32 %t117, i32 %t121) + %t127 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t127, ptr @.fmt_bounds, ptr @.str13684, i32 %t121, i32 %t125) call void @exit(i32 1) unreachable ixok26: - %t124 = getelementptr inbounds ptr, ptr %t119, i32 %t117 - %t125 = load ptr, ptr %t124 - %t126 = getelementptr inbounds %Cmp_Node, ptr %t125, i32 0, i32 1 - %t127 = load ptr, ptr %t126 - store ptr %t127, ptr %t128 - %t129 = load i32, ptr %t3 - %t130 = call ptr @fn_itoa(i32 %t129) - store ptr %t130, ptr %t131 - call void @fn_emit(ptr @.str13547) - %t132 = load ptr, ptr %t131 - call void @fn_emit(ptr %t132) - call void @fn_emit(ptr @.str13548) - %t133 = load ptr, ptr %t128 - %t134 = call i32 @fn_find_arch_id(ptr %t133) - %t135 = call ptr @fn_itoa(i32 %t134) - call void @fn_emit(ptr %t135) - call void @fn_emit(ptr @.str13549) - call void @fn_emit(ptr @.str13550) - %t136 = load ptr, ptr %t131 + %t128 = getelementptr inbounds ptr, ptr %t123, i32 %t121 + %t129 = load ptr, ptr %t128 + %t130 = getelementptr inbounds %Cmp_Node, ptr %t129, i32 0, i32 1 + %t131 = load ptr, ptr %t130 + store ptr %t131, ptr %t132 + %t133 = load i32, ptr %t5 + %t134 = call ptr @fn_itoa(i32 %t133) + store ptr %t134, ptr %t135 + call void @fn_emit(ptr @.str13685) + %t136 = load ptr, ptr %t135 call void @fn_emit(ptr %t136) - call void @fn_emit(ptr @.str13551) - %t137 = load ptr, ptr %t131 - call void @fn_emit(ptr %t137) - call void @fn_emit(ptr @.str13552) - %t138 = load ptr, ptr %t131 - call void @fn_emit(ptr %t138) - call void @fn_emit(ptr @.str13553) - call void @fn_emit(ptr @.str13554) - %t139 = load ptr, ptr %t131 + call void @fn_emit(ptr @.str13686) + %t137 = load ptr, ptr %t132 + %t138 = call i32 @fn_find_arch_id(ptr %t137) + %t139 = call ptr @fn_itoa(i32 %t138) call void @fn_emit(ptr %t139) - call void @fn_emit(ptr @.str13555) - %t140 = load ptr, ptr %t128 + call void @fn_emit(ptr @.str13687) + call void @fn_emit(ptr @.str13688) + %t140 = load ptr, ptr %t135 call void @fn_emit(ptr %t140) - call void @fn_emit(ptr @.str13556) - call void @fn_emit(ptr @.str13557) - %t141 = load ptr, ptr %t131 + call void @fn_emit(ptr @.str13689) + %t141 = load ptr, ptr %t135 call void @fn_emit(ptr %t141) - call void @fn_emit(ptr @.str13558) - %t142 = load i32, ptr %t3 - %t143 = add i32 %t142, 1 - store i32 %t143, ptr %t3 + call void @fn_emit(ptr @.str13690) + %t142 = load ptr, ptr %t135 + call void @fn_emit(ptr %t142) + call void @fn_emit(ptr @.str13691) + call void @fn_emit(ptr @.str13692) + %t143 = load ptr, ptr %t135 + call void @fn_emit(ptr %t143) + call void @fn_emit(ptr @.str13693) + %t144 = load ptr, ptr %t132 + call void @fn_emit(ptr %t144) + call void @fn_emit(ptr @.str13694) + call void @fn_emit(ptr @.str13695) + %t145 = load ptr, ptr %t135 + call void @fn_emit(ptr %t145) + call void @fn_emit(ptr @.str13696) + %t146 = load i32, ptr %t5 + %t147 = add i32 %t146, 1 + store i32 %t147, ptr %t5 br label %ifend25 ifend25: - %t144 = load i32, ptr %t4 - %t145 = add i32 %t144, 1 - store i32 %t145, ptr %t4 + %t148 = load i32, ptr %t6 + %t149 = add i32 %t148, 1 + store i32 %t149, ptr %t6 br label %wcond14 wend16: - call void @fn_emit(ptr @.str13559) - call void @fn_emit(ptr @.str13560) - call void @fn_emit(ptr @.str13561) - %t146 = load ptr, ptr %t1 - call void @fn_emit(ptr %t146) - call void @fn_emit(ptr @.str13562) - store i32 0, ptr %t3 - store i32 0, ptr %t4 + call void @fn_emit(ptr @.str13697) + call void @fn_emit(ptr @.str13698) + %t150 = call ptr @fn_ecs_base(ptr @.str13699) + store ptr %t150, ptr %t151 + call void @fn_emit(ptr @.str13700) + %t152 = load ptr, ptr %t151 + call void @fn_emit(ptr %t152) + call void @fn_emit(ptr @.str13701) + store i32 0, ptr %t5 + store i32 0, ptr %t6 br label %wcond28 wcond28: - %t147 = load i32, ptr %t4 - %t148 = load ptr, ptr @g_prog - %t149 = getelementptr inbounds %LSlice, ptr %t148, i32 0, i32 1 - %t150 = load i32, ptr %t149 - %t151 = icmp slt i32 %t147, %t150 - %t152 = zext i1 %t151 to i32 - %t153 = icmp ne i32 %t152, 0 - br i1 %t153, label %wbody29, label %wend30 + %t153 = load i32, ptr %t6 + %t154 = load ptr, ptr @g_prog + %t155 = getelementptr inbounds %LSlice, ptr %t154, i32 0, i32 1 + %t156 = load i32, ptr %t155 + %t157 = icmp slt i32 %t153, %t156 + %t158 = zext i1 %t157 to i32 + %t159 = icmp ne i32 %t158, 0 + br i1 %t159, label %wbody29, label %wend30 wbody29: - %t155 = load ptr, ptr @g_prog - %t156 = load i32, ptr %t4 - %t157 = getelementptr inbounds %LSlice, ptr %t155, i32 0, i32 0 - %t158 = load ptr, ptr %t157 - %t159 = getelementptr inbounds %LSlice, ptr %t155, i32 0, i32 1 - %t160 = load i32, ptr %t159 - %t161 = icmp ult i32 %t156, %t160 - br i1 %t161, label %ixok31, label %ixbad32 + %t161 = load ptr, ptr @g_prog + %t162 = load i32, ptr %t6 + %t163 = getelementptr inbounds %LSlice, ptr %t161, i32 0, i32 0 + %t164 = load ptr, ptr %t163 + %t165 = getelementptr inbounds %LSlice, ptr %t161, i32 0, i32 1 + %t166 = load i32, ptr %t165 + %t167 = icmp ult i32 %t162, %t166 + br i1 %t167, label %ixok31, label %ixbad32 ixbad32: - %t162 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t162, ptr @.fmt_bounds, ptr @.str13563, i32 %t156, i32 %t160) + %t168 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t168, ptr @.fmt_bounds, ptr @.str13702, i32 %t162, i32 %t166) call void @exit(i32 1) unreachable ixok31: - %t163 = getelementptr inbounds ptr, ptr %t158, i32 %t156 - %t164 = load ptr, ptr %t163 - %t165 = getelementptr inbounds %Cmp_Node, ptr %t164, i32 0, i32 0 - %t166 = load i32, ptr %t165 - %t167 = icmp eq i32 %t166, 10 - %t168 = zext i1 %t167 to i32 - %t169 = icmp ne i32 %t168, 0 - %t170 = zext i1 %t169 to i32 - store i32 %t170, ptr %t154 - br i1 %t169, label %sc33, label %scend34 + %t169 = getelementptr inbounds ptr, ptr %t164, i32 %t162 + %t170 = load ptr, ptr %t169 + %t171 = getelementptr inbounds %Cmp_Node, ptr %t170, i32 0, i32 0 + %t172 = load i32, ptr %t171 + %t173 = icmp eq i32 %t172, 10 + %t174 = zext i1 %t173 to i32 + %t175 = icmp ne i32 %t174, 0 + %t176 = zext i1 %t175 to i32 + store i32 %t176, ptr %t160 + br i1 %t175, label %sc33, label %scend34 sc33: - %t171 = load ptr, ptr @g_prog - %t172 = load i32, ptr %t4 - %t173 = getelementptr inbounds %LSlice, ptr %t171, i32 0, i32 0 - %t174 = load ptr, ptr %t173 - %t175 = getelementptr inbounds %LSlice, ptr %t171, i32 0, i32 1 - %t176 = load i32, ptr %t175 - %t177 = icmp ult i32 %t172, %t176 - br i1 %t177, label %ixok35, label %ixbad36 + %t177 = load ptr, ptr @g_prog + %t178 = load i32, ptr %t6 + %t179 = getelementptr inbounds %LSlice, ptr %t177, i32 0, i32 0 + %t180 = load ptr, ptr %t179 + %t181 = getelementptr inbounds %LSlice, ptr %t177, i32 0, i32 1 + %t182 = load i32, ptr %t181 + %t183 = icmp ult i32 %t178, %t182 + br i1 %t183, label %ixok35, label %ixbad36 ixbad36: - %t178 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t178, ptr @.fmt_bounds, ptr @.str13564, i32 %t172, i32 %t176) + %t184 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t184, ptr @.fmt_bounds, ptr @.str13703, i32 %t178, i32 %t182) call void @exit(i32 1) unreachable ixok35: - %t179 = getelementptr inbounds ptr, ptr %t174, i32 %t172 - %t180 = load ptr, ptr %t179 - %t181 = call i32 @fn_net_model_syncs(ptr %t180) - %t182 = icmp ne i32 %t181, 0 - %t183 = zext i1 %t182 to i32 - store i32 %t183, ptr %t154 + %t185 = getelementptr inbounds ptr, ptr %t180, i32 %t178 + %t186 = load ptr, ptr %t185 + %t187 = call i32 @fn_net_model_syncs(ptr %t186) + %t188 = icmp ne i32 %t187, 0 + %t189 = zext i1 %t188 to i32 + store i32 %t189, ptr %t160 br label %scend34 scend34: - %t184 = load i32, ptr %t154 - %t185 = icmp ne i32 %t184, 0 - br i1 %t185, label %then37, label %ifend39 + %t190 = load i32, ptr %t160 + %t191 = icmp ne i32 %t190, 0 + br i1 %t191, label %then37, label %ifend39 then37: - %t186 = load ptr, ptr @g_prog - %t187 = load i32, ptr %t4 - %t188 = getelementptr inbounds %LSlice, ptr %t186, i32 0, i32 0 - %t189 = load ptr, ptr %t188 - %t190 = getelementptr inbounds %LSlice, ptr %t186, i32 0, i32 1 - %t191 = load i32, ptr %t190 - %t192 = icmp ult i32 %t187, %t191 - br i1 %t192, label %ixok40, label %ixbad41 + %t192 = load ptr, ptr @g_prog + %t193 = load i32, ptr %t6 + %t194 = getelementptr inbounds %LSlice, ptr %t192, i32 0, i32 0 + %t195 = load ptr, ptr %t194 + %t196 = getelementptr inbounds %LSlice, ptr %t192, i32 0, i32 1 + %t197 = load i32, ptr %t196 + %t198 = icmp ult i32 %t193, %t197 + br i1 %t198, label %ixok40, label %ixbad41 ixbad41: - %t193 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t193, ptr @.fmt_bounds, ptr @.str13565, i32 %t187, i32 %t191) + %t199 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t199, ptr @.fmt_bounds, ptr @.str13704, i32 %t193, i32 %t197) call void @exit(i32 1) unreachable ixok40: - %t194 = getelementptr inbounds ptr, ptr %t189, i32 %t187 - %t195 = load ptr, ptr %t194 - %t196 = getelementptr inbounds %Cmp_Node, ptr %t195, i32 0, i32 1 - %t197 = load ptr, ptr %t196 - store ptr %t197, ptr %t198 - %t199 = load i32, ptr %t3 - %t200 = call ptr @fn_itoa(i32 %t199) - store ptr %t200, ptr %t201 - call void @fn_emit(ptr @.str13566) - %t202 = load ptr, ptr %t201 - call void @fn_emit(ptr %t202) - call void @fn_emit(ptr @.str13567) - %t203 = load ptr, ptr %t198 - %t204 = call i32 @fn_find_arch_id(ptr %t203) - %t205 = call ptr @fn_itoa(i32 %t204) - call void @fn_emit(ptr %t205) - call void @fn_emit(ptr @.str13568) - call void @fn_emit(ptr @.str13569) - %t206 = load ptr, ptr %t201 - call void @fn_emit(ptr %t206) - call void @fn_emit(ptr @.str13570) - %t207 = load ptr, ptr %t201 - call void @fn_emit(ptr %t207) - call void @fn_emit(ptr @.str13571) - %t208 = load ptr, ptr %t201 + %t200 = getelementptr inbounds ptr, ptr %t195, i32 %t193 + %t201 = load ptr, ptr %t200 + %t202 = getelementptr inbounds %Cmp_Node, ptr %t201, i32 0, i32 1 + %t203 = load ptr, ptr %t202 + store ptr %t203, ptr %t204 + %t205 = load i32, ptr %t5 + %t206 = call ptr @fn_itoa(i32 %t205) + store ptr %t206, ptr %t207 + call void @fn_emit(ptr @.str13705) + %t208 = load ptr, ptr %t207 call void @fn_emit(ptr %t208) - call void @fn_emit(ptr @.str13572) - call void @fn_emit(ptr @.str13573) - %t209 = load ptr, ptr %t201 - call void @fn_emit(ptr %t209) - call void @fn_emit(ptr @.str13574) - %t210 = load ptr, ptr @g_prog - %t211 = load i32, ptr %t4 - %t212 = getelementptr inbounds %LSlice, ptr %t210, i32 0, i32 0 - %t213 = load ptr, ptr %t212 - %t214 = getelementptr inbounds %LSlice, ptr %t210, i32 0, i32 1 - %t215 = load i32, ptr %t214 - %t216 = icmp ult i32 %t211, %t215 - br i1 %t216, label %ixok42, label %ixbad43 + call void @fn_emit(ptr @.str13706) + %t209 = load ptr, ptr %t204 + %t210 = call i32 @fn_find_arch_id(ptr %t209) + %t211 = call ptr @fn_itoa(i32 %t210) + call void @fn_emit(ptr %t211) + call void @fn_emit(ptr @.str13707) + call void @fn_emit(ptr @.str13708) + %t212 = load ptr, ptr %t207 + call void @fn_emit(ptr %t212) + call void @fn_emit(ptr @.str13709) + %t213 = load ptr, ptr %t207 + call void @fn_emit(ptr %t213) + call void @fn_emit(ptr @.str13710) + %t214 = load ptr, ptr %t207 + call void @fn_emit(ptr %t214) + call void @fn_emit(ptr @.str13711) + call void @fn_emit(ptr @.str13712) + %t215 = load ptr, ptr %t207 + call void @fn_emit(ptr %t215) + call void @fn_emit(ptr @.str13713) + %t216 = load ptr, ptr @g_prog + %t217 = load i32, ptr %t6 + %t218 = getelementptr inbounds %LSlice, ptr %t216, i32 0, i32 0 + %t219 = load ptr, ptr %t218 + %t220 = getelementptr inbounds %LSlice, ptr %t216, i32 0, i32 1 + %t221 = load i32, ptr %t220 + %t222 = icmp ult i32 %t217, %t221 + br i1 %t222, label %ixok42, label %ixbad43 ixbad43: - %t217 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t217, ptr @.fmt_bounds, ptr @.str13575, i32 %t211, i32 %t215) + %t223 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t223, ptr @.fmt_bounds, ptr @.str13714, i32 %t217, i32 %t221) call void @exit(i32 1) unreachable ixok42: - %t218 = getelementptr inbounds ptr, ptr %t213, i32 %t211 - %t219 = load ptr, ptr %t218 - %t220 = call i32 @fn_net_model_bytes(ptr %t219) - %t221 = call ptr @fn_itoa(i32 %t220) - call void @fn_emit(ptr %t221) - call void @fn_emit(ptr @.str13576) - call void @fn_emit(ptr @.str13577) - %t222 = load ptr, ptr %t201 - call void @fn_emit(ptr %t222) - call void @fn_emit(ptr @.str13578) - %t223 = load i32, ptr %t3 - %t224 = add i32 %t223, 1 - store i32 %t224, ptr %t3 + %t224 = getelementptr inbounds ptr, ptr %t219, i32 %t217 + %t225 = load ptr, ptr %t224 + %t226 = call i32 @fn_net_model_bytes(ptr %t225) + %t227 = call ptr @fn_itoa(i32 %t226) + call void @fn_emit(ptr %t227) + call void @fn_emit(ptr @.str13715) + call void @fn_emit(ptr @.str13716) + %t228 = load ptr, ptr %t207 + call void @fn_emit(ptr %t228) + call void @fn_emit(ptr @.str13717) + %t229 = load i32, ptr %t5 + %t230 = add i32 %t229, 1 + store i32 %t230, ptr %t5 br label %ifend39 ifend39: - %t225 = load i32, ptr %t4 - %t226 = add i32 %t225, 1 - store i32 %t226, ptr %t4 + %t231 = load i32, ptr %t6 + %t232 = add i32 %t231, 1 + store i32 %t232, ptr %t6 br label %wcond28 wend30: - call void @fn_emit(ptr @.str13579) + call void @fn_emit(ptr @.str13718) br label %ret ret: ret void @@ -174203,24 +174954,33 @@ ret: define void @fn_emit_net_owner() { entry: %t1 = alloca ptr + %t3 = alloca ptr + %t6 = alloca ptr + %t9 = alloca ptr %t0 = call ptr @fn_itoa(i32 1024) store ptr %t0, ptr %t1 - call void @fn_emit(ptr @.str13580) - call void @fn_emit(ptr @.str13581) - %t2 = load ptr, ptr %t1 - call void @fn_emit(ptr %t2) - call void @fn_emit(ptr @.str13582) - call void @fn_emit(ptr @.str13583) - call void @fn_emit(ptr @.str13584) - %t3 = load ptr, ptr %t1 - call void @fn_emit(ptr %t3) - call void @fn_emit(ptr @.str13585) - call void @fn_emit(ptr @.str13586) - call void @fn_emit(ptr @.str13587) - %t4 = load ptr, ptr %t1 + call void @fn_emit(ptr @.str13719) + %t2 = call ptr @fn_ecs_base(ptr @.str13720) + store ptr %t2, ptr %t3 + call void @fn_emit(ptr @.str13721) + %t4 = load ptr, ptr %t3 call void @fn_emit(ptr %t4) - call void @fn_emit(ptr @.str13588) - call void @fn_emit(ptr @.str13589) + call void @fn_emit(ptr @.str13722) + call void @fn_emit(ptr @.str13723) + %t5 = call ptr @fn_ecs_base(ptr @.str13724) + store ptr %t5, ptr %t6 + call void @fn_emit(ptr @.str13725) + %t7 = load ptr, ptr %t6 + call void @fn_emit(ptr %t7) + call void @fn_emit(ptr @.str13726) + call void @fn_emit(ptr @.str13727) + %t8 = call ptr @fn_ecs_base(ptr @.str13728) + store ptr %t8, ptr %t9 + call void @fn_emit(ptr @.str13729) + %t10 = load ptr, ptr %t9 + call void @fn_emit(ptr %t10) + call void @fn_emit(ptr @.str13730) + call void @fn_emit(ptr @.str13731) br label %ret ret: ret void @@ -174228,32 +174988,32 @@ ret: define void @fn_emit_loopback() { entry: - call void @fn_emith(ptr @.str13590) - call void @fn_emith(ptr @.str13591) - call void @fn_emith(ptr @.str13592) - call void @fn_emith(ptr @.str13593) - call void @fn_emit(ptr @.str13594) - call void @fn_emit(ptr @.str13595) - call void @fn_emit(ptr @.str13596) - call void @fn_emit(ptr @.str13597) - call void @fn_emit(ptr @.str13598) - call void @fn_emit(ptr @.str13599) - call void @fn_emit(ptr @.str13600) - call void @fn_emit(ptr @.str13601) - call void @fn_emit(ptr @.str13602) - call void @fn_emit(ptr @.str13603) - call void @fn_emit(ptr @.str13604) - call void @fn_emit(ptr @.str13605) - call void @fn_emit(ptr @.str13606) - call void @fn_emit(ptr @.str13607) - call void @fn_emit(ptr @.str13608) - call void @fn_emit(ptr @.str13609) - call void @fn_emit(ptr @.str13610) - call void @fn_emit(ptr @.str13611) - call void @fn_emit(ptr @.str13612) - call void @fn_emit(ptr @.str13613) - call void @fn_emit(ptr @.str13614) - call void @fn_emit(ptr @.str13615) + call void @fn_emith(ptr @.str13732) + call void @fn_emith(ptr @.str13733) + call void @fn_emith(ptr @.str13734) + call void @fn_emith(ptr @.str13735) + call void @fn_emit(ptr @.str13736) + call void @fn_emit(ptr @.str13737) + call void @fn_emit(ptr @.str13738) + call void @fn_emit(ptr @.str13739) + call void @fn_emit(ptr @.str13740) + call void @fn_emit(ptr @.str13741) + call void @fn_emit(ptr @.str13742) + call void @fn_emit(ptr @.str13743) + call void @fn_emit(ptr @.str13744) + call void @fn_emit(ptr @.str13745) + call void @fn_emit(ptr @.str13746) + call void @fn_emit(ptr @.str13747) + call void @fn_emit(ptr @.str13748) + call void @fn_emit(ptr @.str13749) + call void @fn_emit(ptr @.str13750) + call void @fn_emit(ptr @.str13751) + call void @fn_emit(ptr @.str13752) + call void @fn_emit(ptr @.str13753) + call void @fn_emit(ptr @.str13754) + call void @fn_emit(ptr @.str13755) + call void @fn_emit(ptr @.str13756) + call void @fn_emit(ptr @.str13757) br label %ret ret: ret void @@ -174285,7 +175045,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13616, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13758, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -174341,7 +175101,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13617, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13759, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -174375,7 +175135,7 @@ define ptr @fn_net_send_sym() { entry: %retval = alloca ptr %t1 = alloca ptr - %t0 = call ptr @fn_find_extern(ptr @.str13618) + %t0 = call ptr @fn_find_extern(ptr @.str13760) store ptr %t0, ptr %t1 %t2 = load ptr, ptr %t1 %t3 = icmp ne ptr %t2, null @@ -174391,7 +175151,7 @@ then0: store ptr %t10, ptr %retval br label %ret ifend2: - store ptr @.str13619, ptr %retval + store ptr @.str13761, ptr %retval br label %ret ret: %t11 = load ptr, ptr %retval @@ -174402,7 +175162,7 @@ define ptr @fn_net_poll_sym() { entry: %retval = alloca ptr %t1 = alloca ptr - %t0 = call ptr @fn_find_extern(ptr @.str13620) + %t0 = call ptr @fn_find_extern(ptr @.str13762) store ptr %t0, ptr %t1 %t2 = load ptr, ptr %t1 %t3 = icmp ne ptr %t2, null @@ -174418,7 +175178,7 @@ then0: store ptr %t10, ptr %retval br label %ret ifend2: - store ptr @.str13621, ptr %retval + store ptr @.str13763, ptr %retval br label %ret ret: %t11 = load ptr, ptr %retval @@ -174436,8 +175196,8 @@ entry: %t48 = alloca ptr %t73 = alloca ptr %t79 = alloca ptr - call void @fn_emith(ptr @.str13622) - %t0 = call ptr @fn_find_extern(ptr @.str13623) + call void @fn_emith(ptr @.str13764) + %t0 = call ptr @fn_find_extern(ptr @.str13765) %t1 = icmp eq ptr %t0, null %t2 = zext i1 %t1 to i32 %t3 = icmp ne i32 %t2, 0 @@ -174448,13 +175208,13 @@ then0: ifend2: %t4 = call ptr @fn_net_poll_sym() store ptr %t4, ptr %t5 - call void @fn_emit(ptr @.str13624) - call void @fn_emit(ptr @.str13625) + call void @fn_emit(ptr @.str13766) + call void @fn_emit(ptr @.str13767) %t6 = load ptr, ptr %t5 call void @fn_emit(ptr %t6) - call void @fn_emit(ptr @.str13626) - call void @fn_emit(ptr @.str13627) - call void @fn_emit(ptr @.str13628) + call void @fn_emit(ptr @.str13768) + call void @fn_emit(ptr @.str13769) + call void @fn_emit(ptr @.str13770) store i32 0, ptr %t7 br label %wcond3 wcond3: @@ -174477,7 +175237,7 @@ wbody4: br i1 %t21, label %ixok6, label %ixbad7 ixbad7: %t22 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str13629, i32 %t16, i32 %t20) + call i32 (ptr, ptr, ...) @fprintf(ptr %t22, ptr @.fmt_bounds, ptr @.str13771, i32 %t16, i32 %t20) call void @exit(i32 1) unreachable ixok6: @@ -174495,31 +175255,31 @@ then8: %t32 = load i32, ptr %t7 %t33 = call ptr @fn_itoa(i32 %t32) store ptr %t33, ptr %t34 - call void @fn_emit(ptr @.str13630) + call void @fn_emit(ptr @.str13772) %t35 = load ptr, ptr %t34 call void @fn_emit(ptr %t35) - call void @fn_emit(ptr @.str13631) + call void @fn_emit(ptr @.str13773) %t36 = load ptr, ptr %t25 %t37 = getelementptr inbounds %Cmp_Node, ptr %t36, i32 0, i32 1 %t38 = load ptr, ptr %t37 %t39 = call i32 @fn_net_event_id(ptr %t38) %t40 = call ptr @fn_itoa(i32 %t39) call void @fn_emit(ptr %t40) - call void @fn_emit(ptr @.str13632) - call void @fn_emit(ptr @.str13633) + call void @fn_emit(ptr @.str13774) + call void @fn_emit(ptr @.str13775) %t41 = load ptr, ptr %t34 call void @fn_emit(ptr %t41) - call void @fn_emit(ptr @.str13634) + call void @fn_emit(ptr @.str13776) %t42 = load ptr, ptr %t34 call void @fn_emit(ptr %t42) - call void @fn_emit(ptr @.str13635) + call void @fn_emit(ptr @.str13777) %t43 = load ptr, ptr %t34 call void @fn_emit(ptr %t43) - call void @fn_emit(ptr @.str13636) - call void @fn_emit(ptr @.str13637) + call void @fn_emit(ptr @.str13778) + call void @fn_emit(ptr @.str13779) %t44 = load ptr, ptr %t34 call void @fn_emit(ptr %t44) - call void @fn_emit(ptr @.str13638) + call void @fn_emit(ptr @.str13780) store i32 4, ptr %t45 store i32 0, ptr %t46 %t47 = call ptr @fn_buf_new() @@ -174549,7 +175309,7 @@ wbody12: br i1 %t66, label %ixok14, label %ixbad15 ixbad15: %t67 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t67, ptr @.fmt_bounds, ptr @.str13639, i32 %t61, i32 %t65) + call i32 (ptr, ptr, ...) @fprintf(ptr %t67, ptr @.fmt_bounds, ptr @.str13781, i32 %t61, i32 %t65) call void @exit(i32 1) unreachable ixok14: @@ -174560,29 +175320,29 @@ ixok14: %t72 = call ptr @fn_llty(ptr %t71) store ptr %t72, ptr %t73 %t74 = load ptr, ptr %t34 - %t75 = call ptr @lp_str_concat(ptr %t74, ptr @.str13640) + %t75 = call ptr @lp_str_concat(ptr %t74, ptr @.str13782) %t76 = load i32, ptr %t46 %t77 = call ptr @fn_itoa(i32 %t76) %t78 = call ptr @lp_str_concat(ptr %t75, ptr %t77) store ptr %t78, ptr %t79 - call void @fn_emit(ptr @.str13641) + call void @fn_emit(ptr @.str13783) %t80 = load ptr, ptr %t79 call void @fn_emit(ptr %t80) - call void @fn_emit(ptr @.str13642) + call void @fn_emit(ptr @.str13784) %t81 = load i32, ptr %t45 %t82 = call ptr @fn_itoa(i32 %t81) call void @fn_emit(ptr %t82) - call void @fn_emit(ptr @.str13643) - call void @fn_emit(ptr @.str13644) + call void @fn_emit(ptr @.str13785) + call void @fn_emit(ptr @.str13786) %t83 = load ptr, ptr %t79 call void @fn_emit(ptr %t83) - call void @fn_emit(ptr @.str13645) + call void @fn_emit(ptr @.str13787) %t84 = load ptr, ptr %t73 call void @fn_emit(ptr %t84) - call void @fn_emit(ptr @.str13646) + call void @fn_emit(ptr @.str13788) %t85 = load ptr, ptr %t79 call void @fn_emit(ptr %t85) - call void @fn_emit(ptr @.str13647) + call void @fn_emit(ptr @.str13789) %t86 = load i32, ptr %t46 %t87 = icmp sgt i32 %t86, 0 %t88 = zext i1 %t87 to i32 @@ -174590,14 +175350,14 @@ ixok14: br i1 %t89, label %then16, label %ifend18 then16: %t90 = load ptr, ptr %t48 - call void @fn_buf_puts(ptr %t90, ptr @.str13648) + call void @fn_buf_puts(ptr %t90, ptr @.str13790) br label %ifend18 ifend18: %t91 = load ptr, ptr %t48 %t92 = load ptr, ptr %t73 call void @fn_buf_puts(ptr %t91, ptr %t92) %t93 = load ptr, ptr %t48 - call void @fn_buf_puts(ptr %t93, ptr @.str13649) + call void @fn_buf_puts(ptr %t93, ptr @.str13791) %t94 = load ptr, ptr %t48 %t95 = load ptr, ptr %t79 call void @fn_buf_puts(ptr %t94, ptr %t95) @@ -174613,7 +175373,7 @@ ifend18: br i1 %t104, label %ixok19, label %ixbad20 ixbad20: %t105 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t105, ptr @.fmt_bounds, ptr @.str13650, i32 %t99, i32 %t103) + call i32 (ptr, ptr, ...) @fprintf(ptr %t105, ptr @.fmt_bounds, ptr @.str13792, i32 %t99, i32 %t103) call void @exit(i32 1) unreachable ixok19: @@ -174630,21 +175390,21 @@ ixok19: store i32 %t114, ptr %t46 br label %wcond11 wend13: - call void @fn_emit(ptr @.str13651) + call void @fn_emit(ptr @.str13793) %t115 = load ptr, ptr %t25 %t116 = getelementptr inbounds %Cmp_Node, ptr %t115, i32 0, i32 1 %t117 = load ptr, ptr %t116 call void @fn_emit(ptr %t117) - call void @fn_emit(ptr @.str13652) + call void @fn_emit(ptr @.str13794) %t118 = load ptr, ptr %t48 %t119 = call ptr @fn_buf_str(ptr %t118) call void @fn_emit(ptr %t119) - call void @fn_emit(ptr @.str13653) - call void @fn_emit(ptr @.str13654) - call void @fn_emit(ptr @.str13655) + call void @fn_emit(ptr @.str13795) + call void @fn_emit(ptr @.str13796) + call void @fn_emit(ptr @.str13797) %t120 = load ptr, ptr %t34 call void @fn_emit(ptr %t120) - call void @fn_emit(ptr @.str13656) + call void @fn_emit(ptr @.str13798) br label %ifend10 ifend10: %t121 = load i32, ptr %t7 @@ -174652,8 +175412,8 @@ ifend10: store i32 %t122, ptr %t7 br label %wcond3 wend5: - call void @fn_emit(ptr @.str13657) - call void @fn_emit(ptr @.str13658) + call void @fn_emit(ptr @.str13799) + call void @fn_emit(ptr @.str13800) br label %ret ret: ret void @@ -174690,7 +175450,7 @@ wbody4: br i1 %t17, label %ixok6, label %ixbad7 ixbad7: %t18 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str13659, i32 %t12, i32 %t16) + call i32 (ptr, ptr, ...) @fprintf(ptr %t18, ptr @.fmt_bounds, ptr @.str13801, i32 %t12, i32 %t16) call void @exit(i32 1) unreachable ixok6: @@ -174715,7 +175475,7 @@ sc8: br i1 %t33, label %ixok10, label %ixbad11 ixbad11: %t34 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str13660, i32 %t28, i32 %t32) + call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str13802, i32 %t28, i32 %t32) call void @exit(i32 1) unreachable ixok10: @@ -174741,7 +175501,7 @@ then12: br i1 %t48, label %ixok15, label %ixbad16 ixbad16: %t49 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str13661, i32 %t43, i32 %t47) + call i32 (ptr, ptr, ...) @fprintf(ptr %t49, ptr @.fmt_bounds, ptr @.str13803, i32 %t43, i32 %t47) call void @exit(i32 1) unreachable ixok15: @@ -174758,7 +175518,7 @@ ixok15: br i1 %t58, label %ixok17, label %ixbad18 ixbad18: %t59 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t59, ptr @.fmt_bounds, ptr @.str13662, i32 %t53, i32 %t57) + call i32 (ptr, ptr, ...) @fprintf(ptr %t59, ptr @.fmt_bounds, ptr @.str13804, i32 %t53, i32 %t57) call void @exit(i32 1) unreachable ixok17: @@ -174786,7 +175546,7 @@ ifend21: %t67 = icmp ne i32 %t66, 0 br i1 %t67, label %then22, label %ifend24 then22: - call void @fn_emith(ptr @.str13663) + call void @fn_emith(ptr @.str13805) call void @fn_emit_net_pump() br label %ifend24 ifend24: @@ -174806,7 +175566,7 @@ entry: %t3 = load ptr, ptr %t2 store ptr %t3, ptr %t4 %t5 = load ptr, ptr %t4 - %t6 = call i32 @lp_str_eq(ptr %t5, ptr @.str13664) + %t6 = call i32 @lp_str_eq(ptr %t5, ptr @.str13806) %t7 = icmp ne i32 %t6, 0 br i1 %t7, label %then0, label %ifend2 then0: @@ -174814,7 +175574,7 @@ then0: br label %ret ifend2: %t8 = load ptr, ptr %t4 - %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str13665) + %t9 = call i32 @lp_str_eq(ptr %t8, ptr @.str13807) %t10 = icmp ne i32 %t9, 0 br i1 %t10, label %then3, label %ifend5 then3: @@ -174822,7 +175582,7 @@ then3: br label %ret ifend5: %t11 = load ptr, ptr %t4 - %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str13666) + %t12 = call i32 @lp_str_eq(ptr %t11, ptr @.str13808) %t13 = icmp ne i32 %t12, 0 br i1 %t13, label %then6, label %ifend8 then6: @@ -174830,7 +175590,7 @@ then6: br label %ret ifend8: %t14 = load ptr, ptr %t4 - %t15 = call i32 @lp_str_eq(ptr %t14, ptr @.str13667) + %t15 = call i32 @lp_str_eq(ptr %t14, ptr @.str13809) %t16 = icmp ne i32 %t15, 0 br i1 %t16, label %then9, label %ifend11 then9: @@ -174838,7 +175598,7 @@ then9: br label %ret ifend11: %t17 = load ptr, ptr %t4 - %t18 = call i32 @lp_str_eq(ptr %t17, ptr @.str13668) + %t18 = call i32 @lp_str_eq(ptr %t17, ptr @.str13810) %t19 = icmp ne i32 %t18, 0 br i1 %t19, label %then12, label %ifend14 then12: @@ -174846,7 +175606,7 @@ then12: br label %ret ifend14: %t20 = load ptr, ptr %t4 - %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str13669) + %t21 = call i32 @lp_str_eq(ptr %t20, ptr @.str13811) %t22 = icmp ne i32 %t21, 0 br i1 %t22, label %then15, label %ifend17 then15: @@ -174854,7 +175614,7 @@ then15: br label %ret ifend17: %t23 = load ptr, ptr %t4 - %t24 = call i32 @lp_str_eq(ptr %t23, ptr @.str13670) + %t24 = call i32 @lp_str_eq(ptr %t23, ptr @.str13812) %t25 = icmp ne i32 %t24, 0 br i1 %t25, label %then18, label %ifend20 then18: @@ -174906,7 +175666,7 @@ wbody1: br i1 %t24, label %ixok3, label %ixbad4 ixbad4: %t25 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str13671, i32 %t19, i32 %t23) + call i32 (ptr, ptr, ...) @fprintf(ptr %t25, ptr @.fmt_bounds, ptr @.str13813, i32 %t19, i32 %t23) call void @exit(i32 1) unreachable ixok3: @@ -174933,7 +175693,7 @@ then5: br i1 %t43, label %ixok8, label %ixbad9 ixbad9: %t44 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str13672, i32 %t38, i32 %t42) + call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str13814, i32 %t38, i32 %t42) call void @exit(i32 1) unreachable ixok8: @@ -174979,7 +175739,7 @@ entry: br i1 %t7, label %ixok0, label %ixbad1 ixbad1: %t8 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t8, ptr @.fmt_bounds, ptr @.str13673, i32 %t2, i32 %t6) + call i32 (ptr, ptr, ...) @fprintf(ptr %t8, ptr @.fmt_bounds, ptr @.str13815, i32 %t2, i32 %t6) call void @exit(i32 1) unreachable ixok0: @@ -175027,7 +175787,7 @@ wbody3: br i1 %t42, label %ixok5, label %ixbad6 ixbad6: %t43 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13674, i32 %t37, i32 %t41) + call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13816, i32 %t37, i32 %t41) call void @exit(i32 1) unreachable ixok5: @@ -175098,7 +175858,7 @@ grow9: put10: %t89 = load ptr, ptr %t76 %t90 = getelementptr inbounds ptr, ptr %t89, i32 %t77 - store ptr @.str13675, ptr %t90 + store ptr @.str13817, ptr %t90 %t91 = add i32 %t77, 1 store i32 %t91, ptr %t74 %t92 = load ptr, ptr %t72 @@ -175125,7 +175885,7 @@ grow11: put12: %t108 = load ptr, ptr %t95 %t109 = getelementptr inbounds ptr, ptr %t108, i32 %t96 - store ptr @.str13676, ptr %t109 + store ptr @.str13818, ptr %t109 %t110 = add i32 %t96, 1 store i32 %t110, ptr %t93 %t111 = load ptr, ptr %t72 @@ -175152,7 +175912,7 @@ grow13: put14: %t127 = load ptr, ptr %t114 %t128 = getelementptr inbounds ptr, ptr %t127, i32 %t115 - store ptr @.str13677, ptr %t128 + store ptr @.str13819, ptr %t128 %t129 = add i32 %t115, 1 store i32 %t129, ptr %t112 %t130 = load ptr, ptr %t72 @@ -175179,7 +175939,7 @@ grow15: put16: %t146 = load ptr, ptr %t133 %t147 = getelementptr inbounds ptr, ptr %t146, i32 %t134 - store ptr @.str13678, ptr %t147 + store ptr @.str13820, ptr %t147 %t148 = add i32 %t134, 1 store i32 %t148, ptr %t131 store i32 0, ptr %t149 @@ -175205,7 +175965,7 @@ wbody18: br i1 %t164, label %ixok20, label %ixbad21 ixbad21: %t165 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t165, ptr @.fmt_bounds, ptr @.str13679, i32 %t159, i32 %t163) + call i32 (ptr, ptr, ...) @fprintf(ptr %t165, ptr @.fmt_bounds, ptr @.str13821, i32 %t159, i32 %t163) call void @exit(i32 1) unreachable ixok20: @@ -175227,7 +175987,7 @@ then22: br i1 %t178, label %ixok25, label %ixbad26 ixbad26: %t179 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t179, ptr @.fmt_bounds, ptr @.str13680, i32 %t173, i32 %t177) + call i32 (ptr, ptr, ...) @fprintf(ptr %t179, ptr @.fmt_bounds, ptr @.str13822, i32 %t173, i32 %t177) call void @exit(i32 1) unreachable ixok25: @@ -175252,7 +176012,7 @@ wbody28: br i1 %t193, label %ixok30, label %ixbad31 ixbad31: %t194 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t194, ptr @.fmt_bounds, ptr @.str13681, i32 %t188, i32 %t192) + call i32 (ptr, ptr, ...) @fprintf(ptr %t194, ptr @.fmt_bounds, ptr @.str13823, i32 %t188, i32 %t192) call void @exit(i32 1) unreachable ixok30: @@ -175268,7 +176028,7 @@ ixok30: br i1 %t203, label %ixok32, label %ixbad33 ixbad33: %t204 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t204, ptr @.fmt_bounds, ptr @.str13682, i32 %t198, i32 %t202) + call i32 (ptr, ptr, ...) @fprintf(ptr %t204, ptr @.fmt_bounds, ptr @.str13824, i32 %t198, i32 %t202) call void @exit(i32 1) unreachable ixok32: @@ -175296,7 +176056,7 @@ then34: br i1 %t223, label %ixok37, label %ixbad38 ixbad38: %t224 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t224, ptr @.fmt_bounds, ptr @.str13683, i32 %t218, i32 %t222) + call i32 (ptr, ptr, ...) @fprintf(ptr %t224, ptr @.fmt_bounds, ptr @.str13825, i32 %t218, i32 %t222) call void @exit(i32 1) unreachable ixok37: @@ -175349,7 +176109,7 @@ else35: br i1 %t257, label %ixok41, label %ixbad42 ixbad42: %t258 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t258, ptr @.fmt_bounds, ptr @.str13684, i32 %t252, i32 %t256) + call i32 (ptr, ptr, ...) @fprintf(ptr %t258, ptr @.fmt_bounds, ptr @.str13826, i32 %t252, i32 %t256) call void @exit(i32 1) unreachable ixok41: @@ -175469,7 +176229,7 @@ wbody5: br i1 %t64, label %ixok7, label %ixbad8 ixbad8: %t65 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t65, ptr @.fmt_bounds, ptr @.str13685, i32 %t59, i32 %t63) + call i32 (ptr, ptr, ...) @fprintf(ptr %t65, ptr @.fmt_bounds, ptr @.str13827, i32 %t59, i32 %t63) call void @exit(i32 1) unreachable ixok7: @@ -175543,7 +176303,7 @@ wbody1: br i1 %t33, label %ixok3, label %ixbad4 ixbad4: %t34 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str13686, i32 %t28, i32 %t32) + call i32 (ptr, ptr, ...) @fprintf(ptr %t34, ptr @.fmt_bounds, ptr @.str13828, i32 %t28, i32 %t32) call void @exit(i32 1) unreachable ixok3: @@ -175568,7 +176328,7 @@ sc5: br i1 %t49, label %ixok7, label %ixbad8 ixbad8: %t50 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str13687, i32 %t44, i32 %t48) + call i32 (ptr, ptr, ...) @fprintf(ptr %t50, ptr @.fmt_bounds, ptr @.str13829, i32 %t44, i32 %t48) call void @exit(i32 1) unreachable ixok7: @@ -175627,7 +176387,7 @@ put13: br i1 %t89, label %ixok14, label %ixbad15 ixbad15: %t90 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t90, ptr @.fmt_bounds, ptr @.str13688, i32 %t84, i32 %t88) + call i32 (ptr, ptr, ...) @fprintf(ptr %t90, ptr @.fmt_bounds, ptr @.str13830, i32 %t84, i32 %t88) call void @exit(i32 1) unreachable ixok14: @@ -175676,7 +176436,7 @@ wbody1: br i1 %t15, label %ixok3, label %ixbad4 ixbad4: %t16 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13689, i32 %t10, i32 %t14) + call i32 (ptr, ptr, ...) @fprintf(ptr %t16, ptr @.fmt_bounds, ptr @.str13831, i32 %t10, i32 %t14) call void @exit(i32 1) unreachable ixok3: @@ -175701,7 +176461,7 @@ sc5: br i1 %t31, label %ixok7, label %ixbad8 ixbad8: %t32 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str13690, i32 %t26, i32 %t30) + call i32 (ptr, ptr, ...) @fprintf(ptr %t32, ptr @.fmt_bounds, ptr @.str13832, i32 %t26, i32 %t30) call void @exit(i32 1) unreachable ixok7: @@ -175786,7 +176546,7 @@ wbody4: br i1 %t28, label %ixok6, label %ixbad7 ixbad7: %t29 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str13691, i32 %t23, i32 %t27) + call i32 (ptr, ptr, ...) @fprintf(ptr %t29, ptr @.fmt_bounds, ptr @.str13833, i32 %t23, i32 %t27) call void @exit(i32 1) unreachable ixok6: @@ -175811,7 +176571,7 @@ sc8: br i1 %t44, label %ixok10, label %ixbad11 ixbad11: %t45 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t45, ptr @.fmt_bounds, ptr @.str13692, i32 %t39, i32 %t43) + call i32 (ptr, ptr, ...) @fprintf(ptr %t45, ptr @.fmt_bounds, ptr @.str13834, i32 %t39, i32 %t43) call void @exit(i32 1) unreachable ixok10: @@ -175840,7 +176600,7 @@ then12: br i1 %t62, label %ixok15, label %ixbad16 ixbad16: %t63 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t63, ptr @.fmt_bounds, ptr @.str13693, i32 %t57, i32 %t61) + call i32 (ptr, ptr, ...) @fprintf(ptr %t63, ptr @.fmt_bounds, ptr @.str13835, i32 %t57, i32 %t61) call void @exit(i32 1) unreachable ixok15: @@ -175863,7 +176623,7 @@ then17: br i1 %t77, label %ixok20, label %ixbad21 ixbad21: %t78 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t78, ptr @.fmt_bounds, ptr @.str13694, i32 %t72, i32 %t76) + call i32 (ptr, ptr, ...) @fprintf(ptr %t78, ptr @.fmt_bounds, ptr @.str13836, i32 %t72, i32 %t76) call void @exit(i32 1) unreachable ixok20: @@ -175904,13 +176664,13 @@ wbody23: br i1 %t98, label %ixok25, label %ixbad26 ixbad26: %t99 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t99, ptr @.fmt_bounds, ptr @.str13695, i32 %t93, i32 %t97) + call i32 (ptr, ptr, ...) @fprintf(ptr %t99, ptr @.fmt_bounds, ptr @.str13837, i32 %t93, i32 %t97) call void @exit(i32 1) unreachable ixok25: %t100 = getelementptr inbounds ptr, ptr %t95, i32 %t93 %t101 = load ptr, ptr %t100 - %t102 = call ptr @fn_ui_prop(ptr %t101, ptr @.str13696) + %t102 = call ptr @fn_ui_prop(ptr %t101, ptr @.str13838) store ptr %t102, ptr %t103 %t104 = load ptr, ptr %t103 %t105 = icmp ne ptr %t104, null @@ -176039,21 +176799,21 @@ entry: store i32 %arg_idx, ptr %t0 store i32 %arg_key, ptr %t1 store ptr %arg_val, ptr %t2 - %t3 = call ptr @fn_fn_sym(ptr @.str13698) - %t4 = call ptr @lp_str_concat(ptr @.str13697, ptr %t3) - %t5 = call ptr @lp_str_concat(ptr %t4, ptr @.str13699) + %t3 = call ptr @fn_fn_sym(ptr @.str13840) + %t4 = call ptr @lp_str_concat(ptr @.str13839, ptr %t3) + %t5 = call ptr @lp_str_concat(ptr %t4, ptr @.str13841) call void @fn_emit(ptr %t5) %t6 = load i32, ptr %t0 %t7 = call ptr @fn_itoa(i32 %t6) call void @fn_emit(ptr %t7) - call void @fn_emit(ptr @.str13700) + call void @fn_emit(ptr @.str13842) %t8 = load i32, ptr %t1 %t9 = call ptr @fn_itoa(i32 %t8) call void @fn_emit(ptr %t9) - call void @fn_emit(ptr @.str13701) + call void @fn_emit(ptr @.str13843) %t10 = load ptr, ptr %t2 call void @fn_emit(ptr %t10) - call void @fn_emit(ptr @.str13702) + call void @fn_emit(ptr @.str13844) br label %ret ret: ret void @@ -176065,7 +176825,7 @@ entry: %t0 = alloca ptr store ptr %arg_k, ptr %t0 %t1 = load ptr, ptr %t0 - %t2 = call i32 @lp_str_eq(ptr %t1, ptr @.str13703) + %t2 = call i32 @lp_str_eq(ptr %t1, ptr @.str13845) %t3 = icmp ne i32 %t2, 0 br i1 %t3, label %then0, label %ifend2 then0: @@ -176073,7 +176833,7 @@ then0: br label %ret ifend2: %t4 = load ptr, ptr %t0 - %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str13704) + %t5 = call i32 @lp_str_eq(ptr %t4, ptr @.str13846) %t6 = icmp ne i32 %t5, 0 br i1 %t6, label %then3, label %ifend5 then3: @@ -176081,7 +176841,7 @@ then3: br label %ret ifend5: %t7 = load ptr, ptr %t0 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str13705) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str13847) %t9 = icmp ne i32 %t8, 0 br i1 %t9, label %then6, label %ifend8 then6: @@ -176089,7 +176849,7 @@ then6: br label %ret ifend8: %t10 = load ptr, ptr %t0 - %t11 = call i32 @lp_str_eq(ptr %t10, ptr @.str13706) + %t11 = call i32 @lp_str_eq(ptr %t10, ptr @.str13848) %t12 = icmp ne i32 %t11, 0 br i1 %t12, label %then9, label %ifend11 then9: @@ -176097,7 +176857,7 @@ then9: br label %ret ifend11: %t13 = load ptr, ptr %t0 - %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str13707) + %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str13849) %t15 = icmp ne i32 %t14, 0 br i1 %t15, label %then12, label %ifend14 then12: @@ -176105,7 +176865,7 @@ then12: br label %ret ifend14: %t16 = load ptr, ptr %t0 - %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str13708) + %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str13850) %t18 = icmp ne i32 %t17, 0 br i1 %t18, label %then15, label %ifend17 then15: @@ -176113,7 +176873,7 @@ then15: br label %ret ifend17: %t19 = load ptr, ptr %t0 - %t20 = call i32 @lp_str_eq(ptr %t19, ptr @.str13709) + %t20 = call i32 @lp_str_eq(ptr %t19, ptr @.str13851) %t21 = icmp ne i32 %t20, 0 br i1 %t21, label %then18, label %ifend20 then18: @@ -176121,7 +176881,7 @@ then18: br label %ret ifend20: %t22 = load ptr, ptr %t0 - %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str13710) + %t23 = call i32 @lp_str_eq(ptr %t22, ptr @.str13852) %t24 = icmp ne i32 %t23, 0 br i1 %t24, label %then21, label %ifend23 then21: @@ -176129,7 +176889,7 @@ then21: br label %ret ifend23: %t25 = load ptr, ptr %t0 - %t26 = call i32 @lp_str_eq(ptr %t25, ptr @.str13711) + %t26 = call i32 @lp_str_eq(ptr %t25, ptr @.str13853) %t27 = icmp ne i32 %t26, 0 br i1 %t27, label %then24, label %ifend26 then24: @@ -176137,7 +176897,7 @@ then24: br label %ret ifend26: %t28 = load ptr, ptr %t0 - %t29 = call i32 @lp_str_eq(ptr %t28, ptr @.str13712) + %t29 = call i32 @lp_str_eq(ptr %t28, ptr @.str13854) %t30 = icmp ne i32 %t29, 0 br i1 %t30, label %then27, label %ifend29 then27: @@ -176145,7 +176905,7 @@ then27: br label %ret ifend29: %t31 = load ptr, ptr %t0 - %t32 = call i32 @lp_str_eq(ptr %t31, ptr @.str13713) + %t32 = call i32 @lp_str_eq(ptr %t31, ptr @.str13855) %t33 = icmp ne i32 %t32, 0 br i1 %t33, label %then30, label %ifend32 then30: @@ -176153,7 +176913,7 @@ then30: br label %ret ifend32: %t34 = load ptr, ptr %t0 - %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str13714) + %t35 = call i32 @lp_str_eq(ptr %t34, ptr @.str13856) %t36 = icmp ne i32 %t35, 0 br i1 %t36, label %then33, label %ifend35 then33: @@ -176161,7 +176921,7 @@ then33: br label %ret ifend35: %t37 = load ptr, ptr %t0 - %t38 = call i32 @lp_str_eq(ptr %t37, ptr @.str13715) + %t38 = call i32 @lp_str_eq(ptr %t37, ptr @.str13857) %t39 = icmp ne i32 %t38, 0 br i1 %t39, label %then36, label %ifend38 then36: @@ -176169,7 +176929,7 @@ then36: br label %ret ifend38: %t40 = load ptr, ptr %t0 - %t41 = call i32 @lp_str_eq(ptr %t40, ptr @.str13716) + %t41 = call i32 @lp_str_eq(ptr %t40, ptr @.str13858) %t42 = icmp ne i32 %t41, 0 br i1 %t42, label %then39, label %ifend41 then39: @@ -176220,16 +176980,16 @@ entry: store ptr %t3, ptr %t4 %t5 = load ptr, ptr %t1 store ptr %t5, ptr @g_code - %t6 = call ptr @fn_fn_sym(ptr @.str13718) - %t7 = call ptr @lp_str_concat(ptr @.str13717, ptr %t6) - %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str13719) + %t6 = call ptr @fn_fn_sym(ptr @.str13860) + %t7 = call ptr @lp_str_concat(ptr @.str13859, ptr %t6) + %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str13861) call void @fn_emit(ptr %t8) %t9 = load ptr, ptr @g_uiw %t10 = getelementptr inbounds %LSlice, ptr %t9, i32 0, i32 1 %t11 = load i32, ptr %t10 %t12 = call ptr @fn_itoa(i32 %t11) call void @fn_emit(ptr %t12) - call void @fn_emit(ptr @.str13720) + call void @fn_emit(ptr @.str13862) store i32 0, ptr %t13 br label %wcond0 wcond0: @@ -176252,7 +177012,7 @@ wbody1: br i1 %t27, label %ixok3, label %ixbad4 ixbad4: %t28 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t28, ptr @.fmt_bounds, ptr @.str13721, i32 %t22, i32 %t26) + call i32 (ptr, ptr, ...) @fprintf(ptr %t28, ptr @.fmt_bounds, ptr @.str13863, i32 %t22, i32 %t26) call void @exit(i32 1) unreachable ixok3: @@ -176277,7 +177037,7 @@ ixok3: br i1 %t45, label %ixok5, label %ixbad6 ixbad6: %t46 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t46, ptr @.fmt_bounds, ptr @.str13722, i32 %t40, i32 %t44) + call i32 (ptr, ptr, ...) @fprintf(ptr %t46, ptr @.fmt_bounds, ptr @.str13864, i32 %t40, i32 %t44) call void @exit(i32 1) unreachable ixok5: @@ -176292,7 +177052,7 @@ ixok5: br i1 %t53, label %then7, label %ifend9 then7: %t54 = load i32, ptr %t13 - call void @fn_ll_ui_set(i32 %t54, i32 17, ptr @.str13723) + call void @fn_ll_ui_set(i32 %t54, i32 17, ptr @.str13865) br label %ifend9 ifend9: %t55 = load i32, ptr %t13 @@ -176320,7 +177080,7 @@ wbody11: br i1 %t72, label %ixok13, label %ixbad14 ixbad14: %t73 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t73, ptr @.fmt_bounds, ptr @.str13724, i32 %t67, i32 %t71) + call i32 (ptr, ptr, ...) @fprintf(ptr %t73, ptr @.fmt_bounds, ptr @.str13866, i32 %t67, i32 %t71) call void @exit(i32 1) unreachable ixok13: @@ -176336,14 +177096,14 @@ ixok13: %t83 = load ptr, ptr %t82 store ptr %t83, ptr %t84 %t86 = load ptr, ptr %t80 - %t87 = call i32 @lp_str_eq(ptr %t86, ptr @.str13725) + %t87 = call i32 @lp_str_eq(ptr %t86, ptr @.str13867) %t88 = icmp ne i32 %t87, 0 %t89 = zext i1 %t88 to i32 store i32 %t89, ptr %t85 br i1 %t88, label %scend16, label %sc15 sc15: %t90 = load ptr, ptr %t80 - %t91 = call i32 @lp_str_eq(ptr %t90, ptr @.str13726) + %t91 = call i32 @lp_str_eq(ptr %t90, ptr @.str13868) %t92 = icmp ne i32 %t91, 0 %t93 = zext i1 %t92 to i32 store i32 %t93, ptr %t85 @@ -176359,37 +177119,37 @@ then17: br label %wcond10 ifend19: %t98 = load ptr, ptr %t80 - %t99 = call i32 @lp_str_eq(ptr %t98, ptr @.str13727) + %t99 = call i32 @lp_str_eq(ptr %t98, ptr @.str13869) %t100 = icmp ne i32 %t99, 0 br i1 %t100, label %then20, label %else21 then20: %t101 = load ptr, ptr %t84 %t102 = call ptr @fn_emit_expr(ptr %t101) store ptr %t102, ptr %t103 - %t104 = call ptr @fn_fn_sym(ptr @.str13729) - %t105 = call ptr @lp_str_concat(ptr @.str13728, ptr %t104) - %t106 = call ptr @lp_str_concat(ptr %t105, ptr @.str13730) + %t104 = call ptr @fn_fn_sym(ptr @.str13871) + %t105 = call ptr @lp_str_concat(ptr @.str13870, ptr %t104) + %t106 = call ptr @lp_str_concat(ptr %t105, ptr @.str13872) call void @fn_emit(ptr %t106) %t107 = load i32, ptr %t13 %t108 = call ptr @fn_itoa(i32 %t107) call void @fn_emit(ptr %t108) - call void @fn_emit(ptr @.str13731) + call void @fn_emit(ptr @.str13873) %t109 = load ptr, ptr %t103 %t110 = getelementptr inbounds %Cmp_Val, ptr %t109, i32 0, i32 0 %t111 = load ptr, ptr %t110 call void @fn_emit(ptr %t111) - call void @fn_emit(ptr @.str13732) + call void @fn_emit(ptr @.str13874) br label %ifend22 else21: %t113 = load ptr, ptr %t80 - %t114 = call i32 @lp_str_eq(ptr %t113, ptr @.str13733) + %t114 = call i32 @lp_str_eq(ptr %t113, ptr @.str13875) %t115 = icmp ne i32 %t114, 0 %t116 = zext i1 %t115 to i32 store i32 %t116, ptr %t112 br i1 %t115, label %scend24, label %sc23 sc23: %t117 = load ptr, ptr %t80 - %t118 = call i32 @lp_str_eq(ptr %t117, ptr @.str13734) + %t118 = call i32 @lp_str_eq(ptr %t117, ptr @.str13876) %t119 = icmp ne i32 %t118, 0 %t120 = zext i1 %t119 to i32 store i32 %t120, ptr %t112 @@ -176402,18 +177162,18 @@ then25: %t123 = load ptr, ptr %t84 %t124 = call ptr @fn_emit_expr(ptr %t123) store ptr %t124, ptr %t125 - %t126 = call ptr @fn_fn_sym(ptr @.str13736) - %t127 = call ptr @lp_str_concat(ptr @.str13735, ptr %t126) - %t128 = call ptr @lp_str_concat(ptr %t127, ptr @.str13737) + %t126 = call ptr @fn_fn_sym(ptr @.str13878) + %t127 = call ptr @lp_str_concat(ptr @.str13877, ptr %t126) + %t128 = call ptr @lp_str_concat(ptr %t127, ptr @.str13879) %t129 = load ptr, ptr %t125 %t130 = getelementptr inbounds %Cmp_Val, ptr %t129, i32 0, i32 0 %t131 = load ptr, ptr %t130 %t132 = call ptr @lp_str_concat(ptr %t128, ptr %t131) - %t133 = call ptr @lp_str_concat(ptr %t132, ptr @.str13738) + %t133 = call ptr @lp_str_concat(ptr %t132, ptr @.str13880) %t134 = call ptr @fn_emit_bind(ptr %t133) store ptr %t134, ptr %t135 %t136 = load ptr, ptr %t80 - %t137 = call i32 @lp_str_eq(ptr %t136, ptr @.str13739) + %t137 = call i32 @lp_str_eq(ptr %t136, ptr @.str13881) %t138 = icmp ne i32 %t137, 0 br i1 %t138, label %then28, label %else29 then28: @@ -176430,7 +177190,7 @@ ifend30: br label %ifend27 else26: %t143 = load ptr, ptr %t80 - %t144 = call i32 @lp_str_eq(ptr %t143, ptr @.str13740) + %t144 = call i32 @lp_str_eq(ptr %t143, ptr @.str13882) %t145 = icmp ne i32 %t144, 0 br i1 %t145, label %then31, label %else32 then31: @@ -176446,7 +177206,7 @@ then34: %t153 = load ptr, ptr %t84 %t154 = getelementptr inbounds %Cmp_Node, ptr %t153, i32 0, i32 1 %t155 = load ptr, ptr %t154 - %t156 = call i32 @lp_str_eq(ptr %t155, ptr @.str13741) + %t156 = call i32 @lp_str_eq(ptr %t155, ptr @.str13883) %t157 = icmp ne i32 %t156, 0 br i1 %t157, label %then37, label %ifend39 then37: @@ -176456,7 +177216,7 @@ ifend39: %t158 = load ptr, ptr %t84 %t159 = getelementptr inbounds %Cmp_Node, ptr %t158, i32 0, i32 1 %t160 = load ptr, ptr %t159 - %t161 = call i32 @lp_str_eq(ptr %t160, ptr @.str13742) + %t161 = call i32 @lp_str_eq(ptr %t160, ptr @.str13884) %t162 = icmp ne i32 %t161, 0 br i1 %t162, label %then40, label %ifend42 then40: @@ -176520,7 +177280,7 @@ scend47: br i1 %t200, label %then48, label %ifend50 then48: %t201 = load i32, ptr %t13 - call void @fn_ll_ui_set(i32 %t201, i32 6, ptr @.str13743) + call void @fn_ll_ui_set(i32 %t201, i32 6, ptr @.str13885) br label %ifend50 ifend50: br label %ifend45 @@ -176543,14 +177303,14 @@ wend12: wend2: %t206 = load ptr, ptr %t4 store ptr %t206, ptr @g_code - call void @fn_emit(ptr @.str13744) + call void @fn_emit(ptr @.str13886) %t207 = load ptr, ptr @g_falloc %t208 = call ptr @fn_buf_str(ptr %t207) call void @fn_emit(ptr %t208) %t209 = load ptr, ptr %t1 %t210 = call ptr @fn_buf_str(ptr %t209) call void @fn_emit(ptr %t210) - call void @fn_emit(ptr @.str13745) + call void @fn_emit(ptr @.str13887) br label %ret ret: ret void @@ -176581,7 +177341,7 @@ wbody1: %t14 = icmp ne i32 %t13, 0 br i1 %t14, label %then3, label %ifend5 then3: - call void @fn_emit(ptr @.str13746) + call void @fn_emit(ptr @.str13888) br label %ifend5 ifend5: %t15 = load ptr, ptr %t0 @@ -176596,7 +177356,7 @@ ifend5: br i1 %t23, label %ixok6, label %ixbad7 ixbad7: %t24 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str13747, i32 %t18, i32 %t22) + call i32 (ptr, ptr, ...) @fprintf(ptr %t24, ptr @.fmt_bounds, ptr @.str13889, i32 %t18, i32 %t22) call void @exit(i32 1) unreachable ixok6: @@ -176606,7 +177366,7 @@ ixok6: %t28 = load ptr, ptr %t27 %t29 = call ptr @fn_llty(ptr %t28) call void @fn_emit(ptr %t29) - call void @fn_emit(ptr @.str13748) + call void @fn_emit(ptr @.str13890) %t30 = load ptr, ptr %t0 %t31 = getelementptr inbounds %Cmp_Node, ptr %t30, i32 0, i32 7 %t32 = load ptr, ptr %t31 @@ -176619,7 +177379,7 @@ ixok6: br i1 %t38, label %ixok8, label %ixbad9 ixbad9: %t39 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str13749, i32 %t33, i32 %t37) + call i32 (ptr, ptr, ...) @fprintf(ptr %t39, ptr @.fmt_bounds, ptr @.str13891, i32 %t33, i32 %t37) call void @exit(i32 1) unreachable ixok8: @@ -176676,19 +177436,19 @@ entry: %t14 = call ptr @fn_llty(ptr %t13) store ptr %t14, ptr %t15 %t16 = load ptr, ptr %t15 - %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str13750) + %t17 = call i32 @lp_str_eq(ptr %t16, ptr @.str13892) %t18 = icmp eq i32 %t17, 0 %t19 = zext i1 %t18 to i32 %t20 = icmp ne i32 %t19, 0 br i1 %t20, label %then0, label %ifend2 then0: %t21 = load ptr, ptr @g_falloc - call void @fn_buf_puts(ptr %t21, ptr @.str13751) + call void @fn_buf_puts(ptr %t21, ptr @.str13893) %t22 = load ptr, ptr @g_falloc %t23 = load ptr, ptr %t15 call void @fn_buf_puts(ptr %t22, ptr %t23) %t24 = load ptr, ptr @g_falloc - call void @fn_buf_puts(ptr %t24, ptr @.str13752) + call void @fn_buf_puts(ptr %t24, ptr @.str13894) br label %ifend2 ifend2: store i32 0, ptr %t25 @@ -176717,7 +177477,7 @@ wbody4: br i1 %t43, label %ixok6, label %ixbad7 ixbad7: %t44 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str13753, i32 %t38, i32 %t42) + call i32 (ptr, ptr, ...) @fprintf(ptr %t44, ptr @.fmt_bounds, ptr @.str13895, i32 %t38, i32 %t42) call void @exit(i32 1) unreachable ixok6: @@ -176730,21 +177490,21 @@ ixok6: %t51 = call ptr @fn_llty(ptr %t50) %t52 = call ptr @fn_emit_alloca(ptr %t51) store ptr %t52, ptr %t53 - call void @fn_emit(ptr @.str13754) + call void @fn_emit(ptr @.str13896) %t54 = load ptr, ptr %t47 %t55 = getelementptr inbounds %Cmp_Node, ptr %t54, i32 0, i32 3 %t56 = load ptr, ptr %t55 %t57 = call ptr @fn_llty(ptr %t56) call void @fn_emit(ptr %t57) - call void @fn_emit(ptr @.str13755) + call void @fn_emit(ptr @.str13897) %t58 = load ptr, ptr %t47 %t59 = getelementptr inbounds %Cmp_Node, ptr %t58, i32 0, i32 1 %t60 = load ptr, ptr %t59 call void @fn_emit(ptr %t60) - call void @fn_emit(ptr @.str13756) + call void @fn_emit(ptr @.str13898) %t61 = load ptr, ptr %t53 call void @fn_emit(ptr %t61) - call void @fn_emit(ptr @.str13757) + call void @fn_emit(ptr @.str13899) %t62 = load ptr, ptr %t47 %t63 = getelementptr inbounds %Cmp_Node, ptr %t62, i32 0, i32 1 %t64 = load ptr, ptr %t63 @@ -176763,7 +177523,7 @@ wend5: %t73 = load ptr, ptr %t72 call void @fn_emit_block(ptr %t73) %t75 = load ptr, ptr %t15 - %t76 = call i32 @lp_str_eq(ptr %t75, ptr @.str13758) + %t76 = call i32 @lp_str_eq(ptr %t75, ptr @.str13900) %t77 = icmp eq i32 %t76, 0 %t78 = zext i1 %t77 to i32 %t79 = icmp ne i32 %t78, 0 @@ -176789,8 +177549,8 @@ then10: %t91 = load ptr, ptr %t0 %t92 = getelementptr inbounds %Cmp_Node, ptr %t91, i32 0, i32 1 %t93 = load ptr, ptr %t92 - %t94 = call ptr @lp_str_concat(ptr @.str13759, ptr %t93) - %t95 = call ptr @lp_str_concat(ptr %t94, ptr @.str13760) + %t94 = call ptr @lp_str_concat(ptr @.str13901, ptr %t93) + %t95 = call ptr @lp_str_concat(ptr %t94, ptr @.str13902) %t96 = load ptr, ptr @g_ret_ty %t97 = call ptr @lp_str_concat(ptr %t95, ptr %t96) call void @fn_perr(ptr %t97) @@ -176802,54 +177562,54 @@ ifend12: %t101 = icmp ne i32 %t100, 0 br i1 %t101, label %then13, label %ifend15 then13: - call void @fn_emit(ptr @.str13761) + call void @fn_emit(ptr @.str13903) br label %ifend15 ifend15: - call void @fn_emit(ptr @.str13762) + call void @fn_emit(ptr @.str13904) %t102 = load ptr, ptr %t15 - %t103 = call i32 @lp_str_eq(ptr %t102, ptr @.str13763) + %t103 = call i32 @lp_str_eq(ptr %t102, ptr @.str13905) %t104 = icmp ne i32 %t103, 0 br i1 %t104, label %then16, label %else17 then16: - call void @fn_emit(ptr @.str13764) + call void @fn_emit(ptr @.str13906) br label %ifend18 else17: %t105 = load ptr, ptr %t15 - %t106 = call ptr @lp_str_concat(ptr @.str13765, ptr %t105) - %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str13766) + %t106 = call ptr @lp_str_concat(ptr @.str13907, ptr %t105) + %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str13908) %t108 = call ptr @fn_emit_bind(ptr %t107) store ptr %t108, ptr %t109 - call void @fn_emit(ptr @.str13767) + call void @fn_emit(ptr @.str13909) %t110 = load ptr, ptr %t15 call void @fn_emit(ptr %t110) - call void @fn_emit(ptr @.str13768) + call void @fn_emit(ptr @.str13910) %t111 = load ptr, ptr %t109 call void @fn_emit(ptr %t111) - call void @fn_emit(ptr @.str13769) + call void @fn_emit(ptr @.str13911) br label %ifend18 ifend18: %t112 = load ptr, ptr %t11 store ptr %t112, ptr @g_code - call void @fn_emit(ptr @.str13770) + call void @fn_emit(ptr @.str13912) %t113 = load ptr, ptr %t15 call void @fn_emit(ptr %t113) - call void @fn_emit(ptr @.str13771) + call void @fn_emit(ptr @.str13913) %t114 = load ptr, ptr %t0 %t115 = getelementptr inbounds %Cmp_Node, ptr %t114, i32 0, i32 1 %t116 = load ptr, ptr %t115 call void @fn_emit(ptr %t116) - call void @fn_emit(ptr @.str13772) + call void @fn_emit(ptr @.str13914) %t117 = load ptr, ptr %t0 call void @fn_emit_params_sig(ptr %t117) - call void @fn_emit(ptr @.str13773) + call void @fn_emit(ptr @.str13915) %t118 = load ptr, ptr @g_falloc %t119 = call ptr @fn_buf_str(ptr %t118) call void @fn_emit(ptr %t119) %t120 = load ptr, ptr %t8 %t121 = call ptr @fn_buf_str(ptr %t120) call void @fn_emit(ptr %t121) - call void @fn_emit(ptr @.str13774) - store ptr @.str13775, ptr @g_g_det_ctx + call void @fn_emit(ptr @.str13916) + store ptr @.str13917, ptr @g_g_det_ctx br label %ret ret: ret void @@ -176860,14 +177620,14 @@ entry: %t0 = alloca ptr %t2 = alloca ptr %t5 = alloca ptr - %t23 = alloca ptr + %t25 = alloca ptr store ptr %arg_d, ptr %t0 store i32 0, ptr @g_ll_t store i32 0, ptr @g_ll_lbl store i32 0, ptr @g_g_term call void @fn_loc_reset() store i32 0, ptr @g_nloop - store ptr @.str13776, ptr @g_ret_ty + store ptr @.str13918, ptr @g_ret_ty %t1 = call ptr @fn_buf_new() store ptr %t1, ptr %t2 %t3 = call ptr @fn_buf_new() @@ -176877,54 +177637,61 @@ entry: %t6 = load ptr, ptr %t2 store ptr %t6, ptr @g_code %t7 = load ptr, ptr @g_falloc - call void @fn_buf_puts(ptr %t7, ptr @.str13777) - call void @fn_emit(ptr @.str13778) - call void @fn_emit(ptr @.str13779) - call void @fn_emit(ptr @.str13780) - call void @fn_emit(ptr @.str13781) - %t8 = call ptr @fn_find_fn(ptr @.str13782) - %t9 = icmp ne ptr %t8, null - %t10 = zext i1 %t9 to i32 - %t11 = icmp ne i32 %t10, 0 - br i1 %t11, label %then0, label %ifend2 + call void @fn_buf_puts(ptr %t7, ptr @.str13919) + call void @fn_emit(ptr @.str13920) + call void @fn_emit(ptr @.str13921) + call void @fn_emit(ptr @.str13922) + call void @fn_emit(ptr @.str13923) + %t8 = call i32 @fn_has_ecs() + %t9 = icmp ne i32 %t8, 0 + br i1 %t9, label %then0, label %ifend2 then0: - %t12 = call ptr @fn_fn_sym(ptr @.str13784) - %t13 = call ptr @lp_str_concat(ptr @.str13783, ptr %t12) - %t14 = call ptr @lp_str_concat(ptr %t13, ptr @.str13785) - call void @fn_emit(ptr %t14) + call void @fn_emit(ptr @.str13924) br label %ifend2 ifend2: - call void @fn_emit(ptr @.str13786) - %t15 = load ptr, ptr %t0 - %t16 = getelementptr inbounds %Cmp_Node, ptr %t15, i32 0, i32 4 - %t17 = load ptr, ptr %t16 - call void @fn_emit_block(ptr %t17) - %t18 = load i32, ptr @g_g_term - %t19 = icmp eq i32 %t18, 0 - %t20 = zext i1 %t19 to i32 - %t21 = icmp ne i32 %t20, 0 - br i1 %t21, label %then3, label %ifend5 + %t10 = call ptr @fn_find_fn(ptr @.str13925) + %t11 = icmp ne ptr %t10, null + %t12 = zext i1 %t11 to i32 + %t13 = icmp ne i32 %t12, 0 + br i1 %t13, label %then3, label %ifend5 then3: - call void @fn_emit(ptr @.str13787) + %t14 = call ptr @fn_fn_sym(ptr @.str13927) + %t15 = call ptr @lp_str_concat(ptr @.str13926, ptr %t14) + %t16 = call ptr @lp_str_concat(ptr %t15, ptr @.str13928) + call void @fn_emit(ptr %t16) br label %ifend5 ifend5: - call void @fn_emit(ptr @.str13788) - %t22 = call ptr @fn_emit_bind(ptr @.str13789) - store ptr %t22, ptr %t23 - call void @fn_emit(ptr @.str13790) - %t24 = load ptr, ptr %t23 - call void @fn_emit(ptr %t24) - call void @fn_emit(ptr @.str13791) - %t25 = load ptr, ptr %t5 - store ptr %t25, ptr @g_code - call void @fn_emit(ptr @.str13792) - %t26 = load ptr, ptr @g_falloc - %t27 = call ptr @fn_buf_str(ptr %t26) - call void @fn_emit(ptr %t27) - %t28 = load ptr, ptr %t2 + call void @fn_emit(ptr @.str13929) + %t17 = load ptr, ptr %t0 + %t18 = getelementptr inbounds %Cmp_Node, ptr %t17, i32 0, i32 4 + %t19 = load ptr, ptr %t18 + call void @fn_emit_block(ptr %t19) + %t20 = load i32, ptr @g_g_term + %t21 = icmp eq i32 %t20, 0 + %t22 = zext i1 %t21 to i32 + %t23 = icmp ne i32 %t22, 0 + br i1 %t23, label %then6, label %ifend8 +then6: + call void @fn_emit(ptr @.str13930) + br label %ifend8 +ifend8: + call void @fn_emit(ptr @.str13931) + %t24 = call ptr @fn_emit_bind(ptr @.str13932) + store ptr %t24, ptr %t25 + call void @fn_emit(ptr @.str13933) + %t26 = load ptr, ptr %t25 + call void @fn_emit(ptr %t26) + call void @fn_emit(ptr @.str13934) + %t27 = load ptr, ptr %t5 + store ptr %t27, ptr @g_code + call void @fn_emit(ptr @.str13935) + %t28 = load ptr, ptr @g_falloc %t29 = call ptr @fn_buf_str(ptr %t28) call void @fn_emit(ptr %t29) - call void @fn_emit(ptr @.str13793) + %t30 = load ptr, ptr %t2 + %t31 = call ptr @fn_buf_str(ptr %t30) + call void @fn_emit(ptr %t31) + call void @fn_emit(ptr @.str13936) br label %ret ret: ret void @@ -176943,7 +177710,7 @@ entry: store i32 0, ptr @g_g_term call void @fn_loc_reset() store i32 0, ptr @g_nloop - store ptr @.str13794, ptr @g_ret_ty + store ptr @.str13937, ptr @g_ret_ty %t2 = call ptr @fn_buf_new() store ptr %t2, ptr %t3 %t4 = call ptr @fn_buf_new() @@ -176962,24 +177729,24 @@ entry: %t14 = icmp ne i32 %t13, 0 br i1 %t14, label %then0, label %ifend2 then0: - call void @fn_emit(ptr @.str13795) + call void @fn_emit(ptr @.str13938) br label %ifend2 ifend2: - call void @fn_emit(ptr @.str13796) + call void @fn_emit(ptr @.str13939) %t15 = load ptr, ptr %t6 store ptr %t15, ptr @g_code - call void @fn_emit(ptr @.str13797) + call void @fn_emit(ptr @.str13940) %t16 = load i32, ptr %t1 %t17 = call ptr @fn_itoa(i32 %t16) call void @fn_emit(ptr %t17) - call void @fn_emit(ptr @.str13798) + call void @fn_emit(ptr @.str13941) %t18 = load ptr, ptr @g_falloc %t19 = call ptr @fn_buf_str(ptr %t18) call void @fn_emit(ptr %t19) %t20 = load ptr, ptr %t3 %t21 = call ptr @fn_buf_str(ptr %t20) call void @fn_emit(ptr %t21) - call void @fn_emit(ptr @.str13799) + call void @fn_emit(ptr @.str13942) br label %ret ret: ret void @@ -177003,39 +177770,39 @@ entry: %t96 = alloca ptr %t108 = alloca i32 %t129 = alloca ptr - %t160 = alloca ptr - %t175 = alloca ptr - %t189 = alloca ptr + %t162 = alloca ptr + %t177 = alloca ptr %t191 = alloca ptr %t193 = alloca ptr %t195 = alloca ptr %t197 = alloca ptr - %t202 = alloca ptr - %t221 = alloca ptr - %t226 = alloca ptr - %t239 = alloca ptr - %t244 = alloca ptr - %t257 = alloca ptr - %t262 = alloca ptr + %t199 = alloca ptr + %t204 = alloca ptr + %t223 = alloca ptr + %t228 = alloca ptr + %t241 = alloca ptr + %t246 = alloca ptr + %t259 = alloca ptr %t264 = alloca ptr %t266 = alloca ptr %t268 = alloca ptr - %t289 = alloca ptr - %t294 = alloca ptr - %t314 = alloca ptr + %t270 = alloca ptr + %t291 = alloca ptr + %t296 = alloca ptr %t316 = alloca ptr %t318 = alloca ptr %t320 = alloca ptr - %t325 = alloca ptr - %t330 = alloca ptr - %t337 = alloca ptr - %t355 = alloca ptr - %t362 = alloca ptr - %t373 = alloca ptr - %t378 = alloca ptr - call void @fn_emith(ptr @.str13800) - call void @fn_emith(ptr @.str13801) - call void @fn_emith(ptr @.str13802) + %t322 = alloca ptr + %t327 = alloca ptr + %t332 = alloca ptr + %t339 = alloca ptr + %t357 = alloca ptr + %t364 = alloca ptr + %t375 = alloca ptr + %t380 = alloca ptr + call void @fn_emith(ptr @.str13943) + call void @fn_emith(ptr @.str13944) + call void @fn_emith(ptr @.str13945) store i32 0, ptr %t0 br label %wcond0 wcond0: @@ -177058,7 +177825,7 @@ wbody1: br i1 %t14, label %ixok3, label %ixbad4 ixbad4: %t15 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13803, i32 %t9, i32 %t13) + call i32 (ptr, ptr, ...) @fprintf(ptr %t15, ptr @.fmt_bounds, ptr @.str13946, i32 %t9, i32 %t13) call void @exit(i32 1) unreachable ixok3: @@ -177075,120 +177842,120 @@ wend2: %t22 = icmp ne i32 %t21, 0 br i1 %t22, label %then5, label %ifend7 then5: - call void @fn_emith(ptr @.str13804) + call void @fn_emith(ptr @.str13947) br label %ifend7 ifend7: %t23 = load i32, ptr @g_g_uses_expect_str %t24 = icmp ne i32 %t23, 0 br i1 %t24, label %then8, label %ifend10 then8: - call void @fn_emith(ptr @.str13805) + call void @fn_emith(ptr @.str13948) br label %ifend10 ifend10: %t25 = load i32, ptr @g_g_uses_expect_fp %t26 = icmp ne i32 %t25, 0 br i1 %t26, label %then11, label %ifend13 then11: - call void @fn_emith(ptr @.str13806) + call void @fn_emith(ptr @.str13949) br label %ifend13 ifend13: store i32 0, ptr @g_ll_t store i32 0, ptr @g_ll_lbl - call void @fn_emit(ptr @.str13807) - call void @fn_emit(ptr @.str13808) - call void @fn_emit(ptr @.str13809) - call void @fn_emit(ptr @.str13810) - call void @fn_emit(ptr @.str13811) - call void @fn_emit(ptr @.str13812) - %t27 = call ptr @fn_lbl(ptr @.str13813) + call void @fn_emit(ptr @.str13950) + call void @fn_emit(ptr @.str13951) + call void @fn_emit(ptr @.str13952) + call void @fn_emit(ptr @.str13953) + call void @fn_emit(ptr @.str13954) + call void @fn_emit(ptr @.str13955) + %t27 = call ptr @fn_lbl(ptr @.str13956) store ptr %t27, ptr %t28 - %t29 = call ptr @fn_lbl(ptr @.str13814) + %t29 = call ptr @fn_lbl(ptr @.str13957) store ptr %t29, ptr %t30 - %t31 = call ptr @fn_emit_bind(ptr @.str13815) + %t31 = call ptr @fn_emit_bind(ptr @.str13958) store ptr %t31, ptr %t32 %t33 = load ptr, ptr %t32 - %t34 = call ptr @lp_str_concat(ptr @.str13816, ptr %t33) - %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str13817) + %t34 = call ptr @lp_str_concat(ptr @.str13959, ptr %t33) + %t35 = call ptr @lp_str_concat(ptr %t34, ptr @.str13960) %t36 = load ptr, ptr %t28 %t37 = call ptr @lp_str_concat(ptr %t35, ptr %t36) - %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str13818) + %t38 = call ptr @lp_str_concat(ptr %t37, ptr @.str13961) %t39 = load ptr, ptr %t30 %t40 = call ptr @lp_str_concat(ptr %t38, ptr %t39) - %t41 = call ptr @lp_str_concat(ptr %t40, ptr @.str13819) + %t41 = call ptr @lp_str_concat(ptr %t40, ptr @.str13962) call void @fn_emit(ptr %t41) %t42 = load ptr, ptr %t28 - %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str13820) + %t43 = call ptr @lp_str_concat(ptr %t42, ptr @.str13963) call void @fn_emit(ptr %t43) - %t44 = call ptr @fn_emit_bind(ptr @.str13821) + %t44 = call ptr @fn_emit_bind(ptr @.str13964) store ptr %t44, ptr %t45 %t46 = load ptr, ptr %t45 - %t47 = call ptr @lp_str_concat(ptr @.str13822, ptr %t46) + %t47 = call ptr @lp_str_concat(ptr @.str13965, ptr %t46) %t48 = call ptr @fn_emit_bind(ptr %t47) store ptr %t48, ptr %t49 %t50 = load ptr, ptr %t49 - %t51 = call ptr @lp_str_concat(ptr @.str13823, ptr %t50) - %t52 = call ptr @lp_str_concat(ptr %t51, ptr @.str13824) + %t51 = call ptr @lp_str_concat(ptr @.str13966, ptr %t50) + %t52 = call ptr @lp_str_concat(ptr %t51, ptr @.str13967) call void @fn_emit(ptr %t52) %t53 = load ptr, ptr %t30 - %t54 = call ptr @lp_str_concat(ptr @.str13825, ptr %t53) - %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str13826) + %t54 = call ptr @lp_str_concat(ptr @.str13968, ptr %t53) + %t55 = call ptr @lp_str_concat(ptr %t54, ptr @.str13969) call void @fn_emit(ptr %t55) %t56 = load ptr, ptr %t30 - %t57 = call ptr @lp_str_concat(ptr %t56, ptr @.str13827) + %t57 = call ptr @lp_str_concat(ptr %t56, ptr @.str13970) call void @fn_emit(ptr %t57) - %t58 = call ptr @fn_lbl(ptr @.str13828) + %t58 = call ptr @fn_lbl(ptr @.str13971) store ptr %t58, ptr %t59 - %t60 = call ptr @fn_lbl(ptr @.str13829) + %t60 = call ptr @fn_lbl(ptr @.str13972) store ptr %t60, ptr %t61 - %t62 = call ptr @fn_emit_bind(ptr @.str13830) + %t62 = call ptr @fn_emit_bind(ptr @.str13973) store ptr %t62, ptr %t63 %t64 = load ptr, ptr %t63 - %t65 = call ptr @lp_str_concat(ptr @.str13831, ptr %t64) - %t66 = call ptr @lp_str_concat(ptr %t65, ptr @.str13832) + %t65 = call ptr @lp_str_concat(ptr @.str13974, ptr %t64) + %t66 = call ptr @lp_str_concat(ptr %t65, ptr @.str13975) %t67 = call ptr @fn_emit_bind(ptr %t66) store ptr %t67, ptr %t68 - %t69 = call ptr @fn_lbl(ptr @.str13833) + %t69 = call ptr @fn_lbl(ptr @.str13976) store ptr %t69, ptr %t70 %t71 = load ptr, ptr %t68 - %t72 = call ptr @lp_str_concat(ptr @.str13834, ptr %t71) - %t73 = call ptr @lp_str_concat(ptr %t72, ptr @.str13835) + %t72 = call ptr @lp_str_concat(ptr @.str13977, ptr %t71) + %t73 = call ptr @lp_str_concat(ptr %t72, ptr @.str13978) %t74 = load ptr, ptr %t70 %t75 = call ptr @lp_str_concat(ptr %t73, ptr %t74) - %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str13836) + %t76 = call ptr @lp_str_concat(ptr %t75, ptr @.str13979) %t77 = load ptr, ptr %t61 %t78 = call ptr @lp_str_concat(ptr %t76, ptr %t77) - %t79 = call ptr @lp_str_concat(ptr %t78, ptr @.str13837) + %t79 = call ptr @lp_str_concat(ptr %t78, ptr @.str13980) call void @fn_emit(ptr %t79) %t80 = load ptr, ptr %t70 - %t81 = call ptr @lp_str_concat(ptr %t80, ptr @.str13838) + %t81 = call ptr @lp_str_concat(ptr %t80, ptr @.str13981) call void @fn_emit(ptr %t81) - %t82 = call ptr @fn_emit_str_const(ptr @.str13839) + %t82 = call ptr @fn_emit_str_const(ptr @.str13982) store ptr %t82, ptr %t83 %t84 = load ptr, ptr %t63 - %t85 = call ptr @lp_str_concat(ptr @.str13840, ptr %t84) - %t86 = call ptr @lp_str_concat(ptr %t85, ptr @.str13841) + %t85 = call ptr @lp_str_concat(ptr @.str13983, ptr %t84) + %t86 = call ptr @lp_str_concat(ptr %t85, ptr @.str13984) %t87 = load ptr, ptr %t83 %t88 = call ptr @lp_str_concat(ptr %t86, ptr %t87) - %t89 = call ptr @lp_str_concat(ptr %t88, ptr @.str13842) + %t89 = call ptr @lp_str_concat(ptr %t88, ptr @.str13985) %t90 = call ptr @fn_emit_bind(ptr %t89) store ptr %t90, ptr %t91 %t92 = load ptr, ptr %t91 - %t93 = call ptr @lp_str_concat(ptr @.str13843, ptr %t92) - %t94 = call ptr @lp_str_concat(ptr %t93, ptr @.str13844) + %t93 = call ptr @lp_str_concat(ptr @.str13986, ptr %t92) + %t94 = call ptr @lp_str_concat(ptr %t93, ptr @.str13987) %t95 = call ptr @fn_emit_bind(ptr %t94) store ptr %t95, ptr %t96 %t97 = load ptr, ptr %t96 - %t98 = call ptr @lp_str_concat(ptr @.str13845, ptr %t97) - %t99 = call ptr @lp_str_concat(ptr %t98, ptr @.str13846) + %t98 = call ptr @lp_str_concat(ptr @.str13988, ptr %t97) + %t99 = call ptr @lp_str_concat(ptr %t98, ptr @.str13989) %t100 = load ptr, ptr %t59 %t101 = call ptr @lp_str_concat(ptr %t99, ptr %t100) - %t102 = call ptr @lp_str_concat(ptr %t101, ptr @.str13847) + %t102 = call ptr @lp_str_concat(ptr %t101, ptr @.str13990) %t103 = load ptr, ptr %t61 %t104 = call ptr @lp_str_concat(ptr %t102, ptr %t103) - %t105 = call ptr @lp_str_concat(ptr %t104, ptr @.str13848) + %t105 = call ptr @lp_str_concat(ptr %t104, ptr @.str13991) call void @fn_emit(ptr %t105) %t106 = load ptr, ptr %t59 - %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str13849) + %t107 = call ptr @lp_str_concat(ptr %t106, ptr @.str13992) call void @fn_emit(ptr %t107) store i32 0, ptr %t108 br label %wcond14 @@ -177212,7 +177979,7 @@ wbody15: br i1 %t122, label %ixok17, label %ixbad18 ixbad18: %t123 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t123, ptr @.fmt_bounds, ptr @.str13850, i32 %t117, i32 %t121) + call i32 (ptr, ptr, ...) @fprintf(ptr %t123, ptr @.fmt_bounds, ptr @.str13993, i32 %t117, i32 %t121) call void @exit(i32 1) unreachable ixok17: @@ -177223,326 +177990,333 @@ ixok17: %t128 = call ptr @fn_emit_str_const(ptr %t127) store ptr %t128, ptr %t129 %t130 = load ptr, ptr %t129 - %t131 = call ptr @lp_str_concat(ptr @.str13851, ptr %t130) - %t132 = call ptr @lp_str_concat(ptr %t131, ptr @.str13852) + %t131 = call ptr @lp_str_concat(ptr @.str13994, ptr %t130) + %t132 = call ptr @lp_str_concat(ptr %t131, ptr @.str13995) call void @fn_emit(ptr %t132) %t133 = load i32, ptr %t108 %t134 = add i32 %t133, 1 store i32 %t134, ptr %t108 br label %wcond14 wend16: - call void @fn_emit(ptr @.str13853) + call void @fn_emit(ptr @.str13996) %t135 = load ptr, ptr %t61 - %t136 = call ptr @lp_str_concat(ptr %t135, ptr @.str13854) + %t136 = call ptr @lp_str_concat(ptr %t135, ptr @.str13997) call void @fn_emit(ptr %t136) - call void @fn_emit(ptr @.str13855) + call void @fn_emit(ptr @.str13998) %t137 = call i32 @fn_has_ecs() %t138 = icmp ne i32 %t137, 0 br i1 %t138, label %then19, label %ifend21 then19: - call void @fn_emit(ptr @.str13856) + call void @fn_emit(ptr @.str13999) br label %ifend21 ifend21: - call void @fn_emit(ptr @.str13857) + %t139 = call i32 @fn_has_ecs() + %t140 = icmp ne i32 %t139, 0 + br i1 %t140, label %then22, label %ifend24 +then22: + call void @fn_emit(ptr @.str14000) + br label %ifend24 +ifend24: + call void @fn_emit(ptr @.str14001) store i32 0, ptr %t0 - br label %wcond22 -wcond22: - %t139 = load i32, ptr %t0 - %t140 = load ptr, ptr @g_g_tests - %t141 = getelementptr inbounds %LSlice, ptr %t140, i32 0, i32 1 - %t142 = load i32, ptr %t141 - %t143 = icmp slt i32 %t139, %t142 - %t144 = zext i1 %t143 to i32 - %t145 = icmp ne i32 %t144, 0 - br i1 %t145, label %wbody23, label %wend24 -wbody23: - %t146 = load ptr, ptr @g_g_tests - %t147 = load i32, ptr %t0 - %t148 = getelementptr inbounds %LSlice, ptr %t146, i32 0, i32 0 - %t149 = load ptr, ptr %t148 - %t150 = getelementptr inbounds %LSlice, ptr %t146, i32 0, i32 1 - %t151 = load i32, ptr %t150 - %t152 = icmp ult i32 %t147, %t151 - br i1 %t152, label %ixok25, label %ixbad26 -ixbad26: - %t153 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t153, ptr @.fmt_bounds, ptr @.str13859, i32 %t147, i32 %t151) + br label %wcond25 +wcond25: + %t141 = load i32, ptr %t0 + %t142 = load ptr, ptr @g_g_tests + %t143 = getelementptr inbounds %LSlice, ptr %t142, i32 0, i32 1 + %t144 = load i32, ptr %t143 + %t145 = icmp slt i32 %t141, %t144 + %t146 = zext i1 %t145 to i32 + %t147 = icmp ne i32 %t146, 0 + br i1 %t147, label %wbody26, label %wend27 +wbody26: + %t148 = load ptr, ptr @g_g_tests + %t149 = load i32, ptr %t0 + %t150 = getelementptr inbounds %LSlice, ptr %t148, i32 0, i32 0 + %t151 = load ptr, ptr %t150 + %t152 = getelementptr inbounds %LSlice, ptr %t148, i32 0, i32 1 + %t153 = load i32, ptr %t152 + %t154 = icmp ult i32 %t149, %t153 + br i1 %t154, label %ixok28, label %ixbad29 +ixbad29: + %t155 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t155, ptr @.fmt_bounds, ptr @.str14003, i32 %t149, i32 %t153) call void @exit(i32 1) unreachable -ixok25: - %t154 = getelementptr inbounds ptr, ptr %t149, i32 %t147 - %t155 = load ptr, ptr %t154 - %t156 = getelementptr inbounds %Cmp_Node, ptr %t155, i32 0, i32 1 +ixok28: + %t156 = getelementptr inbounds ptr, ptr %t151, i32 %t149 %t157 = load ptr, ptr %t156 - %t158 = call ptr @lp_str_concat(ptr @.str13858, ptr %t157) - %t159 = call ptr @fn_emit_str_const(ptr %t158) - store ptr %t159, ptr %t160 - %t161 = load ptr, ptr @g_g_tests - %t162 = load i32, ptr %t0 - %t163 = getelementptr inbounds %LSlice, ptr %t161, i32 0, i32 0 - %t164 = load ptr, ptr %t163 - %t165 = getelementptr inbounds %LSlice, ptr %t161, i32 0, i32 1 - %t166 = load i32, ptr %t165 - %t167 = icmp ult i32 %t162, %t166 - br i1 %t167, label %ixok27, label %ixbad28 -ixbad28: - %t168 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t168, ptr @.fmt_bounds, ptr @.str13861, i32 %t162, i32 %t166) + %t158 = getelementptr inbounds %Cmp_Node, ptr %t157, i32 0, i32 1 + %t159 = load ptr, ptr %t158 + %t160 = call ptr @lp_str_concat(ptr @.str14002, ptr %t159) + %t161 = call ptr @fn_emit_str_const(ptr %t160) + store ptr %t161, ptr %t162 + %t163 = load ptr, ptr @g_g_tests + %t164 = load i32, ptr %t0 + %t165 = getelementptr inbounds %LSlice, ptr %t163, i32 0, i32 0 + %t166 = load ptr, ptr %t165 + %t167 = getelementptr inbounds %LSlice, ptr %t163, i32 0, i32 1 + %t168 = load i32, ptr %t167 + %t169 = icmp ult i32 %t164, %t168 + br i1 %t169, label %ixok30, label %ixbad31 +ixbad31: + %t170 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t170, ptr @.fmt_bounds, ptr @.str14005, i32 %t164, i32 %t168) call void @exit(i32 1) unreachable -ixok27: - %t169 = getelementptr inbounds ptr, ptr %t164, i32 %t162 - %t170 = load ptr, ptr %t169 - %t171 = getelementptr inbounds %Cmp_Node, ptr %t170, i32 0, i32 1 +ixok30: + %t171 = getelementptr inbounds ptr, ptr %t166, i32 %t164 %t172 = load ptr, ptr %t171 - %t173 = call ptr @lp_str_concat(ptr @.str13860, ptr %t172) - %t174 = call ptr @fn_emit_str_const(ptr %t173) - store ptr %t174, ptr %t175 - %t176 = load ptr, ptr @g_g_tests - %t177 = load i32, ptr %t0 - %t178 = getelementptr inbounds %LSlice, ptr %t176, i32 0, i32 0 - %t179 = load ptr, ptr %t178 - %t180 = getelementptr inbounds %LSlice, ptr %t176, i32 0, i32 1 - %t181 = load i32, ptr %t180 - %t182 = icmp ult i32 %t177, %t181 - br i1 %t182, label %ixok29, label %ixbad30 -ixbad30: - %t183 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t183, ptr @.fmt_bounds, ptr @.str13862, i32 %t177, i32 %t181) + %t173 = getelementptr inbounds %Cmp_Node, ptr %t172, i32 0, i32 1 + %t174 = load ptr, ptr %t173 + %t175 = call ptr @lp_str_concat(ptr @.str14004, ptr %t174) + %t176 = call ptr @fn_emit_str_const(ptr %t175) + store ptr %t176, ptr %t177 + %t178 = load ptr, ptr @g_g_tests + %t179 = load i32, ptr %t0 + %t180 = getelementptr inbounds %LSlice, ptr %t178, i32 0, i32 0 + %t181 = load ptr, ptr %t180 + %t182 = getelementptr inbounds %LSlice, ptr %t178, i32 0, i32 1 + %t183 = load i32, ptr %t182 + %t184 = icmp ult i32 %t179, %t183 + br i1 %t184, label %ixok32, label %ixbad33 +ixbad33: + %t185 = call ptr @lp_win_stdio(i32 2) + call i32 (ptr, ptr, ...) @fprintf(ptr %t185, ptr @.fmt_bounds, ptr @.str14006, i32 %t179, i32 %t183) call void @exit(i32 1) unreachable -ixok29: - %t184 = getelementptr inbounds ptr, ptr %t179, i32 %t177 - %t185 = load ptr, ptr %t184 - %t186 = getelementptr inbounds %Cmp_Node, ptr %t185, i32 0, i32 1 +ixok32: + %t186 = getelementptr inbounds ptr, ptr %t181, i32 %t179 %t187 = load ptr, ptr %t186 - %t188 = call ptr @fn_emit_str_const(ptr %t187) - store ptr %t188, ptr %t189 - %t190 = call ptr @fn_lbl(ptr @.str13863) + %t188 = getelementptr inbounds %Cmp_Node, ptr %t187, i32 0, i32 1 + %t189 = load ptr, ptr %t188 + %t190 = call ptr @fn_emit_str_const(ptr %t189) store ptr %t190, ptr %t191 - %t192 = call ptr @fn_lbl(ptr @.str13864) + %t192 = call ptr @fn_lbl(ptr @.str14007) store ptr %t192, ptr %t193 - %t194 = call ptr @fn_lbl(ptr @.str13865) + %t194 = call ptr @fn_lbl(ptr @.str14008) store ptr %t194, ptr %t195 - %t196 = call ptr @fn_emit_bind(ptr @.str13866) + %t196 = call ptr @fn_lbl(ptr @.str14009) store ptr %t196, ptr %t197 - %t198 = load ptr, ptr %t197 - %t199 = call ptr @lp_str_concat(ptr @.str13867, ptr %t198) - %t200 = call ptr @lp_str_concat(ptr %t199, ptr @.str13868) - %t201 = call ptr @fn_emit_bind(ptr %t200) - store ptr %t201, ptr %t202 - %t203 = load ptr, ptr %t202 - %t204 = call ptr @lp_str_concat(ptr @.str13869, ptr %t203) - %t205 = call ptr @lp_str_concat(ptr %t204, ptr @.str13870) - %t206 = load ptr, ptr %t193 - %t207 = call ptr @lp_str_concat(ptr %t205, ptr %t206) - %t208 = call ptr @lp_str_concat(ptr %t207, ptr @.str13871) - %t209 = load ptr, ptr %t191 - %t210 = call ptr @lp_str_concat(ptr %t208, ptr %t209) - %t211 = call ptr @lp_str_concat(ptr %t210, ptr @.str13872) - call void @fn_emit(ptr %t211) - %t212 = load ptr, ptr %t191 - %t213 = call ptr @lp_str_concat(ptr %t212, ptr @.str13873) + %t198 = call ptr @fn_emit_bind(ptr @.str14010) + store ptr %t198, ptr %t199 + %t200 = load ptr, ptr %t199 + %t201 = call ptr @lp_str_concat(ptr @.str14011, ptr %t200) + %t202 = call ptr @lp_str_concat(ptr %t201, ptr @.str14012) + %t203 = call ptr @fn_emit_bind(ptr %t202) + store ptr %t203, ptr %t204 + %t205 = load ptr, ptr %t204 + %t206 = call ptr @lp_str_concat(ptr @.str14013, ptr %t205) + %t207 = call ptr @lp_str_concat(ptr %t206, ptr @.str14014) + %t208 = load ptr, ptr %t195 + %t209 = call ptr @lp_str_concat(ptr %t207, ptr %t208) + %t210 = call ptr @lp_str_concat(ptr %t209, ptr @.str14015) + %t211 = load ptr, ptr %t193 + %t212 = call ptr @lp_str_concat(ptr %t210, ptr %t211) + %t213 = call ptr @lp_str_concat(ptr %t212, ptr @.str14016) call void @fn_emit(ptr %t213) - %t214 = load ptr, ptr %t197 - %t215 = call ptr @lp_str_concat(ptr @.str13874, ptr %t214) - %t216 = call ptr @lp_str_concat(ptr %t215, ptr @.str13875) - %t217 = load ptr, ptr %t189 - %t218 = call ptr @lp_str_concat(ptr %t216, ptr %t217) - %t219 = call ptr @lp_str_concat(ptr %t218, ptr @.str13876) - %t220 = call ptr @fn_emit_bind(ptr %t219) - store ptr %t220, ptr %t221 - %t222 = load ptr, ptr %t221 - %t223 = call ptr @lp_str_concat(ptr @.str13877, ptr %t222) - %t224 = call ptr @lp_str_concat(ptr %t223, ptr @.str13878) - %t225 = call ptr @fn_emit_bind(ptr %t224) - store ptr %t225, ptr %t226 - %t227 = load ptr, ptr %t226 - %t228 = call ptr @lp_str_concat(ptr @.str13879, ptr %t227) - %t229 = call ptr @lp_str_concat(ptr %t228, ptr @.str13880) - %t230 = load ptr, ptr %t193 - %t231 = call ptr @lp_str_concat(ptr %t229, ptr %t230) - %t232 = call ptr @lp_str_concat(ptr %t231, ptr @.str13881) - %t233 = load ptr, ptr %t195 - %t234 = call ptr @lp_str_concat(ptr %t232, ptr %t233) - %t235 = call ptr @lp_str_concat(ptr %t234, ptr @.str13882) - call void @fn_emit(ptr %t235) - %t236 = load ptr, ptr %t193 - %t237 = call ptr @lp_str_concat(ptr %t236, ptr @.str13883) + %t214 = load ptr, ptr %t193 + %t215 = call ptr @lp_str_concat(ptr %t214, ptr @.str14017) + call void @fn_emit(ptr %t215) + %t216 = load ptr, ptr %t199 + %t217 = call ptr @lp_str_concat(ptr @.str14018, ptr %t216) + %t218 = call ptr @lp_str_concat(ptr %t217, ptr @.str14019) + %t219 = load ptr, ptr %t191 + %t220 = call ptr @lp_str_concat(ptr %t218, ptr %t219) + %t221 = call ptr @lp_str_concat(ptr %t220, ptr @.str14020) + %t222 = call ptr @fn_emit_bind(ptr %t221) + store ptr %t222, ptr %t223 + %t224 = load ptr, ptr %t223 + %t225 = call ptr @lp_str_concat(ptr @.str14021, ptr %t224) + %t226 = call ptr @lp_str_concat(ptr %t225, ptr @.str14022) + %t227 = call ptr @fn_emit_bind(ptr %t226) + store ptr %t227, ptr %t228 + %t229 = load ptr, ptr %t228 + %t230 = call ptr @lp_str_concat(ptr @.str14023, ptr %t229) + %t231 = call ptr @lp_str_concat(ptr %t230, ptr @.str14024) + %t232 = load ptr, ptr %t195 + %t233 = call ptr @lp_str_concat(ptr %t231, ptr %t232) + %t234 = call ptr @lp_str_concat(ptr %t233, ptr @.str14025) + %t235 = load ptr, ptr %t197 + %t236 = call ptr @lp_str_concat(ptr %t234, ptr %t235) + %t237 = call ptr @lp_str_concat(ptr %t236, ptr @.str14026) call void @fn_emit(ptr %t237) - %t238 = call ptr @fn_emit_bind(ptr @.str13884) - store ptr %t238, ptr %t239 - %t240 = load ptr, ptr %t239 - %t241 = call ptr @lp_str_concat(ptr @.str13885, ptr %t240) - %t242 = call ptr @lp_str_concat(ptr %t241, ptr @.str13886) - %t243 = call ptr @fn_emit_bind(ptr %t242) - store ptr %t243, ptr %t244 - %t245 = load ptr, ptr %t244 - %t246 = call ptr @lp_str_concat(ptr @.str13887, ptr %t245) - %t247 = call ptr @lp_str_concat(ptr %t246, ptr @.str13888) - call void @fn_emit(ptr %t247) - call void @fn_emit(ptr @.str13889) - %t248 = load i32, ptr %t0 - %t249 = icmp sgt i32 %t248, 0 - %t250 = zext i1 %t249 to i32 - %t251 = icmp ne i32 %t250, 0 - br i1 %t251, label %then31, label %ifend33 -then31: - call void @fn_emit(ptr @.str13890) - br label %ifend33 -ifend33: - %t252 = load i32, ptr %t0 - %t253 = call ptr @fn_itoa(i32 %t252) - %t254 = call ptr @lp_str_concat(ptr @.str13891, ptr %t253) - %t255 = call ptr @lp_str_concat(ptr %t254, ptr @.str13892) - call void @fn_emit(ptr %t255) - %t256 = call ptr @fn_emit_bind(ptr @.str13893) - store ptr %t256, ptr %t257 - %t258 = load ptr, ptr %t257 - %t259 = call ptr @lp_str_concat(ptr @.str13894, ptr %t258) - %t260 = call ptr @lp_str_concat(ptr %t259, ptr @.str13895) - %t261 = call ptr @fn_emit_bind(ptr %t260) - store ptr %t261, ptr %t262 - %t263 = call ptr @fn_lbl(ptr @.str13896) + %t238 = load ptr, ptr %t195 + %t239 = call ptr @lp_str_concat(ptr %t238, ptr @.str14027) + call void @fn_emit(ptr %t239) + %t240 = call ptr @fn_emit_bind(ptr @.str14028) + store ptr %t240, ptr %t241 + %t242 = load ptr, ptr %t241 + %t243 = call ptr @lp_str_concat(ptr @.str14029, ptr %t242) + %t244 = call ptr @lp_str_concat(ptr %t243, ptr @.str14030) + %t245 = call ptr @fn_emit_bind(ptr %t244) + store ptr %t245, ptr %t246 + %t247 = load ptr, ptr %t246 + %t248 = call ptr @lp_str_concat(ptr @.str14031, ptr %t247) + %t249 = call ptr @lp_str_concat(ptr %t248, ptr @.str14032) + call void @fn_emit(ptr %t249) + call void @fn_emit(ptr @.str14033) + %t250 = load i32, ptr %t0 + %t251 = icmp sgt i32 %t250, 0 + %t252 = zext i1 %t251 to i32 + %t253 = icmp ne i32 %t252, 0 + br i1 %t253, label %then34, label %ifend36 +then34: + call void @fn_emit(ptr @.str14034) + br label %ifend36 +ifend36: + %t254 = load i32, ptr %t0 + %t255 = call ptr @fn_itoa(i32 %t254) + %t256 = call ptr @lp_str_concat(ptr @.str14035, ptr %t255) + %t257 = call ptr @lp_str_concat(ptr %t256, ptr @.str14036) + call void @fn_emit(ptr %t257) + %t258 = call ptr @fn_emit_bind(ptr @.str14037) + store ptr %t258, ptr %t259 + %t260 = load ptr, ptr %t259 + %t261 = call ptr @lp_str_concat(ptr @.str14038, ptr %t260) + %t262 = call ptr @lp_str_concat(ptr %t261, ptr @.str14039) + %t263 = call ptr @fn_emit_bind(ptr %t262) store ptr %t263, ptr %t264 - %t265 = call ptr @fn_lbl(ptr @.str13897) + %t265 = call ptr @fn_lbl(ptr @.str14040) store ptr %t265, ptr %t266 - %t267 = call ptr @fn_lbl(ptr @.str13898) + %t267 = call ptr @fn_lbl(ptr @.str14041) store ptr %t267, ptr %t268 - %t269 = load ptr, ptr %t262 - %t270 = call ptr @lp_str_concat(ptr @.str13899, ptr %t269) - %t271 = call ptr @lp_str_concat(ptr %t270, ptr @.str13900) - %t272 = load ptr, ptr %t266 - %t273 = call ptr @lp_str_concat(ptr %t271, ptr %t272) - %t274 = call ptr @lp_str_concat(ptr %t273, ptr @.str13901) - %t275 = load ptr, ptr %t264 - %t276 = call ptr @lp_str_concat(ptr %t274, ptr %t275) - %t277 = call ptr @lp_str_concat(ptr %t276, ptr @.str13902) - call void @fn_emit(ptr %t277) - %t278 = load ptr, ptr %t264 - %t279 = call ptr @lp_str_concat(ptr %t278, ptr @.str13903) + %t269 = call ptr @fn_lbl(ptr @.str14042) + store ptr %t269, ptr %t270 + %t271 = load ptr, ptr %t264 + %t272 = call ptr @lp_str_concat(ptr @.str14043, ptr %t271) + %t273 = call ptr @lp_str_concat(ptr %t272, ptr @.str14044) + %t274 = load ptr, ptr %t268 + %t275 = call ptr @lp_str_concat(ptr %t273, ptr %t274) + %t276 = call ptr @lp_str_concat(ptr %t275, ptr @.str14045) + %t277 = load ptr, ptr %t266 + %t278 = call ptr @lp_str_concat(ptr %t276, ptr %t277) + %t279 = call ptr @lp_str_concat(ptr %t278, ptr @.str14046) call void @fn_emit(ptr %t279) - %t280 = load ptr, ptr %t160 - %t281 = call ptr @lp_str_concat(ptr @.str13904, ptr %t280) - %t282 = call ptr @lp_str_concat(ptr %t281, ptr @.str13905) - call void @fn_emit(ptr %t282) - %t283 = load ptr, ptr %t268 - %t284 = call ptr @lp_str_concat(ptr @.str13906, ptr %t283) - %t285 = call ptr @lp_str_concat(ptr %t284, ptr @.str13907) - call void @fn_emit(ptr %t285) - %t286 = load ptr, ptr %t266 - %t287 = call ptr @lp_str_concat(ptr %t286, ptr @.str13908) + %t280 = load ptr, ptr %t266 + %t281 = call ptr @lp_str_concat(ptr %t280, ptr @.str14047) + call void @fn_emit(ptr %t281) + %t282 = load ptr, ptr %t162 + %t283 = call ptr @lp_str_concat(ptr @.str14048, ptr %t282) + %t284 = call ptr @lp_str_concat(ptr %t283, ptr @.str14049) + call void @fn_emit(ptr %t284) + %t285 = load ptr, ptr %t270 + %t286 = call ptr @lp_str_concat(ptr @.str14050, ptr %t285) + %t287 = call ptr @lp_str_concat(ptr %t286, ptr @.str14051) call void @fn_emit(ptr %t287) - %t288 = call ptr @fn_emit_bind(ptr @.str13909) - store ptr %t288, ptr %t289 - %t290 = load ptr, ptr %t289 - %t291 = call ptr @lp_str_concat(ptr @.str13910, ptr %t290) - %t292 = call ptr @lp_str_concat(ptr %t291, ptr @.str13911) - %t293 = call ptr @fn_emit_bind(ptr %t292) - store ptr %t293, ptr %t294 - %t295 = load ptr, ptr %t294 - %t296 = call ptr @lp_str_concat(ptr @.str13912, ptr %t295) - %t297 = call ptr @lp_str_concat(ptr %t296, ptr @.str13913) - call void @fn_emit(ptr %t297) - %t298 = load ptr, ptr %t175 - %t299 = call ptr @lp_str_concat(ptr @.str13914, ptr %t298) - %t300 = call ptr @lp_str_concat(ptr %t299, ptr @.str13915) - call void @fn_emit(ptr %t300) - %t301 = load ptr, ptr %t268 - %t302 = call ptr @lp_str_concat(ptr @.str13916, ptr %t301) - %t303 = call ptr @lp_str_concat(ptr %t302, ptr @.str13917) - call void @fn_emit(ptr %t303) - %t304 = load ptr, ptr %t268 - %t305 = call ptr @lp_str_concat(ptr %t304, ptr @.str13918) + %t288 = load ptr, ptr %t268 + %t289 = call ptr @lp_str_concat(ptr %t288, ptr @.str14052) + call void @fn_emit(ptr %t289) + %t290 = call ptr @fn_emit_bind(ptr @.str14053) + store ptr %t290, ptr %t291 + %t292 = load ptr, ptr %t291 + %t293 = call ptr @lp_str_concat(ptr @.str14054, ptr %t292) + %t294 = call ptr @lp_str_concat(ptr %t293, ptr @.str14055) + %t295 = call ptr @fn_emit_bind(ptr %t294) + store ptr %t295, ptr %t296 + %t297 = load ptr, ptr %t296 + %t298 = call ptr @lp_str_concat(ptr @.str14056, ptr %t297) + %t299 = call ptr @lp_str_concat(ptr %t298, ptr @.str14057) + call void @fn_emit(ptr %t299) + %t300 = load ptr, ptr %t177 + %t301 = call ptr @lp_str_concat(ptr @.str14058, ptr %t300) + %t302 = call ptr @lp_str_concat(ptr %t301, ptr @.str14059) + call void @fn_emit(ptr %t302) + %t303 = load ptr, ptr %t270 + %t304 = call ptr @lp_str_concat(ptr @.str14060, ptr %t303) + %t305 = call ptr @lp_str_concat(ptr %t304, ptr @.str14061) call void @fn_emit(ptr %t305) - %t306 = load ptr, ptr %t195 - %t307 = call ptr @lp_str_concat(ptr @.str13919, ptr %t306) - %t308 = call ptr @lp_str_concat(ptr %t307, ptr @.str13920) - call void @fn_emit(ptr %t308) - %t309 = load ptr, ptr %t195 - %t310 = call ptr @lp_str_concat(ptr %t309, ptr @.str13921) + %t306 = load ptr, ptr %t270 + %t307 = call ptr @lp_str_concat(ptr %t306, ptr @.str14062) + call void @fn_emit(ptr %t307) + %t308 = load ptr, ptr %t197 + %t309 = call ptr @lp_str_concat(ptr @.str14063, ptr %t308) + %t310 = call ptr @lp_str_concat(ptr %t309, ptr @.str14064) call void @fn_emit(ptr %t310) - %t311 = load i32, ptr %t0 - %t312 = add i32 %t311, 1 - store i32 %t312, ptr %t0 - br label %wcond22 -wend24: - %t313 = call ptr @fn_lbl(ptr @.str13922) - store ptr %t313, ptr %t314 - %t315 = call ptr @fn_lbl(ptr @.str13923) + %t311 = load ptr, ptr %t197 + %t312 = call ptr @lp_str_concat(ptr %t311, ptr @.str14065) + call void @fn_emit(ptr %t312) + %t313 = load i32, ptr %t0 + %t314 = add i32 %t313, 1 + store i32 %t314, ptr %t0 + br label %wcond25 +wend27: + %t315 = call ptr @fn_lbl(ptr @.str14066) store ptr %t315, ptr %t316 - %t317 = call ptr @fn_emit_bind(ptr @.str13924) + %t317 = call ptr @fn_lbl(ptr @.str14067) store ptr %t317, ptr %t318 - %t319 = call ptr @fn_emit_bind(ptr @.str13925) + %t319 = call ptr @fn_emit_bind(ptr @.str14068) store ptr %t319, ptr %t320 - %t321 = load ptr, ptr %t320 - %t322 = call ptr @lp_str_concat(ptr @.str13926, ptr %t321) - %t323 = call ptr @lp_str_concat(ptr %t322, ptr @.str13927) - %t324 = call ptr @fn_emit_bind(ptr %t323) - store ptr %t324, ptr %t325 - %t326 = load ptr, ptr %t318 - %t327 = call ptr @lp_str_concat(ptr @.str13928, ptr %t326) - %t328 = call ptr @lp_str_concat(ptr %t327, ptr @.str13929) - %t329 = call ptr @fn_emit_bind(ptr %t328) - store ptr %t329, ptr %t330 - %t331 = load ptr, ptr %t325 - %t332 = call ptr @lp_str_concat(ptr @.str13930, ptr %t331) - %t333 = call ptr @lp_str_concat(ptr %t332, ptr @.str13931) - %t334 = load ptr, ptr %t330 - %t335 = call ptr @lp_str_concat(ptr %t333, ptr %t334) - %t336 = call ptr @fn_emit_bind(ptr %t335) - store ptr %t336, ptr %t337 - %t338 = load ptr, ptr %t337 - %t339 = call ptr @lp_str_concat(ptr @.str13932, ptr %t338) - %t340 = call ptr @lp_str_concat(ptr %t339, ptr @.str13933) - %t341 = load ptr, ptr %t314 - %t342 = call ptr @lp_str_concat(ptr %t340, ptr %t341) - %t343 = call ptr @lp_str_concat(ptr %t342, ptr @.str13934) - %t344 = load ptr, ptr %t316 - %t345 = call ptr @lp_str_concat(ptr %t343, ptr %t344) - %t346 = call ptr @lp_str_concat(ptr %t345, ptr @.str13935) - call void @fn_emit(ptr %t346) - %t347 = load ptr, ptr %t314 - %t348 = call ptr @lp_str_concat(ptr %t347, ptr @.str13936) + %t321 = call ptr @fn_emit_bind(ptr @.str14069) + store ptr %t321, ptr %t322 + %t323 = load ptr, ptr %t322 + %t324 = call ptr @lp_str_concat(ptr @.str14070, ptr %t323) + %t325 = call ptr @lp_str_concat(ptr %t324, ptr @.str14071) + %t326 = call ptr @fn_emit_bind(ptr %t325) + store ptr %t326, ptr %t327 + %t328 = load ptr, ptr %t320 + %t329 = call ptr @lp_str_concat(ptr @.str14072, ptr %t328) + %t330 = call ptr @lp_str_concat(ptr %t329, ptr @.str14073) + %t331 = call ptr @fn_emit_bind(ptr %t330) + store ptr %t331, ptr %t332 + %t333 = load ptr, ptr %t327 + %t334 = call ptr @lp_str_concat(ptr @.str14074, ptr %t333) + %t335 = call ptr @lp_str_concat(ptr %t334, ptr @.str14075) + %t336 = load ptr, ptr %t332 + %t337 = call ptr @lp_str_concat(ptr %t335, ptr %t336) + %t338 = call ptr @fn_emit_bind(ptr %t337) + store ptr %t338, ptr %t339 + %t340 = load ptr, ptr %t339 + %t341 = call ptr @lp_str_concat(ptr @.str14076, ptr %t340) + %t342 = call ptr @lp_str_concat(ptr %t341, ptr @.str14077) + %t343 = load ptr, ptr %t316 + %t344 = call ptr @lp_str_concat(ptr %t342, ptr %t343) + %t345 = call ptr @lp_str_concat(ptr %t344, ptr @.str14078) + %t346 = load ptr, ptr %t318 + %t347 = call ptr @lp_str_concat(ptr %t345, ptr %t346) + %t348 = call ptr @lp_str_concat(ptr %t347, ptr @.str14079) call void @fn_emit(ptr %t348) - %t349 = load ptr, ptr %t320 - %t350 = call ptr @lp_str_concat(ptr @.str13937, ptr %t349) - %t351 = call ptr @lp_str_concat(ptr %t350, ptr @.str13938) - call void @fn_emit(ptr %t351) - call void @fn_emit(ptr @.str13939) - %t352 = load ptr, ptr %t316 - %t353 = call ptr @lp_str_concat(ptr %t352, ptr @.str13940) + %t349 = load ptr, ptr %t316 + %t350 = call ptr @lp_str_concat(ptr %t349, ptr @.str14080) + call void @fn_emit(ptr %t350) + %t351 = load ptr, ptr %t322 + %t352 = call ptr @lp_str_concat(ptr @.str14081, ptr %t351) + %t353 = call ptr @lp_str_concat(ptr %t352, ptr @.str14082) call void @fn_emit(ptr %t353) - %t354 = call ptr @fn_emit_bind(ptr @.str13941) - store ptr %t354, ptr %t355 - %t356 = load ptr, ptr %t318 - %t357 = call ptr @lp_str_concat(ptr @.str13942, ptr %t356) - %t358 = call ptr @lp_str_concat(ptr %t357, ptr @.str13943) - %t359 = load ptr, ptr %t355 - %t360 = call ptr @lp_str_concat(ptr %t358, ptr %t359) - %t361 = call ptr @fn_emit_bind(ptr %t360) - store ptr %t361, ptr %t362 - %t363 = load ptr, ptr %t362 - %t364 = call ptr @lp_str_concat(ptr @.str13944, ptr %t363) - %t365 = call ptr @lp_str_concat(ptr %t364, ptr @.str13945) - %t366 = load ptr, ptr %t355 - %t367 = call ptr @lp_str_concat(ptr %t365, ptr %t366) - %t368 = call ptr @lp_str_concat(ptr %t367, ptr @.str13946) - call void @fn_emit(ptr %t368) - %t369 = load ptr, ptr %t355 - %t370 = call ptr @lp_str_concat(ptr @.str13947, ptr %t369) - %t371 = call ptr @lp_str_concat(ptr %t370, ptr @.str13948) - %t372 = call ptr @fn_emit_bind(ptr %t371) - store ptr %t372, ptr %t373 - %t374 = load ptr, ptr %t373 - %t375 = call ptr @lp_str_concat(ptr @.str13949, ptr %t374) - %t376 = call ptr @lp_str_concat(ptr %t375, ptr @.str13950) - %t377 = call ptr @fn_emit_bind(ptr %t376) - store ptr %t377, ptr %t378 - %t379 = load ptr, ptr %t378 - %t380 = call ptr @lp_str_concat(ptr @.str13951, ptr %t379) - %t381 = call ptr @lp_str_concat(ptr %t380, ptr @.str13952) - call void @fn_emit(ptr %t381) + call void @fn_emit(ptr @.str14083) + %t354 = load ptr, ptr %t318 + %t355 = call ptr @lp_str_concat(ptr %t354, ptr @.str14084) + call void @fn_emit(ptr %t355) + %t356 = call ptr @fn_emit_bind(ptr @.str14085) + store ptr %t356, ptr %t357 + %t358 = load ptr, ptr %t320 + %t359 = call ptr @lp_str_concat(ptr @.str14086, ptr %t358) + %t360 = call ptr @lp_str_concat(ptr %t359, ptr @.str14087) + %t361 = load ptr, ptr %t357 + %t362 = call ptr @lp_str_concat(ptr %t360, ptr %t361) + %t363 = call ptr @fn_emit_bind(ptr %t362) + store ptr %t363, ptr %t364 + %t365 = load ptr, ptr %t364 + %t366 = call ptr @lp_str_concat(ptr @.str14088, ptr %t365) + %t367 = call ptr @lp_str_concat(ptr %t366, ptr @.str14089) + %t368 = load ptr, ptr %t357 + %t369 = call ptr @lp_str_concat(ptr %t367, ptr %t368) + %t370 = call ptr @lp_str_concat(ptr %t369, ptr @.str14090) + call void @fn_emit(ptr %t370) + %t371 = load ptr, ptr %t357 + %t372 = call ptr @lp_str_concat(ptr @.str14091, ptr %t371) + %t373 = call ptr @lp_str_concat(ptr %t372, ptr @.str14092) + %t374 = call ptr @fn_emit_bind(ptr %t373) + store ptr %t374, ptr %t375 + %t376 = load ptr, ptr %t375 + %t377 = call ptr @lp_str_concat(ptr @.str14093, ptr %t376) + %t378 = call ptr @lp_str_concat(ptr %t377, ptr @.str14094) + %t379 = call ptr @fn_emit_bind(ptr %t378) + store ptr %t379, ptr %t380 + %t381 = load ptr, ptr %t380 + %t382 = call ptr @lp_str_concat(ptr @.str14095, ptr %t381) + %t383 = call ptr @lp_str_concat(ptr %t382, ptr @.str14096) + call void @fn_emit(ptr %t383) br label %ret ret: ret void @@ -177600,7 +178374,7 @@ wbody1: br i1 %t30, label %ixok3, label %ixbad4 ixbad4: %t31 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t31, ptr @.fmt_bounds, ptr @.str13953, i32 %t25, i32 %t29) + call i32 (ptr, ptr, ...) @fprintf(ptr %t31, ptr @.fmt_bounds, ptr @.str14097, i32 %t25, i32 %t29) call void @exit(i32 1) unreachable ixok3: @@ -177639,19 +178413,19 @@ then8: %t58 = load ptr, ptr %t34 %t59 = getelementptr inbounds %Cmp_Node, ptr %t58, i32 0, i32 1 %t60 = load ptr, ptr %t59 - %t61 = call ptr @lp_str_concat(ptr @.str13954, ptr %t60) - %t62 = call ptr @lp_str_concat(ptr %t61, ptr @.str13955) + %t61 = call ptr @lp_str_concat(ptr @.str14098, ptr %t60) + %t62 = call ptr @lp_str_concat(ptr %t61, ptr @.str14099) %t63 = load ptr, ptr %t47 %t64 = getelementptr inbounds %Cmp_Node, ptr %t63, i32 0, i32 9 %t65 = load ptr, ptr %t64 %t66 = call ptr @lp_str_concat(ptr %t62, ptr %t65) - %t67 = call ptr @lp_str_concat(ptr %t66, ptr @.str13956) + %t67 = call ptr @lp_str_concat(ptr %t66, ptr @.str14100) %t68 = load ptr, ptr %t47 %t69 = getelementptr inbounds %Cmp_Node, ptr %t68, i32 0, i32 8 %t70 = load i32, ptr %t69 %t71 = call ptr @fn_itoa(i32 %t70) %t72 = call ptr @lp_str_concat(ptr %t67, ptr %t71) - %t73 = call ptr @lp_str_concat(ptr %t72, ptr @.str13957) + %t73 = call ptr @lp_str_concat(ptr %t72, ptr @.str14101) call void @fn_perr(ptr %t73) br label %ifend10 ifend10: @@ -177779,7 +178553,7 @@ entry: %t5 = call ptr @fn_pkg_of_file(ptr %t4) store ptr %t5, ptr %t6 %t7 = load ptr, ptr %t6 - %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str13958) + %t8 = call i32 @lp_str_eq(ptr %t7, ptr @.str14102) %t9 = icmp ne i32 %t8, 0 br i1 %t9, label %then0, label %ifend2 then0: @@ -177791,18 +178565,18 @@ then0: br label %ifend2 ifend2: %t14 = load ptr, ptr %t6 - %t15 = call i32 @lp_str_eq(ptr %t14, ptr @.str13959) + %t15 = call i32 @lp_str_eq(ptr %t14, ptr @.str14103) %t16 = icmp ne i32 %t15, 0 br i1 %t16, label %then3, label %ifend5 then3: - store ptr @.str13960, ptr %retval + store ptr @.str14104, ptr %retval br label %ret ifend5: %t18 = load ptr, ptr %t0 %t19 = getelementptr inbounds %Cmp_Node, ptr %t18, i32 0, i32 9 %t20 = load ptr, ptr %t19 %t21 = call ptr @fn_pkg_of_file(ptr %t20) - %t22 = call i32 @lp_str_eq(ptr %t21, ptr @.str13961) + %t22 = call i32 @lp_str_eq(ptr %t21, ptr @.str14105) %t23 = icmp eq i32 %t22, 0 %t24 = zext i1 %t23 to i32 %t25 = icmp ne i32 %t24, 0 @@ -177814,7 +178588,7 @@ sc6: %t28 = getelementptr inbounds %Cmp_Node, ptr %t27, i32 0, i32 9 %t29 = load ptr, ptr %t28 %t30 = call ptr @fn_pkg_of_file(ptr %t29) - %t31 = call i32 @lp_str_eq(ptr %t30, ptr @.str13962) + %t31 = call i32 @lp_str_eq(ptr %t30, ptr @.str14106) %t32 = icmp eq i32 %t31, 0 %t33 = zext i1 %t32 to i32 %t34 = icmp ne i32 %t33, 0 @@ -177826,12 +178600,12 @@ scend7: %t37 = icmp ne i32 %t36, 0 br i1 %t37, label %then8, label %ifend10 then8: - store ptr @.str13963, ptr %retval + store ptr @.str14107, ptr %retval br label %ret ifend10: %t38 = load ptr, ptr %t6 - %t39 = call ptr @lp_str_concat(ptr @.str13964, ptr %t38) - %t40 = call ptr @lp_str_concat(ptr %t39, ptr @.str13965) + %t39 = call ptr @lp_str_concat(ptr @.str14108, ptr %t38) + %t40 = call ptr @lp_str_concat(ptr %t39, ptr @.str14109) store ptr %t40, ptr %retval br label %ret ret: @@ -177912,7 +178686,7 @@ wbody1: br i1 %t42, label %ixok5, label %ixbad6 ixbad6: %t43 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str13966, i32 %t37, i32 %t41) + call i32 (ptr, ptr, ...) @fprintf(ptr %t43, ptr @.fmt_bounds, ptr @.str14110, i32 %t37, i32 %t41) call void @exit(i32 1) unreachable ixok5: @@ -177932,7 +178706,7 @@ ixok5: then7: %t56 = load i32, ptr %t51 %t57 = call ptr @fn_itoa(i32 %t56) - %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str13967) + %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str14111) %t59 = load ptr, ptr %t46 %t60 = getelementptr inbounds %Cmp_Node, ptr %t59, i32 0, i32 1 %t61 = load ptr, ptr %t60 @@ -177960,19 +178734,19 @@ then10: %t79 = load ptr, ptr %t46 %t80 = getelementptr inbounds %Cmp_Node, ptr %t79, i32 0, i32 1 %t81 = load ptr, ptr %t80 - %t82 = call ptr @lp_str_concat(ptr @.str13968, ptr %t81) - %t83 = call ptr @lp_str_concat(ptr %t82, ptr @.str13969) + %t82 = call ptr @lp_str_concat(ptr @.str14112, ptr %t81) + %t83 = call ptr @lp_str_concat(ptr %t82, ptr @.str14113) %t84 = load ptr, ptr %t68 %t85 = getelementptr inbounds %Cmp_Node, ptr %t84, i32 0, i32 9 %t86 = load ptr, ptr %t85 %t87 = call ptr @lp_str_concat(ptr %t83, ptr %t86) - %t88 = call ptr @lp_str_concat(ptr %t87, ptr @.str13970) + %t88 = call ptr @lp_str_concat(ptr %t87, ptr @.str14114) %t89 = load ptr, ptr %t68 %t90 = getelementptr inbounds %Cmp_Node, ptr %t89, i32 0, i32 8 %t91 = load i32, ptr %t90 %t92 = call ptr @fn_itoa(i32 %t91) %t93 = call ptr @lp_str_concat(ptr %t88, ptr %t92) - %t94 = call ptr @lp_str_concat(ptr %t93, ptr @.str13971) + %t94 = call ptr @lp_str_concat(ptr %t93, ptr @.str14115) %t95 = load ptr, ptr %t68 %t96 = load ptr, ptr %t46 %t97 = call ptr @fn_dup_whose(ptr %t95, ptr %t96) @@ -178164,7 +178938,7 @@ wbody4: br i1 %t84, label %ixok6, label %ixbad7 ixbad7: %t85 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str13972, i32 %t79, i32 %t83) + call i32 (ptr, ptr, ...) @fprintf(ptr %t85, ptr @.fmt_bounds, ptr @.str14116, i32 %t79, i32 %t83) call void @exit(i32 1) unreachable ixok6: @@ -178192,7 +178966,7 @@ then8: br i1 %t103, label %ixok11, label %ixbad12 ixbad12: %t104 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t104, ptr @.fmt_bounds, ptr @.str13973, i32 %t98, i32 %t102) + call i32 (ptr, ptr, ...) @fprintf(ptr %t104, ptr @.fmt_bounds, ptr @.str14117, i32 %t98, i32 %t102) call void @exit(i32 1) unreachable ixok11: @@ -178305,7 +179079,7 @@ wbody40: br i1 %t153, label %ixok42, label %ixbad43 ixbad43: %t154 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t154, ptr @.fmt_bounds, ptr @.str13974, i32 %t148, i32 %t152) + call i32 (ptr, ptr, ...) @fprintf(ptr %t154, ptr @.fmt_bounds, ptr @.str14118, i32 %t148, i32 %t152) call void @exit(i32 1) unreachable ixok42: @@ -178328,7 +179102,7 @@ then44: br i1 %t168, label %ixok47, label %ixbad48 ixbad48: %t169 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t169, ptr @.fmt_bounds, ptr @.str13975, i32 %t163, i32 %t167) + call i32 (ptr, ptr, ...) @fprintf(ptr %t169, ptr @.fmt_bounds, ptr @.str14119, i32 %t163, i32 %t167) call void @exit(i32 1) unreachable ixok47: @@ -178373,7 +179147,7 @@ wbody53: br i1 %t189, label %ixok55, label %ixbad56 ixbad56: %t190 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t190, ptr @.fmt_bounds, ptr @.str13976, i32 %t184, i32 %t188) + call i32 (ptr, ptr, ...) @fprintf(ptr %t190, ptr @.fmt_bounds, ptr @.str14120, i32 %t184, i32 %t188) call void @exit(i32 1) unreachable ixok55: @@ -178396,7 +179170,7 @@ then57: br i1 %t204, label %ixok60, label %ixbad61 ixbad61: %t205 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t205, ptr @.fmt_bounds, ptr @.str13977, i32 %t199, i32 %t203) + call i32 (ptr, ptr, ...) @fprintf(ptr %t205, ptr @.fmt_bounds, ptr @.str14121, i32 %t199, i32 %t203) call void @exit(i32 1) unreachable ixok60: @@ -178434,7 +179208,7 @@ scend63: %t220 = icmp ne i32 %t219, 0 br i1 %t220, label %then64, label %ifend66 then64: - call void @fn_emith(ptr @.str13978) + call void @fn_emith(ptr @.str14122) br label %ifend66 ifend66: %t221 = load i32, ptr @g_g_uses_world_despawn @@ -178567,7 +179341,7 @@ scend116: %t263 = icmp ne i32 %t262, 0 br i1 %t263, label %then117, label %ifend119 then117: - call void @fn_emith(ptr @.str13979) + call void @fn_emith(ptr @.str14123) br label %ifend119 ifend119: %t264 = load i32, ptr @g_g_uses_unicodert @@ -178602,9 +179376,9 @@ ifend131: %t273 = icmp ne i32 %t272, 0 br i1 %t273, label %then132, label %ifend134 then132: - call void @fn_emith(ptr @.str13980) + call void @fn_emith(ptr @.str14124) store i32 1, ptr @g_g_fprintf_declared - call void @fn_emith(ptr @.str13981) + call void @fn_emith(ptr @.str14125) br label %ifend134 ifend134: %t274 = load i32, ptr @g_g_uses_bounds @@ -178617,25 +179391,25 @@ then135: %t279 = icmp ne i32 %t278, 0 br i1 %t279, label %then138, label %ifend140 then138: - call void @fn_emith(ptr @.str13982) + call void @fn_emith(ptr @.str14126) store i32 1, ptr @g_g_fprintf_declared br label %ifend140 ifend140: - call void @fn_emith(ptr @.str13983) + call void @fn_emith(ptr @.str14127) br label %ifend137 ifend137: %t280 = load i32, ptr @g_g_uses_result %t281 = icmp ne i32 %t280, 0 br i1 %t281, label %then141, label %ifend143 then141: - call void @fn_emith(ptr @.str13984) + call void @fn_emith(ptr @.str14128) br label %ifend143 ifend143: %t282 = load i32, ptr @g_g_uses_option %t283 = icmp ne i32 %t282, 0 br i1 %t283, label %then144, label %ifend146 then144: - call void @fn_emith(ptr @.str13985) + call void @fn_emith(ptr @.str14129) br label %ifend146 ifend146: call void @fn_emit_cov_runtime() @@ -178683,10 +179457,10 @@ ifend5: %t12 = load i32, ptr %t7 %t13 = call ptr @fn_itoa(i32 %t12) store ptr %t13, ptr %t14 - call void @fn_emith(ptr @.str13986) + call void @fn_emith(ptr @.str14130) %t15 = load ptr, ptr %t14 call void @fn_emith(ptr %t15) - call void @fn_emith(ptr @.str13987) + call void @fn_emith(ptr @.str14131) store i32 0, ptr %t16 br label %wcond6 wcond6: @@ -178703,10 +179477,10 @@ wbody7: %t25 = icmp ne i32 %t24, 0 br i1 %t25, label %then9, label %ifend11 then9: - call void @fn_emith(ptr @.str13988) + call void @fn_emith(ptr @.str14132) br label %ifend11 ifend11: - call void @fn_emith(ptr @.str13989) + call void @fn_emith(ptr @.str14133) %t26 = load ptr, ptr @g_g_cov_lines %t27 = load i32, ptr %t16 %t28 = getelementptr inbounds %LSlice, ptr %t26, i32 0, i32 0 @@ -178717,7 +179491,7 @@ ifend11: br i1 %t32, label %ixok12, label %ixbad13 ixbad13: %t33 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str13990, i32 %t27, i32 %t31) + call i32 (ptr, ptr, ...) @fprintf(ptr %t33, ptr @.fmt_bounds, ptr @.str14134, i32 %t27, i32 %t31) call void @exit(i32 1) unreachable ixok12: @@ -178730,88 +179504,88 @@ ixok12: store i32 %t38, ptr %t16 br label %wcond6 wend8: - call void @fn_emith(ptr @.str13991) - call void @fn_emith(ptr @.str13992) + call void @fn_emith(ptr @.str14135) + call void @fn_emith(ptr @.str14136) %t39 = load ptr, ptr %t14 call void @fn_emith(ptr %t39) - call void @fn_emith(ptr @.str13993) + call void @fn_emith(ptr @.str14137) %t40 = load ptr, ptr %t14 - %t41 = call ptr @lp_str_concat(ptr @.str13994, ptr %t40) - %t42 = call ptr @lp_str_concat(ptr %t41, ptr @.str13995) + %t41 = call ptr @lp_str_concat(ptr @.str14138, ptr %t40) + %t42 = call ptr @lp_str_concat(ptr %t41, ptr @.str14139) call void @fn_emith(ptr %t42) %t43 = load ptr, ptr @g_g_src_name %t44 = call ptr @fn_emit_str_const(ptr %t43) store ptr %t44, ptr %t45 - %t46 = call ptr @fn_emit_str_const(ptr @.str13996) + %t46 = call ptr @fn_emit_str_const(ptr @.str14140) store ptr %t46, ptr %t47 - %t48 = call ptr @fn_emit_str_const(ptr @.str13997) + %t48 = call ptr @fn_emit_str_const(ptr @.str14141) store ptr %t48, ptr %t49 - %t50 = call ptr @fn_emit_str_const(ptr @.str13998) + %t50 = call ptr @fn_emit_str_const(ptr @.str14142) store ptr %t50, ptr %t51 - call void @fn_emith(ptr @.str13999) - call void @fn_emith(ptr @.str14000) + call void @fn_emith(ptr @.str14143) + call void @fn_emith(ptr @.str14144) %t52 = load i32, ptr @g_g_fprintf_declared %t53 = icmp eq i32 %t52, 0 %t54 = zext i1 %t53 to i32 %t55 = icmp ne i32 %t54, 0 br i1 %t55, label %then14, label %ifend16 then14: - call void @fn_emith(ptr @.str14001) + call void @fn_emith(ptr @.str14145) store i32 1, ptr @g_g_fprintf_declared br label %ifend16 ifend16: - call void @fn_emith(ptr @.str14002) - call void @fn_emit(ptr @.str14003) + call void @fn_emith(ptr @.str14146) + call void @fn_emit(ptr @.str14147) %t56 = load ptr, ptr %t47 - %t57 = call ptr @lp_str_concat(ptr @.str14004, ptr %t56) - %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str14005) + %t57 = call ptr @lp_str_concat(ptr @.str14148, ptr %t56) + %t58 = call ptr @lp_str_concat(ptr %t57, ptr @.str14149) call void @fn_emit(ptr %t58) - call void @fn_emit(ptr @.str14006) + call void @fn_emit(ptr @.str14150) %t59 = load ptr, ptr %t49 - %t60 = call ptr @lp_str_concat(ptr @.str14007, ptr %t59) - %t61 = call ptr @lp_str_concat(ptr %t60, ptr @.str14008) + %t60 = call ptr @lp_str_concat(ptr @.str14151, ptr %t59) + %t61 = call ptr @lp_str_concat(ptr %t60, ptr @.str14152) call void @fn_emit(ptr %t61) %t62 = load ptr, ptr %t51 - %t63 = call ptr @lp_str_concat(ptr @.str14009, ptr %t62) - %t64 = call ptr @lp_str_concat(ptr %t63, ptr @.str14010) + %t63 = call ptr @lp_str_concat(ptr @.str14153, ptr %t62) + %t64 = call ptr @lp_str_concat(ptr %t63, ptr @.str14154) call void @fn_emit(ptr %t64) - call void @fn_emit(ptr @.str14011) - call void @fn_emit(ptr @.str14012) - call void @fn_emit(ptr @.str14013) + call void @fn_emit(ptr @.str14155) + call void @fn_emit(ptr @.str14156) + call void @fn_emit(ptr @.str14157) %t65 = load ptr, ptr %t45 - %t66 = call ptr @lp_str_concat(ptr @.str14014, ptr %t65) - %t67 = call ptr @lp_str_concat(ptr %t66, ptr @.str14015) + %t66 = call ptr @lp_str_concat(ptr @.str14158, ptr %t65) + %t67 = call ptr @lp_str_concat(ptr %t66, ptr @.str14159) call void @fn_emit(ptr %t67) - call void @fn_emit(ptr @.str14016) - call void @fn_emit(ptr @.str14017) - call void @fn_emit(ptr @.str14018) + call void @fn_emit(ptr @.str14160) + call void @fn_emit(ptr @.str14161) + call void @fn_emit(ptr @.str14162) %t68 = load ptr, ptr %t14 - %t69 = call ptr @lp_str_concat(ptr @.str14019, ptr %t68) - %t70 = call ptr @lp_str_concat(ptr %t69, ptr @.str14020) + %t69 = call ptr @lp_str_concat(ptr @.str14163, ptr %t68) + %t70 = call ptr @lp_str_concat(ptr %t69, ptr @.str14164) call void @fn_emit(ptr %t70) - call void @fn_emit(ptr @.str14021) - call void @fn_emit(ptr @.str14022) - call void @fn_emit(ptr @.str14023) + call void @fn_emit(ptr @.str14165) + call void @fn_emit(ptr @.str14166) + call void @fn_emit(ptr @.str14167) %t71 = load ptr, ptr %t14 call void @fn_emit(ptr %t71) - call void @fn_emit(ptr @.str14024) - call void @fn_emit(ptr @.str14025) - call void @fn_emit(ptr @.str14026) + call void @fn_emit(ptr @.str14168) + call void @fn_emit(ptr @.str14169) + call void @fn_emit(ptr @.str14170) %t72 = load ptr, ptr %t14 call void @fn_emit(ptr %t72) - call void @fn_emit(ptr @.str14027) - call void @fn_emit(ptr @.str14028) - call void @fn_emit(ptr @.str14029) - call void @fn_emit(ptr @.str14030) - call void @fn_emit(ptr @.str14031) - call void @fn_emit(ptr @.str14032) - call void @fn_emit(ptr @.str14033) - call void @fn_emit(ptr @.str14034) - call void @fn_emit(ptr @.str14035) - call void @fn_emit(ptr @.str14036) - call void @fn_emit(ptr @.str14037) - call void @fn_emit(ptr @.str14038) - call void @fn_emith(ptr @.str14039) + call void @fn_emit(ptr @.str14171) + call void @fn_emit(ptr @.str14172) + call void @fn_emit(ptr @.str14173) + call void @fn_emit(ptr @.str14174) + call void @fn_emit(ptr @.str14175) + call void @fn_emit(ptr @.str14176) + call void @fn_emit(ptr @.str14177) + call void @fn_emit(ptr @.str14178) + call void @fn_emit(ptr @.str14179) + call void @fn_emit(ptr @.str14180) + call void @fn_emit(ptr @.str14181) + call void @fn_emit(ptr @.str14182) + call void @fn_emith(ptr @.str14183) br label %ret ret: ret void @@ -178862,7 +179636,7 @@ then0: br label %ret ifend2: %t31 = load ptr, ptr %t0 - %t32 = call ptr @lp_pak_open(ptr %t31, ptr @.str14040) + %t32 = call ptr @lp_pak_open(ptr %t31, ptr @.str14184) store ptr %t32, ptr %t33 %t34 = load ptr, ptr %t33 %t35 = icmp eq ptr %t34, null @@ -178971,7 +179745,7 @@ then0: %t11 = sub i32 %t10, 6 %t12 = load i32, ptr %t4 %t13 = call ptr @lp_str_slice(ptr %t9, i32 %t11, i32 %t12) - %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str14041) + %t14 = call i32 @lp_str_eq(ptr %t13, ptr @.str14185) %t15 = icmp ne i32 %t14, 0 br i1 %t15, label %then3, label %ifend5 then3: @@ -179057,7 +179831,7 @@ then3: br label %ret ifend5: %t20 = load ptr, ptr %t0 - %t21 = call ptr @lp_str_concat(ptr %t20, ptr @.str14042) + %t21 = call ptr @lp_str_concat(ptr %t20, ptr @.str14186) store ptr %t21, ptr %retval br label %ret ret: @@ -179319,16 +180093,16 @@ then0: %t4 = call ptr @fn_win_path(ptr %t3) store ptr %t4, ptr %t5 %t6 = load ptr, ptr %t5 - %t7 = call ptr @lp_str_concat(ptr @.str14043, ptr %t6) - %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str14044) + %t7 = call ptr @lp_str_concat(ptr @.str14187, ptr %t6) + %t8 = call ptr @lp_str_concat(ptr %t7, ptr @.str14188) %t9 = load ptr, ptr %t5 %t10 = call ptr @lp_str_concat(ptr %t8, ptr %t9) - %t11 = call ptr @lp_str_concat(ptr %t10, ptr @.str14045) + %t11 = call ptr @lp_str_concat(ptr %t10, ptr @.str14189) %t12 = call i32 @system(ptr %t11) br label %ifend2 else1: %t13 = load ptr, ptr %t0 - %t14 = call ptr @lp_str_concat(ptr @.str14046, ptr %t13) + %t14 = call ptr @lp_str_concat(ptr @.str14190, ptr %t13) %t15 = call i32 @system(ptr %t14) br label %ifend2 ifend2: @@ -179347,13 +180121,13 @@ entry: then0: %t3 = load ptr, ptr %t0 %t4 = call ptr @fn_win_path(ptr %t3) - %t5 = call ptr @lp_str_concat(ptr @.str14047, ptr %t4) - %t6 = call ptr @lp_str_concat(ptr %t5, ptr @.str14048) + %t5 = call ptr @lp_str_concat(ptr @.str14191, ptr %t4) + %t6 = call ptr @lp_str_concat(ptr %t5, ptr @.str14192) %t7 = call i32 @system(ptr %t6) br label %ifend2 else1: %t8 = load ptr, ptr %t0 - %t9 = call ptr @lp_str_concat(ptr @.str14049, ptr %t8) + %t9 = call ptr @lp_str_concat(ptr @.str14193, ptr %t8) %t10 = call i32 @system(ptr %t9) br label %ifend2 ifend2: @@ -179368,7 +180142,7 @@ entry: %t1 = alloca ptr %t9 = alloca ptr %t12 = alloca ptr - %t0 = call ptr @getenv(ptr @.str14050) + %t0 = call ptr @getenv(ptr @.str14194) store ptr %t0, ptr %t1 %t2 = load ptr, ptr %t1 %t3 = icmp ne ptr %t2, null @@ -179384,9 +180158,9 @@ ifend2: %t8 = icmp ne i32 %t7, 0 br i1 %t8, label %then3, label %ifend5 then3: - store ptr @.str14051, ptr %t9 + store ptr @.str14195, ptr %t9 %t10 = load ptr, ptr %t9 - %t11 = call ptr @lp_pak_open(ptr %t10, ptr @.str14052) + %t11 = call ptr @lp_pak_open(ptr %t10, ptr @.str14196) store ptr %t11, ptr %t12 %t13 = load ptr, ptr %t12 %t14 = icmp ne ptr %t13, null @@ -179397,14 +180171,14 @@ then6: %t17 = load ptr, ptr %t12 call i32 @fclose(ptr %t17) %t18 = load ptr, ptr %t9 - %t19 = call ptr @lp_str_concat(ptr @.str14053, ptr %t18) - %t20 = call ptr @lp_str_concat(ptr %t19, ptr @.str14054) + %t19 = call ptr @lp_str_concat(ptr @.str14197, ptr %t18) + %t20 = call ptr @lp_str_concat(ptr %t19, ptr @.str14198) store ptr %t20, ptr %retval br label %ret ifend8: br label %ifend5 ifend5: - store ptr @.str14055, ptr %retval + store ptr @.str14199, ptr %retval br label %ret ret: %t21 = load ptr, ptr %retval @@ -179415,7 +180189,7 @@ define void @fn_show_version() { entry: %t3 = alloca ptr %t0 = call ptr @fn_ludic_home() - %t1 = call ptr @fn_join_path(ptr %t0, ptr @.str14056) + %t1 = call ptr @fn_join_path(ptr %t0, ptr @.str14200) %t2 = call ptr @fn_read_file(ptr %t1) store ptr %t2, ptr %t3 %t4 = load ptr, ptr %t3 @@ -179424,12 +180198,12 @@ entry: %t7 = icmp ne i32 %t6, 0 br i1 %t7, label %then0, label %else1 then0: - call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr @.str14057) + call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr @.str14201) br label %ifend2 else1: %t8 = load ptr, ptr %t3 %t9 = call ptr @fn_chomp(ptr %t8) - %t10 = call ptr @lp_str_concat(ptr @.str14058, ptr %t9) + %t10 = call ptr @lp_str_concat(ptr @.str14202, ptr %t9) call i32 (ptr, ...) @printf(ptr @.fmt_line, ptr %t10) br label %ifend2 ifend2: @@ -179453,7 +180227,7 @@ entry: define void @L_init_globals() { entry: - store ptr @.str14059, ptr @g_g_parse_file + store ptr @.str14203, ptr @g_g_parse_file %t0 = getelementptr %LSlice, ptr null, i32 1 %t1 = ptrtoint ptr %t0 to i64 %t2 = call ptr @malloc(i64 %t1) @@ -179512,7 +180286,7 @@ entry: store ptr %t29, ptr @g_g_mod_friends %t33 = call ptr @fn_fm_new() store ptr %t33, ptr @g_g_fm_float - store ptr @.str14060, ptr @g_g_err_file + store ptr @.str14204, ptr @g_g_err_file %t34 = getelementptr %LSlice, ptr null, i32 1 %t35 = ptrtoint ptr %t34 to i64 %t36 = call ptr @malloc(i64 %t35) @@ -179723,7 +180497,7 @@ entry: %t159 = getelementptr inbounds %LSlice, ptr %t156, i32 0, i32 2 store i32 0, ptr %t159 store ptr %t156, ptr @g_g_pk_name - store ptr @.str14061, ptr @g_g_mu_done + store ptr @.str14205, ptr @g_g_mu_done %t160 = getelementptr %LSlice, ptr null, i32 1 %t161 = ptrtoint ptr %t160 to i64 %t162 = call ptr @malloc(i64 %t161) @@ -180224,7 +180998,7 @@ entry: %t459 = getelementptr inbounds %LSlice, ptr %t456, i32 0, i32 2 store i32 0, ptr %t459 store ptr %t456, ptr @g_g_mg_report - store ptr @.str14062, ptr @g_g_mg_entry + store ptr @.str14206, ptr @g_g_mg_entry %t460 = getelementptr %LSlice, ptr null, i32 1 %t461 = ptrtoint ptr %t460 to i64 %t462 = call ptr @malloc(i64 %t461) @@ -180265,7 +181039,7 @@ entry: %t483 = getelementptr inbounds %LSlice, ptr %t480, i32 0, i32 2 store i32 0, ptr %t483 store ptr %t480, ptr @g_g_mg_lines - store ptr @.str14063, ptr @g_g_mg_keys + store ptr @.str14207, ptr @g_g_mg_keys %t484 = getelementptr %LSlice, ptr null, i32 1 %t485 = ptrtoint ptr %t484 to i64 %t486 = call ptr @malloc(i64 %t485) @@ -180646,7 +181420,7 @@ entry: %t711 = getelementptr inbounds %LSlice, ptr %t708, i32 0, i32 2 store i32 0, ptr %t711 store ptr %t708, ptr @g_g_cm_ps - store ptr @.str14064, ptr @g_g_src_name + store ptr @.str14208, ptr @g_g_src_name %t712 = getelementptr %LSlice, ptr null, i32 1 %t713 = ptrtoint ptr %t712 to i64 %t714 = call ptr @malloc(i64 %t713) @@ -180677,7 +181451,7 @@ entry: %t729 = getelementptr inbounds %LSlice, ptr %t726, i32 0, i32 2 store i32 0, ptr %t729 store ptr %t726, ptr @g_g_ix_vals - store ptr @.str14065, ptr @g_g_ret_label + store ptr @.str14209, ptr @g_g_ret_label %t730 = getelementptr %LSlice, ptr null, i32 1 %t731 = ptrtoint ptr %t730 to i64 %t732 = call ptr @malloc(i64 %t731) @@ -180858,7 +181632,7 @@ entry: %t837 = getelementptr inbounds %LSlice, ptr %t834, i32 0, i32 2 store i32 0, ptr %t837 store ptr %t834, ptr @g_g_det_names - store ptr @.str14066, ptr @g_g_det_ctx + store ptr @.str14210, ptr @g_g_det_ctx %t838 = getelementptr %LSlice, ptr null, i32 1 %t839 = ptrtoint ptr %t838 to i64 %t840 = call ptr @malloc(i64 %t839) @@ -181029,7 +181803,7 @@ entry: %t939 = getelementptr inbounds %LSlice, ptr %t936, i32 0, i32 2 store i32 0, ptr %t939 store ptr %t936, ptr @g_ck_tys - store ptr @.str14067, ptr @g_ck_ret + store ptr @.str14211, ptr @g_ck_ret %t940 = getelementptr %LSlice, ptr null, i32 1 %t941 = ptrtoint ptr %t940 to i64 %t942 = call ptr @malloc(i64 %t941) @@ -181199,7 +181973,7 @@ wbody1: %t27 = load ptr, ptr %t26 store ptr %t27, ptr %t28 %t29 = load ptr, ptr %t28 - %t30 = call i32 @lp_str_eq(ptr %t29, ptr @.str14068) + %t30 = call i32 @lp_str_eq(ptr %t29, ptr @.str14212) %t31 = icmp ne i32 %t30, 0 br i1 %t31, label %then3, label %else4 then3: @@ -181207,7 +181981,7 @@ then3: br label %ifend5 else4: %t32 = load ptr, ptr %t28 - %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str14069) + %t33 = call i32 @lp_str_eq(ptr %t32, ptr @.str14213) %t34 = icmp ne i32 %t33, 0 br i1 %t34, label %then6, label %else7 then6: @@ -181215,7 +181989,7 @@ then6: br label %ifend8 else7: %t35 = load ptr, ptr %t28 - %t36 = call i32 @lp_str_eq(ptr %t35, ptr @.str14070) + %t36 = call i32 @lp_str_eq(ptr %t35, ptr @.str14214) %t37 = icmp ne i32 %t36, 0 br i1 %t37, label %then9, label %else10 then9: @@ -181223,7 +181997,7 @@ then9: br label %ifend11 else10: %t38 = load ptr, ptr %t28 - %t39 = call i32 @lp_str_eq(ptr %t38, ptr @.str14071) + %t39 = call i32 @lp_str_eq(ptr %t38, ptr @.str14215) %t40 = icmp ne i32 %t39, 0 br i1 %t40, label %then12, label %else13 then12: @@ -181231,7 +182005,7 @@ then12: br label %ifend14 else13: %t41 = load ptr, ptr %t28 - %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str14072) + %t42 = call i32 @lp_str_eq(ptr %t41, ptr @.str14216) %t43 = icmp ne i32 %t42, 0 br i1 %t43, label %then15, label %else16 then15: @@ -181239,7 +182013,7 @@ then15: br label %ifend17 else16: %t44 = load ptr, ptr %t28 - %t45 = call i32 @lp_str_eq(ptr %t44, ptr @.str14073) + %t45 = call i32 @lp_str_eq(ptr %t44, ptr @.str14217) %t46 = icmp ne i32 %t45, 0 br i1 %t46, label %then18, label %else19 then18: @@ -181248,7 +182022,7 @@ then18: br label %ifend20 else19: %t47 = load ptr, ptr %t28 - %t48 = call i32 @lp_str_eq(ptr %t47, ptr @.str14074) + %t48 = call i32 @lp_str_eq(ptr %t47, ptr @.str14218) %t49 = icmp ne i32 %t48, 0 br i1 %t49, label %then21, label %else22 then21: @@ -181256,7 +182030,7 @@ then21: br label %ifend23 else22: %t50 = load ptr, ptr %t28 - %t51 = call i32 @lp_str_eq(ptr %t50, ptr @.str14075) + %t51 = call i32 @lp_str_eq(ptr %t50, ptr @.str14219) %t52 = icmp ne i32 %t51, 0 br i1 %t52, label %then24, label %else25 then24: @@ -181264,7 +182038,7 @@ then24: br label %ifend26 else25: %t53 = load ptr, ptr %t28 - %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str14076) + %t54 = call i32 @lp_str_eq(ptr %t53, ptr @.str14220) %t55 = icmp ne i32 %t54, 0 br i1 %t55, label %then27, label %else28 then27: @@ -181272,7 +182046,7 @@ then27: br label %ifend29 else28: %t56 = load ptr, ptr %t28 - %t57 = call i32 @lp_str_eq(ptr %t56, ptr @.str14077) + %t57 = call i32 @lp_str_eq(ptr %t56, ptr @.str14221) %t58 = icmp ne i32 %t57, 0 br i1 %t58, label %then30, label %else31 then30: @@ -181280,7 +182054,7 @@ then30: br label %ifend32 else31: %t59 = load ptr, ptr %t28 - %t60 = call i32 @lp_str_eq(ptr %t59, ptr @.str14078) + %t60 = call i32 @lp_str_eq(ptr %t59, ptr @.str14222) %t61 = icmp ne i32 %t60, 0 br i1 %t61, label %then33, label %else34 then33: @@ -181288,7 +182062,7 @@ then33: br label %ifend35 else34: %t62 = load ptr, ptr %t28 - %t63 = call i32 @lp_str_eq(ptr %t62, ptr @.str14079) + %t63 = call i32 @lp_str_eq(ptr %t62, ptr @.str14223) %t64 = icmp ne i32 %t63, 0 br i1 %t64, label %then36, label %else37 then36: @@ -181314,7 +182088,7 @@ ifend41: br label %ifend38 else37: %t76 = load ptr, ptr %t28 - %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str14080) + %t77 = call i32 @lp_str_eq(ptr %t76, ptr @.str14224) %t78 = icmp ne i32 %t77, 0 br i1 %t78, label %then42, label %else43 then42: @@ -181322,7 +182096,7 @@ then42: br label %ifend44 else43: %t79 = load ptr, ptr %t28 - %t80 = call i32 @lp_str_eq(ptr %t79, ptr @.str14081) + %t80 = call i32 @lp_str_eq(ptr %t79, ptr @.str14225) %t81 = icmp ne i32 %t80, 0 br i1 %t81, label %then45, label %else46 then45: @@ -181331,7 +182105,7 @@ then45: br label %ifend47 else46: %t82 = load ptr, ptr %t28 - %t83 = call i32 @lp_str_eq(ptr %t82, ptr @.str14082) + %t83 = call i32 @lp_str_eq(ptr %t82, ptr @.str14226) %t84 = icmp ne i32 %t83, 0 br i1 %t84, label %then48, label %else49 then48: @@ -181339,7 +182113,7 @@ then48: br label %ifend50 else49: %t85 = load ptr, ptr %t28 - %t86 = call i32 @lp_str_eq(ptr %t85, ptr @.str14083) + %t86 = call i32 @lp_str_eq(ptr %t85, ptr @.str14227) %t87 = icmp ne i32 %t86, 0 br i1 %t87, label %then51, label %else52 then51: @@ -181347,7 +182121,7 @@ then51: br label %ifend53 else52: %t88 = load ptr, ptr %t28 - %t89 = call i32 @lp_str_eq(ptr %t88, ptr @.str14084) + %t89 = call i32 @lp_str_eq(ptr %t88, ptr @.str14228) %t90 = icmp ne i32 %t89, 0 br i1 %t90, label %then54, label %else55 then54: @@ -181371,7 +182145,7 @@ ifend59: br label %ifend56 else55: %t102 = load ptr, ptr %t28 - %t103 = call i32 @lp_str_eq(ptr %t102, ptr @.str14085) + %t103 = call i32 @lp_str_eq(ptr %t102, ptr @.str14229) %t104 = icmp ne i32 %t103, 0 br i1 %t104, label %then60, label %else61 then60: @@ -181379,7 +182153,7 @@ then60: br label %ifend62 else61: %t105 = load ptr, ptr %t28 - %t106 = call i32 @lp_str_eq(ptr %t105, ptr @.str14086) + %t106 = call i32 @lp_str_eq(ptr %t105, ptr @.str14230) %t107 = icmp ne i32 %t106, 0 br i1 %t107, label %then63, label %else64 then63: @@ -181403,7 +182177,7 @@ ifend68: br label %ifend65 else64: %t119 = load ptr, ptr %t28 - %t120 = call i32 @lp_str_eq(ptr %t119, ptr @.str14087) + %t120 = call i32 @lp_str_eq(ptr %t119, ptr @.str14231) %t121 = icmp ne i32 %t120, 0 br i1 %t121, label %then69, label %else70 then69: @@ -181427,7 +182201,7 @@ ifend74: br label %ifend71 else70: %t133 = load ptr, ptr %t28 - %t134 = call i32 @lp_str_eq(ptr %t133, ptr @.str14088) + %t134 = call i32 @lp_str_eq(ptr %t133, ptr @.str14232) %t135 = icmp ne i32 %t134, 0 br i1 %t135, label %then75, label %else76 then75: @@ -181477,7 +182251,7 @@ ifend80: br label %ifend77 else76: %t166 = load ptr, ptr %t28 - %t167 = call i32 @lp_str_eq(ptr %t166, ptr @.str14089) + %t167 = call i32 @lp_str_eq(ptr %t166, ptr @.str14233) %t168 = icmp ne i32 %t167, 0 br i1 %t168, label %then83, label %else84 then83: @@ -181510,8 +182284,8 @@ else84: br i1 %t186, label %then89, label %else90 then89: %t187 = load ptr, ptr %t28 - %t188 = call ptr @lp_str_concat(ptr @.str14090, ptr %t187) - %t189 = call ptr @lp_str_concat(ptr %t188, ptr @.str14091) + %t188 = call ptr @lp_str_concat(ptr @.str14234, ptr %t187) + %t189 = call ptr @lp_str_concat(ptr %t188, ptr @.str14235) store ptr %t189, ptr %t190 %t191 = call ptr @lp_win_stdio(i32 2) %t192 = load ptr, ptr %t190 @@ -181582,7 +182356,7 @@ wend2: %t205 = icmp ne i32 %t204, 0 br i1 %t205, label %then92, label %ifend94 then92: - call void @fn_die(ptr @.str14092) + call void @fn_die(ptr @.str14236) br label %ifend94 ifend94: %t206 = load ptr, ptr %t7 @@ -181592,7 +182366,7 @@ ifend94: br i1 %t209, label %then95, label %else96 then95: %t210 = load ptr, ptr %t7 - %t211 = call i32 @fn_has_sub(ptr %t210, ptr @.str14093) + %t211 = call i32 @fn_has_sub(ptr %t210, ptr @.str14237) store i32 %t211, ptr @g_g_target_win br label %ifend97 else96: @@ -181609,7 +182383,7 @@ ifend97: %t219 = icmp ne i32 %t218, 0 br i1 %t219, label %then98, label %ifend100 then98: - call void @fn_die(ptr @.str14094) + call void @fn_die(ptr @.str14238) br label %ifend100 ifend100: %t220 = load ptr, ptr %t0 @@ -181787,9 +182561,9 @@ then136: %t303 = icmp ne i32 %t302, 0 br i1 %t303, label %then139, label %else140 then139: - %t304 = call ptr @fn_getenv_or(ptr @.str14095, ptr @.str14096) + %t304 = call ptr @fn_getenv_or(ptr @.str14239, ptr @.str14240) %t305 = call ptr @fn_fwd_slashes(ptr %t304) - %t306 = call ptr @lp_str_concat(ptr %t305, ptr @.str14097) + %t306 = call ptr @lp_str_concat(ptr %t305, ptr @.str14241) %t307 = load ptr, ptr %t0 %t308 = call ptr @fn_base_name(ptr %t307) %t309 = call ptr @fn_strip_ludic(ptr %t308) @@ -181800,7 +182574,7 @@ else140: %t311 = load ptr, ptr %t0 %t312 = call ptr @fn_base_name(ptr %t311) %t313 = call ptr @fn_strip_ludic(ptr %t312) - %t314 = call ptr @lp_str_concat(ptr @.str14098, ptr %t313) + %t314 = call ptr @lp_str_concat(ptr @.str14242, ptr %t313) store ptr %t314, ptr %t1 br label %ifend141 ifend141: @@ -181826,7 +182600,7 @@ then145: %t328 = sub i32 %t327, 4 %t329 = load i32, ptr %t320 %t330 = call ptr @lp_str_slice(ptr %t326, i32 %t328, i32 %t329) - %t331 = call i32 @lp_str_eq(ptr %t330, ptr @.str14099) + %t331 = call i32 @lp_str_eq(ptr %t330, ptr @.str14243) store i32 %t331, ptr %t321 br label %ifend147 ifend147: @@ -181837,7 +182611,7 @@ ifend147: br i1 %t335, label %then148, label %ifend150 then148: %t336 = load ptr, ptr %t1 - %t337 = call ptr @lp_str_concat(ptr %t336, ptr @.str14100) + %t337 = call ptr @lp_str_concat(ptr %t336, ptr @.str14244) store ptr %t337, ptr %t1 br label %ifend150 ifend150: @@ -181859,7 +182633,7 @@ then151: br label %ifend153 ifend153: %t348 = load ptr, ptr %t1 - %t349 = call ptr @lp_str_concat(ptr %t348, ptr @.str14101) + %t349 = call ptr @lp_str_concat(ptr %t348, ptr @.str14245) store ptr %t349, ptr %t350 %t351 = load ptr, ptr %t350 %t352 = call i32 @fn_ir_flush(ptr %t351) @@ -181868,7 +182642,7 @@ ifend153: %t355 = icmp ne i32 %t354, 0 br i1 %t355, label %then154, label %ifend156 then154: - call void @fn_die(ptr @.str14102) + call void @fn_die(ptr @.str14246) br label %ifend156 ifend156: %t356 = call ptr @fn_find_cc() @@ -181876,7 +182650,7 @@ ifend156: %t358 = call ptr @fn_ludic_home() store ptr %t358, ptr %t359 %t360 = load ptr, ptr %t357 - %t361 = call ptr @lp_str_concat(ptr %t360, ptr @.str14103) + %t361 = call ptr @lp_str_concat(ptr %t360, ptr @.str14247) %t362 = load ptr, ptr %t350 %t363 = call ptr @lp_str_concat(ptr %t361, ptr %t362) store ptr %t363, ptr %t364 @@ -181889,26 +182663,26 @@ then157: br i1 %t368, label %then160, label %ifend162 then160: %t369 = load ptr, ptr %t359 - %t370 = call ptr @fn_join_path(ptr %t369, ptr @.str14104) + %t370 = call ptr @fn_join_path(ptr %t369, ptr @.str14248) store ptr %t370, ptr %t371 %t372 = load ptr, ptr %t364 - %t373 = call ptr @lp_str_concat(ptr %t372, ptr @.str14105) + %t373 = call ptr @lp_str_concat(ptr %t372, ptr @.str14249) %t374 = load ptr, ptr %t371 %t375 = call ptr @lp_str_concat(ptr %t373, ptr %t374) - %t376 = call ptr @lp_str_concat(ptr %t375, ptr @.str14106) + %t376 = call ptr @lp_str_concat(ptr %t375, ptr @.str14250) store ptr %t376, ptr %t364 %t377 = load i32, ptr @g_g_uses_audio %t378 = icmp ne i32 %t377, 0 br i1 %t378, label %then163, label %ifend165 then163: %t379 = load ptr, ptr %t359 - %t380 = call ptr @fn_join_path(ptr %t379, ptr @.str14107) + %t380 = call ptr @fn_join_path(ptr %t379, ptr @.str14251) store ptr %t380, ptr %t381 %t382 = load ptr, ptr %t364 - %t383 = call ptr @lp_str_concat(ptr %t382, ptr @.str14108) + %t383 = call ptr @lp_str_concat(ptr %t382, ptr @.str14252) %t384 = load ptr, ptr %t381 %t385 = call ptr @lp_str_concat(ptr %t383, ptr %t384) - %t386 = call ptr @lp_str_concat(ptr %t385, ptr @.str14109) + %t386 = call ptr @lp_str_concat(ptr %t385, ptr @.str14253) store ptr %t386, ptr %t364 br label %ifend165 ifend165: @@ -181921,26 +182695,26 @@ else158: br i1 %t388, label %then166, label %ifend168 then166: %t389 = load ptr, ptr %t359 - %t390 = call ptr @fn_join_path(ptr %t389, ptr @.str14110) + %t390 = call ptr @fn_join_path(ptr %t389, ptr @.str14254) store ptr %t390, ptr %t391 %t392 = load ptr, ptr %t364 - %t393 = call ptr @lp_str_concat(ptr %t392, ptr @.str14111) + %t393 = call ptr @lp_str_concat(ptr %t392, ptr @.str14255) %t394 = load ptr, ptr %t391 %t395 = call ptr @lp_str_concat(ptr %t393, ptr %t394) - %t396 = call ptr @lp_str_concat(ptr %t395, ptr @.str14112) + %t396 = call ptr @lp_str_concat(ptr %t395, ptr @.str14256) store ptr %t396, ptr %t364 %t397 = load i32, ptr @g_g_uses_audio %t398 = icmp ne i32 %t397, 0 br i1 %t398, label %then169, label %ifend171 then169: %t399 = load ptr, ptr %t359 - %t400 = call ptr @fn_join_path(ptr %t399, ptr @.str14113) + %t400 = call ptr @fn_join_path(ptr %t399, ptr @.str14257) store ptr %t400, ptr %t401 %t402 = load ptr, ptr %t364 - %t403 = call ptr @lp_str_concat(ptr %t402, ptr @.str14114) + %t403 = call ptr @lp_str_concat(ptr %t402, ptr @.str14258) %t404 = load ptr, ptr %t401 %t405 = call ptr @lp_str_concat(ptr %t403, ptr %t404) - %t406 = call ptr @lp_str_concat(ptr %t405, ptr @.str14115) + %t406 = call ptr @lp_str_concat(ptr %t405, ptr @.str14259) store ptr %t406, ptr %t364 br label %ifend171 ifend171: @@ -181957,17 +182731,17 @@ then172: br i1 %t410, label %then175, label %else176 then175: %t411 = load ptr, ptr %t364 - %t412 = call ptr @lp_str_concat(ptr %t411, ptr @.str14116) + %t412 = call ptr @lp_str_concat(ptr %t411, ptr @.str14260) %t413 = load ptr, ptr %t359 - %t414 = call ptr @fn_join_path(ptr %t413, ptr @.str14117) + %t414 = call ptr @fn_join_path(ptr %t413, ptr @.str14261) %t415 = call ptr @lp_str_concat(ptr %t412, ptr %t414) store ptr %t415, ptr %t364 br label %ifend177 else176: %t416 = load ptr, ptr %t364 - %t417 = call ptr @lp_str_concat(ptr %t416, ptr @.str14118) + %t417 = call ptr @lp_str_concat(ptr %t416, ptr @.str14262) %t418 = load ptr, ptr %t359 - %t419 = call ptr @fn_join_path(ptr %t418, ptr @.str14119) + %t419 = call ptr @fn_join_path(ptr %t418, ptr @.str14263) %t420 = call ptr @lp_str_concat(ptr %t417, ptr %t419) store ptr %t420, ptr %t364 br label %ifend177 @@ -181983,18 +182757,18 @@ then178: br i1 %t424, label %then181, label %else182 then181: %t425 = load ptr, ptr %t364 - %t426 = call ptr @lp_str_concat(ptr %t425, ptr @.str14120) + %t426 = call ptr @lp_str_concat(ptr %t425, ptr @.str14264) %t427 = load ptr, ptr %t359 - %t428 = call ptr @fn_join_path(ptr %t427, ptr @.str14121) + %t428 = call ptr @fn_join_path(ptr %t427, ptr @.str14265) %t429 = call ptr @lp_str_concat(ptr %t426, ptr %t428) - %t430 = call ptr @lp_str_concat(ptr %t429, ptr @.str14122) + %t430 = call ptr @lp_str_concat(ptr %t429, ptr @.str14266) store ptr %t430, ptr %t364 br label %ifend183 else182: %t431 = load ptr, ptr %t364 - %t432 = call ptr @lp_str_concat(ptr %t431, ptr @.str14123) + %t432 = call ptr @lp_str_concat(ptr %t431, ptr @.str14267) %t433 = load ptr, ptr %t359 - %t434 = call ptr @fn_join_path(ptr %t433, ptr @.str14124) + %t434 = call ptr @fn_join_path(ptr %t433, ptr @.str14268) %t435 = call ptr @lp_str_concat(ptr %t432, ptr %t434) store ptr %t435, ptr %t364 br label %ifend183 @@ -182018,7 +182792,7 @@ scend185: br i1 %t444, label %then186, label %ifend188 then186: %t445 = load ptr, ptr %t364 - %t446 = call ptr @lp_str_concat(ptr %t445, ptr @.str14125) + %t446 = call ptr @lp_str_concat(ptr %t445, ptr @.str14269) store ptr %t446, ptr %t364 br label %ifend188 ifend188: @@ -182031,17 +182805,17 @@ then189: br i1 %t450, label %then192, label %else193 then192: %t451 = load ptr, ptr %t364 - %t452 = call ptr @lp_str_concat(ptr %t451, ptr @.str14126) + %t452 = call ptr @lp_str_concat(ptr %t451, ptr @.str14270) %t453 = load ptr, ptr %t359 - %t454 = call ptr @fn_join_path(ptr %t453, ptr @.str14127) + %t454 = call ptr @fn_join_path(ptr %t453, ptr @.str14271) %t455 = call ptr @lp_str_concat(ptr %t452, ptr %t454) store ptr %t455, ptr %t364 br label %ifend194 else193: %t456 = load ptr, ptr %t364 - %t457 = call ptr @lp_str_concat(ptr %t456, ptr @.str14128) + %t457 = call ptr @lp_str_concat(ptr %t456, ptr @.str14272) %t458 = load ptr, ptr %t359 - %t459 = call ptr @fn_join_path(ptr %t458, ptr @.str14129) + %t459 = call ptr @fn_join_path(ptr %t458, ptr @.str14273) %t460 = call ptr @lp_str_concat(ptr %t457, ptr %t459) store ptr %t460, ptr %t364 br label %ifend194 @@ -182057,24 +182831,24 @@ then195: br i1 %t464, label %then198, label %else199 then198: %t465 = load ptr, ptr %t359 - %t466 = call ptr @fn_join_path(ptr %t465, ptr @.str14130) + %t466 = call ptr @fn_join_path(ptr %t465, ptr @.str14274) store ptr %t466, ptr %t467 %t468 = load ptr, ptr %t364 - %t469 = call ptr @lp_str_concat(ptr %t468, ptr @.str14131) + %t469 = call ptr @lp_str_concat(ptr %t468, ptr @.str14275) %t470 = load ptr, ptr %t467 %t471 = call ptr @lp_str_concat(ptr %t469, ptr %t470) - %t472 = call ptr @lp_str_concat(ptr %t471, ptr @.str14132) + %t472 = call ptr @lp_str_concat(ptr %t471, ptr @.str14276) store ptr %t472, ptr %t364 br label %ifend200 else199: %t473 = load ptr, ptr %t359 - %t474 = call ptr @fn_join_path(ptr %t473, ptr @.str14133) + %t474 = call ptr @fn_join_path(ptr %t473, ptr @.str14277) store ptr %t474, ptr %t475 %t476 = load ptr, ptr %t364 - %t477 = call ptr @lp_str_concat(ptr %t476, ptr @.str14134) + %t477 = call ptr @lp_str_concat(ptr %t476, ptr @.str14278) %t478 = load ptr, ptr %t475 %t479 = call ptr @lp_str_concat(ptr %t477, ptr %t478) - %t480 = call ptr @lp_str_concat(ptr %t479, ptr @.str14135) + %t480 = call ptr @lp_str_concat(ptr %t479, ptr @.str14279) store ptr %t480, ptr %t364 br label %ifend200 ifend200: @@ -182089,51 +182863,51 @@ then201: br i1 %t484, label %then204, label %else205 then204: %t485 = load ptr, ptr %t359 - %t486 = call ptr @fn_join_path(ptr %t485, ptr @.str14136) + %t486 = call ptr @fn_join_path(ptr %t485, ptr @.str14280) store ptr %t486, ptr %t487 %t488 = load ptr, ptr %t359 - %t489 = call ptr @fn_join_path(ptr %t488, ptr @.str14137) + %t489 = call ptr @fn_join_path(ptr %t488, ptr @.str14281) store ptr %t489, ptr %t490 %t491 = load ptr, ptr %t359 - %t492 = call ptr @fn_join_path(ptr %t491, ptr @.str14138) + %t492 = call ptr @fn_join_path(ptr %t491, ptr @.str14282) store ptr %t492, ptr %t493 %t494 = load i32, ptr @g_g_windowed %t495 = icmp ne i32 %t494, 0 br i1 %t495, label %then207, label %ifend209 then207: %t496 = load ptr, ptr %t359 - %t497 = call ptr @fn_join_path(ptr %t496, ptr @.str14139) + %t497 = call ptr @fn_join_path(ptr %t496, ptr @.str14283) store ptr %t497, ptr %t493 br label %ifend209 ifend209: %t498 = load ptr, ptr %t364 - %t499 = call ptr @lp_str_concat(ptr %t498, ptr @.str14140) + %t499 = call ptr @lp_str_concat(ptr %t498, ptr @.str14284) %t500 = load ptr, ptr %t487 %t501 = call ptr @lp_str_concat(ptr %t499, ptr %t500) - %t502 = call ptr @lp_str_concat(ptr %t501, ptr @.str14141) + %t502 = call ptr @lp_str_concat(ptr %t501, ptr @.str14285) %t503 = load ptr, ptr %t490 %t504 = call ptr @lp_str_concat(ptr %t502, ptr %t503) - %t505 = call ptr @lp_str_concat(ptr %t504, ptr @.str14142) + %t505 = call ptr @lp_str_concat(ptr %t504, ptr @.str14286) %t506 = load ptr, ptr %t493 %t507 = call ptr @lp_str_concat(ptr %t505, ptr %t506) - %t508 = call ptr @lp_str_concat(ptr %t507, ptr @.str14143) + %t508 = call ptr @lp_str_concat(ptr %t507, ptr @.str14287) store ptr %t508, ptr %t364 br label %ifend206 else205: %t509 = load ptr, ptr %t359 - %t510 = call ptr @fn_join_path(ptr %t509, ptr @.str14144) + %t510 = call ptr @fn_join_path(ptr %t509, ptr @.str14288) store ptr %t510, ptr %t511 %t512 = load ptr, ptr %t359 - %t513 = call ptr @fn_join_path(ptr %t512, ptr @.str14145) + %t513 = call ptr @fn_join_path(ptr %t512, ptr @.str14289) store ptr %t513, ptr %t514 %t515 = load ptr, ptr %t364 - %t516 = call ptr @lp_str_concat(ptr %t515, ptr @.str14146) + %t516 = call ptr @lp_str_concat(ptr %t515, ptr @.str14290) %t517 = load ptr, ptr %t511 %t518 = call ptr @lp_str_concat(ptr %t516, ptr %t517) - %t519 = call ptr @lp_str_concat(ptr %t518, ptr @.str14147) + %t519 = call ptr @lp_str_concat(ptr %t518, ptr @.str14291) %t520 = load ptr, ptr %t514 %t521 = call ptr @lp_str_concat(ptr %t519, ptr %t520) - %t522 = call ptr @lp_str_concat(ptr %t521, ptr @.str14148) + %t522 = call ptr @lp_str_concat(ptr %t521, ptr @.str14292) store ptr %t522, ptr %t364 br label %ifend206 ifend206: @@ -182144,25 +182918,25 @@ ifend203: br i1 %t524, label %then210, label %ifend212 then210: %t525 = load ptr, ptr %t359 - %t526 = call ptr @fn_join_path(ptr %t525, ptr @.str14149) + %t526 = call ptr @fn_join_path(ptr %t525, ptr @.str14293) store ptr %t526, ptr %t527 %t528 = load ptr, ptr %t359 - %t529 = call ptr @fn_join_path(ptr %t528, ptr @.str14150) + %t529 = call ptr @fn_join_path(ptr %t528, ptr @.str14294) store ptr %t529, ptr %t530 %t531 = load i32, ptr @g_g_target_win %t532 = icmp ne i32 %t531, 0 br i1 %t532, label %then213, label %ifend215 then213: %t533 = load ptr, ptr %t359 - %t534 = call ptr @fn_join_path(ptr %t533, ptr @.str14151) + %t534 = call ptr @fn_join_path(ptr %t533, ptr @.str14295) store ptr %t534, ptr %t530 br label %ifend215 ifend215: %t535 = load ptr, ptr %t364 - %t536 = call ptr @lp_str_concat(ptr %t535, ptr @.str14152) + %t536 = call ptr @lp_str_concat(ptr %t535, ptr @.str14296) %t537 = load ptr, ptr %t527 %t538 = call ptr @lp_str_concat(ptr %t536, ptr %t537) - %t539 = call ptr @lp_str_concat(ptr %t538, ptr @.str14153) + %t539 = call ptr @lp_str_concat(ptr %t538, ptr @.str14297) %t540 = load ptr, ptr %t530 %t541 = call ptr @lp_str_concat(ptr %t539, ptr %t540) store ptr %t541, ptr %t364 @@ -182173,7 +182947,7 @@ ifend215: br i1 %t545, label %then216, label %ifend218 then216: %t546 = load ptr, ptr %t364 - %t547 = call ptr @lp_str_concat(ptr %t546, ptr @.str14154) + %t547 = call ptr @lp_str_concat(ptr %t546, ptr @.str14298) store ptr %t547, ptr %t364 br label %ifend218 ifend218: @@ -182196,7 +182970,7 @@ scend220: br i1 %t556, label %then221, label %ifend223 then221: %t557 = load ptr, ptr %t364 - %t558 = call ptr @lp_str_concat(ptr %t557, ptr @.str14155) + %t558 = call ptr @lp_str_concat(ptr %t557, ptr @.str14299) store ptr %t558, ptr %t364 br label %ifend223 ifend223: @@ -182218,7 +182992,7 @@ wcond224: br i1 %t570, label %wbody225, label %wend226 wbody225: %t571 = load ptr, ptr %t364 - %t572 = call ptr @lp_str_concat(ptr %t571, ptr @.str14156) + %t572 = call ptr @lp_str_concat(ptr %t571, ptr @.str14300) %t573 = load ptr, ptr %t16 %t574 = load i32, ptr %t563 %t575 = getelementptr inbounds %LSlice, ptr %t573, i32 0, i32 0 @@ -182229,14 +183003,14 @@ wbody225: br i1 %t579, label %ixok227, label %ixbad228 ixbad228: %t580 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t580, ptr @.fmt_bounds, ptr @.str14157, i32 %t574, i32 %t578) + call i32 (ptr, ptr, ...) @fprintf(ptr %t580, ptr @.fmt_bounds, ptr @.str14301, i32 %t574, i32 %t578) call void @exit(i32 1) unreachable ixok227: %t581 = getelementptr inbounds ptr, ptr %t576, i32 %t574 %t582 = load ptr, ptr %t581 %t583 = call ptr @lp_str_concat(ptr %t572, ptr %t582) - %t584 = call ptr @lp_str_concat(ptr %t583, ptr @.str14158) + %t584 = call ptr @lp_str_concat(ptr %t583, ptr @.str14302) store ptr %t584, ptr %t364 %t585 = load i32, ptr %t563 %t586 = add i32 %t585, 1 @@ -182244,7 +183018,7 @@ ixok227: br label %wcond224 wend226: %t587 = load ptr, ptr %t364 - %t588 = call ptr @lp_str_concat(ptr %t587, ptr @.str14159) + %t588 = call ptr @lp_str_concat(ptr %t587, ptr @.str14303) %t589 = load ptr, ptr %t1 %t590 = call ptr @lp_str_concat(ptr %t588, ptr %t589) store ptr %t590, ptr %t364 @@ -182255,8 +183029,8 @@ wend226: br i1 %t594, label %then229, label %ifend231 then229: %t595 = load ptr, ptr %t364 - %t596 = call ptr @lp_str_concat(ptr @.str14160, ptr %t595) - %t597 = call ptr @lp_str_concat(ptr %t596, ptr @.str14161) + %t596 = call ptr @lp_str_concat(ptr @.str14304, ptr %t595) + %t597 = call ptr @lp_str_concat(ptr %t596, ptr @.str14305) store ptr %t597, ptr %t592 br label %ifend231 ifend231: @@ -182279,7 +183053,7 @@ ifend234: %t609 = icmp ne i32 %t608, 0 br i1 %t609, label %then235, label %ifend237 then235: - call void @fn_die(ptr @.str14162) + call void @fn_die(ptr @.str14306) br label %ifend237 ifend237: %t610 = load ptr, ptr %t17 @@ -182288,7 +183062,7 @@ ifend237: %t613 = icmp ne i32 %t612, 0 br i1 %t613, label %then238, label %ifend240 then238: - store ptr @.str14163, ptr %t614 + store ptr @.str14307, ptr %t614 store i32 0, ptr %t615 br label %wcond241 wcond241: @@ -182312,14 +183086,14 @@ wbody242: br i1 %t630, label %ixok244, label %ixbad245 ixbad245: %t631 = call ptr @lp_win_stdio(i32 2) - call i32 (ptr, ptr, ...) @fprintf(ptr %t631, ptr @.fmt_bounds, ptr @.str14164, i32 %t625, i32 %t629) + call i32 (ptr, ptr, ...) @fprintf(ptr %t631, ptr @.fmt_bounds, ptr @.str14308, i32 %t625, i32 %t629) call void @exit(i32 1) unreachable ixok244: %t632 = getelementptr inbounds ptr, ptr %t627, i32 %t625 %t633 = load ptr, ptr %t632 %t634 = call ptr @lp_str_concat(ptr %t623, ptr %t633) - %t635 = call ptr @lp_str_concat(ptr %t634, ptr @.str14165) + %t635 = call ptr @lp_str_concat(ptr %t634, ptr @.str14309) store ptr %t635, ptr %t614 %t636 = load i32, ptr %t615 %t637 = add i32 %t636, 1 @@ -182327,7 +183101,7 @@ ixok244: br label %wcond241 wend243: %t638 = load ptr, ptr %t17 - %t639 = call ptr @lp_pak_open(ptr %t638, ptr @.str14166) + %t639 = call ptr @lp_pak_open(ptr %t638, ptr @.str14310) store ptr %t639, ptr %t640 %t641 = load ptr, ptr %t640 %t642 = icmp ne ptr %t641, null @@ -182359,8 +183133,8 @@ then249: then252: %t658 = load ptr, ptr %t1 %t659 = call ptr @fn_win_path(ptr %t658) - %t660 = call ptr @lp_str_concat(ptr @.str14167, ptr %t659) - %t661 = call ptr @lp_str_concat(ptr %t660, ptr @.str14168) + %t660 = call ptr @lp_str_concat(ptr @.str14311, ptr %t659) + %t661 = call ptr @lp_str_concat(ptr %t660, ptr @.str14312) %t662 = call i32 @system(ptr %t661) call void @exit(i32 %t662) unreachable