michaelplatings added inline comments.

================
Comment at: clang/include/clang/Driver/Multilib2.h:33-34
+private:
+  std::vector<std::tuple<std::string, std::vector<std::string>, 
std::vector<std::string>>> Multilibs;
+  std::vector<std::tuple<std::string, std::vector<std::string>, 
std::vector<std::string>>> RegexAttributes;
+};
----------------
phosek wrote:
> I think it'd really help readability and comprehension if this was modeled 
> using types (that is `struct`s and `class`es). It's not at all clear what 
> these strings are supposed to represent, and seeing expressions like 
> `std::get<0>` doesn't help either.
I fully agree. Sorry if I wasn't clear in the RFC but this is the kind of thing 
I meant when I said the code is not intended to be production quality.


================
Comment at: 
clang/test/Driver/Inputs/baremetal_multilib/arm-none-eabi/multilib.yaml:24
+- path: thumb/v6-m/nofp
+  args: [--target=arm-none-eabi, -mfloat-abi=soft, -march=armv6m]
+  attrs: [thumb, soft, v6m]
----------------
phosek wrote:
> I understand how the second section is used to match arguments passed to 
> `clang -cc1` and turn those into attributes which are then used to find the 
> right variant, but I don't understand what this list of arguments is used for?
Having these here permits `clang -print-multi-lib` to work, which would print 
out something like this:
```
thumb/nofp;@mthumb@mfloat-abi=soft
thumb/v7/nofp;@mthumb@march=armv7@mfloat-abi=soft
...
```


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D140959

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

Reply via email to