aboutsummaryrefslogtreecommitdiffstats
path: root/mppa_k1c/PostpassSchedulingOracle.ml
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-03-16 19:00:55 +0100
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-03-16 19:00:55 +0100
commit2227019e15866870f87488630f17cbb0797d1786 (patch)
tree2a69968dc2dae750de701aab41e634690396785e /mppa_k1c/PostpassSchedulingOracle.ml
parent4e3b46ca2a30abf520672f4b1a28f91f171f6e7e (diff)
downloadcompcert-kvx-2227019e15866870f87488630f17cbb0797d1786.tar.gz
compcert-kvx-2227019e15866870f87488630f17cbb0797d1786.zip
nxor
Diffstat (limited to 'mppa_k1c/PostpassSchedulingOracle.ml')
-rw-r--r--mppa_k1c/PostpassSchedulingOracle.ml9
1 files changed, 6 insertions, 3 deletions
diff --git a/mppa_k1c/PostpassSchedulingOracle.ml b/mppa_k1c/PostpassSchedulingOracle.ml
index c674bf3e..2d25c281 100644
--- a/mppa_k1c/PostpassSchedulingOracle.ml
+++ b/mppa_k1c/PostpassSchedulingOracle.ml
@@ -65,6 +65,7 @@ let arith_rrr_str = function
| Porw -> "Porw"
| Pnorw -> "Pnorw"
| Pxorw -> "Pxorw"
+ | Pnxorw -> "Pnxorw"
| Psraw -> "Psraw"
| Psrlw -> "Psrlw"
| Psllw -> "Psllw"
@@ -92,6 +93,7 @@ let arith_rri32_str = function
| Poriw -> "Poriw"
| Pnoriw -> "Pnoriw"
| Pxoriw -> "Pxoriw"
+ | Pnxoriw -> "Pnxoriw"
| Psraiw -> "Psraiw"
| Psrliw -> "Psrliw"
| Pslliw -> "Pslliw"
@@ -382,7 +384,7 @@ type real_instruction =
(* ALU *)
| Addw | Andw | Compw | Mulw | Orw | Sbfw | Sraw | Srlw | Sllw | Rorw | Xorw
| Addd | Andd | Compd | Muld | Ord | Sbfd | Srad | Srld | Slld | Xord
- | Nandw | Norw
+ | Nandw | Norw | Nxorw
| Make | Nop | Sxwd | Zxwd
(* LSU *)
| Lbs | Lbz | Lhs | Lhz | Lws | Ld
@@ -420,6 +422,7 @@ let ab_inst_to_real = function
| "Proriw" -> Rorw
| "Pslll" | "Psllil" -> Slld
| "Pxorw" | "Pxoriw" -> Xorw
+ | "Pnxorw" | "Pnxoriw" -> Nxorw
| "Pxorl" | "Pxoril" -> Xord
| "Pmake" | "Pmakel" | "Pmakefs" | "Pmakef" | "Ploadsymbol" -> Make
| "Pnop" | "Pcvtw2l" -> Nop
@@ -482,7 +485,7 @@ let rec_to_usage r =
(* I do not know yet in which context Ofslow can be used by CompCert *)
and real_inst = ab_inst_to_real r.inst
in match real_inst with
- | Addw | Andw | Nandw | Orw | Norw | Sbfw | Xorw ->
+ | Addw | Andw | Nandw | Orw | Norw | Sbfw | Xorw | Nxorw ->
(match encoding with None | Some U6 | Some S10 -> alu_tiny
| Some U27L5 | Some U27L10 -> alu_tiny_x
| _ -> raise InvalidEncoding)
@@ -535,7 +538,7 @@ let rec_to_usage r =
let real_inst_to_latency = function
| Nop -> 0 (* Only goes through ID *)
| Addw | Andw | Compw | Orw | Sbfw | Sraw | Srlw | Sllw | Xorw
- | Rorw | Nandw | Norw
+ | Rorw | Nandw | Norw | Nxorw
| Addd | Andd | Compd | Ord | Sbfd | Srad | Srld | Slld | Xord | Make
| Sxwd | Zxwd | Fcompw | Fcompd
-> 1