aboutsummaryrefslogtreecommitdiff
path: root/frontend/transform.dcl
diff options
context:
space:
mode:
authorjohnvg2001-06-20 10:58:19 +0000
committerjohnvg2001-06-20 10:58:19 +0000
commit8ab3de43262cfe5b5b1f33ce87957f9362bc27c3 (patch)
tree67e8cc90396224f66b863769188e5123fd7ff4d4 /frontend/transform.dcl
parentremoved comments (diff)
optimise && and ||
(new: transform.[id]cl, check.icl, generics.icl) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@489 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
Diffstat (limited to 'frontend/transform.dcl')
-rw-r--r--frontend/transform.dcl10
1 files changed, 5 insertions, 5 deletions
diff --git a/frontend/transform.dcl b/frontend/transform.dcl
index 39c38f3..77ff19d 100644
--- a/frontend/transform.dcl
+++ b/frontend/transform.dcl
@@ -6,10 +6,12 @@ import syntax, checksupport
{ group_members :: ![Int]
}
-partitionateAndLiftFunctions :: ![IndexRange] !Index !PredefinedSymbol !*{# FunDef} !*{# DclModule} !*VarHeap !*ExpressionHeap !*SymbolTable !*ErrorAdmin
+:: PredefSymbolsForTransform = { predef_alias_dummy :: !PredefinedSymbol, predef_and :: !PredefinedSymbol, predef_or :: !PredefinedSymbol };
+
+partitionateAndLiftFunctions :: ![IndexRange] !Index !PredefSymbolsForTransform !*{# FunDef} !*{# DclModule} !*VarHeap !*ExpressionHeap !*SymbolTable !*ErrorAdmin
-> (!*{! Group}, !*{# FunDef}, !.{# DclModule}, !*VarHeap, !*ExpressionHeap, !*SymbolTable, !*ErrorAdmin )
-partitionateMacros :: !IndexRange !Index !PredefinedSymbol !*{# FunDef} !*{# DclModule} !*VarHeap !*ExpressionHeap !*SymbolTable !*ErrorAdmin
+partitionateMacros :: !IndexRange !Index !PredefSymbolsForTransform !*{# FunDef} !*{# DclModule} !*VarHeap !*ExpressionHeap !*SymbolTable !*ErrorAdmin
-> (!*{# FunDef}, !.{# DclModule}, !*VarHeap, !*ExpressionHeap, !*SymbolTable, !*ErrorAdmin )
:: CopiedLocalFunctions
@@ -20,10 +22,8 @@ partitionateMacros :: !IndexRange !Index !PredefinedSymbol !*{# FunDef} !*{# Dcl
{ cos_var_heap :: !.VarHeap
, cos_symbol_heap :: !.ExpressionHeap
, cos_error :: !.ErrorAdmin
- , cos_alias_dummy :: !PredefinedSymbol
-// MV ...
+ , cos_predef_symbols_for_transform :: !PredefSymbolsForTransform
, cos_used_dynamics :: !.{#Bool}
-// ... MV
}
determineVariablesAndRefCounts :: ![FreeVar] !Expression !*CollectState -> (!Expression , ![FreeVar], ![FreeVar], !*CollectState)