From 8733061c78363d9b892b25a442e40abb7501192c Mon Sep 17 00:00:00 2001 From: carl Date: Sun, 22 Sep 2002 14:02:34 +0000 Subject: [PATCH] * stack checking cannot be called before system unit is initialized * MC68020 define --- compiler/defbase.pas | 10 +++++++++- compiler/ncgutil.pas | 11 +++++++++-- compiler/options.pas | 9 ++++++++- 3 files changed, 26 insertions(+), 4 deletions(-) diff --git a/compiler/defbase.pas b/compiler/defbase.pas index 16d137e311..49d4ee1092 100644 --- a/compiler/defbase.pas +++ b/compiler/defbase.pas @@ -238,6 +238,10 @@ interface if acp is cp_value_equal_const call by value and call by const parameter are assumed as equal + allowdefaults indicates if default value parameters + are allowed (in this case, the search order will first + search for a routine with default parameters, before + searching for the same definition with no parameters) } function equal_paras(paralist1,paralist2 : TLinkedList; acp : compare_type;allowdefaults:boolean) : boolean; @@ -1956,7 +1960,11 @@ implementation end. { $Log$ - Revision 1.12 2002-09-16 14:11:12 peter + Revision 1.13 2002-09-22 14:02:34 carl + * stack checking cannot be called before system unit is initialized + * MC68020 define + + Revision 1.12 2002/09/16 14:11:12 peter * add argument to equal_paras() to support default values or not Revision 1.11 2002/09/15 17:54:46 peter diff --git a/compiler/ncgutil.pas b/compiler/ncgutil.pas index 1589137472..6edc00fec5 100644 --- a/compiler/ncgutil.pas +++ b/compiler/ncgutil.pas @@ -1457,7 +1457,10 @@ implementation cg.g_stackframe_entry(stackalloclist,stackframe); - if (cs_check_stack in aktlocalswitches) then + { never call stack checking before the standard system unit + has not been initialized + } + if (cs_check_stack in aktlocalswitches) and (aktprocdef.proctypeoption<>potype_proginit) then cg.g_stackcheck(stackalloclist,stackframe); end; list.insertlist(stackalloclist); @@ -1831,7 +1834,11 @@ implementation end. { $Log$ - Revision 1.50 2002-09-17 18:54:03 jonas + Revision 1.51 2002-09-22 14:02:35 carl + * stack checking cannot be called before system unit is initialized + * MC68020 define + + Revision 1.50 2002/09/17 18:54:03 jonas * a_load_reg_reg() now has two size parameters: source and dest. This allows some optimizations on architectures that don't encode the register size in the register name. diff --git a/compiler/options.pas b/compiler/options.pas index 7e81f19ae2..e8bb0940d4 100644 --- a/compiler/options.pas +++ b/compiler/options.pas @@ -1550,6 +1550,9 @@ begin exclude(initmoduleswitches,cs_fp_emulation) else def_symbol('M68K_FPU_EMULATED'); + + if initoptprocessor=MC68020 then + def_symbol('CPUM68020'); {$endif m68k} { write logo if set } @@ -1677,7 +1680,11 @@ finalization end. { $Log$ - Revision 1.82 2002-08-12 15:08:40 carl + Revision 1.83 2002-09-22 14:02:35 carl + * stack checking cannot be called before system unit is initialized + * MC68020 define + + Revision 1.82 2002/08/12 15:08:40 carl + stab register indexes for powerpc (moved from gdb to cpubase) + tprocessor enumeration moved to cpuinfo + linker in target_info is now a class