riscv-semantics icon indicating copy to clipboard operation
riscv-semantics copied to clipboard

Tests: test/src/hello.c doesn't run

Open overminder opened this issue 7 years ago • 0 comments

Problem Description

I was trying to run the tests compiled in 32-bit mode with the simulator. Some of the tests work fine (e.g. test/src/add.c returns the result correctly) but things involving mmio work strangely. Namely, test/src/hello.c doesn't print anything and doesn't terminate.

Reproduction Steps

  1. Clone the repo on an x86_64 Mac, then run install_riscv_gcc.sh and . setup.sh to get riscv-none-embed-gcc and put it into PATH.
  2. cd into test and run make to build the test binaries.
  3. cd back into the repo root and run stack exec riscv-semantics -- test/build/hello32.hex.

Other Findings

  • putchar('A'); putchar('\n'); alone works fine. I suppose the problem is related to reading from .rodata section...
  • Calling putchar('A'); in main causes the program to never terminate.

overminder avatar Jun 16 '18 23:06 overminder