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

Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
          Component|tree-optimization           |target
           Assignee|unassigned at gcc dot gnu.org      |ebotcazou at gcc dot 
gnu.org

--- Comment #10 from Eric Botcazou <ebotcazou at gcc dot gnu.org> ---
> * For the mult part, rtx_code calls sparc_rtx_cost, which has
> 
>     case MULT:
>       if (float_mode_p)
>       *total = sparc_costs->float_mul;
>       else if (! TARGET_HARD_MUL)
>       *total = COSTS_N_INSNS (25);
> 
>   On SPARCv9/-m64, TARGET_HARD_MUL is false, so we get the 25*4 = 100 part,
>   unlike v8, which explains why the test only fails for 64-bit.

Ugh, thanks for spotting it, this looks like an annoying oversight.

Reply via email to