150
|
1 // RUN: %clang_cc1 -triple i386-unknown-unknown -fasm-blocks -O0 -emit-llvm -S %s -o - | FileCheck %s
|
|
2 // REQUIRES: x86-registered-target
|
|
3
|
|
4 void f() {
|
|
5 __asm mov eax, ebx
|
|
6 __asm mov ebx, ecx
|
|
7 __asm__("movl %ecx, %edx");
|
|
8 // CHECK: movl %ebx, %eax
|
|
9 // CHECK: movl %ecx, %ebx
|
|
10 // CHECK: movl %ecx, %edx
|
|
11
|
|
12 __asm mov eax, ebx
|
|
13 __asm volatile ("movl %ecx, %edx");
|
|
14 // CHECK: movl %ebx, %eax
|
|
15 // CHECK: movl %ecx, %edx
|
|
16
|
|
17 __asm volatile goto ("movl %ecx, %edx");
|
|
18 // CHECK: movl %ecx, %edx
|
|
19
|
|
20 __asm mov eax, ebx
|
|
21 __asm goto ("movl %ecx, %edx");
|
|
22 // CHECK: movl %ebx, %eax
|
|
23 // CHECK: movl %ecx, %edx
|
|
24 }
|