summaryrefslogtreecommitdiffstats
path: root/llvm/lib/System/Unix
Commit message (Collapse)AuthorAgeFilesLines
* add some explicit llvm:: qualifiers to the unix side, fix problems on the ↵Chris Lattner2009-03-081-4/+5
| | | | | | windows side. llvm-svn: 66386
* When a crash signal is delivered do two things: remove all of ourChris Lattner2009-03-071-5/+14
| | | | | | | | | signal handlers to prevent reentrance on unrelated things (a sigabort where the handle bus errors) also, clear the signal mask so that the signal doesn't infinitely reissue. This fixes rdar://6654827 - Crash causes clang to loop llvm-svn: 66330
* move some code to gracefully handle the case when a handler crashes.Chris Lattner2009-03-051-4/+6
| | | | llvm-svn: 66171
* Add a new 'AddSignalHandler' function to Signals.h that allowsChris Lattner2009-03-041-94/+68
| | | | | | | | | | | | | 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. llvm-svn: 66072
* Fix main executable path name resolution on FreeBSD, patch by Chris Lattner2009-03-021-1/+60
| | | | | | Ed Schouten! llvm-svn: 65882
* If an executable is run through a symlink, dladdr will return theChris Lattner2009-02-191-3/+8
| | | | | | | | symlink. We really want the ultimate executable being run, not the symlink. This lets clang find its headers when invoked through a symlink. rdar://6602012 llvm-svn: 65017
* Fix warning on gcc 4.3.Mikhail Glushenkov2009-02-151-1/+4
| | | | | | "system() declared with attribute warn_unused_result." llvm-svn: 64574
* Whitespace fixes.Mikhail Glushenkov2009-02-151-58/+58
| | | | llvm-svn: 64573
* Use const, to support platforms where strrchr returns a const char *.Dan Gohman2009-02-101-2/+2
| | | | | | This fixes PR3535. llvm-svn: 64224
* Add a Sleep() function.Mikhail Glushenkov2009-02-081-0/+4
| | | | llvm-svn: 64101
* Add Emacs hints to Alarm.inc.Mikhail Glushenkov2009-02-082-6/+6
| | | | | | Also removes some trailing whitespace and fixes one 80-column violation. llvm-svn: 64094
* rename methods in System/Host to be more consistent.Chris Lattner2009-01-221-2/+2
| | | | llvm-svn: 62776
* Don't use plain %x to print pointer values. I had changed it from %pDan Gohman2008-12-051-1/+2
| | | | | | | | | since %p isn't formatted consistently, but obviously plain %x is wrong. PRIxPTR with a cast to uintptr_t would work here, but that requires inconvenient build-system changes. %lu works on all current and foreseable future hosts. llvm-svn: 60616
* Demangle and pretty-print symbols in internal backtraces. Patch byDan Gohman2008-12-051-0/+44
| | | | | | Wesley Peck, with a few fixes by me. llvm-svn: 60605
* Update the stub and callback code to handle lazy compilation. The stubJim Grosbach2008-10-201-0/+21
| | | | | | | | | | 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. llvm-svn: 57846
* On Darwin ARM, memory needs special handling to do JIT. This patch expandsJim Grosbach2008-10-031-1/+25
| | | | | | | this handling to work properly for modifying stub functions, relocations back to entry points after JIT compilation, etc.. llvm-svn: 57013
* Add llvm::sys::{osName,osVersion} for retrieving operating system nameDaniel Dunbar2008-10-021-0/+42
| | | | | | | & version as strings. - Win32 code is untested. llvm-svn: 56942
* Preliminary support for systems which require changing JIT memory regions ↵Evan Cheng2008-09-181-0/+29
| | | | | | privilege from read / write to read / executable. llvm-svn: 56303
* AllocateRWXMemory -> AllocateRWX.Evan Cheng2008-09-161-1/+1
| | | | llvm-svn: 56244
* add a helper method to sys::Path for clang, patch byChris Lattner2008-08-111-0/+6
| | | | | | Kovarththanan Rajaratnam! llvm-svn: 54655
* Create temp. file in current path.Devang Patel2008-07-241-6/+3
| | | | llvm-svn: 53973
* While creating temp. file on disk, if the current filename points to a ↵Devang Patel2008-07-221-2/+8
| | | | | | existing directory then create new temp. file inside the directory. llvm-svn: 53929
* Fix GetMainExecutable. Patch by Sam Bishop.Seo Sanghyeon2008-06-271-4/+2
| | | | llvm-svn: 52847
* Add a missing semicolon.Wojciech Matyjewicz2008-06-151-1/+1
| | | | llvm-svn: 52290
* Fix the sys::Path::getSuffix() implementation.Argyrios Kyrtzidis2008-06-151-0/+16
| | | | llvm-svn: 52288
* Fix redirection of stderr in sys::Program::ExecuteAndWait. There was logicMatthijs Kooijman2008-06-121-4/+11
| | | | | | | | | | | | | error that caused it to redirect stderr to stdout too often. This fix is applied identically to the win32 code as well, but that is untested. --Thi line, and those below, will be ignored-- M System/Unix/Program.inc M System/Win32/Program.inc llvm-svn: 52233
* Make I/O redirection handling in sys::Program a bit more consistent. NoMatthijs Kooijman2008-06-121-21/+13
| | | | | | | | | | | | | functional changes. Win32 code is untested, but should work fine. In the unix variant, rename RedirectFD to RedirectIO and let that function handle empty and null paths instead of doing that in the caller 3 times. This is the same as win32 already does it. In the win32 variant, use Path::isEmpty() instead of checking the resulting c_str() manually. This is the same as unix already does it. llvm-svn: 52230
* Unbreak build.Bill Wendling2008-05-291-3/+3
| | | | llvm-svn: 51709
* Remove more iostream header includes. Needed to implement a "FlushStream"Bill Wendling2008-05-291-3/+3
| | | | | | function to flush a specified std::ostream. llvm-svn: 51705
* Make PreVerifyID, IntSigsEnd, and KillSigsEnd const.Dan Gohman2008-05-141-2/+4
| | | | llvm-svn: 51088
* Clean up the use of static and anonymous namespaces. This turned upDan Gohman2008-05-131-1/+1
| | | | | | | several things that were neither in an anonymous namespace nor static but not intended to be global. llvm-svn: 51017
* Make constructors target-specific. This fixes problems where the path wouldNick Lewycky2008-05-111-0/+6
| | | | | | include backslashes on Windows. This should fix llvm-ld problems on win32. llvm-svn: 50960
* Fix more -Wshorten-64-to-32 warnings.Evan Cheng2008-05-054-5/+6
| | | | llvm-svn: 50659
* Restore code to disable crash catcher on older OS X systemsNate Begeman2008-04-121-1/+25
| | | | llvm-svn: 49568
* Make several symbols static.Dan Gohman2008-04-101-12/+12
| | | | llvm-svn: 49496
* Make getDirnameSep a static method (not part of Path's interface).Ted Kremenek2008-04-071-1/+3
| | | | llvm-svn: 49354
* Added method Path::getDirname().Ted Kremenek2008-04-071-2/+4
| | | | llvm-svn: 49352
* Re-implemented Path::createDirectoryOnDisk (for Unix).Ted Kremenek2008-04-031-32/+39
| | | | | | | | | | | | | | | | | | | | | | | | This method allows one to create a directory, and optionally create all parent directories that do not exist. The original implementation would require that *all* directories along a path are writable by the user, including directories that already exist. For example, suppose we wanted to create the directory "/tmp/foo/bar", and the directory "/tmp" already exists, but not "/tmp/foo". Since "/tmp" is writable by all users, the original implementation would work, and create "/tmp/foo", followed by "/tmp/bar". A problem occurred, however if one wanted to created the directory "/Users/myuser/bar" (or equivalently "/home/myuser/bar"), and "/Users/myuser" already existed and is writable by the current user. The directory "/User/myuser" is writable by the user, but "/User" is not. The original implementation of createDirectoryOnDisk would return with failure since "/User" is not writable, even though "/User/mysuser" is writable. The new implementation works by recursively creating parents as needed, and thus doesn't need to check the permissions on every directory in a path. llvm-svn: 49162
* add some #includes.Chris Lattner2008-04-011-2/+8
| | | | llvm-svn: 49036
* MappedFile is dead, remove it.Chris Lattner2008-04-011-97/+0
| | | | llvm-svn: 49035
* Implement Path::MapInFilePages/UnMapFilePages on unix, which Chris Lattner2008-04-012-7/+11
| | | | | | provides fast MappedFile::getFile for large files. llvm-svn: 49034
* Stub out some sys::Path::MapInFilePages/UnMapFilePages methods.Chris Lattner2008-04-011-0/+10
| | | | llvm-svn: 49030
* Make MappedFile::map return a const correct pointer, don't leak address ↵Chris Lattner2008-04-011-1/+2
| | | | | | space on Unix platforms. llvm-svn: 49026
* Remove MappedFile support for mapping files for write and execChris Lattner2008-04-011-64/+6
| | | | | | | and shared. This complicates the design, is not used, and probably doesn't even work. llvm-svn: 49022
* cleanup the MappedFile API and comments. This removes and updatesChris Lattner2008-04-011-66/+67
| | | | | | | | tons of out of date comments (really nothing throws here!) and fixes some other fairly glaring issues: "size" used to return the size of the file *and* change it, depending on how you called it. llvm-svn: 49009
* Actually disable crash reporting on Mac OS X, returning bugpoint to speedyNate Begeman2008-03-311-23/+6
| | | | | | crash miscompilations. llvm-svn: 49000
* Revert r48676. I had plans for using it, but now it's just dead code.Owen Anderson2008-03-241-47/+0
| | | | llvm-svn: 48743
* Add a comment, and fix a bug where AllocateRW recurred to AllocateRWX ↵Owen Anderson2008-03-221-1/+1
| | | | | | instead of itself. llvm-svn: 48677
* Add an AllocateRW to match AllocateRWX.Owen Anderson2008-03-221-0/+47
| | | | llvm-svn: 48676
* Avoid calling array_endof in a static initializer, as it incursDan Gohman2008-03-211-2/+2
| | | | | | dynamic initialization. llvm-svn: 48666
OpenPOWER on IntegriCloud