From b54721f58c2ecb65ce554d8b34f214d5121a2b0c Mon Sep 17 00:00:00 2001 From: xleroy Date: Wed, 27 Oct 2010 09:23:19 +0000 Subject: Various algorithmic improvements that reduce compile times (thanks Alexandre Pilkiewicz): - Lattice: preserve sharing in "combine" operation - Kildall: use splay heaps (lib/Heaps.v) for node sets - RTLgen: add a "nop" before loops so that natural enumeration of nodes coincides with (reverse) postorder - Maps: add PTree.map1 operation, use it in RTL and LTL. - Driver: increase minor heap size git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@1543 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e --- backend/RTL.v | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'backend/RTL.v') diff --git a/backend/RTL.v b/backend/RTL.v index 1c309a0..208c7b1 100644 --- a/backend/RTL.v +++ b/backend/RTL.v @@ -368,7 +368,7 @@ Definition successors_instr (i: instruction) : list node := end. Definition successors (f: function) : PTree.t (list node) := - PTree.map (fun pc i => successors_instr i) f.(fn_code). + PTree.map1 successors_instr f.(fn_code). (** Transformation of a RTL function instruction by instruction. This applies a given transformation function to all instructions -- cgit v1.2.3