llvm-6502/test/FrontendC/2010-05-18-asmsched.c
Jakob Stoklund Olesen d41bd043d3 Fix test to be less sensitive to coalescing.
This should unbreak llvm-gcc-i386-linux-selfhost.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130927 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-05 16:48:00 +00:00

19 lines
531 B
C

// RUN: %llvmgcc %s -S -O3 -o - | llc -march=x86-64 -mtriple=x86_64-apple-darwin | FileCheck %s
// r9 used to be clobbered before its value was moved to r10. 7993104.
void foo(int x, int y) {
// CHECK: bar
// CHECK-NOT: {{, %r9$}}
// CHECK: movq %r9,
// CHECK: movq {{.*}}, %r9
// CHECK: bar
register int lr9 asm("r9") = x;
register int lr10 asm("r10") = y;
int foo;
asm volatile("bar" : "=r"(lr9) : "r"(lr9), "r"(lr10));
foo = lr9;
lr9 = x;
lr10 = foo;
asm volatile("bar" : "=r"(lr9) : "r"(lr9), "r"(lr10));
}