diff options
| author | _ov4 <ov4@ov4.org> | 2026-10-19 11:59:23 +0000 |
|---|---|---|
| committer | _ov4 <ov4@ov4.org> | 2026-10-19 11:59:23 +0000 |
| commit | a5ce1af261ec3890d1ae16cc3a8785ffa8ad7b43 (patch) | |
| tree | 7cd597882beab53fbca97b74424b98abf384d157 /AGENTS | |
| parent | 5bf9557b5ac1b26dd860a37026f817f85b24910d (diff) | |
fix(driver): report Windows JIT crashes with symbolized frames
Record fixed-up JIT graph addresses and named symbols, and report fatal
Windows x86_64 faults with access details and up to 32 stack frames.
Show unwind-entry availability for each frame, ignore normal C++
exceptions, and preserve buffered stdout before walking the stack.
Keep stack-overflow reports minimal and document the resident reporter.
Leave linking and unwind registration unchanged until real Windows CI
provides a fault location for i/exp-string.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'AGENTS')
| -rw-r--r-- | AGENTS/ARCH.md | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/AGENTS/ARCH.md b/AGENTS/ARCH.md index 7c14e5c..dbe9f30 100644 --- a/AGENTS/ARCH.md +++ b/AGENTS/ARCH.md @@ -158,6 +158,10 @@ Driver behavior (`tools/driver/main.cc`): per graph to avoid overlapping unwinder lookup ranges, covering teardown and link-failure cleanup, with table validation in the registration callback; registration failure blocks entry. + During JIT main execution, a Windows x86_64 vectored exception handler reports + fatal faults to stderr with JIT graph/symbol or host module names, per-frame + unwind-entry availability and a stack trace, flushes stdout, and leaves the + exception unhandled; stack overflows receive only a minimal fault report. The JIT builds its `ObjectLinkingLayer` through one file-local factory (COFF flags stay format-conditional, SEH plugin installed before LLJIT ownership) so Windows COFF does not fall back |
