aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/System
Commit message (Collapse)AuthorAgeFilesLines
...
| * Give RWMutex the SmartRWMutex treatment too.Owen Anderson2009-06-181-14/+58
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73710 91177308-0d34-0410-b5e6-96231b3b80d8
| * Insert a SmartMutex templated class into the class hierarchy, which takes a ↵Owen Anderson2009-06-181-5/+43
| | | | | | | | | | | | | | | | | | template parameter specifying whether this mutex should become a no-op when not running in multithreaded mode. Make sys::Mutex a typedef of SmartMutex<false>, to preserve source compatibility. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73709 91177308-0d34-0410-b5e6-96231b3b80d8
| * Move Threading.[h|cpp] from Support to System.Owen Anderson2009-06-181-0/+45
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73707 91177308-0d34-0410-b5e6-96231b3b80d8
| * Reapply r73647 in a non-broken form.Owen Anderson2009-06-171-1/+1
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73662 91177308-0d34-0410-b5e6-96231b3b80d8
| * Protect the GC table in Function.cppOwen Anderson2009-06-171-0/+14
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73647 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add an RAII ScopedWriter, which allows one to acquire a writer lock for the ↵Owen Anderson2009-06-171-0/+14
| | | | | | | | | | | | | | | | | | duration of a scope. Simplify a lot of uses of writer locks in Constants.cpp by using it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73630 91177308-0d34-0410-b5e6-96231b3b80d8
| * Use atomic increment/decrement for reference counting of Type's.Owen Anderson2009-06-171-2/+2
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73588 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add an atomic increment and decrement implementation, which will be used forOwen Anderson2009-06-171-0/+2
| | | | | | | | | | | | | | thread-safe reference counting. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73587 91177308-0d34-0410-b5e6-96231b3b80d8
| * Fix #include guards.Owen Anderson2009-06-161-2/+2
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73548 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add a portable wrapper for reader-writer locks.Owen Anderson2009-06-161-0/+84
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73545 91177308-0d34-0410-b5e6-96231b3b80d8
| * add a new static method to portably determine whether a patch isChris Lattner2009-06-151-0/+5
| | | | | | | | | | | | | | absolute or not, based on a patch by Gregory Curfman! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73368 91177308-0d34-0410-b5e6-96231b3b80d8
| * Fix comments.Torok Edwin2009-06-041-2/+1
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72858 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add support for outputting ANSI colors to raw_fd_ostream.Torok Edwin2009-06-041-0/+29
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72854 91177308-0d34-0410-b5e6-96231b3b80d8
| * Untabify.Bill Wendling2009-05-301-1/+1
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72603 91177308-0d34-0410-b5e6-96231b3b80d8
| * Use DataTypes.h instead of stdint.h.Owen Anderson2009-05-211-1/+1
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72201 91177308-0d34-0410-b5e6-96231b3b80d8
| * Move atomic operations' definitions out of line. While this seems kind of ↵Owen Anderson2009-05-201-65/+6
| | | | | | | | | | | | | | | | | | silly, all kinds of problems caused by including windows.h and/or config.h in an LLVM header. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72174 91177308-0d34-0410-b5e6-96231b3b80d8
| * Compile fix for MSVC.Owen Anderson2009-05-201-0/+1
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72167 91177308-0d34-0410-b5e6-96231b3b80d8
| * We need to include config.h here so that the #defines are set properly.Owen Anderson2009-05-201-0/+2
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72148 91177308-0d34-0410-b5e6-96231b3b80d8
| * Split the ENABLE_THREADS #define in two. Now ENABLE_THREADS indicates the ↵Owen Anderson2009-05-191-9/+3
| | | | | | | | | | | | | | | | | | ability to run multiple threads at once in the JIT, and requires only mutex support. LLVM_MULTITHREADED indicates (or will indicate) the ability to run LLVM itself across multiple threads, and requires atomics support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72140 91177308-0d34-0410-b5e6-96231b3b80d8
| * Make using an unsupported CAS size a hard error on Windows.Owen Anderson2009-05-191-1/+3
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72088 91177308-0d34-0410-b5e6-96231b3b80d8
| * Fix up the Windows portion of Atomic.h. This is untested, but it is my best ↵Owen Anderson2009-05-191-1/+14
| | | | | | | | | | | | | | | | | | understanding of what should work. I'd be much obliged if someone on MSVC++ could try this out and let me know if it works. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72087 91177308-0d34-0410-b5e6-96231b3b80d8
| * Template CompareAndSwap function.Owen Anderson2009-05-191-9/+12
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72086 91177308-0d34-0410-b5e6-96231b3b80d8
| * Now that we have atomics support properly detected by configure,Owen Anderson2009-05-191-156/+23
| | | | | | | | | | | | | | | | | | use it to implement Atomic.h. This expunges the code previously imported from libatomic_ops. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72077 91177308-0d34-0410-b5e6-96231b3b80d8
| * Significantly improve Atomic.h by pulling in code from libatomic_ops by HP. ↵Owen Anderson2009-05-171-40/+158
| | | | | | | | | | | | This is a little outdated, but reasonably complete. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71973 91177308-0d34-0410-b5e6-96231b3b80d8
| * Remove the volatile marker from the cas_flag typedef, fixing some warnings. Owen Anderson2009-05-161-2/+2
| | | | | | | | | | | | | | It's now the client's resposibility to add it in when needed git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71959 91177308-0d34-0410-b5e6-96231b3b80d8
| * Unbreak mingw buildAnton Korobeynikov2009-05-151-10/+17
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71856 91177308-0d34-0410-b5e6-96231b3b80d8
| * Improve compatibility with older versions of Windows.Owen Anderson2009-05-151-1/+1
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71855 91177308-0d34-0410-b5e6-96231b3b80d8
| * (Hopefully) unbreak Apple-style builds.Owen Anderson2009-05-151-1/+0
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71849 91177308-0d34-0410-b5e6-96231b3b80d8
| * Don't #include OSAtomic.h unless we really need it.Owen Anderson2009-05-151-1/+3
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71837 91177308-0d34-0410-b5e6-96231b3b80d8
| * Now with working on Leopard!Owen Anderson2009-05-151-2/+2
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71819 91177308-0d34-0410-b5e6-96231b3b80d8
| * Dropped this #include by accident.Owen Anderson2009-05-141-1/+1
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71798 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add CompareAndSwap.Owen Anderson2009-05-141-7/+43
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71795 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add an Atomic.h to the System library, for providing a platform independent APIOwen Anderson2009-05-141-0/+45
| | | | | | | | | | | | | | | | | | | | | | to low-level sync operations. The only one present at the moment is MemoryFence(), and only for the platforms for which I could easily discern the proper way to do it. If your favorite platform isn't represented, patches are welcome! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71770 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add terminal width detection to llvm::sys::Process. This is needed toDouglas Gregor2009-05-111-0/+13
| | | | | | | | | | | | | | fix Clang PRs 4148 and 4183. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71448 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add sys::Path::makeAbsolute().Daniel Dunbar2009-04-091-0/+4
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68663 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add llvm::sys::getHostTriple and removeDaniel Dunbar2009-03-311-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | llvm::sys::getOS{Name,Version}. Right now the implementation just derives from LLVM_HOSTTRIPLE (which is wrong, but it doesn't look like we have a define for the target triple). Ideally this routine would actually be able to compute the triple for targets we care about. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68118 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add a new 'AddSignalHandler' function to Signals.h that allowsChris Lattner2009-03-041-6/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | arbitrary functions to be run when a crash happens. Delete RemoveDirectoryOnSignal as it is dead and has never had clients. Change PrintStackTraceOnErrorSignal to be implemented in terms of AddSignalHandler. I updated the Win32 versions of these APIs, but can't test them. If there are any problems, I'd be happy to fix them as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66072 91177308-0d34-0410-b5e6-96231b3b80d8
| * Fix a bunch of Doxygen syntax issues. Escape special characters,Dan Gohman2009-03-031-1/+2
| | | | | | | | | | | | | | and put @file directives on their own comment line. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65920 91177308-0d34-0410-b5e6-96231b3b80d8
| * 80-column violation.Mikhail Glushenkov2009-02-081-6/+6
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64102 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add a Sleep() function.Mikhail Glushenkov2009-02-081-5/+10
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64101 91177308-0d34-0410-b5e6-96231b3b80d8
| * Make Mutex's constructor explicit, and tidy up whitespace.Dan Gohman2009-02-061-3/+3
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63963 91177308-0d34-0410-b5e6-96231b3b80d8
| * rename methods in System/Host to be more consistent.Chris Lattner2009-01-221-7/+7
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62776 91177308-0d34-0410-b5e6-96231b3b80d8
| * Update the stub and callback code to handle lazy compilation. The stubJim Grosbach2008-10-201-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | is re-written by the callback to branch directly to the compiled code in future invocations. Added back in range-based memory permission functions for the updating of the stub on Darwin. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57846 91177308-0d34-0410-b5e6-96231b3b80d8
| * On Darwin ARM, memory needs special handling to do JIT. This patch expandsJim Grosbach2008-10-031-2/+7
| | | | | | | | | | | | | | | | this handling to work properly for modifying stub functions, relocations back to entry points after JIT compilation, etc.. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57013 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add llvm::sys::{osName,osVersion} for retrieving operating system nameDaniel Dunbar2008-10-021-0/+9
| | | | | | | | | | | | | | | | & version as strings. - Win32 code is untested. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56942 91177308-0d34-0410-b5e6-96231b3b80d8
| * Preliminary support for systems which require changing JIT memory regions ↵Evan Cheng2008-09-181-0/+5
| | | | | | | | | | | | privilege from read / write to read / executable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56303 91177308-0d34-0410-b5e6-96231b3b80d8
| * add a helper method to sys::Path for clang, patch byChris Lattner2008-08-111-0/+6
| | | | | | | | | | | | | | Kovarththanan Rajaratnam! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54655 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add a new InvalidateInstructionCache method to sys::Memory.Chris Lattner2008-06-251-26/+29
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52731 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add support for building on solaris, working around namespaceChris Lattner2008-06-241-0/+40
| | | | | | | | | | | | | | polution problems from system headers. Patch by Nathan Keynes! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52682 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add comment.Matthijs Kooijman2008-06-161-0/+3
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52313 91177308-0d34-0410-b5e6-96231b3b80d8