feat: add rr support

This commit is contained in:
Paul Pan 2024-05-06 01:23:34 +08:00
parent 0ee2b996e4
commit 71faad766d
2 changed files with 28 additions and 4 deletions

1
.gitignore vendored
View File

@ -1,2 +1,3 @@
/.idea
/target
/replay.*

View File

@ -9,7 +9,7 @@ endif
RUSTFLAGS += -Crelocation-model=static
RUSTFLAGS += -Ccode-model=medium
RUSTFLAGS += -Ctarget-feature=+relax
#RUSTFLAGS += -Ctarget-feature=+relax
RUSTFLAGS += -Cforce-frame-pointers=yes
RUSTFLAGS += -Clink-arg=-T$(LINKER_LDS)
@ -36,9 +36,32 @@ clean:
cargo clean
qemu: kernel
qemu-system-$(ARCH) -nographic -machine virt -serial mon:stdio -smp 1 -kernel target/$(BUILD_TARGET)/debug/kernel
qemu-system-$(ARCH) \
-nographic -machine virt -serial mon:stdio -smp 1 \
-kernel target/$(BUILD_TARGET)/debug/kernel
qemu-gdb: kernel
qemu-system-$(ARCH) -nographic -machine virt -serial mon:stdio -smp 1 -kernel target/$(BUILD_TARGET)/debug/kernel -s -S
qemu-system-$(ARCH) \
-nographic -machine virt -serial mon:stdio -smp 1 \
-kernel target/$(BUILD_TARGET)/debug/kernel \
-s -S
.PHONY: kernel clippy test clean qemu
replay.qcow2:
qemu-img create -f qcow2 replay.qcow2 1G
qemu-record: kernel replay.qcow2
qemu-system-$(ARCH) \
-nographic -machine virt -serial mon:stdio -smp 1 \
-kernel target/$(BUILD_TARGET)/debug/kernel \
-icount shift=auto,rr=record,rrfile=replay.bin,rrsnapshot=init \
-drive file=replay.qcow2,if=none,id=rr
qemu-replay: kernel replay.qcow2
qemu-system-$(ARCH) \
-nographic -machine virt -serial mon:stdio -smp 1 \
-kernel target/$(BUILD_TARGET)/debug/kernel \
-icount shift=auto,rr=replay,rrfile=replay.bin,rrsnapshot=init \
-drive file=replay.qcow2,if=none,id=rr \
-s -S
.PHONY: kernel clippy test clean qemu qemu-gdb qemu-record qemu-replay