In allocation-tramp, instead of using R11 temp-reg for storing the
address of alloc_tramp, use alloc-tn, because the result of
alloc_tramp will be stored there and its value doesn't have to be
preserved. And most of the time it will be allocated to a
non-64-bit-mode register, allowing to save 2 bytes on encoding.
;;; object.
(defun allocation-tramp (alloc-tn size lowtag)
(inst push size)
- (inst mov temp-reg-tn (make-fixup "alloc_tramp" :foreign))
- (inst call temp-reg-tn)
+ (inst mov alloc-tn (make-fixup "alloc_tramp" :foreign))
+ (inst call alloc-tn)
(inst pop alloc-tn)
(when lowtag
(inst lea alloc-tn (make-ea :byte :base alloc-tn :disp lowtag)))