------- Comment #3 from rguenth at gcc dot gnu dot org  2010-05-31 10:46 -------
(In reply to comment #2)
> The problem is that all the fma4 insns are guarded with not just TARGET_FMA4,
> but TARGET_FMA4 && TARGET_FUSED_MADD.  But the builtins are guarded just with
> OPTION_MASK_ISA_FMA4.
> 
> So, for -mno-fused-madd either we should ensure fma4intrin.h is not included
> (or, at least not its fma intrinsics (currently all intrinsics in the header
> file)) and the builtins expand to nothing, or for -mfma4 -mno-fused-madd 
> expand
> the intrinsics as non-fused insns (multiplication followed by addition or
> similar).

Well, TARGET_FMA4 should be enough to pull in the intrinsics and let the
user manually create fmas.  TARGET_FUSED_MADD should guard automatic
creation of fmas during combine (and thus needs to disable the insn to
avoid creating it).

I guess for the intrinsic use we need a UNSPEC expander then?


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rguenth at gcc dot gnu dot
                   |                            |org, hubicka at gcc dot gnu
                   |                            |dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44338

Reply via email to