Skip to content

Commit 71157ae

Browse files
SC llvm teamSC llvm team
authored andcommitted
Merged main:5bd1b93cb220 into amd-gfx:18b1fa897044
Local branch amd-gfx 18b1fa8 Merged main:455bf3d1ccd6 into amd-gfx:c7691189ce5b Remote branch main 5bd1b93 Move CallInst::CreateFree to IRBuilderBase
2 parents 18b1fa8 + 5bd1b93 commit 71157ae

File tree

1,299 files changed

+43848
-14506
lines changed

Some content is hidden

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

1,299 files changed

+43848
-14506
lines changed

.github/CODEOWNERS

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
/libcxx/ @llvm/reviewers-libcxx
2+
/libcxxabi/ @llvm/reviewers-libcxxabi
3+
/libunwind/ @llvm/reviewers-libunwind
4+
/runtimes/ @llvm/reviewers-libcxx

.github/new-issues-labeler.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
'new issue':
2-
- '/.*/'
3-
41
'clang':
52
- '/\bclang(?!\-)\b/i'
63

.github/new-prs-labeler.yml

Lines changed: 37 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -110,16 +110,26 @@ mlir:
110110
- mlir/**
111111

112112
mlir:core:
113-
- mlir/**/Support/**
114-
- mlir/**/Parser/**
115-
- mlir/**/IR/**
116-
- mlir/**/Bytecode/**
117-
- mlir/**/AsmParser/**
118-
- mlir/**/Pass/**
119-
- mlir/**/tools/**
120-
- mlir/**/Reducer/**
121-
- mlir/**/Transforms/**
122-
- mlir/**/Debug/**
113+
- mlir/include/mlir/Support/**
114+
- mlir/lib/Support/**
115+
- mlir/include/mlir/Parser/**
116+
- mlir/lib/Parser/**
117+
- mlir/include/mlir/IR/**
118+
- mlir/lib/IR/**
119+
- mlir/include/mlir/Bytecode/**
120+
- mlir/lib/Bytecode/**
121+
- mlir/include/mlir/AsmParser/**
122+
- mlir/lib/AsmParser/**
123+
- mlir/include/mlir/Pass/**
124+
- mlir/lib/Pass/**
125+
- mlir/include/mlir/Tools/**
126+
- mlir/lib/Tools/**
127+
- mlir/include/mlir/Reducer/**
128+
- mlir/lib/Reducer/**
129+
- mlir/include/mlir/Transforms/**
130+
- mlir/lib/Transforms/**
131+
- mlir/include/mlir/Debug/**
132+
- mlir/lib/Debug/**
123133
- mlir/tools/**
124134

125135
mlir:ods:
@@ -300,7 +310,10 @@ vectorizers:
300310
- llvm/include/llvm/Transforms/Vectorize/**
301311

302312
clang:
303-
- clang/**
313+
- any:
314+
- clang/**
315+
- '!clang/**/Format/**'
316+
- '!clang/tools/clang-format/**'
304317

305318
testing-tools:
306319
- llvm/include/llvm/FileCheck/**
@@ -510,6 +523,12 @@ llvm:analysis:
510523
- llvm/test/Analysis/**
511524
- llvm/unittests/Analysis/**
512525

526+
llvm:adt:
527+
- llvm/**/ADT/*
528+
529+
llvm:support:
530+
- llvm/**/Support/**
531+
513532
llvm:transforms:
514533
- llvm/lib/Transforms/**
515534
- llvm/include/llvm/Transforms/**
@@ -554,6 +573,13 @@ backend:DirectX:
554573
- '**/*DXIL*/**'
555574
- '**/*dxil*/**'
556575

576+
backend:SPIR-V:
577+
- clang/lib/Driver/ToolChains/SPIRV.*
578+
- llvm/lib/Target/SPIRV/**
579+
- llvm/test/CodeGen/SPIRV/**
580+
- llvm/test/Frontend/HLSL/**
581+
- llvm/docs/SPIRVUsage.rst
582+
557583
mlgo:
558584
- llvm/lib/Analysis/ML*
559585
- llvm/include/llvm/Analysis/ML*

.github/workflows/new-issues.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
runs-on: ubuntu-latest
1414
if: github.repository == 'llvm/llvm-project'
1515
steps:
16-
- uses: github/issue-labeler@v3.2
16+
- uses: llvm/actions/issue-labeler@main
1717
with:
1818
repo-token: ${{ secrets.GITHUB_TOKEN }}
1919
configuration-path: .github/new-issues-labeler.yml

.github/workflows/pr-receive.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,12 @@ permissions:
1010
jobs:
1111
pr-target:
1212
runs-on: ubuntu-latest
13-
if: github.repository == 'llvm/llvm-project'
13+
# Ignore PRs with more than 10 commits. Pull requests with a lot of
14+
# commits tend to be accidents usually when someone made a mistake while trying
15+
# to rebase. We want to ignore these pull requests to avoid excessive
16+
# notifications.
17+
if: github.repository == 'llvm/llvm-project' &&
18+
github.event.pull_request.commits < 10
1419
steps:
1520
- name: Store PR Information
1621
run: |

bolt/include/bolt/Core/MCPlusBuilder.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -437,7 +437,7 @@ class MCPlusBuilder {
437437
virtual bool isUnsupportedBranch(const MCInst &Inst) const { return false; }
438438

439439
/// Return true of the instruction is of pseudo kind.
440-
bool isPseudo(const MCInst &Inst) const {
440+
virtual bool isPseudo(const MCInst &Inst) const {
441441
return Info->get(Inst.getOpcode()).isPseudo();
442442
}
443443

bolt/include/bolt/Passes/FixRISCVCallsPass.h

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,13 @@
66
//
77
//===----------------------------------------------------------------------===//
88
//
9-
// This file declares the FixRISCVCallsPass class, which sets the JALR immediate
10-
// to 0 for AUIPC/JALR pairs with a R_RISCV_CALL(_PLT) relocation. This is
11-
// necessary since MC expects it to be zero in order to or-in fixups.
9+
// This file declares the FixRISCVCallsPass class, which replaces all types of
10+
// calls with PseudoCALL pseudo instructions. This ensures that relaxed calls
11+
// get expanded to auipc/jalr pairs so that BOLT can freely reassign function
12+
// addresses without having to worry about the limited range of relaxed calls.
13+
// Using PseudoCALL also ensures that the RISC-V backend inserts the necessary
14+
// relaxation-related relocations to allow JITLink to relax instruction back to
15+
// shorter versions where possible.
1216
//===----------------------------------------------------------------------===//
1317

1418
#ifndef BOLT_PASSES_FIXRISCVCALLSPASS_H

bolt/lib/Core/BinaryContext.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ BinaryContext::createBinaryContext(const ObjectFile *File, bool IsPIC,
131131
case llvm::Triple::riscv64:
132132
ArchName = "riscv64";
133133
// RV64GC
134-
FeaturesStr = "+m,+a,+f,+d,+zicsr,+zifencei,+c";
134+
FeaturesStr = "+m,+a,+f,+d,+zicsr,+zifencei,+c,+relax";
135135
break;
136136
default:
137137
return createStringError(std::errc::not_supported,

bolt/lib/Core/BinaryFunction.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3156,6 +3156,10 @@ void BinaryFunction::dumpGraphToFile(std::string Filename) const {
31563156
}
31573157

31583158
bool BinaryFunction::validateCFG() const {
3159+
// Skip the validation of CFG after it is finalized
3160+
if (CurrentState == State::CFG_Finalized)
3161+
return true;
3162+
31593163
bool Valid = true;
31603164
for (BinaryBasicBlock *BB : BasicBlocks)
31613165
Valid &= BB->validateSuccessorInvariants();

bolt/lib/Core/Relocation.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -352,7 +352,7 @@ static uint64_t encodeValueAArch64(uint64_t Type, uint64_t Value, uint64_t PC) {
352352
assert(isInt<28>(Value) && "only PC +/- 128MB is allowed for direct call");
353353
// Immediate goes in bits 25:0 of BL.
354354
// OP 1001_01 goes in bits 31:26 of BL.
355-
Value = (Value >> 2) | 0x94000000ULL;
355+
Value = ((Value >> 2) & 0x3ffffff) | 0x94000000ULL;
356356
break;
357357
}
358358
return Value;

0 commit comments

Comments
 (0)