Skip to content

Commit 185299e

Browse files
authored
Upgrading LLVM to pick up the following changes for AMD backend: * llvm/llvm-project#112237 Changes made: - changed the signature of `visit` method in `ConstantAnalysis` - i.e., accepts an instance of the `ProgramPoint`. - updated calls to `getLatticeElementFor` -i.e., accepts an instance of the `ProgramPoint`. - added the required last parameter to `LLVM::DISubprogramAttr::get` - i.e., an empty `annotations`.
1 parent d207894 commit 185299e

File tree

5 files changed

+12
-9
lines changed

5 files changed

+12
-9
lines changed

.github/workflows/llvm-build.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,8 +157,8 @@ jobs:
157157
cp -r /usr/aarch64-linux-gnu/lib ./arm-sysroot
158158
cp -r /usr/aarch64-linux-gnu/include ./arm-sysroot
159159
LINKER=$(pwd)/arm-sysroot/lib/ld-linux-aarch64.so.1
160-
wget http://ftp.de.debian.org/debian/pool/main/g/gcc-defaults/gcc-aarch64-linux-gnu_14.1.0-2_amd64.deb
161-
dpkg-deb -x gcc-aarch64-linux-gnu_14.1.0-2_amd64.deb ./arm-sysroot
160+
wget http://ftp.de.debian.org/debian/pool/main/g/gcc-defaults/gcc-aarch64-linux-gnu_14.2.0-1_amd64.deb
161+
dpkg-deb -x gcc-aarch64-linux-gnu_14.2.0-1_amd64.deb ./arm-sysroot
162162
export LD_LIBRARY_PATH=$(pwd)/arm-sysroot/lib:$LD_LIBRARY_PATH
163163
sudo ln -s $LINKER /lib/ld-linux-aarch64.so.1
164164
SYSROOT="$(pwd)/arm-sysroot"

cmake/llvm-hash.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
61f8a7f618901797ee8663389a29722f29216a96
1+
b5cc222d7429fe6f18c787f633d5262fac2e676f

lib/Analysis/AxisInfo.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1084,8 +1084,9 @@ LogicalResult AxisInfoAnalysis::visitOperation(
10841084

10851085
void AxisInfoAnalysis::visitForOpInductionVar(
10861086
scf::ForOp op, ArrayRef<dataflow::Lattice<AxisInfo> *> argLattices) {
1087-
auto lb = getLatticeElementFor(op, op.getLowerBound())->getValue();
1088-
auto step = getLatticeElementFor(op, op.getStep())->getValue();
1087+
ProgramPoint programPoint(op);
1088+
auto lb = getLatticeElementFor(&programPoint, op.getLowerBound())->getValue();
1089+
auto step = getLatticeElementFor(&programPoint, op.getStep())->getValue();
10891090

10901091
AxisInfo::DimVectorT knownContiguity(1, 1);
10911092
AxisInfo::DimVectorT knownDivisibility(1, 1);

lib/Analysis/Utility.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -896,15 +896,16 @@ class ConstantAnalysis : public DataFlowAnalysis {
896896

897897
LogicalResult initialize(Operation *top) override {
898898
WalkResult result = top->walk([&](Operation *op) {
899-
if (failed(visit(op)))
899+
ProgramPoint programPoint(op);
900+
if (failed(visit(&programPoint)))
900901
return WalkResult::interrupt();
901902
return WalkResult::advance();
902903
});
903904
return success(!result.wasInterrupted());
904905
}
905906

906-
LogicalResult visit(ProgramPoint point) override {
907-
Operation *op = point.get<Operation *>();
907+
LogicalResult visit(ProgramPoint *point) override {
908+
Operation *op = point->getOperation();
908909
Attribute value;
909910
if (matchPattern(op, m_Constant(&value))) {
910911
auto *constant = getOrCreate<dataflow::Lattice<dataflow::ConstantValue>>(

lib/Target/LLVMIR/LLVMDIScope.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,8 @@ struct LLVMDIScopePass : public LLVMDIScopeBase<LLVMDIScopePass> {
104104
auto subprogramAttr = LLVM::DISubprogramAttr::get(
105105
context, distinctId, compileUnitAttr, fileAttr, funcNameAttr,
106106
funcNameAttr, fileAttr, /*line=*/line, /*scopeline=*/line,
107-
subprogramFlags, subroutineTypeAttr, /*retainNodes=*/{});
107+
subprogramFlags, subroutineTypeAttr, /*retainNodes=*/{},
108+
/*annotations=*/{});
108109
funcOp->setLoc(FusedLoc::get(context, {loc}, subprogramAttr));
109110
}
110111

0 commit comments

Comments
 (0)