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