| author | |
| committer | |
| log | 9fc9235ac815f8b0ad88445216407a0a9f747d5f |
| tree | 4b1d2fb68a1c982ec23010d09e35950f1f7a9c15 |
| parent | f6e027da32caabdea57bae9ee806abe1d9e3ac68 |
2 files changed, 10 insertions(+), 3 deletions(-)
src/arch/x86_64/CodeGen.zig+8-2| ... | ... | @@ -7733,7 +7733,10 @@ fn genBinOp( |
| 7733 | 7733 | mir_tag, |
| 7734 | 7734 | dst_reg, |
| 7735 | 7735 | lhs_reg, |
| 7736 | src_mcv.mem(Memory.PtrSize.fromSize(abi_size)), | |
| 7736 | src_mcv.mem(switch (lhs_ty.zigTypeTag(mod)) { | |
| 7737 | else => Memory.PtrSize.fromSize(abi_size), | |
| 7738 | .Vector => Memory.PtrSize.fromBitSize(dst_reg.bitSize()), | |
| 7739 | }), | |
| 7737 | 7740 | ) else try self.asmRegisterRegisterRegister( |
| 7738 | 7741 | mir_tag, |
| 7739 | 7742 | dst_reg, |
| ... | ... | @@ -7748,7 +7751,10 @@ fn genBinOp( |
| 7748 | 7751 | if (src_mcv.isMemory()) try self.asmRegisterMemory( |
| 7749 | 7752 | mir_tag, |
| 7750 | 7753 | dst_reg, |
| 7751 | src_mcv.mem(Memory.PtrSize.fromSize(abi_size)), | |
| 7754 | src_mcv.mem(switch (lhs_ty.zigTypeTag(mod)) { | |
| 7755 | else => Memory.PtrSize.fromSize(abi_size), | |
| 7756 | .Vector => Memory.PtrSize.fromBitSize(dst_reg.bitSize()), | |
| 7757 | }), | |
| 7752 | 7758 | ) else try self.asmRegisterRegister( |
| 7753 | 7759 | mir_tag, |
| 7754 | 7760 | dst_reg, |
test/behavior/maximum_minimum.zig+2-1| ... | ... | @@ -276,7 +276,8 @@ test "@min/@max notices bounds from vector types when element of comptime-known |
| 276 | 276 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 277 | 277 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO |
| 278 | 278 | if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; |
| 279 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; | |
| 279 | if (builtin.zig_backend == .stage2_x86_64 and | |
| 280 | !comptime std.Target.x86.featureSetHas(builtin.cpu.features, .sse4_1)) return error.SkipZigTest; | |
| 280 | 281 | |
| 281 | 282 | var x: @Vector(2, u32) = .{ 1_000_000, 12345 }; |
| 282 | 283 | const y: @Vector(2, u16) = .{ 10, undefined }; |