447 lines
10 KiB
ArmAsm
447 lines
10 KiB
ArmAsm
// RUN: llvm-mc -arch=amdgcn -mcpu=gfx1100 -mattr=+wavefrontsize32,-wavefrontsize64 -show-encoding %s | FileCheck --check-prefix=GFX11 %s
|
|
// RUN: llvm-mc -arch=amdgcn -mcpu=gfx1100 -mattr=-wavefrontsize32,+wavefrontsize64 -show-encoding %s | FileCheck --check-prefix=GFX11 %s
|
|
|
|
v_dot2c_f32_f16_e32 v5, v1, v2
|
|
// GFX11: encoding: [0x01,0x05,0x0a,0x04]
|
|
|
|
v_dot2acc_f32_f16_e32 v5, v1, v2
|
|
// GFX11: encoding: [0x01,0x05,0x0a,0x04]
|
|
|
|
v_fmaak_f32 v5, v1, v2, 0x11213141
|
|
// GFX11: encoding: [0x01,0x05,0x0a,0x5a,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmaak_f32 v255, v1, v2, 0x11213141
|
|
// GFX11: encoding: [0x01,0x05,0xfe,0x5b,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmaak_f32 v5, v255, v2, 0x11213141
|
|
// GFX11: encoding: [0xff,0x05,0x0a,0x5a,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmaak_f32 v5, 0, v2, 0x11213141
|
|
// GFX11: encoding: [0x80,0x04,0x0a,0x5a,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmaak_f32 v5, -1, v2, 0x11213141
|
|
// GFX11: encoding: [0xc1,0x04,0x0a,0x5a,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmaak_f32 v5, 0.5, v2, 0x11213141
|
|
// GFX11: encoding: [0xf0,0x04,0x0a,0x5a,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmaak_f32 v5, -4.0, v2, 0x11213141
|
|
// GFX11: encoding: [0xf7,0x04,0x0a,0x5a,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmaak_f32 v5, v1, v255, 0x11213141
|
|
// GFX11: encoding: [0x01,0xff,0x0b,0x5a,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmaak_f32 v5, v1, v2, 0xa1b1c1d1
|
|
// GFX11: encoding: [0x01,0x05,0x0a,0x5a,0xd1,0xc1,0xb1,0xa1]
|
|
|
|
v_fmaak_f16 v5, v1, v2, 0x1121
|
|
// GFX11: encoding: [0x01,0x05,0x0a,0x70,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmaak_f16 v127, v1, v2, 0x1121
|
|
// GFX11: encoding: [0x01,0x05,0xfe,0x70,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmaak_f16 v5, v127, v2, 0x1121
|
|
// GFX11: encoding: [0x7f,0x05,0x0a,0x70,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmaak_f16 v5, 0, v2, 0x1121
|
|
// GFX11: encoding: [0x80,0x04,0x0a,0x70,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmaak_f16 v5, -1, v2, 0x1121
|
|
// GFX11: encoding: [0xc1,0x04,0x0a,0x70,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmaak_f16 v5, 0.5, v2, 0x1121
|
|
// GFX11: encoding: [0xf0,0x04,0x0a,0x70,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmaak_f16 v5, -4.0, v2, 0x1121
|
|
// GFX11: encoding: [0xf7,0x04,0x0a,0x70,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmaak_f16 v5, v1, v127, 0x1121
|
|
// GFX11: encoding: [0x01,0xff,0x0a,0x70,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmaak_f16 v5, v1, v2, 0xa1b1
|
|
// GFX11: encoding: [0x01,0x05,0x0a,0x70,0xb1,0xa1,0x00,0x00]
|
|
|
|
v_fmac_dx9_zero_f32 v0, v1, v2
|
|
// GFX11: encoding: [0x01,0x05,0x00,0x0c]
|
|
|
|
v_fmac_f16 v5, 0x1234, v2
|
|
// GFX11: encoding: [0xff,0x04,0x0a,0x6c,0x34,0x12,0x00,0x00]
|
|
|
|
v_fmac_f16 v0, v1, v2
|
|
// GFX11: encoding: [0x01,0x05,0x00,0x6c]
|
|
|
|
v_fmac_f32 v0, v1, v2
|
|
// GFX11: encoding: [0x01,0x05,0x00,0x56]
|
|
|
|
v_fmamk_f32 v5, v1, 0x11213141, v3
|
|
// GFX11: encoding: [0x01,0x07,0x0a,0x58,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmamk_f32 v255, v1, 0x11213141, v3
|
|
// GFX11: encoding: [0x01,0x07,0xfe,0x59,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmamk_f32 v5, v255, 0x11213141, v3
|
|
// GFX11: encoding: [0xff,0x07,0x0a,0x58,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmamk_f32 v5, 0, 0x11213141, v3
|
|
// GFX11: encoding: [0x80,0x06,0x0a,0x58,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmamk_f32 v5, -1, 0x11213141, v3
|
|
// GFX11: encoding: [0xc1,0x06,0x0a,0x58,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmamk_f32 v5, 0.5, 0x11213141, v3
|
|
// GFX11: encoding: [0xf0,0x06,0x0a,0x58,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmamk_f32 v5, -4.0, 0x11213141, v3
|
|
// GFX11: encoding: [0xf7,0x06,0x0a,0x58,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmamk_f32 v5, v1, 0xa1b1c1d1, v3
|
|
// GFX11: encoding: [0x01,0x07,0x0a,0x58,0xd1,0xc1,0xb1,0xa1]
|
|
|
|
v_fmamk_f32 v5, v1, 0x11213141, v255
|
|
// GFX11: encoding: [0x01,0xff,0x0b,0x58,0x41,0x31,0x21,0x11]
|
|
|
|
v_fmamk_f16 v5, v1, 0x1121, v3
|
|
// GFX11: encoding: [0x01,0x07,0x0a,0x6e,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmamk_f16 v127, v1, 0x1121, v3
|
|
// GFX11: encoding: [0x01,0x07,0xfe,0x6e,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmamk_f16 v5, v127, 0x1121, v3
|
|
// GFX11: encoding: [0x7f,0x07,0x0a,0x6e,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmamk_f16 v5, 0, 0x1121, v3
|
|
// GFX11: encoding: [0x80,0x06,0x0a,0x6e,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmamk_f16 v5, -1, 0x1121, v3
|
|
// GFX11: encoding: [0xc1,0x06,0x0a,0x6e,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmamk_f16 v5, 0.5, 0x1121, v3
|
|
// GFX11: encoding: [0xf0,0x06,0x0a,0x6e,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmamk_f16 v5, -4.0, 0x1121, v3
|
|
// GFX11: encoding: [0xf7,0x06,0x0a,0x6e,0x21,0x11,0x00,0x00]
|
|
|
|
v_fmamk_f16 v5, v1, 0xa1b1, v3
|
|
// GFX11: encoding: [0x01,0x07,0x0a,0x6e,0xb1,0xa1,0x00,0x00]
|
|
|
|
v_fmamk_f16 v5, v1, 0x1121, v127
|
|
// GFX11: encoding: [0x01,0xff,0x0a,0x6e,0x21,0x11,0x00,0x00]
|
|
|
|
v_pk_fmac_f16 v5, v1, v2
|
|
// GFX11: encoding: [0x01,0x05,0x0a,0x78]
|
|
|
|
v_pk_fmac_f16 v255, v1, v2
|
|
// GFX11: encoding: [0x01,0x05,0xfe,0x79]
|
|
|
|
v_pk_fmac_f16 v5, v255, v2
|
|
// GFX11: encoding: [0xff,0x05,0x0a,0x78]
|
|
|
|
v_pk_fmac_f16 v5, s1, v2
|
|
// GFX11: encoding: [0x01,0x04,0x0a,0x78]
|
|
|
|
v_pk_fmac_f16 v5, s103, v2
|
|
// GFX11: encoding: [0x67,0x04,0x0a,0x78]
|
|
|
|
v_pk_fmac_f16 v5, vcc_lo, v2
|
|
// GFX11: encoding: [0x6a,0x04,0x0a,0x78]
|
|
|
|
v_pk_fmac_f16 v5, vcc_hi, v2
|
|
// GFX11: encoding: [0x6b,0x04,0x0a,0x78]
|
|
|
|
v_pk_fmac_f16 v5, m0, v2
|
|
// GFX11: encoding: [0x7d,0x04,0x0a,0x78]
|
|
|
|
v_pk_fmac_f16 v5, exec_lo, v2
|
|
// GFX11: encoding: [0x7e,0x04,0x0a,0x78]
|
|
|
|
v_pk_fmac_f16 v5, exec_hi, v2
|
|
// GFX11: encoding: [0x7f,0x04,0x0a,0x78]
|
|
|
|
v_pk_fmac_f16 v5, 0, v2
|
|
// GFX11: encoding: [0x80,0x04,0x0a,0x78]
|
|
|
|
v_pk_fmac_f16 v5, -1, v2
|
|
// GFX11: encoding: [0xc1,0x04,0x0a,0x78]
|
|
|
|
v_pk_fmac_f16 v5, 0.5, v2
|
|
// GFX11: encoding: [0xf0,0x04,0x0a,0x78]
|
|
|
|
v_pk_fmac_f16 v5, -4.0, v2
|
|
// GFX11: encoding: [0xf7,0x04,0x0a,0x78]
|
|
|
|
v_pk_fmac_f16 v5, v1, v255
|
|
// GFX11: encoding: [0x01,0xff,0x0b,0x78]
|
|
|
|
v_pk_fmac_f16 v5, ttmp11, v2
|
|
// GFX11: encoding: [0x77,0x04,0x0a,0x78]
|
|
|
|
v_add_f16 v5, v1, v2
|
|
// GFX11: [0x01,0x05,0x0a,0x64]
|
|
|
|
v_add_f16 v5, v127, v2
|
|
// GFX11: encoding: [0x7f,0x05,0x0a,0x64]
|
|
|
|
v_add_f16 v5, s1, v2
|
|
// GFX11: [0x01,0x04,0x0a,0x64]
|
|
|
|
v_add_f16 v5, s105, v2
|
|
// GFX11: [0x69,0x04,0x0a,0x64]
|
|
|
|
v_add_f16 v5, vcc_lo, v2
|
|
// GFX11: [0x6a,0x04,0x0a,0x64]
|
|
|
|
v_add_f16 v5, vcc_hi, v2
|
|
// GFX11: [0x6b,0x04,0x0a,0x64]
|
|
|
|
v_add_f16 v5, ttmp15, v2
|
|
// GFX11: [0x7b,0x04,0x0a,0x64]
|
|
|
|
v_add_f16 v5, m0, v2
|
|
// GFX11: [0x7d,0x04,0x0a,0x64]
|
|
|
|
v_add_f16 v5, exec_lo, v2
|
|
// GFX11: [0x7e,0x04,0x0a,0x64]
|
|
|
|
v_add_f16 v5, exec_hi, v2
|
|
// GFX11: [0x7f,0x04,0x0a,0x64]
|
|
|
|
v_add_f16 v5, null, v2
|
|
// GFX11: [0x7c,0x04,0x0a,0x64]
|
|
|
|
v_add_f16 v5, -1, v2
|
|
// GFX11: [0xc1,0x04,0x0a,0x64]
|
|
|
|
v_add_f16 v5, 0.5, v2
|
|
// GFX11: [0xf0,0x04,0x0a,0x64]
|
|
|
|
v_add_f16 v5, src_scc, v2
|
|
// GFX11: [0xfd,0x04,0x0a,0x64]
|
|
|
|
v_add_f16 v127, 0xfe0b, v127
|
|
// GFX11: encoding: [0xff,0xfe,0xfe,0x64,0x0b,0xfe,0x00,0x00]
|
|
|
|
v_ldexp_f16 v5, v1, v2
|
|
// GFX11: [0x01,0x05,0x0a,0x76]
|
|
|
|
v_ldexp_f16 v5, v127, v2
|
|
// GFX11: encoding: [0x7f,0x05,0x0a,0x76]
|
|
|
|
v_ldexp_f16 v5, s1, v2
|
|
// GFX11: [0x01,0x04,0x0a,0x76]
|
|
|
|
v_ldexp_f16 v5, s105, v2
|
|
// GFX11: [0x69,0x04,0x0a,0x76]
|
|
|
|
v_ldexp_f16 v5, vcc_lo, v2
|
|
// GFX11: [0x6a,0x04,0x0a,0x76]
|
|
|
|
v_ldexp_f16 v5, vcc_hi, v2
|
|
// GFX11: [0x6b,0x04,0x0a,0x76]
|
|
|
|
v_ldexp_f16 v5, ttmp15, v2
|
|
// GFX11: [0x7b,0x04,0x0a,0x76]
|
|
|
|
v_ldexp_f16 v5, m0, v2
|
|
// GFX11: [0x7d,0x04,0x0a,0x76]
|
|
|
|
v_ldexp_f16 v5, exec_lo, v2
|
|
// GFX11: [0x7e,0x04,0x0a,0x76]
|
|
|
|
v_ldexp_f16 v5, exec_hi, v2
|
|
// GFX11: [0x7f,0x04,0x0a,0x76]
|
|
|
|
v_ldexp_f16 v5, null, v2
|
|
// GFX11: [0x7c,0x04,0x0a,0x76]
|
|
|
|
v_ldexp_f16 v5, -1, v2
|
|
// GFX11: [0xc1,0x04,0x0a,0x76]
|
|
|
|
v_ldexp_f16 v5, 0.5, v2
|
|
// GFX11: [0xf0,0x04,0x0a,0x76]
|
|
|
|
v_ldexp_f16 v5, src_scc, v2
|
|
// GFX11: [0xfd,0x04,0x0a,0x76]
|
|
|
|
v_ldexp_f16 v127, 0xfe0b, v127
|
|
// GFX11: encoding: [0xff,0xfe,0xfe,0x76,0x0b,0xfe,0x00,0x00]
|
|
|
|
v_max_f16 v5, v1, v2
|
|
// GFX11: [0x01,0x05,0x0a,0x72]
|
|
|
|
v_max_f16 v5, v127, v2
|
|
// GFX11: encoding: [0x7f,0x05,0x0a,0x72]
|
|
|
|
v_max_f16 v5, s1, v2
|
|
// GFX11: [0x01,0x04,0x0a,0x72]
|
|
|
|
v_max_f16 v5, s105, v2
|
|
// GFX11: [0x69,0x04,0x0a,0x72]
|
|
|
|
v_max_f16 v5, vcc_lo, v2
|
|
// GFX11: [0x6a,0x04,0x0a,0x72]
|
|
|
|
v_max_f16 v5, vcc_hi, v2
|
|
// GFX11: [0x6b,0x04,0x0a,0x72]
|
|
|
|
v_max_f16 v5, ttmp15, v2
|
|
// GFX11: [0x7b,0x04,0x0a,0x72]
|
|
|
|
v_max_f16 v5, m0, v2
|
|
// GFX11: [0x7d,0x04,0x0a,0x72]
|
|
|
|
v_max_f16 v5, exec_lo, v2
|
|
// GFX11: [0x7e,0x04,0x0a,0x72]
|
|
|
|
v_max_f16 v5, exec_hi, v2
|
|
// GFX11: [0x7f,0x04,0x0a,0x72]
|
|
|
|
v_max_f16 v5, null, v2
|
|
// GFX11: [0x7c,0x04,0x0a,0x72]
|
|
|
|
v_max_f16 v5, -1, v2
|
|
// GFX11: [0xc1,0x04,0x0a,0x72]
|
|
|
|
v_max_f16 v5, 0.5, v2
|
|
// GFX11: [0xf0,0x04,0x0a,0x72]
|
|
|
|
v_max_f16 v5, src_scc, v2
|
|
// GFX11: [0xfd,0x04,0x0a,0x72]
|
|
|
|
v_max_f16 v127, 0xfe0b, v127
|
|
// GFX11: encoding: [0xff,0xfe,0xfe,0x72,0x0b,0xfe,0x00,0x00]
|
|
|
|
v_min_f16 v5, v1, v2
|
|
// GFX11: [0x01,0x05,0x0a,0x74]
|
|
|
|
v_min_f16 v5, v127, v2
|
|
// GFX11: encoding: [0x7f,0x05,0x0a,0x74]
|
|
|
|
v_min_f16 v5, s1, v2
|
|
// GFX11: [0x01,0x04,0x0a,0x74]
|
|
|
|
v_min_f16 v5, s105, v2
|
|
// GFX11: [0x69,0x04,0x0a,0x74]
|
|
|
|
v_min_f16 v5, vcc_lo, v2
|
|
// GFX11: [0x6a,0x04,0x0a,0x74]
|
|
|
|
v_min_f16 v5, vcc_hi, v2
|
|
// GFX11: [0x6b,0x04,0x0a,0x74]
|
|
|
|
v_min_f16 v5, ttmp15, v2
|
|
// GFX11: [0x7b,0x04,0x0a,0x74]
|
|
|
|
v_min_f16 v5, m0, v2
|
|
// GFX11: [0x7d,0x04,0x0a,0x74]
|
|
|
|
v_min_f16 v5, exec_lo, v2
|
|
// GFX11: [0x7e,0x04,0x0a,0x74]
|
|
|
|
v_min_f16 v5, exec_hi, v2
|
|
// GFX11: [0x7f,0x04,0x0a,0x74]
|
|
|
|
v_min_f16 v5, null, v2
|
|
// GFX11: [0x7c,0x04,0x0a,0x74]
|
|
|
|
v_min_f16 v5, -1, v2
|
|
// GFX11: [0xc1,0x04,0x0a,0x74]
|
|
|
|
v_min_f16 v5, 0.5, v2
|
|
// GFX11: [0xf0,0x04,0x0a,0x74]
|
|
|
|
v_min_f16 v5, src_scc, v2
|
|
// GFX11: [0xfd,0x04,0x0a,0x74]
|
|
|
|
v_min_f16 v127, 0xfe0b, v127
|
|
// GFX11: encoding: [0xff,0xfe,0xfe,0x74,0x0b,0xfe,0x00,0x00]
|
|
|
|
v_mul_f16 v5, v1, v2
|
|
// GFX11: [0x01,0x05,0x0a,0x6a]
|
|
|
|
v_mul_f16 v5, v127, v2
|
|
// GFX11: encoding: [0x7f,0x05,0x0a,0x6a]
|
|
|
|
v_mul_f16 v5, s1, v2
|
|
// GFX11: [0x01,0x04,0x0a,0x6a]
|
|
|
|
v_mul_f16 v5, s105, v2
|
|
// GFX11: [0x69,0x04,0x0a,0x6a]
|
|
|
|
v_mul_f16 v5, vcc_lo, v2
|
|
// GFX11: [0x6a,0x04,0x0a,0x6a]
|
|
|
|
v_mul_f16 v5, vcc_hi, v2
|
|
// GFX11: [0x6b,0x04,0x0a,0x6a]
|
|
|
|
v_mul_f16 v5, ttmp15, v2
|
|
// GFX11: [0x7b,0x04,0x0a,0x6a]
|
|
|
|
v_mul_f16 v5, m0, v2
|
|
// GFX11: [0x7d,0x04,0x0a,0x6a]
|
|
|
|
v_mul_f16 v5, exec_lo, v2
|
|
// GFX11: [0x7e,0x04,0x0a,0x6a]
|
|
|
|
v_mul_f16 v5, exec_hi, v2
|
|
// GFX11: [0x7f,0x04,0x0a,0x6a]
|
|
|
|
v_mul_f16 v5, null, v2
|
|
// GFX11: [0x7c,0x04,0x0a,0x6a]
|
|
|
|
v_mul_f16 v5, -1, v2
|
|
// GFX11: [0xc1,0x04,0x0a,0x6a]
|
|
|
|
v_mul_f16 v5, 0.5, v2
|
|
// GFX11: [0xf0,0x04,0x0a,0x6a]
|
|
|
|
v_mul_f16 v5, src_scc, v2
|
|
// GFX11: [0xfd,0x04,0x0a,0x6a]
|
|
|
|
v_mul_f16 v127, 0xfe0b, v127
|
|
// GFX11: encoding: [0xff,0xfe,0xfe,0x6a,0x0b,0xfe,0x00,0x00]
|
|
|
|
v_sub_f16 v5, v1, v2
|
|
// GFX11: [0x01,0x05,0x0a,0x66]
|
|
|
|
v_sub_f16 v5, v127, v2
|
|
// GFX11: encoding: [0x7f,0x05,0x0a,0x66]
|
|
|
|
v_sub_f16 v5, s1, v2
|
|
// GFX11: [0x01,0x04,0x0a,0x66]
|
|
|
|
v_sub_f16 v5, s105, v2
|
|
// GFX11: [0x69,0x04,0x0a,0x66]
|
|
|
|
v_sub_f16 v5, vcc_lo, v2
|
|
// GFX11: [0x6a,0x04,0x0a,0x66]
|
|
|
|
v_sub_f16 v5, vcc_hi, v2
|
|
// GFX11: [0x6b,0x04,0x0a,0x66]
|
|
|
|
v_sub_f16 v5, ttmp15, v2
|
|
// GFX11: [0x7b,0x04,0x0a,0x66]
|
|
|
|
v_sub_f16 v5, m0, v2
|
|
// GFX11: [0x7d,0x04,0x0a,0x66]
|
|
|
|
v_sub_f16 v5, exec_lo, v2
|
|
// GFX11: [0x7e,0x04,0x0a,0x66]
|
|
|
|
v_sub_f16 v5, exec_hi, v2
|
|
// GFX11: [0x7f,0x04,0x0a,0x66]
|
|
|
|
v_sub_f16 v5, null, v2
|
|
// GFX11: [0x7c,0x04,0x0a,0x66]
|
|
|
|
v_sub_f16 v5, -1, v2
|
|
// GFX11: [0xc1,0x04,0x0a,0x66]
|
|
|
|
v_sub_f16 v5, 0.5, v2
|
|
// GFX11: [0xf0,0x04,0x0a,0x66]
|
|
|
|
v_sub_f16 v5, src_scc, v2
|
|
// GFX11: [0xfd,0x04,0x0a,0x66]
|
|
|
|
v_sub_f16 v127, 0xfe0b, v127
|
|
// GFX11: encoding: [0xff,0xfe,0xfe,0x66,0x0b,0xfe,0x00,0x00]
|