summaryrefslogtreecommitdiffstats
path: root/llvm/lib/BinaryFormat/XCOFF.cpp
diff options
context:
space:
mode:
authorDavid Tenty <daltenty@ibm.com>2019-11-27 17:17:02 -0500
committerDavid Tenty <daltenty@ibm.com>2019-11-27 17:20:55 -0500
commit98740643f794254342e22d106eafb73cf459f465 (patch)
tree4a0338009bfa08ab54ece541a89417e892016283 /llvm/lib/BinaryFormat/XCOFF.cpp
parent40963b2bf0e72626d21917a08f3c86e56541ae7a (diff)
downloadbcm5719-llvm-98740643f794254342e22d106eafb73cf459f465.tar.gz
bcm5719-llvm-98740643f794254342e22d106eafb73cf459f465.zip
[AIX] Emit TOC entries for ASM printing
Summary: Emit the correct .toc psuedo op when we change to the TOC and emit TC entries. Make sure TOC psuedos get the right symbols via overriding getMCSymbolForTOCPseudoMO on AIX. Add a test for TOC assembly writing and update tests to include TOC entries. Also make sure external globals have a csect set and handle external function descriptor (originally authored by Jason Liu) so we can emit TOC entries for them. Reviewers: DiggerLin, sfertile, Xiangling_L, jasonliu, hubert.reinterpretcast Reviewed By: jasonliu Subscribers: arphaman, wuzish, nemanjai, hiraditya, kbarton, jsji, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D70461
Diffstat (limited to 'llvm/lib/BinaryFormat/XCOFF.cpp')
-rw-r--r--llvm/lib/BinaryFormat/XCOFF.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/BinaryFormat/XCOFF.cpp b/llvm/lib/BinaryFormat/XCOFF.cpp
index 001b8077cd3..29ccbaea358 100644
--- a/llvm/lib/BinaryFormat/XCOFF.cpp
+++ b/llvm/lib/BinaryFormat/XCOFF.cpp
@@ -24,6 +24,10 @@ StringRef XCOFF::getMappingClassString(XCOFF::StorageMappingClass SMC) {
return "BS";
case XCOFF::XMC_RO:
return "RO";
+ case XCOFF::XMC_UA:
+ return "UA";
+ case XCOFF::XMC_TC:
+ return "TC";
default:
report_fatal_error("Unhandled storage-mapping class.");
}
OpenPOWER on IntegriCloud