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

--- Comment #8 from Alexander Monakov <amonakov at gcc dot gnu.org> ---
> The extension is closely modeled after openCL

Hm, that doesn't sound right: gcc had vector types long before OpenCL was even
a thing; I believe it's modeled after Altivec actually: the discrepancy between
C-style casts on scalar and vector types definitely comes from Altivec.

> IIRC openCL uses "intrinsics" for these kind of operations?

Yes, in OpenCL there's no implicit casts for vector types, and one has to use
built-in functions like 'convert_float4'.

Also worth mentioning that Clang provides __builtin_convertvector(arg, type)
for casting.

Reply via email to