[libcxx-commits] [libcxx] 912bba5 - [libcxx][CI] Set Arm triples to match native clang build's default

David Spickett via libcxx-commits libcxx-commits at lists.llvm.org
Tue Feb 22 01:39:25 PST 2022


Author: David Spickett
Date: 2022-02-22T09:39:20Z
New Revision: 912bba5ae25aea1da32ee022a51f063477e5e0f0

URL: https://github.com/llvm/llvm-project/commit/912bba5ae25aea1da32ee022a51f063477e5e0f0
DIFF: https://github.com/llvm/llvm-project/commit/912bba5ae25aea1da32ee022a51f063477e5e0f0.diff

LOG: [libcxx][CI] Set Arm triples to match native clang build's default

We were using:
armv8-linux-gnueabihf
But for a native clang build the default target is:
armv8l-linux-gnueabihf

(ditto for v7)

Add the "l" to the target triples and update the one test
that is unsupported to look for the various possible names.

armv(7 or 8)(m or l, optionally)

The UNSUPPORTED does not include aarch64 because aarch64 Linux
(and others that follow Arm's AAPCS64) use quad precision for
long double where arm64 (darwin) does not:
https://developer.apple.com/documentation/xcode/writing-arm64-code-for-apple-platforms
https://github.com/ARM-software/abi-aa/blob/main/aapcs64/aapcs64.rst#811arithmetic-types

Reviewed By: rovka

Differential Revision: https://reviews.llvm.org/D119948

Added: 
    

Modified: 
    libcxx/cmake/caches/Armv7Arm.cmake
    libcxx/cmake/caches/Armv7Thumb-noexceptions.cmake
    libcxx/cmake/caches/Armv8Arm.cmake
    libcxx/cmake/caches/Armv8Thumb-noexceptions.cmake
    libcxx/test/std/language.support/cmp/cmp.alg/strong_order_long_double.verify.cpp

Removed: 
    


################################################################################
diff  --git a/libcxx/cmake/caches/Armv7Arm.cmake b/libcxx/cmake/caches/Armv7Arm.cmake
index 8b2b54eba13ce..0e9dc10e9d41f 100644
--- a/libcxx/cmake/caches/Armv7Arm.cmake
+++ b/libcxx/cmake/caches/Armv7Arm.cmake
@@ -1,4 +1,4 @@
 set(LIBCXXABI_USE_LLVM_UNWINDER ON CACHE BOOL "")
-set(LIBCXX_TARGET_TRIPLE "armv7-linux-gnueabihf" CACHE STRING "")
+set(LIBCXX_TARGET_TRIPLE "armv7l-linux-gnueabihf" CACHE STRING "")
 set(CMAKE_CXX_FLAGS "-marm" CACHE STRING "")
 set(CMAKE_C_FLAGS "-marm" CACHE STRING "")

diff  --git a/libcxx/cmake/caches/Armv7Thumb-noexceptions.cmake b/libcxx/cmake/caches/Armv7Thumb-noexceptions.cmake
index 67ec43b93f207..61cd3bf7376ea 100644
--- a/libcxx/cmake/caches/Armv7Thumb-noexceptions.cmake
+++ b/libcxx/cmake/caches/Armv7Thumb-noexceptions.cmake
@@ -1,5 +1,5 @@
 set(LIBCXXABI_USE_LLVM_UNWINDER ON CACHE BOOL "")
-set(LIBCXX_TARGET_TRIPLE "armv7-linux-gnueabihf" CACHE STRING "")
+set(LIBCXX_TARGET_TRIPLE "armv7l-linux-gnueabihf" CACHE STRING "")
 set(CMAKE_CXX_FLAGS "-mthumb" CACHE STRING "")
 set(CMAKE_C_FLAGS "-mthumb" CACHE STRING "")
 set(LIBCXX_ENABLE_EXCEPTIONS OFF CACHE BOOL "")

diff  --git a/libcxx/cmake/caches/Armv8Arm.cmake b/libcxx/cmake/caches/Armv8Arm.cmake
index 55dfa908b3d01..eee2eb46da56d 100644
--- a/libcxx/cmake/caches/Armv8Arm.cmake
+++ b/libcxx/cmake/caches/Armv8Arm.cmake
@@ -1,4 +1,4 @@
 set(LIBCXXABI_USE_LLVM_UNWINDER ON CACHE BOOL "")
-set(LIBCXX_TARGET_TRIPLE "armv8-linux-gnueabihf" CACHE STRING "")
+set(LIBCXX_TARGET_TRIPLE "armv8l-linux-gnueabihf" CACHE STRING "")
 set(CMAKE_CXX_FLAGS "-marm" CACHE STRING "")
 set(CMAKE_C_FLAGS "-marm" CACHE STRING "")

diff  --git a/libcxx/cmake/caches/Armv8Thumb-noexceptions.cmake b/libcxx/cmake/caches/Armv8Thumb-noexceptions.cmake
index fb1d10efaddce..9c2f90661ef8d 100644
--- a/libcxx/cmake/caches/Armv8Thumb-noexceptions.cmake
+++ b/libcxx/cmake/caches/Armv8Thumb-noexceptions.cmake
@@ -1,5 +1,5 @@
 set(LIBCXXABI_USE_LLVM_UNWINDER ON CACHE BOOL "")
-set(LIBCXX_TARGET_TRIPLE "armv8-linux-gnueabihf" CACHE STRING "")
+set(LIBCXX_TARGET_TRIPLE "armv8l-linux-gnueabihf" CACHE STRING "")
 set(CMAKE_CXX_FLAGS "-mthumb" CACHE STRING "")
 set(CMAKE_C_FLAGS "-mthumb" CACHE STRING "")
 set(LIBCXX_ENABLE_EXCEPTIONS OFF CACHE BOOL "")

diff  --git a/libcxx/test/std/language.support/cmp/cmp.alg/strong_order_long_double.verify.cpp b/libcxx/test/std/language.support/cmp/cmp.alg/strong_order_long_double.verify.cpp
index b35a50e0a5894..3d777d9d81b60 100644
--- a/libcxx/test/std/language.support/cmp/cmp.alg/strong_order_long_double.verify.cpp
+++ b/libcxx/test/std/language.support/cmp/cmp.alg/strong_order_long_double.verify.cpp
@@ -10,7 +10,8 @@
 // UNSUPPORTED: libcpp-no-concepts
 
 // The following platforms have sizeof(long double) == sizeof(double), so this test doesn't apply to them.
-// UNSUPPORTED: target={{arm64|armv8|armv7|armv7m|powerpc|powerpc64}}-{{.+}}
+// This test does apply to aarch64 where Arm's AAPCS64 is followed. There they are 
diff erent sizes.
+// UNSUPPORTED: target={{arm64|armv(7|8)(l|m)?|powerpc|powerpc64}}-{{.+}}
 // UNSUPPORTED: target=x86_64-pc-windows-{{.+}}
 
 // <compare>


        


More information about the libcxx-commits mailing list