From: Brian Gaeke Date: Mon, 23 Feb 2004 21:30:29 +0000 (+0000) Subject: ThreadSupport.h is now output from configure. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=a6eb7c19a14f2bdbde22c3e2a14dc190b3b97ded;p=oota-llvm.git ThreadSupport.h is now output from configure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11770 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/Support/ThreadSupport.h b/include/Support/ThreadSupport.h deleted file mode 100644 index 9689307f87a..00000000000 --- a/include/Support/ThreadSupport.h +++ /dev/null @@ -1,42 +0,0 @@ -//===-- Support/ThreadSupport.h - Generic threading support -----*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file was developed by the LLVM research group and is distributed under -// the University of Illinois Open Source License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// This file defines platform-agnostic interfaces that can be used to write -// multi-threaded programs. Autoconf is used to chose the correct -// implementation of these interfaces, or default to a non-thread-capable system -// if no matching system support is available. -// -//===----------------------------------------------------------------------===// - -#ifndef SUPPORT_THREADSUPPORT_H -#define SUPPORT_THREADSUPPORT_H - -// FIXME: Eventually don't #include config.h here -#include "Config/config.h" -#if defined(HAVE_PTHREAD_MUTEX_LOCK) && HAVE_PTHREAD_MUTEX_LOCK -#include "Support/ThreadSupport-PThreads.h" -#else -#include "Support/ThreadSupport-NoSupport.h" -#endif // If no system support is available - -namespace llvm { - /// MutexLocker - Instances of this class acquire a given Lock when - /// constructed and hold that lock until destruction. - /// - class MutexLocker { - Mutex &M; - MutexLocker(const MutexLocker &); // DO NOT IMPLEMENT - void operator=(const MutexLocker &); // DO NOT IMPLEMENT - public: - MutexLocker(Mutex &m) : M(m) { M.acquire(); } - ~MutexLocker() { M.release(); } - }; -} - -#endif // SUPPORT_THREADSUPPORT_H diff --git a/include/Support/ThreadSupport.h.in b/include/Support/ThreadSupport.h.in new file mode 100644 index 00000000000..470010219fc --- /dev/null +++ b/include/Support/ThreadSupport.h.in @@ -0,0 +1,40 @@ +//===-- Support/ThreadSupport.h - Generic threading support -----*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file was developed by the LLVM research group and is distributed under +// the University of Illinois Open Source License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file defines platform-agnostic interfaces that can be used to write +// multi-threaded programs. Autoconf is used to chose the correct +// implementation of these interfaces, or default to a non-thread-capable system +// if no matching system support is available. +// +//===----------------------------------------------------------------------===// + +#ifndef SUPPORT_THREADSUPPORT_H +#define SUPPORT_THREADSUPPORT_H + +#if @HAVE_PTHREAD_MUTEX_LOCK@ +#include "Support/ThreadSupport-PThreads.h" +#else +#include "Support/ThreadSupport-NoSupport.h" +#endif // If no system support is available + +namespace llvm { + /// MutexLocker - Instances of this class acquire a given Lock when + /// constructed and hold that lock until destruction. + /// + class MutexLocker { + Mutex &M; + MutexLocker(const MutexLocker &); // DO NOT IMPLEMENT + void operator=(const MutexLocker &); // DO NOT IMPLEMENT + public: + MutexLocker(Mutex &m) : M(m) { M.acquire(); } + ~MutexLocker() { M.release(); } + }; +} + +#endif // SUPPORT_THREADSUPPORT_H diff --git a/include/llvm/Support/MutexGuard.h b/include/llvm/Support/MutexGuard.h new file mode 100644 index 00000000000..470010219fc --- /dev/null +++ b/include/llvm/Support/MutexGuard.h @@ -0,0 +1,40 @@ +//===-- Support/ThreadSupport.h - Generic threading support -----*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file was developed by the LLVM research group and is distributed under +// the University of Illinois Open Source License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file defines platform-agnostic interfaces that can be used to write +// multi-threaded programs. Autoconf is used to chose the correct +// implementation of these interfaces, or default to a non-thread-capable system +// if no matching system support is available. +// +//===----------------------------------------------------------------------===// + +#ifndef SUPPORT_THREADSUPPORT_H +#define SUPPORT_THREADSUPPORT_H + +#if @HAVE_PTHREAD_MUTEX_LOCK@ +#include "Support/ThreadSupport-PThreads.h" +#else +#include "Support/ThreadSupport-NoSupport.h" +#endif // If no system support is available + +namespace llvm { + /// MutexLocker - Instances of this class acquire a given Lock when + /// constructed and hold that lock until destruction. + /// + class MutexLocker { + Mutex &M; + MutexLocker(const MutexLocker &); // DO NOT IMPLEMENT + void operator=(const MutexLocker &); // DO NOT IMPLEMENT + public: + MutexLocker(Mutex &m) : M(m) { M.acquire(); } + ~MutexLocker() { M.release(); } + }; +} + +#endif // SUPPORT_THREADSUPPORT_H diff --git a/include/llvm/Support/ThreadSupport.h.in b/include/llvm/Support/ThreadSupport.h.in new file mode 100644 index 00000000000..470010219fc --- /dev/null +++ b/include/llvm/Support/ThreadSupport.h.in @@ -0,0 +1,40 @@ +//===-- Support/ThreadSupport.h - Generic threading support -----*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file was developed by the LLVM research group and is distributed under +// the University of Illinois Open Source License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file defines platform-agnostic interfaces that can be used to write +// multi-threaded programs. Autoconf is used to chose the correct +// implementation of these interfaces, or default to a non-thread-capable system +// if no matching system support is available. +// +//===----------------------------------------------------------------------===// + +#ifndef SUPPORT_THREADSUPPORT_H +#define SUPPORT_THREADSUPPORT_H + +#if @HAVE_PTHREAD_MUTEX_LOCK@ +#include "Support/ThreadSupport-PThreads.h" +#else +#include "Support/ThreadSupport-NoSupport.h" +#endif // If no system support is available + +namespace llvm { + /// MutexLocker - Instances of this class acquire a given Lock when + /// constructed and hold that lock until destruction. + /// + class MutexLocker { + Mutex &M; + MutexLocker(const MutexLocker &); // DO NOT IMPLEMENT + void operator=(const MutexLocker &); // DO NOT IMPLEMENT + public: + MutexLocker(Mutex &m) : M(m) { M.acquire(); } + ~MutexLocker() { M.release(); } + }; +} + +#endif // SUPPORT_THREADSUPPORT_H