Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
clean-compiler-and-rts
compiler
Commits
2f45bde6
Commit
2f45bde6
authored
Mar 04, 2002
by
Diederik van Arkel
Browse files
Export proper new type of transformGroups
parent
d3765110
Changes
2
Hide whitespace changes
Inline
Side-by-side
frontend/frontend.icl
View file @
2f45bde6
...
...
@@ -213,7 +213,7 @@ frontEndInterface options mod_ident search_paths cached_dcl_modules functions_an
// # (components, fun_defs, error) = showComponents2 components 0 fun_defs acc_args error
(components, fun_defs, dcl_types, used_conses, var_heap, type_heaps, expression_heap)
(components, fun_defs, dcl_types, used_conses, var_heap, type_heaps, expression_heap
, acc_args
)
= transformGroups cleanup_info main_dcl_module_n stdStrictLists_module_n (components -*-> "Transform") fun_defs acc_args common_defs imported_funs dcl_types used_conses_in_dynamics type_def_infos var_heap type_heaps expression_heap options.feo_fusion
| options.feo_up_to_phase == FrontEndPhaseTransformGroups
...
...
@@ -324,11 +324,20 @@ where
= (fun_defs, file <<< '\n')
show_component [fun:funs] fun_defs acc_args file
# (fd, fun_defs) = fun_defs![fun]
| fun >= size acc_args
# file = file <<< fd.fun_symb <<< '.' <<< fun <<< " ???"
= show_component funs fun_defs acc_args file
# file = file <<< fd.fun_symb <<< '.' <<< fun <<< " ("
# file = show_producer_status acc_args.[fun].cc_producer file
# file = show_accumulating_arguments acc_args.[fun].cc_args file
# file = show_linear_arguments acc_args.[fun].cc_linear_bits file
= show_component funs fun_defs acc_args (file <<< ") ")
show_producer_status pc file
| pc == True
= file <<< "+:"
= file <<< "-:"
show_accumulating_arguments [ cc : ccs] file
| cc == cPassive
= show_accumulating_arguments ccs (file <<< 'p')
...
...
frontend/trans.dcl
View file @
2f45bde6
...
...
@@ -16,7 +16,7 @@ analyseGroups :: !{# CommonDefs} !{#{#FunType}} !IndexRange !Int !Int !*{! Group
transformGroups
::
!
CleanupInfo
!
Int
!
Int
!*{!
Group
}
!*{#
FunDef
}
!*{!.
ConsClasses
}
!{#
CommonDefs
}
!{#
{#
FunType
}
}
!*
ImportedTypes
!
ImportedConstructors
!*
TypeDefInfos
!*
VarHeap
!*
TypeHeaps
!*
ExpressionHeap
!
Bool
->
(!*{!
Group
},
!*{#
FunDef
},
!*
ImportedTypes
,
!
ImportedConstructors
,
!*
VarHeap
,
!*
TypeHeaps
,
!*
ExpressionHeap
)
->
(!*{!
Group
},
!*{#
FunDef
},
!*
ImportedTypes
,
!
ImportedConstructors
,
!*
VarHeap
,
!*
TypeHeaps
,
!*
ExpressionHeap
,
!*{!
ConsClasses
}
)
partitionateFunctions
::
!*{#
FunDef
}
![
IndexRange
]
->
(!*{!
Group
},
!*{#
FunDef
})
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment