aboutsummaryrefslogtreecommitdiff
path: root/lib/Support/SystemUtils.cpp
AgeCommit message (Collapse)Author
2010-11-29Merge System into Support.Michael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120298 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-03Rename FindExecutable to PrependMainExecutablePath.Mikhail Glushenkov
Makes it more clear that it is just a path manipulation function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118174 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-03Print an error as one big string instead of breaking it up.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118130 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-02Revert r118057, this is better fixed in appendSuffix itself.Mikhail Glushenkov
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118088 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-02Don't append a dot on platforms which don't use exe suffixes.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118057 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-02FindExecutable: remove the executability check.Mikhail Glushenkov
This makes the behaviour of FindExecutable more consistent across platforms, but I'm not very happy with the name... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118049 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-28Remove an unnecessary check and an unnecessary temporary.Mikhail Glushenkov
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117583 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Use the FindProgramByName fallback only with known absolute paths.Dan Gohman
I wasn't able to convince myself that all GetMainExecutable implementations always return absolute paths; this prevents unexpected behavior in case they ever don't. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112888 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02llvm::FindExecutable(): Retrieve the name with suffix.exe, if available.NAKAMURA Takumi
bugpoint uses it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112803 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-11Fix llvm-extract's "writing bitcode to a terminal" warning, which wasn'tDan Gohman
working. To support this, add an is_displayed() function to raw_ostream, and generalize Process::StandardOutIsDisplayed and friends in order to support it. Also, call RemoveFileOnSignal before creating a file instead of after, so that the file isn't left behind if the program is interrupted between when the file is created and RemoveFileOnSignal is called. While here, add a -S to llvm-extract and port it to IRReader so that it supports assembly input. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81568 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-23Prune #includes from llvm/Linker.h and llvm/System/Path.h,Chris Lattner
forcing them down into various .cpp files. This change also: 1. Renames TimeValue::toString() and Path::toString() to ::str() for similarity with the STL. 2. Removes all stream insertion support for sys::Path, forcing clients to call .str(). 3. Removes a use of Config/alloca.h from bugpoint, using smallvector instead. 4. Weans llvm-db off <iostream> sys::Path really needs to be gutted, but I don't have the desire to do it at this point. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79869 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-23eliminate the ostream version of CheckBitcodeOutputToConsole,Chris Lattner
change the raw_ostream one to take the raw_ostream byref instead of byptr. Prune #includes, eliminate a use of Streams.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79863 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-05Fix FindExecutable to use sys::Path::GetMainExecutable instead ofDan Gohman
just argv[0]. And remove the code for searching the current working directory and for searching PATH; the point of FindExecutable is not to find whatever version of the executable can be found by searching around, but to find an executable that accompanies the current executable. Update the tools to use sys::Program::FindProgramByName when they want PATH searching. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78240 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-15Add a raw_ostream version of CheckBitcodeOutputToConsole.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75796 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12Improve sys::Path::makeAbsolute on Win32.Daniel Dunbar
- Patch by Viktor Kutuzov! - Minor tweak by me to add llvm_unreachable calls on FIXMEd error paths. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75424 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-01Tweak FindExecutable so that relative executable paths work as well.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74645 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-01Fix FindExecutable to work if given an absolute executable path name.Daniel Dunbar
- Patch by Viktor Kutuzov, with tweaks by me. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74608 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-29Remove attribution from file headers, per discussion on llvmdev.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45418 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-05Here is the bulk of the sanitizing.Gabor Greif
Almost all occurrences of "bytecode" in the sources have been eliminated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37913 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Don't use <sstream> in Streams.h but <iosfwd> instead.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32340 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Removed more <iostream> includesBill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32321 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, areBill Wendling
now cerr, cout, and NullStream resp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32298 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-26Removed #include <iostream> and replace with llvm_* streams.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31927 91177308-0d34-0410-b5e6-96231b3b80d8
2005-07-07For PR495:Reid Spencer
Get rid of the difference between file paths and directory paths. The Path class now simply stores a path that can refer to either a file or a directory. This required various changes in the implementation and interface of the class with the corresponding impact to its users. Doxygen comments were also updated to reflect these changes. Interface changes are: appendDirectory -> appendComponent appendFile -> appendComponent elideDirectory -> eraseComponent elideFile -> eraseComponent elideSuffix -> eraseSuffix renameFile -> rename setDirectory -> set setFile -> set Changes pass Dejagnu and llvm-test/SingleSource tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22349 91177308-0d34-0410-b5e6-96231b3b80d8
2005-07-07For PR495:Reid Spencer
Change interface to Path class: readable -> canRead writable -> canWrite executable -> canExecute More (incremental) changes coming to close 495. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22345 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-10Why output multiple strings, let the compiler concatenate them for us for freeMisha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21845 91177308-0d34-0410-b5e6-96231b3b80d8
2005-04-22* Order #includes as per style guideMisha Brukman
* Combine multiple ``std::cerr <<'' statements into one for simplicity git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21458 91177308-0d34-0410-b5e6-96231b3b80d8
2005-04-21Remove trailing whitespaceMisha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21422 91177308-0d34-0410-b5e6-96231b3b80d8
2005-01-02Make printing a warning message optional in CheckBytecodeOutputToConsole.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19240 91177308-0d34-0410-b5e6-96231b3b80d8
2005-01-01Implement a function to print a warning if bytecode output is to be sent toReid Spencer
a terminal/console. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19237 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-19For PR351:Reid Spencer
* Remove unneeded header files. * Move RedirectFD static function to lib/System/Unix/Program.cpp * Delete RunProgramWithTimeout, now implemented by sys::Program::ExecuteAndWait. RunProgramWithTimeout is now a convenience func. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19040 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-14For PR351:Reid Spencer
* Remove the ExecWait function. This is now in sys::Program::ExecuteAndWait git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18927 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-13For PR351:Reid Spencer
* Remove isExecutable as its now implemented by sys::Path::executable * Make FindExecutable a thin veneer over sys::Program::FindProgramByName. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18918 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-13For PR351:Reid Spencer
Remove AllocateRWXMemory as it is not used any more in LLVM. The function has been replaced with sys::Memory::AllocateRWX several months ago. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18912 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-01Changes For Bug 352Reid Spencer
Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Remove linux/solaris specific stuff.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15195 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-24Get rid of the printout from the low-level system interfaceChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15161 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-24Add support for killing the program if it executes for too long.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15158 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-18* Fix file header and nameMisha Brukman
* Order #includes alphabetically git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14234 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-18Use the machine-independent method of querying the page size.Misha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14233 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-02Fix spelling, trim empty space, tighten up function header comment.Misha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13940 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-28Add support for getting executable memory on Windows. This is actuallyChris Lattner
much easier than on unix. :) The only evil thing is that windows.h defines a macro named FindExecutable, which collides with one of our names. The JIT now runs on windows, but it cannot resolve external functions (like printf) yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13871 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-28Add a new function for the JIT. libsupport is now the only library thatChris Lattner
includes mman.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13870 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-27Changes to make libSupport build on systems that don't have the wait syscall.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13806 91177308-0d34-0410-b5e6-96231b3b80d8
2004-04-16Bugpoint was not correctly capturing stderr! This caused it to "find" bugsChris Lattner
that didn't exist, missing the ones that do :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12978 91177308-0d34-0410-b5e6-96231b3b80d8
2004-04-02Add autoconf support for isStandardOutAConsole ().Brian Gaeke
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12638 91177308-0d34-0410-b5e6-96231b3b80d8
2004-04-02Add new function, autoconf support required thoChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12600 91177308-0d34-0410-b5e6-96231b3b80d8
2004-01-10Remove config wrapper around <cerrno>Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10747 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-14Finegrainify namespacificationChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10464 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-11Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8