- (let ((error (generate-error-code nil tls-exhausted-error)))
- (inst cmp target (fixnumize tls-size))
- (inst jmp :ge error))
+ (let ((not-error (gen-label))
+ (error (generate-error-code nil 'tls-exhausted-error)))
+ (inst cmp target (ash tls-size word-shift))
+ (inst jmp :l not-error)
+ (%clear-pseudo-atomic)
+ (inst jmp error)
+ (emit-label not-error))