> appear UNSUPPORTED.
> That's because this config appears to define
> __ARM_ARCH_EXT_IDIV__ however idiv appears not to be present.
> 
> For instance __aeabi_div is called to perform
> division for the following test-case:
> int f(int x, int y)
> {
>   int r = x / y;
>   return r;
> }
> 
> Compiling with -O2:
> f:
> @ args = 0, pretend = 0, frame = 0
> @ frame_needed = 0, uses_anonymous_args = 0
> push    {r4, lr}
> bl      __aeabi_idiv
> pop     {r4, pc}
> 
> I assumed if __ARM_ARCH_EXT_IDIV was defined, then
> there should have been idiv instead of call to __aeabi_div
> or am I missing something ?
> 
> Um I had configured with --with-tune=cortex-a9. Is that incorrect for
> armv8l-unknown-linux-gnueabihf ?

--with-tune shouldn't make a difference to code generation settings. The code 
generation you are showing is certainly odd for this testcase  - and not 
something I can reproduce on pristine trunk - so sounds like something's broken 
by your patch . You should be seeing an sdiv in this case in the output - Look 
at the .arch directive at the top of your file - maybe that gives you a clue in 
terms of making sure that you had configured the toolchain correctly.


regards
Ramana

> 
> xgcc -v:
> Using built-in specs.
> COLLECT_GCC=armhf-bootstrap-build/gcc/xgcc
> Target: armv8l-unknown-linux-gnueabihf
> Configured with: ../gcc/configure --enable-languages=c,c++,fortran
> --with-arch=armv8-a --with-fpu=neon-fp-armv8 --with-float=hard
> --with-mode=thumb --enable-multiarch --with-tune=cortex-a9
> --disable-multilib
> Thread model: posix
> gcc version 7.0.0 20160727 (experimental) (GCC)
> 
> Thanks,
> Prathamesh
>>
>> Thanks,
>> Ramana

Reply via email to