Joe added a comment.


>> The main trouble I had was at that point we don't have a reference to the 
>> ToolChain, so calling `getMultiSelectionFlags` was not possible. [...] I'm 
>> not sure what the solution here is.
>
> I see two options:
>
> 1. Split getMultiSelectionFlags into needs-ToolChain and 
> doesn't-need-ToolChain parts, with the former calling the latter. From 
> Gnu.cpp, call the latter, with the limitation that it can use fewer flags.
> 2. Pass a ToolChain to the Gnu.cpp functions.

I did briefly try to pass a ToolChain to Gnu.cpp functions, but it became 
intrusive and had to add it in 5+ places, so unless I'm missing a trick to get 
the ToolChain from the Driver, my vote would go to the former.

>> I added the arch extensions and abi to the Result in `getMultiSelectionFlags`
>
> What was the syntax you used for that?
> I'm not super keen on the `march=+ext` syntax I came up with so I'm open to 
> alternatives.

I dropped the `march=` and used the same format as target-features, so it was 
simply `+m` or `+a`. I think this is intuitive enough without the `march=`, and 
the form `x=y` is already broken when you add the flags from the flag list. I 
don't have a strong stance on this though.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D142933

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

Reply via email to