[llvm] 8586cd5 - [AMDGPU] Test disassembling of some basic True16 VOP2 instructions.

Ivan Kosarev via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 25 11:53:16 PDT 2023


Author: Ivan Kosarev
Date: 2023-09-25T19:53:09+01:00
New Revision: 8586cd5ad8a7fa4f84b5913cbeaf634d68500095

URL: https://github.com/llvm/llvm-project/commit/8586cd5ad8a7fa4f84b5913cbeaf634d68500095
DIFF: https://github.com/llvm/llvm-project/commit/8586cd5ad8a7fa4f84b5913cbeaf634d68500095.diff

LOG: [AMDGPU] Test disassembling of some basic True16 VOP2 instructions.

Reviewed By: Joe_Nash

Differential Revision: https://reviews.llvm.org/D156782

Added: 
    

Modified: 
    llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt

Removed: 
    


################################################################################
diff  --git a/llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt
index 146db5a923a2506..ebffd55347bfef8 100644
--- a/llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt
+++ b/llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt
@@ -1,4 +1,5 @@
-# RUN: llvm-mc -triple=amdgcn -mcpu=gfx1100 -disassemble -show-encoding < %s | FileCheck -check-prefixes=GFX11,W32 %s
+# RUN: llvm-mc -triple=amdgcn -mcpu=gfx1100 -mattr=-real-true16 -disassemble -show-encoding < %s | FileCheck -check-prefixes=GFX11,W32,GFX11-FAKE16 %s
+# RUN: llvm-mc -triple=amdgcn -mcpu=gfx1100 -mattr=+real-true16 -disassemble -show-encoding < %s | FileCheck -check-prefixes=GFX11,W32,GFX11-REAL16 %s
 # RUN: llvm-mc -triple=amdgcn -mcpu=gfx1100 -mattr=-WavefrontSize32,+WavefrontSize64 -disassemble -show-encoding < %s | FileCheck -check-prefixes=GFX11,W64 %s
 
 # W32: v_add_co_ci_u32_e32 v5, vcc_lo, v1, v2, vcc_lo ; encoding: [0x01,0x05,0x0a,0x40]
@@ -61,49 +62,64 @@
 # W64: v_add_co_ci_u32_e32 v255, vcc, 0xaf123456, v255, vcc ; encoding: [0xff,0xfe,0xff,0x41,0x56,0x34,0x12,0xaf]
 0xff,0xfe,0xff,0x41,0x56,0x34,0x12,0xaf
 
-# GFX11: v_add_f16_e32 v5, v1, v2                ; encoding: [0x01,0x05,0x0a,0x64]
+# GFX11-REAL16: v_add_f16_e32 v5.l, v1.l, v2.l   ; encoding: [0x01,0x05,0x0a,0x64]
+# GFX11-FAKE16: v_add_f16_e32 v5, v1, v2         ; encoding: [0x01,0x05,0x0a,0x64]
 0x01,0x05,0x0a,0x64
 
-# GFX11: v_add_f16_e32 v5, v127, v2              ; encoding: [0x7f,0x05,0x0a,0x64]
+# GFX11-REAL16: v_add_f16_e32 v5.l, v127.l, v2.l ; encoding: [0x7f,0x05,0x0a,0x64]
+# GFX11-FAKE16: v_add_f16_e32 v5, v127, v2       ; encoding: [0x7f,0x05,0x0a,0x64]
 0x7f,0x05,0x0a,0x64
 
-# GFX11: v_add_f16_e32 v5, s1, v2                ; encoding: [0x01,0x04,0x0a,0x64]
+# GFX11-REAL16: v_add_f16_e32 v5.l, s1, v2.l     ; encoding: [0x01,0x04,0x0a,0x64]
+# GFX11-FAKE16: v_add_f16_e32 v5, s1, v2         ; encoding: [0x01,0x04,0x0a,0x64]
 0x01,0x04,0x0a,0x64
 
-# GFX11: v_add_f16_e32 v5, s105, v2              ; encoding: [0x69,0x04,0x0a,0x64]
+# GFX11-REAL16: v_add_f16_e32 v5.l, s105, v2.l   ; encoding: [0x69,0x04,0x0a,0x64]
+# GFX11-FAKE16: v_add_f16_e32 v5, s105, v2       ; encoding: [0x69,0x04,0x0a,0x64]
 0x69,0x04,0x0a,0x64
 
-# GFX11: v_add_f16_e32 v5, vcc_lo, v2            ; encoding: [0x6a,0x04,0x0a,0x64]
+# GFX11-REAL16: v_add_f16_e32 v5.l, vcc_lo, v2.l ; encoding: [0x6a,0x04,0x0a,0x64]
+# GFX11-FAKE16: v_add_f16_e32 v5, vcc_lo, v2     ; encoding: [0x6a,0x04,0x0a,0x64]
 0x6a,0x04,0x0a,0x64
 
-# GFX11: v_add_f16_e32 v5, vcc_hi, v2            ; encoding: [0x6b,0x04,0x0a,0x64]
+# GFX11-REAL16: v_add_f16_e32 v5.l, vcc_hi, v2.l ; encoding: [0x6b,0x04,0x0a,0x64]
+# GFX11-FAKE16: v_add_f16_e32 v5, vcc_hi, v2     ; encoding: [0x6b,0x04,0x0a,0x64]
 0x6b,0x04,0x0a,0x64
 
-# GFX11: v_add_f16_e32 v5, ttmp15, v2            ; encoding: [0x7b,0x04,0x0a,0x64]
+# GFX11-REAL16: v_add_f16_e32 v5.l, ttmp15, v2.l ; encoding: [0x7b,0x04,0x0a,0x64]
+# GFX11-FAKE16: v_add_f16_e32 v5, ttmp15, v2     ; encoding: [0x7b,0x04,0x0a,0x64]
 0x7b,0x04,0x0a,0x64
 
-# GFX11: v_add_f16_e32 v5, m0, v2                ; encoding: [0x7d,0x04,0x0a,0x64]
+# GFX11-REAL16: v_add_f16_e32 v5.l, m0, v2.l     ; encoding: [0x7d,0x04,0x0a,0x64]
+# GFX11-FAKE16: v_add_f16_e32 v5, m0, v2         ; encoding: [0x7d,0x04,0x0a,0x64]
 0x7d,0x04,0x0a,0x64
 
-# GFX11: v_add_f16_e32 v5, exec_lo, v2           ; encoding: [0x7e,0x04,0x0a,0x64]
+# GFX11-REAL16: v_add_f16_e32 v5.l, exec_lo, v2.l ; encoding: [0x7e,0x04,0x0a,0x64]
+# GFX11-FAKE16: v_add_f16_e32 v5, exec_lo, v2    ; encoding: [0x7e,0x04,0x0a,0x64]
 0x7e,0x04,0x0a,0x64
 
-# GFX11: v_add_f16_e32 v5, exec_hi, v2           ; encoding: [0x7f,0x04,0x0a,0x64]
+# GFX11-REAL16: v_add_f16_e32 v5.l, exec_hi, v2.l ; encoding: [0x7f,0x04,0x0a,0x64]
+# GFX11-FAKE16: v_add_f16_e32 v5, exec_hi, v2    ; encoding: [0x7f,0x04,0x0a,0x64]
 0x7f,0x04,0x0a,0x64
 
-# GFX11: v_add_f16_e32 v5, null, v2              ; encoding: [0x7c,0x04,0x0a,0x64]
+# GFX11-REAL16: v_add_f16_e32 v5.l, null, v2.l   ; encoding: [0x7c,0x04,0x0a,0x64]
+# GFX11-FAKE16: v_add_f16_e32 v5, null, v2       ; encoding: [0x7c,0x04,0x0a,0x64]
 0x7c,0x04,0x0a,0x64
 
-# GFX11: v_add_f16_e32 v5, -1, v2                ; encoding: [0xc1,0x04,0x0a,0x64]
+# GFX11-REAL16: v_add_f16_e32 v5.l, -1, v2.l     ; encoding: [0xc1,0x04,0x0a,0x64]
+# GFX11-FAKE16: v_add_f16_e32 v5, -1, v2         ; encoding: [0xc1,0x04,0x0a,0x64]
 0xc1,0x04,0x0a,0x64
 
-# GFX11: v_add_f16_e32 v5, 0.5, v2               ; encoding: [0xf0,0x04,0x0a,0x64]
+# GFX11-REAL16: v_add_f16_e32 v5.l, 0.5, v2.l    ; encoding: [0xf0,0x04,0x0a,0x64]
+# GFX11-FAKE16: v_add_f16_e32 v5, 0.5, v2        ; encoding: [0xf0,0x04,0x0a,0x64]
 0xf0,0x04,0x0a,0x64
 
-# GFX11: v_add_f16_e32 v5, src_scc, v2           ; encoding: [0xfd,0x04,0x0a,0x64]
+# GFX11-REAL16: v_add_f16_e32 v5.l, src_scc, v2.l ; encoding: [0xfd,0x04,0x0a,0x64]
+# GFX11-FAKE16: v_add_f16_e32 v5, src_scc, v2    ; encoding: [0xfd,0x04,0x0a,0x64]
 0xfd,0x04,0x0a,0x64
 
-# GFX11: v_add_f16_e32 v127, 0xfe0b, v127        ; encoding: [0xff,0xfe,0xfe,0x64,0x0b,0xfe,0x00,0x00]
+# GFX11-REAL16: v_add_f16_e32 v127.l, 0xfe0b, v127.l ; encoding: [0xff,0xfe,0xfe,0x64,0x0b,0xfe,0x00,0x00]
+# GFX11-FAKE16: v_add_f16_e32 v127, 0xfe0b, v127 ; encoding: [0xff,0xfe,0xfe,0x64,0x0b,0xfe,0x00,0x00]
 0xff,0xfe,0xfe,0x64,0x0b,0xfe,0x00,0x00
 
 # GFX11: v_add_f32_e32 v5, v1, v2                ; encoding: [0x01,0x05,0x0a,0x06]
@@ -886,49 +902,64 @@
 # GFX11: v_lshrrev_b32_e32 v255, 0xaf123456, v255 ; encoding: [0xff,0xfe,0xff,0x33,0x56,0x34,0x12,0xaf]
 0xff,0xfe,0xff,0x33,0x56,0x34,0x12,0xaf
 
-# GFX11: v_max_f16_e32 v5, v1, v2                ; encoding: [0x01,0x05,0x0a,0x72]
+# GFX11-REAL16: v_max_f16_e32 v5.l, v1.l, v2.l   ; encoding: [0x01,0x05,0x0a,0x72]
+# GFX11-FAKE16: v_max_f16_e32 v5, v1, v2         ; encoding: [0x01,0x05,0x0a,0x72]
 0x01,0x05,0x0a,0x72
 
-# GFX11: v_max_f16_e32 v5, v127, v2              ; encoding: [0x7f,0x05,0x0a,0x72]
+# GFX11-REAL16: v_max_f16_e32 v5.l, v127.l, v2.l ; encoding: [0x7f,0x05,0x0a,0x72]
+# GFX11-FAKE16: v_max_f16_e32 v5, v127, v2       ; encoding: [0x7f,0x05,0x0a,0x72]
 0x7f,0x05,0x0a,0x72
 
-# GFX11: v_max_f16_e32 v5, s1, v2                ; encoding: [0x01,0x04,0x0a,0x72]
+# GFX11-REAL16: v_max_f16_e32 v5.l, s1, v2.l     ; encoding: [0x01,0x04,0x0a,0x72]
+# GFX11-FAKE16: v_max_f16_e32 v5, s1, v2         ; encoding: [0x01,0x04,0x0a,0x72]
 0x01,0x04,0x0a,0x72
 
-# GFX11: v_max_f16_e32 v5, s105, v2              ; encoding: [0x69,0x04,0x0a,0x72]
+# GFX11-REAL16: v_max_f16_e32 v5.l, s105, v2.l   ; encoding: [0x69,0x04,0x0a,0x72]
+# GFX11-FAKE16: v_max_f16_e32 v5, s105, v2       ; encoding: [0x69,0x04,0x0a,0x72]
 0x69,0x04,0x0a,0x72
 
-# GFX11: v_max_f16_e32 v5, vcc_lo, v2            ; encoding: [0x6a,0x04,0x0a,0x72]
+# GFX11-REAL16: v_max_f16_e32 v5.l, vcc_lo, v2.l ; encoding: [0x6a,0x04,0x0a,0x72]
+# GFX11-FAKE16: v_max_f16_e32 v5, vcc_lo, v2     ; encoding: [0x6a,0x04,0x0a,0x72]
 0x6a,0x04,0x0a,0x72
 
-# GFX11: v_max_f16_e32 v5, vcc_hi, v2            ; encoding: [0x6b,0x04,0x0a,0x72]
+# GFX11-REAL16: v_max_f16_e32 v5.l, vcc_hi, v2.l ; encoding: [0x6b,0x04,0x0a,0x72]
+# GFX11-FAKE16: v_max_f16_e32 v5, vcc_hi, v2     ; encoding: [0x6b,0x04,0x0a,0x72]
 0x6b,0x04,0x0a,0x72
 
-# GFX11: v_max_f16_e32 v5, ttmp15, v2            ; encoding: [0x7b,0x04,0x0a,0x72]
+# GFX11-REAL16: v_max_f16_e32 v5.l, ttmp15, v2.l ; encoding: [0x7b,0x04,0x0a,0x72]
+# GFX11-FAKE16: v_max_f16_e32 v5, ttmp15, v2     ; encoding: [0x7b,0x04,0x0a,0x72]
 0x7b,0x04,0x0a,0x72
 
-# GFX11: v_max_f16_e32 v5, m0, v2                ; encoding: [0x7d,0x04,0x0a,0x72]
+# GFX11-REAL16: v_max_f16_e32 v5.l, m0, v2.l     ; encoding: [0x7d,0x04,0x0a,0x72]
+# GFX11-FAKE16: v_max_f16_e32 v5, m0, v2         ; encoding: [0x7d,0x04,0x0a,0x72]
 0x7d,0x04,0x0a,0x72
 
-# GFX11: v_max_f16_e32 v5, exec_lo, v2           ; encoding: [0x7e,0x04,0x0a,0x72]
+# GFX11-REAL16: v_max_f16_e32 v5.l, exec_lo, v2.l ; encoding: [0x7e,0x04,0x0a,0x72]
+# GFX11-FAKE16: v_max_f16_e32 v5, exec_lo, v2    ; encoding: [0x7e,0x04,0x0a,0x72]
 0x7e,0x04,0x0a,0x72
 
-# GFX11: v_max_f16_e32 v5, exec_hi, v2           ; encoding: [0x7f,0x04,0x0a,0x72]
+# GFX11-REAL16: v_max_f16_e32 v5.l, exec_hi, v2.l ; encoding: [0x7f,0x04,0x0a,0x72]
+# GFX11-FAKE16: v_max_f16_e32 v5, exec_hi, v2    ; encoding: [0x7f,0x04,0x0a,0x72]
 0x7f,0x04,0x0a,0x72
 
-# GFX11: v_max_f16_e32 v5, null, v2              ; encoding: [0x7c,0x04,0x0a,0x72]
+# GFX11-REAL16: v_max_f16_e32 v5.l, null, v2.l   ; encoding: [0x7c,0x04,0x0a,0x72]
+# GFX11-FAKE16: v_max_f16_e32 v5, null, v2       ; encoding: [0x7c,0x04,0x0a,0x72]
 0x7c,0x04,0x0a,0x72
 
-# GFX11: v_max_f16_e32 v5, -1, v2                ; encoding: [0xc1,0x04,0x0a,0x72]
+# GFX11-REAL16: v_max_f16_e32 v5.l, -1, v2.l     ; encoding: [0xc1,0x04,0x0a,0x72]
+# GFX11-FAKE16: v_max_f16_e32 v5, -1, v2         ; encoding: [0xc1,0x04,0x0a,0x72]
 0xc1,0x04,0x0a,0x72
 
-# GFX11: v_max_f16_e32 v5, 0.5, v2               ; encoding: [0xf0,0x04,0x0a,0x72]
+# GFX11-REAL16: v_max_f16_e32 v5.l, 0.5, v2.l    ; encoding: [0xf0,0x04,0x0a,0x72]
+# GFX11-FAKE16: v_max_f16_e32 v5, 0.5, v2        ; encoding: [0xf0,0x04,0x0a,0x72]
 0xf0,0x04,0x0a,0x72
 
-# GFX11: v_max_f16_e32 v5, src_scc, v2           ; encoding: [0xfd,0x04,0x0a,0x72]
+# GFX11-REAL16: v_max_f16_e32 v5.l, src_scc, v2.l ; encoding: [0xfd,0x04,0x0a,0x72]
+# GFX11-FAKE16: v_max_f16_e32 v5, src_scc, v2    ; encoding: [0xfd,0x04,0x0a,0x72]
 0xfd,0x04,0x0a,0x72
 
-# GFX11: v_max_f16_e32 v127, 0xfe0b, v127        ; encoding: [0xff,0xfe,0xfe,0x72,0x0b,0xfe,0x00,0x00]
+# GFX11-REAL16: v_max_f16_e32 v127.l, 0xfe0b, v127.l ; encoding: [0xff,0xfe,0xfe,0x72,0x0b,0xfe,0x00,0x00]
+# GFX11-FAKE16: v_max_f16_e32 v127, 0xfe0b, v127 ; encoding: [0xff,0xfe,0xfe,0x72,0x0b,0xfe,0x00,0x00]
 0xff,0xfe,0xfe,0x72,0x0b,0xfe,0x00,0x00
 
 # GFX11: v_max_f32_e32 v5, v1, v2                ; encoding: [0x01,0x05,0x0a,0x20]
@@ -1066,49 +1097,64 @@
 # GFX11: v_max_u32_e32 v255, 0xaf123456, v255    ; encoding: [0xff,0xfe,0xff,0x29,0x56,0x34,0x12,0xaf]
 0xff,0xfe,0xff,0x29,0x56,0x34,0x12,0xaf
 
-# GFX11: v_min_f16_e32 v5, v1, v2                ; encoding: [0x01,0x05,0x0a,0x74]
+# GFX11-REAL16: v_min_f16_e32 v5.l, v1.l, v2.l   ; encoding: [0x01,0x05,0x0a,0x74]
+# GFX11-FAKE16: v_min_f16_e32 v5, v1, v2         ; encoding: [0x01,0x05,0x0a,0x74]
 0x01,0x05,0x0a,0x74
 
-# GFX11: v_min_f16_e32 v5, v127, v2              ; encoding: [0x7f,0x05,0x0a,0x74]
+# GFX11-REAL16: v_min_f16_e32 v5.l, v127.l, v2.l ; encoding: [0x7f,0x05,0x0a,0x74]
+# GFX11-FAKE16: v_min_f16_e32 v5, v127, v2       ; encoding: [0x7f,0x05,0x0a,0x74]
 0x7f,0x05,0x0a,0x74
 
-# GFX11: v_min_f16_e32 v5, s1, v2                ; encoding: [0x01,0x04,0x0a,0x74]
+# GFX11-REAL16: v_min_f16_e32 v5.l, s1, v2.l     ; encoding: [0x01,0x04,0x0a,0x74]
+# GFX11-FAKE16: v_min_f16_e32 v5, s1, v2         ; encoding: [0x01,0x04,0x0a,0x74]
 0x01,0x04,0x0a,0x74
 
-# GFX11: v_min_f16_e32 v5, s105, v2              ; encoding: [0x69,0x04,0x0a,0x74]
+# GFX11-REAL16: v_min_f16_e32 v5.l, s105, v2.l   ; encoding: [0x69,0x04,0x0a,0x74]
+# GFX11-FAKE16: v_min_f16_e32 v5, s105, v2       ; encoding: [0x69,0x04,0x0a,0x74]
 0x69,0x04,0x0a,0x74
 
-# GFX11: v_min_f16_e32 v5, vcc_lo, v2            ; encoding: [0x6a,0x04,0x0a,0x74]
+# GFX11-REAL16: v_min_f16_e32 v5.l, vcc_lo, v2.l ; encoding: [0x6a,0x04,0x0a,0x74]
+# GFX11-FAKE16: v_min_f16_e32 v5, vcc_lo, v2     ; encoding: [0x6a,0x04,0x0a,0x74]
 0x6a,0x04,0x0a,0x74
 
-# GFX11: v_min_f16_e32 v5, vcc_hi, v2            ; encoding: [0x6b,0x04,0x0a,0x74]
+# GFX11-REAL16: v_min_f16_e32 v5.l, vcc_hi, v2.l ; encoding: [0x6b,0x04,0x0a,0x74]
+# GFX11-FAKE16: v_min_f16_e32 v5, vcc_hi, v2     ; encoding: [0x6b,0x04,0x0a,0x74]
 0x6b,0x04,0x0a,0x74
 
-# GFX11: v_min_f16_e32 v5, ttmp15, v2            ; encoding: [0x7b,0x04,0x0a,0x74]
+# GFX11-REAL16: v_min_f16_e32 v5.l, ttmp15, v2.l ; encoding: [0x7b,0x04,0x0a,0x74]
+# GFX11-FAKE16: v_min_f16_e32 v5, ttmp15, v2     ; encoding: [0x7b,0x04,0x0a,0x74]
 0x7b,0x04,0x0a,0x74
 
-# GFX11: v_min_f16_e32 v5, m0, v2                ; encoding: [0x7d,0x04,0x0a,0x74]
+# GFX11-REAL16: v_min_f16_e32 v5.l, m0, v2.l     ; encoding: [0x7d,0x04,0x0a,0x74]
+# GFX11-FAKE16: v_min_f16_e32 v5, m0, v2         ; encoding: [0x7d,0x04,0x0a,0x74]
 0x7d,0x04,0x0a,0x74
 
-# GFX11: v_min_f16_e32 v5, exec_lo, v2           ; encoding: [0x7e,0x04,0x0a,0x74]
+# GFX11-REAL16: v_min_f16_e32 v5.l, exec_lo, v2.l ; encoding: [0x7e,0x04,0x0a,0x74]
+# GFX11-FAKE16: v_min_f16_e32 v5, exec_lo, v2    ; encoding: [0x7e,0x04,0x0a,0x74]
 0x7e,0x04,0x0a,0x74
 
-# GFX11: v_min_f16_e32 v5, exec_hi, v2           ; encoding: [0x7f,0x04,0x0a,0x74]
+# GFX11-REAL16: v_min_f16_e32 v5.l, exec_hi, v2.l ; encoding: [0x7f,0x04,0x0a,0x74]
+# GFX11-FAKE16: v_min_f16_e32 v5, exec_hi, v2    ; encoding: [0x7f,0x04,0x0a,0x74]
 0x7f,0x04,0x0a,0x74
 
-# GFX11: v_min_f16_e32 v5, null, v2              ; encoding: [0x7c,0x04,0x0a,0x74]
+# GFX11-REAL16: v_min_f16_e32 v5.l, null, v2.l   ; encoding: [0x7c,0x04,0x0a,0x74]
+# GFX11-FAKE16: v_min_f16_e32 v5, null, v2       ; encoding: [0x7c,0x04,0x0a,0x74]
 0x7c,0x04,0x0a,0x74
 
-# GFX11: v_min_f16_e32 v5, -1, v2                ; encoding: [0xc1,0x04,0x0a,0x74]
+# GFX11-REAL16: v_min_f16_e32 v5.l, -1, v2.l     ; encoding: [0xc1,0x04,0x0a,0x74]
+# GFX11-FAKE16: v_min_f16_e32 v5, -1, v2         ; encoding: [0xc1,0x04,0x0a,0x74]
 0xc1,0x04,0x0a,0x74
 
-# GFX11: v_min_f16_e32 v5, 0.5, v2               ; encoding: [0xf0,0x04,0x0a,0x74]
+# GFX11-REAL16: v_min_f16_e32 v5.l, 0.5, v2.l    ; encoding: [0xf0,0x04,0x0a,0x74]
+# GFX11-FAKE16: v_min_f16_e32 v5, 0.5, v2        ; encoding: [0xf0,0x04,0x0a,0x74]
 0xf0,0x04,0x0a,0x74
 
-# GFX11: v_min_f16_e32 v5, src_scc, v2           ; encoding: [0xfd,0x04,0x0a,0x74]
+# GFX11-REAL16: v_min_f16_e32 v5.l, src_scc, v2.l ; encoding: [0xfd,0x04,0x0a,0x74]
+# GFX11-FAKE16: v_min_f16_e32 v5, src_scc, v2    ; encoding: [0xfd,0x04,0x0a,0x74]
 0xfd,0x04,0x0a,0x74
 
-# GFX11: v_min_f16_e32 v127, 0xfe0b, v127        ; encoding: [0xff,0xfe,0xfe,0x74,0x0b,0xfe,0x00,0x00]
+# GFX11-REAL16: v_min_f16_e32 v127.l, 0xfe0b, v127.l ; encoding: [0xff,0xfe,0xfe,0x74,0x0b,0xfe,0x00,0x00]
+# GFX11-FAKE16: v_min_f16_e32 v127, 0xfe0b, v127 ; encoding: [0xff,0xfe,0xfe,0x74,0x0b,0xfe,0x00,0x00]
 0xff,0xfe,0xfe,0x74,0x0b,0xfe,0x00,0x00
 
 # GFX11: v_min_f32_e32 v5, v1, v2                ; encoding: [0x01,0x05,0x0a,0x1e]
@@ -1291,49 +1337,64 @@
 # GFX11: v_mul_dx9_zero_f32_e32 v255, 0xaf123456, v255 ; encoding: [0xff,0xfe,0xff,0x0f,0x56,0x34,0x12,0xaf]
 0xff,0xfe,0xff,0x0f,0x56,0x34,0x12,0xaf
 
-# GFX11: v_mul_f16_e32 v5, v1, v2                ; encoding: [0x01,0x05,0x0a,0x6a]
+# GFX11-REAL16: v_mul_f16_e32 v5.l, v1.l, v2.l   ; encoding: [0x01,0x05,0x0a,0x6a]
+# GFX11-FAKE16: v_mul_f16_e32 v5, v1, v2         ; encoding: [0x01,0x05,0x0a,0x6a]
 0x01,0x05,0x0a,0x6a
 
-# GFX11: v_mul_f16_e32 v5, v127, v2              ; encoding: [0x7f,0x05,0x0a,0x6a]
+# GFX11-REAL16: v_mul_f16_e32 v5.l, v127.l, v2.l ; encoding: [0x7f,0x05,0x0a,0x6a]
+# GFX11-FAKE16: v_mul_f16_e32 v5, v127, v2       ; encoding: [0x7f,0x05,0x0a,0x6a]
 0x7f,0x05,0x0a,0x6a
 
-# GFX11: v_mul_f16_e32 v5, s1, v2                ; encoding: [0x01,0x04,0x0a,0x6a]
+# GFX11-REAL16: v_mul_f16_e32 v5.l, s1, v2.l     ; encoding: [0x01,0x04,0x0a,0x6a]
+# GFX11-FAKE16: v_mul_f16_e32 v5, s1, v2         ; encoding: [0x01,0x04,0x0a,0x6a]
 0x01,0x04,0x0a,0x6a
 
-# GFX11: v_mul_f16_e32 v5, s105, v2              ; encoding: [0x69,0x04,0x0a,0x6a]
+# GFX11-REAL16: v_mul_f16_e32 v5.l, s105, v2.l   ; encoding: [0x69,0x04,0x0a,0x6a]
+# GFX11-FAKE16: v_mul_f16_e32 v5, s105, v2       ; encoding: [0x69,0x04,0x0a,0x6a]
 0x69,0x04,0x0a,0x6a
 
-# GFX11: v_mul_f16_e32 v5, vcc_lo, v2            ; encoding: [0x6a,0x04,0x0a,0x6a]
+# GFX11-REAL16: v_mul_f16_e32 v5.l, vcc_lo, v2.l ; encoding: [0x6a,0x04,0x0a,0x6a]
+# GFX11-FAKE16: v_mul_f16_e32 v5, vcc_lo, v2     ; encoding: [0x6a,0x04,0x0a,0x6a]
 0x6a,0x04,0x0a,0x6a
 
-# GFX11: v_mul_f16_e32 v5, vcc_hi, v2            ; encoding: [0x6b,0x04,0x0a,0x6a]
+# GFX11-REAL16: v_mul_f16_e32 v5.l, vcc_hi, v2.l ; encoding: [0x6b,0x04,0x0a,0x6a]
+# GFX11-FAKE16: v_mul_f16_e32 v5, vcc_hi, v2     ; encoding: [0x6b,0x04,0x0a,0x6a]
 0x6b,0x04,0x0a,0x6a
 
-# GFX11: v_mul_f16_e32 v5, ttmp15, v2            ; encoding: [0x7b,0x04,0x0a,0x6a]
+# GFX11-REAL16: v_mul_f16_e32 v5.l, ttmp15, v2.l ; encoding: [0x7b,0x04,0x0a,0x6a]
+# GFX11-FAKE16: v_mul_f16_e32 v5, ttmp15, v2     ; encoding: [0x7b,0x04,0x0a,0x6a]
 0x7b,0x04,0x0a,0x6a
 
-# GFX11: v_mul_f16_e32 v5, m0, v2                ; encoding: [0x7d,0x04,0x0a,0x6a]
+# GFX11-REAL16: v_mul_f16_e32 v5.l, m0, v2.l     ; encoding: [0x7d,0x04,0x0a,0x6a]
+# GFX11-FAKE16: v_mul_f16_e32 v5, m0, v2         ; encoding: [0x7d,0x04,0x0a,0x6a]
 0x7d,0x04,0x0a,0x6a
 
-# GFX11: v_mul_f16_e32 v5, exec_lo, v2           ; encoding: [0x7e,0x04,0x0a,0x6a]
+# GFX11-REAL16: v_mul_f16_e32 v5.l, exec_lo, v2.l ; encoding: [0x7e,0x04,0x0a,0x6a]
+# GFX11-FAKE16: v_mul_f16_e32 v5, exec_lo, v2    ; encoding: [0x7e,0x04,0x0a,0x6a]
 0x7e,0x04,0x0a,0x6a
 
-# GFX11: v_mul_f16_e32 v5, exec_hi, v2           ; encoding: [0x7f,0x04,0x0a,0x6a]
+# GFX11-REAL16: v_mul_f16_e32 v5.l, exec_hi, v2.l ; encoding: [0x7f,0x04,0x0a,0x6a]
+# GFX11-FAKE16: v_mul_f16_e32 v5, exec_hi, v2    ; encoding: [0x7f,0x04,0x0a,0x6a]
 0x7f,0x04,0x0a,0x6a
 
-# GFX11: v_mul_f16_e32 v5, null, v2              ; encoding: [0x7c,0x04,0x0a,0x6a]
+# GFX11-REAL16: v_mul_f16_e32 v5.l, null, v2.l   ; encoding: [0x7c,0x04,0x0a,0x6a]
+# GFX11-FAKE16: v_mul_f16_e32 v5, null, v2       ; encoding: [0x7c,0x04,0x0a,0x6a]
 0x7c,0x04,0x0a,0x6a
 
-# GFX11: v_mul_f16_e32 v5, -1, v2                ; encoding: [0xc1,0x04,0x0a,0x6a]
+# GFX11-REAL16: v_mul_f16_e32 v5.l, -1, v2.l     ; encoding: [0xc1,0x04,0x0a,0x6a]
+# GFX11-FAKE16: v_mul_f16_e32 v5, -1, v2         ; encoding: [0xc1,0x04,0x0a,0x6a]
 0xc1,0x04,0x0a,0x6a
 
-# GFX11: v_mul_f16_e32 v5, 0.5, v2               ; encoding: [0xf0,0x04,0x0a,0x6a]
+# GFX11-REAL16: v_mul_f16_e32 v5.l, 0.5, v2.l    ; encoding: [0xf0,0x04,0x0a,0x6a]
+# GFX11-FAKE16: v_mul_f16_e32 v5, 0.5, v2        ; encoding: [0xf0,0x04,0x0a,0x6a]
 0xf0,0x04,0x0a,0x6a
 
-# GFX11: v_mul_f16_e32 v5, src_scc, v2           ; encoding: [0xfd,0x04,0x0a,0x6a]
+# GFX11-REAL16: v_mul_f16_e32 v5.l, src_scc, v2.l ; encoding: [0xfd,0x04,0x0a,0x6a]
+# GFX11-FAKE16: v_mul_f16_e32 v5, src_scc, v2    ; encoding: [0xfd,0x04,0x0a,0x6a]
 0xfd,0x04,0x0a,0x6a
 
-# GFX11: v_mul_f16_e32 v127, 0xfe0b, v127        ; encoding: [0xff,0xfe,0xfe,0x6a,0x0b,0xfe,0x00,0x00]
+# GFX11-REAL16: v_mul_f16_e32 v127.l, 0xfe0b, v127.l ; encoding: [0xff,0xfe,0xfe,0x6a,0x0b,0xfe,0x00,0x00]
+# GFX11-FAKE16: v_mul_f16_e32 v127, 0xfe0b, v127 ; encoding: [0xff,0xfe,0xfe,0x6a,0x0b,0xfe,0x00,0x00]
 0xff,0xfe,0xfe,0x6a,0x0b,0xfe,0x00,0x00
 
 # GFX11: v_mul_f32_e32 v5, v1, v2                ; encoding: [0x01,0x05,0x0a,0x10]
@@ -1711,49 +1772,64 @@
 # W64: v_sub_co_ci_u32_e32 v255, vcc, 0xaf123456, v255, vcc ; encoding: [0xff,0xfe,0xff,0x43,0x56,0x34,0x12,0xaf]
 0xff,0xfe,0xff,0x43,0x56,0x34,0x12,0xaf
 
-# GFX11: v_sub_f16_e32 v5, v1, v2                ; encoding: [0x01,0x05,0x0a,0x66]
+# GFX11-REAL16: v_sub_f16_e32 v5.l, v1.l, v2.l   ; encoding: [0x01,0x05,0x0a,0x66]
+# GFX11-FAKE16: v_sub_f16_e32 v5, v1, v2         ; encoding: [0x01,0x05,0x0a,0x66]
 0x01,0x05,0x0a,0x66
 
-# GFX11: v_sub_f16_e32 v5, v127, v2              ; encoding: [0x7f,0x05,0x0a,0x66]
+# GFX11-REAL16: v_sub_f16_e32 v5.l, v127.l, v2.l ; encoding: [0x7f,0x05,0x0a,0x66]
+# GFX11-FAKE16: v_sub_f16_e32 v5, v127, v2       ; encoding: [0x7f,0x05,0x0a,0x66]
 0x7f,0x05,0x0a,0x66
 
-# GFX11: v_sub_f16_e32 v5, s1, v2                ; encoding: [0x01,0x04,0x0a,0x66]
+# GFX11-REAL16: v_sub_f16_e32 v5.l, s1, v2.l     ; encoding: [0x01,0x04,0x0a,0x66]
+# GFX11-FAKE16: v_sub_f16_e32 v5, s1, v2         ; encoding: [0x01,0x04,0x0a,0x66]
 0x01,0x04,0x0a,0x66
 
-# GFX11: v_sub_f16_e32 v5, s105, v2              ; encoding: [0x69,0x04,0x0a,0x66]
+# GFX11-REAL16: v_sub_f16_e32 v5.l, s105, v2.l   ; encoding: [0x69,0x04,0x0a,0x66]
+# GFX11-FAKE16: v_sub_f16_e32 v5, s105, v2       ; encoding: [0x69,0x04,0x0a,0x66]
 0x69,0x04,0x0a,0x66
 
-# GFX11: v_sub_f16_e32 v5, vcc_lo, v2            ; encoding: [0x6a,0x04,0x0a,0x66]
+# GFX11-REAL16: v_sub_f16_e32 v5.l, vcc_lo, v2.l ; encoding: [0x6a,0x04,0x0a,0x66]
+# GFX11-FAKE16: v_sub_f16_e32 v5, vcc_lo, v2     ; encoding: [0x6a,0x04,0x0a,0x66]
 0x6a,0x04,0x0a,0x66
 
-# GFX11: v_sub_f16_e32 v5, vcc_hi, v2            ; encoding: [0x6b,0x04,0x0a,0x66]
+# GFX11-REAL16: v_sub_f16_e32 v5.l, vcc_hi, v2.l ; encoding: [0x6b,0x04,0x0a,0x66]
+# GFX11-FAKE16: v_sub_f16_e32 v5, vcc_hi, v2     ; encoding: [0x6b,0x04,0x0a,0x66]
 0x6b,0x04,0x0a,0x66
 
-# GFX11: v_sub_f16_e32 v5, ttmp15, v2            ; encoding: [0x7b,0x04,0x0a,0x66]
+# GFX11-REAL16: v_sub_f16_e32 v5.l, ttmp15, v2.l ; encoding: [0x7b,0x04,0x0a,0x66]
+# GFX11-FAKE16: v_sub_f16_e32 v5, ttmp15, v2     ; encoding: [0x7b,0x04,0x0a,0x66]
 0x7b,0x04,0x0a,0x66
 
-# GFX11: v_sub_f16_e32 v5, m0, v2                ; encoding: [0x7d,0x04,0x0a,0x66]
+# GFX11-REAL16: v_sub_f16_e32 v5.l, m0, v2.l     ; encoding: [0x7d,0x04,0x0a,0x66]
+# GFX11-FAKE16: v_sub_f16_e32 v5, m0, v2         ; encoding: [0x7d,0x04,0x0a,0x66]
 0x7d,0x04,0x0a,0x66
 
-# GFX11: v_sub_f16_e32 v5, exec_lo, v2           ; encoding: [0x7e,0x04,0x0a,0x66]
+# GFX11-REAL16: v_sub_f16_e32 v5.l, exec_lo, v2.l ; encoding: [0x7e,0x04,0x0a,0x66]
+# GFX11-FAKE16: v_sub_f16_e32 v5, exec_lo, v2    ; encoding: [0x7e,0x04,0x0a,0x66]
 0x7e,0x04,0x0a,0x66
 
-# GFX11: v_sub_f16_e32 v5, exec_hi, v2           ; encoding: [0x7f,0x04,0x0a,0x66]
+# GFX11-REAL16: v_sub_f16_e32 v5.l, exec_hi, v2.l ; encoding: [0x7f,0x04,0x0a,0x66]
+# GFX11-FAKE16: v_sub_f16_e32 v5, exec_hi, v2    ; encoding: [0x7f,0x04,0x0a,0x66]
 0x7f,0x04,0x0a,0x66
 
-# GFX11: v_sub_f16_e32 v5, null, v2              ; encoding: [0x7c,0x04,0x0a,0x66]
+# GFX11-REAL16: v_sub_f16_e32 v5.l, null, v2.l   ; encoding: [0x7c,0x04,0x0a,0x66]
+# GFX11-FAKE16: v_sub_f16_e32 v5, null, v2       ; encoding: [0x7c,0x04,0x0a,0x66]
 0x7c,0x04,0x0a,0x66
 
-# GFX11: v_sub_f16_e32 v5, -1, v2                ; encoding: [0xc1,0x04,0x0a,0x66]
+# GFX11-REAL16: v_sub_f16_e32 v5.l, -1, v2.l     ; encoding: [0xc1,0x04,0x0a,0x66]
+# GFX11-FAKE16: v_sub_f16_e32 v5, -1, v2         ; encoding: [0xc1,0x04,0x0a,0x66]
 0xc1,0x04,0x0a,0x66
 
-# GFX11: v_sub_f16_e32 v5, 0.5, v2               ; encoding: [0xf0,0x04,0x0a,0x66]
+# GFX11-REAL16: v_sub_f16_e32 v5.l, 0.5, v2.l    ; encoding: [0xf0,0x04,0x0a,0x66]
+# GFX11-FAKE16: v_sub_f16_e32 v5, 0.5, v2        ; encoding: [0xf0,0x04,0x0a,0x66]
 0xf0,0x04,0x0a,0x66
 
-# GFX11: v_sub_f16_e32 v5, src_scc, v2           ; encoding: [0xfd,0x04,0x0a,0x66]
+# GFX11-REAL16: v_sub_f16_e32 v5.l, src_scc, v2.l ; encoding: [0xfd,0x04,0x0a,0x66]
+# GFX11-FAKE16: v_sub_f16_e32 v5, src_scc, v2    ; encoding: [0xfd,0x04,0x0a,0x66]
 0xfd,0x04,0x0a,0x66
 
-# GFX11: v_sub_f16_e32 v127, 0xfe0b, v127        ; encoding: [0xff,0xfe,0xfe,0x66,0x0b,0xfe,0x00,0x00]
+# GFX11-REAL16: v_sub_f16_e32 v127.l, 0xfe0b, v127.l ; encoding: [0xff,0xfe,0xfe,0x66,0x0b,0xfe,0x00,0x00]
+# GFX11-FAKE16: v_sub_f16_e32 v127, 0xfe0b, v127 ; encoding: [0xff,0xfe,0xfe,0x66,0x0b,0xfe,0x00,0x00]
 0xff,0xfe,0xfe,0x66,0x0b,0xfe,0x00,0x00
 
 # GFX11: v_sub_f32_e32 v5, v1, v2                ; encoding: [0x01,0x05,0x0a,0x08]
@@ -1906,49 +1982,64 @@
 # W64: v_subrev_co_ci_u32_e32 v255, vcc, 0xaf123456, v255, vcc ; encoding: [0xff,0xfe,0xff,0x45,0x56,0x34,0x12,0xaf]
 0xff,0xfe,0xff,0x45,0x56,0x34,0x12,0xaf
 
-# GFX11: v_subrev_f16_e32 v5, v1, v2             ; encoding: [0x01,0x05,0x0a,0x68]
+# GFX11-REAL16: v_subrev_f16_e32 v5.l, v1.l, v2.l ; encoding: [0x01,0x05,0x0a,0x68]
+# GFX11-FAKE16: v_subrev_f16_e32 v5, v1, v2      ; encoding: [0x01,0x05,0x0a,0x68]
 0x01,0x05,0x0a,0x68
 
-# GFX11: v_subrev_f16_e32 v5, v127, v2           ; encoding: [0x7f,0x05,0x0a,0x68]
+# GFX11-REAL16: v_subrev_f16_e32 v5.l, v127.l, v2.l ; encoding: [0x7f,0x05,0x0a,0x68]
+# GFX11-FAKE16: v_subrev_f16_e32 v5, v127, v2    ; encoding: [0x7f,0x05,0x0a,0x68]
 0x7f,0x05,0x0a,0x68
 
-# GFX11: v_subrev_f16_e32 v5, s1, v2             ; encoding: [0x01,0x04,0x0a,0x68]
+# GFX11-REAL16: v_subrev_f16_e32 v5.l, s1, v2.l  ; encoding: [0x01,0x04,0x0a,0x68]
+# GFX11-FAKE16: v_subrev_f16_e32 v5, s1, v2      ; encoding: [0x01,0x04,0x0a,0x68]
 0x01,0x04,0x0a,0x68
 
-# GFX11: v_subrev_f16_e32 v5, s105, v2           ; encoding: [0x69,0x04,0x0a,0x68]
+# GFX11-REAL16: v_subrev_f16_e32 v5.l, s105, v2.l ; encoding: [0x69,0x04,0x0a,0x68]
+# GFX11-FAKE16: v_subrev_f16_e32 v5, s105, v2    ; encoding: [0x69,0x04,0x0a,0x68]
 0x69,0x04,0x0a,0x68
 
-# GFX11: v_subrev_f16_e32 v5, vcc_lo, v2         ; encoding: [0x6a,0x04,0x0a,0x68]
+# GFX11-REAL16: v_subrev_f16_e32 v5.l, vcc_lo, v2.l ; encoding: [0x6a,0x04,0x0a,0x68]
+# GFX11-FAKE16: v_subrev_f16_e32 v5, vcc_lo, v2  ; encoding: [0x6a,0x04,0x0a,0x68]
 0x6a,0x04,0x0a,0x68
 
-# GFX11: v_subrev_f16_e32 v5, vcc_hi, v2         ; encoding: [0x6b,0x04,0x0a,0x68]
+# GFX11-REAL16: v_subrev_f16_e32 v5.l, vcc_hi, v2.l ; encoding: [0x6b,0x04,0x0a,0x68]
+# GFX11-FAKE16: v_subrev_f16_e32 v5, vcc_hi, v2  ; encoding: [0x6b,0x04,0x0a,0x68]
 0x6b,0x04,0x0a,0x68
 
-# GFX11: v_subrev_f16_e32 v5, ttmp15, v2         ; encoding: [0x7b,0x04,0x0a,0x68]
+# GFX11-REAL16: v_subrev_f16_e32 v5.l, ttmp15, v2.l ; encoding: [0x7b,0x04,0x0a,0x68]
+# GFX11-FAKE16: v_subrev_f16_e32 v5, ttmp15, v2  ; encoding: [0x7b,0x04,0x0a,0x68]
 0x7b,0x04,0x0a,0x68
 
-# GFX11: v_subrev_f16_e32 v5, m0, v2             ; encoding: [0x7d,0x04,0x0a,0x68]
+# GFX11-REAL16: v_subrev_f16_e32 v5.l, m0, v2.l  ; encoding: [0x7d,0x04,0x0a,0x68]
+# GFX11-FAKE16: v_subrev_f16_e32 v5, m0, v2      ; encoding: [0x7d,0x04,0x0a,0x68]
 0x7d,0x04,0x0a,0x68
 
-# GFX11: v_subrev_f16_e32 v5, exec_lo, v2        ; encoding: [0x7e,0x04,0x0a,0x68]
+# GFX11-REAL16: v_subrev_f16_e32 v5.l, exec_lo, v2.l ; encoding: [0x7e,0x04,0x0a,0x68]
+# GFX11-FAKE16: v_subrev_f16_e32 v5, exec_lo, v2 ; encoding: [0x7e,0x04,0x0a,0x68]
 0x7e,0x04,0x0a,0x68
 
-# GFX11: v_subrev_f16_e32 v5, exec_hi, v2        ; encoding: [0x7f,0x04,0x0a,0x68]
+# GFX11-REAL16: v_subrev_f16_e32 v5.l, exec_hi, v2.l ; encoding: [0x7f,0x04,0x0a,0x68]
+# GFX11-FAKE16: v_subrev_f16_e32 v5, exec_hi, v2 ; encoding: [0x7f,0x04,0x0a,0x68]
 0x7f,0x04,0x0a,0x68
 
-# GFX11: v_subrev_f16_e32 v5, null, v2           ; encoding: [0x7c,0x04,0x0a,0x68]
+# GFX11-REAL16: v_subrev_f16_e32 v5.l, null, v2.l ; encoding: [0x7c,0x04,0x0a,0x68]
+# GFX11-FAKE16: v_subrev_f16_e32 v5, null, v2    ; encoding: [0x7c,0x04,0x0a,0x68]
 0x7c,0x04,0x0a,0x68
 
-# GFX11: v_subrev_f16_e32 v5, -1, v2             ; encoding: [0xc1,0x04,0x0a,0x68]
+# GFX11-REAL16: v_subrev_f16_e32 v5.l, -1, v2.l  ; encoding: [0xc1,0x04,0x0a,0x68]
+# GFX11-FAKE16: v_subrev_f16_e32 v5, -1, v2      ; encoding: [0xc1,0x04,0x0a,0x68]
 0xc1,0x04,0x0a,0x68
 
-# GFX11: v_subrev_f16_e32 v5, 0.5, v2            ; encoding: [0xf0,0x04,0x0a,0x68]
+# GFX11-REAL16: v_subrev_f16_e32 v5.l, 0.5, v2.l ; encoding: [0xf0,0x04,0x0a,0x68]
+# GFX11-FAKE16: v_subrev_f16_e32 v5, 0.5, v2     ; encoding: [0xf0,0x04,0x0a,0x68]
 0xf0,0x04,0x0a,0x68
 
-# GFX11: v_subrev_f16_e32 v5, src_scc, v2        ; encoding: [0xfd,0x04,0x0a,0x68]
+# GFX11-REAL16: v_subrev_f16_e32 v5.l, src_scc, v2.l ; encoding: [0xfd,0x04,0x0a,0x68]
+# GFX11-FAKE16: v_subrev_f16_e32 v5, src_scc, v2 ; encoding: [0xfd,0x04,0x0a,0x68]
 0xfd,0x04,0x0a,0x68
 
-# GFX11: v_subrev_f16_e32 v127, 0xfe0b, v127     ; encoding: [0xff,0xfe,0xfe,0x68,0x0b,0xfe,0x00,0x00]
+# GFX11-REAL16: v_subrev_f16_e32 v127.l, 0xfe0b, v127.l ; encoding: [0xff,0xfe,0xfe,0x68,0x0b,0xfe,0x00,0x00]
+# GFX11-FAKE16: v_subrev_f16_e32 v127, 0xfe0b, v127 ; encoding: [0xff,0xfe,0xfe,0x68,0x0b,0xfe,0x00,0x00]
 0xff,0xfe,0xfe,0x68,0x0b,0xfe,0x00,0x00
 
 # GFX11: v_subrev_f32_e32 v5, v1, v2             ; encoding: [0x01,0x05,0x0a,0x0a]


        


More information about the llvm-commits mailing list