History log of /external/llvm/lib/Support/Windows/Program.inc
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
cd81d94322a39503e4a3e87b6ee03d4fcb3465fb 21-Jul-2014 Stephen Hines <srhines@google.com> Update LLVM for rebase to r212749.

Includes a cherry-pick of:
r212948 - fixes a small issue with atomic calls

Change-Id: Ib97bd980b59f18142a69506400911a6009d9df18
/external/llvm/lib/Support/Windows/Program.inc
36b56886974eae4f9c5ebc96befd3e7bfe5de338 24-Apr-2014 Stephen Hines <srhines@google.com> Update to LLVM 3.5a.

Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
/external/llvm/lib/Support/Windows/Program.inc
d07a8a2491556243f2fa5c3c2567c532b45f0acd 18-Oct-2013 Alp Toker <alp@nuanti.com> Fix initialization order warning in mingw32 build

No change in functionality.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192953 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
ae06a63be5a1279739e0c8a2006e72f4bc687d57 07-Oct-2013 David Majnemer <david.majnemer@gmail.com> Windows: Be more explicit with Win32 APIs

This addresses several issues in a similar vein:
- Use the Unicode APIs when possible, running nm on clang shows that we
only use Unicode APIs except for FormatMessage, CreateSemaphore, and
GetModuleHandle. AFAICT, the latter two are coming from MinGW and
not LLVM itself.
- Make getMainExecutable more resilient. It previously considered
return values of zero from ::GetModuleFileNameA to be acceptable.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192096 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
6a971bb8f59f4e20c953a2cc360cab7bae8642e4 07-Oct-2013 David Majnemer <david.majnemer@gmail.com> Revert "Revert "Windows: Add support for unicode command lines""

This reverts commit r192070 which reverted r192069, I forgot to
regenerate the configure scripts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192079 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
b262556c45bb7b3add826bc3f050c99db6990c37 06-Oct-2013 David Majnemer <david.majnemer@gmail.com> Revert "Windows: Add support for unicode command lines"

This is causing MinGW bots to fail.
This reverts commit r192069.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192070 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
5a1a1856a4dfa1335d937437fade5c0bbab06560 06-Oct-2013 David Majnemer <david.majnemer@gmail.com> Windows: Add support for unicode command lines

Summary:
The MSVCRT deliberately sends main() code-page specific characters.
This isn't too useful to LLVM as we end up converting the arguments to
UTF-16 and subsequently attempt to use the result as, for example, a
file name. Instead, we need to have the ability to access the Unicode
command line and transform it to UTF-8.

This has the distinct advantage over using the MSVC-specific wmain()
function as our entry point because:
- It doesn't work on cygwin.
- It only work on MinGW with caveats and only then on certain versions.
- We get to keep our entry point as main(). :)

N.B. This patch includes fixes to other parts of lib/Support/Windows
s.t. we would be able to take advantage of getting the Unicode paths.
E.G. clang spawning clang -cc1 would want to give it Unicode arguments.

Reviewers: aaron.ballman, Bigcheese, rnk, ruiu

Reviewed By: rnk

CC: llvm-commits, ygao

Differential Revision: http://llvm-reviews.chandlerc.com/D1834

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192069 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
c269c4f505a2dd7c3a88d12706257410ed6c7068 01-Oct-2013 Tareq A. Siraj <tareq.a.siraj@intel.com> Add non-blocking Wait() for launched processes

- New ProcessInfo class to encapsulate information about child processes.
- Generalized the Wait() to support non-blocking wait on child processes.
- ExecuteNoWait() now returns a ProcessInfo object with information about
the launched child. Users will be able to use this object to
perform non-blocking wait.
- ExecuteNoWait() now accepts an ExecutionFailed param that tells if execution
failed or not.

These changes will allow users to implement basic process parallel
tools.

Differential Revision: http://llvm-reviews.chandlerc.com/D1728


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191763 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
e3c7bdf9a955dac6536588f8ee9c25716f479a04 07-Aug-2013 Reid Kleckner <reid@kleckner.net> Avoid using alloca in Windows/Program.inc

One use needs to copy the alloca into a std::string, and the other use
is before calling CreateProcess, which is very heavyweight anyway.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187845 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
fcba9c56a25edc71e32a407dfd6191de6dba0ed7 14-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Replace use of PathV1.h in Program.cpp.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183996 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
f3fa6837bf880ada8c2d43e798c2d62148aacd1f 14-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove unused argument.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183992 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
6585b388cb7bfc623adb9e4dd910423f838e5d96 13-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Have sys::FindProgramByName return a std::string.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183928 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
62d124a1fa8b212bae1d331f027c9eec06a45199 13-Jun-2013 Reid Kleckner <reid@kleckner.net> [Support] Fix handle and memory leak for processes that are not waited for

Execute's Data parameter is now optional, so we won't allocate memory
for it on Windows and we'll close the process handle.

The Unix code should probably do something similar to avoid accumulation
of zombie children that haven't been waited on.

Tested on Linux and Windows.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183906 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
a03a80f3ce75daca98445d568930771113ce06ef 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> [Win] Put ChangeStdinToBinary ChangeStdoutToBinary ChangeStderrToBinary in sys.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183868 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
e4f7e3109e1caf310f3afd10c9dd75348606c108 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> s/Void/void.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183866 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
42f756f39e835aab0476f35c410b7e18fa8b670e 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Attempt at fixing the windows build.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183865 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
af35d86bbd9a970d5bb55595a569ea60962bf23d 01-May-2013 Aaron Ballman <aaron@aaronballman.com> Fixes a buffer overrun where the allocated buffer wasn't large enough to accommodate the closing quote escape rules in some instances.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180836 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
0b675d88309bdcbb387bbee907c4ef9d98e412a2 22-Apr-2013 Reid Kleckner <reid@kleckner.net> [Support] Fix argv string escape bug on Windows

Summary:
This is http://llvm.org/PR15802. Backslashes preceding double quotes in
arguments must be escaped. The interesting bit is that all other
backslashes should *not* be escaped, because the un-escaping logic is
only triggered by the presence of a double quote character.

Reviewers: Bigcheese

CC: llvm-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D705

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180035 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
845a932af74ecbd2a20af5751dd61fa8cf2246f5 11-Apr-2013 Rafael Espindola <rafael.espindola@gmail.com> Add a function to check if an argument list is too long.

This will be used in clang to decide if it should create an @file or not. It
will be tested on the clang side.

Patch by Nathan Froyd.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179285 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
a0d8f28a9cbebfd3ddb32dfe3e0a286ede1678c5 01-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Remove an unused method on Program.

I'm simplifying this interface as much as I can before merging it with
the new process interface.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171334 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
2bbe46647555cdd05fe0db5f1dd2839330a647b2 01-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Remove an unused method on the Program class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171332 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
d04a8d4b33ff316ca4cf961e06c9e312eff8e64f 03-Dec-2012 Chandler Carruth <chandlerc@gmail.com> Use the new script to sort the includes of every file under lib.

Sooooo many of these had incorrect or strange main module includes.
I have manually inspected all of these, and fixed the main module
include to be the nearest plausible thing I could find. If you own or
care about any of these source files, I encourage you to take some time
and check that these edits were sensible. I can't have broken anything
(I strictly added headers, and reordered them, never removed), but they
may not be the headers you'd really like to identify as containing the
API being implemented.

Many forward declarations and missing includes were added to a header
files to allow them to parse cleanly when included first. The main
module rule does in fact have its merits. =]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169131 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
b92cb30cf547bf9a8590a981a49040f480c8eb82 14-Dec-2011 Michael J. Spencer <bigcheesegs@gmail.com> 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
/external/llvm/lib/Support/Windows/Program.inc
1dd2ee7bf4d848e368829cb01033f297afb674ab 12-Dec-2011 Michael J. Spencer <bigcheesegs@gmail.com> Support/Windows: Cleanup scoped handles.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146362 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
5d2f8c31556b6a5ce29d2cad314bc48af879c5b3 29-Nov-2011 NAKAMURA Takumi <geek4civic@gmail.com> [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
/external/llvm/lib/Support/Windows/Program.inc
5ced70d8f8458f41e6dc7ac76ad2e7c63ae33664 06-Nov-2011 Peter Collingbourne <peter@pcc.me.uk> 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
/external/llvm/lib/Support/Windows/Program.inc
dc5948d47205fd05184a25251e128db6a47b25c2 21-May-2011 Andrew Trick <atrick@apple.com> 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
/external/llvm/lib/Support/Windows/Program.inc
1680832a9b693e6f726570017237a984d4d390c8 11-May-2011 Andrew Trick <atrick@apple.com> Typo and missing checkin from r131186.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131187 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc
2d52a612d9803d4b96dfdd776bf166fd1476be0d 09-Feb-2011 NAKAMURA Takumi <geek4civic@gmail.com> 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
/external/llvm/lib/Support/Windows/Program.inc
0f0889e24b6521fafeea7d2ab17bd14897773e0c 05-Feb-2011 NAKAMURA Takumi <geek4civic@gmail.com> 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
/external/llvm/lib/Support/Windows/Program.inc
1f6efa3996dd1929fbc129203ce5009b620e6969 29-Nov-2010 Michael J. Spencer <bigcheesegs@gmail.com> Merge System into Support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Support/Windows/Program.inc