aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
diff options
context:
space:
mode:
authordiggerlin <digger.llvm@gmail.com>2020-04-30 09:53:41 -0400
committerdiggerlin <digger.llvm@gmail.com>2020-04-30 09:54:10 -0400
commita2c8cd18128d3529992a86998d2bea80cceafff0 (patch)
treea02816e774c639dd62472e8a918e6aa5750fa52b /llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
parentf6cdcb0a5a607f3d57772d96e1b3cfb94bdd0ed7 (diff)
downloadllvm-a2c8cd18128d3529992a86998d2bea80cceafff0.zip
llvm-a2c8cd18128d3529992a86998d2bea80cceafff0.tar.gz
llvm-a2c8cd18128d3529992a86998d2bea80cceafff0.tar.bz2
[AIX] emit .extern and .weak directive linkage
SUMMARY: emit .extern and .weak directive linkage Reviewers: hubert.reinterpretcast, Jason Liu Subscribers: wuzish, nemanjai, hiraditya Differential Revision: https://reviews.llvm.org/D76932
Diffstat (limited to 'llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp')
-rw-r--r--llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp b/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
index a2dfa0a..a9b1455 100644
--- a/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
+++ b/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
@@ -2131,15 +2131,19 @@ XCOFF::StorageClass TargetLoweringObjectFileXCOFF::getStorageClassForGlobal(
case GlobalValue::CommonLinkage:
return XCOFF::C_EXT;
case GlobalValue::ExternalWeakLinkage:
+ case GlobalValue::LinkOnceAnyLinkage:
case GlobalValue::LinkOnceODRLinkage:
+ case GlobalValue::WeakAnyLinkage:
+ case GlobalValue::WeakODRLinkage:
return XCOFF::C_WEAKEXT;
case GlobalValue::AppendingLinkage:
report_fatal_error(
"There is no mapping that implements AppendingLinkage for XCOFF.");
- default:
- report_fatal_error(
- "Unhandled linkage when mapping linkage to StorageClass.");
+ case GlobalValue::AvailableExternallyLinkage:
+ report_fatal_error("unhandled AvailableExternallyLinkage when mapping "
+ "linkage to StorageClass");
}
+ llvm_unreachable("Unknown linkage type!");
}
MCSection *TargetLoweringObjectFileXCOFF::getSectionForFunctionDescriptor(