Skip to content
Snippets Groups Projects
Commit 0c5bd77d authored by ram's avatar ram
Browse files

Changed local call VOPs to not set FP in the branch delay slot, since the new

FP can't be made to conflict with the return PC passing location.  We were
setting FP to the return PC when the two happened to be packed in the same
location.
parent ba674f0f
No related branches found
No related tags found
No related merge requests found
......@@ -385,9 +385,8 @@ default-value-5
env-save)
(:generator 5
(store-stack-tn env-save env-tn)
(inst balix (callee-return-pc-tn callee) target)
(inst lr fp-tn fp)
(no-op)
(inst bali (callee-return-pc-tn callee) target)
(note-this-location vop :unknown-return)
(unassemble
(default-unknown-values node values nvals move-temp nil-temp))
......@@ -412,9 +411,8 @@ default-value-5
env-save)
(:generator 20
(store-stack-tn env-save env-tn)
(inst balix (callee-return-pc-tn callee) target)
(inst lr fp-tn fp)
(no-op)
(inst bali (callee-return-pc-tn callee) target)
(note-this-location vop :unknown-return)
(unassemble
(receive-unknown-values node values-start nvals start count))
......@@ -438,9 +436,8 @@ default-value-5
(:ignore arg-locs args res nfp)
(:vop-var vop)
(:generator 5
(inst balix (callee-return-pc-tn callee) target)
(inst lr fp-tn fp)
(no-op)
(inst bali (callee-return-pc-tn callee) target)
(note-this-location vop :known-return)))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment