Skip to content

Commit 2dde234

Browse files
authored
merge main into amd-staging (llvm#2641)
2 parents f053c8b + 6aa19ef commit 2dde234

File tree

51 files changed

+153
-217
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+153
-217
lines changed

clang/test/Driver/print-enabled-extensions/riscv-andes-a25.c

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
// CHECK-NEXT: f 2.2 'F' (Single-Precision Floating-Point)
1111
// CHECK-NEXT: d 2.2 'D' (Double-Precision Floating-Point)
1212
// CHECK-NEXT: c 2.0 'C' (Compressed Instructions)
13-
// CHECK-NEXT: b 1.0 'B' (the collection of the Zba, Zbb, Zbs extensions)
1413
// CHECK-NEXT: zicsr 2.0 'Zicsr' (CSRs)
1514
// CHECK-NEXT: zifencei 2.0 'Zifencei' (fence.i)
1615
// CHECK-NEXT: zmmul 1.0 'Zmmul' (Integer Multiplication)
@@ -19,12 +18,8 @@
1918
// CHECK-NEXT: zca 1.0 'Zca' (part of the C extension, excluding compressed floating point loads/stores)
2019
// CHECK-NEXT: zcd 1.0 'Zcd' (Compressed Double-Precision Floating-Point Instructions)
2120
// CHECK-NEXT: zcf 1.0 'Zcf' (Compressed Single-Precision Floating-Point Instructions)
22-
// CHECK-NEXT: zba 1.0 'Zba' (Address Generation Instructions)
23-
// CHECK-NEXT: zbb 1.0 'Zbb' (Basic Bit-Manipulation)
24-
// CHECK-NEXT: zbc 1.0 'Zbc' (Carry-Less Multiplication)
25-
// CHECK-NEXT: zbs 1.0 'Zbs' (Single-Bit Instructions)
2621
// CHECK-NEXT: xandesperf 5.0 'XAndesPerf' (Andes Performance Extension)
2722
// CHECK-EMPTY:
2823
// CHECK-NEXT: Experimental extensions
2924
// CHECK-EMPTY:
30-
// CHECK-NEXT: ISA String: rv32i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_b1p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_zcf1p0_zba1p0_zbb1p0_zbc1p0_zbs1p0_xandesperf5p0
25+
// CHECK-NEXT: ISA String: rv32i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_zcf1p0_xandesperf5p0

clang/test/Driver/print-enabled-extensions/riscv-andes-a45.c

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
// CHECK-NEXT: f 2.2 'F' (Single-Precision Floating-Point)
1111
// CHECK-NEXT: d 2.2 'D' (Double-Precision Floating-Point)
1212
// CHECK-NEXT: c 2.0 'C' (Compressed Instructions)
13-
// CHECK-NEXT: b 1.0 'B' (the collection of the Zba, Zbb, Zbs extensions)
1413
// CHECK-NEXT: zicsr 2.0 'Zicsr' (CSRs)
1514
// CHECK-NEXT: zifencei 2.0 'Zifencei' (fence.i)
1615
// CHECK-NEXT: zmmul 1.0 'Zmmul' (Integer Multiplication)
@@ -19,11 +18,8 @@
1918
// CHECK-NEXT: zca 1.0 'Zca' (part of the C extension, excluding compressed floating point loads/stores)
2019
// CHECK-NEXT: zcd 1.0 'Zcd' (Compressed Double-Precision Floating-Point Instructions)
2120
// CHECK-NEXT: zcf 1.0 'Zcf' (Compressed Single-Precision Floating-Point Instructions)
22-
// CHECK-NEXT: zba 1.0 'Zba' (Address Generation Instructions)
23-
// CHECK-NEXT: zbb 1.0 'Zbb' (Basic Bit-Manipulation)
24-
// CHECK-NEXT: zbs 1.0 'Zbs' (Single-Bit Instructions)
2521
// CHECK-NEXT: xandesperf 5.0 'XAndesPerf' (Andes Performance Extension)
2622
// CHECK-EMPTY:
2723
// CHECK-NEXT: Experimental extensions
2824
// CHECK-EMPTY:
29-
// CHECK-NEXT: ISA String: rv32i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_b1p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_zcf1p0_zba1p0_zbb1p0_zbs1p0_xandesperf5p0
25+
// CHECK-NEXT: ISA String: rv32i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_zcf1p0_xandesperf5p0

clang/test/Driver/print-enabled-extensions/riscv-andes-ax25.c

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,15 @@
1010
// CHECK-NEXT: f 2.2 'F' (Single-Precision Floating-Point)
1111
// CHECK-NEXT: d 2.2 'D' (Double-Precision Floating-Point)
1212
// CHECK-NEXT: c 2.0 'C' (Compressed Instructions)
13-
// CHECK-NEXT: b 1.0 'B' (the collection of the Zba, Zbb, Zbs extensions)
1413
// CHECK-NEXT: zicsr 2.0 'Zicsr' (CSRs)
1514
// CHECK-NEXT: zifencei 2.0 'Zifencei' (fence.i)
1615
// CHECK-NEXT: zmmul 1.0 'Zmmul' (Integer Multiplication)
1716
// CHECK-NEXT: zaamo 1.0 'Zaamo' (Atomic Memory Operations)
1817
// CHECK-NEXT: zalrsc 1.0 'Zalrsc' (Load-Reserved/Store-Conditional)
1918
// CHECK-NEXT: zca 1.0 'Zca' (part of the C extension, excluding compressed floating point loads/stores)
2019
// CHECK-NEXT: zcd 1.0 'Zcd' (Compressed Double-Precision Floating-Point Instructions)
21-
// CHECK-NEXT: zba 1.0 'Zba' (Address Generation Instructions)
22-
// CHECK-NEXT: zbb 1.0 'Zbb' (Basic Bit-Manipulation)
23-
// CHECK-NEXT: zbc 1.0 'Zbc' (Carry-Less Multiplication)
24-
// CHECK-NEXT: zbs 1.0 'Zbs' (Single-Bit Instructions)
2520
// CHECK-NEXT: xandesperf 5.0 'XAndesPerf' (Andes Performance Extension)
2621
// CHECK-EMPTY:
2722
// CHECK-NEXT: Experimental extensions
2823
// CHECK-EMPTY:
29-
// CHECK-NEXT: ISA String: rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_b1p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_zba1p0_zbb1p0_zbc1p0_zbs1p0_xandesperf5p0
24+
// CHECK-NEXT: ISA String: rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_xandesperf5p0

clang/test/Driver/print-enabled-extensions/riscv-andes-ax45.c

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,15 @@
1010
// CHECK-NEXT: f 2.2 'F' (Single-Precision Floating-Point)
1111
// CHECK-NEXT: d 2.2 'D' (Double-Precision Floating-Point)
1212
// CHECK-NEXT: c 2.0 'C' (Compressed Instructions)
13-
// CHECK-NEXT: b 1.0 'B' (the collection of the Zba, Zbb, Zbs extensions)
1413
// CHECK-NEXT: zicsr 2.0 'Zicsr' (CSRs)
1514
// CHECK-NEXT: zifencei 2.0 'Zifencei' (fence.i)
1615
// CHECK-NEXT: zmmul 1.0 'Zmmul' (Integer Multiplication)
1716
// CHECK-NEXT: zaamo 1.0 'Zaamo' (Atomic Memory Operations)
1817
// CHECK-NEXT: zalrsc 1.0 'Zalrsc' (Load-Reserved/Store-Conditional)
1918
// CHECK-NEXT: zca 1.0 'Zca' (part of the C extension, excluding compressed floating point loads/stores)
2019
// CHECK-NEXT: zcd 1.0 'Zcd' (Compressed Double-Precision Floating-Point Instructions)
21-
// CHECK-NEXT: zba 1.0 'Zba' (Address Generation Instructions)
22-
// CHECK-NEXT: zbb 1.0 'Zbb' (Basic Bit-Manipulation)
23-
// CHECK-NEXT: zbs 1.0 'Zbs' (Single-Bit Instructions)
2420
// CHECK-NEXT: xandesperf 5.0 'XAndesPerf' (Andes Performance Extension)
2521
// CHECK-EMPTY:
2622
// CHECK-NEXT: Experimental extensions
2723
// CHECK-EMPTY:
28-
// CHECK-NEXT: ISA String: rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_b1p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_zba1p0_zbb1p0_zbs1p0_xandesperf5p0
24+
// CHECK-NEXT: ISA String: rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_xandesperf5p0

clang/test/Driver/print-enabled-extensions/riscv-andes-n45.c

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
// CHECK-NEXT: f 2.2 'F' (Single-Precision Floating-Point)
1111
// CHECK-NEXT: d 2.2 'D' (Double-Precision Floating-Point)
1212
// CHECK-NEXT: c 2.0 'C' (Compressed Instructions)
13-
// CHECK-NEXT: b 1.0 'B' (the collection of the Zba, Zbb, Zbs extensions)
1413
// CHECK-NEXT: zicsr 2.0 'Zicsr' (CSRs)
1514
// CHECK-NEXT: zifencei 2.0 'Zifencei' (fence.i)
1615
// CHECK-NEXT: zmmul 1.0 'Zmmul' (Integer Multiplication)
@@ -19,11 +18,8 @@
1918
// CHECK-NEXT: zca 1.0 'Zca' (part of the C extension, excluding compressed floating point loads/stores)
2019
// CHECK-NEXT: zcd 1.0 'Zcd' (Compressed Double-Precision Floating-Point Instructions)
2120
// CHECK-NEXT: zcf 1.0 'Zcf' (Compressed Single-Precision Floating-Point Instructions)
22-
// CHECK-NEXT: zba 1.0 'Zba' (Address Generation Instructions)
23-
// CHECK-NEXT: zbb 1.0 'Zbb' (Basic Bit-Manipulation)
24-
// CHECK-NEXT: zbs 1.0 'Zbs' (Single-Bit Instructions)
2521
// CHECK-NEXT: xandesperf 5.0 'XAndesPerf' (Andes Performance Extension)
2622
// CHECK-EMPTY:
2723
// CHECK-NEXT: Experimental extensions
2824
// CHECK-EMPTY:
29-
// CHECK-NEXT: ISA String: rv32i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_b1p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_zcf1p0_zba1p0_zbb1p0_zbs1p0_xandesperf5p0
25+
// CHECK-NEXT: ISA String: rv32i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_zcf1p0_xandesperf5p0

clang/test/Driver/print-enabled-extensions/riscv-andes-nx45.c

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,15 @@
1010
// CHECK-NEXT: f 2.2 'F' (Single-Precision Floating-Point)
1111
// CHECK-NEXT: d 2.2 'D' (Double-Precision Floating-Point)
1212
// CHECK-NEXT: c 2.0 'C' (Compressed Instructions)
13-
// CHECK-NEXT: b 1.0 'B' (the collection of the Zba, Zbb, Zbs extensions)
1413
// CHECK-NEXT: zicsr 2.0 'Zicsr' (CSRs)
1514
// CHECK-NEXT: zifencei 2.0 'Zifencei' (fence.i)
1615
// CHECK-NEXT: zmmul 1.0 'Zmmul' (Integer Multiplication)
1716
// CHECK-NEXT: zaamo 1.0 'Zaamo' (Atomic Memory Operations)
1817
// CHECK-NEXT: zalrsc 1.0 'Zalrsc' (Load-Reserved/Store-Conditional)
1918
// CHECK-NEXT: zca 1.0 'Zca' (part of the C extension, excluding compressed floating point loads/stores)
2019
// CHECK-NEXT: zcd 1.0 'Zcd' (Compressed Double-Precision Floating-Point Instructions)
21-
// CHECK-NEXT: zba 1.0 'Zba' (Address Generation Instructions)
22-
// CHECK-NEXT: zbb 1.0 'Zbb' (Basic Bit-Manipulation)
23-
// CHECK-NEXT: zbs 1.0 'Zbs' (Single-Bit Instructions)
2420
// CHECK-NEXT: xandesperf 5.0 'XAndesPerf' (Andes Performance Extension)
2521
// CHECK-EMPTY:
2622
// CHECK-NEXT: Experimental extensions
2723
// CHECK-EMPTY:
28-
// CHECK-NEXT: ISA String: rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_b1p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_zba1p0_zbb1p0_zbs1p0_xandesperf5p0
24+
// CHECK-NEXT: ISA String: rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_xandesperf5p0

libcxx/docs/Status/Cxx2cPapers.csv

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
"`P2248R8 <https://wg21.link/P2248R8>`__","Enabling list-initialization for algorithms","2024-03 (Tokyo)","","",""
6060
"`P2810R4 <https://wg21.link/P2810R4>`__","``is_debugger_present`` ``is_replaceable``","2024-03 (Tokyo)","","",""
6161
"`P1068R11 <https://wg21.link/P1068R11>`__","Vector API for random number generation","2024-03 (Tokyo)","","",""
62-
"`P2944R3 <https://wg21.link/P2944R3>`__","Comparisons for ``reference_wrapper``","2024-03 (Tokyo)","|Partial|","","Implemented changes to ``reference_wrapper`` and ``pair``"
62+
"`P2944R3 <https://wg21.link/P2944R3>`__","Comparisons for ``reference_wrapper``","2024-03 (Tokyo)","|Partial|","","The changes to ``optional``, ``tuple`` and ``variant`` are not yet implemented"
6363
"`P2642R6 <https://wg21.link/P2642R6>`__","Padded ``mdspan`` layouts","2024-03 (Tokyo)","","",""
6464
"`P3029R1 <https://wg21.link/P3029R1>`__","Better ``mdspan``'s CTAD","2024-03 (Tokyo)","|Complete|","19",""
6565
"","","","","",""

libcxx/include/__functional/reference_wrapper.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@
1111
#define _LIBCPP___FUNCTIONAL_REFERENCE_WRAPPER_H
1212

1313
#include <__compare/synth_three_way.h>
14-
#include <__concepts/boolean_testable.h>
1514
#include <__config>
1615
#include <__functional/weak_result_type.h>
1716
#include <__memory/addressof.h>
1817
#include <__type_traits/desugars_to.h>
1918
#include <__type_traits/enable_if.h>
2019
#include <__type_traits/invoke.h>
2120
#include <__type_traits/is_const.h>
21+
#include <__type_traits/is_core_convertible.h>
2222
#include <__type_traits/remove_cvref.h>
2323
#include <__type_traits/void_t.h>
2424
#include <__utility/declval.h>
@@ -75,23 +75,23 @@ class reference_wrapper : public __weak_result_type<_Tp> {
7575

7676
_LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(reference_wrapper __x, reference_wrapper __y)
7777
requires requires {
78-
{ __x.get() == __y.get() } -> __boolean_testable;
78+
{ __x.get() == __y.get() } -> __core_convertible_to<bool>;
7979
}
8080
{
8181
return __x.get() == __y.get();
8282
}
8383

8484
_LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(reference_wrapper __x, const _Tp& __y)
8585
requires requires {
86-
{ __x.get() == __y } -> __boolean_testable;
86+
{ __x.get() == __y } -> __core_convertible_to<bool>;
8787
}
8888
{
8989
return __x.get() == __y;
9090
}
9191

9292
_LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(reference_wrapper __x, reference_wrapper<const _Tp> __y)
9393
requires(!is_const_v<_Tp>) && requires {
94-
{ __x.get() == __y.get() } -> __boolean_testable;
94+
{ __x.get() == __y.get() } -> __core_convertible_to<bool>;
9595
}
9696
{
9797
return __x.get() == __y.get();

libcxx/test/std/containers/sequences/array/compare.three_way.pass.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ constexpr std::size_t N{1};
2626
static_assert(std::three_way_comparable<std::array<int, N>>);
2727

2828
// Thanks to SFINAE, the following is not a compiler error but returns `false`
29-
struct NonComparable {};
3029
static_assert(!std::three_way_comparable<std::array<NonComparable, N>>);
3130

3231
// Implementation detail of `test_sequence_container_array_spaceship`

libcxx/test/std/utilities/function.objects/refwrap/refwrap.comparissons/compare.three_way.refwrap.const_ref.pass.cpp

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9-
// UNSUPPORTED: c++03, c++11, c++14, c++17, c++20, c++23
9+
// REQUIRES: std-at-least-c++26
1010

1111
// <functional>
1212

@@ -23,16 +23,13 @@
2323
#include "test_comparisons.h"
2424
#include "test_macros.h"
2525

26-
#include "helper_concepts.h"
27-
#include "helper_types.h"
28-
2926
// Test SFINAE.
3027

31-
static_assert(HasSpaceshipOperatorWithInt<std::reference_wrapper<StrongOrder>>);
32-
static_assert(HasSpaceshipOperatorWithInt<std::reference_wrapper<WeakOrder>>);
33-
static_assert(HasSpaceshipOperatorWithInt<std::reference_wrapper<PartialOrder>>);
28+
static_assert(HasOperatorSpaceship<std::reference_wrapper<StrongOrder>, int>);
29+
static_assert(HasOperatorSpaceship<std::reference_wrapper<WeakOrder>, int>);
30+
static_assert(HasOperatorSpaceship<std::reference_wrapper<PartialOrder>, int>);
3431

35-
static_assert(!HasSpaceshipOperatorWithInt<std::reference_wrapper<NonComparable>>);
32+
static_assert(!HasOperatorSpaceship<std::reference_wrapper<NonComparable>, int>);
3633

3734
// Test comparisons.
3835

0 commit comments

Comments
 (0)