aboutsummaryrefslogtreecommitdiffstats
path: root/mppa_k1c/PostpassSchedulingOracle.ml
diff options
context:
space:
mode:
authorCyril SIX <cyril.six@kalray.eu>2019-03-19 15:50:22 +0100
committerCyril SIX <cyril.six@kalray.eu>2019-03-19 15:50:22 +0100
commitf321f75979d18ab99f226b2c5d6bbb59bffb5cac (patch)
tree54dfd0c7ce3a0569549120c786026b6b33431254 /mppa_k1c/PostpassSchedulingOracle.ml
parentb169a1c8b88feee186d96c107562aff847caf235 (diff)
downloadcompcert-kvx-f321f75979d18ab99f226b2c5d6bbb59bffb5cac.tar.gz
compcert-kvx-f321f75979d18ab99f226b2c5d6bbb59bffb5cac.zip
Pseudo instruction for 32 bits division, no code generation yet
Diffstat (limited to 'mppa_k1c/PostpassSchedulingOracle.ml')
-rw-r--r--mppa_k1c/PostpassSchedulingOracle.ml3
1 files changed, 2 insertions, 1 deletions
diff --git a/mppa_k1c/PostpassSchedulingOracle.ml b/mppa_k1c/PostpassSchedulingOracle.ml
index ce2fb2ae..ac257af3 100644
--- a/mppa_k1c/PostpassSchedulingOracle.ml
+++ b/mppa_k1c/PostpassSchedulingOracle.ml
@@ -206,6 +206,7 @@ let basic_rec i =
| Pnop -> { inst = "nop"; write_locs = []; read_locs = []; imm = None ; is_control = false}
let expand_rec = function
+ | Pdiv | Pdivu -> { inst = "Pdiv"; write_locs = [Reg (IR GPR0)]; read_locs = [Reg (IR GPR0); Reg (IR GPR1)]; imm = None; is_control = true }
| Pbuiltin _ -> raise OpaqueInstruction
let ctl_flow_rec = function
@@ -477,7 +478,7 @@ let ab_inst_to_real = function
| "Psd" | "Psd_a" | "Pfsd" -> Sd
| "Pcb" | "Pcbu" -> Cb
- | "Pcall" -> Call
+ | "Pcall" | "Pdiv" | "Pdivu" -> Call
| "Picall" -> Icall
| "Pgoto" | "Pj_l" -> Goto
| "Pigoto" -> Igoto