1# RUN: llvm-mc -triple hexagon -disassemble < %s | FileCheck %s 2# Hexagon Programmer's Reference Manual 11.5 LD 3 4# Load doubleword 50x90 0xff 0xd5 0x3a 6# CHECK: r17:16 = memd(r21 + r31<<#3) 70xb0 0xc2 0xc0 0x49 8# CHECK: r17:16 = memd(#168) 90x02 0x40 0x00 0x00 0x10 0xc5 0xc0 0x49 10# CHECK: r17:16 = memd(##168) 110xd0 0xc0 0xd5 0x91 12# CHECK: r17:16 = memd(r21 + #48) 130xb0 0xe0 0xd5 0x99 14# CHECK: r17:16 = memd(r21 ++ #40:circ(m1)) 150x10 0xe2 0xd5 0x99 16# CHECK: r17:16 = memd(r21 ++ I:circ(m1)) 170x00 0x40 0x00 0x00 0x70 0xd7 0xd5 0x9b 18# CHECK: r17:16 = memd(r21 = ##31) 190xb0 0xc0 0xd5 0x9b 20# CHECK: r17:16 = memd(r21++#40) 210x10 0xe0 0xd5 0x9d 22# CHECK: r17:16 = memd(r21++m1) 230x10 0xe0 0xd5 0x9f 24# CHECK: r17:16 = memd(r21 ++ m1:brev) 25 26# Load doubleword conditionally 270xf0 0xff 0xd5 0x30 28# CHECK: if (p3) r17:16 = memd(r21+r31<<#3) 290xf0 0xff 0xd5 0x31 30# CHECK: if (!p3) r17:16 = memd(r21+r31<<#3) 310x03 0x40 0x45 0x85 0xf0 0xff 0xd5 0x32 32# CHECK: p3 = r5 33# CHECK-NEXT: if (p3.new) r17:16 = memd(r21+r31<<#3) 340x03 0x40 0x45 0x85 0xf0 0xff 0xd5 0x33 35# CHECK: p3 = r5 36# CHECK-NEXT: if (!p3.new) r17:16 = memd(r21+r31<<#3) 370x70 0xd8 0xd5 0x41 38# CHECK: if (p3) r17:16 = memd(r21 + #24) 390x03 0x40 0x45 0x85 0x70 0xd8 0xd5 0x43 40# CHECK: p3 = r5 41# CHECK-NEXT: if (p3.new) r17:16 = memd(r21 + #24) 420x70 0xd8 0xd5 0x45 43# CHECK: if (!p3) r17:16 = memd(r21 + #24) 440x03 0x40 0x45 0x85 0x70 0xd8 0xd5 0x47 45# CHECK: p3 = r5 46# CHECK-NEXT: if (!p3.new) r17:16 = memd(r21 + #24) 470xb0 0xe6 0xd5 0x9b 48# CHECK: if (p3) r17:16 = memd(r21++#40) 490xb0 0xee 0xd5 0x9b 50# CHECK: if (!p3) r17:16 = memd(r21++#40) 510x03 0x40 0x45 0x85 0xb0 0xf6 0xd5 0x9b 52# CHECK: p3 = r5 53# CHECK-NEXT: if (p3.new) r17:16 = memd(r21++#40) 540x03 0x40 0x45 0x85 0xb0 0xfe 0xd5 0x9b 55# CHECK: p3 = r5 56# CHECK-NEXT: if (!p3.new) r17:16 = memd(r21++#40) 57 58# Load byte 590x91 0xff 0x15 0x3a 60# CHECK: r17 = memb(r21 + r31<<#3) 610xb1 0xc2 0x00 0x49 62# CHECK: r17 = memb(#21) 630x00 0x40 0x00 0x00 0xb1 0xc2 0x00 0x49 64# CHECK: r17 = memb(##21) 650xf1 0xc3 0x15 0x91 66# CHECK: r17 = memb(r21 + #31) 670xb1 0xe0 0x15 0x99 68# CHECK: r17 = memb(r21 ++ #5:circ(m1)) 690x11 0xe2 0x15 0x99 70# CHECK: r17 = memb(r21 ++ I:circ(m1)) 710x00 0x40 0x00 0x00 0x71 0xd7 0x15 0x9b 72# CHECK: r17 = memb(r21 = ##31) 730xb1 0xc0 0x15 0x9b 74# CHECK: r17 = memb(r21++#5) 750x11 0xe0 0x15 0x9d 76# CHECK: r17 = memb(r21++m1) 770x11 0xe0 0x15 0x9f 78# CHECK: r17 = memb(r21 ++ m1:brev) 79 80# Load byte conditionally 810xf1 0xff 0x15 0x30 82# CHECK: if (p3) r17 = memb(r21+r31<<#3) 830xf1 0xff 0x15 0x31 84# CHECK: if (!p3) r17 = memb(r21+r31<<#3) 850x03 0x40 0x45 0x85 0xf1 0xff 0x15 0x32 86# CHECK: p3 = r5 87# CHECK-NEXT: if (p3.new) r17 = memb(r21+r31<<#3) 880x03 0x40 0x45 0x85 0xf1 0xff 0x15 0x33 89# CHECK: p3 = r5 90# CHECK-NEXT: if (!p3.new) r17 = memb(r21+r31<<#3) 910x91 0xdd 0x15 0x41 92# CHECK: if (p3) r17 = memb(r21 + #44) 930x03 0x40 0x45 0x85 0x91 0xdd 0x15 0x43 94# CHECK: p3 = r5 95# CHECK-NEXT: if (p3.new) r17 = memb(r21 + #44) 960x91 0xdd 0x15 0x45 97# CHECK: if (!p3) r17 = memb(r21 + #44) 980x03 0x40 0x45 0x85 0x91 0xdd 0x15 0x47 99# CHECK: p3 = r5 100# CHECK-NEXT: if (!p3.new) r17 = memb(r21 + #44) 1010xb1 0xe6 0x15 0x9b 102# CHECK: if (p3) r17 = memb(r21++#5) 1030xb1 0xee 0x15 0x9b 104# CHECK: if (!p3) r17 = memb(r21++#5) 1050x03 0x40 0x45 0x85 0xb1 0xf6 0x15 0x9b 106# CHECK: p3 = r5 107# CHECK-NEXT: if (p3.new) r17 = memb(r21++#5) 1080x03 0x40 0x45 0x85 0xb1 0xfe 0x15 0x9b 109# CHECK: p3 = r5 110# CHECK-NEXT: if (!p3.new) r17 = memb(r21++#5) 111 112# Load byte into shifted vector 1130xf0 0xc3 0x95 0x90 114# CHECK: r17:16 = memb_fifo(r21 + #31) 1150xb0 0xe0 0x95 0x98 116# CHECK: r17:16 = memb_fifo(r21 ++ #5:circ(m1)) 1170x10 0xe2 0x95 0x98 118# CHECK: r17:16 = memb_fifo(r21 ++ I:circ(m1)) 119 120# Load half into shifted vector 1210xf0 0xc3 0x55 0x90 122# CHECK: r17:16 = memh_fifo(r21 + #62) 1230xb0 0xe0 0x55 0x98 124# CHECK: r17:16 = memh_fifo(r21 ++ #10:circ(m1)) 1250x10 0xe2 0x55 0x98 126# CHECK: r17:16 = memh_fifo(r21 ++ I:circ(m1)) 127 128# Load halfword 1290x91 0xff 0x55 0x3a 130# CHECK: r17 = memh(r21 + r31<<#3) 1310xb1 0xc2 0x40 0x49 132# CHECK: r17 = memh(#42) 1330x00 0x40 0x00 0x00 0x51 0xc5 0x40 0x49 134# CHECK: r17 = memh(##42) 1350xf1 0xc3 0x55 0x91 136# CHECK: r17 = memh(r21 + #62) 1370xb1 0xe0 0x55 0x99 138# CHECK: r17 = memh(r21 ++ #10:circ(m1)) 1390x11 0xe2 0x55 0x99 140# CHECK: r17 = memh(r21 ++ I:circ(m1)) 1410x00 0x40 0x00 0x00 0x71 0xd7 0x55 0x9b 142# CHECK: r17 = memh(r21 = ##31) 1430xb1 0xc0 0x55 0x9b 144# CHECK: r17 = memh(r21++#10) 1450x11 0xe0 0x55 0x9d 146# CHECK: r17 = memh(r21++m1) 1470x11 0xe0 0x55 0x9f 148# CHECK: r17 = memh(r21 ++ m1:brev) 149 150# Load halfword conditionally 1510xf1 0xff 0x55 0x30 152# CHECK: if (p3) r17 = memh(r21+r31<<#3) 1530xf1 0xff 0x55 0x31 154# CHECK: if (!p3) r17 = memh(r21+r31<<#3) 1550x03 0x40 0x45 0x85 0xf1 0xff 0x55 0x32 156# CHECK: p3 = r5 157# CHECK-NEXT: if (p3.new) r17 = memh(r21+r31<<#3) 1580x03 0x40 0x45 0x85 0xf1 0xff 0x55 0x33 159# CHECK: p3 = r5 160# CHECK-NEXT: if (!p3.new) r17 = memh(r21+r31<<#3) 1610xb1 0xe6 0x55 0x9b 162# CHECK: if (p3) r17 = memh(r21++#10) 1630xb1 0xee 0x55 0x9b 164# CHECK: if (!p3) r17 = memh(r21++#10) 1650x03 0x40 0x45 0x85 0xb1 0xf6 0x55 0x9b 166# CHECK: p3 = r5 167# CHECK-NEXT: if (p3.new) r17 = memh(r21++#10) 1680x03 0x40 0x45 0x85 0xb1 0xfe 0x55 0x9b 169# CHECK: p3 = r5 170# CHECK-NEXT: if (!p3.new) r17 = memh(r21++#10) 1710xf1 0xdb 0x55 0x41 172# CHECK: if (p3) r17 = memh(r21 + #62) 1730xf1 0xdb 0x55 0x45 174# CHECK: if (!p3) r17 = memh(r21 + #62) 1750x03 0x40 0x45 0x85 0xf1 0xdb 0x55 0x43 176# CHECK: p3 = r5 177# CHECK-NEXT: if (p3.new) r17 = memh(r21 + #62) 1780x03 0x40 0x45 0x85 0xf1 0xdb 0x55 0x47 179# CHECK: p3 = r5 180# CHECK-NEXT: if (!p3.new) r17 = memh(r21 + #62) 181 182# Load unsigned byte 1830x91 0xff 0x35 0x3a 184# CHECK: r17 = memub(r21 + r31<<#3) 1850xb1 0xc2 0x20 0x49 186# CHECK: r17 = memub(#21) 1870x00 0x40 0x00 0x00 0xb1 0xc2 0x20 0x49 188# CHECK: r17 = memub(##21) 1890xf1 0xc3 0x35 0x91 190# CHECK: r17 = memub(r21 + #31) 1910xb1 0xe0 0x35 0x99 192# CHECK: r17 = memub(r21 ++ #5:circ(m1)) 1930x11 0xe2 0x35 0x99 194# CHECK: r17 = memub(r21 ++ I:circ(m1)) 1950x00 0x40 0x00 0x00 0x71 0xd7 0x35 0x9b 196# CHECK: r17 = memub(r21 = ##31) 1970xb1 0xc0 0x35 0x9b 198# CHECK: r17 = memub(r21++#5) 1990x11 0xe0 0x35 0x9d 200# CHECK: r17 = memub(r21++m1) 2010x11 0xe0 0x35 0x9f 202# CHECK: r17 = memub(r21 ++ m1:brev) 203 204# Load unsigned byte conditionally 2050xf1 0xff 0x35 0x30 206# CHECK: if (p3) r17 = memub(r21+r31<<#3) 2070xf1 0xff 0x35 0x31 208# CHECK: if (!p3) r17 = memub(r21+r31<<#3) 2090x03 0x40 0x45 0x85 0xf1 0xff 0x35 0x32 210# CHECK: p3 = r5 211# CHECK-NEXT: if (p3.new) r17 = memub(r21+r31<<#3) 2120x03 0x40 0x45 0x85 0xf1 0xff 0x35 0x33 213# CHECK: p3 = r5 214# CHECK-NEXT: if (!p3.new) r17 = memub(r21+r31<<#3) 2150xf1 0xdb 0x35 0x41 216# CHECK: if (p3) r17 = memub(r21 + #31) 2170x03 0x40 0x45 0x85 0xf1 0xdb 0x35 0x43 218# CHECK: p3 = r5 219# CHECK-NEXT: if (p3.new) r17 = memub(r21 + #31) 2200xf1 0xdb 0x35 0x45 221# CHECK: if (!p3) r17 = memub(r21 + #31) 2220x03 0x40 0x45 0x85 0xf1 0xdb 0x35 0x47 223# CHECK: p3 = r5 224# CHECK-NEXT: if (!p3.new) r17 = memub(r21 + #31) 2250xb1 0xe6 0x35 0x9b 226# CHECK: if (p3) r17 = memub(r21++#5) 2270xb1 0xee 0x35 0x9b 228# CHECK: if (!p3) r17 = memub(r21++#5) 2290x03 0x40 0x45 0x85 0xb1 0xf6 0x35 0x9b 230# CHECK: p3 = r5 231# CHECK-NEXT: if (p3.new) r17 = memub(r21++#5) 2320x03 0x40 0x45 0x85 0xb1 0xfe 0x35 0x9b 233# CHECK: p3 = r5 234# CHECK-NEXT: if (!p3.new) r17 = memub(r21++#5) 235 236# Load unsigned halfword 2370x91 0xff 0x75 0x3a 238# CHECK: r17 = memuh(r21 + r31<<#3) 2390xb1 0xc2 0x60 0x49 240# CHECK: r17 = memuh(#42) 2410x00 0x40 0x00 0x00 0x51 0xc5 0x60 0x49 242# CHECK: r17 = memuh(##42) 2430xb1 0xc2 0x75 0x91 244# CHECK: r17 = memuh(r21 + #42) 2450xb1 0xe0 0x75 0x99 246# CHECK: r17 = memuh(r21 ++ #10:circ(m1)) 2470x11 0xe2 0x75 0x99 248# CHECK: r17 = memuh(r21 ++ I:circ(m1)) 2490x00 0x40 0x00 0x00 0x71 0xd7 0x75 0x9b 250# CHECK: r17 = memuh(r21 = ##31) 2510xb1 0xc0 0x75 0x9b 252# CHECK: r17 = memuh(r21++#10) 2530x11 0xe0 0x75 0x9d 254# CHECK: r17 = memuh(r21++m1) 2550x11 0xe0 0x75 0x9f 256# CHECK: r17 = memuh(r21 ++ m1:brev) 257 258# Load unsigned halfword conditionally 2590xf1 0xff 0x75 0x30 260# CHECK: if (p3) r17 = memuh(r21+r31<<#3) 2610xf1 0xff 0x75 0x31 262# CHECK: if (!p3) r17 = memuh(r21+r31<<#3) 2630x03 0x40 0x45 0x85 0xf1 0xff 0x75 0x32 264# CHECK: p3 = r5 265# CHECK-NEXT: if (p3.new) r17 = memuh(r21+r31<<#3) 2660x03 0x40 0x45 0x85 0xf1 0xff 0x75 0x33 267# CHECK: p3 = r5 268# CHECK-NEXT: if (!p3.new) r17 = memuh(r21+r31<<#3) 2690xb1 0xda 0x75 0x41 270# CHECK: if (p3) r17 = memuh(r21 + #42) 2710xb1 0xda 0x75 0x45 272# CHECK: if (!p3) r17 = memuh(r21 + #42) 2730x03 0x40 0x45 0x85 0xb1 0xda 0x75 0x43 274# CHECK: p3 = r5 275# CHECK-NEXT: if (p3.new) r17 = memuh(r21 + #42) 2760x03 0x40 0x45 0x85 0xb1 0xda 0x75 0x47 277# CHECK: p3 = r5 278# CHECK-NEXT: if (!p3.new) r17 = memuh(r21 + #42) 2790xb1 0xe6 0x75 0x9b 280# CHECK: if (p3) r17 = memuh(r21++#10) 2810xb1 0xee 0x75 0x9b 282# CHECK: if (!p3) r17 = memuh(r21++#10) 2830x03 0x40 0x45 0x85 0xb1 0xf6 0x75 0x9b 284# CHECK: p3 = r5 285# CHECK-NEXT: if (p3.new) r17 = memuh(r21++#10) 2860x03 0x40 0x45 0x85 0xb1 0xfe 0x75 0x9b 287# CHECK: p3 = r5 288# CHECK-NEXT: if (!p3.new) r17 = memuh(r21++#10) 289 290# Load word 2910x91 0xff 0x95 0x3a 292# CHECK: r17 = memw(r21 + r31<<#3) 2930xb1 0xc2 0x80 0x49 294# CHECK: r17 = memw(#84) 2950x01 0x40 0x00 0x00 0x91 0xc2 0x80 0x49 296# CHECK: r17 = memw(##84) 2970xb1 0xc2 0x95 0x91 298# CHECK: r17 = memw(r21 + #84) 2990xb1 0xe0 0x95 0x99 300# CHECK: r17 = memw(r21 ++ #20:circ(m1)) 3010x11 0xe2 0x95 0x99 302# CHECK: r17 = memw(r21 ++ I:circ(m1)) 3030x00 0x40 0x00 0x00 0x71 0xd7 0x95 0x9b 304# CHECK: r17 = memw(r21 = ##31) 3050xb1 0xc0 0x95 0x9b 306# CHECK: r17 = memw(r21++#20) 3070x11 0xe0 0x95 0x9d 308# CHECK: r17 = memw(r21++m1) 3090x11 0xe0 0x95 0x9f 310# CHECK: r17 = memw(r21 ++ m1:brev) 311 312# Load word conditionally 3130xf1 0xff 0x95 0x30 314# CHECK: if (p3) r17 = memw(r21+r31<<#3) 3150xf1 0xff 0x95 0x31 316# CHECK: if (!p3) r17 = memw(r21+r31<<#3) 3170x03 0x40 0x45 0x85 0xf1 0xff 0x95 0x32 318# CHECK: p3 = r5 319# CHECK-NEXT: if (p3.new) r17 = memw(r21+r31<<#3) 3200x03 0x40 0x45 0x85 0xf1 0xff 0x95 0x33 321# CHECK: p3 = r5 322# CHECK-NEXT: if (!p3.new) r17 = memw(r21+r31<<#3) 3230xb1 0xda 0x95 0x41 324# CHECK: if (p3) r17 = memw(r21 + #84) 3250xb1 0xda 0x95 0x45 326# CHECK: if (!p3) r17 = memw(r21 + #84) 3270x03 0x40 0x45 0x85 0xb1 0xda 0x95 0x43 328# CHECK: p3 = r5 329# CHECK-NEXT: if (p3.new) r17 = memw(r21 + #84) 3300x03 0x40 0x45 0x85 0xb1 0xda 0x95 0x47 331# CHECK: p3 = r5 332# CHECK-NEXT: if (!p3.new) r17 = memw(r21 + #84) 3330xb1 0xe6 0x95 0x9b 334# CHECK: if (p3) r17 = memw(r21++#20) 3350xb1 0xee 0x95 0x9b 336# CHECK: if (!p3) r17 = memw(r21++#20) 3370x03 0x40 0x45 0x85 0xb1 0xf6 0x95 0x9b 338# CHECK: p3 = r5 339# CHECK-NEXT: if (p3.new) r17 = memw(r21++#20) 3400x03 0x40 0x45 0x85 0xb1 0xfe 0x95 0x9b 341# CHECK: p3 = r5 342# CHECK-NEXT: if (!p3.new) r17 = memw(r21++#20) 343 344# Deallocate stack frame 3450x1e 0xc0 0x1e 0x90 346# CHECK: deallocframe 347 348# Deallocate stack frame and return 3490x1e 0xc0 0x1e 0x96 350# CHECK: dealloc_return 3510x03 0x40 0x45 0x85 0x1e 0xcb 0x1e 0x96 352# CHECK: p3 = r5 353# CHECK-NEXT: if (p3.new) dealloc_return:nt 3540x1e 0xd3 0x1e 0x96 355# CHECK: if (p3) dealloc_return 3560x03 0x40 0x45 0x85 0x1e 0xdb 0x1e 0x96 357# CHECK: p3 = r5 358# CHECK-NEXT: if (p3.new) dealloc_return:t 3590x03 0x40 0x45 0x85 0x1e 0xeb 0x1e 0x96 360# CHECK: p3 = r5 361# CHECK-NEXT: if (!p3.new) dealloc_return:nt 3620x1e 0xf3 0x1e 0x96 363# CHECK: if (!p3) dealloc_return 3640x03 0x40 0x45 0x85 0x1e 0xfb 0x1e 0x96 365# CHECK: p3 = r5 366# CHECK-NEXT: if (!p3.new) dealloc_return:t 367 368# Load and unpack bytes to halfwords 3690xf1 0xc3 0x35 0x90 370# CHECK: r17 = membh(r21 + #62) 3710xf1 0xc3 0x75 0x90 372# CHECK: r17 = memubh(r21 + #62) 3730xf0 0xc3 0xb5 0x90 374# CHECK: r17:16 = memubh(r21 + #124) 3750xf0 0xc3 0xf5 0x90 376# CHECK: r17:16 = membh(r21 + #124) 3770xb1 0xe0 0x35 0x98 378# CHECK: r17 = membh(r21 ++ #10:circ(m1)) 3790x11 0xe2 0x35 0x98 380# CHECK: r17 = membh(r21 ++ I:circ(m1)) 3810xb1 0xe0 0x75 0x98 382# CHECK: r17 = memubh(r21 ++ #10:circ(m1)) 3830x11 0xe2 0x75 0x98 384# CHECK: r17 = memubh(r21 ++ I:circ(m1)) 3850xb0 0xe0 0xf5 0x98 386# CHECK: r17:16 = membh(r21 ++ #20:circ(m1)) 3870x10 0xe2 0xf5 0x98 388# CHECK: r17:16 = membh(r21 ++ I:circ(m1)) 3890xb0 0xe0 0xb5 0x98 390# CHECK: r17:16 = memubh(r21 ++ #20:circ(m1)) 3910x10 0xe2 0xb5 0x98 392# CHECK: r17:16 = memubh(r21 ++ I:circ(m1)) 3930x00 0x40 0x00 0x00 0x71 0xd7 0x35 0x9a 394# CHECK: r17 = membh(r21 = ##31) 3950xb1 0xc0 0x35 0x9a 396# CHECK: r17 = membh(r21++#10) 3970x00 0x40 0x00 0x00 0x71 0xd7 0x75 0x9a 398# CHECK: r17 = memubh(r21 = ##31) 3990xb1 0xc0 0x75 0x9a 400# CHECK: r17 = memubh(r21++#10) 4010x00 0x40 0x00 0x00 0x70 0xd7 0xb5 0x9a 402# CHECK: r17:16 = memubh(r21 = ##31) 4030xb0 0xc0 0xb5 0x9a 404# CHECK: r17:16 = memubh(r21++#20) 4050x00 0x40 0x00 0x00 0x70 0xd7 0xf5 0x9a 406# CHECK: r17:16 = membh(r21 = ##31) 4070xb0 0xc0 0xf5 0x9a 408# CHECK: r17:16 = membh(r21++#20) 4090x00 0x40 0x00 0x00 0xf1 0xf7 0x35 0x9c 410# CHECK: r17 = membh(r21<<#3 + ##31) 4110x11 0xe0 0x35 0x9c 412# CHECK: r17 = membh(r21++m1) 4130x00 0x40 0x00 0x00 0xf1 0xf7 0x75 0x9c 414# CHECK: r17 = memubh(r21<<#3 + ##31) 4150x11 0xe0 0x75 0x9c 416# CHECK: r17 = memubh(r21++m1) 4170x00 0x40 0x00 0x00 0xf0 0xf7 0xf5 0x9c 418# CHECK: r17:16 = membh(r21<<#3 + ##31) 4190x10 0xe0 0xf5 0x9c 420# CHECK: r17:16 = membh(r21++m1) 4210x00 0x40 0x00 0x00 0xf0 0xf7 0xb5 0x9c 422# CHECK: r17:16 = memubh(r21<<#3 + ##31) 4230x11 0xe0 0x35 0x9c 424# CHECK: r17 = membh(r21++m1) 4250x11 0xe0 0x75 0x9c 426# CHECK: r17 = memubh(r21++m1) 4270x10 0xe0 0xf5 0x9c 428# CHECK: r17:16 = membh(r21++m1) 4290x10 0xe0 0xb5 0x9c 430# CHECK: r17:16 = memubh(r21++m1) 4310x11 0xe0 0x35 0x9e 432# CHECK: r17 = membh(r21 ++ m1:brev) 4330x11 0xe0 0x75 0x9e 434# CHECK: r17 = memubh(r21 ++ m1:brev) 4350x10 0xe0 0xb5 0x9e 436# CHECK: r17:16 = memubh(r21 ++ m1:brev) 4370x10 0xe0 0xf5 0x9e 438# CHECK: r17:16 = membh(r21 ++ m1:brev) 439