Build static version of aarch64's binary.
aarch64-linux-gnu-gcc-11 hello.c -static -o a.out
Run with SimEng.
./simeng a64fx.yaml ./a.out
Then, oops!
[SimEng] Build metadata:
[SimEng] Version: 0.9.6
[SimEng] Compile Time - Date: 09:49:18 - Apr 28 2024
[SimEng] Build type: Release
[SimEng] Compile options: -Wall;$<$:-fno-rtti>;-fsanitize=address;-fsanitize=undefined;-fno-omit-frame-pointer;-fno-sanitize-recover=address,undefined
[SimEng] Test suite: OFF
[SimEng] Running in Out-of-Order mode
[SimEng] Workload: ./a.out
[SimEng] Config file: a64fx.yaml
[SimEng] ISA: AArch64
[SimEng] Auto-generated Special File directory: True
[SimEng] Special File directory used: /home/prometheus/source-code/SimEng-main/build/specialFiles/
[SimEng] Number of Cores: 1
[SimEng] Starting...
/home/prometheus/source-code/SimEng-main/src/lib/arch/aarch64/Instruction_execute.cc:3833:35: runtime error: load of value 56962, which is not a valid value for type 'arm64_reg'
Can't run aarch64 binary. Following is my steps.
aarch64-linux-gnu-gcc-11 hello.c -static -o a.out
./simeng a64fx.yaml ./a.out