ab added a comment.

In D82699#2118313 <https://reviews.llvm.org/D82699#2118313>, @arphaman wrote:

> @t.p.northover @ab I noticed that the use of "apple-a12" doesn't infer the 
> right target features when we're passing in a11 or older, so that's why my 
> test file has the `INFER-A12` separate line. Do you think this is a bug? This 
> is decided here:
>
>   else if ((A = Args.getLastArg(options::OPT_mcpu_EQ)))
>     success = getAArch64ArchFeaturesFromMcpu(D, A->getValue(), Args, 
> Features);
>   
>
> and CPU value isn't checked here.


Interesting.  Does it even pass the newer CPU then?  If so I imagine the 
features are still enabled in the backend because of the cpu, so this would 
only affect frontend behavior (e.g., preprocessor macros, which might in turn 
affect some intrinsic headers, etc..).  Either way, I agree it's a bug

But the apple-a12 floor isn't a hard requirement here (unlike e.g., arm64e 
where we'll fail to compile without certain features), so I'm tempted to avoid 
these shenanigans entirely and let users specify what they want.  What do you 
think?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D82699/new/

https://reviews.llvm.org/D82699



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to