#include int main() { unsigned int r1, r2; unsigned int v[2]; v[0] = 15; v[1] = 6; __asm__ volatile ( "llwp $t0, $t1, 0(%2) \n\t" "addiu $t0, $t0, 5 \n\t" "scwp $t0, $t1, 0(%2) \n\t" "move %0, $t0 \n\t" "move %1, $t1 \n\t" : "=r" (r1), "=r" (r2) : "r" (v) : "$t0", "$t1", "memory"); printf("r1 = %u, r2 = %u, v[0] = %u, v[1] = %u\n", r1, r2, v[0], v[1]); return 0; }