Skip to content

Commit 756ea0f

Browse files
SC llvm teamSC llvm team
authored andcommitted
Merged main:b0b8e83e668a into amd-gfx:b9f9dea74514
Local branch amd-gfx b9f9dea Merged main:675231eb09ca into amd-gfx:a6e32de5b204 Remote branch main b0b8e83 [mlir] Fix use-after-free bugs in {RankedTensorType|VectorType}::Builder (llvm#68969)
2 parents b9f9dea + b0b8e83 commit 756ea0f

File tree

156 files changed

+9461
-4437
lines changed

Some content is hidden

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

156 files changed

+9461
-4437
lines changed

bolt/test/X86/checkvma-large-section.test

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ ProgramHeaders:
1919
Flags: [ PF_R, PF_W ]
2020
FirstSec: .large_sec
2121
LastSec: .large_sec
22-
VAddr: 0x4a0279a8
22+
VAddr: 0x80000000
2323
- Type: PT_GNU_RELRO
2424
Flags: [ PF_R ]
2525
Sections:
@@ -28,8 +28,8 @@ Sections:
2828
Content: 00
2929
AddressAlign: 0x1
3030
- Name: .large_sec
31-
Type: SHT_PROGBITS
31+
Type: SHT_NOBITS
3232
Flags: [ SHF_WRITE, SHF_ALLOC ]
33-
Address: 0x4a0279a8
34-
Size: 0xdf8bb1a0
33+
Address: 0x80000000
34+
Size: 0x80000000
3535
...

clang/include/clang/Basic/TargetOptions.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ class TargetOptions {
8383
enum CodeObjectVersionKind {
8484
COV_None,
8585
COV_2 = 200, // Unsupported.
86-
COV_3 = 300, // Unsupported.
86+
COV_3 = 300,
8787
COV_4 = 400,
8888
COV_5 = 500,
8989
};

clang/include/clang/Driver/Options.td

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4682,9 +4682,9 @@ defm amdgpu_ieee : BoolOption<"m", "amdgpu-ieee",
46824682
def mcode_object_version_EQ : Joined<["-"], "mcode-object-version=">, Group<m_Group>,
46834683
HelpText<"Specify code object ABI version. Defaults to 4. (AMDGPU only)">,
46844684
Visibility<[ClangOption, CC1Option]>,
4685-
Values<"none,4,5">,
4685+
Values<"none,3,4,5">,
46864686
NormalizedValuesScope<"TargetOptions">,
4687-
NormalizedValues<["COV_None", "COV_4", "COV_5"]>,
4687+
NormalizedValues<["COV_None", "COV_3", "COV_4", "COV_5"]>,
46884688
MarshallingInfoEnum<TargetOpts<"CodeObjectVersion">, "COV_4">;
46894689

46904690
defm cumode : SimpleMFlag<"cumode",

clang/lib/AST/Interp/IntegralAP.h

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ namespace interp {
2929
using APInt = llvm::APInt;
3030
using APSInt = llvm::APSInt;
3131
template <unsigned Bits, bool Signed> class Integral;
32-
class Boolean;
3332

3433
template <bool Signed> class IntegralAP final {
3534
private:
@@ -104,10 +103,6 @@ template <bool Signed> class IntegralAP final {
104103
assert(Copy.isSigned() == Signed);
105104
return IntegralAP<Signed>(Copy);
106105
}
107-
static IntegralAP from(const Boolean &B) {
108-
assert(false);
109-
return IntegralAP::zero();
110-
}
111106

112107
static IntegralAP zero() {
113108
assert(false);

clang/lib/Driver/ToolChains/CommonArgs.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2338,7 +2338,7 @@ getAMDGPUCodeObjectArgument(const Driver &D, const llvm::opt::ArgList &Args) {
23382338

23392339
void tools::checkAMDGPUCodeObjectVersion(const Driver &D,
23402340
const llvm::opt::ArgList &Args) {
2341-
const unsigned MinCodeObjVer = 4;
2341+
const unsigned MinCodeObjVer = 3;
23422342
const unsigned MaxCodeObjVer = 5;
23432343

23442344
if (auto *CodeObjArg = getAMDGPUCodeObjectArgument(D, Args)) {

clang/lib/Sema/SemaTemplateInstantiate.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2662,7 +2662,9 @@ TypeSourceInfo *Sema::SubstFunctionDeclType(TypeSourceInfo *T,
26622662
} else {
26632663
Result = Instantiator.TransformType(TLB, TL);
26642664
}
2665-
if (Result.isNull())
2665+
// When there are errors resolving types, clang may use IntTy as a fallback,
2666+
// breaking our assumption that function declarations have function types.
2667+
if (Result.isNull() || !Result->isFunctionType())
26662668
return nullptr;
26672669

26682670
return TLB.getTypeSourceInfo(Context, Result);

clang/test/AST/Interp/intap.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,9 @@ namespace i128 {
4242
// ref-note {{outside the range}}
4343
constexpr int128_t Two = (int128_t)1 << 1ul;
4444
static_assert(Two == 2, "");
45+
static_assert(Two, "");
46+
constexpr bool CastedToBool = Two;
47+
static_assert(CastedToBool, "");
4548

4649
constexpr uint128_t AllOnes = ~static_cast<uint128_t>(0);
4750
static_assert(AllOnes == UINT128_MAX, "");

clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_add-i32.c

Lines changed: 123 additions & 56 deletions
Large diffs are not rendered by default.

clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_add-i64.c

Lines changed: 123 additions & 56 deletions
Large diffs are not rendered by default.
Lines changed: 47 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,73 @@
1+
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py UTC_ARGS: --version 3
12
// REQUIRES: aarch64-registered-target
23
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sme -target-feature +sve -S -O1 -Werror -emit-llvm -o - %s | FileCheck %s -check-prefixes=CHECK,CHECK-C
34
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sme -target-feature +sve -S -O1 -Werror -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefixes=CHECK,CHECK-CXX
45
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sme -target-feature +sve -S -O1 -Werror -o /dev/null %s
56

67
#include <arm_sme_draft_spec_subject_to_change.h>
78

8-
// CHECK-C-LABEL: @test_svcntsb(
9-
// CHECK-CXX-LABEL: @_Z12test_svcntsbv(
10-
// CHECK-NEXT: entry:
11-
// CHECK-NEXT: [[TMP0:%.*]] = tail call i64 @llvm.aarch64.sme.cntsb()
12-
// CHECK-NEXT: ret i64 [[TMP0]]
9+
// CHECK-C-LABEL: define dso_local i64 @test_svcntsb(
10+
// CHECK-C-SAME: ) local_unnamed_addr #[[ATTR0:[0-9]+]] {
11+
// CHECK-C-NEXT: entry:
12+
// CHECK-C-NEXT: [[TMP0:%.*]] = tail call i64 @llvm.aarch64.sme.cntsb()
13+
// CHECK-C-NEXT: ret i64 [[TMP0]]
14+
//
15+
// CHECK-CXX-LABEL: define dso_local noundef i64 @_Z12test_svcntsbv(
16+
// CHECK-CXX-SAME: ) local_unnamed_addr #[[ATTR0:[0-9]+]] {
17+
// CHECK-CXX-NEXT: entry:
18+
// CHECK-CXX-NEXT: [[TMP0:%.*]] = tail call i64 @llvm.aarch64.sme.cntsb()
19+
// CHECK-CXX-NEXT: ret i64 [[TMP0]]
1320
//
1421
uint64_t test_svcntsb() {
1522
return svcntsb();
1623
}
1724

18-
// CHECK-C-LABEL: @test_svcntsh(
19-
// CHECK-CXX-LABEL: @_Z12test_svcntshv(
20-
// CHECK-NEXT: entry:
21-
// CHECK-NEXT: [[TMP0:%.*]] = tail call i64 @llvm.aarch64.sme.cntsh()
22-
// CHECK-NEXT: ret i64 [[TMP0]]
25+
// CHECK-C-LABEL: define dso_local i64 @test_svcntsh(
26+
// CHECK-C-SAME: ) local_unnamed_addr #[[ATTR0]] {
27+
// CHECK-C-NEXT: entry:
28+
// CHECK-C-NEXT: [[TMP0:%.*]] = tail call i64 @llvm.aarch64.sme.cntsh()
29+
// CHECK-C-NEXT: ret i64 [[TMP0]]
30+
//
31+
// CHECK-CXX-LABEL: define dso_local noundef i64 @_Z12test_svcntshv(
32+
// CHECK-CXX-SAME: ) local_unnamed_addr #[[ATTR0]] {
33+
// CHECK-CXX-NEXT: entry:
34+
// CHECK-CXX-NEXT: [[TMP0:%.*]] = tail call i64 @llvm.aarch64.sme.cntsh()
35+
// CHECK-CXX-NEXT: ret i64 [[TMP0]]
2336
//
2437
uint64_t test_svcntsh() {
2538
return svcntsh();
2639
}
2740

28-
// CHECK-C-LABEL: @test_svcntsw(
29-
// CHECK-CXX-LABEL: @_Z12test_svcntswv(
30-
// CHECK-NEXT: entry:
31-
// CHECK-NEXT: [[TMP0:%.*]] = tail call i64 @llvm.aarch64.sme.cntsw()
32-
// CHECK-NEXT: ret i64 [[TMP0]]
41+
// CHECK-C-LABEL: define dso_local i64 @test_svcntsw(
42+
// CHECK-C-SAME: ) local_unnamed_addr #[[ATTR0]] {
43+
// CHECK-C-NEXT: entry:
44+
// CHECK-C-NEXT: [[TMP0:%.*]] = tail call i64 @llvm.aarch64.sme.cntsw()
45+
// CHECK-C-NEXT: ret i64 [[TMP0]]
46+
//
47+
// CHECK-CXX-LABEL: define dso_local noundef i64 @_Z12test_svcntswv(
48+
// CHECK-CXX-SAME: ) local_unnamed_addr #[[ATTR0]] {
49+
// CHECK-CXX-NEXT: entry:
50+
// CHECK-CXX-NEXT: [[TMP0:%.*]] = tail call i64 @llvm.aarch64.sme.cntsw()
51+
// CHECK-CXX-NEXT: ret i64 [[TMP0]]
3352
//
3453
uint64_t test_svcntsw() {
3554
return svcntsw();
3655
}
3756

38-
// CHECK-C-LABEL: @test_svcntsd(
39-
// CHECK-CXX-LABEL: @_Z12test_svcntsdv(
40-
// CHECK-NEXT: entry:
41-
// CHECK-NEXT: [[TMP0:%.*]] = tail call i64 @llvm.aarch64.sme.cntsd()
42-
// CHECK-NEXT: ret i64 [[TMP0]]
57+
// CHECK-C-LABEL: define dso_local i64 @test_svcntsd(
58+
// CHECK-C-SAME: ) local_unnamed_addr #[[ATTR0]] {
59+
// CHECK-C-NEXT: entry:
60+
// CHECK-C-NEXT: [[TMP0:%.*]] = tail call i64 @llvm.aarch64.sme.cntsd()
61+
// CHECK-C-NEXT: ret i64 [[TMP0]]
62+
//
63+
// CHECK-CXX-LABEL: define dso_local noundef i64 @_Z12test_svcntsdv(
64+
// CHECK-CXX-SAME: ) local_unnamed_addr #[[ATTR0]] {
65+
// CHECK-CXX-NEXT: entry:
66+
// CHECK-CXX-NEXT: [[TMP0:%.*]] = tail call i64 @llvm.aarch64.sme.cntsd()
67+
// CHECK-CXX-NEXT: ret i64 [[TMP0]]
4368
//
4469
uint64_t test_svcntsd() {
4570
return svcntsd();
4671
}
72+
//// NOTE: These prefixes are unused and the list is autogenerated. Do not add tests below this line:
73+
// CHECK: {{.*}}

0 commit comments

Comments
 (0)