1 #include <stdio.h> 2 3 int main() 4 { 5 unsigned long p = 0; 6 register unsigned long *msg = &p; 7 8 /* Load "hi\n\0" into P; then convert the 'i' into an 'h' */ 9 __asm__ volatile ( "iihl %[p],0x0a00\n\t" 10 "iihh %[p],0x6869\n\t" 11 "nihh %[p],0x6868\n\t" : [p] "+d" (p) : : "cc"); 12 13 /* Write P to stdout; should read "hh\n" */ 14 printf("%s", (char *)msg); 15 16 return 0; 17 } 18