Skip to content

Commit 8887213

Browse files
committed
Rename to ComplexToROCDLLibraryCalls
1 parent 0949d97 commit 8887213

File tree

10 files changed

+52
-48
lines changed

10 files changed

+52
-48
lines changed

flang/lib/Optimizer/CodeGen/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ add_flang_library(FIRCodeGen
3434

3535
MLIR_LIBS
3636
MLIRComplexToLLVM
37-
MLIRComplexToROCDL
37+
MLIRComplexToROCDLLibraryCalls
3838
MLIRComplexToStandard
3939
MLIRGPUDialect
4040
MLIRMathToFuncs

flang/lib/Optimizer/CodeGen/CodeGen.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
#include "mlir/Conversion/ArithCommon/AttrToLLVMConverter.h"
3434
#include "mlir/Conversion/ArithToLLVM/ArithToLLVM.h"
3535
#include "mlir/Conversion/ComplexToLLVM/ComplexToLLVM.h"
36-
#include "mlir/Conversion/ComplexToROCDL/ComplexToROCDL.h"
36+
#include "mlir/Conversion/ComplexToROCDLLibraryCalls/ComplexToROCDLLibraryCalls.h"
3737
#include "mlir/Conversion/ComplexToStandard/ComplexToStandard.h"
3838
#include "mlir/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.h"
3939
#include "mlir/Conversion/FuncToLLVM/ConvertFuncToLLVM.h"
@@ -4155,7 +4155,7 @@ class FIRToLLVMLowering
41554155
// not needed since all math operations are handled this way.
41564156
if (isAMDGCN) {
41574157
mathConversionPM.addPass(mlir::createConvertMathToROCDL());
4158-
mathConversionPM.addPass(mlir::createConvertComplexToROCDL());
4158+
mathConversionPM.addPass(mlir::createConvertComplexToROCDLLibraryCalls());
41594159
}
41604160

41614161
// Convert math::FPowI operations to inline implementation
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,26 @@
1-
//===-- ComplexToROCDL.h - conversion from Complex to ROCDL calls ---------===//
1+
//===- ComplexToROCDLLibraryCalls.h - convert from Complex to ROCDL calls -===//
22
//
33
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
44
// See https://llvm.org/LICENSE.txt for license information.
55
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
66
//
77
//===----------------------------------------------------------------------===//
88

9-
#ifndef MLIR_CONVERSION_COMPLEXTOROCDL_COMPLEXTOROCDL_H_
10-
#define MLIR_CONVERSION_COMPLEXTOROCDL_COMPLEXTOROCDL_H_
9+
#ifndef MLIR_CONVERSION_COMPLEXTOROCDLLIBRARYCALLS_COMPLEXTOROCDLLIBRARYCALLS_H_
10+
#define MLIR_CONVERSION_COMPLEXTOROCDLLIBRARYCALLS_COMPLEXTOROCDLLIBRARYCALLS_H_
1111

1212
#include "mlir/IR/PatternMatch.h"
13-
#include "mlir/Pass/Pass.h"
1413

1514
namespace mlir {
1615
class RewritePatternSet;
1716

18-
#define GEN_PASS_DECL_CONVERTCOMPLEXTOROCDL
17+
#define GEN_PASS_DECL_CONVERTCOMPLEXTOROCDLLIBRARYCALLS
1918
#include "mlir/Conversion/Passes.h.inc"
2019

2120
/// Populate the given list with patterns that convert from Complex to ROCDL
2221
/// calls.
23-
void populateComplexToROCDLConversionPatterns(RewritePatternSet &patterns);
22+
void populateComplexToROCDLLibraryCallsConversionPatterns(
23+
RewritePatternSet &patterns);
2424
} // namespace mlir
2525

26-
#endif // MLIR_CONVERSION_COMPLEXTOROCDL_COMPLEXTOROCDL_H_
26+
#endif // MLIR_CONVERSION_COMPLEXTOROCDLLIBRARYCALLS_COMPLEXTOROCDLLIBRARYCALLS_H_

mlir/include/mlir/Conversion/Passes.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
#include "mlir/Conversion/BufferizationToMemRef/BufferizationToMemRef.h"
2424
#include "mlir/Conversion/ComplexToLLVM/ComplexToLLVM.h"
2525
#include "mlir/Conversion/ComplexToLibm/ComplexToLibm.h"
26-
#include "mlir/Conversion/ComplexToROCDL/ComplexToROCDL.h"
26+
#include "mlir/Conversion/ComplexToROCDLLibraryCalls/ComplexToROCDLLibraryCalls.h"
2727
#include "mlir/Conversion/ComplexToSPIRV/ComplexToSPIRVPass.h"
2828
#include "mlir/Conversion/ComplexToStandard/ComplexToStandard.h"
2929
#include "mlir/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.h"

mlir/include/mlir/Conversion/Passes.td

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -313,11 +313,11 @@ def ConvertComplexToLibm : Pass<"convert-complex-to-libm", "ModuleOp"> {
313313
}
314314

315315
//===----------------------------------------------------------------------===//
316-
// ComplexToROCDL
316+
// ComplexToROCDLLibraryCalls
317317
//===----------------------------------------------------------------------===//
318318

319-
def ConvertComplexToROCDL : Pass<"convert-complex-to-rocdl", "ModuleOp"> {
320-
let summary = "Convert Complex dialect to ROCDL calls";
319+
def ConvertComplexToROCDLLibraryCalls : Pass<"convert-complex-to-rocdl-library-calls", "ModuleOp"> {
320+
let summary = "Convert Complex dialect to ROCDL library calls";
321321
let description = [{
322322
This pass converts supported Complex ops to calls to the AMD device library.
323323
}];

mlir/lib/Conversion/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ add_subdirectory(AsyncToLLVM)
1313
add_subdirectory(BufferizationToMemRef)
1414
add_subdirectory(ComplexCommon)
1515
add_subdirectory(ComplexToLibm)
16-
add_subdirectory(ComplexToROCDL)
16+
add_subdirectory(ComplexToROCDLLibraryCalls)
1717
add_subdirectory(ComplexToLLVM)
1818
add_subdirectory(ComplexToSPIRV)
1919
add_subdirectory(ComplexToStandard)

mlir/lib/Conversion/ComplexToROCDL/CMakeLists.txt

Lines changed: 0 additions & 15 deletions
This file was deleted.
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
add_mlir_conversion_library(MLIRComplexToROCDLLibraryCalls
2+
ComplexToROCDLLibraryCalls.cpp
3+
4+
ADDITIONAL_HEADER_DIRS
5+
${MLIR_MAIN_INCLUDE_DIR}/mlir/Conversion/ComplexToROCDLLibraryCalls
6+
7+
DEPENDS
8+
MLIRConversionPassIncGen
9+
10+
LINK_COMPONENTS
11+
Core
12+
13+
LINK_LIBS PUBLIC
14+
MLIRComplexDialect
15+
MLIRFuncDialect
16+
MLIRPass
17+
MLIRTransformUtils
18+
)

mlir/lib/Conversion/ComplexToROCDL/ComplexToROCDL.cpp renamed to mlir/lib/Conversion/ComplexToROCDLLibraryCalls/ComplexToROCDLLibraryCalls.cpp

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,40 @@
1-
//===-- ComplexToROCDL.cpp - conversion from Complex to ROCDL calls -------===//
1+
//=== ComplexToROCDLLibraryCalls.cpp - convert from Complex to ROCDL calls ===//
22
//
33
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
44
// See https://llvm.org/LICENSE.txt for license information.
55
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
66
//
77
//===----------------------------------------------------------------------===//
88

9-
#include "mlir/Conversion/ComplexToROCDL/ComplexToROCDL.h"
9+
#include "mlir/Conversion/ComplexToROCDLLibraryCalls/ComplexToROCDLLibraryCalls.h"
1010
#include "mlir/Dialect/Complex/IR/Complex.h"
1111
#include "mlir/Dialect/Func/IR/FuncOps.h"
1212
#include "mlir/IR/PatternMatch.h"
1313
#include "mlir/Transforms/DialectConversion.h"
1414

1515
namespace mlir {
16-
#define GEN_PASS_DEF_CONVERTCOMPLEXTOROCDL
16+
#define GEN_PASS_DEF_CONVERTCOMPLEXTOROCDLLIBRARYCALLS
1717
#include "mlir/Conversion/Passes.h.inc"
1818
} // namespace mlir
1919

2020
using namespace mlir;
2121

2222
namespace {
2323

24-
template <typename Op, typename Ty>
24+
template <typename Op, typename FloatTy>
2525
// Pattern to convert Complex ops to ROCDL function calls.
26-
struct ComplexOpToROCDLCall : public OpRewritePattern<Op> {
26+
struct ComplexOpToROCDLLibraryCalls : public OpRewritePattern<Op> {
2727
using OpRewritePattern<Op>::OpRewritePattern;
28-
ComplexOpToROCDLCall(MLIRContext *context, StringRef funcName,
29-
PatternBenefit benefit = 1)
28+
ComplexOpToROCDLLibraryCalls(MLIRContext *context, StringRef funcName,
29+
PatternBenefit benefit = 1)
3030
: OpRewritePattern<Op>(context, benefit), funcName(funcName) {}
3131

3232
LogicalResult matchAndRewrite(Op op, PatternRewriter &rewriter) const final {
3333
Operation *symTable = SymbolTable::getNearestSymbolTable(op);
3434
Type resType = op.getType();
3535
if (auto complexType = dyn_cast<ComplexType>(resType))
3636
resType = complexType.getElementType();
37-
if (!isa<Ty>(resType))
37+
if (!isa<FloatTy>(resType))
3838
return failure();
3939

4040
auto opFunc = dyn_cast_or_null<SymbolOpInterface>(
@@ -58,30 +58,31 @@ struct ComplexOpToROCDLCall : public OpRewritePattern<Op> {
5858
};
5959
} // namespace
6060

61-
void mlir::populateComplexToROCDLConversionPatterns(
61+
void mlir::populateComplexToROCDLLibraryCallsConversionPatterns(
6262
RewritePatternSet &patterns) {
63-
patterns.add<ComplexOpToROCDLCall<complex::AbsOp, Float32Type>>(
63+
patterns.add<ComplexOpToROCDLLibraryCalls<complex::AbsOp, Float32Type>>(
6464
patterns.getContext(), "__ocml_cabs_f32");
65-
patterns.add<ComplexOpToROCDLCall<complex::AbsOp, Float64Type>>(
65+
patterns.add<ComplexOpToROCDLLibraryCalls<complex::AbsOp, Float64Type>>(
6666
patterns.getContext(), "__ocml_cabs_f64");
67-
patterns.add<ComplexOpToROCDLCall<complex::ExpOp, Float32Type>>(
67+
patterns.add<ComplexOpToROCDLLibraryCalls<complex::ExpOp, Float32Type>>(
6868
patterns.getContext(), "__ocml_cexp_f32");
69-
patterns.add<ComplexOpToROCDLCall<complex::ExpOp, Float64Type>>(
69+
patterns.add<ComplexOpToROCDLLibraryCalls<complex::ExpOp, Float64Type>>(
7070
patterns.getContext(), "__ocml_cexp_f64");
7171
}
7272

7373
namespace {
74-
struct ConvertComplexToROCDLPass
75-
: public impl::ConvertComplexToROCDLBase<ConvertComplexToROCDLPass> {
74+
struct ConvertComplexToROCDLLibraryCallsPass
75+
: public impl::ConvertComplexToROCDLLibraryCallsBase<
76+
ConvertComplexToROCDLLibraryCallsPass> {
7677
void runOnOperation() override;
7778
};
7879
} // namespace
7980

80-
void ConvertComplexToROCDLPass::runOnOperation() {
81+
void ConvertComplexToROCDLLibraryCallsPass::runOnOperation() {
8182
Operation *op = getOperation();
8283

8384
RewritePatternSet patterns(&getContext());
84-
populateComplexToROCDLConversionPatterns(patterns);
85+
populateComplexToROCDLLibraryCallsConversionPatterns(patterns);
8586

8687
ConversionTarget target(getContext());
8788
target.addLegalDialect<func::FuncDialect>();

mlir/test/Conversion/ComplexToROCDL/complex-to-rocdl.mlir renamed to mlir/test/Conversion/ComplexToROCDLLibraryCalls/complex-to-rocdl-library-calls.mlir

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// RUN: mlir-opt %s -convert-complex-to-rocdl | FileCheck %s
1+
// RUN: mlir-opt %s -convert-complex-to-rocdl-library-calls | FileCheck %s
22

33
// CHECK-DAG: @__ocml_cabs_f32(complex<f32>) -> f32
44
// CHECK-DAG: @__ocml_cabs_f64(complex<f64>) -> f64

0 commit comments

Comments
 (0)