aboutsummaryrefslogtreecommitdiff
path: root/lib/System/Unix
AgeCommit message (Collapse)Author
2010-09-07Issue a #error if the host doesn't have an implementation forDan Gohman
GetMainExecutable yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113240 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Apply a patch from Kees van Reeuwijk to add support for Minix.Dan Gohman
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
2010-09-01Add an interface for unregistering a file from the FilesToRemove list.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112705 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-31Some fixes for NetBSDAnton Korobeynikov
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112662 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-19CrashRecovery/Darwin: On Darwin, raise sends a signal to the main thread insteadDaniel Dunbar
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
2010-08-04Eliminate unnecessary empty string literals.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110183 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-28Add an erase() method to llvm::ThreadLocal.Owen Anderson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109686 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-14Rather than using an ifdef on the target to zero out fields,Duncan Sands
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
2010-07-12improve Path::makeUnique when mkstemp/mktemp are not availableChris Lattner
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
2010-07-07add some triple for minix, patch by Kees van Reeuwijk from PR7582Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107785 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-27Factor out the handler work from SignalHandler into a helper function,Dan Gohman
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
2010-05-27Don't bother clearing the Magic string when the magic numberDan Gohman
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
2010-05-08Add llvm::sys::RunInterruptHandlers(), which runs the registered SIGINT cleanupDaniel Dunbar
stuff. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103333 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-19This doesn't need SmallVector.h anymore.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101790 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-19Fix this for std::vectors which don't have .data().Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101785 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-19Fix -Wcast-qual warnings.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101782 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-19Revert 91528 and use a std::vector instead, fixing an abuse of std::string.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101781 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-18avoid temporary std::string in non posix_spawn path.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101723 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-18Eliminate temporary string.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101711 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-18Properly inherit the environment on darwin where environ is not available ↵Benjamin Kramer
for shared libraries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101710 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-18This is horrible. Split the difference, and declare 'environ' on all non-DarwinNick Lewycky
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
2010-04-18Revert r101701, Darwin doesn't have 'environ'. Go figure.Nick Lewycky
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101702 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-18Fix linux build. posix_spawn doesn't inherit the environment by default.Nick Lewycky
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101701 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-18make Program::Execute use posix_spawn on systems that support it,Chris Lattner
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
2010-04-10improve haiku portability, patch by Paul Davey.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100933 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-30Fix a grammaro.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99917 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-26remove a constructor implementation that isn't declaredChris Lattner
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
2010-03-17Fix a false-positive memory leak in code using RemoveFileOnSignal(). BecauseJeffrey Yasskin
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
2010-03-14don't forget to close a FD on an error condition, found byChris Lattner
cppcheck, PR6617. Patch by Ettl Martin! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98525 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-14follow-on to PR6280Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96172 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-12improve support for minix, PR6280, patch byChris Lattner
Kees van Reeuwijk! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95946 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-28Add llvm::Program::ChangeStderrToBinary().Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94743 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-22Fix TimeValue::now() on Unix.Torok Edwin
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
2009-12-23move a few more symbols to .rodataNuno Lopes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92011 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-17Make Path use StringRef instead of std::string where possible.Jeffrey Yasskin
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91620 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-16remove use of SmallVector from Path::makeUnique. Path::makeUniqueChris Lattner
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
2009-12-16eliminate an extraneous use of SmallVector in a case whereChris Lattner
a fixed size buffer is perfectly fine. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91527 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-09Remove spurious extern.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90937 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-29Remove dead returns.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90083 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-29This patch ensures that Path::GetMainExecutable is able to handle theKovarththanan Rajaratnam
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
2009-11-25API change Path::isSpecialFile to Path::isRegularFile, improve semantics in ↵Edward O'Callaghan
regards to comments from 89765 post review. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89848 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-24Remove bogus error handling code.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89786 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-24Provide Path::isSpecialFile interface for PR5568.Edward O'Callaghan
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89765 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08Revert commit 81144, and add a comment. It caused bugpoint timeoutsDuncan Sands
not to work any more on linux. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86481 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-02Fix malloc.h is deprecated warning on DragonFly BSD.Edward O'Callaghan
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85782 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Most stack straces don't need 3 digits worth of levels.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85575 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-26Move DataTypes.h to include/llvm/System, update all users. This breaks the lastChandler Carruth
direct inclusion edge from System to Support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85086 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-22Use 'waitpid' instead of 'wait'. Basing Program::Wait() on 'wait()' ↵Ted Kremenek
prevents it being correct within a multithreaded context. This address: PR 5277 (Program::Wait is unsafe to call from multiple threads). Note: If waitpid() turns out to be non-portable, we can add more autoconf magic, or look into another solution. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84903 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-12Haiku porting patches, Credit to Paul Davey.Edward O'Callaghan
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83823 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-22Revert "Get rid of GetProcessId in Win32/Program.inc.", this breaksDaniel Dunbar
ExecuteAndWait. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82522 91177308-0d34-0410-b5e6-96231b3b80d8