On Wed, 17 Jul 2013 16:52:49 +0200
Christophe Lyon <christophe.l...@linaro.org> wrote:

> Hi,
> 
> Linaro is NOT an alternative to the Yocto project; we are
> collaborating with them. For instance, there are recipes to build a
> Yocto distribution using Linaro packages (e.g. the toolchain).
> 
> Regarding the support of armv5te, if you build your toolchain from the
> sources we provide, the support is included.
> It's also present in the binary toolchains we provide, but these ones
> default to generating code for armv7-a processors: you'll have to
> force -march=XXX or -mcpu=YYY on your command line.

Are you sure about this? You can try to:

$ echo "int main(int argc,char *argv[]) {return 0xBADF00D/argc;}" >test.c
$ arm-linux-gnueabihf-gcc -march=armv5te -marm test.c
$ arm-linux-gnueabihf-objdump -d a.out

And then have a look at the nice __aeabi_idiv implementation which gets
linked in:

00008408 <__aeabi_idiv>:
    8408:       2900            cmp     r1, #0
    840a:       f000 813e       beq.w   868a <.divsi3_skip_div0_test+0x27c>

0000840e <.divsi3_skip_div0_test>:
    840e:       ea80 0c01       eor.w   ip, r0, r1
    8412:       bf48            it      mi
    8414:       4249            negmi   r1, r1
    8416:       1e4a            subs    r2, r1, #1
    8418:       f000 811f       beq.w   865a <.divsi3_skip_div0_test+0x24c>
    841c:       0003            movs    r3, r0
    841e:       bf48            it      mi
    8420:       4243            negmi   r3, r0
    8422:       428b            cmp     r3, r1
    8424:       f240 811e       bls.w   8664 <.divsi3_skip_div0_test+0x256>
    8428:       4211            tst     r1, r2
    842a:       f000 8123       beq.w   8674 <.divsi3_skip_div0_test+0x266>
    842e:       fab3 f283       clz     r2, r3
    8432:       fab1 f081       clz     r0, r1
    8436:       eba0 0202       sub.w   r2, r0, r2
    843a:       f1c2 021f       rsb     r2, r2, #31

...

Or maybe you have some plans to eventually provide multiple libgcc
variants with the same binary toolchain, so that it can select the
right one based on -march/-mcpu options?

-- 
Best regards,
Siarhei Siamashka

_______________________________________________
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain

Reply via email to