diff options
author | Adrian Prantl <aprantl@apple.com> | 2017-08-24 18:18:24 +0000 |
---|---|---|
committer | Adrian Prantl <aprantl@apple.com> | 2017-08-24 18:18:24 +0000 |
commit | 2fee69a47a6ee02a24132d30c2c479d861a68b93 (patch) | |
tree | 93906c1afbd0de58a5a31dffa66799080c366dab /test/CodeGenCXX/catch-undef-behavior.cpp | |
parent | 1b8529eb2f8e1cbddcc6b78386a21b057b824ad5 (diff) |
Revert "[ubsan] PR34266: When sanitizing the 'this' value for a member function that happens to be a lambda call operator, use the lambda's 'this' pointer, not the captured enclosing 'this' pointer (if any)."
This reverts commit r311589 because of bot breakage.
http://green.lab.llvm.org/green/job/clang-stage2-cmake-RgSan_check/4115/consoleFull#15752874848254eaf0-7326-4999-85b0-388101f2d404.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@311680 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGenCXX/catch-undef-behavior.cpp')
-rw-r--r-- | test/CodeGenCXX/catch-undef-behavior.cpp | 21 |
1 files changed, 0 insertions, 21 deletions
diff --git a/test/CodeGenCXX/catch-undef-behavior.cpp b/test/CodeGenCXX/catch-undef-behavior.cpp index 4733556c62..179c334122 100644 --- a/test/CodeGenCXX/catch-undef-behavior.cpp +++ b/test/CodeGenCXX/catch-undef-behavior.cpp @@ -449,27 +449,6 @@ void upcast_to_vbase() { } } -struct ThisAlign { - void this_align_lambda(); -}; -void ThisAlign::this_align_lambda() { - // CHECK-LABEL: define {{.*}}@"_ZZN9ThisAlign17this_align_lambdaEvENK3$_0clEv" - // CHECK-SAME: (%{{.*}}* %[[this:[^)]*]]) - // CHECK: %[[this_addr:.*]] = alloca - // CHECK: store %{{.*}}* %[[this]], %{{.*}}** %[[this_addr]], - // CHECK: %[[this_inner:.*]] = load %{{.*}}*, %{{.*}}** %[[this_addr]], - // CHECK: %[[this_outer_addr:.*]] = getelementptr inbounds %{{.*}}, %{{.*}}* %[[this_inner]], i32 0, i32 0 - // CHECK: %[[this_outer:.*]] = load %{{.*}}*, %{{.*}}** %[[this_outer_addr]], - // - // CHECK: %[[this_inner_isnonnull:.*]] = icmp ne %{{.*}}* %[[this_inner]], null - // CHECK: %[[this_inner_asint:.*]] = ptrtoint %{{.*}}* %[[this_inner]] to i - // CHECK: %[[this_inner_misalignment:.*]] = and i{{32|64}} %[[this_inner_asint]], {{3|7}}, - // CHECK: %[[this_inner_isaligned:.*]] = icmp eq i{{32|64}} %[[this_inner_misalignment]], 0 - // CHECK: %[[this_inner_valid:.*]] = and i1 %[[this_inner_isnonnull]], %[[this_inner_isaligned]], - // CHECK: br i1 %[[this_inner_valid:.*]] - [&] { return this; } (); -} - namespace CopyValueRepresentation { // CHECK-LABEL: define {{.*}} @_ZN23CopyValueRepresentation2S3aSERKS0_ // CHECK-NOT: call {{.*}} @__ubsan_handle_load_invalid_value |