diff --git a/.github/workflows/llvm-build.yml b/.github/workflows/llvm-build.yml index 2efb93f2bea6..9cca050e4904 100644 --- a/.github/workflows/llvm-build.yml +++ b/.github/workflows/llvm-build.yml @@ -157,8 +157,8 @@ jobs: cp -r /usr/aarch64-linux-gnu/lib ./arm-sysroot cp -r /usr/aarch64-linux-gnu/include ./arm-sysroot LINKER=$(pwd)/arm-sysroot/lib/ld-linux-aarch64.so.1 - wget http://ftp.de.debian.org/debian/pool/main/g/gcc-defaults/gcc-aarch64-linux-gnu_14.1.0-2_amd64.deb - dpkg-deb -x gcc-aarch64-linux-gnu_14.1.0-2_amd64.deb ./arm-sysroot + wget http://ftp.de.debian.org/debian/pool/main/g/gcc-defaults/gcc-aarch64-linux-gnu_14.2.0-1_amd64.deb + dpkg-deb -x gcc-aarch64-linux-gnu_14.2.0-1_amd64.deb ./arm-sysroot export LD_LIBRARY_PATH=$(pwd)/arm-sysroot/lib:$LD_LIBRARY_PATH sudo ln -s $LINKER /lib/ld-linux-aarch64.so.1 SYSROOT="$(pwd)/arm-sysroot" diff --git a/cmake/llvm-hash.txt b/cmake/llvm-hash.txt index 454a94e1f4cb..b000a3129912 100644 --- a/cmake/llvm-hash.txt +++ b/cmake/llvm-hash.txt @@ -1 +1 @@ -61f8a7f618901797ee8663389a29722f29216a96 +b5cc222d7429fe6f18c787f633d5262fac2e676f diff --git a/lib/Analysis/AxisInfo.cpp b/lib/Analysis/AxisInfo.cpp index d95d436725e1..eb29b0c63307 100644 --- a/lib/Analysis/AxisInfo.cpp +++ b/lib/Analysis/AxisInfo.cpp @@ -1084,8 +1084,9 @@ LogicalResult AxisInfoAnalysis::visitOperation( void AxisInfoAnalysis::visitForOpInductionVar( scf::ForOp op, ArrayRef *> argLattices) { - auto lb = getLatticeElementFor(op, op.getLowerBound())->getValue(); - auto step = getLatticeElementFor(op, op.getStep())->getValue(); + ProgramPoint programPoint(op); + auto lb = getLatticeElementFor(&programPoint, op.getLowerBound())->getValue(); + auto step = getLatticeElementFor(&programPoint, op.getStep())->getValue(); AxisInfo::DimVectorT knownContiguity(1, 1); AxisInfo::DimVectorT knownDivisibility(1, 1); diff --git a/lib/Analysis/Utility.cpp b/lib/Analysis/Utility.cpp index 030dd6710fe5..7b2f7a4f6d05 100644 --- a/lib/Analysis/Utility.cpp +++ b/lib/Analysis/Utility.cpp @@ -896,15 +896,16 @@ class ConstantAnalysis : public DataFlowAnalysis { LogicalResult initialize(Operation *top) override { WalkResult result = top->walk([&](Operation *op) { - if (failed(visit(op))) + ProgramPoint programPoint(op); + if (failed(visit(&programPoint))) return WalkResult::interrupt(); return WalkResult::advance(); }); return success(!result.wasInterrupted()); } - LogicalResult visit(ProgramPoint point) override { - Operation *op = point.get(); + LogicalResult visit(ProgramPoint *point) override { + Operation *op = point->getOperation(); Attribute value; if (matchPattern(op, m_Constant(&value))) { auto *constant = getOrCreate>( diff --git a/lib/Target/LLVMIR/LLVMDIScope.cpp b/lib/Target/LLVMIR/LLVMDIScope.cpp index 536b41126935..4aa9828cd5fc 100644 --- a/lib/Target/LLVMIR/LLVMDIScope.cpp +++ b/lib/Target/LLVMIR/LLVMDIScope.cpp @@ -104,7 +104,8 @@ struct LLVMDIScopePass : public LLVMDIScopeBase { auto subprogramAttr = LLVM::DISubprogramAttr::get( context, distinctId, compileUnitAttr, fileAttr, funcNameAttr, funcNameAttr, fileAttr, /*line=*/line, /*scopeline=*/line, - subprogramFlags, subroutineTypeAttr, /*retainNodes=*/{}); + subprogramFlags, subroutineTypeAttr, /*retainNodes=*/{}, + /*annotations=*/{}); funcOp->setLoc(FusedLoc::get(context, {loc}, subprogramAttr)); }