aboutsummaryrefslogtreecommitdiff
path: root/src/llvm_abi.cpp
diff options
context:
space:
mode:
authorCiD- <jkercher43@gmail.com>2022-03-14 13:36:22 -0400
committerCiD- <jkercher43@gmail.com>2022-03-14 13:36:22 -0400
commit1f4e5e919f94b53ea2ed9292b4a9a33488026fcf (patch)
treea073ea401866d4d4a1b83ea819de9c2c2e3893e2 /src/llvm_abi.cpp
parentc293e88f2e31bfed896ddba701bdc2629497005a (diff)
parent1d147ba99339afbef47bf689a0e0d7591a33c633 (diff)
merge upstream/master
Diffstat (limited to 'src/llvm_abi.cpp')
-rw-r--r--src/llvm_abi.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/llvm_abi.cpp b/src/llvm_abi.cpp
index 0244b73d6..07d2dd6e3 100644
--- a/src/llvm_abi.cpp
+++ b/src/llvm_abi.cpp
@@ -1194,8 +1194,10 @@ LB_ABI_INFO(lb_get_abi_info) {
switch (build_context.metrics.arch) {
case TargetArch_amd64:
- if (build_context.metrics.os == TargetOs_windows) {
+ if (build_context.metrics.os == TargetOs_windows || build_context.metrics.abi == TargetABI_Win64) {
return lbAbiAmd64Win64::abi_info(c, arg_types, arg_count, return_type, return_is_defined, calling_convention);
+ } else if (build_context.metrics.abi == TargetABI_SysV) {
+ return lbAbiAmd64SysV::abi_info(c, arg_types, arg_count, return_type, return_is_defined, calling_convention);
} else {
return lbAbiAmd64SysV::abi_info(c, arg_types, arg_count, return_type, return_is_defined, calling_convention);
}