From 1767d390fbf3d0c65389de46caf0b6d43ef3b6ad Mon Sep 17 00:00:00 2001 From: Richard Qin Date: Fri, 10 Jul 2026 11:24:56 +0800 Subject: feat: establish bootable new architecture checkpoint Replace the compressed boot path with a relocatable higher-half RISC-V entry, expand memory and SMP support, and add the driver, TTY, VFS, exec, signal, syscall, initramfs, and self-test infrastructure needed for a bootable kernel checkpoint. --- na/scripts/extract-asm-offsets.sed | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 na/scripts/extract-asm-offsets.sed (limited to 'na/scripts/extract-asm-offsets.sed') diff --git a/na/scripts/extract-asm-offsets.sed b/na/scripts/extract-asm-offsets.sed new file mode 100644 index 0000000..c97ec2c --- /dev/null +++ b/na/scripts/extract-asm-offsets.sed @@ -0,0 +1,18 @@ +# SPDX-License-Identifier: GPL-2.0-or-later +# Extract `->SYM val COMMENT` markers emitted by inline asm in +# asm-offsets.c into proper `#define SYM val /* COMMENT */` lines. +# 1:1 with Linux scripts/Makefile.lib `sed-offsets`. +# +# Input : assembly source produced by `gcc -S asm-offsets.c` — +# inline asm emits lines like +# .ascii "->KERNEL_MAP_VIRT_ADDR 0 offsetof(...)" +# Output : header fragment for include/generated/asm-offsets.h +# +# Step 1 unwraps the `.ascii "..."` directive so the actual payload +# (starting with `->`) is exposed. Steps 2-4 then rewrite into a +# proper #define. +s:^[[:space:]]*\.ascii[[:space:]]*"\(.*\)".*:\1: +/^->/{s:->#\(.*\):/* \1 */:; + s:^->\([^ ]*\) [\$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; + s:->::; + p;} -- cgit v1.2.3