[flang-commits] [flang] [flang] Improve debug info for functions. (PR #90083)
Abid Qadeer via flang-commits
flang-commits at lists.llvm.org
Fri Apr 26 08:10:14 PDT 2024
================
@@ -106,14 +107,27 @@ void AddDebugInfoPass::runOnOperation() {
filePath = llvm::sys::path::parent_path(funcLoc.getFilename().getValue());
}
- mlir::StringAttr funcName =
+ mlir::StringAttr fullName =
mlir::StringAttr::get(context, funcOp.getName());
- mlir::LLVM::DIBasicTypeAttr bT = mlir::LLVM::DIBasicTypeAttr::get(
- context, llvm::dwarf::DW_TAG_base_type, "void", /*sizeInBits=*/0,
- /*encoding=*/1);
- // FIXME: Provide proper type for subroutine
+ auto result = fir::NameUniquer::deconstruct(funcOp.getName());
+ mlir::StringAttr funcName =
+ mlir::StringAttr::get(context, result.second.name);
+
+ llvm::SmallVector<mlir::LLVM::DITypeAttr> types;
+ fir::DebugTypeGenerator typeGen(module);
+ for (auto resTy : funcOp.getResultTypes()) {
+ auto tyAttr = typeGen.convertType(fir::unwrapRefType(resTy), fileAttr,
----------------
abidh wrote:
You are right that it is not required. I will remove it. On this topic, can you kindly explain why the arguments are wrapped in the reference?
https://github.com/llvm/llvm-project/pull/90083
More information about the flang-commits
mailing list