Carmi Merimovich

Carmi Merimovich

Personal Site

void strcpy(char *x, char *y) {
    while ((*x++ = *y++) != 0);
}
strcpy:
loop:
    lb      t0, 0(a1)   // *y
    sb      t0, 0(a0)   // *x = *y
    addi    a0, a0, 1   // x += 1
    addi    a1, a1, 1   // y += 1
    bne     t0, zero, loop   // if (y[i] != 0) goto loop

    jalr    zero, 0(ra)