ref: 332f070e5a51e5fcc1f2f17f15f67aa98a01b5f4
dir: /sys/src/ape/lib/ap/alpha/tas.s/
TEXT tas(SB), $-8 MOVQ R0, R1 /* l */ tas1: MOVLL (R1), R0 /* l->key */ BNE R0, tas2 MOVQ $1, R2 MOVLC R2, (R1) /* l->key = 1 */ BEQ R2, tas1 /* write failed, try again? */ tas2: RET