1*073d9f2cSAleksandar Markovic #include <stdio.h>
2*073d9f2cSAleksandar Markovic #include <assert.h>
3*073d9f2cSAleksandar Markovic 
main(void)4*073d9f2cSAleksandar Markovic int main(void)
5*073d9f2cSAleksandar Markovic {
6*073d9f2cSAleksandar Markovic     int value, rd;
7*073d9f2cSAleksandar Markovic     int *p;
8*073d9f2cSAleksandar Markovic     unsigned long addr, index;
9*073d9f2cSAleksandar Markovic     int result;
10*073d9f2cSAleksandar Markovic 
11*073d9f2cSAleksandar Markovic     value  = 0xBCDEF389;
12*073d9f2cSAleksandar Markovic     p = &value;
13*073d9f2cSAleksandar Markovic     addr = (unsigned long)p;
14*073d9f2cSAleksandar Markovic     index  = 0;
15*073d9f2cSAleksandar Markovic     result = 0xFFFFF389;
16*073d9f2cSAleksandar Markovic     __asm
17*073d9f2cSAleksandar Markovic         ("lhx %0, %1(%2)\n\t"
18*073d9f2cSAleksandar Markovic          : "=r"(rd)
19*073d9f2cSAleksandar Markovic          : "r"(index), "r"(addr)
20*073d9f2cSAleksandar Markovic         );
21*073d9f2cSAleksandar Markovic 
22*073d9f2cSAleksandar Markovic     assert(rd == result);
23*073d9f2cSAleksandar Markovic 
24*073d9f2cSAleksandar Markovic     return 0;
25*073d9f2cSAleksandar Markovic }
26