commit c237d0dd746f9991b3578490e47c696cab4b2b29
parent 0ae8564b3cd63fba47e7581f92e25a1964cd2fe4
Author: Quentin Carbonneaux <quentin.carbonneaux@yale.edu>
Date: Mon, 15 Feb 2016 15:37:58 -0500
quickly patch emit (fp load and store)
Diffstat:
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/lisc/emit.c b/lisc/emit.c
@@ -45,11 +45,15 @@ static struct {
{ OSub, Ka, "-sub%k %1, %=" },
{ OAnd, Ki, "+and%k %1, %=" },
{ OMul, Ki, "+imul%k %1, %=" },
+ { OMul, Ks, "+mulss %1, %=" }, /* fixme */
+ { OMul, Kd, "+mulsd %1, %=" },
{ ODiv, Ka, "-div%k %1, %=" },
- { OStorel, Ki, "movq %L0, %M1" },
- { OStorew, Ki, "movl %W0, %M1" },
- { OStoreh, Ki, "movw %H0, %M1" },
- { OStoreb, Ki, "movb %B0, %M1" },
+ { OStorel, Ka, "movq %L0, %M1" },
+ { OStorew, Ka, "movl %W0, %M1" },
+ { OStoreh, Ka, "movw %H0, %M1" },
+ { OStoreb, Ka, "movb %B0, %M1" },
+ { OStores, Ka, "movss %S0, %M1" },
+ { OStored, Ka, "movsd %D0, %M1" },
{ OLoadl, Kl, "movq %M0, %=" },
{ OLoadsw, Kl, "movslq %M0, %L=" },
{ OLoadsw, Kw, "movl %M0, %W=" },
@@ -58,6 +62,8 @@ static struct {
{ OLoaduh, Ki, "movzw%k %M0, %=" },
{ OLoadsb, Ki, "movsb%k %M0, %=" },
{ OLoadub, Ki, "movzb%k %M0, %=" },
+ { OLoads, Ks, "movss %M0, %=" }, /* fixme, Kf */
+ { OLoadd, Kd, "movsd %M0, %=" },
{ OExtsw, Kl, "movslq %W0, %L=" },
{ OExtuw, Kl, "movl %W0, %W=" },
{ OExtsh, Ki, "movsw%k %H0, %=" },