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 } 25