aboutsummaryrefslogtreecommitdiffstats
path: root/scheduling/BTLrenumber.ml
diff options
context:
space:
mode:
Diffstat (limited to 'scheduling/BTLrenumber.ml')
-rw-r--r--scheduling/BTLrenumber.ml50
1 files changed, 0 insertions, 50 deletions
diff --git a/scheduling/BTLrenumber.ml b/scheduling/BTLrenumber.ml
deleted file mode 100644
index f9cacd6a..00000000
--- a/scheduling/BTLrenumber.ml
+++ /dev/null
@@ -1,50 +0,0 @@
-(* XXX uncomment
-open !BTL
-open DebugPrint
-open RTLcommonaux
-open Maps*)
-
-(** A quick note on the BTL renumber algorithm
- This is a simple first version where we try to reuse the entry numbering from RTL.
- In the futur, it would be great to implement a strongly connected components partitionning.
- The numbering is done by a postorder traversal.
- TODO gourdinl : note perso
- - faire un comptage global du nombre d'instructions rtl à générer
- - utiliser la structure d'info créée lors de la génération pour tenter de préserver au max
- la relation d'ordre, avec une heuristique genre (1 + max des succs) pour l'insertion
- - quand il y a un branchement conditionnel, privilégier le parcour du fils gauche en premier
- (afin d'avoir de plus petits numéros à gauche)
-*)
-(*
-let rec get_max_rtl_ninsts code entry =
-let rec postorder_blk ib =
-*)
-
-(* XXX uncomment
-let postorder code entry =
- let renumbered_code = ref PTree.empty in
- let rec renum_ibf e =
- let ibf = get_some @@ PTree.get e code in
- if ibf.binfo.visited then ()
- else (
- ibf.binfo.visited <- true;
- let next_nodes = ref [] in
- let ib = ibf.entry in
- let rec renum_iblock ib =
- match ib with
- in
- let rib = renum_iblock ib in
- ibf.entry <- rib;
- renumbered_code := PTree.set e ibf !renumbered_code;
- let succs = !next_nodes in
- List.iter renum_ibf succs)
- in
- renum_ibf entry
-
-let renumber (f: BTL.coq_function) =
- debug_flag := true;
- let code = f.fn_code in
- let entry = f.fn_entrypoint in
- let renumbered_code = postorder code entry in
- debug_flag := false;
- renumbered_code*)