[llvm] r236139 - New architecture name - 'sparcel' for Sparc little-endian.
Tom Stellard
tom at stellard.net
Wed Apr 29 13:27:39 PDT 2015
On Wed, Apr 29, 2015 at 07:15:08PM -0000, Douglas Katzman wrote:
> Author: dougk
> Date: Wed Apr 29 14:15:08 2015
> New Revision: 236139
>
> URL: http://llvm.org/viewvc/llvm-project?rev=236139&view=rev
> Log:
> New architecture name - 'sparcel' for Sparc little-endian.
>
> Differential Revision: http://reviews.llvm.org/D9263
>
> Modified:
> llvm/trunk/include/llvm/ADT/Triple.h
> llvm/trunk/lib/Support/Triple.cpp
> llvm/trunk/unittests/ADT/TripleTest.cpp
>
> Modified: llvm/trunk/include/llvm/ADT/Triple.h
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/ADT/Triple.h?rev=236139&r1=236138&r2=236139&view=diff
> ==============================================================================
> --- llvm/trunk/include/llvm/ADT/Triple.h (original)
> +++ llvm/trunk/include/llvm/ADT/Triple.h Wed Apr 29 14:15:08 2015
> @@ -64,6 +64,7 @@ public:
> amdgcn, // AMDGCN: AMD GCN GPUs
> sparc, // Sparc: sparc
> sparcv9, // Sparcv9: Sparcv9
> + sparcel, // Sparc: (endianness = little). NB: 'Sparcle' is a CPU variant
Hi,
This comment is confusing to me. What does 'NB' mean? Is it 'Sparcle' or 'Sparcel'?
-Tom
> systemz, // SystemZ: s390x
> tce, // TCE (http://tce.cs.tut.fi/): tce
> thumb, // Thumb (little endian): thumb, thumbv.*
>
> Modified: llvm/trunk/lib/Support/Triple.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Support/Triple.cpp?rev=236139&r1=236138&r2=236139&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Support/Triple.cpp (original)
> +++ llvm/trunk/lib/Support/Triple.cpp Wed Apr 29 14:15:08 2015
> @@ -37,6 +37,7 @@ const char *Triple::getArchTypeName(Arch
> case amdgcn: return "amdgcn";
> case sparc: return "sparc";
> case sparcv9: return "sparcv9";
> + case sparcel: return "sparcel";
> case systemz: return "s390x";
> case tce: return "tce";
> case thumb: return "thumb";
> @@ -90,6 +91,7 @@ const char *Triple::getArchTypePrefix(Ar
> case bpf: return "bpf";
>
> case sparcv9:
> + case sparcel:
> case sparc: return "sparc";
>
> case systemz: return "s390";
> @@ -312,6 +314,7 @@ static Triple::ArchType parseArch(String
> .Case("hexagon", Triple::hexagon)
> .Case("s390x", Triple::systemz)
> .Case("sparc", Triple::sparc)
> + .Case("sparcel", Triple::sparcel)
> .Cases("sparcv9", "sparc64", Triple::sparcv9)
> .Case("tce", Triple::tce)
> .Case("xcore", Triple::xcore)
> @@ -918,6 +921,7 @@ static unsigned getArchPointerBitWidth(l
> case llvm::Triple::ppc:
> case llvm::Triple::r600:
> case llvm::Triple::sparc:
> + case llvm::Triple::sparcel:
> case llvm::Triple::tce:
> case llvm::Triple::thumb:
> case llvm::Triple::thumbeb:
> @@ -990,6 +994,7 @@ Triple Triple::get32BitArchVariant() con
> case Triple::ppc:
> case Triple::r600:
> case Triple::sparc:
> + case Triple::sparcel:
> case Triple::tce:
> case Triple::thumb:
> case Triple::thumbeb:
> @@ -1026,6 +1031,7 @@ Triple Triple::get64BitArchVariant() con
> case Triple::thumb:
> case Triple::thumbeb:
> case Triple::xcore:
> + case Triple::sparcel:
> T.setArch(UnknownArch);
> break;
>
>
> Modified: llvm/trunk/unittests/ADT/TripleTest.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/unittests/ADT/TripleTest.cpp?rev=236139&r1=236138&r2=236139&view=diff
> ==============================================================================
> --- llvm/trunk/unittests/ADT/TripleTest.cpp (original)
> +++ llvm/trunk/unittests/ADT/TripleTest.cpp Wed Apr 29 14:15:08 2015
> @@ -149,6 +149,11 @@ TEST(TripleTest, ParsedIDs) {
> EXPECT_EQ(Triple::UnknownVendor, T.getVendor());
> EXPECT_EQ(Triple::UnknownOS, T.getOS());
>
> + T = Triple("sparcel-unknown-unknown");
> + EXPECT_EQ(Triple::sparcel, T.getArch());
> + EXPECT_EQ(Triple::UnknownVendor, T.getVendor());
> + EXPECT_EQ(Triple::UnknownOS, T.getOS());
> +
> T = Triple("spir-unknown-unknown");
> EXPECT_EQ(Triple::spir, T.getArch());
> EXPECT_EQ(Triple::UnknownVendor, T.getVendor());
> @@ -407,6 +412,21 @@ TEST(TripleTest, BitWidthPredicates) {
> EXPECT_FALSE(T.isArch16Bit());
> EXPECT_FALSE(T.isArch32Bit());
> EXPECT_TRUE(T.isArch64Bit());
> +
> + T.setArch(Triple::sparc);
> + EXPECT_FALSE(T.isArch16Bit());
> + EXPECT_TRUE(T.isArch32Bit());
> + EXPECT_FALSE(T.isArch64Bit());
> +
> + T.setArch(Triple::sparcel);
> + EXPECT_FALSE(T.isArch16Bit());
> + EXPECT_TRUE(T.isArch32Bit());
> + EXPECT_FALSE(T.isArch64Bit());
> +
> + T.setArch(Triple::sparcv9);
> + EXPECT_FALSE(T.isArch16Bit());
> + EXPECT_FALSE(T.isArch32Bit());
> + EXPECT_TRUE(T.isArch64Bit());
> }
>
> TEST(TripleTest, BitWidthArchVariants) {
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list