diff options
author | Cyril SIX <cyril.six@kalray.eu> | 2018-04-20 14:38:06 +0200 |
---|---|---|
committer | Cyril SIX <cyril.six@kalray.eu> | 2018-04-20 14:38:06 +0200 |
commit | f73f3a4e5dda58408c82fe2657ddb251532ea894 (patch) | |
tree | c2357f7c06864719345ed6e3e9999ddf76cf6de4 /mppa_k1c/TargetPrinter.ml | |
parent | 7b3d2c0ab46292a47256ff484b812d3d3b2846c2 (diff) | |
download | compcert-kvx-f73f3a4e5dda58408c82fe2657ddb251532ea894.tar.gz compcert-kvx-f73f3a4e5dda58408c82fe2657ddb251532ea894.zip |
MPPA - added remaining ops ; mult, div and floating point ops missing
Diffstat (limited to 'mppa_k1c/TargetPrinter.ml')
-rw-r--r-- | mppa_k1c/TargetPrinter.ml | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/mppa_k1c/TargetPrinter.ml b/mppa_k1c/TargetPrinter.ml index b463a9c5..01a4e269 100644 --- a/mppa_k1c/TargetPrinter.ml +++ b/mppa_k1c/TargetPrinter.ml @@ -214,6 +214,8 @@ module Target : TARGET = fprintf oc " addd %a = %a, %a\n;;\n" ireg rd ireg rs1 ireg rs2 | Psubw(rd, rs1, rs2) -> + fprintf oc " sbfw %a = %a, %a\n;;\n" ireg rd ireg rs1 ireg rs2 + | Psubl(rd, rs1, rs2) -> fprintf oc " sbfwd %a = %a, %a\n;;\n" ireg rd ireg rs1 ireg rs2 | Pmulw(rd, rs1, rs2) -> @@ -250,6 +252,19 @@ module Target : TARGET = fprintf oc " ord %a = %a, %a\n;;\n" ireg rd ireg rs coqint64 imm | Porl(rd, rs1, rs2) -> assert Archi.ptr64; fprintf oc " ord %a = %a, %a\n;;\n" ireg rd ireg rs1 ireg rs2 + | Poriw (rd, rs, imm) -> + fprintf oc " orw %a = %a, %a\n;;\n" ireg rd ireg rs coqint64 imm + | Porw(rd, rs1, rs2) -> + fprintf oc " orw %a = %a, %a\n;;\n" ireg rd ireg rs1 ireg rs2 + + | Pxoriw (rd, rs, imm) -> + fprintf oc " xorw %a = %a, %a\n;;\n" ireg rd ireg rs coqint64 imm + | Pxorw(rd, rs1, rs2) -> + fprintf oc " xorw %a = %a, %a\n;;\n" ireg rd ireg rs1 ireg rs2 + | Pxoril (rd, rs, imm) -> assert Archi.ptr64; + fprintf oc " xord %a = %a, %a\n;;\n" ireg rd ireg rs coqint64 imm + | Pxorl(rd, rs1, rs2) -> assert Archi.ptr64; + fprintf oc " xord %a = %a, %a\n;;\n" ireg rd ireg rs1 ireg rs2 | Pandiw (rd, rs, imm) -> fprintf oc " andd %a = %a, %a\n;;\n" ireg rd ireg rs coqint64 imm |