[clang] [clang][RISCV] Add big-endian RISC-V target support (PR #165599)

Craig Topper via cfe-commits cfe-commits at lists.llvm.org
Fri Dec 19 13:27:15 PST 2025


================
@@ -1732,16 +1734,20 @@ static void findRISCVBareMetalMultilibs(const Driver &D,
             .flag(Twine("-march=", Element.march).str())
             .flag(Twine("-mabi=", Element.mabi).str()));
   }
+
+  std::string EndiannessSuffix = TargetTriple.isLittleEndian() ? "" : "be";
   MultilibSet RISCVMultilibs =
       MultilibSetBuilder()
           .Either(Ms)
           .makeMultilibSet()
           .FilterOut(NonExistent)
-          .setFilePathsCallback([](const Multilib &M) {
+          .setFilePathsCallback([EndiannessSuffix](const Multilib &M) {
----------------
topperc wrote:

@efriedma-quic this is a StringRef. Should we capture it by reference or follow our convention for StringRef arguments where it's by value?

https://github.com/llvm/llvm-project/pull/165599


More information about the cfe-commits mailing list