Chandler Carruth
4aab4ab340
Remove SetWorkingDirectory from the Process interface. Nothing in LLVM
...
or Clang is using this, and it would be hard to use it correctly given
the thread hostility of the function. Also, it never checked the return
which is rather dangerous with chdir. If someone was in fact using this,
please let me know, as well as what the usecase actually is so that
I can add it back and make it more correct and secure to use. (That
said, it's never going to be "safe" per-se, but we could at least
document the risks...)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148211 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-15 08:41:35 +00:00
Argyrios Kyrtzidis
08713b37c3
Disable the crash reporter when running lit tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147965 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-11 20:53:25 +00:00
Sebastian Pop
6e9b5eb51b
revert r147542 after comments from Joerg Sonnenberger
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147608 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-05 18:28:46 +00:00
Sebastian Pop
8a86887ba3
use getHostTriple instead of getDefaultTargetTriple in getClosestTargetForJIT
...
Get back getHostTriple.
For JIT compilation, use the host triple instead of the default
target: this fixes some JIT testcases that used to fail when the
compiler has been configured as a cross compiler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147542 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-04 19:47:22 +00:00
Michael J. Spencer
b92cb30cf5
Support/Program: Make Change<stream>ToBinary return error_code.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146522 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-13 23:16:49 +00:00
Chad Rosier
7ae606a2a8
Revert r146363 to allow buildbots to make forward progress.
...
Original commit message:
Support/FileSystem: Implement canonicalize.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146378 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-12 17:58:31 +00:00
Michael J. Spencer
d45fbe6227
Support/FileSystem: Implement bool equivalent(file_status A, file_status B);
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146364 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-12 06:04:28 +00:00
Michael J. Spencer
c3b00e8040
Support/FileSystem: Implement canonicalize.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146363 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-12 06:04:01 +00:00
Michael J. Spencer
1dd2ee7bf4
Support/Windows: Cleanup scoped handles.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146362 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-12 06:03:33 +00:00
Michael J. Spencer
a81ac8f2b5
Support/FileSystem: Implement recursive_directory_iterator and make
...
directory_iterator preserve InputIterator semantics on copy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146200 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-08 22:50:09 +00:00
NAKAMURA Takumi
5d2f8c3155
[Win32] Catch exceptions (eg. segfault) on waiting for invoked clang from the driver.
...
clang/lib/Driver/Driver.cpp: Don't pass through negative exit status, or parent would be confused.
llvm::sys::Program::Wait(): Suppose 0x8000XXXX and 0xC000XXXX as abnormal exit code and pass it as negative value.
Win32 Exception Handler: Exit with ExceptionCode on an unhandle exception.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145389 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-29 07:47:04 +00:00
Peter Collingbourne
5ced70d8f8
Return only the least significant 8 bits of the exit status from
...
Process::Wait on Windows (mimicing POSIX behaviour).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143876 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-06 16:45:46 +00:00
Sebastian Pop
0173864d8a
rename getHostTriple into getDefaultTargetTriple
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143502 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-01 21:32:20 +00:00
Sebastian Pop
de2e0b5e6d
rename LLVM_HOSTTRIPLE into LLVM_DEFAULT_TARGET_TRIPLE
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143501 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-01 21:31:44 +00:00
Eli Friedman
c94792507d
Remove a couple unused methods. PR11201.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143452 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-01 05:11:01 +00:00
NAKAMURA Takumi
5d0700786d
Windows/Path.inc: [PR8460] Get rid of ScopedNullTerminator. Thanks to Zvi Rackover!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142785 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-24 03:27:19 +00:00
Anton Korobeynikov
cda065df61
Fix build on mingw-w64.
...
Patch by Ruben Van Boxem!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142646 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-21 09:38:50 +00:00
NAKAMURA Takumi
569c4a4767
Revert r142046, "Fix for llvm::sys::getHostTriple on Windows. Instead of relying on the triple"
...
It extremely breaks builds when optimization is enabled. Twine should not hold temporary objects.
By the way, I might feel sad if I saw "i786-" "i1586-" or "iF86-".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142055 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-15 04:29:36 +00:00
Chad Rosier
8e3ef11550
Fix for llvm::sys::getHostTriple on Windows. Instead of relying on the triple
...
from config.h, it discovers the triple based on the execution environment.
Patch by Aaron Ballman <aaron@aaronballman.com>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142046 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-15 02:10:06 +00:00
NAKAMURA Takumi
c5c36765e6
Windows/Memory.inc: Support the ability to allocate memory "near" another block of memory on Win32. It has fixed FIXME.
...
Thanks to Aaron Ballman!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142039 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-15 01:58:16 +00:00
Michael J. Spencer
2dd0cfe118
Support/Windows: Add support modifying memory permissions on Windows. Patch by Aaron Ballman!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141910 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-13 23:16:01 +00:00
Michael J. Spencer
7d2bc08254
Support/Windows: Add efficent RW mutex on Windows. Patch by Aaron Ballman!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141907 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-13 23:10:56 +00:00
Michael J. Spencer
0bcd9c70b1
Add Windows x64 stack walking support. Patch by Aaron Ballman!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140906 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-01 00:05:20 +00:00
Daniel Dunbar
bb0a6126cf
sys::Process: Add a SetWorkingDirectory method.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140433 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-23 23:23:36 +00:00
NAKAMURA Takumi
07097ddbc0
lib/Support/Windows/Windows.h: Update required IE ver. 0x0600 should be enough for Windows XP.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138319 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-23 03:49:11 +00:00
Jordy Rose
eeb37f1a56
Make DynamicLibrary thread-safe w/r/t call to dlerror() after dlopen(). PR10718
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138260 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-22 19:01:52 +00:00
Benjamin Kramer
2e608c6b61
PathV2: Handle more reserved filenames on windows.
...
Patch by Aaron Ballman!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138213 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-20 21:36:38 +00:00
NAKAMURA Takumi
aa629668db
lib/Support/Windows/Windows.h: Require at least Windows XP(5.1) API. We will not support Windows 2000 any more.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138198 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-20 06:35:31 +00:00
Jordy Rose
f0813ceeaf
Unbork Windows build. Thanks, Francois.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137798 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-17 00:59:50 +00:00
Jordy Rose
0bce85fbfa
Use DynamicLibrary instances as a way to get symbols from a specific library. Preparation for upcoming (preliminary) support for plugins for the static analyzer.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137791 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-17 00:29:32 +00:00
Argyrios Kyrtzidis
814450a429
Add an optional 'bool makeAbsolute' in llvm::sys::fs::unique_file function.
...
If true and 'model' parameter is not an absolute path, a temp directory will be prepended.
Make it true by default to match current behaviour.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136310 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-28 00:29:20 +00:00
NAKAMURA Takumi
71c10666cc
Windows/DynamicLibrary.inc: Fix trivial warnings. Thanks to John Myers!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134812 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-09 08:41:20 +00:00
Andrew Trick
dc5948d472
Have Program::Wait return -2 for crashed and timeouts instead of embedding
...
info in the error message. Per Dan's request.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131780 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-21 00:56:46 +00:00
Andrew Trick
1680832a9b
Typo and missing checkin from r131186.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131187 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-11 16:44:08 +00:00
NAKAMURA Takumi
6073a05240
Windows/DynamicLibrary.inc: Clean up ELM_Callback. We may check the decl instead of the versions of individual libraries.
...
autoconf: Add checking ELM_Callback decl for mingw32 and mingw-w64.
cmake/config-ix.cmake: Add checking ELM_Callback decl for win32.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130657 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-01 13:29:49 +00:00
NAKAMURA Takumi
bab2d49d4a
Windows/PathV2.inc: [PR8520] Recognize "NUL" as special (character) file.
...
FIXME: It is a temporal hack. We should detect as many "special file name" as possible.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127724 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-16 02:53:32 +00:00
NAKAMURA Takumi
bfb25cd97c
Windows/Path.inc: [PR6270] PathV1::makeUnique(): Give arbitrary initial seed for workaround.
...
FIXME: We should use sys::fs::unique_file() in future.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127723 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-16 02:53:24 +00:00
Rafael Espindola
b78e2ae4ca
Try to fix the windows build.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127416 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-10 18:30:48 +00:00
NAKAMURA Takumi
19b6c73878
Windows/PathV2.inc: Eliminate redundant condition. DWORD is unsigned.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127140 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-07 00:12:53 +00:00
NAKAMURA Takumi
fd289497a5
Windows/Windows.h: Redefine _WIN32_WINNT here. mingw-w64 tends to define it as 0x0502 in its headers.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125171 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-09 04:18:30 +00:00
NAKAMURA Takumi
2d52a612d9
Windows/Program.inc: Eliminate the declaration of SetInformationJobObject(). It should be provided with _WIN32_WINNT>=0x0500.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125170 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-09 04:18:21 +00:00
NAKAMURA Takumi
ad1b453b24
Windows/DynamicLibrary.inc: ELM_Callback fix for mingw-w64.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125169 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-09 04:18:12 +00:00
NAKAMURA Takumi
1f6832a858
Windows/DynamicLibrary.inc: Split explicit symbols into explicit_symbols.inc.
...
config.h.* have conditions whether each symbol is defined or not.
Autoconf and CMake may check symbols in libgcc.a for JIT on Mingw.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124950 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-05 15:11:53 +00:00
NAKAMURA Takumi
0f0889e24b
Windows/Program.inc: Quote arguments when dubious characters (used by cmd.exe or MSYS shell) are included to invoke CreateProcess(). Thanks to Danil Malyshev.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124945 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-05 08:53:12 +00:00
NAKAMURA Takumi
6d600da734
Make Win32's header file name lower for cross build on case-sensitive filesystem.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124864 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-04 12:53:04 +00:00
NAKAMURA Takumi
edd0924d84
Windows/PathV2.inc: For CryptAcquireContext(), CRYPT_VERIFYCONTEXT may be specified for easy use.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123687 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-17 22:41:34 +00:00
NAKAMURA Takumi
8ee48c584d
Windows/PathV2.inc: MoveFileEx() can behave like Posix's mv(1) to specify MOVEFILE_COPY_ALLOWED | MOVEFILE_REPLACE_EXISTING.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123686 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-17 22:41:25 +00:00
NAKAMURA Takumi
ac25e44d89
lib/Support/Windows/Signals.inc: "Showstopper" dialogs may be suppressed with SetErrorMode() on Windows 7.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123685 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-17 22:41:15 +00:00
Michael J. Spencer
d6cdf1d3cb
Support/PathV2: Implement get_magic.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123544 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-15 18:52:33 +00:00
Michael J. Spencer
218dc3e2fe
Support/Path: Deprecate PathV1::isDirectory and replace all uses with PathV2::is_directory.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123209 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-11 01:21:55 +00:00