diff --git a/unittests/32Bit_ASM/FEX_bugs/VEXW_Bug.asm b/unittests/32Bit_ASM/FEX_bugs/VEXW_Bug.asm index e3d87d4d3..3a6082614 100644 --- a/unittests/32Bit_ASM/FEX_bugs/VEXW_Bug.asm +++ b/unittests/32Bit_ASM/FEX_bugs/VEXW_Bug.asm @@ -69,7 +69,7 @@ vpinsrd xmm5, dword [rel .data_temp + 8], 1 hlt -align 16 +align 4096 .data_xmm0: dq 0x400c000000000000, 0x400c000000000000 .data_xmm1: diff --git a/unittests/32Bit_ASM/Secondary/07_XX_00.asm b/unittests/32Bit_ASM/Secondary/07_XX_00.asm index c62aaba0e..9b0b907ac 100644 --- a/unittests/32Bit_ASM/Secondary/07_XX_00.asm +++ b/unittests/32Bit_ASM/Secondary/07_XX_00.asm @@ -14,6 +14,7 @@ movzx eax, word [rel data] mov ebx, dword [rel data + 2] hlt +align 4096 data: ; Limit dw 0 diff --git a/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_1xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_1xdisp_overflow.asm index 22e2fc5be..53f14233d 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_1xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_1xdisp_overflow.asm @@ -48,7 +48,7 @@ vgatherqpd xmm7, [xmm0 * 1 + eax + 1], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_2xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_2xdisp_overflow.asm index 1aafa41c7..0868559c0 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_2xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_2xdisp_overflow.asm @@ -52,7 +52,7 @@ vgatherqpd xmm7, [xmm0 * 2 + eax + 2], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_4xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_4xdisp_overflow.asm index 03cd205c8..9a4f3eb27 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_4xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_4xdisp_overflow.asm @@ -52,7 +52,7 @@ vgatherqpd xmm7, [xmm0 * 4 + eax + 4], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_8xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_8xdisp_overflow.asm index df9dadba1..5059a06aa 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_8xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qpd_128bit_8xdisp_overflow.asm @@ -52,7 +52,7 @@ vgatherqpd xmm7, [xmm0 * 8 + eax + 8], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_1xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_1xdisp_overflow.asm index 99e18f945..57d775423 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_1xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_1xdisp_overflow.asm @@ -48,7 +48,7 @@ vgatherqpd ymm7, [ymm0 * 1 + eax + 1], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_2xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_2xdisp_overflow.asm index 9ad402c83..b510cad2c 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_2xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_2xdisp_overflow.asm @@ -52,7 +52,7 @@ vgatherqpd ymm7, [ymm0 * 2 + eax + 2], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_4xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_4xdisp_overflow.asm index c5262ad95..8f5876d29 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_4xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_4xdisp_overflow.asm @@ -52,7 +52,7 @@ vgatherqpd ymm7, [ymm0 * 4 + eax + 4], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_8xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_8xdisp_overflow.asm index 0eed24ab6..25eadc120 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_8xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qpd_256bit_8xdisp_overflow.asm @@ -52,7 +52,7 @@ vgatherqpd ymm7, [ymm0 * 8 + eax + 8], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qps_128bit_1xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qps_128bit_1xdisp_overflow.asm index 155d94c20..f1a9477d7 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qps_128bit_1xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qps_128bit_1xdisp_overflow.asm @@ -48,7 +48,7 @@ vgatherqps xmm7, [xmm0 * 1 + eax + 1], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qps_128bit_2xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qps_128bit_2xdisp_overflow.asm index 01268def5..ef07cd86f 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qps_128bit_2xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qps_128bit_2xdisp_overflow.asm @@ -52,7 +52,7 @@ vgatherqps xmm7, [xmm0 * 2 + eax + 2], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qps_128bit_4xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qps_128bit_4xdisp_overflow.asm index 29f7b3365..0d8a0c612 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qps_128bit_4xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qps_128bit_4xdisp_overflow.asm @@ -52,7 +52,7 @@ vgatherqps xmm7, [xmm0 * 4 + eax + 4], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qps_128bit_8xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qps_128bit_8xdisp_overflow.asm index ee566b28d..df5c9893c 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qps_128bit_8xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qps_128bit_8xdisp_overflow.asm @@ -52,7 +52,7 @@ vgatherqps xmm7, [xmm0 * 8 + eax + 8], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qps_256bit_1xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qps_256bit_1xdisp_overflow.asm index d9e9ddbb0..051fb2e24 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qps_256bit_1xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qps_256bit_1xdisp_overflow.asm @@ -48,7 +48,7 @@ vgatherqps xmm7, [ymm0 * 1 + eax + 1], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qps_256bit_2xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qps_256bit_2xdisp_overflow.asm index 43b83249f..abbae05d8 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qps_256bit_2xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qps_256bit_2xdisp_overflow.asm @@ -52,7 +52,7 @@ vgatherqps xmm7, [ymm0 * 2 + eax + 2], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qps_256bit_4xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qps_256bit_4xdisp_overflow.asm index 58f44d06e..22db2936c 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qps_256bit_4xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qps_256bit_4xdisp_overflow.asm @@ -52,7 +52,7 @@ vgatherqps xmm7, [ymm0 * 4 + eax + 4], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vgather_qps_256bit_8xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vgather_qps_256bit_8xdisp_overflow.asm index d6b0bc12f..626191610 100644 --- a/unittests/32Bit_ASM/VEX/vgather_qps_256bit_8xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vgather_qps_256bit_8xdisp_overflow.asm @@ -52,7 +52,7 @@ vgatherqps xmm7, [ymm0 * 8 + eax + 8], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_1xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_1xdisp_overflow.asm index 161edbcda..fbaadb2d5 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_1xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_1xdisp_overflow.asm @@ -48,7 +48,7 @@ vpgatherqd xmm7, [xmm0 * 1 + eax + 1], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_2xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_2xdisp_overflow.asm index 363202d0a..a24a9f206 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_2xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_2xdisp_overflow.asm @@ -52,7 +52,7 @@ vpgatherqd xmm7, [xmm0 * 2 + eax + 2], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_4xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_4xdisp_overflow.asm index 5b8f92cef..3cdc870f6 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_4xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_4xdisp_overflow.asm @@ -52,7 +52,7 @@ vpgatherqd xmm7, [xmm0 * 4 + eax + 4], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_8xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_8xdisp_overflow.asm index 76f4f8769..9e82a98d2 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_8xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qd_128bit_8xdisp_overflow.asm @@ -52,7 +52,7 @@ vpgatherqd xmm7, [xmm0 * 8 + eax + 8], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_1xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_1xdisp_overflow.asm index e4d2ad0bb..b6e338707 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_1xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_1xdisp_overflow.asm @@ -48,7 +48,7 @@ vpgatherqd xmm7, [ymm0 * 1 + eax + 1], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_2xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_2xdisp_overflow.asm index 1b3dfe0fa..203e3152b 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_2xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_2xdisp_overflow.asm @@ -52,7 +52,7 @@ vpgatherqd xmm7, [ymm0 * 2 + eax + 2], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_4xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_4xdisp_overflow.asm index 3a324c190..a0e45843e 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_4xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_4xdisp_overflow.asm @@ -52,7 +52,7 @@ vpgatherqd xmm7, [ymm0 * 4 + eax + 4], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_8xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_8xdisp_overflow.asm index 00e7b4e81..fef210948 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_8xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qd_256bit_8xdisp_overflow.asm @@ -52,7 +52,7 @@ vpgatherqd xmm7, [ymm0 * 8 + eax + 8], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_1xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_1xdisp_overflow.asm index 93cfb7d9f..08a6d5b39 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_1xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_1xdisp_overflow.asm @@ -48,7 +48,7 @@ vpgatherqq xmm7, [xmm0 * 1 + eax + 1], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_2xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_2xdisp_overflow.asm index 1217b255f..b48b8a721 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_2xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_2xdisp_overflow.asm @@ -52,7 +52,7 @@ vpgatherqq xmm7, [xmm0 * 2 + eax + 2], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_4xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_4xdisp_overflow.asm index 0ff1eb7d8..48040160c 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_4xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_4xdisp_overflow.asm @@ -52,7 +52,7 @@ vpgatherqq xmm7, [xmm0 * 4 + eax + 4], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_8xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_8xdisp_overflow.asm index 9ede9ce0f..f0e0baf45 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_8xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qq_128bit_8xdisp_overflow.asm @@ -52,7 +52,7 @@ vpgatherqq xmm7, [xmm0 * 8 + eax + 8], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_1xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_1xdisp_overflow.asm index 9179120c9..f37a849f9 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_1xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_1xdisp_overflow.asm @@ -48,7 +48,7 @@ vpgatherqq ymm7, [ymm0 * 1 + eax + 1], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_2xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_2xdisp_overflow.asm index 13e32245e..5a2854631 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_2xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_2xdisp_overflow.asm @@ -52,7 +52,7 @@ vpgatherqq ymm7, [ymm0 * 2 + eax + 2], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_4xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_4xdisp_overflow.asm index de2b59676..fd9d5fc7e 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_4xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_4xdisp_overflow.asm @@ -52,7 +52,7 @@ vpgatherqq ymm7, [ymm0 * 4 + eax + 4], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_8xdisp_overflow.asm b/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_8xdisp_overflow.asm index 3c4ce32d1..9be482081 100644 --- a/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_8xdisp_overflow.asm +++ b/unittests/32Bit_ASM/VEX/vpgather_qq_256bit_8xdisp_overflow.asm @@ -52,7 +52,7 @@ vpgatherqq ymm7, [ymm0 * 8 + eax + 8], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/32Bit_ASM/X87/D9_02.asm b/unittests/32Bit_ASM/X87/D9_02.asm index 791fd014d..f261dd7a2 100644 --- a/unittests/32Bit_ASM/X87/D9_02.asm +++ b/unittests/32Bit_ASM/X87/D9_02.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld dword [edx + 8 * 0] fst dword [edx + 8 * 1] @@ -17,6 +17,7 @@ mov eax, [edx + 8 * 1] hlt +align 4096 .data: dq 0x3f800000 dq 0 diff --git a/unittests/32Bit_ASM/X87/D9_03.asm b/unittests/32Bit_ASM/X87/D9_03.asm index e0de2b690..323549d2c 100644 --- a/unittests/32Bit_ASM/X87/D9_03.asm +++ b/unittests/32Bit_ASM/X87/D9_03.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld dword [edx + 8 * 0] fstp dword [edx + 8 * 2] @@ -18,6 +18,7 @@ mov eax, [edx + 8 * 2] hlt +align 4096 .data: dq 0x3f800000 dq 0x40000000 diff --git a/unittests/32Bit_ASM/X87/D9_06.asm b/unittests/32Bit_ASM/X87/D9_06.asm index 96c895498..26830d1e1 100644 --- a/unittests/32Bit_ASM/X87/D9_06.asm +++ b/unittests/32Bit_ASM/X87/D9_06.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld dword [edx + 8 * 0] o16 fstenv [edx + 8 * 3] @@ -40,6 +40,7 @@ fld dword [edx + 8 * 1] hlt +align 4096 .data: dq 0x3f800000 dq 0x40000000 diff --git a/unittests/32Bit_ASM/X87/D9_06_2.asm b/unittests/32Bit_ASM/X87/D9_06_2.asm index 2b6224edb..e6183cee6 100644 --- a/unittests/32Bit_ASM/X87/D9_06_2.asm +++ b/unittests/32Bit_ASM/X87/D9_06_2.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld dword [edx + 8 * 0] o32 fstenv [edx + 8 * 3] @@ -40,6 +40,7 @@ fld dword [edx + 8 * 1] hlt +align 4096 .data: dq 0x3f800000 dq 0x40000000 diff --git a/unittests/32Bit_ASM/X87/D9_F6.asm b/unittests/32Bit_ASM/X87/D9_F6.asm index 3a15970a5..9cdd52e58 100644 --- a/unittests/32Bit_ASM/X87/D9_F6.asm +++ b/unittests/32Bit_ASM/X87/D9_F6.asm @@ -20,16 +20,6 @@ ; Then do fincstp and store the stack values into MMX registers through memory ; such that MM0 has the value of ST0 and so on. -section .bss -align 8 -temp: resq 1 -stack: resq 8 - -section .text -global _start - -_start: - mov eax, 0x3ff00000 ; 1.0 mov [rel temp], eax fld dword [rel temp] @@ -100,3 +90,7 @@ movq mm6, [rel stack + 8 * 6] movq mm7, [rel stack + 8 * 7] hlt + +align 4096 +temp: dq 0 +stack: times 8 dq 0 diff --git a/unittests/32Bit_ASM/X87/D9_F7.asm b/unittests/32Bit_ASM/X87/D9_F7.asm index 3d75c8508..77c690508 100644 --- a/unittests/32Bit_ASM/X87/D9_F7.asm +++ b/unittests/32Bit_ASM/X87/D9_F7.asm @@ -20,16 +20,6 @@ ; Then do fincstp and store the stack values into MMX registers through memory ; such that MM0 has the value of ST0 and so on. -section .bss -align 8 -temp: resq 1 -stack: resq 8 - -section .text -global _start - -_start: - mov eax, 0x3ff00000 ; 1.0 mov [rel temp], eax fld dword [rel temp] @@ -99,3 +89,7 @@ movq mm6, [rel stack + 8 * 6] movq mm7, [rel stack + 8 * 7] hlt + +align 4096 +temp: dq 0 +stack: times 8 dq 0 diff --git a/unittests/32Bit_ASM/X87/DA_00.asm b/unittests/32Bit_ASM/X87/DA_00.asm index 82c2492fc..7846f7852 100644 --- a/unittests/32Bit_ASM/X87/DA_00.asm +++ b/unittests/32Bit_ASM/X87/DA_00.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld qword [edx + 8 * 0] fiadd dword [edx + 8 * 1] @@ -18,7 +18,7 @@ fstp tword [rel data2] movups xmm0, [rel data2] ; Test negative -lea edx, [.data_neg] +lea edx, [rel .data_neg] fld qword [edx + 8 * 0] fiadd dword [edx + 8 * 1] @@ -29,6 +29,7 @@ movups xmm1, [rel data2] hlt +align 4096 .data: dq 0x3ff0000000000000 dq 2 diff --git a/unittests/32Bit_ASM/X87/DA_01.asm b/unittests/32Bit_ASM/X87/DA_01.asm index dd48728db..e6ad0a89d 100644 --- a/unittests/32Bit_ASM/X87/DA_01.asm +++ b/unittests/32Bit_ASM/X87/DA_01.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld qword [edx + 8 * 0] fimul dword [edx + 8 * 1] @@ -16,7 +16,7 @@ fstp tword [rel data2] movups xmm0, [rel data2] ; Test negative -lea edx, [.data_neg] +lea edx, [rel .data_neg] fld qword [edx + 8 * 0] fimul dword [edx + 8 * 1] @@ -25,6 +25,7 @@ movups xmm1, [rel data2] hlt +align 4096 .data: dq 0x3ff0000000000000 dq 2 diff --git a/unittests/32Bit_ASM/X87/DA_04.asm b/unittests/32Bit_ASM/X87/DA_04.asm index 60b1cd230..909bd74ad 100644 --- a/unittests/32Bit_ASM/X87/DA_04.asm +++ b/unittests/32Bit_ASM/X87/DA_04.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld qword [edx + 8 * 0] fisub dword [edx + 8 * 1] @@ -16,7 +16,7 @@ fstp tword [rel data2] movups xmm0, [rel data2] ; Test negative -lea edx, [.data_neg] +lea edx, [rel .data_neg] fld qword [edx + 8 * 0] fisub dword [edx + 8 * 1] @@ -25,6 +25,7 @@ movups xmm1, [rel data2] hlt +align 4096 .data: dq 0x3ff0000000000000 dq 2 diff --git a/unittests/32Bit_ASM/X87/DA_05.asm b/unittests/32Bit_ASM/X87/DA_05.asm index 5cc3709e4..0d7fc7e1a 100644 --- a/unittests/32Bit_ASM/X87/DA_05.asm +++ b/unittests/32Bit_ASM/X87/DA_05.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld qword [edx + 8 * 0] fisubr dword [edx + 8 * 1] @@ -16,7 +16,7 @@ fstp tword [rel data2] movups xmm0, [rel data2] ; Test negative -lea edx, [.data_neg] +lea edx, [rel .data_neg] fld qword [edx + 8 * 0] fisubr dword [edx + 8 * 1] @@ -25,6 +25,7 @@ movups xmm1, [rel data2] hlt +align 4096 .data: dq 0x3ff0000000000000 dq 2 diff --git a/unittests/32Bit_ASM/X87/DA_06.asm b/unittests/32Bit_ASM/X87/DA_06.asm index f8186a1f5..d93b9290a 100644 --- a/unittests/32Bit_ASM/X87/DA_06.asm +++ b/unittests/32Bit_ASM/X87/DA_06.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld qword [edx + 8 * 0] fidiv dword [edx + 8 * 1] @@ -16,7 +16,7 @@ fstp tword [rel data2] movups xmm0, [rel data2] ; Test negative -lea edx, [.data_neg] +lea edx, [rel .data_neg] fld qword [edx + 8 * 0] fidiv dword [edx + 8 * 1] @@ -25,6 +25,7 @@ movups xmm1, [rel data2] hlt +align 4096 .data: dq 0x3ff0000000000000 dq 2 diff --git a/unittests/32Bit_ASM/X87/DA_07.asm b/unittests/32Bit_ASM/X87/DA_07.asm index bf36b5c35..fa71ef9a7 100644 --- a/unittests/32Bit_ASM/X87/DA_07.asm +++ b/unittests/32Bit_ASM/X87/DA_07.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld qword [edx + 8 * 0] fidivr dword [edx + 8 * 1] @@ -17,7 +17,7 @@ fstp tword [rel data2] movups xmm0, [rel data2] ; Test negative -lea edx, [.data_neg] +lea edx, [rel .data_neg] fld qword [edx + 8 * 0] fidivr dword [edx + 8 * 1] @@ -27,6 +27,7 @@ movups xmm1, [rel data2] hlt +align 4096 .data: dq 0x3ff0000000000000 dq 2 diff --git a/unittests/32Bit_ASM/X87/DB_01.asm b/unittests/32Bit_ASM/X87/DB_01.asm index cd8d40251..6d7af8026 100644 --- a/unittests/32Bit_ASM/X87/DB_01.asm +++ b/unittests/32Bit_ASM/X87/DB_01.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld dword [edx + 8 * 0] @@ -20,6 +20,7 @@ mov eax, [edx + 8 * 1] hlt +align 4096 .data: dq 0x44800000 dq 0 diff --git a/unittests/32Bit_ASM/X87/DB_02.asm b/unittests/32Bit_ASM/X87/DB_02.asm index 2e9c56618..c2483649e 100644 --- a/unittests/32Bit_ASM/X87/DB_02.asm +++ b/unittests/32Bit_ASM/X87/DB_02.asm @@ -9,7 +9,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld dword [edx + 8 * 0] @@ -21,6 +21,7 @@ mov eax, [edx + 8 * 1] hlt +align 4096 .data: dq 0x44800000 dq 0 diff --git a/unittests/32Bit_ASM/X87/DB_03.asm b/unittests/32Bit_ASM/X87/DB_03.asm index fd520f0f2..b572fdecd 100644 --- a/unittests/32Bit_ASM/X87/DB_03.asm +++ b/unittests/32Bit_ASM/X87/DB_03.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld dword [edx + 8 * 0] fistp dword [edx + 8 * 1] @@ -19,6 +19,7 @@ mov eax, [edx + 8 * 1] hlt +align 4096 .data: dq 0x44800000 dq 0 diff --git a/unittests/32Bit_ASM/X87/DB_07.asm b/unittests/32Bit_ASM/X87/DB_07.asm index 7b5589f9d..978caa73e 100644 --- a/unittests/32Bit_ASM/X87/DB_07.asm +++ b/unittests/32Bit_ASM/X87/DB_07.asm @@ -7,16 +7,16 @@ } %endif -lea edx, [data] +lea edx, [rel data] fld tword [edx + 8 * 0] -lea edx, [data2] +lea edx, [rel data2] fstp tword [edx + 8 * 0] fld tword [edx + 8 * 0] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/32Bit_ASM/X87/DB_E3.asm b/unittests/32Bit_ASM/X87/DB_E3.asm index d38ab1ce9..8d9ef58ac 100644 --- a/unittests/32Bit_ASM/X87/DB_E3.asm +++ b/unittests/32Bit_ASM/X87/DB_E3.asm @@ -7,12 +7,6 @@ } %endif -section .bss -control: resb 2 ; Reserve space for the FPU control word - -section .text -global _start -_start: fninit ; Ensures that fnstcw after fninit sets the correct value @@ -20,3 +14,7 @@ fnstcw [rel control] mov ax, word [rel control] hlt + +align 4096 +control: +times 2 db 0 ; Reserve space for the FPU control word diff --git a/unittests/32Bit_ASM/X87/DD_01.asm b/unittests/32Bit_ASM/X87/DD_01.asm index fe862bf96..f8c5779a5 100644 --- a/unittests/32Bit_ASM/X87/DD_01.asm +++ b/unittests/32Bit_ASM/X87/DD_01.asm @@ -9,21 +9,21 @@ } %endif -lea edx, [data] +lea edx, [rel data] fld tword [edx + 8 * 0] -lea edx, [data3] +lea edx, [rel data3] fisttp qword [edx + 8 * 0] mov eax, [edx + 4 * 0] mov ebx, [edx + 4 * 1] -lea edx, [data2] +lea edx, [rel data2] fld tword [edx + 8 * 0] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/32Bit_ASM/X87/DD_02.asm b/unittests/32Bit_ASM/X87/DD_02.asm index a4efd0dcb..6382fff02 100644 --- a/unittests/32Bit_ASM/X87/DD_02.asm +++ b/unittests/32Bit_ASM/X87/DD_02.asm @@ -10,21 +10,21 @@ } %endif -lea edx, [data] +lea edx, [rel data] fld tword [edx + 8 * 0] -lea edx, [data3] +lea edx, [rel data3] fst qword [edx + 8 * 0] mov eax, [edx + 4 * 0] mov ebx, [edx + 4 * 1] -lea edx, [data2] +lea edx, [rel data2] fld tword [edx + 8 * 0] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/32Bit_ASM/X87/DD_03.asm b/unittests/32Bit_ASM/X87/DD_03.asm index 8b3698e82..8409d0ce9 100644 --- a/unittests/32Bit_ASM/X87/DD_03.asm +++ b/unittests/32Bit_ASM/X87/DD_03.asm @@ -9,21 +9,21 @@ } %endif -lea edx, [data] +lea edx, [rel data] fld tword [edx + 8 * 0] -lea edx, [data3] +lea edx, [rel data3] fstp qword [edx + 8 * 0] mov eax, [edx + 4 * 0] mov ebx, [edx + 4 * 1] -lea edx, [data2] +lea edx, [rel data2] fld tword [edx + 8 * 0] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/32Bit_ASM/X87/DD_04.asm b/unittests/32Bit_ASM/X87/DD_04.asm index ea9fbdd1a..abd20e2a8 100644 --- a/unittests/32Bit_ASM/X87/DD_04.asm +++ b/unittests/32Bit_ASM/X87/DD_04.asm @@ -22,7 +22,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fldz fild word [edx + 2 * 1] @@ -81,6 +81,7 @@ psrldq xmm7, 6 hlt +align 4096 .data: dw 0 dw 2 diff --git a/unittests/32Bit_ASM/X87/DD_04_2.asm b/unittests/32Bit_ASM/X87/DD_04_2.asm index 09975f249..f7f16c8d6 100644 --- a/unittests/32Bit_ASM/X87/DD_04_2.asm +++ b/unittests/32Bit_ASM/X87/DD_04_2.asm @@ -22,7 +22,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fldz fild word [edx + 2 * 1] @@ -81,6 +81,7 @@ psrldq xmm7, 6 hlt +align 4096 .data: dw 0 dw 2 diff --git a/unittests/32Bit_ASM/X87/DD_07.asm b/unittests/32Bit_ASM/X87/DD_07.asm index 77dc2818c..a3cd5bc2d 100644 --- a/unittests/32Bit_ASM/X87/DD_07.asm +++ b/unittests/32Bit_ASM/X87/DD_07.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] mov eax, -1 mov ebx, -1 @@ -21,6 +21,7 @@ mov bx, word [edx + 8 * 1] hlt +align 4096 .data: dq 0x3f800000 dq 0 diff --git a/unittests/32Bit_ASM/X87/DE_00.asm b/unittests/32Bit_ASM/X87/DE_00.asm index f5ef3e4a5..82028ffeb 100644 --- a/unittests/32Bit_ASM/X87/DE_00.asm +++ b/unittests/32Bit_ASM/X87/DE_00.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld qword [edx + 8 * 0] fiadd word [edx + 8 * 1] @@ -16,7 +16,7 @@ fstp tword [rel data2] movups xmm0, [rel data2] ; Test negative -lea edx, [.data_neg] +lea edx, [rel .data_neg] fld qword [edx + 8 * 0] fiadd word [edx + 8 * 1] @@ -27,6 +27,7 @@ movups xmm1, [rel data2] hlt +align 4096 .data: dq 0x3ff0000000000000 dq 2 diff --git a/unittests/32Bit_ASM/X87/DE_01.asm b/unittests/32Bit_ASM/X87/DE_01.asm index e9285a420..bcddf9b86 100644 --- a/unittests/32Bit_ASM/X87/DE_01.asm +++ b/unittests/32Bit_ASM/X87/DE_01.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld qword [edx + 8 * 0] fimul word [edx + 8 * 1] @@ -16,7 +16,7 @@ fstp tword [rel data2] movups xmm0, [rel data2] ; Test negative -lea edx, [.data_neg] +lea edx, [rel .data_neg] fld qword [edx + 8 * 0] fimul word [edx + 8 * 1] @@ -25,6 +25,7 @@ movups xmm1, [rel data2] hlt +align 4096 .data: dq 0x3ff0000000000000 dq 2 diff --git a/unittests/32Bit_ASM/X87/DE_04.asm b/unittests/32Bit_ASM/X87/DE_04.asm index 9cbecdb5b..06a602234 100644 --- a/unittests/32Bit_ASM/X87/DE_04.asm +++ b/unittests/32Bit_ASM/X87/DE_04.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld qword [edx + 8 * 0] fisub word [edx + 8 * 1] @@ -16,7 +16,7 @@ fstp tword [rel data2] movups xmm0, [rel data2] ; Test negative -lea edx, [.data_neg] +lea edx, [rel .data_neg] fld qword [edx + 8 * 0] fisub word [edx + 8 * 1] @@ -25,6 +25,7 @@ movups xmm1, [rel data2] hlt +align 4096 .data: dq 0x3ff0000000000000 dq 2 diff --git a/unittests/32Bit_ASM/X87/DE_05.asm b/unittests/32Bit_ASM/X87/DE_05.asm index d9e944157..a763bcd02 100644 --- a/unittests/32Bit_ASM/X87/DE_05.asm +++ b/unittests/32Bit_ASM/X87/DE_05.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld qword [edx + 8 * 0] fisubr word [edx + 8 * 1] @@ -16,7 +16,7 @@ fstp tword [rel data2] movups xmm0, [rel data2] ; Test negative -lea edx, [.data_neg] +lea edx, [rel .data_neg] fld qword [edx + 8 * 0] fisubr word [edx + 8 * 1] @@ -25,6 +25,7 @@ movups xmm1, [rel data2] hlt +align 4096 .data: dq 0x3ff0000000000000 dq 2 diff --git a/unittests/32Bit_ASM/X87/DE_06.asm b/unittests/32Bit_ASM/X87/DE_06.asm index c1008a3e4..7d41fb07a 100644 --- a/unittests/32Bit_ASM/X87/DE_06.asm +++ b/unittests/32Bit_ASM/X87/DE_06.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld qword [edx + 8 * 0] fidiv word [edx + 8 * 1] @@ -16,7 +16,7 @@ fstp tword [rel data2] movups xmm0, [rel data2] ; Test negative -lea edx, [.data_neg] +lea edx, [rel .data_neg] fld qword [edx + 8 * 0] fidiv word [edx + 8 * 1] @@ -25,6 +25,7 @@ movups xmm1, [rel data2] hlt +align 4096 .data: dq 0x3ff0000000000000 dq 2 diff --git a/unittests/32Bit_ASM/X87/DE_07.asm b/unittests/32Bit_ASM/X87/DE_07.asm index 77c75ab61..1318d099a 100644 --- a/unittests/32Bit_ASM/X87/DE_07.asm +++ b/unittests/32Bit_ASM/X87/DE_07.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld qword [edx + 8 * 0] fidivr word [edx + 8 * 1] @@ -16,7 +16,7 @@ fstp tword [rel data2] movups xmm0, [rel data2] ; Test negative -lea edx, [.data_neg] +lea edx, [rel .data_neg] fld qword [edx + 8 * 0] fidivr word [edx + 8 * 1] @@ -25,6 +25,7 @@ movups xmm1, [rel data2] hlt +align 4096 .data: dq 0x3ff0000000000000 dq 2 diff --git a/unittests/32Bit_ASM/X87/DF_01.asm b/unittests/32Bit_ASM/X87/DF_01.asm index 4283213a0..7d4604b01 100644 --- a/unittests/32Bit_ASM/X87/DF_01.asm +++ b/unittests/32Bit_ASM/X87/DF_01.asm @@ -8,20 +8,20 @@ } %endif -lea edx, [data] +lea edx, [rel data] fld tword [edx + 8 * 0] -lea edx, [data3] +lea edx, [rel data3] fisttp word [edx + 8 * 0] mov ax, word [edx + 8 * 0] -lea edx, [data2] +lea edx, [rel data2] fld tword [edx + 8 * 0] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/32Bit_ASM/X87/DF_02.asm b/unittests/32Bit_ASM/X87/DF_02.asm index 52520f2ac..9782e36cc 100644 --- a/unittests/32Bit_ASM/X87/DF_02.asm +++ b/unittests/32Bit_ASM/X87/DF_02.asm @@ -9,7 +9,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld dword [edx + 8 * 0] @@ -22,6 +22,7 @@ mov ax, word [edx + 8 * 1] hlt +align 4096 .data: dq 0x44800000 dq -1 diff --git a/unittests/32Bit_ASM/X87/DF_03.asm b/unittests/32Bit_ASM/X87/DF_03.asm index b9ba42c98..89f3a843f 100644 --- a/unittests/32Bit_ASM/X87/DF_03.asm +++ b/unittests/32Bit_ASM/X87/DF_03.asm @@ -8,7 +8,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld dword [edx + 8 * 0] @@ -21,6 +21,7 @@ mov ax, word [edx + 8 * 1] hlt +align 4096 .data: dq 0x44800000 dq -1 diff --git a/unittests/32Bit_ASM/X87/DF_07.asm b/unittests/32Bit_ASM/X87/DF_07.asm index b755cefc7..e250667a6 100644 --- a/unittests/32Bit_ASM/X87/DF_07.asm +++ b/unittests/32Bit_ASM/X87/DF_07.asm @@ -9,7 +9,7 @@ } %endif -lea edx, [.data] +lea edx, [rel .data] fld dword [edx + 8 * 0] @@ -22,6 +22,7 @@ mov ebx, dword [edx + 4 * 3] hlt +align 4096 .data: dq 0x44800000 dq -1 diff --git a/unittests/32Bit_ASM/X87/FST_AddrModes.asm b/unittests/32Bit_ASM/X87/FST_AddrModes.asm index 93d5bb678..350805b9e 100644 --- a/unittests/32Bit_ASM/X87/FST_AddrModes.asm +++ b/unittests/32Bit_ASM/X87/FST_AddrModes.asm @@ -15,11 +15,6 @@ } %endif -section .bss -base resb 4096 - -section .text - ; Setup fld1 lea edx, [rel base] @@ -42,3 +37,9 @@ mov edi, dword [edx + esi + 0xa] mov esp, dword [edx + esi * 4 + 0xa] hlt + +align 4096 +section .bss +base resb 4096 + +section .text diff --git a/unittests/32Bit_ASM/X87/RoundingNeg.asm b/unittests/32Bit_ASM/X87/RoundingNeg.asm index fa459692d..f439ec7a8 100644 --- a/unittests/32Bit_ASM/X87/RoundingNeg.asm +++ b/unittests/32Bit_ASM/X87/RoundingNeg.asm @@ -15,22 +15,6 @@ } %endif - -section .data -align 4 -nmidpoint: - dd -1.5 -nsamidpoint: - dd -1.49999 -nsbmidpoint: - dd -1.50001 - -section .bss -align 4 -tmp resd 1 - -section .text - ; Rounding tests to ensure rounding modes are actually working ;;; Negative tests ;; Mid-point @@ -174,3 +158,15 @@ mov bp, word [rel tmp] or edi, ebp hlt + +align 4096 +nmidpoint: + dd -1.5 +nsamidpoint: + dd -1.49999 +nsbmidpoint: + dd -1.50001 + +align 4 +tmp: +dd 0 diff --git a/unittests/32Bit_ASM/X87/RoundingPos.asm b/unittests/32Bit_ASM/X87/RoundingPos.asm index db7ace1d7..b36acf89f 100644 --- a/unittests/32Bit_ASM/X87/RoundingPos.asm +++ b/unittests/32Bit_ASM/X87/RoundingPos.asm @@ -11,21 +11,6 @@ } %endif - -section .data -align 4 -midpoint: - dd 1.5 -samidpoint: - dd 1.50001 -sbmidpoint: - dd 1.49999 - -section .bss -align 4 -tmp resd 1 - -section .text ; Rounding tests to ensure rounding modes are actually working ;; Mid-point finit @@ -161,3 +146,15 @@ fistp dword [rel tmp] or ecx, dword [rel tmp] hlt + +align 4096 +midpoint: + dd 1.5 +samidpoint: + dd 1.50001 +sbmidpoint: + dd 1.49999 + +align 4 +tmp: +dd 0 diff --git a/unittests/32Bit_ASM/X87/invalid_fist_nan.asm b/unittests/32Bit_ASM/X87/invalid_fist_nan.asm index 5623f3d69..25e82b356 100644 --- a/unittests/32Bit_ASM/X87/invalid_fist_nan.asm +++ b/unittests/32Bit_ASM/X87/invalid_fist_nan.asm @@ -22,5 +22,6 @@ and eax, 1 hlt +align 4096 .data: dd 0 diff --git a/unittests/32Bit_ASM/X87/invalid_fist_overflow.asm b/unittests/32Bit_ASM/X87/invalid_fist_overflow.asm index 4e279f390..2ce3055b5 100644 --- a/unittests/32Bit_ASM/X87/invalid_fist_overflow.asm +++ b/unittests/32Bit_ASM/X87/invalid_fist_overflow.asm @@ -21,6 +21,7 @@ and eax, 1 hlt +align 4096 .large_value: dt 1e20 .data: diff --git a/unittests/32Bit_ASM/X87/invalid_fist_overflow_16bit.asm b/unittests/32Bit_ASM/X87/invalid_fist_overflow_16bit.asm index 218708720..8e0641cce 100644 --- a/unittests/32Bit_ASM/X87/invalid_fist_overflow_16bit.asm +++ b/unittests/32Bit_ASM/X87/invalid_fist_overflow_16bit.asm @@ -24,5 +24,6 @@ and eax, 1 hlt +align 4096 .thirty: dd 30 .dummy: dw 0 diff --git a/unittests/32Bit_ASM/X87/invalid_fist_overflow_32bit.asm b/unittests/32Bit_ASM/X87/invalid_fist_overflow_32bit.asm index b3e369e2f..d7dd1983d 100644 --- a/unittests/32Bit_ASM/X87/invalid_fist_overflow_32bit.asm +++ b/unittests/32Bit_ASM/X87/invalid_fist_overflow_32bit.asm @@ -24,5 +24,6 @@ and eax, 1 hlt +align 4096 .forty: dd 40 .dummy: dd 0 diff --git a/unittests/32Bit_ASM/X87/invalid_fist_overflow_64bit.asm b/unittests/32Bit_ASM/X87/invalid_fist_overflow_64bit.asm index 0b1b1e526..23ef4978a 100644 --- a/unittests/32Bit_ASM/X87/invalid_fist_overflow_64bit.asm +++ b/unittests/32Bit_ASM/X87/invalid_fist_overflow_64bit.asm @@ -24,5 +24,6 @@ and eax, 1 hlt +align 4096 .seventyfive: dd 75 .dummy: dq 0 diff --git a/unittests/32Bit_ASM/X87/invalid_fptan_infinity.asm b/unittests/32Bit_ASM/X87/invalid_fptan_infinity.asm index 27cb5ef8b..0b6278a88 100644 --- a/unittests/32Bit_ASM/X87/invalid_fptan_infinity.asm +++ b/unittests/32Bit_ASM/X87/invalid_fptan_infinity.asm @@ -24,6 +24,7 @@ and eax, 1 hlt +align 4096 .pos_inf: dq 0 dw 0 diff --git a/unittests/32Bit_ASM/X87/invalid_fsin_infinity.asm b/unittests/32Bit_ASM/X87/invalid_fsin_infinity.asm index 432ca7fea..a28498183 100644 --- a/unittests/32Bit_ASM/X87/invalid_fsin_infinity.asm +++ b/unittests/32Bit_ASM/X87/invalid_fsin_infinity.asm @@ -24,6 +24,7 @@ and eax, 1 hlt +align 4096 .pos_inf: dq 0 dw 0 diff --git a/unittests/32Bit_ASM/X87/invalid_fsincos_infinity.asm b/unittests/32Bit_ASM/X87/invalid_fsincos_infinity.asm index 253287761..5ae1f7c5f 100644 --- a/unittests/32Bit_ASM/X87/invalid_fsincos_infinity.asm +++ b/unittests/32Bit_ASM/X87/invalid_fsincos_infinity.asm @@ -24,6 +24,7 @@ and eax, 1 hlt +align 4096 .pos_inf: dq 0 dw 0 diff --git a/unittests/32Bit_ASM/X87/invalid_infinity_fsub_memory.asm b/unittests/32Bit_ASM/X87/invalid_infinity_fsub_memory.asm index cf11974fd..a9d2792a3 100644 --- a/unittests/32Bit_ASM/X87/invalid_infinity_fsub_memory.asm +++ b/unittests/32Bit_ASM/X87/invalid_infinity_fsub_memory.asm @@ -11,8 +11,8 @@ ; Setup memory with +infinity (0x7FF0000000000000 for double precision +infinity) ; In 32-bit mode, we need to store the double in two parts -mov dword [.data], 0x00000000 ; Low 32 bits -mov dword [.data+4], 0x7FF00000 ; High 32 bits +mov dword [rel .data], 0x00000000 ; Low 32 bits +mov dword [rel .data+4], 0x7FF00000 ; High 32 bits ; Create +infinity by dividing 1.0 by 0.0 fld1 @@ -20,7 +20,7 @@ fldz fdiv ; Subtract ∞ - ∞ using memory operand - this should be invalid -fsub qword [.data] +fsub qword [rel .data] fstsw ax and eax, 1 @@ -28,4 +28,5 @@ and eax, 1 hlt section .data -.data: dq 0 \ No newline at end of file +align 4096 +.data: dq 0 diff --git a/unittests/32Bit_ASM/X87/invalid_reduced_precision.asm b/unittests/32Bit_ASM/X87/invalid_reduced_precision.asm index 0a1a6599a..9005fbd47 100644 --- a/unittests/32Bit_ASM/X87/invalid_reduced_precision.asm +++ b/unittests/32Bit_ASM/X87/invalid_reduced_precision.asm @@ -9,12 +9,12 @@ ; Test Invalid Operation with reduced precision (64-bit) ; Set precision control to 64-bit (PC = 10b) -fnstcw [.saved_cw] -mov ax, [.saved_cw] +fnstcw [rel .saved_cw] +mov ax, [rel .saved_cw] and ax, 0xFCFF or ax, 0x0200 -mov [.new_cw], ax -fldcw [.new_cw] +mov [rel .new_cw], ax +fldcw [rel .new_cw] ; Perform invalid operation: 0.0 / 0.0 fldz @@ -25,9 +25,10 @@ fstsw ax and eax, 1 ; Restore original control word -fldcw [.saved_cw] +fldcw [rel .saved_cw] hlt +align 4096 .saved_cw: dw 0 .new_cw: dw 0 diff --git a/unittests/32Bit_ASM/X87/valid_fist_16bit.asm b/unittests/32Bit_ASM/X87/valid_fist_16bit.asm index a62388e88..16b5bcf24 100644 --- a/unittests/32Bit_ASM/X87/valid_fist_16bit.asm +++ b/unittests/32Bit_ASM/X87/valid_fist_16bit.asm @@ -12,18 +12,19 @@ ; Load a value that fits in int16 range finit -fld qword [.value] +fld qword [rel .value] ; Convert to int16 - this should work without overflow -fistp word [.result] +fistp word [rel .result] fstsw ax and eax, 1 ; Load the result to verify conversion worked -movzx ebx, word [.result] +movzx ebx, word [rel .result] hlt +align 4096 .value: dq 12345.75 .result: dw 0 diff --git a/unittests/ASM/3DNow/86.asm b/unittests/ASM/3DNow/86.asm index ce047d420..520e4e16a 100644 --- a/unittests/ASM/3DNow/86.asm +++ b/unittests/ASM/3DNow/86.asm @@ -57,16 +57,14 @@ and ebx, eax hlt -section .bss -align 32 -result11: resd 1 -result12: resd 1 -result21: resd 1 -result22: resd 1 -result31: resd 1 -result32: resd 1 +align 4096 +result11: dd 0 +result12: dd 0 +result21: dd 0 +result22: dd 0 +result31: dd 0 +result32: dd 0 -section .data align 8 data1: dd -1.0 diff --git a/unittests/ASM/3DNow/87.asm b/unittests/ASM/3DNow/87.asm index adad419ec..46df83fec 100644 --- a/unittests/ASM/3DNow/87.asm +++ b/unittests/ASM/3DNow/87.asm @@ -51,16 +51,14 @@ and ebx, eax hlt -section .bss -align 32 -result11: resd 1 -result12: resd 1 -result21: resd 1 -result22: resd 1 -result31: resd 1 -result32: resd 1 +align 4096 +result11: dd 0 +result12: dd 0 +result21: dd 0 +result22: dd 0 +result31: dd 0 +result32: dd 0 -section .data align 32 data1: dd 1.0 diff --git a/unittests/ASM/3DNow/96.asm b/unittests/ASM/3DNow/96.asm index aba5ed9d5..b6e9dd9c6 100644 --- a/unittests/ASM/3DNow/96.asm +++ b/unittests/ASM/3DNow/96.asm @@ -68,11 +68,9 @@ pfrcp mm1, [rel data5] hlt -section .bss -align 8 -result resd 1 +align 4096 +result: dd 0 -section .data: align 8 data1: dd -1.0 @@ -106,4 +104,4 @@ dd 1.0 tolerance: dd 0x38800000 ; 2^-14 - 14bit accuracy -define_check_data_constants \ No newline at end of file +define_check_data_constants diff --git a/unittests/ASM/3DNow/97.asm b/unittests/ASM/3DNow/97.asm index 90d463c17..6d6805514 100644 --- a/unittests/ASM/3DNow/97.asm +++ b/unittests/ASM/3DNow/97.asm @@ -48,14 +48,12 @@ pfrsqrt mm4, [rel data5] ; pfrsqrt(0.0) == inf pfrsqrt mm5, [rel data6] ; pfrsqrt(-0.0) == -inf hlt -section .bss -align 8 -result1: resb 32 -result2: resb 32 -result3: resb 32 -result4: resb 32 +align 4096 +result1: times 32 db 0 +result2: times 32 db 0 +result3: times 32 db 0 +result4: times 32 db 0 -section .data align 32 data1: dd 1.0 @@ -96,4 +94,4 @@ dd -9.0 tolerance: dd 0x38000000 ; 2^-15 - accurate to 15bits -define_check_data_constants \ No newline at end of file +define_check_data_constants diff --git a/unittests/ASM/DAZTest.asm b/unittests/ASM/DAZTest.asm index f9afa7658..26fc0226d 100644 --- a/unittests/ASM/DAZTest.asm +++ b/unittests/ASM/DAZTest.asm @@ -23,7 +23,7 @@ ldmxcsr [rel .data_mxcsr] vaddps xmm1, xmm1, xmm2 hlt -align 32 +align 4096 .data_three: dd 3.0, 0x00cfffff diff --git a/unittests/ASM/FEX_bugs/LargeRotatesForSmallSizes.asm b/unittests/ASM/FEX_bugs/LargeRotatesForSmallSizes.asm index 14d28d028..7d1511a88 100644 --- a/unittests/ASM/FEX_bugs/LargeRotatesForSmallSizes.asm +++ b/unittests/ASM/FEX_bugs/LargeRotatesForSmallSizes.asm @@ -111,5 +111,6 @@ mov r15, [rel .data + (15 * 8)] hlt +align 4096 .data: times 16 dq 0x4142434445464748 diff --git a/unittests/ASM/FEX_bugs/TrickyRA.asm b/unittests/ASM/FEX_bugs/TrickyRA.asm index ca724dc0d..8c106d53f 100644 --- a/unittests/ASM/FEX_bugs/TrickyRA.asm +++ b/unittests/ASM/FEX_bugs/TrickyRA.asm @@ -34,7 +34,8 @@ mov qword [rbp-0x9f0], rax mov qword [rbp-0x9e8], rdx hlt -align 16 + +align 4096 .data: times 4096 db 0 .data_mid: diff --git a/unittests/ASM/FEX_bugs/fxrstor_bug.asm b/unittests/ASM/FEX_bugs/fxrstor_bug.asm index a80c682a6..8aa6be46e 100644 --- a/unittests/ASM/FEX_bugs/fxrstor_bug.asm +++ b/unittests/ASM/FEX_bugs/fxrstor_bug.asm @@ -57,7 +57,7 @@ pand xmm7, [rel .x87_mask] hlt -align 16 +align 4096 .save_data: times 64 dq 0 diff --git a/unittests/ASM/FEX_bugs/fxsave_bug.asm b/unittests/ASM/FEX_bugs/fxsave_bug.asm index 4482ba59d..f63e42312 100644 --- a/unittests/ASM/FEX_bugs/fxsave_bug.asm +++ b/unittests/ASM/FEX_bugs/fxsave_bug.asm @@ -56,7 +56,7 @@ pand xmm7, [rel .x87_mask] hlt -align 16 +align 4096 .save_data: times 64 dq 0 diff --git a/unittests/ASM/FEX_bugs/mmx_x87_register_conflating.asm b/unittests/ASM/FEX_bugs/mmx_x87_register_conflating.asm index 19bdb9b24..dc6c3c4ed 100644 --- a/unittests/ASM/FEX_bugs/mmx_x87_register_conflating.asm +++ b/unittests/ASM/FEX_bugs/mmx_x87_register_conflating.asm @@ -110,7 +110,8 @@ movups xmm7, [rel .temp_x87_result + (3 * 16)] movups xmm8, [rel .temp_x87_result + (4 * 16)] hlt -align 32 + +align 4096 .temp_x87_result: times (16 * 8) db 0 diff --git a/unittests/ASM/FEX_bugs/overlapping_memcpy_bug.asm b/unittests/ASM/FEX_bugs/overlapping_memcpy_bug.asm index 424ff8494..fde3ce8a2 100644 --- a/unittests/ASM/FEX_bugs/overlapping_memcpy_bug.asm +++ b/unittests/ASM/FEX_bugs/overlapping_memcpy_bug.asm @@ -84,6 +84,7 @@ mov edx, dword [rel .results + (4 * 3)] hlt +align 4096 .results: dd 0, 0, 0, 0, 0, 0, 0, 0 ; 4096 bytes of random data. diff --git a/unittests/ASM/FEX_bugs/repeat_on_incdec.asm b/unittests/ASM/FEX_bugs/repeat_on_incdec.asm index 86eb46956..e1c8f20d3 100644 --- a/unittests/ASM/FEX_bugs/repeat_on_incdec.asm +++ b/unittests/ASM/FEX_bugs/repeat_on_incdec.asm @@ -28,6 +28,7 @@ mov rdx, [rel .test + 8] hlt +align 4096 .test: db 0, 0, 0, 0, 0, 0, 0, 0 db 0, 0, 0, 0, 0, 0, 0, 0 diff --git a/unittests/ASM/FEX_bugs/sbbNZCVBug.asm b/unittests/ASM/FEX_bugs/sbbNZCVBug.asm index aae588a2d..611f3d987 100644 --- a/unittests/ASM/FEX_bugs/sbbNZCVBug.asm +++ b/unittests/ASM/FEX_bugs/sbbNZCVBug.asm @@ -76,6 +76,7 @@ movzx ebx, dl hlt +align 4096 .current_x: dq 1 diff --git a/unittests/ASM/FEX_bugs/smallvectorload_regreg.asm b/unittests/ASM/FEX_bugs/smallvectorload_regreg.asm index 179a4002c..08d71b920 100644 --- a/unittests/ASM/FEX_bugs/smallvectorload_regreg.asm +++ b/unittests/ASM/FEX_bugs/smallvectorload_regreg.asm @@ -43,7 +43,8 @@ pextrb [rbx + rcx], xmm0, 0 movaps xmm5, [rbx + rcx] hlt -align 32 + +align 4096 .data: dq 0x7172737475767778 dq 0x4142434445464748 diff --git a/unittests/ASM/FEX_bugs/x87DecrementStackBug.asm b/unittests/ASM/FEX_bugs/x87DecrementStackBug.asm index afc068c9f..8af8b532c 100644 --- a/unittests/ASM/FEX_bugs/x87DecrementStackBug.asm +++ b/unittests/ASM/FEX_bugs/x87DecrementStackBug.asm @@ -30,6 +30,7 @@ movups xmm0, [rel .data_result] hlt +align 4096 .data1: dt 2.0 dq 0 diff --git a/unittests/ASM/FEX_bugs/x87IncrementStackBug.asm b/unittests/ASM/FEX_bugs/x87IncrementStackBug.asm index a991aa2c0..1e4392f19 100644 --- a/unittests/ASM/FEX_bugs/x87IncrementStackBug.asm +++ b/unittests/ASM/FEX_bugs/x87IncrementStackBug.asm @@ -32,6 +32,7 @@ movups xmm0, [rel .data_result] hlt +align 4096 ; This or zero are incorrect results .data1: dt 2.0 diff --git a/unittests/ASM/FEX_bugs/x87_fprem.asm b/unittests/ASM/FEX_bugs/x87_fprem.asm index 8f1545d6e..87a759547 100644 --- a/unittests/ASM/FEX_bugs/x87_fprem.asm +++ b/unittests/ASM/FEX_bugs/x87_fprem.asm @@ -63,6 +63,7 @@ mov rsp, qword [rel .data_result + (8 * 7)] hlt +align 4096 .data_big: dq 83403126337775.0 diff --git a/unittests/ASM/FEX_bugs/x87_integer_indefinite.asm b/unittests/ASM/FEX_bugs/x87_integer_indefinite.asm index 289aeec87..3133d1b8d 100644 --- a/unittests/ASM/FEX_bugs/x87_integer_indefinite.asm +++ b/unittests/ASM/FEX_bugs/x87_integer_indefinite.asm @@ -50,6 +50,7 @@ mov rdi, qword [rel .data_res_neg_64] hlt +align 4096 ; One-integer larger than what int16_t can hold .double_larger_than_int16: dq 32768.0 diff --git a/unittests/ASM/H0F3A/66_08.asm b/unittests/ASM/H0F3A/66_08.asm index f6523862e..acc86201f 100644 --- a/unittests/ASM/H0F3A/66_08.asm +++ b/unittests/ASM/H0F3A/66_08.asm @@ -52,7 +52,7 @@ roundps xmm7, [rdx + 8 * 0], 00000100b hlt -align 16 +align 4096 .data: dd 0.5, -0.5, 1.5, -1.5 dq 0, 0 diff --git a/unittests/ASM/H0F3A/66_09.asm b/unittests/ASM/H0F3A/66_09.asm index 0bf1a0392..458029320 100644 --- a/unittests/ASM/H0F3A/66_09.asm +++ b/unittests/ASM/H0F3A/66_09.asm @@ -52,7 +52,7 @@ roundpd xmm7, [rdx + 8 * 0], 00000100b hlt -align 16 +align 4096 .data: dq 0.5, -0.5 dq 0, 0 diff --git a/unittests/ASM/H0F3A/66_0A.asm b/unittests/ASM/H0F3A/66_0A.asm index 662810f92..59766850f 100644 --- a/unittests/ASM/H0F3A/66_0A.asm +++ b/unittests/ASM/H0F3A/66_0A.asm @@ -61,7 +61,7 @@ roundss xmm7, [rdx + 8 * 0], 00000100b hlt -align 16 +align 4096 .data: dd 0.5, -0.5, 1.5, -1.5 dq 0, 0 diff --git a/unittests/ASM/H0F3A/66_0B.asm b/unittests/ASM/H0F3A/66_0B.asm index 97de2c729..5e0aa21a1 100644 --- a/unittests/ASM/H0F3A/66_0B.asm +++ b/unittests/ASM/H0F3A/66_0B.asm @@ -61,7 +61,7 @@ roundsd xmm7, [rdx + 8 * 0], 00000100b hlt -align 16 +align 4096 .data: dq 0.5, -0.5 dq 0, 0 diff --git a/unittests/ASM/H0F3A/66_0E.asm b/unittests/ASM/H0F3A/66_0E.asm index 1aed4b026..1b92b086f 100644 --- a/unittests/ASM/H0F3A/66_0E.asm +++ b/unittests/ASM/H0F3A/66_0E.asm @@ -53,7 +53,7 @@ crc32 rax, qword [rel .data_temp + 8] hlt -align 16 +align 4096 ; 256bytes of random data .data: db 0x7f, 0xa4, 0x2f, 0x4d, 0x25, 0x0f, 0x51, 0x48, 0x86, 0x48, 0x97, 0x3a, 0x31, 0x74, 0x57, 0x2b diff --git a/unittests/ASM/H0F3A/66_22_2.asm b/unittests/ASM/H0F3A/66_22_2.asm index ebfecb52f..a21af6e25 100644 --- a/unittests/ASM/H0F3A/66_22_2.asm +++ b/unittests/ASM/H0F3A/66_22_2.asm @@ -22,12 +22,10 @@ pinsrd xmm0, esi, 0 mov eax, [rel val] hlt -section .bss -align 32 -val resd 1 +align 4096 +val: dd 0 -section .data align 128 -arg1: +arg1: dq 0x414243443f800000 dq 0x5152535455565758 diff --git a/unittests/ASM/H0F3A/pcmpestri_equal_any.asm b/unittests/ASM/H0F3A/pcmpestri_equal_any.asm index ac68107d9..75643bb58 100644 --- a/unittests/ASM/H0F3A/pcmpestri_equal_any.asm +++ b/unittests/ASM/H0F3A/pcmpestri_equal_any.asm @@ -118,7 +118,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6463626144434241 ; "ABCDabcd" dq 0x6C6B6A694C4B4A49 ; "IJKLijkl" diff --git a/unittests/ASM/H0F3A/pcmpestri_equal_each.asm b/unittests/ASM/H0F3A/pcmpestri_equal_each.asm index 75145025b..4f2b7736b 100644 --- a/unittests/ASM/H0F3A/pcmpestri_equal_each.asm +++ b/unittests/ASM/H0F3A/pcmpestri_equal_each.asm @@ -168,7 +168,7 @@ movaps xmm5, [rel .flags + 16] hlt -align 32 +align 4096 .data: dq 0x6550206F6C6C6548 ; "Hello Pe" dq 0x21212121656C706F ; "ople!!!!" diff --git a/unittests/ASM/H0F3A/pcmpestri_equal_ordered.asm b/unittests/ASM/H0F3A/pcmpestri_equal_ordered.asm index 5acc01d96..a096d7fb6 100644 --- a/unittests/ASM/H0F3A/pcmpestri_equal_ordered.asm +++ b/unittests/ASM/H0F3A/pcmpestri_equal_ordered.asm @@ -121,7 +121,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6FFF6C6C ; "ll" with junk following it dq 0x21212121656C706F diff --git a/unittests/ASM/H0F3A/pcmpestri_ranges.asm b/unittests/ASM/H0F3A/pcmpestri_ranges.asm index 155ff6a89..dd79faece 100644 --- a/unittests/ASM/H0F3A/pcmpestri_ranges.asm +++ b/unittests/ASM/H0F3A/pcmpestri_ranges.asm @@ -119,7 +119,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x998877665A417A61 ; "azAZ" (followed by junk) dq 0x55AACCBBFF223344 diff --git a/unittests/ASM/H0F3A/pcmpestrm_equal_any.asm b/unittests/ASM/H0F3A/pcmpestrm_equal_any.asm index 5062bd669..162d2061e 100644 --- a/unittests/ASM/H0F3A/pcmpestrm_equal_any.asm +++ b/unittests/ASM/H0F3A/pcmpestrm_equal_any.asm @@ -127,7 +127,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6463626144434241 ; "ABCDabcd" dq 0x6C6B6A694C4B4A49 ; "IJKLijkl" diff --git a/unittests/ASM/H0F3A/pcmpestrm_equal_each.asm b/unittests/ASM/H0F3A/pcmpestrm_equal_each.asm index 0bdb6cbef..e04a5bfd0 100644 --- a/unittests/ASM/H0F3A/pcmpestrm_equal_each.asm +++ b/unittests/ASM/H0F3A/pcmpestrm_equal_each.asm @@ -134,7 +134,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6C6C6548 ; "Hello Pe" dq 0x21212121656C706F ; "ople!!!!" diff --git a/unittests/ASM/H0F3A/pcmpestrm_equal_ordered.asm b/unittests/ASM/H0F3A/pcmpestrm_equal_ordered.asm index b7c6f6de1..441709621 100644 --- a/unittests/ASM/H0F3A/pcmpestrm_equal_ordered.asm +++ b/unittests/ASM/H0F3A/pcmpestrm_equal_ordered.asm @@ -131,7 +131,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6FFF6C6C ; "ll" with junk following it dq 0x21212121656C706F diff --git a/unittests/ASM/H0F3A/pcmpestrm_ranges.asm b/unittests/ASM/H0F3A/pcmpestrm_ranges.asm index b195796f5..b3039ef02 100644 --- a/unittests/ASM/H0F3A/pcmpestrm_ranges.asm +++ b/unittests/ASM/H0F3A/pcmpestrm_ranges.asm @@ -128,7 +128,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x998877665A417A61 ; "azAZ" (followed by junk) dq 0x55AACCBBFF223344 diff --git a/unittests/ASM/H0F3A/pcmpistri_equal_any.asm b/unittests/ASM/H0F3A/pcmpistri_equal_any.asm index 1fa11e55e..ce66032a1 100644 --- a/unittests/ASM/H0F3A/pcmpistri_equal_any.asm +++ b/unittests/ASM/H0F3A/pcmpistri_equal_any.asm @@ -111,7 +111,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6463626144434241 ; "ABCDabcd" dq 0x6C6B6A694C4B4A00 ; "\0JKLijkl" diff --git a/unittests/ASM/H0F3A/pcmpistri_equal_each.asm b/unittests/ASM/H0F3A/pcmpistri_equal_each.asm index 111b36aa0..fabf2bb10 100644 --- a/unittests/ASM/H0F3A/pcmpistri_equal_each.asm +++ b/unittests/ASM/H0F3A/pcmpistri_equal_each.asm @@ -115,7 +115,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6C6C6548 ; "Hello Pe" dq 0x00002121656C706F ; "ople!!\0\0" diff --git a/unittests/ASM/H0F3A/pcmpistri_equal_ordered.asm b/unittests/ASM/H0F3A/pcmpistri_equal_ordered.asm index 03be23ab7..81e931fbf 100644 --- a/unittests/ASM/H0F3A/pcmpistri_equal_ordered.asm +++ b/unittests/ASM/H0F3A/pcmpistri_equal_ordered.asm @@ -113,7 +113,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6F006C6C ; "ll" with junk following it dq 0x21212121656C706F diff --git a/unittests/ASM/H0F3A/pcmpistri_ranges.asm b/unittests/ASM/H0F3A/pcmpistri_ranges.asm index 091e5fd70..b67371784 100644 --- a/unittests/ASM/H0F3A/pcmpistri_ranges.asm +++ b/unittests/ASM/H0F3A/pcmpistri_ranges.asm @@ -121,7 +121,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x998877005A417A61 ; "azAZ" (followed by junk) dq 0x55AACCBBFF223344 diff --git a/unittests/ASM/H0F3A/pcmpistrm_equal_any.asm b/unittests/ASM/H0F3A/pcmpistrm_equal_any.asm index c0dbbb606..1bb8112bc 100644 --- a/unittests/ASM/H0F3A/pcmpistrm_equal_any.asm +++ b/unittests/ASM/H0F3A/pcmpistrm_equal_any.asm @@ -121,7 +121,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6463626144434241 ; "ABCDabcd" dq 0x6C6B6A694C4B4A00 ; "\0JKLijkl" diff --git a/unittests/ASM/H0F3A/pcmpistrm_equal_each.asm b/unittests/ASM/H0F3A/pcmpistrm_equal_each.asm index e7e388ef9..61d8ac461 100644 --- a/unittests/ASM/H0F3A/pcmpistrm_equal_each.asm +++ b/unittests/ASM/H0F3A/pcmpistrm_equal_each.asm @@ -126,7 +126,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6C6C6548 ; "Hello Pe" dq 0x00002121656C706F ; "ople!!\0\0" diff --git a/unittests/ASM/H0F3A/pcmpistrm_equal_ordered.asm b/unittests/ASM/H0F3A/pcmpistrm_equal_ordered.asm index b48acb8bb..7493e8124 100644 --- a/unittests/ASM/H0F3A/pcmpistrm_equal_ordered.asm +++ b/unittests/ASM/H0F3A/pcmpistrm_equal_ordered.asm @@ -124,7 +124,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6F006C6C ; "ll" with junk following it dq 0x21212121656C706F diff --git a/unittests/ASM/H0F3A/pcmpistrm_ranges.asm b/unittests/ASM/H0F3A/pcmpistrm_ranges.asm index 1a5569f0a..1ac062e71 100644 --- a/unittests/ASM/H0F3A/pcmpistrm_ranges.asm +++ b/unittests/ASM/H0F3A/pcmpistrm_ranges.asm @@ -121,7 +121,7 @@ movaps xmm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x998877005A417A61 ; "azAZ" (followed by junk) dq 0x55AACCBBFF223344 diff --git a/unittests/ASM/OpSize/66_17.asm b/unittests/ASM/OpSize/66_17.asm index 13416d46a..96a0d811c 100644 --- a/unittests/ASM/OpSize/66_17.asm +++ b/unittests/ASM/OpSize/66_17.asm @@ -15,7 +15,7 @@ movapd xmm1, [rdx + 16] hlt -align 16 +align 4096 .data: dq 0x4142434445464748 dq 0x5152535455565758 diff --git a/unittests/ASM/Primary/Primary_D7.asm b/unittests/ASM/Primary/Primary_D7.asm index 1aa873614..148b79361 100644 --- a/unittests/ASM/Primary/Primary_D7.asm +++ b/unittests/ASM/Primary/Primary_D7.asm @@ -52,6 +52,7 @@ wrgsbase rax hlt +align 4096 .data_backup: dq 0 dq 0 diff --git a/unittests/ASM/PrimaryGroup/3_F6_03_2.asm b/unittests/ASM/PrimaryGroup/3_F6_03_2.asm index d4a77a6aa..75ba1c0aa 100644 --- a/unittests/ASM/PrimaryGroup/3_F6_03_2.asm +++ b/unittests/ASM/PrimaryGroup/3_F6_03_2.asm @@ -33,7 +33,7 @@ mov rcx, [r15 + 8 * 2] hlt -align 16 +align 4096 ; 256bytes of random data .data: db 0x7f, 0xa4, 0x2f, 0x4d, 0x25, 0x0f, 0x51, 0x48, 0x86, 0x48, 0x97, 0x3a, 0x31, 0x74, 0x57, 0x2b diff --git a/unittests/ASM/REP/F3_52.asm b/unittests/ASM/REP/F3_52.asm index 33356ae04..361bb8396 100644 --- a/unittests/ASM/REP/F3_52.asm +++ b/unittests/ASM/REP/F3_52.asm @@ -71,7 +71,7 @@ pextrd [rel result4], xmm3, 0 pinsrd xmm3, esi, 0 check_relerr rel eresult4, rel result4, rel tolerance -; no need to test the other results which are the same, +; no need to test the other results which are the same, ; we can just zero them. pinsrd xmm4, esi, 0 pinsrd xmm5, esi, 0 @@ -79,17 +79,15 @@ pinsrd xmm6, esi, 0 pinsrd xmm7, esi, 0 hlt -section .bss -align 32 -result1 resd 1 -result2 resd 1 -result3 resd 1 -result4 resd 1 +align 4096 +result1 dd 0 +result2 dd 0 +result3 dd 0 +result4 dd 0 -section .data align 16 -arg1: +arg1: dq 0x414243443f800000 ; 1.0 dq 0x5152535455565758 @@ -109,13 +107,13 @@ arg5: dq 0x4142434441c80000 ; 25.0 dq 0x5152535455565758 -eresult1: +eresult1: dd 0x3f800000 ; 1.0 eresult2: dd 0x3f000000 ; 0.5 -eresult3: +eresult3: dd 0x3eaaaaab ; 1/3 = 0.(3) eresult4: diff --git a/unittests/ASM/REP/F3_53.asm b/unittests/ASM/REP/F3_53.asm index dc6426ac7..015162bac 100644 --- a/unittests/ASM/REP/F3_53.asm +++ b/unittests/ASM/REP/F3_53.asm @@ -40,16 +40,13 @@ check_relerr rel eresult2, rel result2, rel tolerance hlt +align 4096 +result1 dd 0 +result2 dd 0 -section .bss -align 32 -result1 resd 1 -result2 resd 1 - -section .data align 16 -arg1: +arg1: dq 0x3f8000003f800000 ; 1.0 dq 0x3f8000003f800000 @@ -61,7 +58,7 @@ arg3: dq 0xdeadbeef00000000 ; 0.0 dq 0xbadc0ffebadc0ffe -eresult1: +eresult1: dd 0x3f800000 ; 1.0 eresult2: diff --git a/unittests/ASM/Secondary/07_XX_00.asm b/unittests/ASM/Secondary/07_XX_00.asm index acad65418..7f1eb0305 100644 --- a/unittests/ASM/Secondary/07_XX_00.asm +++ b/unittests/ASM/Secondary/07_XX_00.asm @@ -13,6 +13,7 @@ movzx rax, word [rel data] mov rbx, qword [rel data + 2] hlt +align 4096 data: ; Limit dw 0 diff --git a/unittests/ASM/Secondary/15_F3_00.asm b/unittests/ASM/Secondary/15_F3_00.asm index 7affbe047..d61c84fd9 100644 --- a/unittests/ASM/Secondary/15_F3_00.asm +++ b/unittests/ASM/Secondary/15_F3_00.asm @@ -26,5 +26,6 @@ wrfsbase rdx hlt +align 4096 .data_backup: dq 0 diff --git a/unittests/ASM/Secondary/15_F3_02.asm b/unittests/ASM/Secondary/15_F3_02.asm index e17870fda..0eb94dfa7 100644 --- a/unittests/ASM/Secondary/15_F3_02.asm +++ b/unittests/ASM/Secondary/15_F3_02.asm @@ -25,5 +25,6 @@ wrfsbase rbx hlt +align 4096 .data_backup: dq 0 diff --git a/unittests/ASM/Secondary/15_F3_02_2.asm b/unittests/ASM/Secondary/15_F3_02_2.asm index 891a10891..2528daa38 100644 --- a/unittests/ASM/Secondary/15_F3_02_2.asm +++ b/unittests/ASM/Secondary/15_F3_02_2.asm @@ -25,5 +25,6 @@ wrfsbase rcx hlt +align 4096 .data_backup: dq 0 diff --git a/unittests/ASM/TwoByte/0F_17.asm b/unittests/ASM/TwoByte/0F_17.asm index 288a34bbd..b6efd63e5 100644 --- a/unittests/ASM/TwoByte/0F_17.asm +++ b/unittests/ASM/TwoByte/0F_17.asm @@ -19,7 +19,7 @@ movaps xmm1, [rdx + 32] hlt -align 16 +align 4096 .data: dq 0x4142434445464748 dq 0x5152535455565758 diff --git a/unittests/ASM/TwoByte/0F_52.asm b/unittests/ASM/TwoByte/0F_52.asm index ab14db7b6..bc96f5270 100644 --- a/unittests/ASM/TwoByte/0F_52.asm +++ b/unittests/ASM/TwoByte/0F_52.asm @@ -91,13 +91,12 @@ and r9, rax hlt -section .bss -result1: resd 1 -result2: resd 1 -result3: resd 1 -result4: resd 1 +align 4096 +result1: dd 0 +result2: dd 0 +result3: dd 0 +result4: dd 0 -section .data align 64 arg1: diff --git a/unittests/ASM/TwoByte/0F_53.asm b/unittests/ASM/TwoByte/0F_53.asm index 2227f43a5..ef7fb2034 100644 --- a/unittests/ASM/TwoByte/0F_53.asm +++ b/unittests/ASM/TwoByte/0F_53.asm @@ -15,7 +15,7 @@ %macro same_pdwords 1 ; receives the xmms register movd eax, %1 movd xmm15, eax - pshufd xmm15, xmm15, 0 ; has the lower 32bits of %1 accross all lanes + pshufd xmm15, xmm15, 0 ; has the lower 32bits of %1 accross all lanes pcmpeqd xmm15, %1 ; has equalty mask on all lanes movmskps eax, xmm15 ; gets sign bit of each lane into eax cmp eax, 0b1111 @@ -50,18 +50,17 @@ and r9, rax hlt -section .bss -result1: resd 1 -result2: resd 1 +align 4096 +result1: dd 0 +result2: dd 0 -section .data align 64 -arg1: +arg1: dq 0x3f8000003f800000 ; 1.0 dq 0x3f8000003f800000 -arg2: +arg2: dq 0x4080000040800000 ; 4.0 dq 0x4080000040800000 diff --git a/unittests/ASM/VEX/vcvtps2ph_rd.asm b/unittests/ASM/VEX/vcvtps2ph_rd.asm index 333cbdcf4..8da435400 100644 --- a/unittests/ASM/VEX/vcvtps2ph_rd.asm +++ b/unittests/ASM/VEX/vcvtps2ph_rd.asm @@ -48,7 +48,7 @@ vmovapd xmm7, [rel .memarea + 16] hlt -align 32 +align 4096 .data: dd 0x3F800000, 0x00800000, 0x7F7FFFFF, 0x7FC00000 ; 1.0, FLT_MIN, FLT_MAX, QNaN dd 0x40600000, 0x7F800000, 0xFF800000, 0x00000001 ; 3.5, +inf, -inf, FLT_TRUE_MIN diff --git a/unittests/ASM/VEX/vcvtps2ph_rd_mxcsr.asm b/unittests/ASM/VEX/vcvtps2ph_rd_mxcsr.asm index d88b99e9e..424168647 100644 --- a/unittests/ASM/VEX/vcvtps2ph_rd_mxcsr.asm +++ b/unittests/ASM/VEX/vcvtps2ph_rd_mxcsr.asm @@ -49,7 +49,7 @@ vmovapd xmm7, [rel .memarea + 16] hlt -align 32 +align 4096 .data: dd 0x3F800000, 0x00800000, 0x7F7FFFFF, 0x7FC00000 ; 1.0, FLT_MIN, FLT_MAX, QNaN dd 0x40600000, 0x7F800000, 0xFF800000, 0x00000001 ; 3.5, +inf, -inf, FLT_TRUE_MIN diff --git a/unittests/ASM/VEX/vcvtps2ph_rtne.asm b/unittests/ASM/VEX/vcvtps2ph_rtne.asm index 89960ddb0..c5046e69f 100644 --- a/unittests/ASM/VEX/vcvtps2ph_rtne.asm +++ b/unittests/ASM/VEX/vcvtps2ph_rtne.asm @@ -54,7 +54,7 @@ vmovaps ymm8, [rel .data_bad] hlt -align 32 +align 4096 .data: dd 0x3F800000, 0x00800000, 0x7F7FFFFF, 0x7FC00000 ; 1.0, FLT_MIN, FLT_MAX, QNaN dd 0x40600000, 0x7F800000, 0xFF800000, 0x00000001 ; 3.5, +inf, -inf, FLT_TRUE_MIN diff --git a/unittests/ASM/VEX/vcvtps2ph_rtne_mxcsr.asm b/unittests/ASM/VEX/vcvtps2ph_rtne_mxcsr.asm index 13f0d4793..efbadf3f4 100644 --- a/unittests/ASM/VEX/vcvtps2ph_rtne_mxcsr.asm +++ b/unittests/ASM/VEX/vcvtps2ph_rtne_mxcsr.asm @@ -49,7 +49,7 @@ vmovapd xmm7, [rel .memarea + 16] hlt -align 32 +align 4096 .data: dd 0x3F800000, 0x00800000, 0x7F7FFFFF, 0x7FC00000 ; 1.0, FLT_MIN, FLT_MAX, QNaN dd 0x40600000, 0x7F800000, 0xFF800000, 0x00000001 ; 3.5, +inf, -inf, FLT_TRUE_MIN diff --git a/unittests/ASM/VEX/vcvtps2ph_ru.asm b/unittests/ASM/VEX/vcvtps2ph_ru.asm index 1bc3b0e15..6b5ff0f43 100644 --- a/unittests/ASM/VEX/vcvtps2ph_ru.asm +++ b/unittests/ASM/VEX/vcvtps2ph_ru.asm @@ -48,7 +48,7 @@ vmovapd xmm7, [rel .memarea + 16] hlt -align 32 +align 4096 .data: dd 0x3F800000, 0x00800000, 0x7F7FFFFF, 0x7FC00000 ; 1.0, FLT_MIN, FLT_MAX, QNaN dd 0x40600000, 0x7F800000, 0xFF800000, 0x00000001 ; 3.5, +inf, -inf, FLT_TRUE_MIN diff --git a/unittests/ASM/VEX/vcvtps2ph_ru_mxcsr.asm b/unittests/ASM/VEX/vcvtps2ph_ru_mxcsr.asm index dd505745c..d660d1acb 100644 --- a/unittests/ASM/VEX/vcvtps2ph_ru_mxcsr.asm +++ b/unittests/ASM/VEX/vcvtps2ph_ru_mxcsr.asm @@ -49,7 +49,7 @@ vmovapd xmm7, [rel .memarea + 16] hlt -align 32 +align 4096 .data: dd 0x3F800000, 0x00800000, 0x7F7FFFFF, 0x7FC00000 ; 1.0, FLT_MIN, FLT_MAX, QNaN dd 0x40600000, 0x7F800000, 0xFF800000, 0x00000001 ; 3.5, +inf, -inf, FLT_TRUE_MIN diff --git a/unittests/ASM/VEX/vcvtps2ph_trunc.asm b/unittests/ASM/VEX/vcvtps2ph_trunc.asm index 3d45bcba5..82c6da91a 100644 --- a/unittests/ASM/VEX/vcvtps2ph_trunc.asm +++ b/unittests/ASM/VEX/vcvtps2ph_trunc.asm @@ -48,7 +48,7 @@ vmovapd xmm7, [rel .memarea + 16] hlt -align 32 +align 4096 .data: dd 0x3F800000, 0x00800000, 0x7F7FFFFF, 0x7FC00000 ; 1.0, FLT_MIN, FLT_MAX, QNaN dd 0x40600000, 0x7F800000, 0xFF800000, 0x00000001 ; 3.5, +inf, -inf, FLT_TRUE_MIN diff --git a/unittests/ASM/VEX/vcvtps2ph_trunc_mxcsr.asm b/unittests/ASM/VEX/vcvtps2ph_trunc_mxcsr.asm index ec5bcb74f..b1d37c37c 100644 --- a/unittests/ASM/VEX/vcvtps2ph_trunc_mxcsr.asm +++ b/unittests/ASM/VEX/vcvtps2ph_trunc_mxcsr.asm @@ -49,7 +49,7 @@ vmovapd xmm7, [rel .memarea + 16] hlt -align 32 +align 4096 .data: dd 0x3F800000, 0x00800000, 0x7F7FFFFF, 0x7FC00000 ; 1.0, FLT_MIN, FLT_MAX, QNaN dd 0x40600000, 0x7F800000, 0xFF800000, 0x00000001 ; 3.5, +inf, -inf, FLT_TRUE_MIN diff --git a/unittests/ASM/VEX/vextractf128.asm b/unittests/ASM/VEX/vextractf128.asm index 62b443ac1..b9e2cf373 100644 --- a/unittests/ASM/VEX/vextractf128.asm +++ b/unittests/ASM/VEX/vextractf128.asm @@ -29,7 +29,7 @@ vmovapd ymm15, [rel .scratch2] hlt -align 32 +align 4096 .data: dq 0xAAAAAAAABBBBBBBB dq 0xCCCCCCCCDDDDDDDD diff --git a/unittests/ASM/VEX/vextracti128.asm b/unittests/ASM/VEX/vextracti128.asm index c4cb41ebf..19542f2c2 100644 --- a/unittests/ASM/VEX/vextracti128.asm +++ b/unittests/ASM/VEX/vextracti128.asm @@ -29,7 +29,7 @@ vmovapd ymm15, [rel .scratch2] hlt -align 32 +align 4096 .data: dq 0xAAAAAAAABBBBBBBB dq 0xCCCCCCCCDDDDDDDD diff --git a/unittests/ASM/VEX/vgather_dpd_128bit_1xdisp.asm b/unittests/ASM/VEX/vgather_dpd_128bit_1xdisp.asm index b7686966c..2a846da1b 100644 --- a/unittests/ASM/VEX/vgather_dpd_128bit_1xdisp.asm +++ b/unittests/ASM/VEX/vgather_dpd_128bit_1xdisp.asm @@ -100,7 +100,7 @@ vgatherdpd xmm3, [xmm0 * 1 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_dpd_128bit_2xdisp.asm b/unittests/ASM/VEX/vgather_dpd_128bit_2xdisp.asm index 1aa24ade5..b36a5e92c 100644 --- a/unittests/ASM/VEX/vgather_dpd_128bit_2xdisp.asm +++ b/unittests/ASM/VEX/vgather_dpd_128bit_2xdisp.asm @@ -100,7 +100,7 @@ vgatherdpd xmm3, [xmm0 * 2 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_dpd_128bit_4xdisp.asm b/unittests/ASM/VEX/vgather_dpd_128bit_4xdisp.asm index 1616c764e..55a57a5b9 100644 --- a/unittests/ASM/VEX/vgather_dpd_128bit_4xdisp.asm +++ b/unittests/ASM/VEX/vgather_dpd_128bit_4xdisp.asm @@ -100,7 +100,7 @@ vgatherdpd xmm3, [xmm0 * 4 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_dpd_128bit_8xdisp.asm b/unittests/ASM/VEX/vgather_dpd_128bit_8xdisp.asm index ffd3e2e87..2bb236be7 100644 --- a/unittests/ASM/VEX/vgather_dpd_128bit_8xdisp.asm +++ b/unittests/ASM/VEX/vgather_dpd_128bit_8xdisp.asm @@ -100,7 +100,7 @@ vgatherdpd xmm3, [xmm0 * 8 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_dpd_256bit_1xdisp.asm b/unittests/ASM/VEX/vgather_dpd_256bit_1xdisp.asm index 66dd04d9d..7ab46f2a8 100644 --- a/unittests/ASM/VEX/vgather_dpd_256bit_1xdisp.asm +++ b/unittests/ASM/VEX/vgather_dpd_256bit_1xdisp.asm @@ -100,7 +100,7 @@ vgatherdpd ymm3, [xmm0 * 1 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_dpd_256bit_2xdisp.asm b/unittests/ASM/VEX/vgather_dpd_256bit_2xdisp.asm index c4b514698..1d78f5dea 100644 --- a/unittests/ASM/VEX/vgather_dpd_256bit_2xdisp.asm +++ b/unittests/ASM/VEX/vgather_dpd_256bit_2xdisp.asm @@ -100,7 +100,7 @@ vgatherdpd ymm3, [xmm0 * 2 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_dpd_256bit_4xdisp.asm b/unittests/ASM/VEX/vgather_dpd_256bit_4xdisp.asm index 1594528f7..8e0032632 100644 --- a/unittests/ASM/VEX/vgather_dpd_256bit_4xdisp.asm +++ b/unittests/ASM/VEX/vgather_dpd_256bit_4xdisp.asm @@ -100,7 +100,7 @@ vgatherdpd ymm3, [xmm0 * 4 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_dpd_256bit_8xdisp.asm b/unittests/ASM/VEX/vgather_dpd_256bit_8xdisp.asm index 8c77b8ee4..7bffb7cf4 100644 --- a/unittests/ASM/VEX/vgather_dpd_256bit_8xdisp.asm +++ b/unittests/ASM/VEX/vgather_dpd_256bit_8xdisp.asm @@ -100,7 +100,7 @@ vgatherdpd ymm3, [xmm0 * 8 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_dps_128bit_1xdisp.asm b/unittests/ASM/VEX/vgather_dps_128bit_1xdisp.asm index 1ccd3eb43..4dbb3547a 100644 --- a/unittests/ASM/VEX/vgather_dps_128bit_1xdisp.asm +++ b/unittests/ASM/VEX/vgather_dps_128bit_1xdisp.asm @@ -100,7 +100,7 @@ vgatherdps xmm3, [xmm0 * 1 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_dps_128bit_2xdisp.asm b/unittests/ASM/VEX/vgather_dps_128bit_2xdisp.asm index 1f081d2b4..5fe9126fa 100644 --- a/unittests/ASM/VEX/vgather_dps_128bit_2xdisp.asm +++ b/unittests/ASM/VEX/vgather_dps_128bit_2xdisp.asm @@ -100,7 +100,7 @@ vgatherdps xmm3, [xmm0 * 2 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_dps_128bit_4xdisp.asm b/unittests/ASM/VEX/vgather_dps_128bit_4xdisp.asm index 4c9a36738..141bcb564 100644 --- a/unittests/ASM/VEX/vgather_dps_128bit_4xdisp.asm +++ b/unittests/ASM/VEX/vgather_dps_128bit_4xdisp.asm @@ -100,7 +100,7 @@ vgatherdps xmm3, [xmm0 * 4 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_dps_128bit_8xdisp.asm b/unittests/ASM/VEX/vgather_dps_128bit_8xdisp.asm index 564faa26c..42a842037 100644 --- a/unittests/ASM/VEX/vgather_dps_128bit_8xdisp.asm +++ b/unittests/ASM/VEX/vgather_dps_128bit_8xdisp.asm @@ -100,7 +100,7 @@ vgatherdps xmm3, [xmm0 * 8 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_dps_256bit_1xdisp.asm b/unittests/ASM/VEX/vgather_dps_256bit_1xdisp.asm index f3198e0e8..de1e15cfb 100644 --- a/unittests/ASM/VEX/vgather_dps_256bit_1xdisp.asm +++ b/unittests/ASM/VEX/vgather_dps_256bit_1xdisp.asm @@ -100,7 +100,7 @@ vgatherdps ymm3, [ymm0 * 1 + rax], ymm1 ; xmm1 will be zero after this. hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_dps_256bit_2xdisp.asm b/unittests/ASM/VEX/vgather_dps_256bit_2xdisp.asm index b682ec5c9..163253ed4 100644 --- a/unittests/ASM/VEX/vgather_dps_256bit_2xdisp.asm +++ b/unittests/ASM/VEX/vgather_dps_256bit_2xdisp.asm @@ -100,7 +100,7 @@ vgatherdps ymm3, [ymm0 * 2 + rax], ymm1 ; xmm1 will be zero after this. hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_dps_256bit_4xdisp.asm b/unittests/ASM/VEX/vgather_dps_256bit_4xdisp.asm index c090be7db..eef6dbe53 100644 --- a/unittests/ASM/VEX/vgather_dps_256bit_4xdisp.asm +++ b/unittests/ASM/VEX/vgather_dps_256bit_4xdisp.asm @@ -100,7 +100,7 @@ vgatherdps ymm3, [ymm0 * 4 + rax], ymm1 ; xmm1 will be zero after this. hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_dps_256bit_8xdisp.asm b/unittests/ASM/VEX/vgather_dps_256bit_8xdisp.asm index 615b88108..89542bdbc 100644 --- a/unittests/ASM/VEX/vgather_dps_256bit_8xdisp.asm +++ b/unittests/ASM/VEX/vgather_dps_256bit_8xdisp.asm @@ -99,7 +99,7 @@ vgatherdps ymm3, [ymm0 * 8 + rax], ymm1 ; xmm1 will be zero after this. hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_qpd_128bit_1xdisp.asm b/unittests/ASM/VEX/vgather_qpd_128bit_1xdisp.asm index 5589df096..9a749d470 100644 --- a/unittests/ASM/VEX/vgather_qpd_128bit_1xdisp.asm +++ b/unittests/ASM/VEX/vgather_qpd_128bit_1xdisp.asm @@ -100,7 +100,7 @@ vgatherqpd xmm3, [xmm0 * 1 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_qpd_128bit_1xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qpd_128bit_1xdisp_overflow.asm index 2fea20a1b..3331a200c 100644 --- a/unittests/ASM/VEX/vgather_qpd_128bit_1xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qpd_128bit_1xdisp_overflow.asm @@ -46,7 +46,7 @@ vgatherqpd xmm15, [xmm0 * 1 + rax + 1], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vgather_qpd_128bit_2xdisp.asm b/unittests/ASM/VEX/vgather_qpd_128bit_2xdisp.asm index 1888a1bbd..84a454198 100644 --- a/unittests/ASM/VEX/vgather_qpd_128bit_2xdisp.asm +++ b/unittests/ASM/VEX/vgather_qpd_128bit_2xdisp.asm @@ -100,7 +100,7 @@ vgatherqpd xmm3, [xmm0 * 2 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_qpd_128bit_2xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qpd_128bit_2xdisp_overflow.asm index 2386a7757..6e5692c7c 100644 --- a/unittests/ASM/VEX/vgather_qpd_128bit_2xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qpd_128bit_2xdisp_overflow.asm @@ -50,7 +50,7 @@ vgatherqpd xmm15, [xmm0 * 2 + rax + 2], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vgather_qpd_128bit_4xdisp.asm b/unittests/ASM/VEX/vgather_qpd_128bit_4xdisp.asm index 0b0a7ce12..acef5d95f 100644 --- a/unittests/ASM/VEX/vgather_qpd_128bit_4xdisp.asm +++ b/unittests/ASM/VEX/vgather_qpd_128bit_4xdisp.asm @@ -100,7 +100,7 @@ vgatherqpd xmm3, [xmm0 * 4 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_qpd_128bit_4xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qpd_128bit_4xdisp_overflow.asm index 76dd9c9d7..904d8db1b 100644 --- a/unittests/ASM/VEX/vgather_qpd_128bit_4xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qpd_128bit_4xdisp_overflow.asm @@ -50,7 +50,7 @@ vgatherqpd xmm15, [xmm0 * 4 + rax + 4], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vgather_qpd_128bit_8xdisp.asm b/unittests/ASM/VEX/vgather_qpd_128bit_8xdisp.asm index c2fb4fb0c..308d225e1 100644 --- a/unittests/ASM/VEX/vgather_qpd_128bit_8xdisp.asm +++ b/unittests/ASM/VEX/vgather_qpd_128bit_8xdisp.asm @@ -100,7 +100,7 @@ vgatherqpd xmm3, [xmm0 * 8 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_qpd_128bit_8xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qpd_128bit_8xdisp_overflow.asm index 4e8c9feb1..628bfb529 100644 --- a/unittests/ASM/VEX/vgather_qpd_128bit_8xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qpd_128bit_8xdisp_overflow.asm @@ -50,7 +50,7 @@ vgatherqpd xmm15, [xmm0 * 8 + rax + 8], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vgather_qpd_256bit_1xdisp.asm b/unittests/ASM/VEX/vgather_qpd_256bit_1xdisp.asm index 9eb046a52..2321bfd63 100644 --- a/unittests/ASM/VEX/vgather_qpd_256bit_1xdisp.asm +++ b/unittests/ASM/VEX/vgather_qpd_256bit_1xdisp.asm @@ -100,7 +100,7 @@ vgatherqpd ymm3, [ymm0 * 1 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_qpd_256bit_1xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qpd_256bit_1xdisp_overflow.asm index a1302a973..c8eb79856 100644 --- a/unittests/ASM/VEX/vgather_qpd_256bit_1xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qpd_256bit_1xdisp_overflow.asm @@ -46,7 +46,7 @@ vgatherqpd ymm15, [ymm0 * 1 + rax + 1], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vgather_qpd_256bit_2xdisp.asm b/unittests/ASM/VEX/vgather_qpd_256bit_2xdisp.asm index 1634fd67e..017075f55 100644 --- a/unittests/ASM/VEX/vgather_qpd_256bit_2xdisp.asm +++ b/unittests/ASM/VEX/vgather_qpd_256bit_2xdisp.asm @@ -100,7 +100,7 @@ vgatherqpd ymm3, [ymm0 * 2 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_qpd_256bit_2xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qpd_256bit_2xdisp_overflow.asm index 2b90af167..b2e1a588c 100644 --- a/unittests/ASM/VEX/vgather_qpd_256bit_2xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qpd_256bit_2xdisp_overflow.asm @@ -50,7 +50,7 @@ vgatherqpd ymm15, [ymm0 * 2 + rax + 2], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vgather_qpd_256bit_4xdisp.asm b/unittests/ASM/VEX/vgather_qpd_256bit_4xdisp.asm index b7af9925f..ef98d9f67 100644 --- a/unittests/ASM/VEX/vgather_qpd_256bit_4xdisp.asm +++ b/unittests/ASM/VEX/vgather_qpd_256bit_4xdisp.asm @@ -100,7 +100,7 @@ vgatherqpd ymm3, [ymm0 * 4 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_qpd_256bit_4xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qpd_256bit_4xdisp_overflow.asm index c1275328d..80a44a3ce 100644 --- a/unittests/ASM/VEX/vgather_qpd_256bit_4xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qpd_256bit_4xdisp_overflow.asm @@ -50,7 +50,7 @@ vgatherqpd ymm15, [ymm0 * 4 + rax + 4], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vgather_qpd_256bit_8xdisp.asm b/unittests/ASM/VEX/vgather_qpd_256bit_8xdisp.asm index 15ccb7360..241133166 100644 --- a/unittests/ASM/VEX/vgather_qpd_256bit_8xdisp.asm +++ b/unittests/ASM/VEX/vgather_qpd_256bit_8xdisp.asm @@ -100,7 +100,7 @@ vgatherqpd ymm3, [ymm0 * 8 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vgather_qpd_256bit_8xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qpd_256bit_8xdisp_overflow.asm index dfb827009..fb1024363 100644 --- a/unittests/ASM/VEX/vgather_qpd_256bit_8xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qpd_256bit_8xdisp_overflow.asm @@ -50,7 +50,7 @@ vgatherqpd ymm15, [ymm0 * 8 + rax + 8], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vgather_qps_128bit_1xdisp.asm b/unittests/ASM/VEX/vgather_qps_128bit_1xdisp.asm index 7fee22bbf..e5be98100 100644 --- a/unittests/ASM/VEX/vgather_qps_128bit_1xdisp.asm +++ b/unittests/ASM/VEX/vgather_qps_128bit_1xdisp.asm @@ -100,7 +100,7 @@ vgatherqps xmm3, [xmm0 * 1 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_qps_128bit_1xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qps_128bit_1xdisp_overflow.asm index e438cbcc1..3be0a03cd 100644 --- a/unittests/ASM/VEX/vgather_qps_128bit_1xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qps_128bit_1xdisp_overflow.asm @@ -46,7 +46,7 @@ vgatherqps xmm15, [xmm0 * 1 + rax + 1], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vgather_qps_128bit_2xdisp.asm b/unittests/ASM/VEX/vgather_qps_128bit_2xdisp.asm index 0f295cc2a..c9ccfbcc5 100644 --- a/unittests/ASM/VEX/vgather_qps_128bit_2xdisp.asm +++ b/unittests/ASM/VEX/vgather_qps_128bit_2xdisp.asm @@ -100,7 +100,7 @@ vgatherqps xmm3, [xmm0 * 2 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_qps_128bit_2xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qps_128bit_2xdisp_overflow.asm index 53c72e187..58b6d54c0 100644 --- a/unittests/ASM/VEX/vgather_qps_128bit_2xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qps_128bit_2xdisp_overflow.asm @@ -50,7 +50,7 @@ vgatherqps xmm15, [xmm0 * 2 + rax + 2], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vgather_qps_128bit_4xdisp.asm b/unittests/ASM/VEX/vgather_qps_128bit_4xdisp.asm index 0248517d2..660dbb372 100644 --- a/unittests/ASM/VEX/vgather_qps_128bit_4xdisp.asm +++ b/unittests/ASM/VEX/vgather_qps_128bit_4xdisp.asm @@ -100,7 +100,7 @@ vgatherqps xmm3, [xmm0 * 4 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_qps_128bit_4xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qps_128bit_4xdisp_overflow.asm index 06e36b3bb..cecb24729 100644 --- a/unittests/ASM/VEX/vgather_qps_128bit_4xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qps_128bit_4xdisp_overflow.asm @@ -50,7 +50,7 @@ vgatherqps xmm15, [xmm0 * 4 + rax + 4], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vgather_qps_128bit_8xdisp.asm b/unittests/ASM/VEX/vgather_qps_128bit_8xdisp.asm index 56f1c1ab5..80fb4642a 100644 --- a/unittests/ASM/VEX/vgather_qps_128bit_8xdisp.asm +++ b/unittests/ASM/VEX/vgather_qps_128bit_8xdisp.asm @@ -100,7 +100,7 @@ vgatherqps xmm3, [xmm0 * 8 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_qps_128bit_8xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qps_128bit_8xdisp_overflow.asm index a17bc773e..2fdbb889a 100644 --- a/unittests/ASM/VEX/vgather_qps_128bit_8xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qps_128bit_8xdisp_overflow.asm @@ -50,7 +50,7 @@ vgatherqps xmm15, [xmm0 * 8 + rax + 8], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vgather_qps_256bit_1xdisp.asm b/unittests/ASM/VEX/vgather_qps_256bit_1xdisp.asm index 5c28372f3..212d33895 100644 --- a/unittests/ASM/VEX/vgather_qps_256bit_1xdisp.asm +++ b/unittests/ASM/VEX/vgather_qps_256bit_1xdisp.asm @@ -100,7 +100,7 @@ vgatherqps xmm3, [ymm0 * 1 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_qps_256bit_1xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qps_256bit_1xdisp_overflow.asm index bed42324f..133d982d8 100644 --- a/unittests/ASM/VEX/vgather_qps_256bit_1xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qps_256bit_1xdisp_overflow.asm @@ -46,7 +46,7 @@ vgatherqps xmm15, [ymm0 * 1 + rax + 1], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vgather_qps_256bit_2xdisp.asm b/unittests/ASM/VEX/vgather_qps_256bit_2xdisp.asm index 5618673ba..794dac1f9 100644 --- a/unittests/ASM/VEX/vgather_qps_256bit_2xdisp.asm +++ b/unittests/ASM/VEX/vgather_qps_256bit_2xdisp.asm @@ -100,7 +100,7 @@ vgatherqps xmm3, [ymm0 * 2 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_qps_256bit_2xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qps_256bit_2xdisp_overflow.asm index 7ca66cf90..d6a23f5bd 100644 --- a/unittests/ASM/VEX/vgather_qps_256bit_2xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qps_256bit_2xdisp_overflow.asm @@ -50,7 +50,7 @@ vgatherqps xmm15, [ymm0 * 2 + rax + 2], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vgather_qps_256bit_4xdisp.asm b/unittests/ASM/VEX/vgather_qps_256bit_4xdisp.asm index 995f1fbb3..e24187377 100644 --- a/unittests/ASM/VEX/vgather_qps_256bit_4xdisp.asm +++ b/unittests/ASM/VEX/vgather_qps_256bit_4xdisp.asm @@ -100,7 +100,7 @@ vgatherqps xmm3, [ymm0 * 4 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_qps_256bit_4xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qps_256bit_4xdisp_overflow.asm index 24ac6fb5d..c04722c77 100644 --- a/unittests/ASM/VEX/vgather_qps_256bit_4xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qps_256bit_4xdisp_overflow.asm @@ -50,7 +50,7 @@ vgatherqps xmm15, [ymm0 * 4 + rax + 4], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vgather_qps_256bit_8xdisp.asm b/unittests/ASM/VEX/vgather_qps_256bit_8xdisp.asm index a8ee9572c..78ccd619c 100644 --- a/unittests/ASM/VEX/vgather_qps_256bit_8xdisp.asm +++ b/unittests/ASM/VEX/vgather_qps_256bit_8xdisp.asm @@ -100,7 +100,7 @@ vgatherqps xmm3, [ymm0 * 8 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vgather_qps_256bit_8xdisp_overflow.asm b/unittests/ASM/VEX/vgather_qps_256bit_8xdisp_overflow.asm index cef69844b..c8a8ce105 100644 --- a/unittests/ASM/VEX/vgather_qps_256bit_8xdisp_overflow.asm +++ b/unittests/ASM/VEX/vgather_qps_256bit_8xdisp_overflow.asm @@ -50,7 +50,7 @@ vgatherqps xmm15, [ymm0 * 8 + rax + 8], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vmaskmovdqu.asm b/unittests/ASM/VEX/vmaskmovdqu.asm index 706477619..265e5b1bb 100644 --- a/unittests/ASM/VEX/vmaskmovdqu.asm +++ b/unittests/ASM/VEX/vmaskmovdqu.asm @@ -39,7 +39,7 @@ mov rdi, qword [rdx + 8 * 13] hlt -align 32 +align 4096 .data: dq 0x4142434445464748 dq 0x5152535455565758 diff --git a/unittests/ASM/VEX/vmaskmovpd_load.asm b/unittests/ASM/VEX/vmaskmovpd_load.asm index 8df2d37c8..170ca7512 100644 --- a/unittests/ASM/VEX/vmaskmovpd_load.asm +++ b/unittests/ASM/VEX/vmaskmovpd_load.asm @@ -32,7 +32,7 @@ vmaskmovpd xmm8, xmm2, [rdx] hlt -align 32 +align 4096 .data: dq 0xA76C4F06A12BFCE0 dq 0x9B80767F1E6A060F diff --git a/unittests/ASM/VEX/vmaskmovpd_store.asm b/unittests/ASM/VEX/vmaskmovpd_store.asm index 5c03c9c1e..8099d75b1 100644 --- a/unittests/ASM/VEX/vmaskmovpd_store.asm +++ b/unittests/ASM/VEX/vmaskmovpd_store.asm @@ -42,7 +42,7 @@ vmovaps ymm9, [rel .scratch6] hlt -align 32 +align 4096 .data: dq 0xA76C4F06A12BFCE0 dq 0x9B80767F1E6A060F diff --git a/unittests/ASM/VEX/vmaskmovps_load.asm b/unittests/ASM/VEX/vmaskmovps_load.asm index 0e252a24d..6ba4a1ff4 100644 --- a/unittests/ASM/VEX/vmaskmovps_load.asm +++ b/unittests/ASM/VEX/vmaskmovps_load.asm @@ -32,7 +32,7 @@ vmaskmovps xmm8, xmm2, [rdx] hlt -align 32 +align 4096 .data: dq 0xA76C4F06A12BFCE0 dq 0x9B80767F1E6A060F diff --git a/unittests/ASM/VEX/vmaskmovps_store.asm b/unittests/ASM/VEX/vmaskmovps_store.asm index e6fb580d1..9357ec4ca 100644 --- a/unittests/ASM/VEX/vmaskmovps_store.asm +++ b/unittests/ASM/VEX/vmaskmovps_store.asm @@ -42,7 +42,7 @@ vmovaps ymm9, [rel .scratch6] hlt -align 32 +align 4096 .data: dq 0xA76C4F06A12BFCE0 dq 0x9B80767F1E6A060F diff --git a/unittests/ASM/VEX/vmovdqa.asm b/unittests/ASM/VEX/vmovdqa.asm index 38b352867..a6fda8cf1 100644 --- a/unittests/ASM/VEX/vmovdqa.asm +++ b/unittests/ASM/VEX/vmovdqa.asm @@ -37,7 +37,7 @@ vmovapd ymm6, [rdx] hlt -align 32 +align 4096 .data: db 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF db 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF diff --git a/unittests/ASM/VEX/vmovdqu.asm b/unittests/ASM/VEX/vmovdqu.asm index 7f6962888..1c7b11af3 100644 --- a/unittests/ASM/VEX/vmovdqu.asm +++ b/unittests/ASM/VEX/vmovdqu.asm @@ -37,7 +37,7 @@ vmovapd ymm6, [rdx] hlt -align 32 +align 4096 .data: db 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF db 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF diff --git a/unittests/ASM/VEX/vmovhpd.asm b/unittests/ASM/VEX/vmovhpd.asm index a8dff7b6b..bf33fc7a3 100644 --- a/unittests/ASM/VEX/vmovhpd.asm +++ b/unittests/ASM/VEX/vmovhpd.asm @@ -28,7 +28,7 @@ vmovapd ymm4, [rdx] hlt -align 32 +align 4096 .data: db 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF db 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF diff --git a/unittests/ASM/VEX/vmovhps.asm b/unittests/ASM/VEX/vmovhps.asm index d1d1d8300..ba2ca7b17 100644 --- a/unittests/ASM/VEX/vmovhps.asm +++ b/unittests/ASM/VEX/vmovhps.asm @@ -28,7 +28,7 @@ vmovapd ymm4, [rdx] hlt -align 32 +align 4096 .data: db 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF db 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF diff --git a/unittests/ASM/VEX/vmovlpd.asm b/unittests/ASM/VEX/vmovlpd.asm index 4e3316a6c..d22d547c4 100644 --- a/unittests/ASM/VEX/vmovlpd.asm +++ b/unittests/ASM/VEX/vmovlpd.asm @@ -28,7 +28,7 @@ vmovapd ymm4, [rdx] hlt -align 32 +align 4096 .data: db 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF db 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF diff --git a/unittests/ASM/VEX/vmovlps.asm b/unittests/ASM/VEX/vmovlps.asm index 53b185561..0f63e3a1e 100644 --- a/unittests/ASM/VEX/vmovlps.asm +++ b/unittests/ASM/VEX/vmovlps.asm @@ -28,7 +28,7 @@ vmovapd ymm4, [rdx] hlt -align 32 +align 4096 .data: db 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF db 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF diff --git a/unittests/ASM/VEX/vmovntpd.asm b/unittests/ASM/VEX/vmovntpd.asm index 5b2de714d..e47bede74 100644 --- a/unittests/ASM/VEX/vmovntpd.asm +++ b/unittests/ASM/VEX/vmovntpd.asm @@ -59,7 +59,7 @@ vmovaps xmm7, [rel .data_res4] hlt -align 32 +align 4096 .data_random: dd 83.0999,69.50512,41.02678,13.05881,5.35242,21.9932,9.67383,5.32372,29.02872,66.50151,19.30764,91.3633,40.45086,50.96153,32.64489,23.97574,90.64316,24.22547,98.9394,91.21715,90.80143,99.48407,64.97245,74.39838,35.22761,25.35321,5.8732,90.19956,33.03133,52.02952,58.38554,10.17531,47.84703,84.04831,90.02965,65.81329,96.27991,6.64479,25.58971,95.00694,88.1929,37.16964,49.52602,10.27223,77.70605,20.21439,9.8056,41.29389,15.4071,57.54286,9.61117,55.54302,52.90745,4.88086,72.52882,3.0201,56.55091,71.22749,61.84736,88.74295,47.72641,24.17404,33.70564,96.71303 diff --git a/unittests/ASM/VEX/vmovsd_to_mem.asm b/unittests/ASM/VEX/vmovsd_to_mem.asm index 489f1e57b..d760e21b1 100644 --- a/unittests/ASM/VEX/vmovsd_to_mem.asm +++ b/unittests/ASM/VEX/vmovsd_to_mem.asm @@ -19,9 +19,9 @@ vmovapd xmm0, [rdx + 16] hlt -align 32 +align 4096 .data: dq 0x4142434445464748 dq 0x5152535455565758 dq 0x0000000000000000 -dq 0x0000000000000000 \ No newline at end of file +dq 0x0000000000000000 diff --git a/unittests/ASM/VEX/vpcmpeqb.asm b/unittests/ASM/VEX/vpcmpeqb.asm index f07a49199..427aaffc0 100644 --- a/unittests/ASM/VEX/vpcmpeqb.asm +++ b/unittests/ASM/VEX/vpcmpeqb.asm @@ -27,7 +27,7 @@ vpcmpeqb xmm5, xmm0, [rdx + 32 * 1] hlt -align 32 +align 4096 .data: dq 0x7172737475767778 dq 0x4142434445464748 diff --git a/unittests/ASM/VEX/vpcmpeqd.asm b/unittests/ASM/VEX/vpcmpeqd.asm index b595bbd97..37f1e3bbf 100644 --- a/unittests/ASM/VEX/vpcmpeqd.asm +++ b/unittests/ASM/VEX/vpcmpeqd.asm @@ -27,7 +27,7 @@ vpcmpeqd xmm5, xmm0, [rdx + 32 * 1] hlt -align 32 +align 4096 .data: dq 0x71727374FFFFFFFF dq 0x41424344FFFFFFFF diff --git a/unittests/ASM/VEX/vpcmpeqq.asm b/unittests/ASM/VEX/vpcmpeqq.asm index 7780c1581..8a7362da5 100644 --- a/unittests/ASM/VEX/vpcmpeqq.asm +++ b/unittests/ASM/VEX/vpcmpeqq.asm @@ -27,7 +27,7 @@ vpcmpeqq xmm5, xmm0, [rdx + 32 * 1] hlt -align 32 +align 4096 .data: dq 0xFFFFFFFFFFFFFFFF dq 0x41424344FFFFFFFF diff --git a/unittests/ASM/VEX/vpcmpeqw.asm b/unittests/ASM/VEX/vpcmpeqw.asm index f00ea48d9..5258bfb86 100644 --- a/unittests/ASM/VEX/vpcmpeqw.asm +++ b/unittests/ASM/VEX/vpcmpeqw.asm @@ -27,7 +27,7 @@ vpcmpeqw xmm5, xmm0, [rdx + 32 * 1] hlt -align 32 +align 4096 .data: dq 0x7172737475767778 dq 0x4142434445464748 diff --git a/unittests/ASM/VEX/vpcmpestri_equal_any.asm b/unittests/ASM/VEX/vpcmpestri_equal_any.asm index 33d756cad..753343afc 100644 --- a/unittests/ASM/VEX/vpcmpestri_equal_any.asm +++ b/unittests/ASM/VEX/vpcmpestri_equal_any.asm @@ -118,7 +118,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6463626144434241 ; "ABCDabcd" dq 0x6C6B6A694C4B4A49 ; "IJKLijkl" diff --git a/unittests/ASM/VEX/vpcmpestri_equal_each.asm b/unittests/ASM/VEX/vpcmpestri_equal_each.asm index acb8de892..564ee0230 100644 --- a/unittests/ASM/VEX/vpcmpestri_equal_each.asm +++ b/unittests/ASM/VEX/vpcmpestri_equal_each.asm @@ -164,7 +164,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6C6C6548 ; "Hello Pe" dq 0x21212121656C706F ; "ople!!!!" diff --git a/unittests/ASM/VEX/vpcmpestri_equal_ordered.asm b/unittests/ASM/VEX/vpcmpestri_equal_ordered.asm index 9b377b6fa..03a7b8994 100644 --- a/unittests/ASM/VEX/vpcmpestri_equal_ordered.asm +++ b/unittests/ASM/VEX/vpcmpestri_equal_ordered.asm @@ -121,7 +121,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6FFF6C6C ; "ll" with junk following it dq 0x21212121656C706F diff --git a/unittests/ASM/VEX/vpcmpestri_ranges.asm b/unittests/ASM/VEX/vpcmpestri_ranges.asm index 8bf67507f..4b8dcb6de 100644 --- a/unittests/ASM/VEX/vpcmpestri_ranges.asm +++ b/unittests/ASM/VEX/vpcmpestri_ranges.asm @@ -119,7 +119,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x998877665A417A61 ; "azAZ" (followed by junk) dq 0x55AACCBBFF223344 diff --git a/unittests/ASM/VEX/vpcmpestrm_equal_any.asm b/unittests/ASM/VEX/vpcmpestrm_equal_any.asm index 4c4ae3564..25df411a0 100644 --- a/unittests/ASM/VEX/vpcmpestrm_equal_any.asm +++ b/unittests/ASM/VEX/vpcmpestrm_equal_any.asm @@ -127,7 +127,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6463626144434241 ; "ABCDabcd" dq 0x6C6B6A694C4B4A49 ; "IJKLijkl" diff --git a/unittests/ASM/VEX/vpcmpestrm_equal_each.asm b/unittests/ASM/VEX/vpcmpestrm_equal_each.asm index e63d068de..f18e65e43 100644 --- a/unittests/ASM/VEX/vpcmpestrm_equal_each.asm +++ b/unittests/ASM/VEX/vpcmpestrm_equal_each.asm @@ -134,7 +134,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6C6C6548 ; "Hello Pe" dq 0x21212121656C706F ; "ople!!!!" diff --git a/unittests/ASM/VEX/vpcmpestrm_equal_ordered.asm b/unittests/ASM/VEX/vpcmpestrm_equal_ordered.asm index 6a389dd33..038e97c59 100644 --- a/unittests/ASM/VEX/vpcmpestrm_equal_ordered.asm +++ b/unittests/ASM/VEX/vpcmpestrm_equal_ordered.asm @@ -131,7 +131,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6FFF6C6C ; "ll" with junk following it dq 0x21212121656C706F diff --git a/unittests/ASM/VEX/vpcmpestrm_ranges.asm b/unittests/ASM/VEX/vpcmpestrm_ranges.asm index 799a1fa46..34e6c2e85 100644 --- a/unittests/ASM/VEX/vpcmpestrm_ranges.asm +++ b/unittests/ASM/VEX/vpcmpestrm_ranges.asm @@ -128,7 +128,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x998877665A417A61 ; "azAZ" (followed by junk) dq 0x55AACCBBFF223344 diff --git a/unittests/ASM/VEX/vpcmpgtb.asm b/unittests/ASM/VEX/vpcmpgtb.asm index d83be58c7..94e06dbed 100644 --- a/unittests/ASM/VEX/vpcmpgtb.asm +++ b/unittests/ASM/VEX/vpcmpgtb.asm @@ -27,7 +27,7 @@ vpcmpgtb xmm5, xmm0, [rdx + 32 * 1] hlt -align 32 +align 4096 .data: dq 0x7172737475767778 dq 0x4142434445464748 @@ -37,4 +37,4 @@ dq 0x4142434445464748 dq 0x6162636465666768 dq 0x5152535455565758 dq 0x6162636465666768 -dq 0x5152535455565758 \ No newline at end of file +dq 0x5152535455565758 diff --git a/unittests/ASM/VEX/vpcmpgtd.asm b/unittests/ASM/VEX/vpcmpgtd.asm index 6cf1e6fd2..8559c6f9c 100644 --- a/unittests/ASM/VEX/vpcmpgtd.asm +++ b/unittests/ASM/VEX/vpcmpgtd.asm @@ -27,7 +27,7 @@ vpcmpgtd xmm5, xmm0, [rdx + 32 * 1] hlt -align 32 +align 4096 .data: dq 0x7172737475767778 dq 0x4142434445464748 diff --git a/unittests/ASM/VEX/vpcmpgtq.asm b/unittests/ASM/VEX/vpcmpgtq.asm index caf825ef0..40feb2c58 100644 --- a/unittests/ASM/VEX/vpcmpgtq.asm +++ b/unittests/ASM/VEX/vpcmpgtq.asm @@ -43,7 +43,7 @@ vpcmpgtq xmm14, xmm4, [rel .data0] hlt -align 32 +align 4096 .data0: dq 0 dq 0 diff --git a/unittests/ASM/VEX/vpcmpgtw.asm b/unittests/ASM/VEX/vpcmpgtw.asm index 26872e342..c5ba469c8 100644 --- a/unittests/ASM/VEX/vpcmpgtw.asm +++ b/unittests/ASM/VEX/vpcmpgtw.asm @@ -27,7 +27,7 @@ vpcmpgtw xmm5, xmm0, [rdx + 32 * 1] hlt -align 32 +align 4096 .data: dq 0x7172737475767778 dq 0x4142434445464748 diff --git a/unittests/ASM/VEX/vpcmpistri_equal_any.asm b/unittests/ASM/VEX/vpcmpistri_equal_any.asm index 07172884e..e85710292 100644 --- a/unittests/ASM/VEX/vpcmpistri_equal_any.asm +++ b/unittests/ASM/VEX/vpcmpistri_equal_any.asm @@ -111,7 +111,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6463626144434241 ; "ABCDabcd" dq 0x6C6B6A694C4B4A00 ; "\0JKLijkl" diff --git a/unittests/ASM/VEX/vpcmpistri_equal_each.asm b/unittests/ASM/VEX/vpcmpistri_equal_each.asm index 4df373192..5348b3afa 100644 --- a/unittests/ASM/VEX/vpcmpistri_equal_each.asm +++ b/unittests/ASM/VEX/vpcmpistri_equal_each.asm @@ -115,7 +115,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6C6C6548 ; "Hello Pe" dq 0x00002121656C706F ; "ople!!\0\0" diff --git a/unittests/ASM/VEX/vpcmpistri_equal_ordered.asm b/unittests/ASM/VEX/vpcmpistri_equal_ordered.asm index 8d12c65f2..754d3cb2e 100644 --- a/unittests/ASM/VEX/vpcmpistri_equal_ordered.asm +++ b/unittests/ASM/VEX/vpcmpistri_equal_ordered.asm @@ -113,7 +113,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6F006C6C ; "ll" with junk following it dq 0x21212121656C706F diff --git a/unittests/ASM/VEX/vpcmpistri_ranges.asm b/unittests/ASM/VEX/vpcmpistri_ranges.asm index 56b9c7099..1d37b1d8a 100644 --- a/unittests/ASM/VEX/vpcmpistri_ranges.asm +++ b/unittests/ASM/VEX/vpcmpistri_ranges.asm @@ -111,7 +111,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x998877005A417A61 ; "azAZ" (followed by junk) dq 0x55AACCBBFF223344 diff --git a/unittests/ASM/VEX/vpcmpistrm_equal_any.asm b/unittests/ASM/VEX/vpcmpistrm_equal_any.asm index 5f4674828..6232e20b4 100644 --- a/unittests/ASM/VEX/vpcmpistrm_equal_any.asm +++ b/unittests/ASM/VEX/vpcmpistrm_equal_any.asm @@ -121,7 +121,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6463626144434241 ; "ABCDabcd" dq 0x6C6B6A694C4B4A00 ; "\0JKLijkl" diff --git a/unittests/ASM/VEX/vpcmpistrm_equal_each.asm b/unittests/ASM/VEX/vpcmpistrm_equal_each.asm index 7058ea822..245f97e49 100644 --- a/unittests/ASM/VEX/vpcmpistrm_equal_each.asm +++ b/unittests/ASM/VEX/vpcmpistrm_equal_each.asm @@ -126,7 +126,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6C6C6548 ; "Hello Pe" dq 0x00002121656C706F ; "ople!!\0\0" diff --git a/unittests/ASM/VEX/vpcmpistrm_equal_ordered.asm b/unittests/ASM/VEX/vpcmpistrm_equal_ordered.asm index fd1a5bb08..dbe59e369 100644 --- a/unittests/ASM/VEX/vpcmpistrm_equal_ordered.asm +++ b/unittests/ASM/VEX/vpcmpistrm_equal_ordered.asm @@ -124,7 +124,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x6550206F6F006C6C ; "ll" with junk following it dq 0x21212121656C706F diff --git a/unittests/ASM/VEX/vpcmpistrm_ranges.asm b/unittests/ASM/VEX/vpcmpistrm_ranges.asm index 47650064b..4eb18bfeb 100644 --- a/unittests/ASM/VEX/vpcmpistrm_ranges.asm +++ b/unittests/ASM/VEX/vpcmpistrm_ranges.asm @@ -121,7 +121,7 @@ vmovaps ymm1, [rel .flags] hlt -align 32 +align 4096 .data: dq 0x998877005A417A61 ; "azAZ" (followed by junk) dq 0x55AACCBBFF223344 diff --git a/unittests/ASM/VEX/vpgather_dd_128bit_1xdisp.asm b/unittests/ASM/VEX/vpgather_dd_128bit_1xdisp.asm index 24d164a96..103be2ac0 100644 --- a/unittests/ASM/VEX/vpgather_dd_128bit_1xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dd_128bit_1xdisp.asm @@ -100,7 +100,7 @@ vpgatherdd xmm3, [xmm0 * 1 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_dd_128bit_2xdisp.asm b/unittests/ASM/VEX/vpgather_dd_128bit_2xdisp.asm index 72bf6a326..5fe184edd 100644 --- a/unittests/ASM/VEX/vpgather_dd_128bit_2xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dd_128bit_2xdisp.asm @@ -100,7 +100,7 @@ vpgatherdd xmm3, [xmm0 * 2 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_dd_128bit_4xdisp.asm b/unittests/ASM/VEX/vpgather_dd_128bit_4xdisp.asm index d714dc4c8..b9dff6e60 100644 --- a/unittests/ASM/VEX/vpgather_dd_128bit_4xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dd_128bit_4xdisp.asm @@ -100,7 +100,7 @@ vpgatherdd xmm3, [xmm0 * 4 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_dd_128bit_8xdisp.asm b/unittests/ASM/VEX/vpgather_dd_128bit_8xdisp.asm index 2fb81e2a0..0aace9f8b 100644 --- a/unittests/ASM/VEX/vpgather_dd_128bit_8xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dd_128bit_8xdisp.asm @@ -100,7 +100,7 @@ vpgatherdd xmm3, [xmm0 * 8 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_dd_256bit_1xdisp.asm b/unittests/ASM/VEX/vpgather_dd_256bit_1xdisp.asm index 75204e748..c46d648e1 100644 --- a/unittests/ASM/VEX/vpgather_dd_256bit_1xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dd_256bit_1xdisp.asm @@ -100,7 +100,7 @@ vpgatherdd ymm3, [ymm0 * 1 + rax], ymm1 ; xmm1 will be zero after this. hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_dd_256bit_2xdisp.asm b/unittests/ASM/VEX/vpgather_dd_256bit_2xdisp.asm index 268e372e6..7327c5e41 100644 --- a/unittests/ASM/VEX/vpgather_dd_256bit_2xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dd_256bit_2xdisp.asm @@ -100,7 +100,7 @@ vpgatherdd ymm3, [ymm0 * 2 + rax], ymm1 ; xmm1 will be zero after this. hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_dd_256bit_4xdisp.asm b/unittests/ASM/VEX/vpgather_dd_256bit_4xdisp.asm index aa6a54a4e..324ec6f51 100644 --- a/unittests/ASM/VEX/vpgather_dd_256bit_4xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dd_256bit_4xdisp.asm @@ -100,7 +100,7 @@ vpgatherdd ymm3, [ymm0 * 4 + rax], ymm1 ; xmm1 will be zero after this. hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_dd_256bit_8xdisp.asm b/unittests/ASM/VEX/vpgather_dd_256bit_8xdisp.asm index c822ebf7d..06e088962 100644 --- a/unittests/ASM/VEX/vpgather_dd_256bit_8xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dd_256bit_8xdisp.asm @@ -99,7 +99,7 @@ vpgatherdd ymm3, [ymm0 * 8 + rax], ymm1 ; xmm1 will be zero after this. hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_dq_128bit_1xdisp.asm b/unittests/ASM/VEX/vpgather_dq_128bit_1xdisp.asm index 005ba6b58..9f96707e8 100644 --- a/unittests/ASM/VEX/vpgather_dq_128bit_1xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dq_128bit_1xdisp.asm @@ -100,7 +100,7 @@ vpgatherdq xmm3, [xmm0 * 1 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_dq_128bit_2xdisp.asm b/unittests/ASM/VEX/vpgather_dq_128bit_2xdisp.asm index 6d1011e28..09e4d71e7 100644 --- a/unittests/ASM/VEX/vpgather_dq_128bit_2xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dq_128bit_2xdisp.asm @@ -100,7 +100,7 @@ vpgatherdq xmm3, [xmm0 * 2 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_dq_128bit_4xdisp.asm b/unittests/ASM/VEX/vpgather_dq_128bit_4xdisp.asm index b07c3822e..e9f4c2cb5 100644 --- a/unittests/ASM/VEX/vpgather_dq_128bit_4xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dq_128bit_4xdisp.asm @@ -100,7 +100,7 @@ vpgatherdq xmm3, [xmm0 * 4 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_dq_128bit_8xdisp.asm b/unittests/ASM/VEX/vpgather_dq_128bit_8xdisp.asm index 915f055b4..03edfe172 100644 --- a/unittests/ASM/VEX/vpgather_dq_128bit_8xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dq_128bit_8xdisp.asm @@ -100,7 +100,7 @@ vpgatherdq xmm3, [xmm0 * 8 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_dq_256bit_1xdisp.asm b/unittests/ASM/VEX/vpgather_dq_256bit_1xdisp.asm index 5859e2882..449e1eb5d 100644 --- a/unittests/ASM/VEX/vpgather_dq_256bit_1xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dq_256bit_1xdisp.asm @@ -100,7 +100,7 @@ vpgatherdq ymm3, [xmm0 * 1 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_dq_256bit_2xdisp.asm b/unittests/ASM/VEX/vpgather_dq_256bit_2xdisp.asm index 762a89269..1c22faf16 100644 --- a/unittests/ASM/VEX/vpgather_dq_256bit_2xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dq_256bit_2xdisp.asm @@ -100,7 +100,7 @@ vpgatherdq ymm3, [xmm0 * 2 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_dq_256bit_4xdisp.asm b/unittests/ASM/VEX/vpgather_dq_256bit_4xdisp.asm index 64620c876..f98f6fc6b 100644 --- a/unittests/ASM/VEX/vpgather_dq_256bit_4xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dq_256bit_4xdisp.asm @@ -100,7 +100,7 @@ vpgatherdq ymm3, [xmm0 * 4 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_dq_256bit_8xdisp.asm b/unittests/ASM/VEX/vpgather_dq_256bit_8xdisp.asm index a0e03814f..cc26a7291 100644 --- a/unittests/ASM/VEX/vpgather_dq_256bit_8xdisp.asm +++ b/unittests/ASM/VEX/vpgather_dq_256bit_8xdisp.asm @@ -100,7 +100,7 @@ vpgatherdq ymm3, [xmm0 * 8 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_qd_128bit_1xdisp.asm b/unittests/ASM/VEX/vpgather_qd_128bit_1xdisp.asm index 04f126fc4..9fd102b57 100644 --- a/unittests/ASM/VEX/vpgather_qd_128bit_1xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qd_128bit_1xdisp.asm @@ -100,7 +100,7 @@ vpgatherqd xmm3, [xmm0 * 1 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_qd_128bit_1xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qd_128bit_1xdisp_overflow.asm index 924fbad29..ef49fed31 100644 --- a/unittests/ASM/VEX/vpgather_qd_128bit_1xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qd_128bit_1xdisp_overflow.asm @@ -46,7 +46,7 @@ vpgatherqd xmm15, [xmm0 * 1 + rax + 1], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vpgather_qd_128bit_2xdisp.asm b/unittests/ASM/VEX/vpgather_qd_128bit_2xdisp.asm index 799280153..e92b87675 100644 --- a/unittests/ASM/VEX/vpgather_qd_128bit_2xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qd_128bit_2xdisp.asm @@ -100,7 +100,7 @@ vpgatherqd xmm3, [xmm0 * 2 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_qd_128bit_2xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qd_128bit_2xdisp_overflow.asm index ed7c74aca..7723ae44c 100644 --- a/unittests/ASM/VEX/vpgather_qd_128bit_2xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qd_128bit_2xdisp_overflow.asm @@ -50,7 +50,7 @@ vpgatherqd xmm15, [xmm0 * 2 + rax + 2], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vpgather_qd_128bit_4xdisp.asm b/unittests/ASM/VEX/vpgather_qd_128bit_4xdisp.asm index 68abecb39..2e693da7b 100644 --- a/unittests/ASM/VEX/vpgather_qd_128bit_4xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qd_128bit_4xdisp.asm @@ -100,7 +100,7 @@ vpgatherqd xmm3, [xmm0 * 4 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_qd_128bit_4xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qd_128bit_4xdisp_overflow.asm index ead1c1112..68291c32a 100644 --- a/unittests/ASM/VEX/vpgather_qd_128bit_4xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qd_128bit_4xdisp_overflow.asm @@ -50,7 +50,7 @@ vpgatherqd xmm15, [xmm0 * 4 + rax + 4], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vpgather_qd_128bit_8xdisp.asm b/unittests/ASM/VEX/vpgather_qd_128bit_8xdisp.asm index a420b53e4..46e2a5ca7 100644 --- a/unittests/ASM/VEX/vpgather_qd_128bit_8xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qd_128bit_8xdisp.asm @@ -100,7 +100,7 @@ vpgatherqd xmm3, [xmm0 * 8 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_qd_128bit_8xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qd_128bit_8xdisp_overflow.asm index 5b232c17d..49a8ba21b 100644 --- a/unittests/ASM/VEX/vpgather_qd_128bit_8xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qd_128bit_8xdisp_overflow.asm @@ -50,7 +50,7 @@ vpgatherqd xmm15, [xmm0 * 8 + rax + 8], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vpgather_qd_256bit_1xdisp.asm b/unittests/ASM/VEX/vpgather_qd_256bit_1xdisp.asm index 184060acd..b3940023b 100644 --- a/unittests/ASM/VEX/vpgather_qd_256bit_1xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qd_256bit_1xdisp.asm @@ -100,7 +100,7 @@ vpgatherqd xmm3, [ymm0 * 1 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_qd_256bit_1xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qd_256bit_1xdisp_overflow.asm index f03b4253a..732e74de5 100644 --- a/unittests/ASM/VEX/vpgather_qd_256bit_1xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qd_256bit_1xdisp_overflow.asm @@ -46,7 +46,7 @@ vpgatherqd xmm15, [ymm0 * 1 + rax + 1], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vpgather_qd_256bit_2xdisp.asm b/unittests/ASM/VEX/vpgather_qd_256bit_2xdisp.asm index 09d268735..3cad31212 100644 --- a/unittests/ASM/VEX/vpgather_qd_256bit_2xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qd_256bit_2xdisp.asm @@ -100,7 +100,7 @@ vpgatherqd xmm3, [ymm0 * 2 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_qd_256bit_2xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qd_256bit_2xdisp_overflow.asm index 9629b567f..8ed46f8eb 100644 --- a/unittests/ASM/VEX/vpgather_qd_256bit_2xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qd_256bit_2xdisp_overflow.asm @@ -50,7 +50,7 @@ vpgatherqd xmm15, [ymm0 * 2 + rax + 2], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vpgather_qd_256bit_4xdisp.asm b/unittests/ASM/VEX/vpgather_qd_256bit_4xdisp.asm index 36042c511..c54a6afa0 100644 --- a/unittests/ASM/VEX/vpgather_qd_256bit_4xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qd_256bit_4xdisp.asm @@ -100,7 +100,7 @@ vpgatherqd xmm3, [ymm0 * 4 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_qd_256bit_4xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qd_256bit_4xdisp_overflow.asm index fa8ce7958..bc275a619 100644 --- a/unittests/ASM/VEX/vpgather_qd_256bit_4xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qd_256bit_4xdisp_overflow.asm @@ -50,7 +50,7 @@ vpgatherqd xmm15, [ymm0 * 4 + rax + 4], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vpgather_qd_256bit_8xdisp.asm b/unittests/ASM/VEX/vpgather_qd_256bit_8xdisp.asm index 4e6a620b6..9f99d3fb7 100644 --- a/unittests/ASM/VEX/vpgather_qd_256bit_8xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qd_256bit_8xdisp.asm @@ -100,7 +100,7 @@ vpgatherqd xmm3, [ymm0 * 8 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_00000000: diff --git a/unittests/ASM/VEX/vpgather_qd_256bit_8xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qd_256bit_8xdisp_overflow.asm index 71a925dc8..8b54dc653 100644 --- a/unittests/ASM/VEX/vpgather_qd_256bit_8xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qd_256bit_8xdisp_overflow.asm @@ -61,7 +61,7 @@ vpgatherqd xmm15, [ymm0 * 8 + rax + 8], xmm1 hlt -align 32 +align 4096 .mask_11111111: dd 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000, 0x8000_0000 diff --git a/unittests/ASM/VEX/vpgather_qq_128bit_1xdisp.asm b/unittests/ASM/VEX/vpgather_qq_128bit_1xdisp.asm index d8be16cfb..a81a41a9a 100644 --- a/unittests/ASM/VEX/vpgather_qq_128bit_1xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qq_128bit_1xdisp.asm @@ -100,7 +100,7 @@ vpgatherqq xmm3, [xmm0 * 1 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_qq_128bit_1xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qq_128bit_1xdisp_overflow.asm index 62ff7b924..804b05d00 100644 --- a/unittests/ASM/VEX/vpgather_qq_128bit_1xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qq_128bit_1xdisp_overflow.asm @@ -46,7 +46,7 @@ vpgatherqq xmm15, [xmm0 * 1 + rax + 1], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vpgather_qq_128bit_2xdisp.asm b/unittests/ASM/VEX/vpgather_qq_128bit_2xdisp.asm index 62f246ec0..4c8112d45 100644 --- a/unittests/ASM/VEX/vpgather_qq_128bit_2xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qq_128bit_2xdisp.asm @@ -100,7 +100,7 @@ vpgatherqq xmm3, [xmm0 * 2 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_qq_128bit_2xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qq_128bit_2xdisp_overflow.asm index ca8d2f9e3..cef023807 100644 --- a/unittests/ASM/VEX/vpgather_qq_128bit_2xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qq_128bit_2xdisp_overflow.asm @@ -50,7 +50,7 @@ vpgatherqq xmm15, [xmm0 * 2 + rax + 2], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vpgather_qq_128bit_4xdisp.asm b/unittests/ASM/VEX/vpgather_qq_128bit_4xdisp.asm index 9fea1afef..71b727601 100644 --- a/unittests/ASM/VEX/vpgather_qq_128bit_4xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qq_128bit_4xdisp.asm @@ -100,7 +100,7 @@ vpgatherqq xmm3, [xmm0 * 4 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_qq_128bit_4xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qq_128bit_4xdisp_overflow.asm index e93af9335..ab41af878 100644 --- a/unittests/ASM/VEX/vpgather_qq_128bit_4xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qq_128bit_4xdisp_overflow.asm @@ -50,7 +50,7 @@ vpgatherqq xmm15, [xmm0 * 4 + rax + 4], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vpgather_qq_128bit_8xdisp.asm b/unittests/ASM/VEX/vpgather_qq_128bit_8xdisp.asm index 704586316..2f7df7793 100644 --- a/unittests/ASM/VEX/vpgather_qq_128bit_8xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qq_128bit_8xdisp.asm @@ -100,7 +100,7 @@ vpgatherqq xmm3, [xmm0 * 8 + rax], xmm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_qq_128bit_8xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qq_128bit_8xdisp_overflow.asm index 91b54ba09..ce8846469 100644 --- a/unittests/ASM/VEX/vpgather_qq_128bit_8xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qq_128bit_8xdisp_overflow.asm @@ -50,7 +50,7 @@ vpgatherqq xmm15, [xmm0 * 8 + rax + 8], xmm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vpgather_qq_256bit_1xdisp.asm b/unittests/ASM/VEX/vpgather_qq_256bit_1xdisp.asm index 58c0dc710..86b214ed2 100644 --- a/unittests/ASM/VEX/vpgather_qq_256bit_1xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qq_256bit_1xdisp.asm @@ -100,7 +100,7 @@ vpgatherqq ymm3, [ymm0 * 1 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_qq_256bit_1xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qq_256bit_1xdisp_overflow.asm index 735f3e8e2..f6380ece3 100644 --- a/unittests/ASM/VEX/vpgather_qq_256bit_1xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qq_256bit_1xdisp_overflow.asm @@ -46,7 +46,7 @@ vpgatherqq ymm15, [ymm0 * 1 + rax + 1], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vpgather_qq_256bit_2xdisp.asm b/unittests/ASM/VEX/vpgather_qq_256bit_2xdisp.asm index 6e511699f..5e9f3cc42 100644 --- a/unittests/ASM/VEX/vpgather_qq_256bit_2xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qq_256bit_2xdisp.asm @@ -100,7 +100,7 @@ vpgatherqq ymm3, [ymm0 * 2 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_qq_256bit_2xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qq_256bit_2xdisp_overflow.asm index f1a4fabc6..3f4dff43b 100644 --- a/unittests/ASM/VEX/vpgather_qq_256bit_2xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qq_256bit_2xdisp_overflow.asm @@ -50,7 +50,7 @@ vpgatherqq ymm15, [ymm0 * 2 + rax + 2], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vpgather_qq_256bit_4xdisp.asm b/unittests/ASM/VEX/vpgather_qq_256bit_4xdisp.asm index 06581437d..0f3d067f4 100644 --- a/unittests/ASM/VEX/vpgather_qq_256bit_4xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qq_256bit_4xdisp.asm @@ -100,7 +100,7 @@ vpgatherqq ymm3, [ymm0 * 4 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_qq_256bit_4xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qq_256bit_4xdisp_overflow.asm index 4ab0a7cad..6325864db 100644 --- a/unittests/ASM/VEX/vpgather_qq_256bit_4xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qq_256bit_4xdisp_overflow.asm @@ -50,7 +50,7 @@ vpgatherqq ymm15, [ymm0 * 4 + rax + 4], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vpgather_qq_256bit_8xdisp.asm b/unittests/ASM/VEX/vpgather_qq_256bit_8xdisp.asm index c14120ee3..7156fac69 100644 --- a/unittests/ASM/VEX/vpgather_qq_256bit_8xdisp.asm +++ b/unittests/ASM/VEX/vpgather_qq_256bit_8xdisp.asm @@ -100,7 +100,7 @@ vpgatherqq ymm3, [ymm0 * 8 + rax], ymm1 hlt -align 32 +align 4096 ; Masks only care about the sign bit. .mask_0000: diff --git a/unittests/ASM/VEX/vpgather_qq_256bit_8xdisp_overflow.asm b/unittests/ASM/VEX/vpgather_qq_256bit_8xdisp_overflow.asm index 67f8418e0..f4e564893 100644 --- a/unittests/ASM/VEX/vpgather_qq_256bit_8xdisp_overflow.asm +++ b/unittests/ASM/VEX/vpgather_qq_256bit_8xdisp_overflow.asm @@ -50,7 +50,7 @@ vpgatherqq ymm15, [ymm0 * 8 + rax + 8], ymm1 hlt -align 32 +align 4096 .mask_1111: dq 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000, 0x8000_0000_0000_0000 diff --git a/unittests/ASM/VEX/vpmaskmovd_store.asm b/unittests/ASM/VEX/vpmaskmovd_store.asm index 70ba8746b..b4c1a5c0d 100644 --- a/unittests/ASM/VEX/vpmaskmovd_store.asm +++ b/unittests/ASM/VEX/vpmaskmovd_store.asm @@ -42,7 +42,7 @@ vmovaps ymm9, [rel .scratch6] hlt -align 32 +align 4096 .data: dq 0xA76C4F06A12BFCE0 dq 0x9B80767F1E6A060F diff --git a/unittests/ASM/VEX/vpmaskmovq_store.asm b/unittests/ASM/VEX/vpmaskmovq_store.asm index 3ecb9ca88..b212d0de0 100644 --- a/unittests/ASM/VEX/vpmaskmovq_store.asm +++ b/unittests/ASM/VEX/vpmaskmovq_store.asm @@ -42,7 +42,7 @@ vmovaps ymm9, [rel .scratch6] hlt -align 32 +align 4096 .data: dq 0xA76C4F06A12BFCE0 dq 0x9B80767F1E6A060F diff --git a/unittests/ASM/VEX/vrcpps.asm b/unittests/ASM/VEX/vrcpps.asm index 32194cb18..7aa580c20 100644 --- a/unittests/ASM/VEX/vrcpps.asm +++ b/unittests/ASM/VEX/vrcpps.asm @@ -84,11 +84,9 @@ check_relerr rel eresult2, rel result, rel tolerance and r9, rax hlt -section .bss -align 32 -result: resq 4 +align 4096 +result: times 4 dq 0 -section .data align 32 arg1: dq 0x3F8000003F800000 ; 1.0 @@ -111,4 +109,4 @@ dd 0x3e800000 ; 0.25 tolerance: dd 0x39c00000 -define_check_data_constants \ No newline at end of file +define_check_data_constants diff --git a/unittests/ASM/VEX/vrcpss.asm b/unittests/ASM/VEX/vrcpss.asm index 4dfad0d9b..5bcd5b871 100644 --- a/unittests/ASM/VEX/vrcpss.asm +++ b/unittests/ASM/VEX/vrcpss.asm @@ -45,11 +45,9 @@ vpinsrd xmm2, xmm2, eax, 0 vpinsrd xmm3, xmm3, eax, 0 hlt -section .bss -align 32 -result: resq 2 +align 4096 +result: times 2 dq 0 -section .data align 32 arg1: dq 0x3F8000003F800000 ; 1.0 @@ -72,4 +70,4 @@ dd 0x3e800000 ; 0.25 tolerance: dd 0x39c00000 -define_check_data_constants \ No newline at end of file +define_check_data_constants diff --git a/unittests/ASM/VEX/vroundpd.asm b/unittests/ASM/VEX/vroundpd.asm index 1ac746dac..c3d65366c 100644 --- a/unittests/ASM/VEX/vroundpd.asm +++ b/unittests/ASM/VEX/vroundpd.asm @@ -69,7 +69,7 @@ vroundpd ymm15, [rdx], 00000100b hlt -align 32 +align 4096 .data: dq 0.5, -0.5 dq 0.5, -0.5 diff --git a/unittests/ASM/VEX/vroundps.asm b/unittests/ASM/VEX/vroundps.asm index ff9638329..02a1f3d9a 100644 --- a/unittests/ASM/VEX/vroundps.asm +++ b/unittests/ASM/VEX/vroundps.asm @@ -69,7 +69,7 @@ vroundps ymm15, [rdx], 00000100b hlt -align 32 +align 4096 .data: dd 0.5, -0.5, 1.5, -1.5 dd 0.5, -0.5, 1.5, -1.5 diff --git a/unittests/ASM/VEX/vroundsd.asm b/unittests/ASM/VEX/vroundsd.asm index ea9cd1b35..2553c0e22 100644 --- a/unittests/ASM/VEX/vroundsd.asm +++ b/unittests/ASM/VEX/vroundsd.asm @@ -61,7 +61,7 @@ vroundsd xmm7, xmm7, [rdx], 00000100b hlt -align 32 +align 4096 .data: dq 0.5, -0.5 dq 0.5, -0.5 diff --git a/unittests/ASM/VEX/vroundss.asm b/unittests/ASM/VEX/vroundss.asm index e1213cc26..5a3de145f 100644 --- a/unittests/ASM/VEX/vroundss.asm +++ b/unittests/ASM/VEX/vroundss.asm @@ -61,7 +61,7 @@ vroundss xmm7, xmm7, [rdx], 00000100b hlt -align 32 +align 4096 .data: dd 0.5, -0.5, 1.5, -1.5 dd 0.5, -0.5, 1.5, -1.5 diff --git a/unittests/ASM/VEX/vrsqrtps.asm b/unittests/ASM/VEX/vrsqrtps.asm index d22250937..22f5a418e 100644 --- a/unittests/ASM/VEX/vrsqrtps.asm +++ b/unittests/ASM/VEX/vrsqrtps.asm @@ -93,14 +93,12 @@ check_relerr rel eresult4, rel result4, rel tolerance and r9, rax hlt -section .bss -align 32 -result1: resq 4 -result2: resq 4 -result3: resq 4 -result4: resq 4 +align 4096 +result1: times 4 dq 0 +result2: times 4 dq 0 +result3: times 4 dq 0 +result4: times 4 dq 0 -section .data align 32 arg1: dq 0x3F8000003F800000 ; 1.0 @@ -147,4 +145,4 @@ dd 0x3e800000 ; 0.25 tolerance: dd 0x39c00000 -define_check_data_constants \ No newline at end of file +define_check_data_constants diff --git a/unittests/ASM/VEX/vrsqrtss.asm b/unittests/ASM/VEX/vrsqrtss.asm index 0d942f556..af2159e89 100644 --- a/unittests/ASM/VEX/vrsqrtss.asm +++ b/unittests/ASM/VEX/vrsqrtss.asm @@ -107,14 +107,12 @@ vpinsrd xmm11, xmm11, eax, 0 hlt -section .bss -align 32 -result1: resq 2 -result2: resq 2 -result3: resq 2 -result4: resq 2 +align 4096 +result1: times 2 dq 0 +result2: times 2 dq 0 +result3: times 2 dq 0 +result4: times 2 dq 0 -section .data align 32 arg1: dq 0x414243443F800000 ; 1.0 @@ -150,7 +148,7 @@ eresult1: dd 0x3F800000 ; 1.0 eresult2: -dd 0x3f000000 ; 0.5 +dd 0x3f000000 ; 0.5 eresult3: dd 0x3eaaaaab ; 1/3 = 0.(3) @@ -161,4 +159,4 @@ dd 0x3e800000 ; 0.25 tolerance: dd 0x39c00000 -define_check_data_constants \ No newline at end of file +define_check_data_constants diff --git a/unittests/ASM/X87/D9_F5.asm b/unittests/ASM/X87/D9_F5.asm index 798786b10..29e9e2984 100644 --- a/unittests/ASM/X87/D9_F5.asm +++ b/unittests/ASM/X87/D9_F5.asm @@ -17,7 +17,7 @@ fprem1 hlt -align 8 +align 4096 data: dt 3.0 dq 0 diff --git a/unittests/ASM/X87/D9_F5_2.asm b/unittests/ASM/X87/D9_F5_2.asm index 9c065cd0a..850fc786d 100644 --- a/unittests/ASM/X87/D9_F5_2.asm +++ b/unittests/ASM/X87/D9_F5_2.asm @@ -39,7 +39,7 @@ fld tword [rdx + 8 * 0] hlt -align 8 +align 4096 data: dt 7.0 dq 0 diff --git a/unittests/ASM/X87/D9_F5_3.asm b/unittests/ASM/X87/D9_F5_3.asm index 3c401a8fd..88f7944fd 100644 --- a/unittests/ASM/X87/D9_F5_3.asm +++ b/unittests/ASM/X87/D9_F5_3.asm @@ -39,7 +39,7 @@ fld tword [rdx + 8 * 0] hlt -align 8 +align 4096 data: dt 7.0 dq 0 diff --git a/unittests/ASM/X87/D9_F6.asm b/unittests/ASM/X87/D9_F6.asm index f22786ef7..e62292150 100644 --- a/unittests/ASM/X87/D9_F6.asm +++ b/unittests/ASM/X87/D9_F6.asm @@ -18,17 +18,6 @@ ; Set the stack with different values. ; Then do fincstp and store the stack values into MMX registers through memory ; such that MM0 has the value of ST0 and so on. - -section .bss -align 8 -temp: resq 1 -stack: resq 8 - -section .text -global _start - -_start: - mov rax, 0x3ff0000000000000 ; 1.0 mov [rel temp], rax fld qword [rel temp] @@ -99,3 +88,7 @@ movq mm6, [rel stack + 8 * 6] movq mm7, [rel stack + 8 * 7] hlt + +align 4096 +temp: dq 0 +stack: dq 0 diff --git a/unittests/ASM/X87/D9_F7.asm b/unittests/ASM/X87/D9_F7.asm index 559715f99..e8ee65767 100644 --- a/unittests/ASM/X87/D9_F7.asm +++ b/unittests/ASM/X87/D9_F7.asm @@ -18,17 +18,6 @@ ; Set the stack with different values. ; Then do fincstp and store the stack values into MMX registers through memory ; such that MM0 has the value of ST0 and so on. - -section .bss -align 8 -temp: resq 1 -stack: resq 8 - -section .text -global _start - -_start: - mov rax, 0x3ff0000000000000 ; 1.0 mov [rel temp], rax fld qword [rel temp] @@ -98,3 +87,7 @@ movq mm6, [rel stack + 8 * 6] movq mm7, [rel stack + 8 * 7] hlt + +align 4096 +temp: dq 0 +stack: dq 0 diff --git a/unittests/ASM/X87/DA_00.asm b/unittests/ASM/X87/DA_00.asm index be076ba05..516cdbf7c 100644 --- a/unittests/ASM/X87/DA_00.asm +++ b/unittests/ASM/X87/DA_00.asm @@ -37,6 +37,7 @@ movups xmm1, [rel data] hlt +align 4096 data: dq 0 dq 0 diff --git a/unittests/ASM/X87/DA_01.asm b/unittests/ASM/X87/DA_01.asm index 2d1d8d549..fb95f84a0 100644 --- a/unittests/ASM/X87/DA_01.asm +++ b/unittests/ASM/X87/DA_01.asm @@ -32,6 +32,7 @@ movups xmm1, [rel data2] hlt +align 4096 data2: dq 0 dq 0 diff --git a/unittests/ASM/X87/DA_04.asm b/unittests/ASM/X87/DA_04.asm index 7dca87a77..1181076ad 100644 --- a/unittests/ASM/X87/DA_04.asm +++ b/unittests/ASM/X87/DA_04.asm @@ -32,6 +32,7 @@ movups xmm1, [rel data] hlt +align 4096 data: dq 0 dq 0 diff --git a/unittests/ASM/X87/DA_05.asm b/unittests/ASM/X87/DA_05.asm index 14877ecea..24efc7946 100644 --- a/unittests/ASM/X87/DA_05.asm +++ b/unittests/ASM/X87/DA_05.asm @@ -32,6 +32,7 @@ movups xmm1, [rel data] hlt +align 4096 data: dq 0 dq 0 diff --git a/unittests/ASM/X87/DA_06.asm b/unittests/ASM/X87/DA_06.asm index 2d121cbef..54eb4eb1a 100644 --- a/unittests/ASM/X87/DA_06.asm +++ b/unittests/ASM/X87/DA_06.asm @@ -34,6 +34,7 @@ movups xmm1, [rel data] hlt +align 4096 data: dq 0 dq 0 diff --git a/unittests/ASM/X87/DA_07.asm b/unittests/ASM/X87/DA_07.asm index 37726425a..5981d8fd8 100644 --- a/unittests/ASM/X87/DA_07.asm +++ b/unittests/ASM/X87/DA_07.asm @@ -32,6 +32,7 @@ movups xmm1, [rel data] hlt +align 4096 data: dq 0 dq 0 diff --git a/unittests/ASM/X87/DB_07.asm b/unittests/ASM/X87/DB_07.asm index f803fe6dd..ebd3fab63 100644 --- a/unittests/ASM/X87/DB_07.asm +++ b/unittests/ASM/X87/DB_07.asm @@ -15,7 +15,7 @@ fld tword [rdx + 8 * 0] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87/DB_07_2.asm b/unittests/ASM/X87/DB_07_2.asm index 865390654..70233f493 100644 --- a/unittests/ASM/X87/DB_07_2.asm +++ b/unittests/ASM/X87/DB_07_2.asm @@ -16,7 +16,7 @@ fld tword [rdx + 8 * 0] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87/DB_E3.asm b/unittests/ASM/X87/DB_E3.asm index 17db1e88b..ea2fc561c 100644 --- a/unittests/ASM/X87/DB_E3.asm +++ b/unittests/ASM/X87/DB_E3.asm @@ -6,12 +6,6 @@ } %endif -section .bss -control: resb 2 ; Reserve space for the FPU control word - -section .text -global _start -_start: fninit ; Ensures that fnstcw after fninit sets the correct value @@ -19,3 +13,6 @@ fnstcw [rel control] mov ax, word [rel control] hlt + +align 4096 +control: times 2 db 0 ; Reserve space for the FPU control word diff --git a/unittests/ASM/X87/DD_01.asm b/unittests/ASM/X87/DD_01.asm index ac60c5535..54ca3cf37 100644 --- a/unittests/ASM/X87/DD_01.asm +++ b/unittests/ASM/X87/DD_01.asm @@ -20,7 +20,7 @@ fld tword [rdx + 8 * 0] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87/DD_02.asm b/unittests/ASM/X87/DD_02.asm index 39fa3af6a..4ecb790ec 100644 --- a/unittests/ASM/X87/DD_02.asm +++ b/unittests/ASM/X87/DD_02.asm @@ -21,7 +21,7 @@ fld tword [rdx + 8 * 0] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87/DD_03.asm b/unittests/ASM/X87/DD_03.asm index 82590d638..ab69f6f8b 100644 --- a/unittests/ASM/X87/DD_03.asm +++ b/unittests/ASM/X87/DD_03.asm @@ -20,7 +20,7 @@ fld tword [rdx + 8 * 0] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87/DE_00.asm b/unittests/ASM/X87/DE_00.asm index 036b26f78..eba51d23b 100644 --- a/unittests/ASM/X87/DE_00.asm +++ b/unittests/ASM/X87/DE_00.asm @@ -37,6 +37,7 @@ movups xmm1, [rel data] hlt +align 4096 data: dq 0 dq 0 diff --git a/unittests/ASM/X87/DE_01.asm b/unittests/ASM/X87/DE_01.asm index 805d72405..783e09d32 100644 --- a/unittests/ASM/X87/DE_01.asm +++ b/unittests/ASM/X87/DE_01.asm @@ -32,6 +32,7 @@ movups xmm1, [rel data2] hlt +align 4096 data2: dq 0 dq 0 diff --git a/unittests/ASM/X87/DE_04.asm b/unittests/ASM/X87/DE_04.asm index e6478c2e2..3355bb9c5 100644 --- a/unittests/ASM/X87/DE_04.asm +++ b/unittests/ASM/X87/DE_04.asm @@ -32,6 +32,7 @@ movups xmm1, [rel data] hlt +align 4096 data: dq 0 dq 0 diff --git a/unittests/ASM/X87/DE_05.asm b/unittests/ASM/X87/DE_05.asm index d86f997f4..c9adcc417 100644 --- a/unittests/ASM/X87/DE_05.asm +++ b/unittests/ASM/X87/DE_05.asm @@ -32,6 +32,7 @@ movups xmm1, [rel data] hlt +align 4096 data: dq 0 dq 0 diff --git a/unittests/ASM/X87/DE_06.asm b/unittests/ASM/X87/DE_06.asm index b9d66c3e7..2d9db5f7b 100644 --- a/unittests/ASM/X87/DE_06.asm +++ b/unittests/ASM/X87/DE_06.asm @@ -32,6 +32,7 @@ movups xmm1, [rel data] hlt +align 4096 data: dq 0 dq 0 diff --git a/unittests/ASM/X87/DE_07.asm b/unittests/ASM/X87/DE_07.asm index aaab04a17..c57cc8719 100644 --- a/unittests/ASM/X87/DE_07.asm +++ b/unittests/ASM/X87/DE_07.asm @@ -32,6 +32,7 @@ movups xmm1, [rel data] hlt +align 4096 data: dq 0 dq 0 diff --git a/unittests/ASM/X87/DF_01.asm b/unittests/ASM/X87/DF_01.asm index 0a4093cc1..b5198f02e 100644 --- a/unittests/ASM/X87/DF_01.asm +++ b/unittests/ASM/X87/DF_01.asm @@ -20,7 +20,7 @@ fld tword [rdx + 8 * 0] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87/DF_04.asm b/unittests/ASM/X87/DF_04.asm index 300fdad4a..d55fc8323 100644 --- a/unittests/ASM/X87/DF_04.asm +++ b/unittests/ASM/X87/DF_04.asm @@ -98,6 +98,7 @@ movups xmm11, [rel .res_data_11] hlt +align 4096 .cw: dw 0 diff --git a/unittests/ASM/X87/FST_AddrModes.asm b/unittests/ASM/X87/FST_AddrModes.asm index 87fc46387..a65ffa20e 100644 --- a/unittests/ASM/X87/FST_AddrModes.asm +++ b/unittests/ASM/X87/FST_AddrModes.asm @@ -14,11 +14,6 @@ } %endif -section .bss -base resb 4096 - -section .text - ; Setup fld1 lea rdx, [rel base] @@ -41,3 +36,7 @@ mov r9d, dword [rdx + rsi + 0xa] mov r10d, dword [rdx + rsi * 4 + 0xa] hlt + +align 4096 +base: +times 4096 db 0 diff --git a/unittests/ASM/X87/FScale-Zero.asm b/unittests/ASM/X87/FScale-Zero.asm index 57db659f1..9451589f2 100644 --- a/unittests/ASM/X87/FScale-Zero.asm +++ b/unittests/ASM/X87/FScale-Zero.asm @@ -11,17 +11,6 @@ } %endif -section .data - neg_zero dq 0x8000000000000000 ; -0.0 - -section .bss - align 8 - intstor resq 1 - -section .text -global _start - -_start: ; scale by zero (st1 == 0) mov rax, 0 mov qword [rel intstor], rax @@ -83,3 +72,8 @@ fst qword [rel intstor] mov r13, [rel intstor] hlt + +align 4096 +neg_zero: dq 0x8000000000000000 ; -0.0 + +intstor: dq 0 diff --git a/unittests/ASM/X87/MemcopyWithCPUID.asm b/unittests/ASM/X87/MemcopyWithCPUID.asm index 62e755874..61d1494f7 100644 --- a/unittests/ASM/X87/MemcopyWithCPUID.asm +++ b/unittests/ASM/X87/MemcopyWithCPUID.asm @@ -9,20 +9,6 @@ ; Related to #4274 - ensures that if cpuid clobbers the predicate register, ; we reset the predicate cache. - -section .data -align 8 - -data: - dt 1.0 - -section .bss -align 8 - -data2: - resb 10 - -section .text lea r8, [rel data] fld tword [r8] @@ -34,3 +20,13 @@ fstp tword [rel data2] mov rbx, [rel data2] mov rcx, [rel data2+8] hlt + +align 4096 + +data: + dt 1.0 + +align 8 + +data2: + times 16 db 0 diff --git a/unittests/ASM/X87/Rounding.asm b/unittests/ASM/X87/Rounding.asm index bcc8e6ead..89f49574f 100644 --- a/unittests/ASM/X87/Rounding.asm +++ b/unittests/ASM/X87/Rounding.asm @@ -9,26 +9,6 @@ } %endif -section .data -align 8 -midpoint: - dq 1.5 -samidpoint: - dq 1.50001 -sbmidpoint: - dq 1.49999 -nmidpoint: - dq -1.5 -nsamidpoint: - dq -1.49999 -nsbmidpoint: - dq -1.50001 - -section .bss -align 8 -tmp resq 1 - -section .text ; Rounding tests to ensure rounding modes are actually working ;; Mid-point @@ -310,3 +290,18 @@ mov ax, word [rel tmp] or rsi, rax hlt + +align 4096 +midpoint: + dq 1.5 +samidpoint: + dq 1.50001 +sbmidpoint: + dq 1.49999 +nmidpoint: + dq -1.5 +nsamidpoint: + dq -1.49999 +nsbmidpoint: + dq -1.50001 +tmp: dq 0 diff --git a/unittests/ASM/X87/X87MMXInteraction.asm b/unittests/ASM/X87/X87MMXInteraction.asm index 3246ed3a6..25aafb132 100644 --- a/unittests/ASM/X87/X87MMXInteraction.asm +++ b/unittests/ASM/X87/X87MMXInteraction.asm @@ -13,15 +13,9 @@ } %endif -section .bss - x87env: resb 108 - -section .text -global _start ; Checks that after moving from X87 to MMX States, the ; values are correct and that MMX register writes, puts the top 16 bits as ; all 1s. -_start: finit ; enters x87 state fldpi ; goes in mm7 @@ -51,3 +45,6 @@ mov r10, qword [rel x87env + 78] mov r11w, word [rel x87env + 86] hlt + +align 4096 +x87env: times 108 db 0 diff --git a/unittests/ASM/X87/invalid_fcos_infinity.asm b/unittests/ASM/X87/invalid_fcos_infinity.asm index 42b5c7af3..019914aaf 100644 --- a/unittests/ASM/X87/invalid_fcos_infinity.asm +++ b/unittests/ASM/X87/invalid_fcos_infinity.asm @@ -21,6 +21,7 @@ and rax, 1 hlt +align 4096 .pos_inf: dq 0 dw 0 diff --git a/unittests/ASM/X87/invalid_fist_nan.asm b/unittests/ASM/X87/invalid_fist_nan.asm index 395d37333..77ed8d207 100644 --- a/unittests/ASM/X87/invalid_fist_nan.asm +++ b/unittests/ASM/X87/invalid_fist_nan.asm @@ -21,6 +21,6 @@ and rax, 1 hlt -align 8 +align 4096 data: dd 0 diff --git a/unittests/ASM/X87/invalid_fist_overflow.asm b/unittests/ASM/X87/invalid_fist_overflow.asm index 9c7418b12..93566ba27 100644 --- a/unittests/ASM/X87/invalid_fist_overflow.asm +++ b/unittests/ASM/X87/invalid_fist_overflow.asm @@ -20,7 +20,7 @@ and rax, 1 hlt -align 8 +align 4096 large_value: dt 1e20 data: diff --git a/unittests/ASM/X87/invalid_fist_overflow_16bit.asm b/unittests/ASM/X87/invalid_fist_overflow_16bit.asm index 45f20b172..b36ed68e3 100644 --- a/unittests/ASM/X87/invalid_fist_overflow_16bit.asm +++ b/unittests/ASM/X87/invalid_fist_overflow_16bit.asm @@ -6,17 +6,6 @@ } %endif -section .rodata -.thirty: dq 30 - -section .bss -.dummy: resw 1 - -section .text -global _start - -_start: - ; Test FIST with 16-bit overflow = Invalid Operation (should set bit 0 of status word) ; Create a large number that will overflow int16 @@ -33,3 +22,7 @@ fstsw ax and rax, 1 hlt + +align 4096 +.thirty: dq 30 +.dummy: dw 0 diff --git a/unittests/ASM/X87/invalid_fist_overflow_32bit.asm b/unittests/ASM/X87/invalid_fist_overflow_32bit.asm index 55c4d3dc0..5aa534304 100644 --- a/unittests/ASM/X87/invalid_fist_overflow_32bit.asm +++ b/unittests/ASM/X87/invalid_fist_overflow_32bit.asm @@ -6,17 +6,6 @@ } %endif -section .rodata -.fifty: dq 50 - -section .bss -.dummy: resd 1 - -section .text -global _start - -_start: - ; Test FIST with 32-bit overflow = Invalid Operation (should set bit 0 of status word) ; Create a very large number that will overflow int32 @@ -33,3 +22,7 @@ fstsw ax and rax, 1 hlt + +align 4096 +.fifty: dq 50 +.dummy: dd 0 diff --git a/unittests/ASM/X87/invalid_fist_overflow_64bit.asm b/unittests/ASM/X87/invalid_fist_overflow_64bit.asm index b7f1dec87..e0980e0da 100644 --- a/unittests/ASM/X87/invalid_fist_overflow_64bit.asm +++ b/unittests/ASM/X87/invalid_fist_overflow_64bit.asm @@ -6,17 +6,6 @@ } %endif -section .rodata -.seventyfive: dq 75 - -section .bss -.dummy: resq 1 - -section .text -global _start - -_start: - ; Test FIST with 64-bit overflow = Invalid Operation (should set bit 0 of status word) ; Create a very large number that will overflow int64 @@ -33,3 +22,7 @@ fstsw ax and rax, 1 hlt + +align 4096 +.seventyfive: dq 75 +.dummy: dq 0 diff --git a/unittests/ASM/X87/invalid_fptan_infinity.asm b/unittests/ASM/X87/invalid_fptan_infinity.asm index 56c88ef9b..2b988d35b 100644 --- a/unittests/ASM/X87/invalid_fptan_infinity.asm +++ b/unittests/ASM/X87/invalid_fptan_infinity.asm @@ -21,6 +21,7 @@ and rax, 1 hlt +align 4096 .pos_inf: dq 0 dw 0 diff --git a/unittests/ASM/X87/invalid_fsin_infinity.asm b/unittests/ASM/X87/invalid_fsin_infinity.asm index 1df33e2da..9962e887c 100644 --- a/unittests/ASM/X87/invalid_fsin_infinity.asm +++ b/unittests/ASM/X87/invalid_fsin_infinity.asm @@ -21,6 +21,7 @@ and rax, 1 hlt +align 4096 .pos_inf: dq 0 dw 0 diff --git a/unittests/ASM/X87/invalid_fsin_neg_infinity.asm b/unittests/ASM/X87/invalid_fsin_neg_infinity.asm index 9e8550728..596fa09c4 100644 --- a/unittests/ASM/X87/invalid_fsin_neg_infinity.asm +++ b/unittests/ASM/X87/invalid_fsin_neg_infinity.asm @@ -21,6 +21,7 @@ and rax, 1 hlt +align 4096 .neg_inf: dq 0 dw 0 diff --git a/unittests/ASM/X87/invalid_fsincos_infinity.asm b/unittests/ASM/X87/invalid_fsincos_infinity.asm index 533cdbd39..cb33e736f 100644 --- a/unittests/ASM/X87/invalid_fsincos_infinity.asm +++ b/unittests/ASM/X87/invalid_fsincos_infinity.asm @@ -21,6 +21,7 @@ and rax, 1 hlt +align 4096 .pos_inf: dq 0 dw 0 diff --git a/unittests/ASM/X87/invalid_reduced_precision.asm b/unittests/ASM/X87/invalid_reduced_precision.asm index dbadfbe18..bb3a06b21 100644 --- a/unittests/ASM/X87/invalid_reduced_precision.asm +++ b/unittests/ASM/X87/invalid_reduced_precision.asm @@ -28,6 +28,6 @@ fldcw [rel saved_cw] hlt -align 8 +align 4096 saved_cw: dw 0 new_cw: dw 0 diff --git a/unittests/ASM/X87/precision_test_fabs.asm b/unittests/ASM/X87/precision_test_fabs.asm index 9dda77a11..d8b74670e 100644 --- a/unittests/ASM/X87/precision_test_fabs.asm +++ b/unittests/ASM/X87/precision_test_fabs.asm @@ -111,6 +111,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8111_1111_1111_1111 diff --git a/unittests/ASM/X87/precision_test_fadd.asm b/unittests/ASM/X87/precision_test_fadd.asm index 6678d3313..ca3439ec3 100644 --- a/unittests/ASM/X87/precision_test_fadd.asm +++ b/unittests/ASM/X87/precision_test_fadd.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8111_1111_1111_1111 diff --git a/unittests/ASM/X87/precision_test_fcos.asm b/unittests/ASM/X87/precision_test_fcos.asm index d1e64a978..e6b5897ca 100644 --- a/unittests/ASM/X87/precision_test_fcos.asm +++ b/unittests/ASM/X87/precision_test_fcos.asm @@ -111,6 +111,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8222_2222_2222_2222 diff --git a/unittests/ASM/X87/precision_test_fdiv.asm b/unittests/ASM/X87/precision_test_fdiv.asm index 46c977d2a..b045dfca3 100644 --- a/unittests/ASM/X87/precision_test_fdiv.asm +++ b/unittests/ASM/X87/precision_test_fdiv.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8111_1111_1111_1111 diff --git a/unittests/ASM/X87/precision_test_fdivr.asm b/unittests/ASM/X87/precision_test_fdivr.asm index 893e9176d..7d4e2fce9 100644 --- a/unittests/ASM/X87/precision_test_fdivr.asm +++ b/unittests/ASM/X87/precision_test_fdivr.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8111_1111_1111_1111 diff --git a/unittests/ASM/X87/precision_test_fmul.asm b/unittests/ASM/X87/precision_test_fmul.asm index 54510dd4e..74175de57 100644 --- a/unittests/ASM/X87/precision_test_fmul.asm +++ b/unittests/ASM/X87/precision_test_fmul.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8111_1111_1111_1111 diff --git a/unittests/ASM/X87/precision_test_fprem.asm b/unittests/ASM/X87/precision_test_fprem.asm index a6144b973..dd80ca7b8 100644 --- a/unittests/ASM/X87/precision_test_fprem.asm +++ b/unittests/ASM/X87/precision_test_fprem.asm @@ -147,6 +147,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8222_2222_2222_2222 diff --git a/unittests/ASM/X87/precision_test_fprem1.asm b/unittests/ASM/X87/precision_test_fprem1.asm index acb8682a9..b5e5e22ec 100644 --- a/unittests/ASM/X87/precision_test_fprem1.asm +++ b/unittests/ASM/X87/precision_test_fprem1.asm @@ -147,6 +147,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8222_2222_2222_2222 diff --git a/unittests/ASM/X87/precision_test_fscale.asm b/unittests/ASM/X87/precision_test_fscale.asm index 638180341..d77f83b7e 100644 --- a/unittests/ASM/X87/precision_test_fscale.asm +++ b/unittests/ASM/X87/precision_test_fscale.asm @@ -147,6 +147,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8222_2222_2222_2222 diff --git a/unittests/ASM/X87/precision_test_fsin.asm b/unittests/ASM/X87/precision_test_fsin.asm index 3aa3e3887..41c1d098b 100644 --- a/unittests/ASM/X87/precision_test_fsin.asm +++ b/unittests/ASM/X87/precision_test_fsin.asm @@ -111,6 +111,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8222_2222_2222_2222 diff --git a/unittests/ASM/X87/precision_test_fsqrt.asm b/unittests/ASM/X87/precision_test_fsqrt.asm index 76d520006..4575f66ab 100644 --- a/unittests/ASM/X87/precision_test_fsqrt.asm +++ b/unittests/ASM/X87/precision_test_fsqrt.asm @@ -111,6 +111,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_80bit: dq 0x8000_0000_0000_0002 diff --git a/unittests/ASM/X87/precision_test_fsub.asm b/unittests/ASM/X87/precision_test_fsub.asm index ccd97e1a7..068a31661 100644 --- a/unittests/ASM/X87/precision_test_fsub.asm +++ b/unittests/ASM/X87/precision_test_fsub.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8111_1111_1111_1111 diff --git a/unittests/ASM/X87/precision_test_fsubr.asm b/unittests/ASM/X87/precision_test_fsubr.asm index 4ef3dc8a9..3472d68f6 100644 --- a/unittests/ASM/X87/precision_test_fsubr.asm +++ b/unittests/ASM/X87/precision_test_fsubr.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8111_1111_1111_1111 diff --git a/unittests/ASM/X87/precision_test_ftan.asm b/unittests/ASM/X87/precision_test_ftan.asm index a70469966..d5161f181 100644 --- a/unittests/ASM/X87/precision_test_ftan.asm +++ b/unittests/ASM/X87/precision_test_ftan.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8222_2222_2222_2222 diff --git a/unittests/ASM/X87/precision_test_fyl2x.asm b/unittests/ASM/X87/precision_test_fyl2x.asm index 5732e3b52..9502cdbd6 100644 --- a/unittests/ASM/X87/precision_test_fyl2x.asm +++ b/unittests/ASM/X87/precision_test_fyl2x.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 .source_1: dq 64 diff --git a/unittests/ASM/X87/precision_test_fyl2xp1.asm b/unittests/ASM/X87/precision_test_fyl2xp1.asm index 19c9a7248..cae78d5d3 100644 --- a/unittests/ASM/X87/precision_test_fyl2xp1.asm +++ b/unittests/ASM/X87/precision_test_fyl2xp1.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 .source_1: dq 64 diff --git a/unittests/ASM/X87/precision_test_neg_fabs.asm b/unittests/ASM/X87/precision_test_neg_fabs.asm index ba442023d..219052b20 100644 --- a/unittests/ASM/X87/precision_test_neg_fabs.asm +++ b/unittests/ASM/X87/precision_test_neg_fabs.asm @@ -111,6 +111,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8111_1111_1111_1111 diff --git a/unittests/ASM/X87/precision_test_neg_fadd.asm b/unittests/ASM/X87/precision_test_neg_fadd.asm index 8f49f69be..196b0c16d 100644 --- a/unittests/ASM/X87/precision_test_neg_fadd.asm +++ b/unittests/ASM/X87/precision_test_neg_fadd.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Negative .source_1: dq 0x8111_1111_1111_1111 diff --git a/unittests/ASM/X87/precision_test_neg_fcos.asm b/unittests/ASM/X87/precision_test_neg_fcos.asm index a769f0104..cbebd3b0d 100644 --- a/unittests/ASM/X87/precision_test_neg_fcos.asm +++ b/unittests/ASM/X87/precision_test_neg_fcos.asm @@ -111,6 +111,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8222_2222_2222_2222 diff --git a/unittests/ASM/X87/precision_test_neg_fdiv.asm b/unittests/ASM/X87/precision_test_neg_fdiv.asm index a308179f6..22f22deec 100644 --- a/unittests/ASM/X87/precision_test_neg_fdiv.asm +++ b/unittests/ASM/X87/precision_test_neg_fdiv.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Negative .source_1: dq 0x8111_1111_1111_1111 diff --git a/unittests/ASM/X87/precision_test_neg_fdivr.asm b/unittests/ASM/X87/precision_test_neg_fdivr.asm index 1e40a9219..4502c5bfc 100644 --- a/unittests/ASM/X87/precision_test_neg_fdivr.asm +++ b/unittests/ASM/X87/precision_test_neg_fdivr.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Negative .source_1: dq 0x8111_1111_1111_1111 diff --git a/unittests/ASM/X87/precision_test_neg_fmul.asm b/unittests/ASM/X87/precision_test_neg_fmul.asm index c30246361..6ce479546 100644 --- a/unittests/ASM/X87/precision_test_neg_fmul.asm +++ b/unittests/ASM/X87/precision_test_neg_fmul.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Negative .source_1: dq 0x8111_1111_1111_1111 diff --git a/unittests/ASM/X87/precision_test_neg_fprem.asm b/unittests/ASM/X87/precision_test_neg_fprem.asm index 8471a3bc8..116f61aba 100644 --- a/unittests/ASM/X87/precision_test_neg_fprem.asm +++ b/unittests/ASM/X87/precision_test_neg_fprem.asm @@ -147,6 +147,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8222_2222_2222_2222 diff --git a/unittests/ASM/X87/precision_test_neg_fprem1.asm b/unittests/ASM/X87/precision_test_neg_fprem1.asm index 1adf6c469..0b5021932 100644 --- a/unittests/ASM/X87/precision_test_neg_fprem1.asm +++ b/unittests/ASM/X87/precision_test_neg_fprem1.asm @@ -147,6 +147,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8222_2222_2222_2222 diff --git a/unittests/ASM/X87/precision_test_neg_fscale.asm b/unittests/ASM/X87/precision_test_neg_fscale.asm index 33b982d61..6ed3dcf9b 100644 --- a/unittests/ASM/X87/precision_test_neg_fscale.asm +++ b/unittests/ASM/X87/precision_test_neg_fscale.asm @@ -147,6 +147,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Negative .source_1: dq 0x8222_2222_2222_2222 diff --git a/unittests/ASM/X87/precision_test_neg_fsin.asm b/unittests/ASM/X87/precision_test_neg_fsin.asm index b3bafd336..a64cbaf7a 100644 --- a/unittests/ASM/X87/precision_test_neg_fsin.asm +++ b/unittests/ASM/X87/precision_test_neg_fsin.asm @@ -111,6 +111,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8222_2222_2222_2222 diff --git a/unittests/ASM/X87/precision_test_neg_fsub.asm b/unittests/ASM/X87/precision_test_neg_fsub.asm index 22882576d..d9547bf3c 100644 --- a/unittests/ASM/X87/precision_test_neg_fsub.asm +++ b/unittests/ASM/X87/precision_test_neg_fsub.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Negative .source_1: dq 0x8111_1111_1111_1111 diff --git a/unittests/ASM/X87/precision_test_neg_fsubr.asm b/unittests/ASM/X87/precision_test_neg_fsubr.asm index fb62c00f0..4040ffa44 100644 --- a/unittests/ASM/X87/precision_test_neg_fsubr.asm +++ b/unittests/ASM/X87/precision_test_neg_fsubr.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Negative .source_1: dq 0x8111_1111_1111_1111 diff --git a/unittests/ASM/X87/precision_test_neg_ftan.asm b/unittests/ASM/X87/precision_test_neg_ftan.asm index 65e5d4b69..0a330019d 100644 --- a/unittests/ASM/X87/precision_test_neg_ftan.asm +++ b/unittests/ASM/X87/precision_test_neg_ftan.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 ; Positive .source_1: dq 0x8222_2222_2222_2222 diff --git a/unittests/ASM/X87/precision_test_neg_fyl2x.asm b/unittests/ASM/X87/precision_test_neg_fyl2x.asm index aa35f7769..5e475ab0f 100644 --- a/unittests/ASM/X87/precision_test_neg_fyl2x.asm +++ b/unittests/ASM/X87/precision_test_neg_fyl2x.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 .source_1: dq 64 diff --git a/unittests/ASM/X87/precision_test_neg_fyl2xp1.asm b/unittests/ASM/X87/precision_test_neg_fyl2xp1.asm index a15616332..9750a8fed 100644 --- a/unittests/ASM/X87/precision_test_neg_fyl2xp1.asm +++ b/unittests/ASM/X87/precision_test_neg_fyl2xp1.asm @@ -123,6 +123,7 @@ movups xmm11, [rel .result_12] hlt +align 4096 .source_1: dq 64 diff --git a/unittests/ASM/X87/valid_fist_16bit.asm b/unittests/ASM/X87/valid_fist_16bit.asm index e0645ead1..e43238d01 100644 --- a/unittests/ASM/X87/valid_fist_16bit.asm +++ b/unittests/ASM/X87/valid_fist_16bit.asm @@ -7,17 +7,6 @@ } %endif -section .rodata -.value: dq 12345.75 - -section .bss -.result: resw 1 - -section .text -global _start - -_start: - ; Test FIST with valid 16-bit conversion ; Load a value that fits in int16 range @@ -34,3 +23,7 @@ and rax, 1 movzx rbx, word [rel .result] hlt + +align 4096 +.value: dq 12345.75 +.result: dw 0 diff --git a/unittests/ASM/X87_F64/D9_F4_02_F64.asm b/unittests/ASM/X87_F64/D9_F4_02_F64.asm index e363c8d46..c6b4e8fb8 100644 --- a/unittests/ASM/X87_F64/D9_F4_02_F64.asm +++ b/unittests/ASM/X87_F64/D9_F4_02_F64.asm @@ -17,18 +17,6 @@ ; move results to general purpose registers and check them there ; so that hostrunner tests work properly. -section .data - nzer: dq -0.0 - -section .bss - expz: resq 1 - sigz: resq 1 - expnz: resq 1 - signz: resq 1 - -section .text -global _start -_start: finit fldz fxtract @@ -48,3 +36,10 @@ mov rdx, [rel signz] hlt + +align 4096 +nzer: dq -0.0 +expz: dq 0 +sigz: dq 0 +expnz: dq 0 +signz: dq 0 diff --git a/unittests/ASM/X87_F64/D9_F6_F64.asm b/unittests/ASM/X87_F64/D9_F6_F64.asm index 0127ec3c4..8200f2533 100644 --- a/unittests/ASM/X87_F64/D9_F6_F64.asm +++ b/unittests/ASM/X87_F64/D9_F6_F64.asm @@ -19,17 +19,6 @@ ; Set the stack with different values. ; Then do fincstp and store the stack values into MMX registers through memory ; such that MM0 has the value of ST0 and so on. - -section .bss -align 8 -temp: resq 1 -stack: resq 8 - -section .text -global _start - -_start: - mov rax, 0x3ff0000000000000 ; 1.0 mov [rel temp], rax fld qword [rel temp] @@ -100,3 +89,7 @@ movq mm6, [rel stack + 8 * 6] movq mm7, [rel stack + 8 * 7] hlt + +align 4096 +temp: dq 0 +stack: times 8 dq 0 diff --git a/unittests/ASM/X87_F64/D9_F7_F64.asm b/unittests/ASM/X87_F64/D9_F7_F64.asm index d9309220f..a07746929 100644 --- a/unittests/ASM/X87_F64/D9_F7_F64.asm +++ b/unittests/ASM/X87_F64/D9_F7_F64.asm @@ -19,17 +19,6 @@ ; Set the stack with different values. ; Then do fincstp and store the stack values into MMX registers through memory ; such that MM0 has the value of ST0 and so on. - -section .bss -align 8 -temp: resq 1 -stack: resq 8 - -section .text -global _start - -_start: - mov rax, 0x3ff0000000000000 ; 1.0 mov [rel temp], rax fld qword [rel temp] @@ -99,3 +88,7 @@ movq mm6, [rel stack + 8 * 6] movq mm7, [rel stack + 8 * 7] hlt + +align 4096 +temp: dq 0 +stack: times 8 dq 0 diff --git a/unittests/ASM/X87_F64/D9_F8_F64.asm b/unittests/ASM/X87_F64/D9_F8_F64.asm index d5632f537..01e823290 100644 --- a/unittests/ASM/X87_F64/D9_F8_F64.asm +++ b/unittests/ASM/X87_F64/D9_F8_F64.asm @@ -23,7 +23,7 @@ mov ebx, [rdx + 8] hlt -align 8 +align 4096 data: dt 3.0 dq 0 diff --git a/unittests/ASM/X87_F64/DB_07_F64.asm b/unittests/ASM/X87_F64/DB_07_F64.asm index 348067315..a2b6d396d 100644 --- a/unittests/ASM/X87_F64/DB_07_F64.asm +++ b/unittests/ASM/X87_F64/DB_07_F64.asm @@ -20,7 +20,7 @@ mov rax, [rdx] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87_F64/DB_E3.asm b/unittests/ASM/X87_F64/DB_E3.asm index 39613ab6e..2764c90ef 100644 --- a/unittests/ASM/X87_F64/DB_E3.asm +++ b/unittests/ASM/X87_F64/DB_E3.asm @@ -7,12 +7,6 @@ } %endif -section .bss -control: resb 2 ; Reserve space for the FPU control word - -section .text -global _start -_start: fninit ; Ensures that fnstcw after fninit sets the correct value @@ -20,3 +14,7 @@ fnstcw [rel control] mov ax, word [rel control] hlt + +align 4096 +control: +times 2 db 0 ; Reserve space for the FPU control word diff --git a/unittests/ASM/X87_F64/DC_01_F64.asm b/unittests/ASM/X87_F64/DC_01_F64.asm index 4572fedb7..09b7e6c27 100644 --- a/unittests/ASM/X87_F64/DC_01_F64.asm +++ b/unittests/ASM/X87_F64/DC_01_F64.asm @@ -19,7 +19,7 @@ mov rax, [rdx] hlt -align 8 +align 4096 data: dt 1.0 dq 0 diff --git a/unittests/ASM/X87_F64/DC_C8_F64.asm b/unittests/ASM/X87_F64/DC_C8_F64.asm index ded66d45d..7fe45f80d 100644 --- a/unittests/ASM/X87_F64/DC_C8_F64.asm +++ b/unittests/ASM/X87_F64/DC_C8_F64.asm @@ -25,7 +25,7 @@ mov rbx, [rdx] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87_F64/DC_E0_F64.asm b/unittests/ASM/X87_F64/DC_E0_F64.asm index 089b21af7..797cc054d 100644 --- a/unittests/ASM/X87_F64/DC_E0_F64.asm +++ b/unittests/ASM/X87_F64/DC_E0_F64.asm @@ -23,7 +23,7 @@ mov rbx, [rdx] hlt -align 8 +align 4096 data: dt 1.0 dq 0 diff --git a/unittests/ASM/X87_F64/DC_E8_F64.asm b/unittests/ASM/X87_F64/DC_E8_F64.asm index fc877901a..712499fb5 100644 --- a/unittests/ASM/X87_F64/DC_E8_F64.asm +++ b/unittests/ASM/X87_F64/DC_E8_F64.asm @@ -24,7 +24,7 @@ mov rbx, [rdx] hlt -align 8 +align 4096 data: dt 1.0 dq 0 diff --git a/unittests/ASM/X87_F64/DC_F0_F64.asm b/unittests/ASM/X87_F64/DC_F0_F64.asm index fdfb5162b..026fc0fcb 100644 --- a/unittests/ASM/X87_F64/DC_F0_F64.asm +++ b/unittests/ASM/X87_F64/DC_F0_F64.asm @@ -23,7 +23,7 @@ mov rbx, [rdx] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87_F64/DC_F8_F64.asm b/unittests/ASM/X87_F64/DC_F8_F64.asm index 53ebda9e3..a9e709050 100644 --- a/unittests/ASM/X87_F64/DC_F8_F64.asm +++ b/unittests/ASM/X87_F64/DC_F8_F64.asm @@ -23,7 +23,7 @@ mov rbx, [rdx] hlt -align 8 +align 4096 data: dt 8.0 dq 0 diff --git a/unittests/ASM/X87_F64/DD_01_F64.asm b/unittests/ASM/X87_F64/DD_01_F64.asm index e8d79c4ce..17017e45e 100644 --- a/unittests/ASM/X87_F64/DD_01_F64.asm +++ b/unittests/ASM/X87_F64/DD_01_F64.asm @@ -24,7 +24,7 @@ mov rbx, [rdx] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87_F64/DD_02_F64.asm b/unittests/ASM/X87_F64/DD_02_F64.asm index 704c814af..bcfd9206a 100644 --- a/unittests/ASM/X87_F64/DD_02_F64.asm +++ b/unittests/ASM/X87_F64/DD_02_F64.asm @@ -27,7 +27,7 @@ mov rcx, [rdx] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87_F64/DD_03_F64.asm b/unittests/ASM/X87_F64/DD_03_F64.asm index 00cf51c6a..15f604449 100644 --- a/unittests/ASM/X87_F64/DD_03_F64.asm +++ b/unittests/ASM/X87_F64/DD_03_F64.asm @@ -24,7 +24,7 @@ mov rbx, [rdx] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87_F64/DD_D0_2_F64.asm b/unittests/ASM/X87_F64/DD_D0_2_F64.asm index 91ee29a51..08f952b75 100644 --- a/unittests/ASM/X87_F64/DD_D0_2_F64.asm +++ b/unittests/ASM/X87_F64/DD_D0_2_F64.asm @@ -25,6 +25,6 @@ mov rbx, [rdx] hlt -align 8 +align 4096 data: - dq 2.0 \ No newline at end of file + dq 2.0 diff --git a/unittests/ASM/X87_F64/DD_D0_F64.asm b/unittests/ASM/X87_F64/DD_D0_F64.asm index 7b8f5d166..fadd1aaac 100644 --- a/unittests/ASM/X87_F64/DD_D0_F64.asm +++ b/unittests/ASM/X87_F64/DD_D0_F64.asm @@ -22,7 +22,7 @@ mov rbx, [rdx] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87_F64/DD_D8_F64.asm b/unittests/ASM/X87_F64/DD_D8_F64.asm index 751dcee13..af0492140 100644 --- a/unittests/ASM/X87_F64/DD_D8_F64.asm +++ b/unittests/ASM/X87_F64/DD_D8_F64.asm @@ -25,7 +25,7 @@ mov rbx, [rdx] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87_F64/DF_01_F64.asm b/unittests/ASM/X87_F64/DF_01_F64.asm index 5956cc1c2..1ff24a3ce 100644 --- a/unittests/ASM/X87_F64/DF_01_F64.asm +++ b/unittests/ASM/X87_F64/DF_01_F64.asm @@ -24,7 +24,7 @@ mov rbx, [rdx + 8 * 0] hlt -align 8 +align 4096 data: dt 2.0 dq 0 diff --git a/unittests/ASM/X87_F64/DF_04_F64.asm b/unittests/ASM/X87_F64/DF_04_F64.asm index 31cf7dc43..840636b32 100644 --- a/unittests/ASM/X87_F64/DF_04_F64.asm +++ b/unittests/ASM/X87_F64/DF_04_F64.asm @@ -104,11 +104,11 @@ movups xmm11, [rel .res_data_11] hlt -align 16 +align 4096 .precisionMask: dd 0xfff00000 dd 0xffffffff -dd 0xffffffff +dd 0xffffffff dd 0xffffffff diff --git a/unittests/ASM/X87_F64/FScale-Zero_F64.asm b/unittests/ASM/X87_F64/FScale-Zero_F64.asm index b3c14301d..1f809e227 100644 --- a/unittests/ASM/X87_F64/FScale-Zero_F64.asm +++ b/unittests/ASM/X87_F64/FScale-Zero_F64.asm @@ -11,13 +11,6 @@ } %endif -section .data - neg_zero dq 0x8000000000000000 ; -0.0 - -section .bss - intstor: resq 1 - -section .text ; scale by zero (st1 == 0) mov rax, 0 mov qword [rel intstor], rax @@ -79,3 +72,7 @@ fst qword [rel intstor] mov r13, [rel intstor] hlt + +align 4096 +neg_zero: dq 0x8000000000000000 ; -0.0 +intstor: dq 0 diff --git a/unittests/ASM/X87_F64/Rounding_F64.asm b/unittests/ASM/X87_F64/Rounding_F64.asm index a8454c635..8c3231128 100644 --- a/unittests/ASM/X87_F64/Rounding_F64.asm +++ b/unittests/ASM/X87_F64/Rounding_F64.asm @@ -10,26 +10,6 @@ } %endif -section .data -align 8 -midpoint: - dq 1.5 -samidpoint: - dq 1.50001 -sbmidpoint: - dq 1.49999 -nmidpoint: - dq -1.5 -nsamidpoint: - dq -1.49999 -nsbmidpoint: - dq -1.50001 - -section .bss -align 8 -tmp resq 1 - -section .text ; Rounding tests to ensure rounding modes are actually working ;; Mid-point @@ -311,3 +291,19 @@ mov ax, word [rel tmp] or rsi, rax hlt + +align 4096 +midpoint: + dq 1.5 +samidpoint: + dq 1.50001 +sbmidpoint: + dq 1.49999 +nmidpoint: + dq -1.5 +nsamidpoint: + dq -1.49999 +nsbmidpoint: + dq -1.50001 + +tmp: dq 0 diff --git a/unittests/ASM/x87_stack.asm b/unittests/ASM/x87_stack.asm index f032ca9c6..04d6f78c7 100644 --- a/unittests/ASM/x87_stack.asm +++ b/unittests/ASM/x87_stack.asm @@ -17,6 +17,7 @@ mov rax, [rbx] mov rbx, [rbx + 8] hlt +align 4096 .data: dq 0x4142434445464748 dq 0x5152535455565758