aboutsummaryrefslogtreecommitdiff
path: root/src/check_type.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2019-06-01 12:26:54 +0100
committergingerBill <bill@gingerbill.org>2019-06-01 12:26:54 +0100
commitb38a8cfb12fc37c19a9cb2fb27ef4806d232ff23 (patch)
tree9a0edede62ff821d68d5d5f410d0da72cd25b707 /src/check_type.cpp
parent4c79b5286733d64302751ee74078c155a8138c77 (diff)
Move internal 128-bit stuff to a windows specific file
Diffstat (limited to 'src/check_type.cpp')
-rw-r--r--src/check_type.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/check_type.cpp b/src/check_type.cpp
index f7d577a54..555b54e78 100644
--- a/src/check_type.cpp
+++ b/src/check_type.cpp
@@ -1853,9 +1853,13 @@ Type *type_to_abi_compat_param_type(gbAllocator a, Type *original_type, ProcCall
if (is_type_simd_vector(original_type)) {
return new_type;
}
- if (build_context.word_size == 8) {
+ if (build_context.ODIN_ARCH == "amd64") {
if (is_type_integer_128bit(original_type)) {
- return alloc_type_simd_vector(2, t_u64);
+ if (build_context.ODIN_OS == "windows") {
+ return alloc_type_simd_vector(2, t_u64);
+ } else {
+ return original_type;
+ }
}
}
@@ -1971,7 +1975,7 @@ Type *type_to_abi_compat_result_type(gbAllocator a, Type *original_type, ProcCal
}
if (build_context.ODIN_OS == "windows") {
- if (build_context.word_size == 8) {
+ if (build_context.ODIN_ARCH == "amd64") {
if (is_type_integer_128bit(single_type)) {
if (cc == ProcCC_None) {
return original_type;