Posts, notes, and experiments.

How REX Validates OpenMP Semantic Analysis With `checkOmpAnalyzing`


A focused walkthrough of REX's `checkOmpAnalyzing` layer: `-rose:openmp:analyzing`, targeted AST assertions for schedule defaults and implicit target mapping, and why this semantic-analysis checkpoint sits between frontend AST coverage and lowering tests.
Read more ⟶

How REX Tests OpenMP Frontend AST Construction With The `OpenMP_tests` Corpus


A focused walkthrough of the broad `OpenMP_tests` frontend corpus in REX: `parseOmp` in `ast_only` mode, `rose_*` output generation, OpenMP-line reference diffs, mixed OpenMP/OpenACC cases, multi-file and macro-preservation checks, and the separate Fortran AST-coverage slice.
Read more ⟶

How `ompparser` Turns OpenMP Pragmas Into `OpenMPIR` In REX


A focused walkthrough of the standalone `ompparser` stage in REX: lexer and grammar, location-aware `OpenMPIR`, expression callbacks, clause normalization, round-trip unparsing, and the tests that validate the parser before AST construction begins.
Read more ⟶

How REX Proves Lowered OpenMP Semantics With CPU Equivalence Tests


A focused walkthrough of REX's `lowering_cpu` suite: why it compares original and lowered OpenMP programs on the same CPU runtime, how exact and sorted comparison modes work, and which semantic regressions this layer catches before GPU benchmarks.
Read more ⟶

How REX Tests GPU Lowering Invariants With Reduced Rodinia Cases


A focused walkthrough of the `lowering_rodinia` suite in REX: reduced Rodinia-like inputs, invariant-based checks on generated host and device files, and the specific regression classes this layer catches.
Read more ⟶

How REX Organizes Generated Host, Device, and Helper Files


A focused walkthrough of the generated artifact model for REX GPU offloading: the rewritten host file, the synthesized device file, and the shared helper/runtime files that make the build work.
Read more ⟶

How REX Lowers `target data` Regions and Multi-Kernel Lifetimes


A focused walkthrough of how REX lowers OpenMP `target data` regions, reuses the same mapping vocabulary as kernel launches, and preserves data lifetimes across multiple kernels and repeated calls.
Read more ⟶

How REX Builds `__tgt_kernel_arguments` and Runtime Map Arrays


A focused walkthrough of the ABI-critical runtime packet in REX GPU lowering: `__args*` arrays, static and dynamic map-entry handling, and the final `__tgt_kernel_arguments` structure.
Read more ⟶

Why Codex + GPT-5.2 Felt Like a Different Kind of Agent


Why Codex with GPT-5.2 felt like a step change in persistence, why older models and other tools often stopped early, and what Crush and Zeroclaw would need to do to close that gap.
Read more ⟶

How REX Builds the GPU Host Launch Block


A focused walkthrough of the host-side launch block in REX GPU lowering: kernel identity, launch geometry, replacement of the original target region, and the bridge to runtime argument packaging.
Read more ⟶