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

# Test t5156: AVX tuples in MVEX encoding

Description
  Disp8*N scaling and broadcasting in AVX MVEX encoding
Tested procedures
  IiCompressDisp8

Source & expected listing t5156.htm.lst
  `| | EUROASM LIST=ON, DUMP=ON, DUMPWIDTH=30, CPU=X64, SIMD=AVX512, MVEX=ENABLED | |t5156 PROGRAM FORMAT=BIN, LISTMAP=OFF, LISTGLOBALS=OFF |[Mode64] |[Mode64] SEGMENT WIDTH=64,PURPOSE=CODE |00000000: | ; Sf64 {8to8}. |00000000:62F1F9085A4D01<6 | VCVTPD2PS ZMM1,[RBP+40h],PREFIX=MVEX,OPER=0 ; {8to8}. |00000007:62F1F9185A4D08<3 | VCVTPD2PS ZMM1,[RBP+40h],PREFIX=MVEX,OPER=1 ; {1to8}. |0000000E:62F1F9285A4D02<5 | VCVTPD2PS ZMM1,[RBP+40h],PREFIX=MVEX,OPER=2 ; {4to8}. |00000015: | ; Uf64 {4to8}. |00000015:62F2F9081B4D02<5 | VBROADCASTF64X4 ZMM1,[RBP+40h],PREFIX=MVEX |0000001C: | ; Uf64 {1to8}. |0000001C:62F2F908194D08<3 | VBROADCASTSD ZMM1,[RBP+40h],PREFIX=MVEX |00000023: | ; Sf64 {8to8} |00000023:62F1F9085A4D01<6 | VCVTPD2PS ZMM1,[RBP+40h],PREFIX=MVEX,OPER=0 ; {8to8}. |0000002A:62F1F9185A4D08<3 | VCVTPD2PS ZMM1,[RBP+40h],PREFIX=MVEX,OPER=1 ; {1to8}. |00000031:62F1F9285A4D02<5 | VCVTPD2PS ZMM1,[RBP+40h],PREFIX=MVEX,OPER=2 ; {4to8}. |00000038: | ; Ii64 {4to8} |00000038:62F2F9085B4D02<5 | VBROADCASTi64X4 ZMM1,[RBP+40h],PREFIX=MVEX ; No conversion. |0000003F: | ; Uf32 {4to16}. |0000003F:62F279081A4D04<4 | VBROADCASTF32X4 ZMM1,[RBP+40h],PREFIX=MVEX,OPER=0 ; No conversion. |00000046:62F279381A4D08<3 | VBROADCASTF32X4 ZMM1,[RBP+40h],PREFIX=MVEX,OPER=3 ; Float16 to float32. |0000004D:62F279481A4D10<2 | VBROADCASTF32X4 ZMM1,[RBP+40h],PREFIX=MVEX,OPER=4 ; Uint8 to float32. |00000054:62F279581A4D10<2 | VBROADCASTF32X4 ZMM1,[RBP+40h],PREFIX=MVEX,OPER=5 ; Sint8 to float32. |0000005B:62F279681A4D08<3 | VBROADCASTF32X4 ZMM1,[RBP+40h],PREFIX=MVEX,OPER=6 ; Uint16 to float32. |00000062:62F279781A4D08<3 | VBROADCASTF32X4 ZMM1,[RBP+40h],PREFIX=MVEX,OPER=7 ; Sint16 to float32. |00000069: | ; Ui32 {4to16}. |00000069:62F279085A4D04<4 | VBROADCASTI32X4 ZMM1,[RBP+40h],PREFIX=MVEX,OPER=0 ; No conversion. |00000070:62F279485A4D10<2 | VBROADCASTI32X4 ZMM1,[RBP+40h],PREFIX=MVEX,OPER=4 ; Uint8 to uint32. |00000077:62F279585A4D10<2 | VBROADCASTI32X4 ZMM1,[RBP+40h],PREFIX=MVEX,OPER=5 ; Sint8 to uint32. |0000007E:62F279685A4D08<3 | VBROADCASTI32X4 ZMM1,[RBP+40h],PREFIX=MVEX,OPER=6 ; Uint16 to uint32. |00000085:62F279785A4D08<3 | VBROADCASTI32X4 ZMM1,[RBP+40h],PREFIX=MVEX,OPER=7 ; Sint16 to uint32. |0000008C: | ; Sf32 |0000008C:62F16808584D01<6 | VADDPS ZMM1,ZMM2,[RBP+40h],PREFIX=MVEX,OPER=0 ; {16to16}. |00000093:62F16818584D10<2 | VADDPS ZMM1,ZMM2,[RBP+40h],PREFIX=MVEX,OPER=1 ; {1to16}. |0000009A:62F16828584D04<4 | VADDPS ZMM1,ZMM2,[RBP+40h],PREFIX=MVEX,OPER=2 ; {4to16}. |000000A1:62F16838584D02<5 | VADDPS ZMM1,ZMM2,[RBP+40h],PREFIX=MVEX,OPER=3 ; Float16 to float32. |000000A8:62F16848584D04<4 | VADDPS ZMM1,ZMM2,[RBP+40h],PREFIX=MVEX,OPER=4 ; Uint8 to float32. |000000AF:62F16868584D02<5 | VADDPS ZMM1,ZMM2,[RBP+40h],PREFIX=MVEX,OPER=6 ; Uint16 to float32. |000000B6:62F16878584D02<5 | VADDPS ZMM1,ZMM2,[RBP+40h],PREFIX=MVEX,OPER=7 ; Sint16 to float32. |000000BD: | ; Sf32 |000000BD:62F178085A4D02<5 | VCVTPS2PD ZMM1,[RBP+40h],PREFIX=MVEX,OPER=0 ; {8to8} |000000C4:62F178185A4D10<2 | VCVTPS2PD ZMM1,[RBP+40h],PREFIX=MVEX,OPER=1 ; {1to8} |000000CB:62F178285A4D04<4 | VCVTPS2PD ZMM1,[RBP+40h],PREFIX=MVEX,OPER=2 ; {4to8} |000000D2: | ; Si32 |000000D2:62F17A08E64D02<5 | VCVTDQ2PD ZMM1,[RBP+40h],PREFIX=MVEX,OPER=0 ; {8to8} |000000D9:62F17A18E64D10<2 | VCVTDQ2PD ZMM1,[RBP+40h],PREFIX=MVEX,OPER=1 ; {1to8} |000000E0:62F17A28E64D04<4 | VCVTDQ2PD ZMM1,[RBP+40h],PREFIX=MVEX,OPER=2 ; {4to8} | |ENDPROGRAM t5156`

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

▲Back to the top▲