master
c 30 lines 480 Bytes
Raw
1 #include<stdio.h>
2 #include<assert.h>
3
4 int main()
5 {
6 int rs, rt;
7 int result;
8
9 rs = 0x12345678;
10 rt = 0x87654321;
11 result = 0x87654321;
12 __asm
13 ("prepend %0, %1, 0x00\n\t"
14 : "+r"(rt)
15 : "r"(rs)
16 );
17 assert(rt == result);
18
19 rs = 0x12345678;
20 rt = 0x87654321;
21 result = 0xACF10ECA;
22 __asm
23 ("prepend %0, %1, 0x0F\n\t"
24 : "+r"(rt)
25 : "r"(rs)
26 );
27 assert(rt == result);
28
29 return 0;
30 }