From c63878b450689f29ae03a04a9767a5d85893ead6 Mon Sep 17 00:00:00 2001 From: ronny Date: Mon, 25 Jun 2001 16:16:00 +0000 Subject: generate .depend for current dcl module git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@504 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d --- backend/backend.dcl | 4 ++-- backend/backend.icl | 4 ++-- backend/backendconvert.icl | 22 ++++++++++++++++------ 3 files changed, 20 insertions(+), 10 deletions(-) (limited to 'backend') diff --git a/backend/backend.dcl b/backend/backend.dcl index aa3e18d..3ed50f3 100644 --- a/backend/backend.dcl +++ b/backend/backend.dcl @@ -247,9 +247,9 @@ BEDeclareDynamicTypeSymbol :: !Int !Int !BackEnd -> BackEnd; // void BEDeclareDynamicTypeSymbol (int typeIndex,int moduleIndex); BEDynamicTempTypeSymbol :: !BackEnd -> (!BESymbolP,!BackEnd); // BESymbolP BEDynamicTempTypeSymbol (); -kBEVersionCurrent:==0x02000208; +kBEVersionCurrent:==0x02000209; kBEVersionOldestDefinition:==0x02000204; -kBEVersionOldestImplementation:==0x02000208; +kBEVersionOldestImplementation:==0x02000209; kBEDebug:==1; kPredefinedModuleIndex:==1; BENoAnnot:==0; diff --git a/backend/backend.icl b/backend/backend.icl index 6fd12cc..3381d4a 100644 --- a/backend/backend.icl +++ b/backend/backend.icl @@ -671,9 +671,9 @@ BEDynamicTempTypeSymbol a0 = code { ccall BEDynamicTempTypeSymbol ":I:I" }; // BESymbolP BEDynamicTempTypeSymbol (); -kBEVersionCurrent:==0x02000208; +kBEVersionCurrent:==0x02000209; kBEVersionOldestDefinition:==0x02000204; -kBEVersionOldestImplementation:==0x02000208; +kBEVersionOldestImplementation:==0x02000209; kBEDebug:==1; kPredefinedModuleIndex:==1; BENoAnnot:==0; diff --git a/backend/backendconvert.icl b/backend/backendconvert.icl index a7f4f07..4cccf9b 100644 --- a/backend/backendconvert.icl +++ b/backend/backendconvert.icl @@ -464,13 +464,23 @@ where // otherwise = defineDclModule varHeap moduleIndex dclModule +isSystem :: ModuleKind -> Bool +isSystem MK_System + = True +isSystem MK_Module + = False +isSystem _ + = abort "backendconvert:isSystem, unknown module kind" + declareCurrentDclModule :: IclModule DclModule Int -> BackEnder -declareCurrentDclModule {icl_common} {dcl_name, dcl_functions, dcl_is_system, dcl_common} main_dcl_module_n - = appBackEnd (BEDeclareDclModule main_dcl_module_n dcl_name.id_name dcl_is_system (size dcl_functions) (size icl_common.com_type_defs) (size dcl_common.com_cons_defs) (size dcl_common.com_selector_defs)) - +declareCurrentDclModule _ {dcl_module_kind=MK_None} _ + = identity +declareCurrentDclModule {icl_common} {dcl_name, dcl_functions, dcl_module_kind, dcl_common} main_dcl_module_n + = appBackEnd (BEDeclareDclModule main_dcl_module_n dcl_name.id_name (isSystem dcl_module_kind) (size dcl_functions) (size icl_common.com_type_defs) (size dcl_common.com_cons_defs) (size dcl_common.com_selector_defs)) + declareDclModule :: ModuleIndex DclModule -> BackEnder -declareDclModule moduleIndex {dcl_name, dcl_common, dcl_functions, dcl_is_system} - = appBackEnd (BEDeclareDclModule moduleIndex dcl_name.id_name dcl_is_system (size dcl_functions) (size dcl_common.com_type_defs) (size dcl_common.com_cons_defs) (size dcl_common.com_selector_defs)) +declareDclModule moduleIndex {dcl_name, dcl_common, dcl_functions, dcl_module_kind} + = appBackEnd (BEDeclareDclModule moduleIndex dcl_name.id_name (isSystem dcl_module_kind) (size dcl_functions) (size dcl_common.com_type_defs) (size dcl_common.com_cons_defs) (size dcl_common.com_selector_defs)) /* defineCurrentDclModule :: VarHeap IclModule DclModule {#Int} -> BackEnder defineCurrentDclModule varHeap {icl_common} {dcl_name, dcl_common, dcl_functions, dcl_is_system, dcl_conversions} typeConversions @@ -478,7 +488,7 @@ defineCurrentDclModule varHeap {icl_common} {dcl_name, dcl_common, dcl_functions o` defineCurrentDclModuleTypes dcl_common.com_cons_defs dcl_common.com_selector_defs dcl_common.com_type_defs typeConversions varHeap */ defineDclModule :: VarHeap ModuleIndex DclModule -> BackEnder -defineDclModule varHeap moduleIndex {dcl_name, dcl_common, dcl_functions, dcl_is_system,dcl_instances} +defineDclModule varHeap moduleIndex {dcl_name, dcl_common, dcl_functions,dcl_instances} = declare moduleIndex varHeap dcl_common o` declareFunTypes moduleIndex dcl_functions dcl_instances.ir_from varHeap -- cgit v1.2.3