| ... | ... | @@ -18,10 +18,34 @@ pub fn classifyWindows(ty: Type, target: Target) Class { |
| 18 | 18 | else => return .memory, |
| 19 | 19 | } |
| 20 | 20 | return switch (ty.zigTypeTag()) { |
| 21 | | .Int, .Bool, .Enum, .Void, .NoReturn, .ErrorSet, .Struct, .Union => .integer, |
| 22 | | .Optional => if (ty.isPtrLikeOptional()) return .integer else return .memory, |
| 21 | .Pointer, |
| 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 | 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 | |