I am trying to optimize some benchmarks using LLVM and run them on gem5 simulator (build for ARM). I am using Sourcery Codebench cross-compiler for ARM on my x-86 machine.
My steps up till now have been using the following commands.
Global frequency set at 1000000000000 ticks per second 0: system.remote_gdb.listener: listening for remote gdb #0 on port 7000 **** REAL SIMULATION **** info: Entering event queue @ 0. Starting simulation… panic: Page table fault when accessing virtual address 0xfffffff4 @ cycle 2509500 [invoke:build/ARM/sim/faults.cc, line 70]
Most of the search results talk about the executable not being statically compiled. Could anyone please tell me if any of the compilation commands is incorrect.
Is there any other way I can check the executable generated is not buggy?
If I got correctly, you seem to be trying to run a bare-metal image on your model, but you compile with linux-gnueabi GCC. I don’t know if that will make a difference, but I’d try to use none-eabi GCC toolchain and set the -target armv7a-none-eabi just in case.
I don't think it should in your case. That looks like a bug, but I'm not an
atomic library expert. Can you create a bug in bugzilla ( http://www.llvm.org/bugs/), please?
Possibly, you should send an email with this error and the bugzilla ID to
the list, just to make sure you get the attention of the right people.