diff --git a/mlir/docs/Traits.md b/mlir/docs/Traits.md --- a/mlir/docs/Traits.md +++ b/mlir/docs/Traits.md @@ -142,8 +142,9 @@ This trait is carried by region holding operations that define a new scope for automatic allocation. Such allocations are automatically freed when control is transferred back from the regions of such operations. As an example, allocations -performed by std.alloca are automatically freed when control leaves the region -of its closest surrounding op that has the trait AutomaticAllocationScope. +performed by [`std.alloca`](Dialects/Standard.md#stdalloca-allocaop) are +automatically freed when control leaves the region of its closest surrounding op +that has the trait AutomaticAllocationScope. ### Broadcastable diff --git a/mlir/include/mlir/Dialect/StandardOps/IR/Ops.td b/mlir/include/mlir/Dialect/StandardOps/IR/Ops.td --- a/mlir/include/mlir/Dialect/StandardOps/IR/Ops.td +++ b/mlir/include/mlir/Dialect/StandardOps/IR/Ops.td @@ -327,9 +327,10 @@ let description = [{ The `alloca` operation allocates memory on the stack, to be automatically released when control transfers back from the region of its closest - surrounding operation with a AutomaticAllocationScope trait. The amount of - memory allocated is specified by its memref and additional operands. For - example: + surrounding operation with an + [`AutomaticAllocationScope`](../Traits.md#automaticallocationscope) trait. + The amount of memory allocated is specified by its memref and additional + operands. For example: ```mlir %0 = alloca() : memref<8x64xf32>