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