| Index | Manual | Download | Source | Macros | Embedded word Case ins.
Sitemap | Links | Forum | Tests | Projects

# Test t5150: AVX Disp8*N compression

Description
  Switching compression on/off in AVX-2 instruction accessing memory with granularity YWORD (32 bytes).
Tested procedures
  IiCompressDisp8

Source & expected listing t5150.htm.lst
  `| | EUROASM LIST=ON,DUMP=ON,DUMPWIDTH=36,DUMPALL=OFF,CPU=X64,SIMD=AVX512,EVEX=ON | |t5150 PROGRAM FORMAT=BIN, LISTMAP=OFF, LISTGLOBALS=OFF |[Mode16] |[Mode16] SEGMENT WIDTH=16,PURPOSE=CODE |0000:0000000000000000000000000000~|Float32: DZ 8 * D ; Reserve vector of eight doublewords. |0020:62F17C485A4E02<5 | VCVTPS2PD ZMM1,[BP+0x40] ; Compressed as disp8*32. |0027:62F17C485A8E4000 | VCVTPS2PD ZMM1,[BP+0x40],DISP=WORD ; Uncompressed due to explicit demand. |002F:62F17C485A8E5000 | VCVTPS2PD ZMM1,[BP+0x50] ; Uncompressed due to not YWORD aligned. |0037:62F17C485A0E[0000] | VCVTPS2PD ZMM1,[Float32] ; Uncompressed due to relocation. |003F: | ; Test crossing the boundery when compressed disp8 does not fit to signed int8. |003F:62F17C485A4E7E<5 | VCVTPS2PD ZMM1,[BP+0x0FC0] |0046:62F17C485A4E7F<5 | VCVTPS2PD ZMM1,[BP+0x0FE0] |004D:62F17C485A8E0010 | VCVTPS2PD ZMM1,[BP+0x1000] |0055:62F17C485A8E0012 | VCVTPS2PD ZMM1,[BP+0x1200] |005D:62F17C485A8E00EE | VCVTPS2PD ZMM1,[BP-0x1200] |0065:62F17C485A4E80<5 | VCVTPS2PD ZMM1,[BP-0x1000] |006C:62F17C485A4E81<5 | VCVTPS2PD ZMM1,[BP-0x0FE0] |0073:62F17C485A4E82<5 | VCVTPS2PD ZMM1,[BP-0x0FC0] |[Mode32] |[Mode32] SEGMENT WIDTH=32,PURPOSE=CODE |00000000:62F17C485A4D02<5 | VCVTPS2PD ZMM1,[EBP+0x40] ; Compressed as disp8*32. |00000007:62F17C485A8D40000000 | VCVTPS2PD ZMM1,[EBP+0x40],DISP=DWORD ; Uncompressed due to explicit demand. |00000011:62F17C485A8D50000000 | VCVTPS2PD ZMM1,[EBP+0x50] ; Uncompressed due to not YWORD aligned. |0000001B:62F17C485A0D[00000000] | VCVTPS2PD ZMM1,[Float32] ; Uncompressed due to relocation. |00000025: | ; Test crossing the boundery when compressed disp8 does not fit to signed int8. |00000025:62F17C485A4D7E<5 | VCVTPS2PD ZMM1,[EBP+0x0FC0] |0000002C:62F17C485A4D7F<5 | VCVTPS2PD ZMM1,[EBP+0x0FE0] |00000033:62F17C485A8D00100000 | VCVTPS2PD ZMM1,[EBP+0x1000] |0000003D:62F17C485A8D00120000 | VCVTPS2PD ZMM1,[EBP+0x1200] |00000047:62F17C485A8D00EEFFFF | VCVTPS2PD ZMM1,[EBP-0x1200] |00000051:62F17C485A4D80<5 | VCVTPS2PD ZMM1,[EBP-0x1000] |00000058:62F17C485A4D81<5 | VCVTPS2PD ZMM1,[EBP-0x0FE0] |0000005F:62F17C485A4D82<5 | VCVTPS2PD ZMM1,[EBP-0x0FC0] |[Mode64] |[Mode64] SEGMENT WIDTH=64,PURPOSE=CODE |00000000:62F17C485A4D02<5 | VCVTPS2PD ZMM1,[RBP+0x40] ; Compressed as disp8*32. |00000007:62F17C485A8D40000000 | VCVTPS2PD ZMM1,[RBP+0x40],DISP=DWORD ; Uncompressed due to explicit demand. |00000011:62F17C485A8D50000000 | VCVTPS2PD ZMM1,[RBP+0x50] ; Uncompressed due to not YWORD aligned. |0000001B:62F17C485A0C25[00000000] | VCVTPS2PD ZMM1,[Float32],ADDR=ABS ; Uncompressed due to relocation. |00000026: | ; Crossing the boundery when compressed disp8 does not fit to signed int8. |00000026:62F17C485A4D7E<5 | VCVTPS2PD ZMM1,[RBP+0x0FC0] |0000002D:62F17C485A4D7F<5 | VCVTPS2PD ZMM1,[RBP+0x0FE0] |00000034:62F17C485A8D00100000 | VCVTPS2PD ZMM1,[RBP+0x1000] |0000003E:62F17C485A8D00120000 | VCVTPS2PD ZMM1,[RBP+0x1200] |00000048:62F17C485A8D00EEFFFF | VCVTPS2PD ZMM1,[RBP-0x1200] |00000052:62F17C485A4D80<5 | VCVTPS2PD ZMM1,[RBP-0x1000] |00000059:62F17C485A4D81<5 | VCVTPS2PD ZMM1,[RBP-0x0FE0] |00000060:62F17C485A4D82<5 | VCVTPS2PD ZMM1,[RBP-0x0FC0] | |ENDPROGRAM t5150`

Expected messages t5150.out
  `I0180 Assembling source file "t5150.htm". I0270 Assembling source "t5150". I0310 Assembling source pass 1. I0330 Assembling source pass 2 - final. I0470 Assembling program "t5150". "t5150.htm"{52} I0510 Assembling program pass 1. "t5150.htm"{52} I0510 Assembling program pass 2. "t5150.htm"{52} I0530 Assembling program pass 3 - final. "t5150.htm"{52} I0660 16bit TINY BIN file "t5150.bin" created, size=343. "t5150.htm"{96} I0650 Program "t5150" assembled in 3 passes with errorlevel 0. "t5150.htm"{96} I0750 Source "t5150" (115 lines) assembled in 2 passes with errorlevel 0. I0860 Listing file "t5150.htm.lst" created, size=3777. I0990 EuroAssembler terminated with errorlevel 0.`

▲Back to the top▲