在 2024/3/7 下午8:52, Xi Ruoyao 写道:
It should be better to extend the expected value before the ll/sc loop
(like what LLVM does), instead of repeating the extending in each
iteration.  Something like:

I wanted to do this at first, but it didn't work out.

But then I thought about it, and there are two benefits to putting it in the middle of ll/sc:

1. If there is an operation that uses the $r4 register after this atomic operation, another

register is required to store $r4.

2. ll.w requires long cycles, so putting an addi.w command after ll.w won't make a difference.

So based on the above, I didn't try again, but directly made a modification like a patch.

Reply via email to