[PATCH] D60355: hwasan: Enable -hwasan-allow-ifunc by default.

Peter Collingbourne via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 8 17:25:19 PDT 2019


This revision was automatically updated to reflect the committed changes.
Closed by commit rL357960: hwasan: Enable -hwasan-allow-ifunc by default. (authored by pcc, committed by ).
Herald added a subscriber: delcypher.

Changed prior to commit:
  https://reviews.llvm.org/D60355?vs=193999&id=194228#toc

Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D60355/new/

https://reviews.llvm.org/D60355

Files:
  compiler-rt/trunk/test/hwasan/lit.cfg
  llvm/trunk/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
  llvm/trunk/test/Instrumentation/HWAddressSanitizer/lazy-thread-init.ll
  llvm/trunk/test/Instrumentation/HWAddressSanitizer/prologue.ll


Index: llvm/trunk/test/Instrumentation/HWAddressSanitizer/prologue.ll
===================================================================
--- llvm/trunk/test/Instrumentation/HWAddressSanitizer/prologue.ll
+++ llvm/trunk/test/Instrumentation/HWAddressSanitizer/prologue.ll
@@ -1,14 +1,14 @@
 ; Test -hwasan-with-ifunc flag.
 ;
-; RUN: opt -hwasan -hwasan-allow-ifunc -S < %s | \
+; RUN: opt -hwasan -S < %s | \
 ; RUN:     FileCheck %s --check-prefixes=CHECK,CHECK-NOGLOBAL,CHECK-TLS,CHECK-HISTORY
-; RUN: opt -hwasan -hwasan-allow-ifunc -S -hwasan-with-ifunc=0 -hwasan-with-tls=1 -hwasan-record-stack-history=1 < %s | \
+; RUN: opt -hwasan -S -hwasan-with-ifunc=0 -hwasan-with-tls=1 -hwasan-record-stack-history=1 < %s | \
 ; RUN:     FileCheck %s --check-prefixes=CHECK,CHECK-NOGLOBAL,CHECK-TLS,CHECK-HISTORY
-; RUN: opt -hwasan -hwasan-allow-ifunc -S -hwasan-with-ifunc=0 -hwasan-with-tls=1 -hwasan-record-stack-history=0 < %s | \
+; RUN: opt -hwasan -S -hwasan-with-ifunc=0 -hwasan-with-tls=1 -hwasan-record-stack-history=0 < %s | \
 ; RUN:     FileCheck %s --check-prefixes=CHECK,CHECK-NOGLOBAL,CHECK-IFUNC,CHECK-NOHISTORY
-; RUN: opt -hwasan -hwasan-allow-ifunc -S -hwasan-with-ifunc=0 -hwasan-with-tls=0 < %s | \
+; RUN: opt -hwasan -S -hwasan-with-ifunc=0 -hwasan-with-tls=0 < %s | \
 ; RUN:     FileCheck %s --check-prefixes=CHECK,CHECK-GLOBAL,CHECK-NOHISTORY
-; RUN: opt -hwasan -hwasan-allow-ifunc -S -hwasan-with-ifunc=1  -hwasan-with-tls=0 < %s | \
+; RUN: opt -hwasan -S -hwasan-with-ifunc=1  -hwasan-with-tls=0 < %s | \
 ; RUN:     FileCheck %s --check-prefixes=CHECK,CHECk-NOGLOBAL,CHECK-IFUNC,CHECK-NOHISTORY
 
 target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"
Index: llvm/trunk/test/Instrumentation/HWAddressSanitizer/lazy-thread-init.ll
===================================================================
--- llvm/trunk/test/Instrumentation/HWAddressSanitizer/lazy-thread-init.ll
+++ llvm/trunk/test/Instrumentation/HWAddressSanitizer/lazy-thread-init.ll
@@ -1,4 +1,4 @@
-; RUN: opt -S -hwasan -hwasan-allow-ifunc < %s | FileCheck %s
+; RUN: opt -S -hwasan < %s | FileCheck %s
 
 target triple = "aarch64--linux-android"
 
Index: llvm/trunk/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
===================================================================
--- llvm/trunk/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
+++ llvm/trunk/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
@@ -160,10 +160,6 @@
                                        cl::desc("inline all checks"),
                                        cl::Hidden, cl::init(false));
 
-static cl::opt<bool> ClAllowIfunc("hwasan-allow-ifunc",
-                                  cl::desc("allow the use of ifunc"),
-                                  cl::Hidden, cl::init(false));
-
 namespace {
 
 /// An instrumentation pass implementing detection of addressability bugs
@@ -836,7 +832,7 @@
   if (!Mapping.InTls)
     return getDynamicShadowNonTls(IRB);
 
-  if (ClAllowIfunc && !WithFrameRecord && TargetTriple.isAndroid())
+  if (!WithFrameRecord && TargetTriple.isAndroid())
     return getDynamicShadowIfunc(IRB);
 
   Value *SlotPtr = getHwasanThreadSlotPtr(IRB, IntptrTy);
Index: compiler-rt/trunk/test/hwasan/lit.cfg
===================================================================
--- compiler-rt/trunk/test/hwasan/lit.cfg
+++ compiler-rt/trunk/test/hwasan/lit.cfg
@@ -11,8 +11,7 @@
 # Setup default compiler flags used with -fsanitize=memory option.
 clang_cflags = [config.target_cflags] + config.debug_info_flags
 clang_cxxflags = config.cxx_mode_flags + clang_cflags
-clang_hwasan_cflags = ["-fsanitize=hwaddress", "-mllvm", "-hwasan-generate-tags-with-calls",
-                       "-mllvm", "-hwasan-allow-ifunc"] + clang_cflags
+clang_hwasan_cflags = ["-fsanitize=hwaddress", "-mllvm", "-hwasan-generate-tags-with-calls"] + clang_cflags
 clang_hwasan_cxxflags = config.cxx_mode_flags + clang_hwasan_cflags
 
 def build_invocation(compile_flags):


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D60355.194228.patch
Type: text/x-patch
Size: 3989 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190409/3b29de3b/attachment.bin>


More information about the llvm-commits mailing list