https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102018

--- Comment #4 from Christophe Lyon <clyon at gcc dot gnu.org> ---
(In reply to Torbjorn SVENSSON from comment #3)
     lr      @ 69    [c=8 l=4]  *thumb2_return
> 
> The above was extracted from compiling using:
> arm-none-eabi-gcc pr82692.c -mthumb -march=armv7e-m+fp.dp -mtune=cortex-m7
> -mfloat-abi=hard -mfpu=auto -S -o - -Os
> 
> This bug is only present if -mtune=cortex-m7 or -mcpu=cortex-m7 is used. I
> suppose it has something to do with the cost model for Cortex-M7 as
> otherwise, Cortex-M4 would likely be affected too.

Rather than a cost issue, it's probably because you use +fp.dp (which
-mcpu=cortex-m7 does too), which enables the double-precision FPU. cortex-m4
does not support it, so the cmpdf_trap_vfp pattern is not enabled
(TARGET_VFP_DOUBLE is false).

Reply via email to