From 1e8c9e7ac18f6769087219d93b07f76f3574e20a Mon Sep 17 00:00:00 2001 From: Xiaodong Liu Date: Fri, 25 Feb 2022 21:50:34 +0000 Subject: [PATCH] [Triple] Add llvm::Triple::isSPARC{,32,64} Reviewed By: ro, MaskRay Differential Revision: https://reviews.llvm.org/D120381 --- llvm/include/llvm/ADT/Triple.h | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/llvm/include/llvm/ADT/Triple.h b/llvm/include/llvm/ADT/Triple.h index 6cf90fd..5e989d5 100644 --- a/llvm/include/llvm/ADT/Triple.h +++ b/llvm/include/llvm/ADT/Triple.h @@ -824,6 +824,17 @@ public: return getArch() == Triple::riscv32 || getArch() == Triple::riscv64; } + /// Tests whether the target is 32-bit SPARC (little and big endian). + bool isSPARC32() const { + return getArch() == Triple::sparc || getArch() == Triple::sparcel; + } + + /// Tests whether the target is 64-bit SPARC (big endian). + bool isSPARC64() const { return getArch() == Triple::sparcv9; } + + /// Tests whether the target is SPARC. + bool isSPARC() const { return isSPARC32() || isSPARC64(); } + /// Tests whether the target is SystemZ. bool isSystemZ() const { return getArch() == Triple::systemz; -- 2.7.4