Earlier quoted context omitted.
> The operations C gives you map 1-to-1 with assembly int test(int x, int y) { return x % y; } test: // @test sdiv w8, w0, w1 msub w0, w8, w1, w0 ret Surprisingly, assembly doesn't have the remainder instruction, but instead it has a multiply-then-subtract instruction which is not corresponding 1-to-1 to anything in C.
x86 doesn't have remainder. Other instruction sets do. But yeah I agree with your point. Some targets might not even have multiply.
The code in the comment you replied to is 64-bit ARM assembly.