aboutsummaryrefslogtreecommitdiffstats
path: root/lib/System/Unix
Commit message (Collapse)AuthorAgeFilesLines
* CrashRecovery: Fix raise() override to actually send the right signal, *cough*.Daniel Dunbar2010-10-081-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116072 91177308-0d34-0410-b5e6-96231b3b80d8
* Correctly check if a path is a directory. Fix by Brian Korver.Evan Cheng2010-10-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115991 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an explicit initialization to work around what appears to be a valgrindDaniel Dunbar2010-09-301-1/+3
| | | | | | false positive, at least on Darwin. I haven't filed this, but you can feel free. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115242 91177308-0d34-0410-b5e6-96231b3b80d8
* CrashRecovery/Darwin: Override raise() as well so that crash recovery doesn'tDaniel Dunbar2010-09-221-1/+5
| | | | | | | end up altering the thread on which crashes are done because of its use of Darwin's broken raise() implementation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114558 91177308-0d34-0410-b5e6-96231b3b80d8
* Issue a #error if the host doesn't have an implementation forDan Gohman2010-09-071-0/+2
| | | | | | | GetMainExecutable yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113240 91177308-0d34-0410-b5e6-96231b3b80d8
* Apply a patch from Kees van Reeuwijk to add support for Minix.Dan Gohman2010-09-021-3/+3
| | | | | | | | Minix apparently doesn't like double-slash separators, and there's no apparent need for them here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112844 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an interface for unregistering a file from the FilesToRemove list.Dan Gohman2010-09-011-0/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112705 91177308-0d34-0410-b5e6-96231b3b80d8
* Some fixes for NetBSDAnton Korobeynikov2010-08-311-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112662 91177308-0d34-0410-b5e6-96231b3b80d8
* CrashRecovery/Darwin: On Darwin, raise sends a signal to the main thread insteadDaniel Dunbar2010-08-191-0/+34
| | | | | | | | | of the current thread. This has the unfortunate effect that assert() and abort() will end up bypassing our crash recovery attempts. We work around this for anything in the same linkage unit by just defining our own versions of the assert handler and abort. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111583 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate unnecessary empty string literals.Dan Gohman2010-08-041-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110183 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an erase() method to llvm::ThreadLocal.Owen Anderson2010-07-281-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109686 91177308-0d34-0410-b5e6-96231b3b80d8
* Rather than using an ifdef on the target to zero out fields,Duncan Sands2010-07-141-4/+1
| | | | | | | just use memset to zero the entire struct. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108330 91177308-0d34-0410-b5e6-96231b3b80d8
* improve Path::makeUnique when mkstemp/mktemp are not availableChris Lattner2010-07-121-7/+12
| | | | | | | patch by Lasse Kärkkäinen in PR7404. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108110 91177308-0d34-0410-b5e6-96231b3b80d8
* add some triple for minix, patch by Kees van Reeuwijk from PR7582Chris Lattner2010-07-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107785 91177308-0d34-0410-b5e6-96231b3b80d8
* Factor out the handler work from SignalHandler into a helper function,Dan Gohman2010-05-271-5/+12
| | | | | | | | | | and change llvm::sys::RunInterruptHandlers to call that function directly instead of calling SignalHandler, because the rest of SignalHandler invokes side effects which aren't appropriate, including raising the signal. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104896 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't bother clearing the Magic string when the magic numberDan Gohman2010-05-271-3/+1
| | | | | | | can't be read, since it isn't cleared on other error paths. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104852 91177308-0d34-0410-b5e6-96231b3b80d8
* Add llvm::sys::RunInterruptHandlers(), which runs the registered SIGINT cleanupDaniel Dunbar2010-05-081-1/+3
| | | | | | stuff. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103333 91177308-0d34-0410-b5e6-96231b3b80d8
* This doesn't need SmallVector.h anymore.Dan Gohman2010-04-191-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101790 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix this for std::vectors which don't have .data().Dan Gohman2010-04-191-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101785 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix -Wcast-qual warnings.Dan Gohman2010-04-191-6/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101782 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert 91528 and use a std::vector instead, fixing an abuse of std::string.Dan Gohman2010-04-191-10/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101781 91177308-0d34-0410-b5e6-96231b3b80d8
* avoid temporary std::string in non posix_spawn path.Chris Lattner2010-04-181-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101723 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate temporary string.Benjamin Kramer2010-04-181-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101711 91177308-0d34-0410-b5e6-96231b3b80d8
* Properly inherit the environment on darwin where environ is not available ↵Benjamin Kramer2010-04-181-1/+6
| | | | | | for shared libraries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101710 91177308-0d34-0410-b5e6-96231b3b80d8
* This is horrible. Split the difference, and declare 'environ' on all non-DarwinNick Lewycky2010-04-181-0/+7
| | | | | | | | platforms to unbreak the darwin and linux builds. The BSD folks should feel free to change the #if, if this breaks them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101703 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert r101701, Darwin doesn't have 'environ'. Go figure.Nick Lewycky2010-04-181-3/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101702 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix linux build. posix_spawn doesn't inherit the environment by default.Nick Lewycky2010-04-181-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101701 91177308-0d34-0410-b5e6-96231b3b80d8
* make Program::Execute use posix_spawn on systems that support it,Chris Lattner2010-04-181-9/+64
| | | | | | | | | | | as it is more efficient than fork/exec. Thanks to Eric for adding the autoconf check. It would be nice if a cmake guru could add a cmake check for posix_spawn as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101693 91177308-0d34-0410-b5e6-96231b3b80d8
* improve haiku portability, patch by Paul Davey.Chris Lattner2010-04-101-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100933 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a grammaro.Dan Gohman2010-03-301-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99917 91177308-0d34-0410-b5e6-96231b3b80d8
* remove a constructor implementation that isn't declaredChris Lattner2010-03-261-6/+0
| | | | | | | | | in the header. How can both clang and gcc accept this? PR6703 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99658 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a false-positive memory leak in code using RemoveFileOnSignal(). BecauseJeffrey Yasskin2010-03-171-17/+10
| | | | | | | | | libstdc++'s std::string class points to the interior of an allocation, valgrind reports strings still alive at program termination as possible leaks. I didn't use a ManagedStatic for this because System can't depend on Support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98716 91177308-0d34-0410-b5e6-96231b3b80d8
* don't forget to close a FD on an error condition, found byChris Lattner2010-03-141-1/+2
| | | | | | | cppcheck, PR6617. Patch by Ettl Martin! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98525 91177308-0d34-0410-b5e6-96231b3b80d8
* follow-on to PR6280Chris Lattner2010-02-141-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96172 91177308-0d34-0410-b5e6-96231b3b80d8
* improve support for minix, PR6280, patch byChris Lattner2010-02-122-2/+11
| | | | | | | Kees van Reeuwijk! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95946 91177308-0d34-0410-b5e6-96231b3b80d8
* Add llvm::Program::ChangeStderrToBinary().Douglas Gregor2010-01-281-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94743 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix TimeValue::now() on Unix.Torok Edwin2010-01-221-1/+1
| | | | | | | | | | TimeValue()::now().toEpochTime() is supposed to be the same as time(), but it wasn't, because toEpoch subtracted PosixZeroTime, but now() didn't add PosixZeroTime! Add a unittest to check this works. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94178 91177308-0d34-0410-b5e6-96231b3b80d8
* move a few more symbols to .rodataNuno Lopes2009-12-231-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92011 91177308-0d34-0410-b5e6-96231b3b80d8
* Make Path use StringRef instead of std::string where possible.Jeffrey Yasskin2009-12-171-18/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91620 91177308-0d34-0410-b5e6-96231b3b80d8
* remove use of SmallVector from Path::makeUnique. Path::makeUniqueChris Lattner2009-12-161-14/+10
| | | | | | | is not used by anything performance sensitive, so just use std::string. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91528 91177308-0d34-0410-b5e6-96231b3b80d8
* eliminate an extraneous use of SmallVector in a case whereChris Lattner2009-12-161-6/+4
| | | | | | | a fixed size buffer is perfectly fine. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91527 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove spurious extern.Daniel Dunbar2009-12-091-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90937 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove dead returns.Benjamin Kramer2009-11-291-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90083 91177308-0d34-0410-b5e6-96231b3b80d8
* This patch ensures that Path::GetMainExecutable is able to handle theKovarththanan Rajaratnam2009-11-291-2/+6
| | | | | | | | | | case where realpath() fails. When this occurs we segfault trying to create a std::string from a NULL pointer. Fixes PR5635. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90082 91177308-0d34-0410-b5e6-96231b3b80d8
* API change Path::isSpecialFile to Path::isRegularFile, improve semantics in ↵Edward O'Callaghan2009-11-251-5/+5
| | | | | | regards to comments from 89765 post review. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89848 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove bogus error handling code.Daniel Dunbar2009-11-241-6/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89786 91177308-0d34-0410-b5e6-96231b3b80d8
* Provide Path::isSpecialFile interface for PR5568.Edward O'Callaghan2009-11-241-2/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89765 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert commit 81144, and add a comment. It caused bugpoint timeoutsDuncan Sands2009-11-081-3/+9
| | | | | | | not to work any more on linux. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86481 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix malloc.h is deprecated warning on DragonFly BSD.Edward O'Callaghan2009-11-021-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85782 91177308-0d34-0410-b5e6-96231b3b80d8
* Most stack straces don't need 3 digits worth of levels.Dan Gohman2009-10-301-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85575 91177308-0d34-0410-b5e6-96231b3b80d8