[AMDGPU] v_fmac_f64 encoding tests for gfx940
authorMariusz Sikora <mariusz.sikora@amd.com>
Mon, 16 Jan 2023 11:54:56 +0000 (12:54 +0100)
committerMariusz Sikora <mariusz.sikora@amd.com>
Tue, 17 Jan 2023 09:08:08 +0000 (10:08 +0100)
Differential Revision: https://reviews.llvm.org/D141857

llvm/test/MC/AMDGPU/gfx940_asm_features.s
llvm/test/MC/Disassembler/AMDGPU/gfx940_features.txt

index 5cbf45a..c88f31d 100644 (file)
@@ -309,6 +309,170 @@ buffer_atomic_swap v5, off, s[8:11], s3 sc0
 // GFX940: buffer_atomic_swap v5, off, s[8:11], s3 nt ; encoding: [0x00,0x00,0x02,0xe1,0x00,0x05,0x02,0x03]
 buffer_atomic_swap v5, off, s[8:11], s3 nt
 
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e32 v[4:5], v[2:3], v[4:5]   ; encoding: [0x02,0x09,0x08,0x08]
+v_fmac_f64_e32 v[4:5], v[2:3], v[4:5]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e32 v[254:255], v[2:3], v[4:5] ; encoding: [0x02,0x09,0xfc,0x09]
+v_fmac_f64_e32 v[254:255], v[2:3], v[4:5]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e32 v[4:5], v[254:255], v[4:5] ; encoding: [0xfe,0x09,0x08,0x08]
+v_fmac_f64_e32 v[4:5], v[254:255], v[4:5]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e32 v[4:5], flat_scratch, v[4:5] ; encoding: [0x66,0x08,0x08,0x08]
+v_fmac_f64_e32 v[4:5], flat_scratch, v[4:5]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e32 v[4:5], vcc, v[4:5]      ; encoding: [0x6a,0x08,0x08,0x08]
+v_fmac_f64_e32 v[4:5], vcc, v[4:5]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e32 v[4:5], exec, v[4:5]     ; encoding: [0x7e,0x08,0x08,0x08]
+v_fmac_f64_e32 v[4:5], exec, v[4:5]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e32 v[4:5], 0, v[4:5]        ; encoding: [0x80,0x08,0x08,0x08]
+v_fmac_f64_e32 v[4:5], 0, v[4:5]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e32 v[4:5], -1, v[4:5]       ; encoding: [0xc1,0x08,0x08,0x08]
+v_fmac_f64_e32 v[4:5], -1, v[4:5]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e32 v[4:5], 0.5, v[4:5]      ; encoding: [0xf0,0x08,0x08,0x08]
+v_fmac_f64_e32 v[4:5], 0.5, v[4:5]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e32 v[4:5], -4.0, v[4:5]     ; encoding: [0xf7,0x08,0x08,0x08]
+v_fmac_f64_e32 v[4:5], -4.0, v[4:5]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e32 v[4:5], 0xaf123456, v[4:5] ; encoding: [0xff,0x08,0x08,0x08,0x56,0x34,0x12,0xaf]
+v_fmac_f64_e32 v[4:5], 0xaf123456, v[4:5]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e32 v[4:5], 0x3f717273, v[4:5] ; encoding: [0xff,0x08,0x08,0x08,0x73,0x72,0x71,0x3f]
+v_fmac_f64_e32 v[4:5], 0x3f717273, v[4:5]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e32 v[4:5], v[2:3], v[254:255] ; encoding: [0x02,0xfd,0x09,0x08]
+v_fmac_f64_e32 v[4:5], v[2:3], v[254:255]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], v[8:9]   ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x00]
+v_fmac_f64_e64 v[4:5], v[2:3], v[8:9]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[254:255], v[2:3], v[8:9] ; encoding: [0xfe,0x00,0x04,0xd1,0x02,0x11,0x02,0x00]
+v_fmac_f64_e64 v[254:255], v[2:3], v[8:9]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[254:255], v[8:9] ; encoding: [0x04,0x00,0x04,0xd1,0xfe,0x11,0x02,0x00]
+v_fmac_f64_e64 v[4:5], v[254:255], v[8:9]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], flat_scratch, v[8:9] ; encoding: [0x04,0x00,0x04,0xd1,0x66,0x10,0x02,0x00]
+v_fmac_f64_e64 v[4:5], flat_scratch, v[8:9]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], vcc, v[8:9]      ; encoding: [0x04,0x00,0x04,0xd1,0x6a,0x10,0x02,0x00]
+v_fmac_f64_e64 v[4:5], vcc, v[8:9]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], exec, v[8:9]     ; encoding: [0x04,0x00,0x04,0xd1,0x7e,0x10,0x02,0x00]
+v_fmac_f64_e64 v[4:5], exec, v[8:9]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], 0, v[8:9]        ; encoding: [0x04,0x00,0x04,0xd1,0x80,0x10,0x02,0x00]
+v_fmac_f64_e64 v[4:5], 0, v[8:9]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], -1, v[8:9]       ; encoding: [0x04,0x00,0x04,0xd1,0xc1,0x10,0x02,0x00]
+v_fmac_f64_e64 v[4:5], -1, v[8:9]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], 0.5, v[8:9]      ; encoding: [0x04,0x00,0x04,0xd1,0xf0,0x10,0x02,0x00]
+v_fmac_f64_e64 v[4:5], 0.5, v[8:9]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], -4.0, v[8:9]     ; encoding: [0x04,0x00,0x04,0xd1,0xf7,0x10,0x02,0x00]
+v_fmac_f64_e64 v[4:5], -4.0, v[8:9]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], v[254:255] ; encoding: [0x04,0x00,0x04,0xd1,0x02,0xfd,0x03,0x00]
+v_fmac_f64_e64 v[4:5], v[2:3], v[254:255]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], flat_scratch ; encoding: [0x04,0x00,0x04,0xd1,0x02,0xcd,0x00,0x00]
+v_fmac_f64_e64 v[4:5], v[2:3], flat_scratch
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], vcc      ; encoding: [0x04,0x00,0x04,0xd1,0x02,0xd5,0x00,0x00]
+v_fmac_f64_e64 v[4:5], v[2:3], vcc
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], exec     ; encoding: [0x04,0x00,0x04,0xd1,0x02,0xfd,0x00,0x00]
+v_fmac_f64_e64 v[4:5], v[2:3], exec
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], 0        ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x01,0x01,0x00]
+v_fmac_f64_e64 v[4:5], v[2:3], 0
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], -1       ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x83,0x01,0x00]
+v_fmac_f64_e64 v[4:5], v[2:3], -1
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], 0.5      ; encoding: [0x04,0x00,0x04,0xd1,0x02,0xe1,0x01,0x00]
+v_fmac_f64_e64 v[4:5], v[2:3], 0.5
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], -4.0     ; encoding: [0x04,0x00,0x04,0xd1,0x02,0xef,0x01,0x00]
+v_fmac_f64_e64 v[4:5], v[2:3], -4.0
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], -v[2:3], v[8:9]  ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x20]
+v_fmac_f64_e64 v[4:5], -v[2:3], v[8:9]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], -v[8:9]  ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x40]
+v_fmac_f64_e64 v[4:5], v[2:3], -v[8:9]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], -v[2:3], -v[8:9] ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x60]
+v_fmac_f64_e64 v[4:5], -v[2:3], -v[8:9]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], |v[2:3]|, v[8:9] ; encoding: [0x04,0x01,0x04,0xd1,0x02,0x11,0x02,0x00]
+v_fmac_f64_e64 v[4:5], |v[2:3]|, v[8:9]
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], |v[8:9]| ; encoding: [0x04,0x02,0x04,0xd1,0x02,0x11,0x02,0x00]
+v_fmac_f64_e64 v[4:5], v[2:3], |v[8:9]|
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], |v[2:3]|, |v[8:9]| ; encoding: [0x04,0x03,0x04,0xd1,0x02,0x11,0x02,0x00]
+v_fmac_f64_e64 v[4:5], |v[2:3]|, |v[8:9]|
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], v[8:9] clamp ; encoding: [0x04,0x80,0x04,0xd1,0x02,0x11,0x02,0x00]
+v_fmac_f64_e64 v[4:5], v[2:3], v[8:9] clamp
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], v[8:9] mul:2 ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x08]
+v_fmac_f64_e64 v[4:5], v[2:3], v[8:9] mul:2
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], v[8:9] mul:4 ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x10]
+v_fmac_f64_e64 v[4:5], v[2:3], v[8:9] mul:4
+
+// GFX10: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
+// GFX940: v_fmac_f64_e64 v[4:5], v[2:3], v[8:9] div:2 ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x18]
+v_fmac_f64_e64 v[4:5], v[2:3], v[8:9] div:2
+
 // GFX90A: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU
 // GFX940: v_fmamk_f32 v0, v2, 0x42c80000, v3      ; encoding: [0x02,0x07,0x00,0x2e,0x00,0x00,0xc8,0x42]
 v_fmamk_f32 v0, v2, 100.0, v3
index d937f81..c0516ff 100644 (file)
 # GFX940: buffer_atomic_swap v5, off, s[8:11], s3 nt ; encoding: [0x00,0x00,0x02,0xe1,0x00,0x05,0x02,0x03]
 0x00,0x00,0x02,0xe1,0x00,0x05,0x02,0x03
 
+# GFX940: v_fmac_f64_e32 v[4:5], v[2:3], v[4:5]   ; encoding: [0x02,0x09,0x08,0x08]
+0x02,0x09,0x08,0x08
+
+# GFX940: v_fmac_f64_e32 v[254:255], v[2:3], v[4:5] ; encoding: [0x02,0x09,0xfc,0x09]
+0x02,0x09,0xfc,0x09
+
+# GFX940: v_fmac_f64_e32 v[4:5], v[254:255], v[4:5] ; encoding: [0xfe,0x09,0x08,0x08]
+0xfe,0x09,0x08,0x08
+
+# GFX940: v_fmac_f64_e32 v[4:5], flat_scratch, v[4:5] ; encoding: [0x66,0x08,0x08,0x08]
+0x66,0x08,0x08,0x08
+
+# GFX940: v_fmac_f64_e32 v[4:5], vcc, v[4:5]      ; encoding: [0x6a,0x08,0x08,0x08]
+0x6a,0x08,0x08,0x08
+
+# GFX940: v_fmac_f64_e32 v[4:5], exec, v[4:5]     ; encoding: [0x7e,0x08,0x08,0x08]
+0x7e,0x08,0x08,0x08
+
+# GFX940: v_fmac_f64_e32 v[4:5], 0, v[4:5]        ; encoding: [0x80,0x08,0x08,0x08]
+0x80,0x08,0x08,0x08
+
+# GFX940: v_fmac_f64_e32 v[4:5], -1, v[4:5]       ; encoding: [0xc1,0x08,0x08,0x08]
+0xc1,0x08,0x08,0x08
+
+# GFX940: v_fmac_f64_e32 v[4:5], 0.5, v[4:5]      ; encoding: [0xf0,0x08,0x08,0x08]
+0xf0,0x08,0x08,0x08
+
+# GFX940: v_fmac_f64_e32 v[4:5], -4.0, v[4:5]     ; encoding: [0xf7,0x08,0x08,0x08]
+0xf7,0x08,0x08,0x08
+
+# GFX940: v_fmac_f64_e32 v[4:5], 0xaf123456, v[4:5] ; encoding: [0xff,0x08,0x08,0x08,0x56,0x34,0x12,0xaf]
+0xff,0x08,0x08,0x08,0x56,0x34,0x12,0xaf
+
+# GFX940: v_fmac_f64_e32 v[4:5], 0x3f717273, v[4:5] ; encoding: [0xff,0x08,0x08,0x08,0x73,0x72,0x71,0x3f]
+0xff,0x08,0x08,0x08,0x73,0x72,0x71,0x3f
+
+# GFX940: v_fmac_f64_e32 v[4:5], v[2:3], v[254:255] ; encoding: [0x02,0xfd,0x09,0x08]
+0x02,0xfd,0x09,0x08
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], v[8:9]   ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x00]
+0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x00
+
+# GFX940: v_fmac_f64_e64 v[254:255], v[2:3], v[8:9] ; encoding: [0xfe,0x00,0x04,0xd1,0x02,0x11,0x02,0x00]
+0xfe,0x00,0x04,0xd1,0x02,0x11,0x02,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[254:255], v[8:9] ; encoding: [0x04,0x00,0x04,0xd1,0xfe,0x11,0x02,0x00]
+0x04,0x00,0x04,0xd1,0xfe,0x11,0x02,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], flat_scratch, v[8:9] ; encoding: [0x04,0x00,0x04,0xd1,0x66,0x10,0x02,0x00]
+0x04,0x00,0x04,0xd1,0x66,0x10,0x02,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], vcc, v[8:9]      ; encoding: [0x04,0x00,0x04,0xd1,0x6a,0x10,0x02,0x00]
+0x04,0x00,0x04,0xd1,0x6a,0x10,0x02,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], exec, v[8:9]     ; encoding: [0x04,0x00,0x04,0xd1,0x7e,0x10,0x02,0x00]
+0x04,0x00,0x04,0xd1,0x7e,0x10,0x02,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], 0, v[8:9]        ; encoding: [0x04,0x00,0x04,0xd1,0x80,0x10,0x02,0x00]
+0x04,0x00,0x04,0xd1,0x80,0x10,0x02,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], -1, v[8:9]       ; encoding: [0x04,0x00,0x04,0xd1,0xc1,0x10,0x02,0x00]
+0x04,0x00,0x04,0xd1,0xc1,0x10,0x02,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], 0.5, v[8:9]      ; encoding: [0x04,0x00,0x04,0xd1,0xf0,0x10,0x02,0x00]
+0x04,0x00,0x04,0xd1,0xf0,0x10,0x02,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], -4.0, v[8:9]     ; encoding: [0x04,0x00,0x04,0xd1,0xf7,0x10,0x02,0x00]
+0x04,0x00,0x04,0xd1,0xf7,0x10,0x02,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], v[254:255] ; encoding: [0x04,0x00,0x04,0xd1,0x02,0xfd,0x03,0x00]
+0x04,0x00,0x04,0xd1,0x02,0xfd,0x03,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], flat_scratch ; encoding: [0x04,0x00,0x04,0xd1,0x02,0xcd,0x00,0x00]
+0x04,0x00,0x04,0xd1,0x02,0xcd,0x00,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], vcc      ; encoding: [0x04,0x00,0x04,0xd1,0x02,0xd5,0x00,0x00]
+0x04,0x00,0x04,0xd1,0x02,0xd5,0x00,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], exec     ; encoding: [0x04,0x00,0x04,0xd1,0x02,0xfd,0x00,0x00]
+0x04,0x00,0x04,0xd1,0x02,0xfd,0x00,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], 0        ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x01,0x01,0x00]
+0x04,0x00,0x04,0xd1,0x02,0x01,0x01,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], -1       ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x83,0x01,0x00]
+0x04,0x00,0x04,0xd1,0x02,0x83,0x01,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], 0.5      ; encoding: [0x04,0x00,0x04,0xd1,0x02,0xe1,0x01,0x00]
+0x04,0x00,0x04,0xd1,0x02,0xe1,0x01,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], -4.0     ; encoding: [0x04,0x00,0x04,0xd1,0x02,0xef,0x01,0x00]
+0x04,0x00,0x04,0xd1,0x02,0xef,0x01,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], -v[2:3], v[8:9]  ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x20]
+0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x20
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], -v[8:9]  ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x40]
+0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x40
+
+# GFX940: v_fmac_f64_e64 v[4:5], -v[2:3], -v[8:9] ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x60]
+0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x60
+
+# GFX940: v_fmac_f64_e64 v[4:5], |v[2:3]|, v[8:9] ; encoding: [0x04,0x01,0x04,0xd1,0x02,0x11,0x02,0x00]
+0x04,0x01,0x04,0xd1,0x02,0x11,0x02,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], |v[8:9]| ; encoding: [0x04,0x02,0x04,0xd1,0x02,0x11,0x02,0x00]
+0x04,0x02,0x04,0xd1,0x02,0x11,0x02,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], |v[2:3]|, |v[8:9]| ; encoding: [0x04,0x03,0x04,0xd1,0x02,0x11,0x02,0x00]
+0x04,0x03,0x04,0xd1,0x02,0x11,0x02,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], v[8:9] clamp ; encoding: [0x04,0x80,0x04,0xd1,0x02,0x11,0x02,0x00]
+0x04,0x80,0x04,0xd1,0x02,0x11,0x02,0x00
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], v[8:9] mul:2 ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x08]
+0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x08
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], v[8:9] mul:4 ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x10]
+0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x10
+
+# GFX940: v_fmac_f64_e64 v[4:5], v[2:3], v[8:9] div:2 ; encoding: [0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x18]
+0x04,0x00,0x04,0xd1,0x02,0x11,0x02,0x18
+
 # GFX940: v_fmamk_f32 v0, v2, 0x42c80000, v3      ; encoding: [0x02,0x07,0x00,0x2e,0x00,0x00,0xc8,0x42]
 0x02,0x07,0x00,0x2e,0x00,0x00,0xc8,0x42