// RUN: %llvmgcc %s -S -emit-llvm -o - | grep {call void asm}
union U { int x; char* p; };
void foo() {
union U bar;
__asm__ volatile("foo %0\n" :: "r"(bar));
}