r245914 - Reimplement the PPC explicit option checking to be a bit more obvious
Hal Finkel via cfe-commits
cfe-commits at lists.llvm.org
Tue Aug 25 15:51:01 PDT 2015
Hi Eric,
Can you please update the test case for this change?
Thanks again,
Hal
----- Original Message -----
> From: "Eric Christopher via cfe-commits" <cfe-commits at lists.llvm.org>
> To: cfe-commits at lists.llvm.org
> Sent: Monday, August 24, 2015 7:59:11 PM
> Subject: r245914 - Reimplement the PPC explicit option checking to be a bit more obvious
>
> Author: echristo
> Date: Mon Aug 24 19:59:11 2015
> New Revision: 245914
>
> URL: http://llvm.org/viewvc/llvm-project?rev=245914&view=rev
> Log:
> Reimplement the PPC explicit option checking to be a bit more obvious
> that we're looking for conflicting options and give an explanation.
>
> Modified:
> cfe/trunk/lib/Basic/Targets.cpp
>
> Modified: cfe/trunk/lib/Basic/Targets.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targets.cpp?rev=245914&r1=245913&r2=245914&view=diff
> ==============================================================================
> --- cfe/trunk/lib/Basic/Targets.cpp (original)
> +++ cfe/trunk/lib/Basic/Targets.cpp Mon Aug 24 19:59:11 2015
> @@ -1070,14 +1070,25 @@ bool PPCTargetInfo::handleTargetFeatures
> // TODO: Finish this list and add an assert that we've handled
> them
> // all.
> }
> - if (!HasVSX && (HasP8Vector || HasDirectMove)) {
> - if (HasP8Vector)
> - Diags.Report(diag::err_opt_not_valid_with_opt) <<
> "-mpower8-vector" <<
> - "-mno-vsx";
> - else if (HasDirectMove)
> - Diags.Report(diag::err_opt_not_valid_with_opt) <<
> "-mdirect-move" <<
> - "-mno-vsx";
> - return false;
> +
> + // Handle explicit options being passed to the compiler here: if
> we've
> + // explicitly turned off vsx and turned on power8-vector or
> direct-move then
> + // go ahead and error since the customer has expressed a somewhat
> incompatible
> + // set of options.
> + if (std::find(Features.begin(), Features.end(), "-vsx") !=
> Features.end()) {
> + if (std::find(Features.begin(), Features.end(),
> "+power8-vector") !=
> + Features.end()) {
> + Diags.Report(diag::err_opt_not_valid_with_opt) <<
> "-mpower8-vector"
> + << "-mno-vsx";
> + return false;
> + }
> +
> + if (std::find(Features.begin(), Features.end(), "+direct-move")
> !=
> + Features.end()) {
> + Diags.Report(diag::err_opt_not_valid_with_opt) <<
> "-mdirect-move"
> + << "-mno-vsx";
> + return false;
> + }
> }
>
> return true;
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>
--
Hal Finkel
Assistant Computational Scientist
Leadership Computing Facility
Argonne National Laboratory
More information about the cfe-commits
mailing list