[Bug tree-optimization/92225] ice in gen_smaxv2di3, at config/i386/sse.md:12225
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Oct 25 12:49:00 GMT 2019
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92225
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |rsandifo at gcc dot gnu.org,
| |uros at gcc dot gnu.org
--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
Hmm, but we are asking
if (reduc_fn != IFN_LAST
&& !direct_internal_fn_supported_p (reduc_fn, vectype_out,
OPTIMIZE_FOR_SPEED))
{
if (dump_enabled_p ())
dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,
"reduc op not supported by target.\n");
reduc_fn = IFN_LAST;
with reduc_fn == IFN_REDUC_MAX and a V2DImode type which eventually ends up
in direct_optab_supported_p (optab=reduc_smax_scal_optab calling
ix86_optab_supported_p with CODE_FOR_reduc_smax_scal_v2di and V2DImode
which doesn't handle that specially.
Richard - do all IFNs we query direct support for have to manually repeat
constraints we set up? Or is
(define_expand "reduc_plus_scal_<mode>"
[(plus:REDUC_PLUS_MODE
(match_operand:<ssescalarmode> 0 "register_operand")
(match_operand:REDUC_PLUS_MODE 1 "register_operand"))]
""
{
simply in need of constraining for this mode?
CCing Uros since this likely requires a target fix.
More information about the Gcc-bugs
mailing list