# NOTE: Assertions have been autogenerated by utils/update_mc_test_checks.py UTC_ARGS: --version 6
# RUN: llvm-mc -triple=amdgpu9.42 -disassemble -show-encoding %s | FileCheck --check-prefix=GFX942 %s
# RUN: llvm-mc -triple=amdgpu9.50 -disassemble -show-encoding %s | FileCheck --check-prefix=GFX942 %s

0x00,0x00,0x3c,0xdd,0x00,0x02,0x00,0x00
# GFX942: flat_atomic_add_f64 v[0:1], v[2:3]      ; encoding: [0x00,0x00,0x3c,0xdd,0x00,0x02,0x00,0x00]
0x00,0x00,0x3c,0xdf,0x00,0x02,0x00,0x00
# GFX942: flat_atomic_add_f64 v[0:1], v[2:3] sc1  ; encoding: [0x00,0x00,0x3c,0xdf,0x00,0x02,0x00,0x00]
0x00,0x00,0x3d,0xdd,0x00,0x02,0x00,0x04
# GFX942: flat_atomic_add_f64 v[4:5], v[0:1], v[2:3] sc0 ; encoding: [0x00,0x00,0x3d,0xdd,0x00,0x02,0x00,0x04]
0x00,0x00,0x3d,0xdf,0x00,0x02,0x00,0x04
# GFX942: flat_atomic_add_f64 v[4:5], v[0:1], v[2:3] sc0 sc1 ; encoding: [0x00,0x00,0x3d,0xdf,0x00,0x02,0x00,0x04]
0x00,0x00,0x3c,0xdd,0x00,0x02,0x80,0x00
# GFX942: flat_atomic_add_f64 v[0:1], a[2:3]      ; encoding: [0x00,0x00,0x3c,0xdd,0x00,0x02,0x80,0x00]
0x00,0x00,0x3c,0xdf,0x00,0x02,0x80,0x00
# GFX942: flat_atomic_add_f64 v[0:1], a[2:3] sc1  ; encoding: [0x00,0x00,0x3c,0xdf,0x00,0x02,0x80,0x00]
0x00,0x00,0x3d,0xdd,0x00,0x02,0x80,0x04
# GFX942: flat_atomic_add_f64 a[4:5], v[0:1], a[2:3] sc0 ; encoding: [0x00,0x00,0x3d,0xdd,0x00,0x02,0x80,0x04]
0x00,0x00,0x3d,0xdf,0x00,0x02,0x80,0x04
# GFX942: flat_atomic_add_f64 a[4:5], v[0:1], a[2:3] sc0 sc1 ; encoding: [0x00,0x00,0x3d,0xdf,0x00,0x02,0x80,0x04]
0x00,0x80,0x3c,0xdd,0x00,0x02,0x7f,0x00
# GFX942: global_atomic_add_f64 v[0:1], v[2:3], off ; encoding: [0x00,0x80,0x3c,0xdd,0x00,0x02,0x7f,0x00]
0x00,0x80,0x3c,0xdf,0x00,0x02,0x7f,0x00
# GFX942: global_atomic_add_f64 v[0:1], v[2:3], off sc1 ; encoding: [0x00,0x80,0x3c,0xdf,0x00,0x02,0x7f,0x00]
0x00,0x80,0x3d,0xdd,0x00,0x02,0x7f,0x04
# GFX942: global_atomic_add_f64 v[4:5], v[0:1], v[2:3], off sc0 ; encoding: [0x00,0x80,0x3d,0xdd,0x00,0x02,0x7f,0x04]
0x00,0x80,0x3d,0xdf,0x00,0x02,0x7f,0x04
# GFX942: global_atomic_add_f64 v[4:5], v[0:1], v[2:3], off sc0 sc1 ; encoding: [0x00,0x80,0x3d,0xdf,0x00,0x02,0x7f,0x04]
0x00,0x80,0x3c,0xdd,0x00,0x02,0xff,0x00
# GFX942: global_atomic_add_f64 v[0:1], a[2:3], off ; encoding: [0x00,0x80,0x3c,0xdd,0x00,0x02,0xff,0x00]
0x00,0x80,0x3c,0xdf,0x00,0x02,0xff,0x00
# GFX942: global_atomic_add_f64 v[0:1], a[2:3], off sc1 ; encoding: [0x00,0x80,0x3c,0xdf,0x00,0x02,0xff,0x00]
0x00,0x80,0x3d,0xdd,0x00,0x02,0xff,0x04
# GFX942: global_atomic_add_f64 a[4:5], v[0:1], a[2:3], off sc0 ; encoding: [0x00,0x80,0x3d,0xdd,0x00,0x02,0xff,0x04]
0x00,0x80,0x3d,0xdf,0x00,0x02,0xff,0x04
# GFX942: global_atomic_add_f64 a[4:5], v[0:1], a[2:3], off sc0 sc1 ; encoding: [0x00,0x80,0x3d,0xdf,0x00,0x02,0xff,0x04]
0x00,0x80,0x3c,0xdd,0x00,0x02,0x00,0x00
# GFX942: global_atomic_add_f64 v0, v[2:3], s[0:1] ; encoding: [0x00,0x80,0x3c,0xdd,0x00,0x02,0x00,0x00]
0x00,0x80,0x3c,0xdf,0x00,0x02,0x00,0x00
# GFX942: global_atomic_add_f64 v0, v[2:3], s[0:1] sc1 ; encoding: [0x00,0x80,0x3c,0xdf,0x00,0x02,0x00,0x00]
0x00,0x80,0x3d,0xdd,0x00,0x02,0x00,0x04
# GFX942: global_atomic_add_f64 v[4:5], v0, v[2:3], s[0:1] sc0 ; encoding: [0x00,0x80,0x3d,0xdd,0x00,0x02,0x00,0x04]
0x00,0x80,0x3d,0xdf,0x00,0x02,0x00,0x04
# GFX942: global_atomic_add_f64 v[4:5], v0, v[2:3], s[0:1] sc0 sc1 ; encoding: [0x00,0x80,0x3d,0xdf,0x00,0x02,0x00,0x04]
0x00,0x80,0x3c,0xdd,0x00,0x02,0x80,0x00
# GFX942: global_atomic_add_f64 v0, a[2:3], s[0:1] ; encoding: [0x00,0x80,0x3c,0xdd,0x00,0x02,0x80,0x00]
0x00,0x80,0x3c,0xdf,0x00,0x02,0x80,0x00
# GFX942: global_atomic_add_f64 v0, a[2:3], s[0:1] sc1 ; encoding: [0x00,0x80,0x3c,0xdf,0x00,0x02,0x80,0x00]
0x00,0x80,0x3d,0xdd,0x00,0x02,0x80,0x04
# GFX942: global_atomic_add_f64 a[4:5], v0, a[2:3], s[0:1] sc0 ; encoding: [0x00,0x80,0x3d,0xdd,0x00,0x02,0x80,0x04]
0x00,0x80,0x3d,0xdf,0x00,0x02,0x80,0x04
# GFX942: global_atomic_add_f64 a[4:5], v0, a[2:3], s[0:1] sc0 sc1 ; encoding: [0x00,0x80,0x3d,0xdf,0x00,0x02,0x80,0x04]
0x00,0x00,0x40,0xdd,0x00,0x02,0x00,0x00
# GFX942: flat_atomic_min_f64 v[0:1], v[2:3]      ; encoding: [0x00,0x00,0x40,0xdd,0x00,0x02,0x00,0x00]
0x00,0x00,0x40,0xdf,0x00,0x02,0x00,0x00
# GFX942: flat_atomic_min_f64 v[0:1], v[2:3] sc1  ; encoding: [0x00,0x00,0x40,0xdf,0x00,0x02,0x00,0x00]
0x00,0x00,0x41,0xdd,0x00,0x02,0x00,0x04
# GFX942: flat_atomic_min_f64 v[4:5], v[0:1], v[2:3] sc0 ; encoding: [0x00,0x00,0x41,0xdd,0x00,0x02,0x00,0x04]
0x00,0x00,0x41,0xdf,0x00,0x02,0x00,0x04
# GFX942: flat_atomic_min_f64 v[4:5], v[0:1], v[2:3] sc0 sc1 ; encoding: [0x00,0x00,0x41,0xdf,0x00,0x02,0x00,0x04]
0x00,0x00,0x40,0xdd,0x00,0x02,0x80,0x00
# GFX942: flat_atomic_min_f64 v[0:1], a[2:3]      ; encoding: [0x00,0x00,0x40,0xdd,0x00,0x02,0x80,0x00]
0x00,0x00,0x40,0xdf,0x00,0x02,0x80,0x00
# GFX942: flat_atomic_min_f64 v[0:1], a[2:3] sc1  ; encoding: [0x00,0x00,0x40,0xdf,0x00,0x02,0x80,0x00]
0x00,0x00,0x41,0xdd,0x00,0x02,0x80,0x04
# GFX942: flat_atomic_min_f64 a[4:5], v[0:1], a[2:3] sc0 ; encoding: [0x00,0x00,0x41,0xdd,0x00,0x02,0x80,0x04]
0x00,0x00,0x41,0xdf,0x00,0x02,0x80,0x04
# GFX942: flat_atomic_min_f64 a[4:5], v[0:1], a[2:3] sc0 sc1 ; encoding: [0x00,0x00,0x41,0xdf,0x00,0x02,0x80,0x04]
0x00,0x80,0x40,0xdd,0x00,0x02,0x7f,0x00
# GFX942: global_atomic_min_f64 v[0:1], v[2:3], off ; encoding: [0x00,0x80,0x40,0xdd,0x00,0x02,0x7f,0x00]
0x00,0x80,0x40,0xdf,0x00,0x02,0x7f,0x00
# GFX942: global_atomic_min_f64 v[0:1], v[2:3], off sc1 ; encoding: [0x00,0x80,0x40,0xdf,0x00,0x02,0x7f,0x00]
0x00,0x80,0x41,0xdd,0x00,0x02,0x7f,0x04
# GFX942: global_atomic_min_f64 v[4:5], v[0:1], v[2:3], off sc0 ; encoding: [0x00,0x80,0x41,0xdd,0x00,0x02,0x7f,0x04]
0x00,0x80,0x41,0xdf,0x00,0x02,0x7f,0x04
# GFX942: global_atomic_min_f64 v[4:5], v[0:1], v[2:3], off sc0 sc1 ; encoding: [0x00,0x80,0x41,0xdf,0x00,0x02,0x7f,0x04]
0x00,0x80,0x40,0xdd,0x00,0x02,0xff,0x00
# GFX942: global_atomic_min_f64 v[0:1], a[2:3], off ; encoding: [0x00,0x80,0x40,0xdd,0x00,0x02,0xff,0x00]
0x00,0x80,0x40,0xdf,0x00,0x02,0xff,0x00
# GFX942: global_atomic_min_f64 v[0:1], a[2:3], off sc1 ; encoding: [0x00,0x80,0x40,0xdf,0x00,0x02,0xff,0x00]
0x00,0x80,0x41,0xdd,0x00,0x02,0xff,0x04
# GFX942: global_atomic_min_f64 a[4:5], v[0:1], a[2:3], off sc0 ; encoding: [0x00,0x80,0x41,0xdd,0x00,0x02,0xff,0x04]
0x00,0x80,0x41,0xdf,0x00,0x02,0xff,0x04
# GFX942: global_atomic_min_f64 a[4:5], v[0:1], a[2:3], off sc0 sc1 ; encoding: [0x00,0x80,0x41,0xdf,0x00,0x02,0xff,0x04]
0x00,0x80,0x40,0xdd,0x00,0x02,0x00,0x00
# GFX942: global_atomic_min_f64 v0, v[2:3], s[0:1] ; encoding: [0x00,0x80,0x40,0xdd,0x00,0x02,0x00,0x00]
0x00,0x80,0x40,0xdf,0x00,0x02,0x00,0x00
# GFX942: global_atomic_min_f64 v0, v[2:3], s[0:1] sc1 ; encoding: [0x00,0x80,0x40,0xdf,0x00,0x02,0x00,0x00]
0x00,0x80,0x41,0xdd,0x00,0x02,0x00,0x04
# GFX942: global_atomic_min_f64 v[4:5], v0, v[2:3], s[0:1] sc0 ; encoding: [0x00,0x80,0x41,0xdd,0x00,0x02,0x00,0x04]
0x00,0x80,0x41,0xdf,0x00,0x02,0x00,0x04
# GFX942: global_atomic_min_f64 v[4:5], v0, v[2:3], s[0:1] sc0 sc1 ; encoding: [0x00,0x80,0x41,0xdf,0x00,0x02,0x00,0x04]
0x00,0x80,0x40,0xdd,0x00,0x02,0x80,0x00
# GFX942: global_atomic_min_f64 v0, a[2:3], s[0:1] ; encoding: [0x00,0x80,0x40,0xdd,0x00,0x02,0x80,0x00]
0x00,0x80,0x40,0xdf,0x00,0x02,0x80,0x00
# GFX942: global_atomic_min_f64 v0, a[2:3], s[0:1] sc1 ; encoding: [0x00,0x80,0x40,0xdf,0x00,0x02,0x80,0x00]
0x00,0x80,0x41,0xdd,0x00,0x02,0x80,0x04
# GFX942: global_atomic_min_f64 a[4:5], v0, a[2:3], s[0:1] sc0 ; encoding: [0x00,0x80,0x41,0xdd,0x00,0x02,0x80,0x04]
0x00,0x80,0x41,0xdf,0x00,0x02,0x80,0x04
# GFX942: global_atomic_min_f64 a[4:5], v0, a[2:3], s[0:1] sc0 sc1 ; encoding: [0x00,0x80,0x41,0xdf,0x00,0x02,0x80,0x04]
0x00,0x00,0x44,0xdd,0x00,0x02,0x00,0x00
# GFX942: flat_atomic_max_f64 v[0:1], v[2:3]      ; encoding: [0x00,0x00,0x44,0xdd,0x00,0x02,0x00,0x00]
0x00,0x00,0x44,0xdf,0x00,0x02,0x00,0x00
# GFX942: flat_atomic_max_f64 v[0:1], v[2:3] sc1  ; encoding: [0x00,0x00,0x44,0xdf,0x00,0x02,0x00,0x00]
0x00,0x00,0x45,0xdd,0x00,0x02,0x00,0x04
# GFX942: flat_atomic_max_f64 v[4:5], v[0:1], v[2:3] sc0 ; encoding: [0x00,0x00,0x45,0xdd,0x00,0x02,0x00,0x04]
0x00,0x00,0x45,0xdf,0x00,0x02,0x00,0x04
# GFX942: flat_atomic_max_f64 v[4:5], v[0:1], v[2:3] sc0 sc1 ; encoding: [0x00,0x00,0x45,0xdf,0x00,0x02,0x00,0x04]
0x00,0x00,0x44,0xdd,0x00,0x02,0x80,0x00
# GFX942: flat_atomic_max_f64 v[0:1], a[2:3]      ; encoding: [0x00,0x00,0x44,0xdd,0x00,0x02,0x80,0x00]
0x00,0x00,0x44,0xdf,0x00,0x02,0x80,0x00
# GFX942: flat_atomic_max_f64 v[0:1], a[2:3] sc1  ; encoding: [0x00,0x00,0x44,0xdf,0x00,0x02,0x80,0x00]
0x00,0x00,0x45,0xdd,0x00,0x02,0x80,0x04
# GFX942: flat_atomic_max_f64 a[4:5], v[0:1], a[2:3] sc0 ; encoding: [0x00,0x00,0x45,0xdd,0x00,0x02,0x80,0x04]
0x00,0x00,0x45,0xdf,0x00,0x02,0x80,0x04
# GFX942: flat_atomic_max_f64 a[4:5], v[0:1], a[2:3] sc0 sc1 ; encoding: [0x00,0x00,0x45,0xdf,0x00,0x02,0x80,0x04]
0x00,0x80,0x44,0xdd,0x00,0x02,0x7f,0x00
# GFX942: global_atomic_max_f64 v[0:1], v[2:3], off ; encoding: [0x00,0x80,0x44,0xdd,0x00,0x02,0x7f,0x00]
0x00,0x80,0x44,0xdf,0x00,0x02,0x7f,0x00
# GFX942: global_atomic_max_f64 v[0:1], v[2:3], off sc1 ; encoding: [0x00,0x80,0x44,0xdf,0x00,0x02,0x7f,0x00]
0x00,0x80,0x45,0xdd,0x00,0x02,0x7f,0x04
# GFX942: global_atomic_max_f64 v[4:5], v[0:1], v[2:3], off sc0 ; encoding: [0x00,0x80,0x45,0xdd,0x00,0x02,0x7f,0x04]
0x00,0x80,0x45,0xdf,0x00,0x02,0x7f,0x04
# GFX942: global_atomic_max_f64 v[4:5], v[0:1], v[2:3], off sc0 sc1 ; encoding: [0x00,0x80,0x45,0xdf,0x00,0x02,0x7f,0x04]
0x00,0x80,0x44,0xdd,0x00,0x02,0xff,0x00
# GFX942: global_atomic_max_f64 v[0:1], a[2:3], off ; encoding: [0x00,0x80,0x44,0xdd,0x00,0x02,0xff,0x00]
0x00,0x80,0x44,0xdf,0x00,0x02,0xff,0x00
# GFX942: global_atomic_max_f64 v[0:1], a[2:3], off sc1 ; encoding: [0x00,0x80,0x44,0xdf,0x00,0x02,0xff,0x00]
0x00,0x80,0x45,0xdd,0x00,0x02,0xff,0x04
# GFX942: global_atomic_max_f64 a[4:5], v[0:1], a[2:3], off sc0 ; encoding: [0x00,0x80,0x45,0xdd,0x00,0x02,0xff,0x04]
0x00,0x80,0x45,0xdf,0x00,0x02,0xff,0x04
# GFX942: global_atomic_max_f64 a[4:5], v[0:1], a[2:3], off sc0 sc1 ; encoding: [0x00,0x80,0x45,0xdf,0x00,0x02,0xff,0x04]
0x00,0x80,0x44,0xdd,0x00,0x02,0x00,0x00
# GFX942: global_atomic_max_f64 v0, v[2:3], s[0:1] ; encoding: [0x00,0x80,0x44,0xdd,0x00,0x02,0x00,0x00]
0x00,0x80,0x44,0xdf,0x00,0x02,0x00,0x00
# GFX942: global_atomic_max_f64 v0, v[2:3], s[0:1] sc1 ; encoding: [0x00,0x80,0x44,0xdf,0x00,0x02,0x00,0x00]
0x00,0x80,0x45,0xdd,0x00,0x02,0x00,0x04
# GFX942: global_atomic_max_f64 v[4:5], v0, v[2:3], s[0:1] sc0 ; encoding: [0x00,0x80,0x45,0xdd,0x00,0x02,0x00,0x04]
0x00,0x80,0x45,0xdf,0x00,0x02,0x00,0x04
# GFX942: global_atomic_max_f64 v[4:5], v0, v[2:3], s[0:1] sc0 sc1 ; encoding: [0x00,0x80,0x45,0xdf,0x00,0x02,0x00,0x04]
0x00,0x80,0x44,0xdd,0x00,0x02,0x80,0x00
# GFX942: global_atomic_max_f64 v0, a[2:3], s[0:1] ; encoding: [0x00,0x80,0x44,0xdd,0x00,0x02,0x80,0x00]
0x00,0x80,0x44,0xdf,0x00,0x02,0x80,0x00
# GFX942: global_atomic_max_f64 v0, a[2:3], s[0:1] sc1 ; encoding: [0x00,0x80,0x44,0xdf,0x00,0x02,0x80,0x00]
0x00,0x80,0x45,0xdd,0x00,0x02,0x80,0x04
# GFX942: global_atomic_max_f64 a[4:5], v0, a[2:3], s[0:1] sc0 ; encoding: [0x00,0x80,0x45,0xdd,0x00,0x02,0x80,0x04]
0x00,0x80,0x45,0xdf,0x00,0x02,0x80,0x04
# GFX942: global_atomic_max_f64 a[4:5], v0, a[2:3], s[0:1] sc0 sc1 ; encoding: [0x00,0x80,0x45,0xdf,0x00,0x02,0x80,0x04]
