mirror of
git://git.code.sf.net/p/sbcl/sbcl
synced 2026-09-10 07:26:40 -04:00
Fix function call source location on ppc64
This commit is contained in:
parent
3d6eb5dbbb
commit
f72384c2c7
|
|
@ -173,16 +173,16 @@
|
|||
(defun default-unknown-values (vop values nvals move-temp temp lra-label)
|
||||
(declare (type (or tn-ref null) values)
|
||||
(type unsigned-byte nvals) (type tn move-temp temp))
|
||||
(note-this-location vop (if (<= nvals 1)
|
||||
:single-value-return
|
||||
:unknown-return))
|
||||
(inst compute-code-from-lip code-tn lra-tn lra-label temp)
|
||||
(if (<= nvals 1)
|
||||
(progn
|
||||
(note-this-location vop :single-value-return)
|
||||
(inst isel csp-tn csp-tn ocfp-tn :eq))
|
||||
(inst isel csp-tn csp-tn ocfp-tn :eq)
|
||||
(let ((regs-defaulted (gen-label))
|
||||
(defaulting-done (gen-label))
|
||||
(default-stack-vals (gen-label)))
|
||||
;; Branch off to the MV case.
|
||||
(note-this-location vop :unknown-return)
|
||||
(inst b? :ne regs-defaulted)
|
||||
|
||||
;; Do the single value case.
|
||||
|
|
@ -700,14 +700,14 @@
|
|||
(do-next-filler)
|
||||
(return)))
|
||||
|
||||
(note-this-location vop :call-site)
|
||||
|
||||
,@(if (eq return :tail)
|
||||
'((inst mtlr return-pc-pass)
|
||||
(inst mtctr entry-point)
|
||||
(note-this-location vop :call-site)
|
||||
(inst bctr))
|
||||
'((emit-alignment 3 :long-nop)
|
||||
(inst mtctr entry-point)
|
||||
(note-this-location vop :call-site)
|
||||
(inst bctrl))))
|
||||
|
||||
,@(ecase return
|
||||
|
|
|
|||
|
|
@ -264,7 +264,7 @@
|
|||
(defun throw-test ()
|
||||
(throw 'no-such-tag t))
|
||||
(with-test (:name (:backtrace :throw :no-such-tag)
|
||||
:fails-on (or :arm :mips :ppc :riscv))
|
||||
:fails-on (or :arm :mips :riscv))
|
||||
(assert-backtrace #'throw-test '((throw-test))))
|
||||
|
||||
(funcall (checked-compile
|
||||
|
|
@ -277,7 +277,7 @@
|
|||
(bar x)
|
||||
(bar v)))))
|
||||
:allow-style-warnings t))
|
||||
(with-test (:name (:backtrace :bug-308926) :skipped-on :interpreter :fails-on (:or :ppc :ppc64))
|
||||
(with-test (:name (:backtrace :bug-308926) :skipped-on :interpreter)
|
||||
(assert-backtrace (lambda () (bug-308926 13))
|
||||
'(((flet bar :in bug-308926) 13)
|
||||
(bug-308926 &rest t))))
|
||||
|
|
|
|||
|
|
@ -1688,5 +1688,8 @@
|
|||
(#(A49305EF D0241AE7 E55E7F8C EE9A5410)
|
||||
"(SB-PCL::%CLASS SB-PCL::%PARAMETER SB-PCL::%VARIABLE-REBINDING SPECIAL)"
|
||||
"((& (>> val 8) 3))")
|
||||
(#(359CB801 4D28C61A 53351B33 A2DD0906 B9B79FF6)
|
||||
"(FUNCTION SB-IMPL::PREDICATE SB-IMPL::KEY SB-IMPL::TEST SB-IMPL::TEST-NOT)"
|
||||
"((& (^ (>> val 3) (>> val 6)) 7))")
|
||||
)
|
||||
;; EOF
|
||||
|
|
|
|||
Loading…
Reference in a new issue