@@ -528,38 +528,11 @@ def AIE_SelectOp: AIEX_Op<"select", []>, Results<(outs Index)> {
528528 ];
529529}
530530
531- def AIE_RuntimeSequenceOp : AIEX_Op<"runtime_sequence", [
532- Symbol,
533- NoTerminator,
534- HasParent<"AIE::DeviceOp">,
535- ]> {
536- let summary = "Program the configuration co-processor of the AI Engine array";
537- let description = [{
538- Instructions in this operation allow for runtime (re-)configuration of the AI Engine array, such as configuring data movement buffer descriptors.
539- These instructions will execute on the configuration co-processor of the AI Engine array.
540-
541- Typically, these instructions include configuring the data transfers between host and AIE array on the shims.
542- The input arguments are arguments passed in from the host at kernel invocation time. This may include buffers on the host.
543- }];
544- let arguments = (
545- ins DefaultValuedAttr<SymbolNameAttr, "getDefaultRuntimeSequenceName()">:$sym_name
546- );
547- let regions = (region
548- AnyRegion:$body
549- );
550- let hasCustomAssemblyFormat = 1;
551- let hasVerifier = 1;
552- let extraClassDeclaration = [{
553- static llvm::StringRef getDefaultRuntimeSequenceName() { return "sequence"; }
554- static RuntimeSequenceOp getForSymbolInDevice(AIE::DeviceOp module, llvm::StringRef symbol);
555- static RuntimeSequenceOp getForSymbolInDeviceOrError(AIE::DeviceOp module, llvm::StringRef symbol);
556- }];
557- let extraClassDefinition = [{
558- }];
559- }
531+ // NOTE: runtime_sequence operation has been moved to the AIE dialect (AIEOps.td)
532+ // Use aie.runtime_sequence instead of aiex.runtime_sequence
560533
561534def AIE_ConfigureOp: AIEX_Op<"configure", [
562- HasParent<"RuntimeSequenceOp">,
535+ HasParent<"AIE:: RuntimeSequenceOp">,
563536 NoTerminator
564537]>,
565538 Results<(outs Index:$result)>
@@ -596,7 +569,7 @@ def AIE_RunOp: AIEX_Op<"run", [HasParent<"ConfigureOp">]> {
596569
597570 let extraClassDeclaration = [{
598571 AIE::DeviceOp getCalleeDeviceOp();
599- RuntimeSequenceOp getCalleeRuntimeSequenceOp();
572+ AIE:: RuntimeSequenceOp getCalleeRuntimeSequenceOp();
600573 }];
601574
602575 let hasVerifier = 1;
@@ -1044,7 +1017,7 @@ def AIE_NpuLoadPdiOp: AIEX_Op<"npu.load_pdi", []> {
10441017 }];
10451018}
10461019
1047- def AIE_DMAConfigureTaskOp : AIEX_Op<"dma_configure_task", [HasParent<"RuntimeSequenceOp">, TileElement]>, Results<(outs Index:$result)> {
1020+ def AIE_DMAConfigureTaskOp : AIEX_Op<"dma_configure_task", [HasParent<"AIE:: RuntimeSequenceOp">, TileElement]>, Results<(outs Index:$result)> {
10481021 let summary = "Concrete Instantiation of a Buffer Descriptor Chain as a Task on a Channel and Direction on a Tile";
10491022 let description = [{
10501023 Encapsulates the DMA configuration of one task, that is the (chain of) buffer descriptors to be executed on a given channel and direction on a tile.
@@ -1095,7 +1068,7 @@ def AIE_DMAConfigureTaskOp : AIEX_Op<"dma_configure_task", [HasParent<"RuntimeSe
10951068 ];
10961069}
10971070
1098- def AIE_DMAConfigureTaskForOp : AIEX_Op<"dma_configure_task_for", [HasParent<"RuntimeSequenceOp">]>, Results<(outs Index:$result)> {
1071+ def AIE_DMAConfigureTaskForOp : AIEX_Op<"dma_configure_task_for", [HasParent<"AIE:: RuntimeSequenceOp">]>, Results<(outs Index:$result)> {
10991072 let summary = "As dma_configure_task, but specify tile, direction and channel by reference to a Shim DMA allocation op";
11001073
11011074 let arguments = (
@@ -1109,7 +1082,7 @@ def AIE_DMAConfigureTaskForOp : AIEX_Op<"dma_configure_task_for", [HasParent<"Ru
11091082 let assemblyFormat = [{ $alloc regions attr-dict }];
11101083}
11111084
1112- def AIE_DMAFreeTaskOp : AIEX_Op<"dma_free_task", [HasParent<"RuntimeSequenceOp">]> {
1085+ def AIE_DMAFreeTaskOp : AIEX_Op<"dma_free_task", [HasParent<"AIE:: RuntimeSequenceOp">]> {
11131086 let summary = "Free all Buffer Descriptor IDs Associated with the Given Task";
11141087 let description = [{
11151088 This operation informs the static buffer descriptor allocator pass in the compiler that the buffer descriptor IDs it has allocated to the BDs inside the referenced task can be reused thereafter.
@@ -1133,7 +1106,7 @@ def AIE_DMAFreeTaskOp : AIEX_Op<"dma_free_task", [HasParent<"RuntimeSequenceOp">
11331106 }];
11341107}
11351108
1136- def AIE_DMAStartTaskOp : AIEX_Op<"dma_start_task", [HasParent<"RuntimeSequenceOp">]> {
1109+ def AIE_DMAStartTaskOp : AIEX_Op<"dma_start_task", [HasParent<"AIE:: RuntimeSequenceOp">]> {
11371110 let summary = "Submit a Preconfigured Task to the Task Queue";
11381111 let description = [{
11391112 Submits the referenced task for execution on the tile, channel and direction it has been configured to run on.
@@ -1157,7 +1130,7 @@ def AIE_DMAStartTaskOp : AIEX_Op<"dma_start_task", [HasParent<"RuntimeSequenceOp
11571130 }];
11581131}
11591132
1160- def AIE_DMAAwaitTaskOp : AIEX_Op<"dma_await_task", [HasParent<"RuntimeSequenceOp">]> {
1133+ def AIE_DMAAwaitTaskOp : AIEX_Op<"dma_await_task", [HasParent<"AIE:: RuntimeSequenceOp">]> {
11611134 let summary = "Await Completion of a Previously Submitted DMA Task";
11621135 let description = [{
11631136 This operation will block execution of the runtime sequence until the referenced previously started DMA task has completed.
@@ -1184,7 +1157,7 @@ def AIE_DMAAwaitTaskOp : AIEX_Op<"dma_await_task", [HasParent<"RuntimeSequenceOp
11841157 }];
11851158}
11861159
1187- def AIE_DMAStartBdChainOp: AIEX_Op<"dma_start_bd_chain", [HasParent<"RuntimeSequenceOp">, TileElement]>,
1160+ def AIE_DMAStartBdChainOp: AIEX_Op<"dma_start_bd_chain", [HasParent<"AIE:: RuntimeSequenceOp">, TileElement]>,
11881161 Results<(outs Index:$result)>
11891162 {
11901163
@@ -1223,7 +1196,7 @@ def AIE_DMAStartBdChainOp: AIEX_Op<"dma_start_bd_chain", [HasParent<"RuntimeSequ
12231196
12241197}
12251198
1226- def AIE_DMAStartBdChainForOp: AIEX_Op<"dma_start_bd_chain_for", [HasParent<"RuntimeSequenceOp">]>,
1199+ def AIE_DMAStartBdChainForOp: AIEX_Op<"dma_start_bd_chain_for", [HasParent<"AIE:: RuntimeSequenceOp">]>,
12271200 Results<(outs Index:$result)>
12281201 {
12291202 let summary = "As dma_start_bd_chain, but specify tile, direction and channel by reference to a Shim DMA allocation op";
@@ -1241,7 +1214,7 @@ def AIE_DMAStartBdChainForOp: AIEX_Op<"dma_start_bd_chain_for", [HasParent<"Runt
12411214 }];
12421215}
12431216
1244- def AIEX_SetLockOp: AIEX_Op<"set_lock", [HasParent<"RuntimeSequenceOp">, SkipAccessibilityCheckTrait]> {
1217+ def AIEX_SetLockOp: AIEX_Op<"set_lock", [HasParent<"AIE:: RuntimeSequenceOp">, SkipAccessibilityCheckTrait]> {
12451218 let summary = "Set the value of a lock";
12461219 let description = [{
12471220 This operation sets the value of `lock` inside of a RuntimeSequenceOp.
0 commit comments