[all-commits] [llvm/llvm-project] 6e20d7: [LegalizeDAG] Convert strict fp nodes to libcalls ...
topperc via All-commits
all-commits at lists.llvm.org
Mon Nov 18 11:28:06 PST 2019
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 6e20d70a695028099b1705cfcfd1373d9d62e747
https://github.com/llvm/llvm-project/commit/6e20d70a695028099b1705cfcfd1373d9d62e747
Author: Craig Topper <craig.topper at intel.com>
Date: 2019-11-18 (Mon, 18 Nov 2019)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/test/CodeGen/SystemZ/vector-constrained-fp-intrinsics.ll
M llvm/test/CodeGen/X86/fp-intrinsics-fma.ll
M llvm/test/CodeGen/X86/fp-intrinsics.ll
M llvm/test/CodeGen/X86/vector-constrained-fp-intrinsics.ll
Log Message:
-----------
[LegalizeDAG] Convert strict fp nodes to libcalls without losing the chain.
Previously we mutated the node and then converted it to a libcall. But this loses the chain information.
This patch keeps the chain, but unfortunately breaks tail call optimization as the functions involved in deciding if a node is in tail call position can't handle the chain. But correct ordering seems more important to be right.
Somehow the SystemZ tests improved. I looked at one of them and it seemed that we're handling the split vector elements in a different order and that made the copies work better.
Differential Revision: https://reviews.llvm.org/D70334
More information about the All-commits
mailing list