[Matrix] Preserve existing fast-math flags during lowering
authorHamza Mahfooz <someguy@effective-light.com>
Thu, 3 Jun 2021 14:11:00 +0000 (15:11 +0100)
committerFlorian Hahn <flo@fhahn.com>
Thu, 3 Jun 2021 14:29:31 +0000 (15:29 +0100)
commit83235b07e3c9c2d21a574465287150e7bf750001
treeb1d55063a81d232755f5f5f681427537f3072029
parent92d03c20ea71479c78a29da09e377e040d37c3a5
[Matrix] Preserve existing fast-math flags during lowering

This patch makes it so, floating-point instructions created in
LowerMatrixIntrinsics retain fast-math flags from instructions that are
higher up the chain.

Fixes https://bugs.llvm.org/show_bug.cgi?id=49738

Reviewed By: fhahn

Differential Revision: https://reviews.llvm.org/D103233
llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
llvm/test/Transforms/LowerMatrixIntrinsics/multiply-double-contraction-fmf.ll
llvm/test/Transforms/LowerMatrixIntrinsics/multiply-double-contraction.ll
llvm/test/Transforms/LowerMatrixIntrinsics/multiply-float-contraction-fmf.ll
llvm/test/Transforms/LowerMatrixIntrinsics/multiply-float-contraction.ll
llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-loops.ll
llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-multiple-blocks.ll
llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-volatile.ll
llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused.ll
llvm/test/Transforms/LowerMatrixIntrinsics/multiply-minimal.ll
llvm/test/Transforms/LowerMatrixIntrinsics/preserve-existing-fast-math-flags.ll [new file with mode: 0644]