summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support/APFloat.cpp
diff options
context:
space:
mode:
authorNick Desaulniers <ndesaulniers@google.com>2019-06-07 19:51:22 +0000
committerNick Desaulniers <ndesaulniers@google.com>2019-06-07 19:51:22 +0000
commit7ddd694d3684aba30a6f2b49a54aea0f58b6d835 (patch)
treefd5e2fbc73c7638b887552d1fde6b2766b308fb0 /llvm/lib/Support/APFloat.cpp
parentd4a8089f035a1724d2c6642c6d205b8c96b8b2e6 (diff)
downloadbcm5719-llvm-7ddd694d3684aba30a6f2b49a54aea0f58b6d835.tar.gz
bcm5719-llvm-7ddd694d3684aba30a6f2b49a54aea0f58b6d835.zip
[APFloat] APFloat::Storage::Storage - refix use after move
Summary: Re-land r360675 after it was reverted in r360770. This was reported in: https://llvm.org/reports/scan-build/ Based on feedback in: https://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20190513/652286.html Reviewers: RKSimon, efriedma Reviewed By: RKSimon, efriedma Subscribers: eli.friedman, hiraditya, llvm-commits, srhines Tags: #llvm Differential Revision: https://reviews.llvm.org/D62767 llvm-svn: 362833
Diffstat (limited to 'llvm/lib/Support/APFloat.cpp')
-rw-r--r--llvm/lib/Support/APFloat.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Support/APFloat.cpp b/llvm/lib/Support/APFloat.cpp
index 208950d7ab7..d2cd8b4b688 100644
--- a/llvm/lib/Support/APFloat.cpp
+++ b/llvm/lib/Support/APFloat.cpp
@@ -4418,8 +4418,9 @@ APFloat::Storage::Storage(IEEEFloat F, const fltSemantics &Semantics) {
return;
}
if (usesLayout<DoubleAPFloat>(Semantics)) {
+ const fltSemantics& S = F.getSemantics();
new (&Double)
- DoubleAPFloat(Semantics, APFloat(std::move(F), F.getSemantics()),
+ DoubleAPFloat(Semantics, APFloat(std::move(F), S),
APFloat(semIEEEdouble));
return;
}
OpenPOWER on IntegriCloud