Skip to content

Commit 3c1e3e8

Browse files
gflegarkhasanovaa
authored andcommitted
[BACKEND] Update LLVM version to llvm/llvm-project@7a33569 (triton-lang#7378)
1 parent 0fcdedc commit 3c1e3e8

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-
f6ded0be897e2878612dd903f7e8bb85448269e5
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
@@ -150,7 +152,7 @@ struct FuncOpConversion : public ConvertOpToLLVMPattern<triton::FuncOp> {
150152

151153
FailureOr<LLVM::LLVMFuncOp> maybeNewFuncOp =
152154
mlir::convertFuncOpToLLVMFuncOp(amendedFuncOp, rewriter,
153-
*getTypeConverter());
155+
*getTypeConverter(), symbolTables);
154156
if (failed(maybeNewFuncOp)) {
155157
return failure();
156158
}
@@ -214,12 +216,16 @@ struct FuncOpConversion : public ConvertOpToLLVMPattern<triton::FuncOp> {
214216

215217
private:
216218
const TargetInfoBase &targetInfo;
219+
// Store a pointer to the single, pass-wide symbol table
220+
SymbolTableCollection *symbolTables;
217221
};
218222

219223
} // namespace
220224

221225
void mlir::triton::populateFuncOpConversionPattern(
222226
LLVMTypeConverter &typeConverter, RewritePatternSet &patterns,
223-
const TargetInfoBase &targetInfo, PatternBenefit benefit) {
224-
patterns.add<FuncOpConversion>(typeConverter, targetInfo, benefit);
227+
const TargetInfoBase &targetInfo, PatternBenefit benefit,
228+
SymbolTableCollection *symbolTables) {
229+
patterns.add<FuncOpConversion>(typeConverter, targetInfo, benefit,
230+
symbolTables);
225231
}

third_party/amd/lib/TritonAMDGPUToLLVM/TritonGPUToLLVM.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,8 @@ struct ConvertTritonAMDGPUToLLVM
133133
TritonLLVMFunctionConversionTarget funcTarget(*context);
134134
RewritePatternSet funcPatterns(context);
135135
mlir::triton::populateFuncOpConversionPattern(
136-
typeConverter, funcPatterns, targetInfo, patternBenefitDefault);
136+
typeConverter, funcPatterns, targetInfo, patternBenefitDefault,
137+
/*symTable=*/nullptr);
137138
mlir::cf::populateControlFlowToLLVMConversionPatterns(typeConverter,
138139
funcPatterns);
139140
if (failed(

0 commit comments

Comments
 (0)