[llvm] r277071 - Should be committed as one CL.

Vitaly Buka via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 28 15:59:01 PDT 2016


Author: vitalybuka
Date: Thu Jul 28 17:59:01 2016
New Revision: 277071

URL: http://llvm.org/viewvc/llvm-project?rev=277071&view=rev
Log:
Should be committed as one CL.

This reverts commits r277068 r277067 r277066.

Removed:
    llvm/trunk/test/Transforms/InstCombine/lifetime-asan.ll
Modified:
    llvm/trunk/lib/Transforms/InstCombine/InstCombineCalls.cpp

Modified: llvm/trunk/lib/Transforms/InstCombine/InstCombineCalls.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/InstCombine/InstCombineCalls.cpp?rev=277071&r1=277070&r2=277071&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/InstCombine/InstCombineCalls.cpp (original)
+++ llvm/trunk/lib/Transforms/InstCombine/InstCombineCalls.cpp Thu Jul 28 17:59:01 2016
@@ -2243,11 +2243,6 @@ Instruction *InstCombiner::visitCallInst
     break;
   }
   case Intrinsic::lifetime_start:
-    // Asan needs to poison memory to detect invalid access which is possible
-    // even for empty lifetime range.
-    if (II->getFunction()->hasFnAttribute(Attribute::SanitizeAddress))
-      break;
-
     if (removeTriviallyEmptyRange(*II, Intrinsic::lifetime_start,
                                   Intrinsic::lifetime_end, *this))
       return nullptr;

Removed: llvm/trunk/test/Transforms/InstCombine/lifetime-asan.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/InstCombine/lifetime-asan.ll?rev=277070&view=auto
==============================================================================
--- llvm/trunk/test/Transforms/InstCombine/lifetime-asan.ll (original)
+++ llvm/trunk/test/Transforms/InstCombine/lifetime-asan.ll (removed)
@@ -1,35 +0,0 @@
-; RUN: opt < %s -instcombine -S | FileCheck %s
-
-declare void @llvm.lifetime.start(i64, i8* nocapture)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
-declare void @foo(i8* nocapture)
-
-define void @asan() sanitize_address {
-entry:
-  ; CHECK-LABEL: @asan(
-  %text = alloca i8, align 1
-
-  call void @llvm.lifetime.start(i64 1, i8* %text)
-  call void @llvm.lifetime.end(i64 1, i8* %text)
-  ; CHECK: call void @llvm.lifetime.start
-  ; CHECK-NEXT: call void @llvm.lifetime.end
-
-  call void @foo(i8* %text) ; Keep alloca alive
-
-  ret void
-}
-
-
-define void @no_asan() {
-entry:
-  ; CHECK-LABEL: @no_asan(
-  %text = alloca i8, align 1
-
-  call void @llvm.lifetime.start(i64 1, i8* %text)
-  call void @llvm.lifetime.end(i64 1, i8* %text)
-  ; CHECK-NO: call void @llvm.lifetime
-
-  call void @foo(i8* %text) ; Keep alloca alive
-
-  ret void
-}




More information about the llvm-commits mailing list