The GitHub Actions job "Publish OrcJIT wheel" on tvm-ffi.git/main has succeeded.
Run started by GitHub user cyx-6 (triggered by cyx-6).

Head commit for run:
51341adc9a0c4c0de329852e24d57b1587b0e0c6 / Yaxing Cai <[email protected]>
[FIX][ORCJIT] Discard CRT callbacks after failed ARM64 links (#880)

An ARM64 COFF object with CRT callback sections and an unresolved symbol
can crash during module teardown. RuntimeDyld frees the failed object's
memory, but the addon previously retained indirect
constructor/destructor slots into that memory.

Stage CRT entries per object until `NotifyEmitted` confirms successful
linking. The object's memory manager discards staged entries on failure,
before releasing their memory. Keep staging records separate when
object-buffer addresses are reused.

Add native Windows ARM64 regressions for clang-cl and MSVC. Each
repeatedly fails materialization, unloads the failed module without
callbacks, and then verifies constructor/destructor ordering on a valid
module using the same session.

Validation:
- Reproduced the original ARM64 COFF crash in the C++ harness against
`mlc-llvm-static==23.1.1.post0`; the fix leaves zero stale callbacks and
exits successfully.
- The same harness still executes the native ARM64 COFF fixtures,
imported host calls, arithmetic, CRT ordering, null/sentinel slots, and
teardown successfully.
- macOS ARM64: built and repaired the wheel against the exact
`23.1.1.post0` SDK, installed it with the published
`apache-tvm-ffi==0.1.15.post1` core in an isolated environment without
the LLVM SDK, and passed **136 tests, 57 skipped**, plus both C and C++
quick-start examples.
- Pre-commit checks pass.
- Native Windows ARM64: **107 passed, 51 skipped**, including the new
failed-materialization regressions for both clang-cl and MSVC; the C
quick-start passes. [Validation
run](https://github.com/cyx-6/tvm-ffi/actions/runs/40341249761).
- Linux ARM64: **178 passed, 15 skipped**; Linux x86-64: **180 passed,
13 skipped**. C and C++ quick-start examples pass on both. [Remaining
platform validation
run](https://github.com/cyx-6/tvm-ffi/actions/runs/40341882212) also
builds Windows AMD64 and macOS ARM64 wheels.
- Windows AMD64: **82 passed, 42 skipped**; the C quick-start passes.
All four remote platform jobs have passed; the macOS CI job is still
queued, with local native wheel validation completed above.

The fork validation commits change only the CI workflow; addon and core
sources are identical to this PR.

All five candidate wheels are built and saved with SHA-256 checksums.
Wheel metadata declares only the TVM FFI core as a runtime dependency;
LLVM remains statically linked.

The ORCJIT 0.1.3 publishing run was cancelled before PyPI upload so this
fix can be included in the release. No LLVM SDK rebuild is needed.

Report URL: https://github.com/apache/tvm-ffi/actions/runs/40354858076

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to