| ... | @@ -9356,11 +9356,11 @@ fn ccAbiPromoteInt( | ... | @@ -9356,11 +9356,11 @@ fn ccAbiPromoteInt( |
| 9356 | return null; | 9356 | return null; |
| 9357 | } | 9357 | } |
| 9358 | | 9358 | |
| | 9359 | /// This is the one source of truth for whether a type is passed around as an LLVM pointer, |
| | 9360 | /// or as an LLVM value. |
| 9359 | fn isByRef(ty: Type) bool { | 9361 | fn isByRef(ty: Type) bool { |
| 9360 | // For tuples and structs, if there are more than this many non-void | 9362 | // For tuples and structs, if there are more than this many non-void |
| 9361 | // fields, then we make it byref, otherwise byval. | 9363 | // fields, then we make it byref, otherwise byval. |
| 9362 | // TODO we actually want to set this to 2, however it is tripping an LLVM 14 regression: | | |
| 9363 | // https://github.com/llvm/llvm-project/issues/56585 | | |
| 9364 | const max_fields_byval = 0; | 9364 | const max_fields_byval = 0; |
| 9365 | | 9365 | |
| 9366 | switch (ty.zigTypeTag()) { | 9366 | switch (ty.zigTypeTag()) { |
| ... | @@ -9421,10 +9421,6 @@ fn isByRef(ty: Type) bool { | ... | @@ -9421,10 +9421,6 @@ fn isByRef(ty: Type) bool { |
| 9421 | return false; | 9421 | return false; |
| 9422 | } | 9422 | } |
| 9423 | return true; | 9423 | return true; |
| 9424 | // TODO we actually want this logic: | | |
| 9425 | // however it is tripping an LLVM 14 regression: | | |
| 9426 | // https://github.com/llvm/llvm-project/issues/56585 | | |
| 9427 | //return isByRef(payload_ty); | | |
| 9428 | }, | 9424 | }, |
| 9429 | .Optional => { | 9425 | .Optional => { |
| 9430 | var buf: Type.Payload.ElemType = undefined; | 9426 | var buf: Type.Payload.ElemType = undefined; |
| ... | @@ -9436,10 +9432,6 @@ fn isByRef(ty: Type) bool { | ... | @@ -9436,10 +9432,6 @@ fn isByRef(ty: Type) bool { |
| 9436 | return false; | 9432 | return false; |
| 9437 | } | 9433 | } |
| 9438 | return true; | 9434 | return true; |
| 9439 | // TODO we actually want this logic: | | |
| 9440 | // however it is tripping an LLVM 14 regression: | | |
| 9441 | // https://github.com/llvm/llvm-project/issues/56585 | | |
| 9442 | //return isByRef(payload_ty); | | |
| 9443 | }, | 9435 | }, |
| 9444 | } | 9436 | } |
| 9445 | } | 9437 | } |