Skip to content

Commit abb140b

Browse files
gflegarchsigg
authored andcommitted
[BACKEND] Update LLVM version to llvm/llvm-project@7a33569 (triton-lang#7378)
1 parent d959b7f commit abb140b

File tree

4 files changed

+16
-8
lines changed

4 files changed

+16
-8
lines changed

cmake/llvm-hash.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
064f02dac0c81c19350a74415b3245f42fed09dc
1+
7a33569510535f0b917a2e50f644bf57490aee24

include/triton/Conversion/TritonGPUToLLVM/PatternTritonGPUOpToLLVM.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,8 @@ void populateSPMDOpToLLVMPattern(LLVMTypeConverter &typeConverter,
9595
void populateFuncOpConversionPattern(LLVMTypeConverter &typeConverter,
9696
RewritePatternSet &patterns,
9797
const TargetInfoBase &targetInfo,
98-
PatternBenefit benefit);
98+
PatternBenefit benefit,
99+
SymbolTableCollection *symbolTables);
99100

100101
void populatePrintOpToLLVMPattern(LLVMTypeConverter &typeConverter,
101102
RewritePatternSet &patterns,

lib/Conversion/TritonGPUToLLVM/FuncOpToLLVM.cpp

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,10 @@ using namespace mlir::triton;
2626

2727
struct FuncOpConversion : public ConvertOpToLLVMPattern<triton::FuncOp> {
2828
FuncOpConversion(LLVMTypeConverter &converter,
29-
const TargetInfoBase &targetInfo, PatternBenefit benefit)
30-
: ConvertOpToLLVMPattern(converter, benefit), targetInfo(targetInfo) {}
29+
const TargetInfoBase &targetInfo, PatternBenefit benefit,
30+
SymbolTableCollection *symbolTables)
31+
: ConvertOpToLLVMPattern(converter, benefit), targetInfo(targetInfo),
32+
symbolTables(symbolTables) {}
3133

3234
/// Only retain those attributes that are not constructed by
3335
/// `LLVMFuncOp::build`. If `filterArgAttrs` is set, also filter out argument
@@ -148,7 +150,7 @@ struct FuncOpConversion : public ConvertOpToLLVMPattern<triton::FuncOp> {
148150

149151
FailureOr<LLVM::LLVMFuncOp> maybeNewFuncOp =
150152
mlir::convertFuncOpToLLVMFuncOp(amendedFuncOp, rewriter,
151-
*getTypeConverter());
153+
*getTypeConverter(), symbolTables);
152154
if (failed(maybeNewFuncOp)) {
153155
return failure();
154156
}
@@ -198,12 +200,16 @@ struct FuncOpConversion : public ConvertOpToLLVMPattern<triton::FuncOp> {
198200

199201
private:
200202
const TargetInfoBase &targetInfo;
203+
// Store a pointer to the single, pass-wide symbol table
204+
SymbolTableCollection *symbolTables;
201205
};
202206

203207
} // namespace
204208

205209
void mlir::triton::populateFuncOpConversionPattern(
206210
LLVMTypeConverter &typeConverter, RewritePatternSet &patterns,
207-
const TargetInfoBase &targetInfo, PatternBenefit benefit) {
208-
patterns.add<FuncOpConversion>(typeConverter, targetInfo, benefit);
211+
const TargetInfoBase &targetInfo, PatternBenefit benefit,
212+
SymbolTableCollection *symbolTables) {
213+
patterns.add<FuncOpConversion>(typeConverter, targetInfo, benefit,
214+
symbolTables);
209215
}

third_party/amd/lib/TritonAMDGPUToLLVM/TritonGPUToLLVM.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,8 @@ struct ConvertTritonAMDGPUToLLVM
111111
TritonLLVMFunctionConversionTarget funcTarget(*context);
112112
RewritePatternSet funcPatterns(context);
113113
mlir::triton::populateFuncOpConversionPattern(
114-
typeConverter, funcPatterns, targetInfo, patternBenefitDefault);
114+
typeConverter, funcPatterns, targetInfo, patternBenefitDefault,
115+
/*symTable=*/nullptr);
115116
mlir::cf::populateControlFlowToLLVMConversionPatterns(typeConverter,
116117
funcPatterns);
117118
if (failed(

0 commit comments

Comments
 (0)