[all-commits] [llvm/llvm-project] 49bc30: [AIX] unset bit "IsBackChainStored" of traceback t...

diggerlin via All-commits all-commits at lists.llvm.org
Thu Mar 16 12:26:57 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 49bc3077cbf848de6ce07e6f0da82476314924b4
      https://github.com/llvm/llvm-project/commit/49bc3077cbf848de6ce07e6f0da82476314924b4
  Author: zhijian <zhijian at ca.ibm.com>
  Date:   2023-03-16 (Thu, 16 Mar 2023)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-clobber-register.ll
    A llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-redzone-boundary.mir
    M llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-vectorinfo.ll
    M llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-vectorinfo_hasvarg.ll
    M llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable.ll
    M llvm/test/DebugInfo/XCOFF/empty.ll
    M llvm/test/DebugInfo/XCOFF/explicit-section.ll
    M llvm/test/DebugInfo/XCOFF/function-sections.ll

  Log Message:
  -----------
  [AIX] unset bit "IsBackChainStored" of traceback table for leaf functions with no stack frame

Summary:

  In function PPCAIXAsmPrinter::emitTracebackTable() ,the bit "IsBackChainStored" of traceback
table always set true, it will cause aix debug tools "dbx" emit an error info
"libdebug assertion "(framep->getGpr(STKP, &addr) == DB_SUCCESS && *nextStkpp == addr)"
when debug a leaf functions with no stack frame.

If a a leaf functions with no stack frame , the bit IsBackChainStored should be unset.

Reviewers: ChenZheng
Differential Revision: https://reviews.llvm.org/D146071




More information about the All-commits mailing list