Commit d960a58d authored by ram's avatar ram
Browse files

Fixed the CALL-FORIEGN-FUNCTION IR2-Convert optimizer to understand the

new format for move-arg VOPs.  Although in general there can be multiple
move arg vops, I decided to assert that there is a unique one in this
case of a move within an SC, so that I wouldn't have to mess around
writing code to select the right one.
parent 8bcb05a8
......@@ -518,11 +518,14 @@
(sc (tn-sc tn))
(scn (sc-number sc))
(temp-tn (make-representation-tn (tn-primitive-type tn)
scn)))
scn))
(move-arg-vops (svref (sc-move-arg-vops sc) scn)))
(assert arg)
(assert (= (length move-arg-vops) 1) ()
"No unique move-arg-vop for moves in SC ~S."
(sc-name sc))
(emit-move call block (continuation-tn call block arg) temp-tn)
(emit-move-arg-template call block
(svref (sc-move-arg-vops sc) scn)
(emit-move-arg-template call block (first move-arg-vops)
temp-tn nsp tn)))
(assert (null args))))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment