[LLVMdev] Error running spec benchmark with FMA4 on X86

Anitha Boyapati anitha.boyapati at gmail.com
Sun Sep 9 20:42:48 PDT 2012

On 6 September 2012 20:02, Anitha Boyapati <anitha.boyapati at gmail.com>wrote:

> Hi All,
> I am facing miscompare error when running povray (and few other C/C++
> benchmarks) from spec cpu2006 suite enabling FMA4 (and disabling FMA3). I
> have used -ffp-contract=fast to turn on this option. (Compilation options
> and targets pasted below).
> >>>>>>>>
> clang version 3.2 (trunk 163295:163308) (llvm/trunk 163295)
> Target: x86_64-unknown-linux-gnu
> Thread model: posix
> (Options to clang)
>  -O3 -march=bdver2 -mavx -mno-fma -mfma4 -ffp-contract=fast -save-temps
> <<<<<<<
> Note that BDVER2 supports both FMA3 and FMA4. Also the benchmark was
> run *successfully* when FMA3 was enabled. Reducing the testcase might take
> more time but has anyone noticed this issue?

What is more interesting is that DragonEgg compiled for the same llvm
revision does well with FMA4. (Note that for Dragonegg case,
DAGCombiner.cpp is tweaked to do FMA check for AllowFpFusion() == Standard
instead of Fast. Only then FMA4 gets generated. This is just for
experimental purposes)


* Anitha*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120910/23faf7fa/attachment.html>

More information about the llvm-dev mailing list