Skip to content

Commit ec9add7

Browse files
committed
address Jeff's comments
1 parent dd1e206 commit ec9add7

File tree

12 files changed

+18
-26
lines changed

12 files changed

+18
-26
lines changed

include/aie/Dialect/AIE/IR/AIEOps.td

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ def AIE_DeviceOp: AIE_Op<"device", [
6161

6262
let arguments = (
6363
ins AIEDevice:$device,
64-
DefaultValuedAttr<SymbolNameAttr, "\"main\"">:$sym_name
64+
DefaultValuedAttr<SymbolNameAttr, "getDefaultDeviceName()">:$sym_name
6565
);
6666
let regions = (region AnyRegion:$body_region);
6767
let assemblyFormat = [{
@@ -71,6 +71,7 @@ def AIE_DeviceOp: AIE_Op<"device", [
7171
const xilinx::AIE::AIETargetModel &getTargetModel();
7272
static xilinx::AIE::DeviceOp getForSymbolInModule(mlir::ModuleOp module, llvm::StringRef symbol);
7373
static xilinx::AIE::DeviceOp getForSymbolInModuleOrError(mlir::ModuleOp module, llvm::StringRef symbol);
74+
static llvm::StringRef getDefaultDeviceName() { return "main"; }
7475
}];
7576
}
7677

include/aie/Dialect/AIE/Transforms/AIEPasses.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@ createAIEAssignBufferDescriptorIDsPass();
4747
std::unique_ptr<mlir::OperationPass<DeviceOp>>
4848
createAIEGenerateColumnControlOverlayPass();
4949
std::unique_ptr<mlir::OperationPass<DeviceOp>> createAIEAssignTileCtrlIDsPass();
50-
std::unique_ptr<mlir::OperationPass<DeviceOp>> createAIESetELFforCorePass();
5150

5251
/// Generate the code for registering passes.
5352
#define GEN_PASS_REGISTRATION

include/aie/Dialect/AIEX/IR/AIEX.td

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -542,17 +542,20 @@ def AIE_RuntimeSequenceOp : AIEX_Op<"runtime_sequence", [
542542
The input arguments are arguments passed in from the host at kernel invocation time. This may include buffers on the host.
543543
}];
544544
let arguments = (
545-
ins DefaultValuedAttr<SymbolNameAttr, "xilinx::AIEX::defaultRuntimeSequenceName">:$sym_name
545+
ins DefaultValuedAttr<SymbolNameAttr, "getDefaultRuntimeSequenceName()">:$sym_name
546546
);
547547
let regions = (region
548548
AnyRegion:$body
549549
);
550550
let hasCustomAssemblyFormat = 1;
551551
let hasVerifier = 1;
552552
let extraClassDeclaration = [{
553+
static llvm::StringRef getDefaultRuntimeSequenceName() { return "sequence"; }
553554
static RuntimeSequenceOp getForSymbolInDevice(AIE::DeviceOp module, llvm::StringRef symbol);
554555
static RuntimeSequenceOp getForSymbolInDeviceOrError(AIE::DeviceOp module, llvm::StringRef symbol);
555556
}];
557+
let extraClassDefinition = [{
558+
}];
556559
}
557560

558561
def AIE_ConfigureOp: AIEX_Op<"configure", [

include/aie/Dialect/AIEX/IR/AIEXDialect.h

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,6 @@
1515

1616
#include "mlir/IR/BuiltinAttributes.h"
1717

18-
namespace xilinx::AIEX {
19-
const char defaultRuntimeSequenceName[] = "sequence";
20-
}
21-
2218
// Include dialect declarations such as parseAttributes, parseType
2319
#include "aie/Dialect/AIEX/IR/AIEXDialect.h.inc"
2420
#include "mlir/IR/Operation.h"

lib/Conversion/AIEToConfiguration/AIEToConfiguration.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -438,7 +438,7 @@ xilinx::AIE::convertTransactionBinaryToMLIR(mlir::MLIRContext *ctx,
438438
std::vector<AIEDevice> devices{AIEDevice::npu1_1col, AIEDevice::npu1_2col,
439439
AIEDevice::npu1_3col, AIEDevice::npu1};
440440
auto device = builder.create<DeviceOp>(
441-
loc, devices[columns - 1], StringAttr::get(builder.getContext(), "main"));
441+
loc, devices[columns - 1], StringAttr::get(builder.getContext()));
442442
device.getRegion().emplaceBlock();
443443
DeviceOp::ensureTerminator(device.getBodyRegion(), builder, loc);
444444
builder.setInsertionPointToStart(device.getBody());

lib/Dialect/AIE/Transforms/AIECanonicalizeDevice.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ struct AIECanonicalizeDevicePass
4040
Location location = builder.getUnknownLoc();
4141
auto deviceOp = builder.create<DeviceOp>(
4242
location, AIEDeviceAttr::get(builder.getContext(), AIEDevice::xcvc1902),
43-
StringAttr::get(builder.getContext(), "main"));
43+
StringAttr::get(builder.getContext(), DeviceOp::getDefaultDeviceName()));
4444

4545
deviceOp.getRegion().takeBody(moduleOp.getBodyRegion());
4646
new (&moduleOp->getRegion(0)) Region(moduleOp);

lib/Dialect/AIEX/IR/AIEXDialect.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -555,7 +555,7 @@ LogicalResult AIEX::NpuWriteBdOp::verify() {
555555
//===----------------------------------------------------------------------===//
556556

557557
template <typename T>
558-
std::optional<uint32_t> getAbsoluteAddress(T *op) {
558+
static std::optional<uint32_t> getAbsoluteAddress(T *op) {
559559
AIE::DeviceOp device =
560560
op->getOperation()->template getParentOfType<AIE::DeviceOp>();
561561
if (!device) {
@@ -707,7 +707,7 @@ void AIEX::RuntimeSequenceOp::print(OpAsmPrinter &printer) {
707707
auto nameAttr = (*this)->getAttrOfType<StringAttr>(
708708
mlir::SymbolTable::getSymbolAttrName());
709709
if (nameAttr && nameAttr != ::mlir::OpBuilder((*this)->getContext())
710-
.getStringAttr(defaultRuntimeSequenceName)) {
710+
.getStringAttr(getDefaultRuntimeSequenceName())) {
711711
printer << ' ';
712712
printer.printSymbolName(nameAttr);
713713
}

lib/Dialect/AIEX/Transforms/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,9 @@ add_mlir_dialect_library(AIEXTransforms
3232

3333
LINK_LIBS PUBLIC
3434
AIE
35+
AIEXUtils
3536
MLIRIR
3637
MLIRPass
3738
MLIRSupport
3839
MLIRTransformUtils
39-
AIEXUtils
4040
)

lib/Dialect/AIEX/Utils/AIEUtils.cpp

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,12 @@
1212

1313
using namespace mlir;
1414
using namespace xilinx;
15-
using namespace xilinx::AIEX;
1615

1716
static unsigned cachedId = 0;
1817

19-
namespace xilinx {
20-
namespace AIEX {
21-
22-
memref::GlobalOp getOrCreateDataMemref(OpBuilder &builder, AIE::DeviceOp dev,
23-
mlir::Location loc,
24-
ArrayRef<uint32_t> words) {
18+
memref::GlobalOp AIEX::getOrCreateDataMemref(OpBuilder &builder, AIE::DeviceOp dev,
19+
mlir::Location loc,
20+
ArrayRef<uint32_t> words) {
2521
uint32_t num_words = words.size();
2622
MemRefType memrefType = MemRefType::get({num_words}, builder.getI32Type());
2723
TensorType tensorType =
@@ -51,6 +47,3 @@ memref::GlobalOp getOrCreateDataMemref(OpBuilder &builder, AIE::DeviceOp dev,
5147
}
5248
return global;
5349
}
54-
55-
} // namespace AIEX
56-
} // namespace xilinx

programming_examples/basic/matrix_multiplication/makefile-common

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ ${trace_mlir_target}: ${srcdir}/${aie_py_src}
162162

163163
${xclbin_target}: ${mlir_target} ${kernels:%=build/%.o}
164164
mkdir -p ${@D}
165-
cd ${@D} && aiecc.py --alloc-scheme=${buffer_aloc_flag} --aie-generate-xclbin --no-compile-host --xclbin-name=${@F} --progress \
165+
cd ${@D} && aiecc.py --alloc-scheme=${buffer_aloc_flag} --aie-generate-xclbin --no-compile-host --xclbin-name=${@F} \
166166
${aiecc_peano_flags} \
167167
--aie-generate-npu-insts --npu-insts-name=${insts_target:build/%=%} $(<:%=../%)
168168

0 commit comments

Comments
 (0)