diff options
| author | aarne <unknown> | 2005-09-18 21:55:46 +0000 |
|---|---|---|
| committer | aarne <unknown> | 2005-09-18 21:55:46 +0000 |
| commit | db4cf670d078e0e72883b3af1b28e665326027d9 (patch) | |
| tree | 20219be8fb4034f80cec1492aedbf56f080659cc /src/GF/Compile/ShellState.hs | |
| parent | 076452779cdfefa45888935ab24ed342d8e56b54 (diff) | |
common subexp elimination
Diffstat (limited to 'src/GF/Compile/ShellState.hs')
| -rw-r--r-- | src/GF/Compile/ShellState.hs | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/GF/Compile/ShellState.hs b/src/GF/Compile/ShellState.hs index a484b50e8..0d4c59652 100644 --- a/src/GF/Compile/ShellState.hs +++ b/src/GF/Compile/ShellState.hs @@ -5,9 +5,9 @@ -- Stability : (stable) -- Portability : (portable) -- --- > CVS $Date: 2005/09/01 09:53:18 $ --- > CVS $Author: peb $ --- > CVS $Revision: 1.46 $ +-- > CVS $Date: 2005/09/18 22:55:46 $ +-- > CVS $Author: aarne $ +-- > CVS $Revision: 1.47 $ -- -- (Description of the module) ----------------------------------------------------------------------------- @@ -21,6 +21,7 @@ import GF.Grammar.Macros import GF.Grammar.MMacros import GF.Canon.Look +import GF.Canon.Subexpressions import GF.Grammar.LookAbs import GF.Compile.ModDeps import qualified GF.Infra.Modules as M @@ -185,7 +186,8 @@ updateShellState opts mcnc sh ((_,sgr,gr),rts) = do let concrs = maybe [] (M.allConcretes cgr) abstr0 concr0 = ifNull Nothing (return . head) concrs notInrts f = notElem f $ map fst rts - cfs <- mapM (canon2cf opts cgr) concrs --- would not need to update all... + sub = if oElem elimSubs opts then unSubelimCanon else id + cfs <- mapM (canon2cf opts (sub cgr)) concrs --- why need to update all... let pinfosOld = map (CnvOld.pInfo opts cgr) concrs -- peb 18/6 (OBSOLETE) |
