From 972f6b9890ea3644626fc097e460035028b940eb Mon Sep 17 00:00:00 2001 From: Léo Gourdin Date: Fri, 4 Dec 2020 23:26:01 +0100 Subject: a first working draft on ldp/stp peephole --- aarch64/TargetPrinter.ml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'aarch64/TargetPrinter.ml') diff --git a/aarch64/TargetPrinter.ml b/aarch64/TargetPrinter.ml index 24a64aaf..c336fb1e 100644 --- a/aarch64/TargetPrinter.ml +++ b/aarch64/TargetPrinter.ml @@ -291,7 +291,9 @@ module Target (*: TARGET*) = fprintf oc " strb %a, %a\n" wreg rs addressing a | Pstrh(rs, a) -> fprintf oc " strh %a, %a\n" wreg rs addressing a - | Pstp(rs1, rs2, a) -> + | Pstpw(rs1, rs2, a) -> + fprintf oc " stp %a, %a, %a\n" wreg rs1 wreg rs2 addressing a + | Pstpx(rs1, rs2, a) -> fprintf oc " stp %a, %a, %a\n" xreg rs1 xreg rs2 addressing a (* Integer arithmetic, immediate *) | Paddimm(sz, rd, r1, n) -> @@ -485,8 +487,8 @@ module Target (*: TARGET*) = | Pfsel(rd, r1, r2, c) -> fprintf oc " fcsel %a, %a, %a, %s\n" dreg rd dreg r1 dreg r2 (condition_name c) (* No-op *) - | Pnop -> - fprintf oc " nop\n" + | Pnop -> () + (*fprintf oc " nop\n"*) (* Pseudo-instructions expanded in Asmexpand *) | Pallocframe(sz, linkofs) -> assert false | Pfreeframe(sz, linkofs) -> assert false -- cgit