diff options
author | Hans Wennborg <hans@hanshq.net> | 2019-04-16 12:13:25 +0000 |
---|---|---|
committer | Hans Wennborg <hans@hanshq.net> | 2019-04-16 12:13:25 +0000 |
commit | 21eb771dcb5c11d7500fa6ad551c97a921997f05 (patch) | |
tree | 31b8037fa1c516299cfa7152e3f774a804a3bb9b /clang/test/CodeGenCXX/nrvo.cpp | |
parent | 7fe7e15b2cf4b5061d339432afcb1f1375a49c27 (diff) | |
download | bcm5719-llvm-21eb771dcb5c11d7500fa6ad551c97a921997f05.tar.gz bcm5719-llvm-21eb771dcb5c11d7500fa6ad551c97a921997f05.zip |
Re-commit r357452: SimplifyCFG SinkCommonCodeFromPredecessors: Also sink function calls without used results (PR41259)
The original commit caused false positives from AddressSanitizer's
use-after-scope checks, which have now been fixed in r358478.
> The code was previously checking that candidates for sinking had exactly
> one use or were a store instruction (which can't have uses). This meant
> we could sink call instructions only if they had a use.
>
> That limitation seemed a bit arbitrary, so this patch changes it to
> "instruction has zero or one use" which seems more natural and removes
> the need to special-case stores.
>
> Differential revision: https://reviews.llvm.org/D59936
llvm-svn: 358483
Diffstat (limited to 'clang/test/CodeGenCXX/nrvo.cpp')
-rw-r--r-- | clang/test/CodeGenCXX/nrvo.cpp | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/clang/test/CodeGenCXX/nrvo.cpp b/clang/test/CodeGenCXX/nrvo.cpp index 0f359b9c900..22185740298 100644 --- a/clang/test/CodeGenCXX/nrvo.cpp +++ b/clang/test/CodeGenCXX/nrvo.cpp @@ -60,7 +60,6 @@ X test2(bool B) { // CHECK-NEXT: call void @llvm.lifetime.start // CHECK-NEXT: call {{.*}} @_ZN1XC1Ev // CHECK: call {{.*}} @_ZN1XC1ERKS_ - // CHECK: call {{.*}} @_ZN1XC1ERKS_ // CHECK: call {{.*}} @_ZN1XD1Ev // CHECK-NEXT: call void @llvm.lifetime.end // CHECK: call {{.*}} @_ZN1XD1Ev |