Lines Matching refs:Triple
36 const llvm::Triple &TargetTriple, in findRISCVMultilibs()
42 if (TargetTriple.getArch() == llvm::Triple::riscv64) { in findRISCVMultilibs()
60 if (TargetTriple.getArch() == llvm::Triple::riscv32) { in findRISCVMultilibs()
94 BareMetal::BareMetal(const Driver &D, const llvm::Triple &Triple, in BareMetal() argument
96 : ToolChain(D, Triple, Args) { in BareMetal()
101 findMultilibs(D, Triple, Args); in BareMetal()
110 static bool isARMBareMetal(const llvm::Triple &Triple) { in isARMBareMetal() argument
111 if (Triple.getArch() != llvm::Triple::arm && in isARMBareMetal()
112 Triple.getArch() != llvm::Triple::thumb) in isARMBareMetal()
115 if (Triple.getVendor() != llvm::Triple::UnknownVendor) in isARMBareMetal()
118 if (Triple.getOS() != llvm::Triple::UnknownOS) in isARMBareMetal()
121 if (Triple.getEnvironment() != llvm::Triple::EABI && in isARMBareMetal()
122 Triple.getEnvironment() != llvm::Triple::EABIHF) in isARMBareMetal()
129 static bool isAArch64BareMetal(const llvm::Triple &Triple) { in isAArch64BareMetal() argument
130 if (Triple.getArch() != llvm::Triple::aarch64) in isAArch64BareMetal()
133 if (Triple.getVendor() != llvm::Triple::UnknownVendor) in isAArch64BareMetal()
136 if (Triple.getOS() != llvm::Triple::UnknownOS) in isAArch64BareMetal()
139 return Triple.getEnvironmentName() == "elf"; in isAArch64BareMetal()
142 static bool isRISCVBareMetal(const llvm::Triple &Triple) { in isRISCVBareMetal() argument
143 if (Triple.getArch() != llvm::Triple::riscv32 && in isRISCVBareMetal()
144 Triple.getArch() != llvm::Triple::riscv64) in isRISCVBareMetal()
147 if (Triple.getVendor() != llvm::Triple::UnknownVendor) in isRISCVBareMetal()
150 if (Triple.getOS() != llvm::Triple::UnknownOS) in isRISCVBareMetal()
153 return Triple.getEnvironmentName() == "elf"; in isRISCVBareMetal()
156 void BareMetal::findMultilibs(const Driver &D, const llvm::Triple &Triple, in findMultilibs() argument
159 if (isRISCVBareMetal(Triple)) { in findMultilibs()
160 if (findRISCVMultilibs(D, Triple, Args, Result)) { in findMultilibs()
167 bool BareMetal::handlesTarget(const llvm::Triple &Triple) { in handlesTarget() argument
168 return isARMBareMetal(Triple) || isAArch64BareMetal(Triple) || in handlesTarget()
169 isRISCVBareMetal(Triple); in handlesTarget()