Devang Patel | 4a5c0fd | 2012-01-13 18:45:31 +0000 | [diff] [blame] | 1 | // RUN: llvm-mc -triple x86_64-unknown-unknown -x86-asm-syntax=intel %s | FileCheck %s |
| 2 | |
Devang Patel | 40bced0 | 2012-01-17 18:30:45 +0000 | [diff] [blame] | 3 | _test: |
| 4 | xor EAX, EAX |
| 5 | ret |
| 6 | |
| 7 | _main: |
Devang Patel | 4a5c0fd | 2012-01-13 18:45:31 +0000 | [diff] [blame] | 8 | // CHECK: movl $257, -4(%rsp) |
| 9 | mov DWORD PTR [RSP - 4], 257 |
Devang Patel | 9a3d293 | 2012-01-17 19:08:07 +0000 | [diff] [blame] | 10 | // CHECK: movl $258, 4(%rsp) |
| 11 | mov DWORD PTR [RSP + 4], 258 |
Devang Patel | 4a5c0fd | 2012-01-13 18:45:31 +0000 | [diff] [blame] | 12 | // CHECK: movq $123, -16(%rsp) |
| 13 | mov QWORD PTR [RSP - 16], 123 |
| 14 | // CHECK: movb $97, -17(%rsp) |
| 15 | mov BYTE PTR [RSP - 17], 97 |
| 16 | // CHECK: movl -4(%rsp), %eax |
| 17 | mov EAX, DWORD PTR [RSP - 4] |
Devang Patel | d37ad24 | 2012-01-17 18:00:18 +0000 | [diff] [blame] | 18 | // CHECK: movq (%rsp), %rax |
| 19 | mov RAX, QWORD PTR [RSP] |
| 20 | // CHECK: movl $-4, -4(%rsp) |
| 21 | mov DWORD PTR [RSP - 4], -4 |
| 22 | // CHECK: movq 0, %rcx |
| 23 | mov RCX, QWORD PTR [0] |
| 24 | // CHECK: movl -24(%rsp,%rax,4), %eax |
| 25 | mov EAX, DWORD PTR [RSP + 4*RAX - 24] |
Devang Patel | 6220fea | 2012-01-17 21:25:10 +0000 | [diff] [blame] | 26 | // CHECK: movb %dil, (%rdx,%rcx) |
| 27 | mov BYTE PTR [RDX + RCX], DIL |
Devang Patel | 2f8af1d | 2012-01-17 21:48:03 +0000 | [diff] [blame] | 28 | // CHECK: movzwl 2(%rcx), %edi |
| 29 | movzx EDI, WORD PTR [RCX + 2] |
Devang Patel | 40bced0 | 2012-01-17 18:30:45 +0000 | [diff] [blame] | 30 | // CHECK: callq _test |
| 31 | call _test |
Devang Patel | b8ba13f | 2012-01-18 22:42:29 +0000 | [diff] [blame^] | 32 | // CHECK: andw $12, %ax |
| 33 | and ax, 12 |
| 34 | // CHECK: andw $-12, %ax |
| 35 | and ax, -12 |
| 36 | // CHECK: andw $257, %ax |
| 37 | and ax, 257 |
| 38 | // CHECK: andw $-257, %ax |
| 39 | and ax, -257 |
| 40 | // CHECK: andl $12, %eax |
| 41 | and eax, 12 |
| 42 | // CHECK: andl $-12, %eax |
| 43 | and eax, -12 |
| 44 | // CHECK: andl $257, %eax |
| 45 | and eax, 257 |
| 46 | // CHECK: andl $-257, %eax |
| 47 | and eax, -257 |
| 48 | // CHECK: andq $12, %rax |
| 49 | and rax, 12 |
| 50 | // CHECK: andq $-12, %rax |
| 51 | and rax, -12 |
| 52 | // CHECK: andq $257, %rax |
| 53 | and rax, 257 |
| 54 | // CHECK: andq $-257, %rax |
| 55 | and rax, -257 |
Devang Patel | 40bced0 | 2012-01-17 18:30:45 +0000 | [diff] [blame] | 56 | ret |