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