pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

compiler-rt-netbsd: Update to SVN r. 317742



Module Name:	pkgsrc-wip
Committed By:	Kamil Rytarowski <n54%gmx.com@localhost>
Pushed By:	kamil
Date:		Thu Nov 9 01:34:52 2017 +0100
Changeset:	e36b5c091d6944343433c0f329dbe783460c4f70

Modified Files:
	compiler-rt-netbsd/Makefile
	compiler-rt-netbsd/distinfo
Removed Files:
	compiler-rt-netbsd/patches/patch-lib_sanitizer__common_sanitizer__allocator.cc
	compiler-rt-netbsd/patches/patch-lib_sanitizer__common_sanitizer__allocator__internal.h
	compiler-rt-netbsd/patches/patch-lib_tsan_rtl_tsan__interceptors.cc
	compiler-rt-netbsd/patches/patch-test_tsan_atexit3.cc

Log Message:
compiler-rt-netbsd: Update to SVN r. 317742

Eliminate local patches, merged upstream in a different version.

"Correct atexit(3) support in TSan/NetBSD"
https://reviews.llvm.org/D39619

Sponsored by <The NetBSD Foundation>

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=e36b5c091d6944343433c0f329dbe783460c4f70

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 compiler-rt-netbsd/Makefile                        |  2 +-
 compiler-rt-netbsd/distinfo                        |  4 --
 ...h-lib_sanitizer__common_sanitizer__allocator.cc | 30 -----------
 ...itizer__common_sanitizer__allocator__internal.h | 13 -----
 .../patch-lib_tsan_rtl_tsan__interceptors.cc       | 61 ----------------------
 .../patches/patch-test_tsan_atexit3.cc             | 46 ----------------
 6 files changed, 1 insertion(+), 155 deletions(-)

diffs:
diff --git a/compiler-rt-netbsd/Makefile b/compiler-rt-netbsd/Makefile
index 9f4e6c1547..49c8a282f7 100644
--- a/compiler-rt-netbsd/Makefile
+++ b/compiler-rt-netbsd/Makefile
@@ -5,7 +5,7 @@ CATEGORIES=	lang devel
 
 SVN_REPOSITORIES=	compiler-rt
 SVN_REPO.compiler-rt=	http://llvm.org/svn/llvm-project/compiler-rt/trunk
-SVN_REVISION.compiler-rt=	317430
+SVN_REVISION.compiler-rt=	317742
 
 MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
 HOMEPAGE=	http://compiler-rt.llvm.org/
diff --git a/compiler-rt-netbsd/distinfo b/compiler-rt-netbsd/distinfo
index 038b1b52be..e6091f5dca 100644
--- a/compiler-rt-netbsd/distinfo
+++ b/compiler-rt-netbsd/distinfo
@@ -3,9 +3,5 @@ $NetBSD: distinfo,v 1.35 2015/09/11 01:21:57 tnn Exp $
 SHA1 (patch-cmake_config-ix.cmake) = a1814db3e044ce3954655fea1e157a96bfa8df2f
 SHA1 (patch-lib_fuzzer_tests_CMakeLists.txt) = 38ca750154dfc9843a56748078235824b772a147
 SHA1 (patch-lib_msan_msan.h) = ce3f544490aebc1db73be9e3388f0a9d31d5b369
-SHA1 (patch-lib_sanitizer__common_sanitizer__allocator.cc) = 464615041890651425a1e298e4321683dde3b750
-SHA1 (patch-lib_sanitizer__common_sanitizer__allocator__internal.h) = 7f77138aa4249dcc9578a556bec0ba2af7a51133
-SHA1 (patch-lib_tsan_rtl_tsan__interceptors.cc) = 243e026dd9b159468911141013833e61eb8e42d1
 SHA1 (patch-lib_tsan_rtl_tsan__rtl.cc) = bc3d6aa81515ac4a4fc5b504e93b3ac8de355371
 SHA1 (patch-lib_tsan_rtl_tsan__rtl__amd64.S) = 6df0f2af44ebfec76d3b237c984eff63ee93b30f
-SHA1 (patch-test_tsan_atexit3.cc) = 5abc7ce8bfde2f6c41ad6dc70c6030a183b71f1b
diff --git a/compiler-rt-netbsd/patches/patch-lib_sanitizer__common_sanitizer__allocator.cc b/compiler-rt-netbsd/patches/patch-lib_sanitizer__common_sanitizer__allocator.cc
deleted file mode 100644
index 0e58567535..0000000000
--- a/compiler-rt-netbsd/patches/patch-lib_sanitizer__common_sanitizer__allocator.cc
+++ /dev/null
@@ -1,30 +0,0 @@
-$NetBSD$
-
---- lib/sanitizer_common/sanitizer_allocator.cc.orig	2017-10-17 18:35:46.000000000 +0000
-+++ lib/sanitizer_common/sanitizer_allocator.cc
-@@ -180,6 +180,25 @@ void InternalFree(void *addr, InternalAl
- // LowLevelAllocator
- static LowLevelAllocateCallback low_level_alloc_callback;
- 
-+int InternalReallocArr(void *addr, uptr count, uptr size,
-+                       InternalAllocatorCache *cache) {
-+  void *oaddr;
-+  void *naddr = 0;
-+
-+  internal_memcpy(&oaddr, addr, sizeof(addr));
-+  if (!count || !size) {
-+    InternalFree(oaddr, cache);
-+    internal_memcpy(addr, &naddr, sizeof(addr));
-+    return 0;
-+  }
-+
-+  naddr = InternalRealloc(oaddr, count * size, cache);
-+  if (!naddr) return -1;
-+
-+  internal_memcpy(addr, &naddr, sizeof(addr));
-+  return 0;
-+}
-+
- void *LowLevelAllocator::Allocate(uptr size) {
-   // Align allocation size.
-   size = RoundUpTo(size, 8);
diff --git a/compiler-rt-netbsd/patches/patch-lib_sanitizer__common_sanitizer__allocator__internal.h b/compiler-rt-netbsd/patches/patch-lib_sanitizer__common_sanitizer__allocator__internal.h
deleted file mode 100644
index 184c13655c..0000000000
--- a/compiler-rt-netbsd/patches/patch-lib_sanitizer__common_sanitizer__allocator__internal.h
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD$
-
---- lib/sanitizer_common/sanitizer_allocator_internal.h.orig	2017-10-17 18:35:46.000000000 +0000
-+++ lib/sanitizer_common/sanitizer_allocator_internal.h
-@@ -57,6 +57,8 @@ void *InternalRealloc(void *p, uptr size
- void *InternalCalloc(uptr countr, uptr size,
-                      InternalAllocatorCache *cache = nullptr);
- void InternalFree(void *p, InternalAllocatorCache *cache = nullptr);
-+int InternalReallocArr(void *p, uptr count, uptr size,
-+                       InternalAllocatorCache *cache = nullptr);
- InternalAllocator *internal_allocator();
- 
- enum InternalAllocEnum {
diff --git a/compiler-rt-netbsd/patches/patch-lib_tsan_rtl_tsan__interceptors.cc b/compiler-rt-netbsd/patches/patch-lib_tsan_rtl_tsan__interceptors.cc
deleted file mode 100644
index ba1d4f8481..0000000000
--- a/compiler-rt-netbsd/patches/patch-lib_tsan_rtl_tsan__interceptors.cc
+++ /dev/null
@@ -1,61 +0,0 @@
-$NetBSD$
-
---- lib/tsan/rtl/tsan_interceptors.cc.orig	2017-11-06 03:58:05.000000000 +0000
-+++ lib/tsan/rtl/tsan_interceptors.cc
-@@ -391,10 +391,26 @@ struct AtExitCtx {
-   void *arg;
- };
- 
--static void at_exit_wrapper(void *arg) {
--  ThreadState *thr = cur_thread();
--  uptr pc = 0;
--  Acquire(thr, pc, (uptr)arg);
-+static struct AtExitCtx **AtExitStack;
-+static int AtExitStackSize;
-+
-+static void at_exit_wrapper() {
-+  // Pop AtExitCtx from the top of the stack of callback functions
-+  AtExitCtx *ctx = AtExitStack[AtExitStackSize - 1];
-+  --AtExitStackSize;
-+  if (InternalReallocArr(&AtExitStack, AtExitStackSize,
-+                         sizeof(struct AtExitCtx *))) {
-+    Printf("InternalReallocArr error");
-+    Die();
-+  }
-+
-+  Acquire(cur_thread(), (uptr)0, (uptr)ctx);
-+  ((void(*)())ctx->f)();
-+  InternalFree(ctx);
-+}
-+
-+static void cxa_at_exit_wrapper(void *arg) {
-+  Acquire(cur_thread(), 0, (uptr)arg);
-   AtExitCtx *ctx = (AtExitCtx*)arg;
-   ((void(*)(void *arg))ctx->f)(ctx->arg);
-   InternalFree(ctx);
-@@ -430,7 +446,24 @@ static int setup_at_exit_wrapper(ThreadS
-   // Memory allocation in __cxa_atexit will race with free during exit,
-   // because we do not see synchronization around atexit callback list.
-   ThreadIgnoreBegin(thr, pc);
--  int res = REAL(__cxa_atexit)(at_exit_wrapper, ctx, dso);
-+  int res;
-+  if (!dso) {
-+    // NetBSD does not preserve the 2nd argument if dso is equal to 0
-+    // Store ctx in a local stack-like structure
-+    res = REAL(__cxa_atexit)((void (*)(void *a))at_exit_wrapper, 0, 0);
-+    // Push AtExitCtx on the top of the stack of callback functions
-+    if (!res) {
-+      ++AtExitStackSize;
-+      if (InternalReallocArr(&AtExitStack, AtExitStackSize,
-+                             sizeof(struct AtExitCtx *))) {
-+        Printf("InternalReallocArr error");
-+        Die();
-+      }
-+      AtExitStack[AtExitStackSize - 1] = ctx;
-+    }
-+  } else {
-+    res = REAL(__cxa_atexit)(cxa_at_exit_wrapper, ctx, dso);
-+  }
-   ThreadIgnoreEnd(thr, pc);
-   return res;
- }
diff --git a/compiler-rt-netbsd/patches/patch-test_tsan_atexit3.cc b/compiler-rt-netbsd/patches/patch-test_tsan_atexit3.cc
deleted file mode 100644
index e5b520a679..0000000000
--- a/compiler-rt-netbsd/patches/patch-test_tsan_atexit3.cc
+++ /dev/null
@@ -1,46 +0,0 @@
-$NetBSD$
-
---- test/tsan/atexit3.cc.orig	2017-11-06 18:32:33.221125749 +0000
-+++ test/tsan/atexit3.cc
-@@ -0,0 +1,41 @@
-+// RUN: %clang_tsan -O1 %s -o %t && %run %t 2>&1 | FileCheck %s
-+
-+#include <stdio.h>
-+#include <stdlib.h>
-+
-+static void atexit5() {
-+  fprintf(stderr, "5");
-+}
-+
-+static void atexit4() {
-+  fprintf(stderr, "4");
-+}
-+
-+static void atexit3() {
-+  fprintf(stderr, "3");
-+}
-+
-+static void atexit2() {
-+  fprintf(stderr, "2");
-+}
-+
-+static void atexit1() {
-+  fprintf(stderr, "1");
-+}
-+
-+static void atexit0() {
-+  fprintf(stderr, "\n");
-+}
-+
-+int main() {
-+  atexit(atexit0);
-+  atexit(atexit1);
-+  atexit(atexit2);
-+  atexit(atexit3);
-+  atexit(atexit4);
-+  atexit(atexit5);
-+}
-+
-+// CHECK-NOT: FATAL: ThreadSanitizer
-+// CHECK-NOT: WARNING: ThreadSanitizer
-+// CHECK: 54321


Home | Main Index | Thread Index | Old Index