mirror of
https://github.com/lupyuen/nuttx-star64.git
synced 2025-01-12 20:58:32 +08:00
Scheme Interpreter crashes on NuttX
This commit is contained in:
parent
55f1702e22
commit
9062b824de
1 changed files with 93 additions and 1 deletions
94
README.md
94
README.md
|
@ -7957,7 +7957,39 @@ Let's run the Scheme Interpreter on NuttX QEMU, for easier debugging...
|
|||
|
||||
https://github.com/KenDickey/nuttx-umb-scheme
|
||||
|
||||
(Remember to run `make menuconfig > Save Config` after setting CONFIG_LIBM, CONFIG_ARCH_FLOAT_H and CONFIG_ARCH_SETJMP_H)
|
||||
Here are the steps...
|
||||
|
||||
```bash
|
||||
pushd ../apps/interpreters
|
||||
git submodule add https://github.com/KenDickey/nuttx-umb-scheme umb-scheme
|
||||
popd
|
||||
|
||||
make distclean
|
||||
tools/configure.sh rv-virt:knsh64
|
||||
## Edit .config and append:
|
||||
## CONFIG_LIBM=y
|
||||
## CONFIG_ARCH_FLOAT_H=y
|
||||
## CONFIG_ARCH_SETJMP_H=y
|
||||
|
||||
make menuconfig
|
||||
## Save Config and Exit
|
||||
|
||||
make
|
||||
## Remember to build the Apps Filesystem
|
||||
|
||||
pushd ../apps/interpreters/umb-scheme
|
||||
cp prelude.scheme ../../bin
|
||||
popd
|
||||
|
||||
qemu-system-riscv64 \
|
||||
-semihosting \
|
||||
-M virt,aclint=on \
|
||||
-cpu rv64 \
|
||||
-smp 8 \
|
||||
-bios none \
|
||||
-kernel nuttx \
|
||||
-nographic
|
||||
```
|
||||
|
||||
Here's the output...
|
||||
|
||||
|
@ -8145,6 +8177,66 @@ Here the Crash Dump:
|
|||
[ 9.783000] dump_task: 3 3 100 RR Task --- Running 0000000000000000 0xc0202030 2000 2000 100.0%! scheme <01>F<>0<17> r<><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>d<EFBFBD><64><EFBFBD>&<EFBFBD><EFBFBD><EFBFBD>P<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><1E><><EFBFBD>\<5C><><EFBFBD><1E><><EFBFBD><EFBFBD><EFBFBD>
|
||||
```
|
||||
|
||||
# Analyse the Stack Dump
|
||||
|
||||
TODO: What about other Code Addresses in the Stack Dump?
|
||||
|
||||
```text
|
||||
→ grep 'c00[0-1]....' --only-matching /tmp/a.log
|
||||
c000f366
|
||||
c000004a
|
||||
c000f366
|
||||
c0003af8
|
||||
c001ea34
|
||||
c000cbda
|
||||
c000c00e
|
||||
c001ea34
|
||||
c000cbda
|
||||
c001ea34
|
||||
c000cdc8
|
||||
c001ea34
|
||||
c000cdc8
|
||||
c001ea34
|
||||
c000c6e0
|
||||
c000cdc8
|
||||
c000cf0a
|
||||
c000cf0a
|
||||
c000cdc8
|
||||
c000cf0a
|
||||
c000cf0a
|
||||
c000cf0a
|
||||
c00025fa
|
||||
c0008112
|
||||
c0002558
|
||||
c00028c4
|
||||
c00023f6
|
||||
c001d630
|
||||
c001d640
|
||||
c001d650
|
||||
c001d660
|
||||
c001d670
|
||||
c001d420
|
||||
c001d420
|
||||
c001d420
|
||||
c001d420
|
||||
c001d420
|
||||
c001d420
|
||||
c001d420
|
||||
c001d420
|
||||
c001d420
|
||||
c001d420
|
||||
c001d420
|
||||
c001d420
|
||||
c001d420
|
||||
c001d420
|
||||
c001d720
|
||||
c001d420
|
||||
c001d420
|
||||
c001f490
|
||||
c000fc58
|
||||
c001d420
|
||||
```
|
||||
|
||||
# TODO
|
||||
|
||||
TODO: Port [__up_mtimer_initialize__](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/star64a/arch/risc-v/src/qemu-rv/qemu_rv_timerisr.c#L151-L210) to Star64
|
||||
|
|
Loading…
Reference in a new issue