https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61249
--- Comment #2 from Michael Tautschnig <mt at debian dot org> --- Thanks a lot for your quick reply. > > Yet r205495 changed _mm_frcz_ss/_mm_frcz_sd so that only a single argument > > is passed to the __builtin_ia32_vfrczss/vfrczsd calls. > You should not use __builtin_* function directly. They are internal > implementation details, published interface is in relevant *.h files. Yes, sure. It would still be nice if they were well typed. > > This was detected at language level (inconsistent types), I can only > > speculate that this may cause invalid code to be generated (or null > > operands). > Did you see the runtime tests in the referred commit? Just re-ran those tests and looking at the generated assembly (should have done that before, my apologies) it seems that two operands are generated: vfrczsd %xmm1, %xmm0 and vfrczss %xmm1, %xmm1 So shall I read this as an imprecision in documentation? Best, Michael