Browse Source

Merge pull request #3479 from laytan/support-0-sized-return-arm64-abi

compiler: support returning 0 sized types in arm64 abi
gingerBill 1 year ago
parent
commit
1ea353dbf7
1 changed files with 3 additions and 2 deletions
  1. 3 2
      src/llvm_abi.cpp

+ 3 - 2
src/llvm_abi.cpp

@@ -1131,8 +1131,9 @@ namespace lbAbiArm64 {
 			if (size <= 16) {
 				LLVMTypeRef cast_type = nullptr;
 
-				GB_ASSERT(size > 0);
-				if (size <= 8) {
+				if (size == 0) {
+					cast_type = LLVMStructTypeInContext(c, nullptr, 0, false);
+				} else if (size <= 8) {
 					cast_type = LLVMIntTypeInContext(c, cast(unsigned)(size*8));
 				} else {
 					unsigned count = cast(unsigned)((size+7)/8);