Bladeren bron

* avoid generation of __stklen if not necessary

git-svn-id: trunk@9029 -
florian 18 jaren geleden
bovenliggende
commit
5bdea6b5b3
1 gewijzigde bestanden met toevoegingen van 7 en 4 verwijderingen
  1. 7 4
      compiler/pmodules.pas

+ 7 - 4
compiler/pmodules.pas

@@ -363,10 +363,13 @@ implementation
         current_asmdata.asmlists[al_globals].concat(Tai_align.Create(const_align(32)));
         current_asmdata.asmlists[al_globals].concat(Tai_align.Create(const_align(32)));
         current_asmdata.asmlists[al_globals].concat(Tai_string.Create('FPC '+full_version_string+
         current_asmdata.asmlists[al_globals].concat(Tai_string.Create('FPC '+full_version_string+
           ' ['+date_string+'] for '+target_cpu_string+' - '+target_info.shortname));
           ' ['+date_string+'] for '+target_cpu_string+' - '+target_info.shortname));
-        { stacksize can be specified and is now simulated }
-        new_section(current_asmdata.asmlists[al_globals],sec_data,'__stklen', sizeof(aint));
-        current_asmdata.asmlists[al_globals].concat(Tai_symbol.Createname_global('__stklen',AT_DATA,sizeof(aint)));
-        current_asmdata.asmlists[al_globals].concat(Tai_const.Create_aint(stacksize));
+        if not(tf_no_generic_stackcheck in target_info.flags) then
+          begin
+            { stacksize can be specified and is now simulated }
+            new_section(current_asmdata.asmlists[al_globals],sec_data,'__stklen', sizeof(aint));
+            current_asmdata.asmlists[al_globals].concat(Tai_symbol.Createname_global('__stklen',AT_DATA,sizeof(aint)));
+            current_asmdata.asmlists[al_globals].concat(Tai_const.Create_aint(stacksize));
+          end;
 {$IFDEF POWERPC}
 {$IFDEF POWERPC}
         { AmigaOS4 "stack cookie" support }
         { AmigaOS4 "stack cookie" support }
         if ( target_info.system = system_powerpc_amiga ) then
         if ( target_info.system = system_powerpc_amiga ) then