[PowerPC] XCOFF exception section support on the direct assembler path
authorPaul Scoropan <pauls@brimley.rtp.raleigh.ibm.com>
Tue, 27 Sep 2022 02:03:49 +0000 (22:03 -0400)
committerChen Zheng <czhengsz@cn.ibm.com>
Tue, 27 Sep 2022 02:24:20 +0000 (22:24 -0400)
commitce004fb4f2e64650c37ac057dc18934b379a6016
treea57524f8514c85fbdbb64807e3daa694c357858a
parent1172bdecfab364579d90e6aa5ba7fc64a5b96786
[PowerPC] XCOFF exception section support on the direct assembler path

This feature implements support for making entries in the exception section
on XCOFF on the direct assembly path using the ".except" pseudo-op. It also
provides functionality to lower entries (comprised of language and reason
codes) into the exception section through the use of annotation metadata
attached to llvm.ppc.trap/trapd/tw/tdw intrinsics. Integrated assembler
support will be provided in another review. https://reviews.llvm.org/D133030
needs to merge first for LIT tests

Reviewed By: shchenz, RKSimon

Differential Revision: https://reviews.llvm.org/D132146
16 files changed:
llvm/include/llvm/CodeGen/TargetLowering.h
llvm/include/llvm/MC/MCStreamer.h
llvm/include/llvm/MC/MCXCOFFStreamer.h
llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
llvm/lib/MC/MCAsmStreamer.cpp
llvm/lib/MC/MCStreamer.cpp
llvm/lib/MC/MCXCOFFStreamer.cpp
llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
llvm/lib/Target/PowerPC/PPCISelLowering.cpp
llvm/lib/Target/PowerPC/PPCISelLowering.h
llvm/lib/Target/PowerPC/PPCInstr64Bit.td
llvm/lib/Target/PowerPC/PPCInstrInfo.td
llvm/test/CodeGen/PowerPC/builtins-ppc-xlcompat-trap-annotations-td.ll [new file with mode: 0644]
llvm/test/CodeGen/PowerPC/builtins-ppc-xlcompat-trap-annotations-tw.ll [new file with mode: 0644]