From ae0873483d9393d35bd5bdbfcb2bfb843c335cd5 Mon Sep 17 00:00:00 2001 From: David Blaikie Date: Sat, 18 Sep 2021 22:54:57 -0700 Subject: [PATCH] DWARFDie:DWARFTypePrinter: Add common utility function for checking where parentheses are required --- llvm/lib/DebugInfo/DWARF/DWARFDie.cpp | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/llvm/lib/DebugInfo/DWARF/DWARFDie.cpp b/llvm/lib/DebugInfo/DWARF/DWARFDie.cpp index dc801fa..bd0bd7f 100644 --- a/llvm/lib/DebugInfo/DWARF/DWARFDie.cpp +++ b/llvm/lib/DebugInfo/DWARF/DWARFDie.cpp @@ -173,12 +173,13 @@ struct DWARFTypePrinter { } } + bool needsParens(DWARFDie D) { + return D && (D.getTag() == DW_TAG_subroutine_type || D.getTag() == DW_TAG_array_type); + } + void appendPointerLikeTypeBefore(DWARFDie D, DWARFDie Inner, StringRef Ptr) { appendUnqualifiedNameBefore(Inner); - bool NeedsParens = - Inner && (Inner.getTag() == llvm::dwarf::DW_TAG_subroutine_type || - Inner.getTag() == llvm::dwarf::DW_TAG_array_type); - if (NeedsParens) + if (needsParens(Inner)) OS << '('; else if (Word) OS << ' '; @@ -227,10 +228,7 @@ struct DWARFTypePrinter { break; case DW_TAG_ptr_to_member_type: { appendUnqualifiedNameBefore(Inner); - bool NeedsParens = - Inner && (Inner.getTag() == llvm::dwarf::DW_TAG_subroutine_type || - Inner.getTag() == llvm::dwarf::DW_TAG_array_type); - if (NeedsParens) + if (needsParens(Inner)) OS << '('; else if (Word) OS << ' '; @@ -285,10 +283,7 @@ struct DWARFTypePrinter { case DW_TAG_reference_type: case DW_TAG_rvalue_reference_type: case DW_TAG_pointer_type: { - bool NeedsParens = - Inner && (Inner.getTag() == llvm::dwarf::DW_TAG_subroutine_type || - Inner.getTag() == llvm::dwarf::DW_TAG_array_type); - if (NeedsParens) + if (needsParens(Inner)) OS << ')'; appendUnqualifiedNameAfter( Inner, D.getAttributeValueAsReferencedDie(DW_AT_type), -- 2.7.4