[Bug c/105923] unsupported return type ‘complex double’ for simd
crazylht at gmail dot com
gcc-bugzilla@gcc.gnu.org
Tue Jun 14 09:10:18 GMT 2022
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105923
--- Comment #4 from Hongtao.liu <crazylht at gmail dot com> ---
Hmm, it's in i386.cc
23455/* Set CLONEI->vecsize_mangle, CLONEI->mask_mode, CLONEI->vecsize_int,
23456 CLONEI->vecsize_float and if CLONEI->simdlen is 0, also
23457 CLONEI->simdlen. Return 0 if SIMD clones shouldn't be emitted,
23458 or number of vecsize_mangle variants that should be emitted. */
23459
23460static int
23461ix86_simd_clone_compute_vecsize_and_simdlen (struct cgraph_node *node,
23462 struct cgraph_simd_clone
*clonei,
23463 tree base_type, int num)
...
23509 case E_QImode:
23510 case E_HImode:
23511 case E_SImode:
23512 case E_DImode:
23513 case E_SFmode:
23514 case E_DFmode:
23515 /* case E_SCmode: */
23516 /* case E_DCmode: */
23517 if (!AGGREGATE_TYPE_P (arg_type))
23518 break;
23519 /* FALLTHRU */
23520 default:
23521 if (clonei->args[i].arg_type == SIMD_CLONE_ARG_TYPE_UNIFORM)
23522 break;
23523 warning_at (DECL_SOURCE_LOCATION (node->decl), 0,
23524 "unsupported argument type %qT for simd", arg_type);
23525 return 0;
23526 }
23527 }
More information about the Gcc-bugs
mailing list