[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-arm] Regression tests for Assembly libraries for Cortex-M: Mor

From: Peter Maydell
Subject: Re: [Qemu-arm] Regression tests for Assembly libraries for Cortex-M: More recent qemu versions core-dump or fail with warnings
Date: Sat, 27 Apr 2019 21:41:21 +0100

On Fri, 26 Apr 2019 at 19:20, "Björn Haase" <address@hidden> wrote:

> >All the cortex-m systems support semihosting. (Note
> >that the ABI for M-profile semihosting is not quite
> >the same as the A-profile ABI -- it uses a breakpoint
> >insn, rather than an SVC insn.) You need to enable
> >it with the -semihosting option, and you can't use
> >it from non-privileged code (this is the same as the
> >A-profile semihosting).
> You don't actually know whether someby has actually used this together with 
> the syscall implementations in newlib/libgloss? I somehow fear that my older 
> implementation only did work because it was using the SWI interface ...  
> However, I have seen that libgloss seems to provide different versions of the 
> "Angel" interface. One of these also seems to use a breakpoint instruction.

I would certainly expect libgloss/newlib to use the
correct semihosting interface if built for M-profile,
and we've never had any QEMU users who've said "my
M-profile code assumes SWI but QEMU doesn't implement
that", which I think we would have done if libgloss/newlib
were buggy in this way.
I just haven't actually personally gone and tested it.
The only thing I can think of is that if you accidentally
link against an A-profile newlib/libgloss you'll get the
wrong semihosting ABI.

-- PMM

reply via email to

[Prev in Thread] Current Thread [Next in Thread]