diff --git a/wally-pipelined/linux-testgen/testvector-generation/checkpoint.gdb b/wally-pipelined/linux-testgen/testvector-generation/checkpoint.gdb deleted file mode 100644 index 1d79bc8a..00000000 --- a/wally-pipelined/linux-testgen/testvector-generation/checkpoint.gdb +++ /dev/null @@ -1,64 +0,0 @@ -define genCheckpoint - # GDB config - set pagination off - set logging overwrite on - set logging redirect on - set confirm off - - # QEMU must also use TCP port 1240 - target extended-remote :1240 - - # QEMU Config - maintenance packet Qqemu.PhyMemMode:1 - - # Symbol file - file ../buildroot-image-output/vmlinux - - # Argument Parsing - set $tcpPort=$arg0 - set $instrCount=$arg1 - set $statePath=$arg2 - set $ramPath=$arg3 - set $checkPC=$arg4 - set $checkPCoccurences=$arg5 - eval "set $statePath = \"%s/stateGDB.txt\"", $statePath - eval "set $ramPath = \"%s/ramGDB.txt\"", $ramPath - - - # Step over reset vector into actual code - stepi 100 - # Set breakpoint for where to stop - b do_idle - # Proceed to checkpoint - printf "GDB proceeding to checkpoint at %d instrs\n", $instrCount - #stepi $instrCount-1000 - b *$checkPC - ignore 2 $checkPCoccurences - c - - printf "Reached checkpoint at %d instrs\n", $instrCount - - # Log all registers to a file - printf "GDB storing state to %s\n", $statePath - eval "set logging file %s", $statePath - set logging on - info all-registers - set logging off - - # Log main memory to a file - printf "GDB storing RAM to %s\n", $ramPath - eval "set logging file %s", $ramPath - set logging on - x/134217728xb 0x80000000 - set logging off - - # Continue to checkpoint; stop on the 3rd time - # Should reach login prompt by then - printf "GDB continuing execution to login prompt\n" - ignore 1 2 - c - - printf "GDB reached login prompt!\n" - kill - q -end diff --git a/wally-pipelined/linux-testgen/testvector-generation/genCheckpoint.gdb b/wally-pipelined/linux-testgen/testvector-generation/genCheckpoint.gdb index 65ce1559..92630698 100755 --- a/wally-pipelined/linux-testgen/testvector-generation/genCheckpoint.gdb +++ b/wally-pipelined/linux-testgen/testvector-generation/genCheckpoint.gdb @@ -1,4 +1,4 @@ -define genCheckpoint +define genCheckpoint # GDB config set pagination off set logging overwrite on @@ -8,7 +8,7 @@ define genCheckpoint # Argument Parsing set $tcpPort=$arg0 set $instrCount=$arg1 - set $statePath=$arg1 + set $statePath=$arg2 set $ramPath=$arg2 set $checkPC=$arg3 set $checkPCoccurences=$arg4 @@ -31,7 +31,7 @@ define genCheckpoint # Proceed to checkpoint printf "GDB proceeding to checkpoint at %d instrs\n", $instrCount #stepi $instrCount-1000 - b *$checkPC + eval "b *0x%s",$checkPC ignore 2 $checkPCoccurences c diff --git a/wally-pipelined/linux-testgen/testvector-generation/genCheckpoint.sh b/wally-pipelined/linux-testgen/testvector-generation/genCheckpoint.sh index 249094ea..f3542034 100755 --- a/wally-pipelined/linux-testgen/testvector-generation/genCheckpoint.sh +++ b/wally-pipelined/linux-testgen/testvector-generation/genCheckpoint.sh @@ -3,7 +3,7 @@ source genSettings.sh tcpPort=1236 -instrs=50000000 +instrs=10000000 checkOutDir="$outDir/checkpoint$instrs" checkIntermedDir="$checkOutDir/intermediate-outputs" @@ -28,7 +28,7 @@ then -bios $imageDir/fw_jump.elf -kernel $imageDir/Image -append "root=/dev/vda ro" -initrd $imageDir/rootfs.cpio \ -singlestep -rtc clock=vm -icount shift=1,align=off,sleep=on,rr=replay,rrfile="$intermedDir/$recordFile" \ -gdb tcp::$tcpPort -S) \ - & riscv64-unknown-elf-gdb -quiet -x genCheckpoint.gdb -ex "genCheckpoint $tcpPort $instrs \"$checkIntermedDir\" 0x$pc $occurences" + & riscv64-unknown-elf-gdb -x genCheckpoint.gdb -ex "genCheckpoint $tcpPort $instrs \"$checkIntermedDir\" \"$pc\" $occurences" # Post-Process GDB outputs ./parseState.py "$checkOutDir" ./fix_mem.py "$checkIntermedDir/ramGDB.txt" "$checkOutDir/ram.txt" diff --git a/wally-pipelined/regression/wave-dos/peripheral-waves.do b/wally-pipelined/regression/wave-dos/peripheral-waves.do index 594d572a..6eec4995 100644 --- a/wally-pipelined/regression/wave-dos/peripheral-waves.do +++ b/wally-pipelined/regression/wave-dos/peripheral-waves.do @@ -50,7 +50,6 @@ add wave -hex /testbench/dut/hart/WriteDataM add wave -hex /testbench/dut/hart/lsu/dcache/MemPAdrM add wave -hex /testbench/dut/hart/lsu/dcache/WriteDataM add wave -hex /testbench/dut/hart/lsu/dcache/ReadDataM -add wave -hex /testbench/dut/hart/ebu/ReadDataM add wave -divider add wave -hex /testbench/PCW #add wave -hex /testbench/InstrW