From 1fedf41c48e6e77d90ae7583827dc19bd3f1badd Mon Sep 17 00:00:00 2001 From: Johannes Doerfert Date: Mon, 4 Feb 2019 20:42:38 +0000 Subject: [PATCH] Generalize pthread callback test case Changes suggested by Eli Friedman git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@353088 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/CodeGen/callback_pthread_create.c | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/test/CodeGen/callback_pthread_create.c b/test/CodeGen/callback_pthread_create.c index eb92a3c473..785440030b 100644 --- a/test/CodeGen/callback_pthread_create.c +++ b/test/CodeGen/callback_pthread_create.c @@ -1,14 +1,22 @@ -// RUN: %clang -O1 %s -S -c -emit-llvm -o - | FileCheck %s -// RUN: %clang -O1 %s -S -c -emit-llvm -o - | opt -ipconstprop -S | FileCheck --check-prefix=IPCP %s - -// This is a linux only test for now due to the include. -// UNSUPPORTED: !linux +// RUN: %clang_cc1 -O1 %s -S -emit-llvm -o - | FileCheck %s +// RUN: %clang_cc1 -O1 %s -S -emit-llvm -o - | opt -ipconstprop -S | FileCheck --check-prefix=IPCP %s // CHECK: declare !callback ![[cid:[0-9]+]] {{.*}}i32 @pthread_create // CHECK: ![[cid]] = !{![[cidb:[0-9]+]]} // CHECK: ![[cidb]] = !{i64 2, i64 3, i1 false} -#include +// Taken from test/Analysis/retain-release.m +//{ +struct _opaque_pthread_t {}; +struct _opaque_pthread_attr_t {}; +typedef struct _opaque_pthread_t *__darwin_pthread_t; +typedef struct _opaque_pthread_attr_t __darwin_pthread_attr_t; +typedef __darwin_pthread_t pthread_t; +typedef __darwin_pthread_attr_t pthread_attr_t; + +int pthread_create(pthread_t *, const pthread_attr_t *, + void *(*)(void *), void *); +//} const int GlobalVar = 0; @@ -26,8 +34,8 @@ static void *callee1(void *payload) { void foo() { pthread_t MyFirstThread; - pthread_create(&MyFirstThread, NULL, callee0, NULL); + pthread_create(&MyFirstThread, 0, callee0, 0); pthread_t MySecondThread; - pthread_create(&MySecondThread, NULL, callee1, (void *)&GlobalVar); + pthread_create(&MySecondThread, 0, callee1, (void *)&GlobalVar); } -- 2.50.1