aboutsummaryrefslogtreecommitdiffstats
path: root/mppa_k1c/PostpassSchedulingOracle.ml
diff options
context:
space:
mode:
authorCyril SIX <cyril.six@kalray.eu>2019-03-13 15:42:32 +0100
committerCyril SIX <cyril.six@kalray.eu>2019-03-13 15:42:32 +0100
commit802badd4bdf9b0e836935b74a25facb245558004 (patch)
tree003f444cbcd32bc42f81a4314ba9bc5ef9ca753d /mppa_k1c/PostpassSchedulingOracle.ml
parenteb56a0fcc6f9f91064b6b0707e92c3b734457ccd (diff)
downloadcompcert-kvx-802badd4bdf9b0e836935b74a25facb245558004.tar.gz
compcert-kvx-802badd4bdf9b0e836935b74a25facb245558004.zip
Corrigé certaines latences (Store -> 1 i/o 3, Set -> 4 i/o 3)
Diffstat (limited to 'mppa_k1c/PostpassSchedulingOracle.ml')
-rw-r--r--mppa_k1c/PostpassSchedulingOracle.ml7
1 files changed, 3 insertions, 4 deletions
diff --git a/mppa_k1c/PostpassSchedulingOracle.ml b/mppa_k1c/PostpassSchedulingOracle.ml
index 3dee7622..9700776c 100644
--- a/mppa_k1c/PostpassSchedulingOracle.ml
+++ b/mppa_k1c/PostpassSchedulingOracle.ml
@@ -529,11 +529,10 @@ let real_inst_to_latency = function
-> 1
| Floatwz | Floatuwz | Fixeduwz | Fixedwz | Floatdz | Floatudz | Fixeddz | Fixedudz -> 4
| Mulw | Muld -> 2 (* FIXME - WORST CASE. If it's S10 then it's only 1 *)
- | Lbs | Lbz | Lhs | Lhz | Lws | Ld
- | Sb | Sh | Sw | Sd
- -> 3 (* FIXME - random value *)
+ | Lbs | Lbz | Lhs | Lhz | Lws | Ld -> 3
+ | Sb | Sh | Sw | Sd -> 1 (* See k1c-Optimization.pdf page 19 *)
| Get -> 1
- | Set -> 3
+ | Set -> 4 (* According to the manual should be 3, but I measured 4 *)
| Icall | Call | Cb | Igoto | Goto | Ret -> 42 (* Should not matter since it's the final instruction of the basic block *)
| Fnegd | Fnegw | Fabsd | Fabsw | Fwidenlwd | Fnarrowdw -> 1
| Faddd | Faddw | Fsbfd | Fsbfw | Fmuld | Fmulw -> 4