[all-commits] [llvm/llvm-project] a1e1dc: [XCOFF][AIX] Emit EH information in traceback table

diggerlin via All-commits all-commits at lists.llvm.org
Wed Dec 16 06:36:08 PST 2020


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a1e1dcabe4fb1f24401f3153409583fe133ffd46
      https://github.com/llvm/llvm-project/commit/a1e1dcabe4fb1f24401f3153409583fe133ffd46
  Author: diggerlin <digger.llvm at gmail.com>
  Date:   2020-12-16 (Wed, 16 Dec 2020)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/XCOFF.h
    M llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
    M llvm/lib/BinaryFormat/XCOFF.cpp
    M llvm/lib/CodeGen/AsmPrinter/AIXException.cpp
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/test/CodeGen/PowerPC/aix-exception.ll

  Log Message:
  -----------
  [XCOFF][AIX] Emit EH information in traceback table

SUMMARY:

In order for the runtime on AIX to find the compact unwind section(EHInfo table),
we would need to set the following on the traceback table:

The 6th byte's longtbtable field to true to signal there is an Extended TB Table Flag.
The Extended TB Table Flag to be 0x08 to signal there is an exception handling info presents.
Emit the offset between ehinfo TC entry and TOC base after all other optional portions of traceback table.

The patch is authored by Jason Liu.

Reviewers: David Tenty, Digger Lin
Differential Revision: https://reviews.llvm.org/D92766




More information about the All-commits mailing list