| ... | @@ -18,10 +18,34 @@ pub fn classifyWindows(ty: Type, target: Target) Class { | ... | @@ -18,10 +18,34 @@ pub fn classifyWindows(ty: Type, target: Target) Class { |
| 18 | else => return .memory, | 18 | else => return .memory, |
| 19 | } | 19 | } |
| 20 | return switch (ty.zigTypeTag()) { | 20 | return switch (ty.zigTypeTag()) { |
| 21 | .Int, .Bool, .Enum, .Void, .NoReturn, .ErrorSet, .Struct, .Union => .integer, | 21 | .Pointer, |
| 22 | .Optional => if (ty.isPtrLikeOptional()) return .integer else return .memory, | 22 | .Int, |
| | 23 | .Bool, |
| | 24 | .Enum, |
| | 25 | .Void, |
| | 26 | .NoReturn, |
| | 27 | .ErrorSet, |
| | 28 | .Struct, |
| | 29 | .Union, |
| | 30 | .Optional, |
| | 31 | .Array, |
| | 32 | .ErrorUnion, |
| | 33 | .AnyFrame, |
| | 34 | .Frame, |
| | 35 | => .integer, |
| | 36 | |
| 23 | .Float, .Vector => .sse, | 37 | .Float, .Vector => .sse, |
| 24 | else => unreachable, | 38 | |
| | 39 | .Type, |
| | 40 | .ComptimeFloat, |
| | 41 | .ComptimeInt, |
| | 42 | .Undefined, |
| | 43 | .Null, |
| | 44 | .BoundFn, |
| | 45 | .Fn, |
| | 46 | .Opaque, |
| | 47 | .EnumLiteral, |
| | 48 | => unreachable, |
| 25 | }; | 49 | }; |
| 26 | } | 50 | } |
| 27 | | 51 | |