(in-package "SB!VM")
-(!def-vm-support-routine generate-call-sequence (name style vop)
+(defun generate-call-sequence (name style vop)
(ecase style
(:raw
(values
- `((inst lea temp-reg-tn
- (make-ea :qword :disp (make-fixup ',name :assembly-routine)))
+ `((inst mov temp-reg-tn (make-fixup ',name :assembly-routine))
(inst call temp-reg-tn))
nil))
(:full-call
(values
`((note-this-location ,vop :call-site)
- (inst lea temp-reg-tn
- (make-ea :qword :disp (make-fixup ',name :assembly-routine)))
+ (inst mov temp-reg-tn (make-fixup ',name :assembly-routine))
(inst call temp-reg-tn)
- (note-this-location ,vop :single-value-return)
- (inst jmp :nc single-value)
- (move rsp-tn rbx-tn)
- single-value)
+ (note-this-location ,vop :single-value-return))
'((:save-p :compute-only))))
(:none
(values
- `((inst lea temp-reg-tn
- (make-ea :qword :disp (make-fixup ',name :assembly-routine)))
+ `((inst mov temp-reg-tn (make-fixup ',name :assembly-routine))
(inst jmp temp-reg-tn))
nil))))
-(!def-vm-support-routine generate-return-sequence (style)
+(defun generate-return-sequence (style)
(ecase style
(:raw
`(inst ret))