Martin Storsjö
0c7aac99ad
Update llvm/clang/lld to the latest version
...
This version adds support for a version of the -pdb option to the MinGW
frontend to lld that can work without a parameter, and implements --help
and -v for the same frontend.
2019-05-28 00:03:05 +03:00
Steve Lhomme
b31ef612fb
also pass the number of CORES to Ninja
...
It may automatically get a value but we can't override it
2019-05-21 14:26:26 +03:00
Steve Lhomme
4f5134fb25
wrappers: fix PATH not working when there are spaces in them
2019-05-17 12:36:00 +03:00
Michael Hept
a959509701
Fix out of bound array access in native-wrappers.h
2019-05-09 14:58:38 +03:00
Martin Storsjö
d009355b91
build-llvm: Remove the now unnecessary BUILDTARGETS variable
2019-05-09 09:22:26 +03:00
Martin Storsjö
873243acc2
build-llvm: Use the built-in recursive cmake for building llvm-tblgen if necessary
...
This requires setting a flag to use the system default compiler
for this, instead of the cross compiler.
2019-05-09 09:22:26 +03:00
Martin Storsjö
a8829aeebb
build-libcxx: Remove cmake flag overrides that no longer are necessary
2019-05-09 09:22:26 +03:00
Martin Storsjö
ca329c1cd4
run-tests: Check for the _UCRT define that latest upstream mingw-w64 defines
...
The __MSVCRT_VERSION__ define has been changed and now is set to
0xE00 for UCRT, but the _UCRT define has been added.
2019-05-07 09:04:06 +03:00
Martin Storsjö
6223a35822
strip-llvm: Remove lld-link on windows
2019-05-06 11:05:25 +03:00
Martin Storsjö
c3aeb78576
wrappers: Add a wrapper for running llvm binutils replacements
...
This saves a lot of diskspace, when symlinks are turned into full
copies of the tools on windows, as the symlinks only point to a small
wrapper instead of to the full tool.
2019-05-06 11:05:25 +03:00
Martin Storsjö
750ab50433
wrappers: Consistently quote all arguments when calling spawn or creating a command line
2019-05-06 11:04:53 +03:00
Martin Storsjö
fa88c4ee1e
wrappers: Escape the first argument to spawn
...
This fixes running in paths that contain a space.
2019-05-06 11:04:53 +03:00
Martin Storsjö
97ca0681bc
wrappers: Split out shared helpers for native wrapper executables to a header
2019-05-06 11:04:53 +03:00
Martin Storsjö
66055dfe63
wrappers: Take the argv null terminator into account when checking for overflows
...
When adding the terminator without incrementing arg and checking for
overflows with "arg > max_arg", we need to allocate space for one
extra element for the implicit terminator.
2019-05-06 11:04:27 +03:00
Martin Storsjö
013dfc08e4
windres-wrapper: Check that the number of args isn't exceeded
2019-05-06 11:04:27 +03:00
Martin Storsjö
2ad83e2c1a
Extend the dockerignore file to exclude more unnecessary files
2019-05-06 10:54:07 +03:00
Martin Storsjö
debd8ca382
Do cleanup even if the release script is interrupted
2019-05-04 07:55:04 +03:00
Martin Storsjö
ad997b4ea9
Remove Remarks.dll in addition to the previous OptRemarks.dll
...
The latter has now been renamed.
2019-05-04 07:55:04 +03:00
Martin Storsjö
56ef08dadc
Build libcxx without --export-all-symbols
...
With the latest clang and libcxx, this workaround no longer is
necessary.
2019-05-04 07:55:04 +03:00
Martin Storsjö
b4256fea44
Update libcxx to the latest version
...
This version fixes dllexport handling of template instantiations for
mingw.
2019-05-04 07:55:04 +03:00
Martin Storsjö
f9ce17774e
Switch i686 exception handling back to dwarf
...
The code generation bug in llvm has been fixed now.
2019-05-04 07:55:04 +03:00
Martin Storsjö
1759d79daa
Update to the latest version of llvm/clang/lld
...
This contains the following changes relevant for mingw usage:
- A fix in a code generation bug affecting dwarf exception handling
on i686
- Setting the proper machine type in weak alias objects in import libraries,
making GNU binutils not reject such files outright
- Fixes for SEH generation for AArch64, for functions containing
jump tables
- Fixes to the calling convention of functions returning structs on AArch64
- Improvements in handling of dllexport of C++ template instantiations,
allowing building libc++ into a DLL without using --export-all-symbols
- Proper separators in the output of clang --print-search-dirs on
Windows
- A new flag --appcontainer to lld's mingw frontend
- Lld now has extra handling of crtend.o, fixing use of lld with gcc
based mingw setups, when using dwarf exceptions
2019-05-04 07:53:15 +03:00
Martin Storsjö
82324fcff5
run-tests: Build optimized versions of the exception handling tests
...
Exception handling codegen can be greatly affected by optimization.
2019-04-30 00:03:28 +03:00
Martin Storsjö
8cf83f259e
Add the testcase from llvm PR40322
2019-04-30 00:03:19 +03:00
Martin Storsjö
c3a16814bd
crt-test: Add tests for logb/ilogb
2019-04-29 12:17:07 +03:00
Martin Storsjö
571aa86e6a
Update mingw-w64 to a newer version
...
This version contains more fixes for the logbl/ilogb math functions.
2019-04-29 12:17:07 +03:00
Martin Storsjö
566d1dece9
crt-test: Clarify a comment further
2019-04-29 12:16:02 +03:00
Martin Storsjö
7e74b87a29
crt-test: Remove workarounds for llrint rounding to even numbers
...
Also add testcases for the same case with other functions.
2019-04-20 07:37:11 +03:00
Martin Storsjö
306b98716b
crt-test: Test powl on arm/aarch64 now
2019-04-20 07:37:11 +03:00
Martin Storsjö
fd74ad4c52
crt-test: Remove a workaround for mingw math functions
2019-04-20 07:37:11 +03:00
Martin Storsjö
583e9f2a78
Update to the latest version of mingw-w64
...
This version fixes a number of math functions.
2019-04-20 07:30:27 +03:00
Martin Storsjö
1dd468bb4a
run-tests: Only run aarch64 exception tests if running on native windows
2019-04-19 00:09:06 +03:00
Martin Storsjö
3deb039b62
Use SEH exceptions on aarch64
...
The SEH support for aarch64 should be pretty stable now.
2019-04-19 00:07:17 +03:00
Martin Storsjö
8cbdd0c9b4
crt-test: Clarify a comment about a workaround
2019-04-18 22:40:35 +03:00
Martin Storsjö
0e7e0fe397
clang-target-wrapper: Properly separate arguments for UWP in the C wrapper
2019-04-18 14:31:14 +03:00
Martin Storsjö
a484ddba04
Stop using --enable-secure-api with mingw-w64 headers
...
This is on by default now, and the option is ignored (and produces
a warning).
2019-04-18 14:16:32 +03:00
Steve Lhomme
cd73ed8308
wrappers: link with the Windows Store specific runtime for UWP
2019-04-18 12:35:25 +03:00
Steve Lhomme
a270bc3cad
wrappers: force linking with mincore for UWP targets
...
it's not needed for regular win32 so shouldn't be either for these targets
2019-04-18 12:23:38 +03:00
Steve Lhomme
707fda6348
tests: add a test to make sure compiling forbidden UWP APIs fails
...
When building for UWP and works otherwise
2019-04-18 12:23:28 +03:00
Steve Lhomme
591a5c2ddc
tests: also test UWP targets
...
the tests with LoadLibrary will not work on these, so skip them
2019-04-18 11:30:59 +03:00
Steve Lhomme
ca44a11660
Add wrappers that target Universal Windows
2019-04-18 11:28:05 +03:00
Martin Storsjö
47acbb667e
run-tests: Handle uname MSYS* in the same way as MINGW*
2019-04-18 10:16:41 +03:00
Martin Storsjö
8c5bac6cb7
run-tests: Actually run the asan test binary when running on native windows
2019-04-18 10:15:26 +03:00
Martin Storsjö
2e31d11bfd
run-tests: Make sure to actually run tests when run on native windows
2019-04-18 10:09:00 +03:00
Martin Storsjö
86e0b3732f
crt-test: Remove skips for acosh(infinity) on x86 mingw
...
This is fixed in the latest upstream version.
2019-04-16 14:53:54 +03:00
Martin Storsjö
978a430069
Update mingw-w64 to a yet newer version
...
This improves math functions in libmsvcrt-os.a for arm/arm64, and
improves the acosh function for x86.
2019-04-16 14:53:54 +03:00
Martin Storsjö
cb7feea731
crt-test: Tweak TEST_FLT_ACCURACY to not accept NAN
2019-04-16 10:28:43 +03:00
Martin Storsjö
70c64e58c9
crt-test: Add tests for acosh/asinh/atanh
2019-04-16 10:28:43 +03:00
Martin Storsjö
141027d5d4
crt-test: Add tests for expm1 and log1p
2019-04-16 10:28:33 +03:00
Martin Storsjö
84bdd9c4e8
Set the correct CMake option CMAKE_CROSSCOMPILING in build-llvm.sh
...
The previous option doesn't seem to have had any effect, and cmake
correctly has warned about an unused option.
Also set the value of the option to TRUE, for slightly more consistency
with where this option is set in build-llvm.sh.
2019-04-16 10:27:25 +03:00