From: Stephen Canon Date: Wed, 4 Nov 2015 15:25:38 +0000 (+0000) Subject: Allow compound assignment expressions to be contracted when licensed by the language... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9227d8ffb2cb9e2dea1ec93e9a49c8829ffbe626;p=clang Allow compound assignment expressions to be contracted when licensed by the language or pragma. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@252050 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/CGExprScalar.cpp b/lib/CodeGen/CGExprScalar.cpp index 602ce4bf5e..16d220f966 100644 --- a/lib/CodeGen/CGExprScalar.cpp +++ b/lib/CodeGen/CGExprScalar.cpp @@ -2116,7 +2116,7 @@ LValue ScalarExprEmitter::EmitCompoundAssignLValue( OpInfo.RHS = Visit(E->getRHS()); OpInfo.Ty = E->getComputationResultType(); OpInfo.Opcode = E->getOpcode(); - OpInfo.FPContractable = false; + OpInfo.FPContractable = E->isFPContractable(); OpInfo.E = E; // Load/convert the LHS. LValue LHSLV = EmitCheckedLValue(E->getLHS(), CodeGenFunction::TCK_Store);