aboutsummaryrefslogtreecommitdiff
path: root/AGENTS
diff options
context:
space:
mode:
author_ov4 <ov4@ov4.org>2026-10-19 11:59:23 +0000
committer_ov4 <ov4@ov4.org>2026-10-19 11:59:23 +0000
commita5ce1af261ec3890d1ae16cc3a8785ffa8ad7b43 (patch)
tree7cd597882beab53fbca97b74424b98abf384d157 /AGENTS
parent5bf9557b5ac1b26dd860a37026f817f85b24910d (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.md4
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