[flang-commits] [flang] [llvm] [clang] [clang-tools-extra] [flang] Pass to add frame pointer attribute (PR #74598)
Kiran Chandramohan via flang-commits
flang-commits at lists.llvm.org
Thu Dec 21 03:34:30 PST 2023
================
@@ -349,4 +349,24 @@ def VScaleAttr : Pass<"vscale-attr", "mlir::func::FuncOp"> {
let constructor = "::fir::createVScaleAttrPass()";
}
+def FunctionAttr : Pass<"function-attr", "mlir::func::FuncOp"> {
+ let summary = "This is a generic pass that adds function attributes expected at LLVM IR level";
+ let description = [{ This feature introduces a general attribute aimed at customizing function characteristics.
+ Options include:
+ Add "frame-pointer" attribute to functions: Set an attribute for the frame
+ pointer on functions, to avoid saving the frame pointer in a register in
+ functions where it is unnecessary.
+ This eliminates the need for instructions to save, establish, and restore
+ frame pointers, while also freeing up an additional register in numerous functions.
+ However, this approach can make debugging unfeasible on certain machines.
+ }];
----------------
kiranchandramohan wrote:
```suggestion
let description = [{ This feature introduces a general attribute aimed at
customizing function characteristics.
Options include:
Add "frame-pointer" attribute to functions: Set an attribute for the frame
pointer on functions, to avoid saving the frame pointer in a register in
functions where it is unnecessary. This eliminates the need for
instructions to save, establish, and restore frame pointers, while also
freeing up an additional register in numerous functions. However, this
approach can make debugging unfeasible on certain machines.
}];
```
https://github.com/llvm/llvm-project/pull/74598
More information about the flang-commits
mailing list