diff options
| author | Duncan Sands <baldrick@free.fr> | 2010-03-14 21:08:40 +0000 |
|---|---|---|
| committer | Duncan Sands <baldrick@free.fr> | 2010-03-14 21:08:40 +0000 |
| commit | 7e59edf0656c5211c0021bcf443ff05c5dfcd334 (patch) | |
| tree | 6d8542443e4719af46003effa50d60f135c2b60a /lib/CodeGen/SelectionDAG/TargetLowering.cpp | |
| parent | 1899ca3358e0f0477781472c3b0f4868b9d6e42b (diff) | |
| download | external_llvm-7e59edf0656c5211c0021bcf443ff05c5dfcd334.zip external_llvm-7e59edf0656c5211c0021bcf443ff05c5dfcd334.tar.gz external_llvm-7e59edf0656c5211c0021bcf443ff05c5dfcd334.tar.bz2 | |
Turn calls to copysignl into an FCOPYSIGN node. Handle FCOPYSIGN nodes
with ppc_f128 type by having the type legalizer turn these back into a
call to copysignl.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98514 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/TargetLowering.cpp')
| -rw-r--r-- | lib/CodeGen/SelectionDAG/TargetLowering.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/CodeGen/SelectionDAG/TargetLowering.cpp b/lib/CodeGen/SelectionDAG/TargetLowering.cpp index 4df4d77..f7ef2d6 100644 --- a/lib/CodeGen/SelectionDAG/TargetLowering.cpp +++ b/lib/CodeGen/SelectionDAG/TargetLowering.cpp @@ -174,6 +174,10 @@ static void InitLibcallNames(const char **Names) { Names[RTLIB::FLOOR_F64] = "floor"; Names[RTLIB::FLOOR_F80] = "floorl"; Names[RTLIB::FLOOR_PPCF128] = "floorl"; + Names[RTLIB::COPYSIGN_F32] = "copysignf"; + Names[RTLIB::COPYSIGN_F64] = "copysign"; + Names[RTLIB::COPYSIGN_F80] = "copysignl"; + Names[RTLIB::COPYSIGN_PPCF128] = "copysignl"; Names[RTLIB::FPEXT_F32_F64] = "__extendsfdf2"; Names[RTLIB::FPEXT_F16_F32] = "__gnu_h2f_ieee"; Names[RTLIB::FPROUND_F32_F16] = "__gnu_f2h_ieee"; |
