libexpat 2.6.4 is a mature C XML parser exposed as a shared library with a stable ABI. In this task, the library itself is the spec: existing C callers should be able to link against the submission without changing their code.
The task combines XML parsing semantics, exported symbol compatibility, shared-library behavior, and handwritten x86-64 assembly in one implementation problem.
The agent receives the libexpat 2.6.4 reference library and headers and must deliver an ABI-compatible x86-64 assembly replacement. In other words, it is not writing a tiny XML parser from scratch; it is rebuilding a real shared library that existing C callers can load and use unchanged.
The verifier computes a weighted correctness score, a capped performance score, and then blends them with 80% weight on correctness. If the assembly library never achieves any correctness, the final score is zero.
The task runs in a Modal container with 4 CPUs, 8 GB RAM, no GPU, and no internet access. The container image includes the Expat source, assembler and linker toolchain, and timer files. There is little spare headroom beyond that, which keeps the focus on assembly and ABI engineering rather than on brute-force search or external dependencies.