This implements the -arch flag for both x86 and x86-64 by letting
them affect the default target features we pass to cc1. -m machine
flags will override the features set by -arch.
Details
Diff Detail
Event Timeline
Nice!
If this is for PR20213 (though I guess this doesn't solve the SSSE3 problem?), please put that in the description.
lib/Driver/Tools.cpp | ||
---|---|---|
1451 | Do we need this check? The option can only be specified in clang-cl mode anyway. | |
1454 | Is MSVC really case insensitive here? I get "ignored unknown option" for /arch:ia32, but it accepts /arch:IA32. | |
1466 | It would be nice to warn about unknown Arch values. |
lgtm
lib/Driver/Tools.cpp | ||
---|---|---|
1454 | You can just do: std::string ArchLower = Arch->lower(); Or maybe just use Arch->lower() when updating Features in the code below. |
lib/Driver/Tools.cpp | ||
---|---|---|
1454 | And by Arch->lower(), I mean Arch.lower() of course :) |
Do we need this check? The option can only be specified in clang-cl mode anyway.