tas.s 196 B

12345678910
  1. TEXT _tas(SB), $-8
  2. MOVQ R0, R1 /* l */
  3. tas1:
  4. MOVLL (R1), R0 /* l->key */
  5. BNE R0, tas2
  6. MOVQ $1, R2
  7. MOVLC R2, (R1) /* l->key = 1 */
  8. BEQ R2, tas1 /* write failed, try again? */
  9. tas2:
  10. RET