I got an app to compile fine for v8 FM with gcc, but I notice that seg-faults hang the simulator. Using raise() properly exits FM, but I can't seem to trap the seg-fault with signal() or do anything intelligent to know about the seg-fault. Normal execution works well.
int main(int argc, char *argv[]) { * (unsigned int *) (0) = 0; // seg-fault hangs FM return(0); }
thanks, Rory
-----Original Message----- From: linaro-toolchain-boun...@lists.linaro.org [mailto:linaro-toolchain-boun...@lists.linaro.org] On Behalf Of Matthew Gretton-Dann Sent: Sunday, May 19, 2013 2:47 PM To: Padgett Don-B43265 Cc: linaro-toolchain@lists.linaro.org Subject: Re: Semi-hosting on v8 Foundation Model using gnu tools
Don,
On 17/05/13 20:57, Padgett Don-B43265 wrote:
The v8 Foundation Model User Guide has a bare metal hello world example that uses semi-hosting. The Makefile uses ARM tools, however. Is there equivalent support for this example using a bare metal version of the gnu tools, such as gcc-linaro-aarch64-none-elf-4.8-2013.04-20130422_linux.tar.xz? I took a look, but didn't see a way to do this.
It is possible but not necessarily easy.
Using the binary tools you've downloaded you will want to do something like the following:
aarch64-none-elf-gcc -specs=elf-aem-ve.specs ...
The -specs option has to be on all your invocations of GCC and G++. You should also invoke the linker through GCC with this option.
Then you need to invoke the model, given an image called foo.axf:
Foundation_v8 --image foo.axf --semi-host="foo.axf OPT1 OPT2" --quiet
Note that the first option to --semi-host is the name of the image again.
Thanks,
Matt
linaro-toolchain@lists.linaro.org