aboutsummaryrefslogtreecommitdiffstats
path: root/lib/System
Commit message (Collapse)AuthorAgeFilesLines
* Initial support for the CMake build system.Oscar Fuentes2008-09-221-0/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56419 91177308-0d34-0410-b5e6-96231b3b80d8
* Preliminary support for systems which require changing JIT memory regions ↵Evan Cheng2008-09-182-0/+40
| | | | | | privilege from read / write to read / executable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56303 91177308-0d34-0410-b5e6-96231b3b80d8
* AllocateRWXMemory -> AllocateRWX.Evan Cheng2008-09-161-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56244 91177308-0d34-0410-b5e6-96231b3b80d8
* add a helper method to sys::Path for clang, patch byChris Lattner2008-08-112-0/+13
| | | | | | | Kovarththanan Rajaratnam! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54655 91177308-0d34-0410-b5e6-96231b3b80d8
* Create temp. file in current path.Devang Patel2008-07-241-6/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53973 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53929 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle bitcode wrappers.Devang Patel2008-07-221-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53924 91177308-0d34-0410-b5e6-96231b3b80d8
* open plugins with RTLD_GLOBAL, pointed out by Bram Adams.Chris Lattner2008-07-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53385 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a little wrapper header that is put around bc files when emittingChris Lattner2008-07-091-1/+6
| | | | | | | | | | | | | | | | | bc files for modules with a target triple that indicates they are for darwin. The reader unconditionally handles this, and the writer could turn this on for more targets if we care. This change has two benefits for darwin: 1) it allows us to encode the cpu type of the file in an easy to read place that doesn't require decoding the bc file. 2) it works around a bug (IMO) in darwin's AR where it is incapable of handling files that are not a multiple of 8 bytes long. BC files are only guaranteed to be multiples of 4 bytes long. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53275 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix GetMainExecutable. Patch by Sam Bishop.Seo Sanghyeon2008-06-271-4/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52847 91177308-0d34-0410-b5e6-96231b3b80d8
* Make LLVM compile on DragonFly BSD (PR2499).Matthijs Kooijman2008-06-261-1/+1
| | | | | | | Patch by Hasso Tepper! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52781 91177308-0d34-0410-b5e6-96231b3b80d8
* Cleanup for unitialized types. Patch by Jean-Daniel Dupas!Bill Wendling2008-06-261-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52775 91177308-0d34-0410-b5e6-96231b3b80d8
* "An improved Mach-O file type detection for sys::IdentifyFileType()Chris Lattner2008-06-261-18/+32
| | | | | | | | | | | This patch add supports for single architecture mach-o files (the current implementation only support Universal Binary), and solve the signature conflict between java class and Universal Binary magics. Note that this function will always returned dynamic library for Universal Binaries (like the current implementation) because the binary type is not include in the file header." Patch by Jean-Daniel Dupas! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52766 91177308-0d34-0410-b5e6-96231b3b80d8
* fix compilation errors in my previous patchChris Lattner2008-06-251-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52733 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new InvalidateInstructionCache method to sys::Memory.Chris Lattner2008-06-251-6/+31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52731 91177308-0d34-0410-b5e6-96231b3b80d8
* Use static_cast instead of reinterpret_cast for casting void*.Dan Gohman2008-06-211-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52592 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor comment fix.Argiris Kirtzidis2008-06-161-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52312 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a missing semicolon.Wojciech Matyjewicz2008-06-151-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52290 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the sys::Path::getSuffix() implementation.Argiris Kirtzidis2008-06-153-5/+32
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52288 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the environment block that is passed to the CreateProcess function.Argiris Kirtzidis2008-06-151-1/+28
| | | | | | This bug made llvm-ld unable to function with "-native" option, since the process that was used to call 'gcc' was crashing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52284 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix redirection of stderr in sys::Program::ExecuteAndWait. There was logicMatthijs Kooijman2008-06-122-9/+19
| | | | | | | | | | | | | | 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 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52233 91177308-0d34-0410-b5e6-96231b3b80d8
* Make I/O redirection handling in sys::Program a bit more consistent. NoMatthijs Kooijman2008-06-122-24/+18
| | | | | | | | | | | | | | 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52230 91177308-0d34-0410-b5e6-96231b3b80d8
* Provide hooks for libgcc symbols' address resolution inside lli on mingw32.Anton Korobeynikov2008-06-061-0/+30
| | | | | | | Patch by Julien Lerouge! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52037 91177308-0d34-0410-b5e6-96231b3b80d8
* Unbreak build.Bill Wendling2008-05-291-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51709 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove more iostream header includes. Needed to implement a "FlushStream"Bill Wendling2008-05-291-3/+3
| | | | | | | function to flush a specified std::ostream. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51705 91177308-0d34-0410-b5e6-96231b3b80d8
* Follow-up to the reverting of r51218. This puts the checks out-of-line. BecauseBill Wendling2008-05-211-0/+12
| | | | | | | | | they aren't in the header file, systems with a <string> header file that isn't 64-bit clean shouldn't warn if #including Path.h and specifying -Wshorten-64-to-32. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51393 91177308-0d34-0410-b5e6-96231b3b80d8
* Make PreVerifyID, IntSigsEnd, and KillSigsEnd const.Dan Gohman2008-05-141-2/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51088 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51017 91177308-0d34-0410-b5e6-96231b3b80d8
* Make constructors target-specific. This fixes problems where the path wouldNick Lewycky2008-05-112-1/+17
| | | | | | | include backslashes on Windows. This should fix llvm-ld problems on win32. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50960 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix renamePathOnDisk on Win32, patch from David Leon. This fixes problems withNick Lewycky2008-05-061-1/+1
| | | | | | | llvm-ar being unable to rename files. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50702 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove uses of llvm/System/IncludeFile.h that are no longer needed.Dan Gohman2008-05-067-14/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50695 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix more -Wshorten-64-to-32 warnings.Evan Cheng2008-05-055-8/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50659 91177308-0d34-0410-b5e6-96231b3b80d8
* Restore code to disable crash catcher on older OS X systemsNate Begeman2008-04-121-1/+25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49568 91177308-0d34-0410-b5e6-96231b3b80d8
* Make several symbols static.Dan Gohman2008-04-101-12/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49496 91177308-0d34-0410-b5e6-96231b3b80d8
* Make getDirnameSep a static method (not part of Path's interface).Ted Kremenek2008-04-073-3/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49354 91177308-0d34-0410-b5e6-96231b3b80d8
* Added method Path::getDirname().Ted Kremenek2008-04-073-2/+45
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49352 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49162 91177308-0d34-0410-b5e6-96231b3b80d8
* add some #includes.Chris Lattner2008-04-011-2/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49036 91177308-0d34-0410-b5e6-96231b3b80d8
* MappedFile is dead, remove it.Chris Lattner2008-04-013-235/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49035 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement Path::MapInFilePages/UnMapFilePages on unix, which Chris Lattner2008-04-012-7/+11
| | | | | | | provides fast MappedFile::getFile for large files. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49034 91177308-0d34-0410-b5e6-96231b3b80d8
* Stub out some sys::Path::MapInFilePages/UnMapFilePages methods.Chris Lattner2008-04-012-0/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49030 91177308-0d34-0410-b5e6-96231b3b80d8
* Make MappedFile::map return a const correct pointer, don't leak address ↵Chris Lattner2008-04-012-2/+3
| | | | | | space on Unix platforms. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49026 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove MappedFile support for mapping files for write and execChris Lattner2008-04-012-106/+12
| | | | | | | | and shared. This complicates the design, is not used, and probably doesn't even work. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49022 91177308-0d34-0410-b5e6-96231b3b80d8
* cleanup the MappedFile API and comments. This removes and updatesChris Lattner2008-04-012-118/+119
| | | | | | | | | | 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49009 91177308-0d34-0410-b5e6-96231b3b80d8
* remove DEFINING_FILE_FOR for MappedFile.hChris Lattner2008-04-011-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49008 91177308-0d34-0410-b5e6-96231b3b80d8
* Actually disable crash reporting on Mac OS X, returning bugpoint to speedyNate Begeman2008-03-311-23/+6
| | | | | | | crash miscompilations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49000 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert r48676. I had plans for using it, but now it's just dead code.Owen Anderson2008-03-242-70/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48743 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a comment, and fix a bug where AllocateRW recurred to AllocateRWX ↵Owen Anderson2008-03-221-1/+1
| | | | | | instead of itself. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48677 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an AllocateRW to match AllocateRWX.Owen Anderson2008-03-222-0/+70
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48676 91177308-0d34-0410-b5e6-96231b3b80d8
* Avoid calling array_endof in a static initializer, as it incursDan Gohman2008-03-211-2/+2
| | | | | | | dynamic initialization. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48666 91177308-0d34-0410-b5e6-96231b3b80d8