https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52889
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |INVALID
Status|UNCONFIRMED |RESOLVED
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
I tested:
```
#include <x86intrin.h>
extern __m128 a,b,c;
void foo(){
a = _mm_nmsub_ps(a,b,c);
}
```
GCC produces correctly:
foo:
vmovaps a(%rip), %xmm1
vmovaps b(%rip), %xmm2
vfnmsubps c(%rip), %xmm2, %xmm1, %xmm0
vmovaps %xmm0, a(%rip)
ret
> However the fma4intrin.h mapping has changed from 4.5 -> 4.6,
> which might likely have introduced the error.
No r0-103863-g89509419968e2b (which was included in GCC 4.6.0) fixed the
defintion.