Home | History | Annotate | Download | only in s390x
      1 #include <stdio.h>
      2 
      3 static signed int test[] ={
      4 	0,
      5 	1,
      6 	-1,
      7 	0x7fffffff,
      8 	0x80000000,
      9 	0x12345678,
     10 	0x87654321,
     11 	0x55555555,
     12 	0x11111111,
     13 	0xaaaaaaaa,
     14 };
     15 
     16 
     17 static unsigned long hex_to_dec(signed int num)
     18 {
     19 	unsigned long addr = 0;
     20 
     21 	asm volatile(
     22 	"       cvd %2,%0"
     23 		: "=m" (addr) : "a" (&addr) , "d" (num) : "memory");
     24 	return addr;
     25 }
     26 
     27 int main()
     28 {
     29 	int i;
     30 
     31 	for (i = 0; i < sizeof(test) / sizeof(test[0]); i++)
     32 		printf("%lx\n", hex_to_dec(test[i]));
     33 	return 0;
     34 }
     35