mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-26 18:46:06 +00:00
[flang][NFC] Split CG dialect and the passes. (#135240)
I am making a CG pass to depend on `FIROpenACCSupport` in #134346. This introduces a cyclic dependency between `FIROpenACCSupport` and `FIRCodeGen`. This patch splits `FIRCodeGen` into `FIRCodeGenDialect` (for FIR CG dialect definition) and `FIRCodeGen` (for the CG passes). Now, `FIROpenACCSupport` depends on `FIRCodeGenDialect`, and `FIRCodeGen` depends on `FIROpenACCSupport`.
This commit is contained in:
parent
727f3921e7
commit
27bc8a1811
flang
include/flang/Optimizer
lib
Frontend
Optimizer
tools
unittests/Optimizer
@ -1,8 +1,3 @@
|
|||||||
set(LLVM_TARGET_DEFINITIONS CGOps.td)
|
|
||||||
mlir_tablegen(CGOps.h.inc -gen-op-decls)
|
|
||||||
mlir_tablegen(CGOps.cpp.inc -gen-op-defs)
|
|
||||||
add_public_tablegen_target(CGOpsIncGen)
|
|
||||||
|
|
||||||
set(LLVM_TARGET_DEFINITIONS CGPasses.td)
|
set(LLVM_TARGET_DEFINITIONS CGPasses.td)
|
||||||
mlir_tablegen(CGPasses.h.inc -gen-pass-decls -name OptCodeGen)
|
mlir_tablegen(CGPasses.h.inc -gen-pass-decls -name OptCodeGen)
|
||||||
add_public_tablegen_target(FIROptCodeGenPassIncGen)
|
add_public_tablegen_target(FIROptCodeGenPassIncGen)
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
add_subdirectory(CUF)
|
add_subdirectory(CUF)
|
||||||
|
add_subdirectory(FIRCG)
|
||||||
|
|
||||||
# This replicates part of the add_mlir_dialect cmake function from MLIR that
|
# This replicates part of the add_mlir_dialect cmake function from MLIR that
|
||||||
# cannot be used her because it expects to be run inside MLIR directory which
|
# cannot be used her because it expects to be run inside MLIR directory which
|
||||||
|
8
flang/include/flang/Optimizer/CodeGen/CGOps.h → flang/include/flang/Optimizer/Dialect/FIRCG/CGOps.h
8
flang/include/flang/Optimizer/CodeGen/CGOps.h → flang/include/flang/Optimizer/Dialect/FIRCG/CGOps.h
@ -10,14 +10,14 @@
|
|||||||
//
|
//
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
|
|
||||||
#ifndef OPTIMIZER_CODEGEN_CGOPS_H
|
#ifndef OPTIMIZER_DIALECT_FIRCG_CGOPS_H
|
||||||
#define OPTIMIZER_CODEGEN_CGOPS_H
|
#define OPTIMIZER_DIALECT_FIRCG_CGOPS_H
|
||||||
|
|
||||||
#include "flang/Optimizer/Dialect/FIRAttr.h"
|
#include "flang/Optimizer/Dialect/FIRAttr.h"
|
||||||
#include "flang/Optimizer/Dialect/FIRType.h"
|
#include "flang/Optimizer/Dialect/FIRType.h"
|
||||||
#include "mlir/Dialect/Func/IR/FuncOps.h"
|
#include "mlir/Dialect/Func/IR/FuncOps.h"
|
||||||
|
|
||||||
#define GET_OP_CLASSES
|
#define GET_OP_CLASSES
|
||||||
#include "flang/Optimizer/CodeGen/CGOps.h.inc"
|
#include "flang/Optimizer/Dialect/FIRCG/CGOps.h.inc"
|
||||||
|
|
||||||
#endif
|
#endif // OPTIMIZER_DIALECT_FIRCG_CGOPS_H
|
@ -1,4 +1,4 @@
|
|||||||
//===-- CGOps.td - FIR operation definitions ---------------*- tablegen -*-===//
|
//===-- CGOps.td - FIR CodeGen operation definitions -------*- tablegen -*-===//
|
||||||
//
|
//
|
||||||
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
||||||
// See https://llvm.org/LICENSE.txt for license information.
|
// See https://llvm.org/LICENSE.txt for license information.
|
||||||
@ -28,7 +28,7 @@ def fircg_Dialect : Dialect {
|
|||||||
// Base class for FIR CG operations.
|
// Base class for FIR CG operations.
|
||||||
// All operations automatically get a prefix of "fircg.".
|
// All operations automatically get a prefix of "fircg.".
|
||||||
class fircg_Op<string mnemonic, list<Trait> traits>
|
class fircg_Op<string mnemonic, list<Trait> traits>
|
||||||
: Op<fircg_Dialect, mnemonic, traits>;
|
: Op<fircg_Dialect, mnemonic, traits>;
|
||||||
|
|
||||||
// Extended embox operation.
|
// Extended embox operation.
|
||||||
def fircg_XEmboxOp : fircg_Op<"ext_embox", [AttrSizedOperandSegments]> {
|
def fircg_XEmboxOp : fircg_Op<"ext_embox", [AttrSizedOperandSegments]> {
|
||||||
@ -55,17 +55,12 @@ def fircg_XEmboxOp : fircg_Op<"ext_embox", [AttrSizedOperandSegments]> {
|
|||||||
The memref and shape arguments are mandatory. The rest are optional.
|
The memref and shape arguments are mandatory. The rest are optional.
|
||||||
}];
|
}];
|
||||||
|
|
||||||
let arguments = (ins
|
let arguments = (ins AnyReferenceLike:$memref,
|
||||||
AnyReferenceLike:$memref,
|
Variadic<AnyIntegerType>:$shape, Variadic<AnyIntegerType>:$shift,
|
||||||
Variadic<AnyIntegerType>:$shape,
|
Variadic<AnyIntegerType>:$slice,
|
||||||
Variadic<AnyIntegerType>:$shift,
|
Variadic<AnyCoordinateType>:$subcomponent,
|
||||||
Variadic<AnyIntegerType>:$slice,
|
Variadic<AnyIntegerType>:$substr, Variadic<AnyIntegerType>:$lenParams,
|
||||||
Variadic<AnyCoordinateType>:$subcomponent,
|
Optional<fir_ClassType>:$sourceBox, OptionalAttr<I32Attr>:$allocator_idx);
|
||||||
Variadic<AnyIntegerType>:$substr,
|
|
||||||
Variadic<AnyIntegerType>:$lenParams,
|
|
||||||
Optional<fir_ClassType>:$sourceBox,
|
|
||||||
OptionalAttr<I32Attr>:$allocator_idx
|
|
||||||
);
|
|
||||||
let results = (outs BoxOrClassType);
|
let results = (outs BoxOrClassType);
|
||||||
|
|
||||||
let assemblyFormat = [{
|
let assemblyFormat = [{
|
||||||
@ -125,14 +120,10 @@ def fircg_XReboxOp : fircg_Op<"ext_rebox", [AttrSizedOperandSegments]> {
|
|||||||
There must not both be a shape and slice/subcomponent arguments
|
There must not both be a shape and slice/subcomponent arguments
|
||||||
}];
|
}];
|
||||||
|
|
||||||
let arguments = (ins
|
let arguments = (ins BoxOrClassType:$box, Variadic<AnyIntegerType>:$shape,
|
||||||
BoxOrClassType:$box,
|
Variadic<AnyIntegerType>:$shift, Variadic<AnyIntegerType>:$slice,
|
||||||
Variadic<AnyIntegerType>:$shape,
|
Variadic<AnyCoordinateType>:$subcomponent,
|
||||||
Variadic<AnyIntegerType>:$shift,
|
Variadic<AnyIntegerType>:$substr);
|
||||||
Variadic<AnyIntegerType>:$slice,
|
|
||||||
Variadic<AnyCoordinateType>:$subcomponent,
|
|
||||||
Variadic<AnyIntegerType>:$substr
|
|
||||||
);
|
|
||||||
let results = (outs BoxOrClassType);
|
let results = (outs BoxOrClassType);
|
||||||
|
|
||||||
let assemblyFormat = [{
|
let assemblyFormat = [{
|
||||||
@ -163,9 +154,9 @@ def fircg_XReboxOp : fircg_Op<"ext_rebox", [AttrSizedOperandSegments]> {
|
|||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Extended array coordinate operation.
|
// Extended array coordinate operation.
|
||||||
def fircg_XArrayCoorOp : fircg_Op<"ext_array_coor", [AttrSizedOperandSegments]> {
|
def fircg_XArrayCoorOp
|
||||||
|
: fircg_Op<"ext_array_coor", [AttrSizedOperandSegments]> {
|
||||||
let summary = "for internal conversion only";
|
let summary = "for internal conversion only";
|
||||||
|
|
||||||
let description = [{
|
let description = [{
|
||||||
@ -190,15 +181,11 @@ def fircg_XArrayCoorOp : fircg_Op<"ext_array_coor", [AttrSizedOperandSegments]>
|
|||||||
omitted otherwise. The rest of the arguments are optional.
|
omitted otherwise. The rest of the arguments are optional.
|
||||||
}];
|
}];
|
||||||
|
|
||||||
let arguments = (ins
|
let arguments = (ins AnyRefOrBox:$memref, Variadic<AnyIntegerType>:$shape,
|
||||||
AnyRefOrBox:$memref,
|
Variadic<AnyIntegerType>:$shift, Variadic<AnyIntegerType>:$slice,
|
||||||
Variadic<AnyIntegerType>:$shape,
|
Variadic<AnyCoordinateType>:$subcomponent,
|
||||||
Variadic<AnyIntegerType>:$shift,
|
Variadic<AnyCoordinateType>:$indices,
|
||||||
Variadic<AnyIntegerType>:$slice,
|
Variadic<AnyIntegerType>:$lenParams);
|
||||||
Variadic<AnyCoordinateType>:$subcomponent,
|
|
||||||
Variadic<AnyCoordinateType>:$indices,
|
|
||||||
Variadic<AnyIntegerType>:$lenParams
|
|
||||||
);
|
|
||||||
let results = (outs fir_ReferenceType);
|
let results = (outs fir_ReferenceType);
|
||||||
|
|
||||||
let assemblyFormat = [{
|
let assemblyFormat = [{
|
||||||
@ -239,14 +226,9 @@ def fircg_XDeclareOp : fircg_Op<"ext_declare", [AttrSizedOperandSegments]> {
|
|||||||
be converted to an extended DeclareOp.
|
be converted to an extended DeclareOp.
|
||||||
}];
|
}];
|
||||||
|
|
||||||
let arguments = (ins
|
let arguments = (ins AnyRefOrBox:$memref, Variadic<AnyIntegerType>:$shape,
|
||||||
AnyRefOrBox:$memref,
|
Variadic<AnyIntegerType>:$shift, Variadic<AnyIntegerType>:$typeparams,
|
||||||
Variadic<AnyIntegerType>:$shape,
|
Optional<fir_DummyScopeType>:$dummy_scope, Builtin_StringAttr:$uniq_name);
|
||||||
Variadic<AnyIntegerType>:$shift,
|
|
||||||
Variadic<AnyIntegerType>:$typeparams,
|
|
||||||
Optional<fir_DummyScopeType>:$dummy_scope,
|
|
||||||
Builtin_StringAttr:$uniq_name
|
|
||||||
);
|
|
||||||
let results = (outs AnyRefOrBox);
|
let results = (outs AnyRefOrBox);
|
||||||
|
|
||||||
let assemblyFormat = [{
|
let assemblyFormat = [{
|
@ -0,0 +1,4 @@
|
|||||||
|
set(LLVM_TARGET_DEFINITIONS CGOps.td)
|
||||||
|
mlir_tablegen(CGOps.h.inc -gen-op-decls)
|
||||||
|
mlir_tablegen(CGOps.cpp.inc -gen-op-defs)
|
||||||
|
add_public_tablegen_target(CGOpsIncGen)
|
@ -33,6 +33,7 @@ add_flang_library(flangFrontend
|
|||||||
FIRSupport
|
FIRSupport
|
||||||
FIRBuilder
|
FIRBuilder
|
||||||
FIRCodeGen
|
FIRCodeGen
|
||||||
|
FIRCodeGenDialect
|
||||||
FIRTransforms
|
FIRTransforms
|
||||||
HLFIRDialect
|
HLFIRDialect
|
||||||
HLFIRTransforms
|
HLFIRTransforms
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
add_flang_library(FIRCodeGen
|
add_flang_library(FIRCodeGen
|
||||||
BoxedProcedure.cpp
|
BoxedProcedure.cpp
|
||||||
CGOps.cpp
|
|
||||||
CodeGen.cpp
|
CodeGen.cpp
|
||||||
CodeGenOpenMP.cpp
|
CodeGenOpenMP.cpp
|
||||||
FIROpPatterns.cpp
|
FIROpPatterns.cpp
|
||||||
@ -21,13 +20,12 @@ add_flang_library(FIRCodeGen
|
|||||||
CUFAttrs
|
CUFAttrs
|
||||||
FIRAnalysis
|
FIRAnalysis
|
||||||
FIRBuilder
|
FIRBuilder
|
||||||
|
FIRCodeGenDialect
|
||||||
FIRDialect
|
FIRDialect
|
||||||
FIRDialectSupport
|
FIRDialectSupport
|
||||||
FIRSupport
|
FIRSupport
|
||||||
|
|
||||||
LINK_COMPONENTS
|
LINK_COMPONENTS
|
||||||
AsmParser
|
|
||||||
AsmPrinter
|
|
||||||
Remarks
|
Remarks
|
||||||
TargetParser
|
TargetParser
|
||||||
|
|
||||||
|
@ -12,11 +12,11 @@
|
|||||||
|
|
||||||
#include "flang/Optimizer/CodeGen/CodeGen.h"
|
#include "flang/Optimizer/CodeGen/CodeGen.h"
|
||||||
|
|
||||||
#include "flang/Optimizer/CodeGen/CGOps.h"
|
|
||||||
#include "flang/Optimizer/CodeGen/CodeGenOpenMP.h"
|
#include "flang/Optimizer/CodeGen/CodeGenOpenMP.h"
|
||||||
#include "flang/Optimizer/CodeGen/FIROpPatterns.h"
|
#include "flang/Optimizer/CodeGen/FIROpPatterns.h"
|
||||||
#include "flang/Optimizer/CodeGen/TypeConverter.h"
|
#include "flang/Optimizer/CodeGen/TypeConverter.h"
|
||||||
#include "flang/Optimizer/Dialect/FIRAttr.h"
|
#include "flang/Optimizer/Dialect/FIRAttr.h"
|
||||||
|
#include "flang/Optimizer/Dialect/FIRCG/CGOps.h"
|
||||||
#include "flang/Optimizer/Dialect/FIRDialect.h"
|
#include "flang/Optimizer/Dialect/FIRDialect.h"
|
||||||
#include "flang/Optimizer/Dialect/FIROps.h"
|
#include "flang/Optimizer/Dialect/FIROps.h"
|
||||||
#include "flang/Optimizer/Dialect/FIRType.h"
|
#include "flang/Optimizer/Dialect/FIRType.h"
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
#include "flang/Optimizer/CodeGen/CodeGen.h"
|
#include "flang/Optimizer/CodeGen/CodeGen.h"
|
||||||
|
|
||||||
#include "flang/Optimizer/Builder/Todo.h" // remove when TODO's are done
|
#include "flang/Optimizer/Builder/Todo.h" // remove when TODO's are done
|
||||||
#include "flang/Optimizer/CodeGen/CGOps.h"
|
#include "flang/Optimizer/Dialect/FIRCG/CGOps.h"
|
||||||
#include "flang/Optimizer/Dialect/FIRDialect.h"
|
#include "flang/Optimizer/Dialect/FIRDialect.h"
|
||||||
#include "flang/Optimizer/Dialect/FIROps.h"
|
#include "flang/Optimizer/Dialect/FIROps.h"
|
||||||
#include "flang/Optimizer/Dialect/FIRType.h"
|
#include "flang/Optimizer/Dialect/FIRType.h"
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
add_subdirectory(Support)
|
add_subdirectory(Support)
|
||||||
add_subdirectory(CUF)
|
add_subdirectory(CUF)
|
||||||
|
add_subdirectory(FIRCG)
|
||||||
|
|
||||||
add_flang_library(FIRDialect
|
add_flang_library(FIRDialect
|
||||||
FIRAttr.cpp
|
FIRAttr.cpp
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
//
|
//
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
|
|
||||||
#include "flang/Optimizer/CodeGen/CGOps.h"
|
#include "flang/Optimizer/Dialect/FIRCG/CGOps.h"
|
||||||
#include "flang/Optimizer/Dialect/FIRDialect.h"
|
#include "flang/Optimizer/Dialect/FIRDialect.h"
|
||||||
#include "flang/Optimizer/Dialect/FIROps.h"
|
#include "flang/Optimizer/Dialect/FIROps.h"
|
||||||
#include "flang/Optimizer/Dialect/FIRType.h"
|
#include "flang/Optimizer/Dialect/FIRType.h"
|
||||||
@ -20,7 +20,7 @@ fir::FIRCodeGenDialect::FIRCodeGenDialect(mlir::MLIRContext *ctx)
|
|||||||
: mlir::Dialect("fircg", ctx, mlir::TypeID::get<FIRCodeGenDialect>()) {
|
: mlir::Dialect("fircg", ctx, mlir::TypeID::get<FIRCodeGenDialect>()) {
|
||||||
addOperations<
|
addOperations<
|
||||||
#define GET_OP_LIST
|
#define GET_OP_LIST
|
||||||
#include "flang/Optimizer/CodeGen/CGOps.cpp.inc"
|
#include "flang/Optimizer/Dialect/FIRCG/CGOps.cpp.inc"
|
||||||
>();
|
>();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -30,7 +30,7 @@ fir::FIRCodeGenDialect::~FIRCodeGenDialect() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#define GET_OP_CLASSES
|
#define GET_OP_CLASSES
|
||||||
#include "flang/Optimizer/CodeGen/CGOps.cpp.inc"
|
#include "flang/Optimizer/Dialect/FIRCG/CGOps.cpp.inc"
|
||||||
|
|
||||||
unsigned fir::cg::XEmboxOp::getOutRank() {
|
unsigned fir::cg::XEmboxOp::getOutRank() {
|
||||||
if (getSlice().empty())
|
if (getSlice().empty())
|
14
flang/lib/Optimizer/Dialect/FIRCG/CMakeLists.txt
Normal file
14
flang/lib/Optimizer/Dialect/FIRCG/CMakeLists.txt
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
add_flang_library(FIRCodeGenDialect
|
||||||
|
CGOps.cpp
|
||||||
|
|
||||||
|
DEPENDS
|
||||||
|
CGOpsIncGen
|
||||||
|
|
||||||
|
LINK_LIBS
|
||||||
|
FIRDialect
|
||||||
|
MLIRIR
|
||||||
|
|
||||||
|
LINK_COMPONENTS
|
||||||
|
AsmParser
|
||||||
|
AsmPrinter
|
||||||
|
)
|
@ -6,7 +6,6 @@ add_flang_library(FIROpenACCSupport
|
|||||||
|
|
||||||
DEPENDS
|
DEPENDS
|
||||||
FIRBuilder
|
FIRBuilder
|
||||||
FIRCodeGen
|
|
||||||
FIRDialect
|
FIRDialect
|
||||||
FIRDialectSupport
|
FIRDialectSupport
|
||||||
FIRSupport
|
FIRSupport
|
||||||
@ -14,7 +13,7 @@ add_flang_library(FIROpenACCSupport
|
|||||||
|
|
||||||
LINK_LIBS
|
LINK_LIBS
|
||||||
FIRBuilder
|
FIRBuilder
|
||||||
FIRCodeGen
|
FIRCodeGenDialect
|
||||||
FIRDialect
|
FIRDialect
|
||||||
FIRDialectSupport
|
FIRDialectSupport
|
||||||
FIRSupport
|
FIRSupport
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
#include "flang/Optimizer/Builder/DirectivesCommon.h"
|
#include "flang/Optimizer/Builder/DirectivesCommon.h"
|
||||||
#include "flang/Optimizer/Builder/FIRBuilder.h"
|
#include "flang/Optimizer/Builder/FIRBuilder.h"
|
||||||
#include "flang/Optimizer/Builder/HLFIRTools.h"
|
#include "flang/Optimizer/Builder/HLFIRTools.h"
|
||||||
#include "flang/Optimizer/CodeGen/CGOps.h"
|
#include "flang/Optimizer/Dialect/FIRCG/CGOps.h"
|
||||||
#include "flang/Optimizer/Dialect/FIROps.h"
|
#include "flang/Optimizer/Dialect/FIROps.h"
|
||||||
#include "flang/Optimizer/Dialect/FIROpsSupport.h"
|
#include "flang/Optimizer/Dialect/FIROpsSupport.h"
|
||||||
#include "flang/Optimizer/Dialect/FIRType.h"
|
#include "flang/Optimizer/Dialect/FIRType.h"
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
#include "DebugTypeGenerator.h"
|
#include "DebugTypeGenerator.h"
|
||||||
#include "flang/Optimizer/Builder/FIRBuilder.h"
|
#include "flang/Optimizer/Builder/FIRBuilder.h"
|
||||||
#include "flang/Optimizer/Builder/Todo.h"
|
#include "flang/Optimizer/Builder/Todo.h"
|
||||||
#include "flang/Optimizer/CodeGen/CGOps.h"
|
#include "flang/Optimizer/Dialect/FIRCG/CGOps.h"
|
||||||
#include "flang/Optimizer/Dialect/FIRDialect.h"
|
#include "flang/Optimizer/Dialect/FIRDialect.h"
|
||||||
#include "flang/Optimizer/Dialect/FIROps.h"
|
#include "flang/Optimizer/Dialect/FIROps.h"
|
||||||
#include "flang/Optimizer/Dialect/FIROpsSupport.h"
|
#include "flang/Optimizer/Dialect/FIROpsSupport.h"
|
||||||
|
@ -47,6 +47,7 @@ add_flang_library(FIRTransforms
|
|||||||
FIRAnalysis
|
FIRAnalysis
|
||||||
FIRBuilder
|
FIRBuilder
|
||||||
FIRCodeGen
|
FIRCodeGen
|
||||||
|
FIRCodeGenDialect
|
||||||
FIRDialect
|
FIRDialect
|
||||||
FIRDialectSupport
|
FIRDialectSupport
|
||||||
FIRSupport
|
FIRSupport
|
||||||
|
@ -13,8 +13,8 @@
|
|||||||
#ifndef FORTRAN_OPTIMIZER_TRANSFORMS_DEBUGTYPEGENERATOR_H
|
#ifndef FORTRAN_OPTIMIZER_TRANSFORMS_DEBUGTYPEGENERATOR_H
|
||||||
#define FORTRAN_OPTIMIZER_TRANSFORMS_DEBUGTYPEGENERATOR_H
|
#define FORTRAN_OPTIMIZER_TRANSFORMS_DEBUGTYPEGENERATOR_H
|
||||||
|
|
||||||
#include "flang/Optimizer/CodeGen/CGOps.h"
|
|
||||||
#include "flang/Optimizer/CodeGen/TypeConverter.h"
|
#include "flang/Optimizer/CodeGen/TypeConverter.h"
|
||||||
|
#include "flang/Optimizer/Dialect/FIRCG/CGOps.h"
|
||||||
#include "flang/Optimizer/Dialect/FIRType.h"
|
#include "flang/Optimizer/Dialect/FIRType.h"
|
||||||
#include "flang/Optimizer/Dialect/Support/FIRContext.h"
|
#include "flang/Optimizer/Dialect/Support/FIRContext.h"
|
||||||
#include "flang/Optimizer/Dialect/Support/KindMapping.h"
|
#include "flang/Optimizer/Dialect/Support/KindMapping.h"
|
||||||
|
@ -18,6 +18,7 @@ target_link_libraries(fir-opt PRIVATE
|
|||||||
FIRSupport
|
FIRSupport
|
||||||
FIRTransforms
|
FIRTransforms
|
||||||
FIRCodeGen
|
FIRCodeGen
|
||||||
|
FIRCodeGenDialect
|
||||||
HLFIRDialect
|
HLFIRDialect
|
||||||
HLFIRTransforms
|
HLFIRTransforms
|
||||||
FIROpenACCSupport
|
FIROpenACCSupport
|
||||||
|
@ -10,6 +10,7 @@ target_link_libraries(tco PRIVATE
|
|||||||
CUFAttrs
|
CUFAttrs
|
||||||
CUFDialect
|
CUFDialect
|
||||||
FIRCodeGen
|
FIRCodeGen
|
||||||
|
FIRCodeGenDialect
|
||||||
FIRDialect
|
FIRDialect
|
||||||
FIRDialectSupport
|
FIRDialectSupport
|
||||||
FIRSupport
|
FIRSupport
|
||||||
|
@ -8,7 +8,7 @@ set(LLVM_LINK_COMPONENTS
|
|||||||
set(LIBS
|
set(LIBS
|
||||||
CUFDialect
|
CUFDialect
|
||||||
FIRBuilder
|
FIRBuilder
|
||||||
FIRCodeGen
|
FIRCodeGenDialect
|
||||||
FIRDialect
|
FIRDialect
|
||||||
FIRDialectSupport
|
FIRDialectSupport
|
||||||
FIRSupport
|
FIRSupport
|
||||||
|
Loading…
x
Reference in New Issue
Block a user