From 807b07dce1f41dc885d7671e8567ba112966ba7b Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Wed, 1 May 2019 15:48:11 +0200 Subject: begin load.xs --- mppa_k1c/TargetPrinter.ml | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'mppa_k1c/TargetPrinter.ml') diff --git a/mppa_k1c/TargetPrinter.ml b/mppa_k1c/TargetPrinter.ml index 506faa1c..47927364 100644 --- a/mppa_k1c/TargetPrinter.ml +++ b/mppa_k1c/TargetPrinter.ml @@ -166,7 +166,11 @@ module Target (*: TARGET*) = let addressing oc = function | AOff ofs -> offset oc ofs - | AReg ro -> ireg oc ro + | AReg ro | ARegXS ro -> ireg oc ro + + let xscale oc = function + | ARegXS _ -> fprintf oc ".xs" + | _ -> () let icond_name = let open Asmvliw in function | ITne | ITneu -> "ne" @@ -342,17 +346,17 @@ module Target (*: TARGET*) = (* Load/Store instructions *) | Plb(rd, ra, adr) -> - fprintf oc " lbs %a = %a[%a]\n" ireg rd addressing adr ireg ra + fprintf oc " lbs%a %a = %a[%a]\n" xscale adr ireg rd addressing adr ireg ra | Plbu(rd, ra, adr) -> - fprintf oc " lbz %a = %a[%a]\n" ireg rd addressing adr ireg ra + fprintf oc " lbz%a %a = %a[%a]\n" xscale adr ireg rd addressing adr ireg ra | Plh(rd, ra, adr) -> - fprintf oc " lhs %a = %a[%a]\n" ireg rd addressing adr ireg ra + fprintf oc " lhs%a %a = %a[%a]\n" xscale adr ireg rd addressing adr ireg ra | Plhu(rd, ra, adr) -> - fprintf oc " lhz %a = %a[%a]\n" ireg rd addressing adr ireg ra + fprintf oc " lhz%a %a = %a[%a]\n" xscale adr ireg rd addressing adr ireg ra | Plw(rd, ra, adr) | Plw_a(rd, ra, adr) | Pfls(rd, ra, adr) -> - fprintf oc " lws %a = %a[%a]\n" ireg rd addressing adr ireg ra + fprintf oc " lws%a %a = %a[%a]\n" xscale adr ireg rd addressing adr ireg ra | Pld(rd, ra, adr) | Pfld(rd, ra, adr) | Pld_a(rd, ra, adr) -> assert Archi.ptr64; - fprintf oc " ld %a = %a[%a]\n" ireg rd addressing adr ireg ra + fprintf oc " ld%a %a = %a[%a]\n" xscale adr ireg rd addressing adr ireg ra | Psb(rd, ra, adr) -> fprintf oc " sb %a[%a] = %a\n" addressing adr ireg ra ireg rd -- cgit