| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
* compilers: clang-cl: Also accept .s files
clang-cl has support for gas-compatible assembly files.
* Add clang-cl to '128 generated assembly' test
|
| |
|
|
|
|
|
| |
Without specifying optimization the used optimization depends on vs runtime-library.
With mdd it is /Od but with md it is /O2.
|
|
|
|
| |
performed by running "pyupgrade --py36-plus" and committing the results
|
|
|
|
|
|
|
|
|
| |
This commit performs some cleanup for the msvc and clang-cl arguments.
* "Disable Debug" (`/Od`) is no longer manually specified for optimization levels {`0`,`g`} (it is already the default for MSVC).
* "Run Time Checking" (`/RTC1`) removed from `debug` buildtype by default
* Clang-CL `debug` buildtype arguments now match MSVC arguments
* There is now no difference between `buildtype` flags and `debug` + `optimization` flags
|
|
|
|
|
|
|
|
| |
The /ZI flag adds in "Edit and Continue" debug information, which will
cause massive slowdown. It is not a flag that we should be adding by
default to debug builds.
/Zi will still be added.
|
|
|
|
|
|
|
|
| |
I would have prefered to do these seperatately, but they are combined in
some cases, so it was much easier to convert them together.
this eliminates the builtins_per_machine dict, as it's duplicated with
the OptionKey's machine parameter.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
So that every subclass doesn't have to reimplement it. Especially since
the Gnu implementation moved out of the CCompiler and into the
GnuLikeCompiler mixin
|
|
|
|
|
|
|
|
| |
- Fixed using debug and optimization built-in options in MSVC.
- Fixed that VS backend does not create pdb files in release mode.
VS implicitly adds the debug fields if left out.
- Fix that it is possible to add debug info with ninja backend with
optimizations.
|
|
|
|
|
|
| |
We do this by making the mixins inherit the Compiler class only when
mypy is examining the code (using some clever inheritance shenanigans).
This caught a bunch of issues, and also lets us delete a ton of code.
|
| |
|
|
|
|
|
|
|
| |
Currently we do some crazy hackery where we add extra properties to a
Popen object and return that. That's crazy. Especially since some of our
hackery is to delete attributes off of the Popen we don't want. Instead,
let's just have a discrete type that has exactly the properties we want.
|
|
|
|
|
|
| |
If the architectures are taken from the output of "clang-cl --version",
we need to convert these names into names that the MSVC tools accept
as the -machine: parameter.
|
|
|
|
| |
In every other compilers level 0 maps to no argument at all.
|
|
|
|
|
|
|
|
|
|
|
|
| |
The linker that comes with MSVC does not understand the /openmp flag.
This results in a string of
LINK : warning LNK4044: unrecognized option '/openmp'; ignored
warnings, one for each static_library linked with an executable.
Avoid this by only setting the linker openmp flag when the compiler is
not MSVC.
|
| |
|
|
|
|
|
|
|
| |
This is the argument to name the implib when using the Visual Studio
Linker. This is needed by LDC and DMD when using link.exe or
lld-link.exe on windows, and is really a linker argument not a compiler
argument.
|
|
|
|
|
|
|
| |
Clang-cl doesn't support /ZI, so we need to use either /Zi or /Z7, which
both do the same thing for clang-cl (though not for msvc)
Fixes #6414
|
|
|
|
|
|
| |
Instead of checking the compiler id inside the VisualStudioLikeCompiler
class, this creates two subclasses that each represent the divergent
behavior of the two compilers
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a user passes -fuse-ld=gold to gcc or clang, they expect that they'll
get ld.gold, not whatever the default is. Meson currently doesn't do
that, because it doesn't pass these arguments to the linker detection
logic. This patch fixes that. Another case that this is needed is with
clang's --target option
This is a bad solution, honestly, and it would be better to use $LD or a
cross/native file but this is needed for backwards compatability.
Fixes #6057
|
|
|
|
|
|
|
| |
This uses the normal meson mechanisms, an LD environment variable or via
cross/native files.
Fixes: #6057
|
|
|
|
| |
- Typos were found by codespell v1.16.0
|
|
|
|
| |
Fixes #6101 (with a test), following up #5881
|
| |
|
| |
|
|
|
|
|
| |
Most of the cuda code is from Olexa Bilaniuk.
Most of the PGI code is from Michael Hirsc
|
| |
|
|
|