1// { dg-do assemble { target i?86-*-linux* x86_64-*-linux* } } 2// We'd use ebx with 32-bit pic code, so skip. 3// { dg-skip-if "" { ilp32 && { ! nonpic } } { "*" } { "" } } 4// Origin: "Weidmann, Nicholas" <nicholas.weidmann@swx.ch> 5 6template<int i> int foo(int v) 7{ 8 __asm__ __volatile__("addl %1, %0" : "=a" (v) : "b" (i)); 9 10 return v; 11} 12 13int bar(int i) 14{ 15 return foo<123>(i); 16} 17 18