]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/Instrumentation/AddressSanitizer/X86/asm_mov.s
Vendor import of llvm RELEASE_350/final tag r216957 (effectively, 3.5.0 release):
[FreeBSD/FreeBSD.git] / test / Instrumentation / AddressSanitizer / X86 / asm_mov.s
1 # RUN: llvm-mc %s -triple=x86_64-unknown-linux-gnu -mcpu=corei7 -mattr=+sse2 -asm-instrumentation=address -asan-instrument-assembly | FileCheck %s
2
3         .text
4         .globl  mov1b
5         .align  16, 0x90
6         .type   mov1b,@function
7 # CHECK-LABEL: mov1b:
8 #
9 # CHECK: leaq -128(%rsp), %rsp
10 # CHECK: callq __asan_report_load1@PLT
11 # CHECK: leaq 128(%rsp), %rsp
12 #
13 # CHECK-NEXT: movb (%rsi), %al
14 #
15 # CHECK-NEXT: leaq -128(%rsp), %rsp
16 # CHECK: callq __asan_report_store1@PLT
17 # CHECK: leaq 128(%rsp), %rsp
18 #
19 # CHECK-NEXT: movb %al, (%rdi)
20 mov1b:                                  # @mov1b
21         .cfi_startproc
22 # BB#0:
23         #APP
24         movb    (%rsi), %al
25         movb    %al, (%rdi)
26
27         #NO_APP
28         retq
29 .Ltmp0:
30         .size   mov1b, .Ltmp0-mov1b
31         .cfi_endproc
32
33         .globl  mov16b
34         .align  16, 0x90
35         .type   mov16b,@function
36 # CHECK-LABEL: mov16b:
37 #
38 # CHECK: leaq -128(%rsp), %rsp
39 # CHECK: callq __asan_report_load16@PLT
40 # CHECK: leaq 128(%rsp), %rsp
41 #
42 # CHECK-NEXT: movaps (%rsi), %xmm0
43 #
44 # CHECK-NEXT: leaq -128(%rsp), %rsp
45 # CHECK: callq __asan_report_store16@PLT
46 # CHECK: leaq 128(%rsp), %rsp
47 #
48 # CHECK-NEXT: movaps %xmm0, (%rdi)
49 mov16b:                                 # @mov16b
50         .cfi_startproc
51 # BB#0:
52         #APP
53         movaps  (%rsi), %xmm0
54         movaps  %xmm0, (%rdi)
55
56         #NO_APP
57         retq
58 .Ltmp1:
59         .size   mov16b, .Ltmp1-mov16b
60         .cfi_endproc
61
62
63         .ident  "clang version 3.5 "
64         .section        ".note.GNU-stack","",@progbits