// REQUIRES: arm-registered-target
// RUN: %clang_cc1 -triple armv7-apple-darwin9 -emit-llvm -w -o - %s | FileCheck %s

typedef long long int64_t;
typedef unsigned int uint32_t;

int64_t foo(int64_t v, volatile int64_t *p)
{
  register uint32_t rl asm("r1");
  register uint32_t rh asm("r2");

  int64_t r;
  uint32_t t;

  __asm__ __volatile__(							\
		       "ldrexd%[_rl], %[_rh], [%[_p]]"			\
		       : [_rl] "=&r" (rl), [_rh] "=&r" (rh)		\
		       : [_p] "p" (p) : "memory");

  // CHECK: call { i32, i32 } asm sideeffect "ldrexd$0, $1, [$2]", "=&{r1},=&{r2},r,~{memory}"(i64*

  return r;
}

// Make sure we translate register names properly.
void bar (void) {
  register unsigned int rn asm("r14");
  register unsigned int d asm("r2");

  // CHECK: call i32 asm sideeffect "sub $1, $1, #32", "={r2},{lr}"
  asm volatile ("sub %1, %1, #32" : "=r"(d) : "r"(rn));
}
