https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61249
Bug ID: 61249 Summary: _mm_frcz_ss, _mm_frcz_sd: __builtin_ia32_vfrczss, __builtin_ia32_vfrczsd require 2 arguments Product: gcc Version: 4.8.3 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: mt at debian dot org Looking at https://gcc.gnu.org/onlinedocs/gcc/X86-Built-in-Functions.html on the one hand and AMD's "AMD64 Architecture Programmer’s Manual Volume 6: 128-Bit and 256-Bit XOP and FMA4 Instructions" on the other hand, vfrczss/vfrczsd require a second argument to specify the destination. Yet r205495 changed _mm_frcz_ss/_mm_frcz_sd so that only a single argument is passed to the __builtin_ia32_vfrczss/vfrczsd calls. This was detected at language level (inconsistent types), I can only speculate that this may cause invalid code to be generated (or null operands). Best, Michael PS.: The problem persists in the 4.9 branch as xopintrin.h hasn't been touched since 4.8.