diff options
Diffstat (limited to 'src/GF/Compile/BackOpt.hs')
| -rw-r--r-- | src/GF/Compile/BackOpt.hs | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/GF/Compile/BackOpt.hs b/src/GF/Compile/BackOpt.hs index d68b72635..1c030f8e1 100644 --- a/src/GF/Compile/BackOpt.hs +++ b/src/GF/Compile/BackOpt.hs @@ -10,6 +10,9 @@ -- > CVS $Revision $ -- -- Optimizations on GF source code: sharing, parametrization, value sets. +-- +-- optimization: sharing branches in tables. AR 25\/4\/2003. +-- following advice of Josef Svenningsson ----------------------------------------------------------------------------- module BackOpt (shareModule, OptSpec, shareOpt, paramOpt, valOpt, allOpt) where @@ -22,15 +25,24 @@ import Operations import List import qualified Modules as M --- optimization: sharing branches in tables. AR 25/4/2003 --- following advice of Josef Svenningsson - type OptSpec = [Integer] --- + +doOptFactor :: OptSpec doOptFactor opt = elem 2 opt + +doOptValues :: OptSpec doOptValues opt = elem 3 opt + +shareOpt :: OptSpec shareOpt = [] + +paramOpt :: OptSpec paramOpt = [2] + +valOpt :: OptSpec valOpt = [3] + +allOpt :: OptSpec allOpt = [2,3] shareModule :: OptSpec -> (Ident, SourceModInfo) -> (Ident, SourceModInfo) |
