[LLVMdev] Newbee question: LLVM backend regression tests for thumb1 targets on simulator possible?

Jonathan Roelofs
Tue, 16 Dec 2014 16:40:06 -0000

On 12/16/14 9:32 AM, Bjoern Haase wrote:
> Am 16.12.2014 15:27, schrieb Jonathan Roelofs:
>> I'm working on a baremetal cross toolchain, and I would like to set
up such a
>> buildbot. There are several pieces needed before that can happen
though, and
>> the important one is remote testing support in LIT (which I'm
working on)...
>> in due time :)
>>
>> Jon
> This would be perfect.
>
> Actually, you suggested to use
>
>  > $qemu-system-arm -semihosting -M integratorcp -cpu cortex-m0 -kernel
a.out
>
> You have some special version of qemu? My default distribution's qemu
package
> did not have a cortex-M0 nor has qemu head freshly taken from git:
Oh, maybe I'm thinking of an internal build of qemu. Sorry about
that.
>
> $ qemu-arm -cpu ?
> Available CPUs:
>    arm926  arm946 arm1026  arm1136  arm1136-r2 arm1176  arm11mpcore
cortex-m3
> cortex-a8
>    cortex-a8-r2 cortex-a9 cortex-a15 ti925t pxa250 sa1100 sa1110 pxa255
pxa260
>    pxa261 pxa262 pxa270 pxa270-a0 pxa270-a1 pxa270-b0 pxa270-b1 xa270-c0
>    pxa270-c5 any
>
> Still your procedure will work, just by using the m3 instead :-).
Yeah, that should work for the most part, unless you emit thumb2 instructions
(which will work on cortex-m3, but not m0). The list of them is pretty small
though IIRC, so maybe you can write a script that disassembles & checks for
them.
>
> Yours,
>
> Björn.

--
Jon Roelofs
jonathan at codesourcery.com
CodeSourcery / Mentor Embedded