1# RUN: llvm-ml -m64 -filetype=s %s /Fo - | FileCheck %s 2 3.data 4 5FOO STRUCT 6 a BYTE ? 7 b BYTE ? 8 c BYTE ? 9 d BYTE ? 10FOO ENDS 11 12BAR STRUCT 13 e WORD ? 14 f WORD ? 15BAR ENDS 16 17var FOO <> 18 19.code 20 21t1: 22mov al, var.a 23mov al, var. b 24mov al, var .c 25mov al, var . d 26 27; CHECK-LABEL: t1: 28; CHECK: mov al, byte ptr [rip + var] 29; CHECK: mov al, byte ptr [rip + var+1] 30; CHECK: mov al, byte ptr [rip + var+2] 31; CHECK: mov al, byte ptr [rip + var+3] 32 33t2: 34mov eax, FOO.a 35mov ax, FOO. b 36mov al, FOO .c 37mov eax, FOO . d 38 39; CHECK-LABEL: t2: 40; CHECK: mov eax, 0 41; CHECK: mov ax, 1 42; CHECK: mov al, 2 43; CHECK: mov eax, 3 44 45t3: 46mov al, BYTE PTR var[FOO.c] 47 48; CHECK-LABEL: t3: 49; CHECK: mov al, byte ptr [rip + var+2] 50 51t4: 52mov ax, var.BAR.f 53mov ax, var .BAR.f 54mov ax, var. BAR.f 55mov ax, var.BAR .f 56mov ax, var.BAR. f 57mov ax, var . BAR . f 58 59; CHECK-LABEL: t4: 60; CHECK: mov ax, word ptr [rip + var+2] 61; CHECK: mov ax, word ptr [rip + var+2] 62; CHECK: mov ax, word ptr [rip + var+2] 63; CHECK: mov ax, word ptr [rip + var+2] 64; CHECK: mov ax, word ptr [rip + var+2] 65; CHECK: mov ax, word ptr [rip + var+2] 66 67END 68