diff --git a/flang/include/flang/Optimizer/Transforms/Passes.td b/flang/include/flang/Optimizer/Transforms/Passes.td index 61f8b0835c958..0b6e0119c16c3 100644 --- a/flang/include/flang/Optimizer/Transforms/Passes.td +++ b/flang/include/flang/Optimizer/Transforms/Passes.td @@ -383,30 +383,33 @@ def FunctionAttr : Pass<"function-attr", "mlir::func::FuncOp"> { freeing up an additional register in numerous functions. However, this approach can make debugging unfeasible on certain machines. }]; - let options = [ - Option<"framePointerKind", "frame-pointer", - "mlir::LLVM::framePointerKind::FramePointerKind", - /*default=*/"mlir::LLVM::framePointerKind::FramePointerKind{}", - "frame pointer">, - Option<"noInfsFPMath", "no-infs-fp-math", - "bool", /*default=*/"false", - "Set the no-infs-fp-math attribute on functions in the module.">, - Option<"noNaNsFPMath", "no-nans-fp-math", - "bool", /*default=*/"false", - "Set the no-nans-fp-math attribute on functions in the module.">, - Option<"approxFuncFPMath", "approx-func-fp-math", - "bool", /*default=*/"false", + let options = + [Option<"framePointerKind", "frame-pointer", + "mlir::LLVM::framePointerKind::FramePointerKind", + /*default=*/"mlir::LLVM::framePointerKind::FramePointerKind{}", + "frame pointer", [{::llvm::cl::values( + clEnumValN(mlir::LLVM::framePointerKind::FramePointerKind::None, "None", ""), + clEnumValN(mlir::LLVM::framePointerKind::FramePointerKind::NonLeaf, "NonLeaf", ""), + clEnumValN(mlir::LLVM::framePointerKind::FramePointerKind::All, "All", ""), + clEnumValN(mlir::LLVM::framePointerKind::FramePointerKind::Reserved, "Reserved", "") + )}]>, + Option<"noInfsFPMath", "no-infs-fp-math", "bool", /*default=*/"false", + "Set the no-infs-fp-math attribute on functions in the module.">, + Option<"noNaNsFPMath", "no-nans-fp-math", "bool", /*default=*/"false", + "Set the no-nans-fp-math attribute on functions in the module.">, + Option< + "approxFuncFPMath", "approx-func-fp-math", "bool", + /*default=*/"false", "Set the approx-func-fp-math attribute on functions in the module.">, - Option<"noSignedZerosFPMath", "no-signed-zeros-fp-math", - "bool", /*default=*/"false", - "Set the no-signed-zeros-fp-math attribute on functions in the module.">, - Option<"unsafeFPMath", "unsafe-fp-math", - "bool", /*default=*/"false", - "Set the unsafe-fp-math attribute on functions in the module.">, - Option<"tuneCPU", "tune-cpu", - "llvm::StringRef", /*default=*/"llvm::StringRef{}", - "Set the tune-cpu attribute on functions in the module.">, -]; + Option<"noSignedZerosFPMath", "no-signed-zeros-fp-math", "bool", + /*default=*/"false", + "Set the no-signed-zeros-fp-math attribute on functions in the " + "module.">, + Option<"unsafeFPMath", "unsafe-fp-math", "bool", /*default=*/"false", + "Set the unsafe-fp-math attribute on functions in the module.">, + Option<"tuneCPU", "tune-cpu", "std::string", /*default=*/"", + "Set the tune-cpu attribute on functions in the module.">, + ]; } def AssumedRankOpConversion : Pass<"fir-assumed-rank-op", "mlir::ModuleOp"> {