14a5c0fd70e7a2001b682c8972dab6b0127313c8fDevang Patel// RUN: llvm-mc -triple x86_64-unknown-unknown -x86-asm-syntax=intel %s | FileCheck %s 24a5c0fd70e7a2001b682c8972dab6b0127313c8fDevang Patel 340bced0306e953c3d0fec19db4c4770b0e3c787eDevang Patel_test: 440bced0306e953c3d0fec19db4c4770b0e3c787eDevang Patel xor EAX, EAX 540bced0306e953c3d0fec19db4c4770b0e3c787eDevang Patel ret 640bced0306e953c3d0fec19db4c4770b0e3c787eDevang Patel 740bced0306e953c3d0fec19db4c4770b0e3c787eDevang Patel_main: 84a5c0fd70e7a2001b682c8972dab6b0127313c8fDevang Patel// CHECK: movl $257, -4(%rsp) 94a5c0fd70e7a2001b682c8972dab6b0127313c8fDevang Patel mov DWORD PTR [RSP - 4], 257 109a3d293cf3f72b3c0ed5d4474fc5d4d12fd36be2Devang Patel// CHECK: movl $258, 4(%rsp) 119a3d293cf3f72b3c0ed5d4474fc5d4d12fd36be2Devang Patel mov DWORD PTR [RSP + 4], 258 124a5c0fd70e7a2001b682c8972dab6b0127313c8fDevang Patel// CHECK: movq $123, -16(%rsp) 134a5c0fd70e7a2001b682c8972dab6b0127313c8fDevang Patel mov QWORD PTR [RSP - 16], 123 144a5c0fd70e7a2001b682c8972dab6b0127313c8fDevang Patel// CHECK: movb $97, -17(%rsp) 154a5c0fd70e7a2001b682c8972dab6b0127313c8fDevang Patel mov BYTE PTR [RSP - 17], 97 164a5c0fd70e7a2001b682c8972dab6b0127313c8fDevang Patel// CHECK: movl -4(%rsp), %eax 174a5c0fd70e7a2001b682c8972dab6b0127313c8fDevang Patel mov EAX, DWORD PTR [RSP - 4] 18d37ad247cc04c2a436e537767ac1aec709901594Devang Patel// CHECK: movq (%rsp), %rax 19d37ad247cc04c2a436e537767ac1aec709901594Devang Patel mov RAX, QWORD PTR [RSP] 20d37ad247cc04c2a436e537767ac1aec709901594Devang Patel// CHECK: movl $-4, -4(%rsp) 21d37ad247cc04c2a436e537767ac1aec709901594Devang Patel mov DWORD PTR [RSP - 4], -4 22d37ad247cc04c2a436e537767ac1aec709901594Devang Patel// CHECK: movq 0, %rcx 23d37ad247cc04c2a436e537767ac1aec709901594Devang Patel mov RCX, QWORD PTR [0] 24d37ad247cc04c2a436e537767ac1aec709901594Devang Patel// CHECK: movl -24(%rsp,%rax,4), %eax 25d37ad247cc04c2a436e537767ac1aec709901594Devang Patel mov EAX, DWORD PTR [RSP + 4*RAX - 24] 266220fea2a877e5cff559ed38e98c59a076ea9825Devang Patel// CHECK: movb %dil, (%rdx,%rcx) 276220fea2a877e5cff559ed38e98c59a076ea9825Devang Patel mov BYTE PTR [RDX + RCX], DIL 282f8af1d643cde711b292117e50b30452877432efDevang Patel// CHECK: movzwl 2(%rcx), %edi 292f8af1d643cde711b292117e50b30452877432efDevang Patel movzx EDI, WORD PTR [RCX + 2] 3040bced0306e953c3d0fec19db4c4770b0e3c787eDevang Patel// CHECK: callq _test 3140bced0306e953c3d0fec19db4c4770b0e3c787eDevang Patel call _test 32b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel// CHECK: andw $12, %ax 33b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel and ax, 12 34b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel// CHECK: andw $-12, %ax 35b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel and ax, -12 36b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel// CHECK: andw $257, %ax 37b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel and ax, 257 38b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel// CHECK: andw $-257, %ax 39b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel and ax, -257 40b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel// CHECK: andl $12, %eax 41b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel and eax, 12 42b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel// CHECK: andl $-12, %eax 43b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel and eax, -12 44b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel// CHECK: andl $257, %eax 45b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel and eax, 257 46b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel// CHECK: andl $-257, %eax 47b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel and eax, -257 48b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel// CHECK: andq $12, %rax 49b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel and rax, 12 50b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel// CHECK: andq $-12, %rax 51b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel and rax, -12 52b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel// CHECK: andq $257, %rax 53b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel and rax, 257 54b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel// CHECK: andq $-257, %rax 55b8ba13f0096b560ee618512019ca86969a9fa772Devang Patel and rax, -257 561aea430b8834f7bed3a14eda5027eac2133d6496Devang Patel// CHECK: fld %st(0) 571aea430b8834f7bed3a14eda5027eac2133d6496Devang Patel fld ST(0) 587c64fe651ad4581ac66b6407116144442a8a7f03Devang Patel// CHECK: movl %fs:(%rdi), %eax 59f2d213745e07e884c1616f2f3d0b78f9e918e5dbDevang Patel mov EAX, DWORD PTR FS:[RDI] 603e08131185d5b3245065eb027900aed56b607970Devang Patel// CHECK: leal (,%rdi,4), %r8d 61f2d213745e07e884c1616f2f3d0b78f9e918e5dbDevang Patel lea R8D, DWORD PTR [4*RDI] 62f2d213745e07e884c1616f2f3d0b78f9e918e5dbDevang Patel// CHECK: movl _fnan(,%ecx,4), %ecx 63f2d213745e07e884c1616f2f3d0b78f9e918e5dbDevang Patel mov ECX, DWORD PTR [4*ECX + _fnan] 64a28101e61aa3aeed5baf3d5b91d0f8bcb4e9e12aDevang Patel// CHECK: movq %fs:320, %rax 65a28101e61aa3aeed5baf3d5b91d0f8bcb4e9e12aDevang Patel mov RAX, QWORD PTR FS:[320] 6675dc33a60b65bbbf2253b0b916df1d36a4da4237Craig Topper// CHECK: vpgatherdd %xmm8, (%r15,%xmm9,2), %xmm1 6775dc33a60b65bbbf2253b0b916df1d36a4da4237Craig Topper vpgatherdd XMM10, DWORD PTR [R15 + 2*XMM9], XMM8 6840bced0306e953c3d0fec19db4c4770b0e3c787eDevang Patel ret 69