0

抛出浮点异常的 vfmadd231ps 指令有什么问题?

    00007ff9`88f05108 62b26558b81482  vfmadd231ps zmm2,zmm3,dword bcst [rdx+r8*4] ds:00000220`7de9dc00=00000000
    
    0:112> .exr -1
        ExceptionAddress: 00007ff988f05108 
           ExceptionCode: c0000090
          ExceptionFlags: 00000000
        NumberParameters: 2
           Parameter[0]: 0000000000000000
           Parameter[1]: 0000000000001923
        
        
    0:112> rZ
                zmm0=0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
                zmm1=0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
                zmm2=0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
                zmm3=0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
        

0:112> r zmm2:f
zmm2=           0            0            0            0            0            0            0            0            0            0            0            0            0            0            0            0
0:112> r zmm3:f
zmm3=           0            0            0            0            0            0            0            0            0            0            0            0            0            0            0            0
0:112> r zmm3:ub
zmm3=           0            0            0            0            0            0            0            0            0            0            0            0            0            0            0            0
0:112> r zmm2:ub
zmm2=           0            0            0            0            0            0            0            0            0            0            0            0            0            0            0            0

    0:112> db 0220`7de9dc00 L0x40
    00000220`7de9dc00  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................
    00000220`7de9dc10  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................
    00000220`7de9dc20  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................
    00000220`7de9dc30  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................
    
            
mxcsr=1923

根据https://help.totalview.io/previous_releases/2019/html/index.html#page/Reference_Guide/Intelx86MXSCRRegister.html

标志 0x1923 表示

  • 0x1 无效操作标志
  • 0x2 非正规标志
  • 0x20 精度标志
  • 0x1000 精密掩模
  • 0x100 非正规掩码
  • 0x800 下溢屏蔽

寄存器的哪个值负责引发异常以及输入有什么问题?我不是 AVX 专家。对我来说,全零融合乘加看起来不错。

4

0 回答 0