103 lines · plain
1# RUN: llvm-mc -filetype=obj -triple=x86_64 %s -o %t2# RUN: llvm-objdump -dr --no-addresses %t | sed 's/#.*//;/^ *$/d' | FileCheck %s3 4# CHECK: 8b 05 00 00 00 00 movl (%rip), %eax5# CHECK-NEXT: R_X86_64_PC32 foo-0x46# CHECK-NEXT: c6 05 00 00 00 00 0c movb $0xc, (%rip)7# CHECK-NEXT: R_X86_64_PC32 foo-0x58# CHECK-NEXT: 66 c7 05 00 00 00 00 0c 00 movw $0xc, (%rip)9# CHECK-NEXT: R_X86_64_PC32 foo-0x610# CHECK-NEXT: c7 05 00 00 00 00 0c 00 00 00 movl $0xc, (%rip)11# CHECK-NEXT: R_X86_64_PC32 foo-0x812# CHECK-NEXT: 48 c7 05 00 00 00 00 0c 00 00 00 movq $0xc, (%rip)13# CHECK-NEXT: R_X86_64_PC32 foo-0x814# CHECK-NEXT: 67 8b 05 00 00 00 00 movl (%eip), %eax15# CHECK-NEXT: R_X86_64_PC32 foo-0x416# CHECK-NEXT: 67 c6 05 00 00 00 00 0c movb $0xc, (%eip)17# CHECK-NEXT: R_X86_64_PC32 foo-0x518# CHECK-NEXT: 67 66 c7 05 00 00 00 00 0c 00 movw $0xc, (%eip)19# CHECK-NEXT: R_X86_64_PC32 foo-0x620# CHECK-NEXT: 67 c7 05 00 00 00 00 0c 00 00 00 movl $0xc, (%eip)21# CHECK-NEXT: R_X86_64_PC32 foo-0x822# CHECK-NEXT: 67 48 c7 05 00 00 00 00 0c 00 00 00 movq $0xc, (%eip)23# CHECK-NEXT: R_X86_64_PC32 foo-0x824movl foo(%rip), %eax25movb $12, foo(%rip)26movw $12, foo(%rip)27movl $12, foo(%rip)28movq $12, foo(%rip)29 30movl foo(%eip), %eax31movb $12, foo(%eip)32movw $12, foo(%eip)33movl $12, foo(%eip)34movq $12, foo(%eip)35 36# CHECK-NEXT: 48 8b 05 00 00 00 00 movq (%rip), %rax37# CHECK-NEXT: R_X86_64_REX_GOTPCRELX foo-0x438# CHECK-NEXT: 4c 8b 35 00 00 00 00 movq (%rip), %r1439# CHECK-NEXT: R_X86_64_REX_GOTPCRELX foo-0x440# CHECK-NEXT: 67 48 8b 05 00 00 00 00 movq (%eip), %rax41# CHECK-NEXT: R_X86_64_REX_GOTPCRELX foo-0x442# CHECK-NEXT: 67 4c 8b 35 00 00 00 00 movq (%eip), %r1443# CHECK-NEXT: R_X86_64_REX_GOTPCRELX foo-0x444movq foo@GOTPCREL(%rip), %rax45movq foo@GOTPCREL(%rip), %r1446movq foo@GOTPCREL(%eip), %rax47movq foo@GOTPCREL(%eip), %r1448 49# CHECK-NEXT: 66 0f 38 00 0d 00 00 00 00 pshufb (%rip), %xmm150# CHECK-NEXT: R_X86_64_PC32 foo-0x451pshufb foo(%rip), %xmm152 53## PR1504054# CHECK-NEXT: c4 e3 f9 6a 05 00 00 00 00 10 vfmaddss (%rip), %xmm1, %xmm0, %xmm055# CHECK-NEXT: R_X86_64_PC32 foo-0x556# CHECK-NEXT: c4 e3 79 6a 05 00 00 00 00 10 vfmaddss %xmm1, (%rip), %xmm0, %xmm057# CHECK-NEXT: R_X86_64_PC32 foo-0x558# CHECK-NEXT: c4 e3 f9 6b 05 00 00 00 00 10 vfmaddsd (%rip), %xmm1, %xmm0, %xmm059# CHECK-NEXT: R_X86_64_PC32 foo-0x560# CHECK-NEXT: c4 e3 79 6b 05 00 00 00 00 10 vfmaddsd %xmm1, (%rip), %xmm0, %xmm061# CHECK-NEXT: R_X86_64_PC32 foo-0x562# CHECK-NEXT: c4 e3 f9 68 05 00 00 00 00 10 vfmaddps (%rip), %xmm1, %xmm0, %xmm063# CHECK-NEXT: R_X86_64_PC32 foo-0x564# CHECK-NEXT: c4 e3 79 68 05 00 00 00 00 10 vfmaddps %xmm1, (%rip), %xmm0, %xmm065# CHECK-NEXT: R_X86_64_PC32 foo-0x566# CHECK-NEXT: c4 e3 f9 69 05 00 00 00 00 10 vfmaddpd (%rip), %xmm1, %xmm0, %xmm067# CHECK-NEXT: R_X86_64_PC32 foo-0x568# CHECK-NEXT: c4 e3 79 69 05 00 00 00 00 10 vfmaddpd %xmm1, (%rip), %xmm0, %xmm069# CHECK-NEXT: R_X86_64_PC32 foo-0x570# CHECK-NEXT: c4 e3 fd 68 05 00 00 00 00 10 vfmaddps (%rip), %ymm1, %ymm0, %ymm071# CHECK-NEXT: R_X86_64_PC32 foo-0x572# CHECK-NEXT: c4 e3 7d 68 05 00 00 00 00 10 vfmaddps %ymm1, (%rip), %ymm0, %ymm073# CHECK-NEXT: R_X86_64_PC32 foo-0x574# CHECK-NEXT: c4 e3 fd 69 05 00 00 00 00 10 vfmaddpd (%rip), %ymm1, %ymm0, %ymm075# CHECK-NEXT: R_X86_64_PC32 foo-0x576# CHECK-NEXT: c4 e3 7d 69 05 00 00 00 00 10 vfmaddpd %ymm1, (%rip), %ymm0, %ymm077# CHECK-NEXT: R_X86_64_PC32 foo-0x578vfmaddss foo(%rip), %xmm1, %xmm0, %xmm079vfmaddss %xmm1, foo(%rip),%xmm0, %xmm080vfmaddsd foo(%rip), %xmm1, %xmm0, %xmm081vfmaddsd %xmm1, foo(%rip),%xmm0, %xmm082vfmaddps foo(%rip), %xmm1, %xmm0, %xmm083vfmaddps %xmm1, foo(%rip),%xmm0, %xmm084vfmaddpd foo(%rip), %xmm1, %xmm0, %xmm085vfmaddpd %xmm1, foo(%rip),%xmm0, %xmm086vfmaddps foo(%rip), %ymm1, %ymm0, %ymm087vfmaddps %ymm1, foo(%rip),%ymm0, %ymm088vfmaddpd foo(%rip), %ymm1, %ymm0, %ymm089vfmaddpd %ymm1, foo(%rip),%ymm0, %ymm090 91# CHECK-NEXT:<l1>:92# CHECK-NEXT: 90 nop93# CHECK-NEXT: c4 e2 79 00 05 f6 ff ff ff vpshufb -0xa(%rip), %xmm0, %xmm094# CHECK-NEXT:<l2>:95# CHECK-NEXT: 90 nop96# CHECK-NEXT: c4 e3 7d 4a 05 f5 ff ff ff 10 vblendvps %ymm1, -0xb(%rip), %ymm0, %ymm097l1:98 nop99 vpshufb l1(%rip), %xmm0, %xmm0100l2:101 nop102 vblendvps %ymm1, l2(%rip), %ymm0, %ymm0103