Forráskód Böngészése

* saveregisters calling convention is obsolete

peter 21 éve
szülő
commit
fd759e521f

+ 5 - 2
rtl/i386/set.inc

@@ -260,7 +260,7 @@ end;
 
 
 {$define FPC_SYSTEM_HAS_FPC_SET_IN_BYTE}
 {$define FPC_SYSTEM_HAS_FPC_SET_IN_BYTE}
 
 
-function fpc_set_in_byte(const p: fpc_normal_set; b: byte): boolean; assembler; [public,alias:'FPC_SET_IN_BYTE']; {$ifdef hascompilerproc} compilerproc; {$else} saveregisters; {$endif}
+function fpc_set_in_byte(const p: fpc_normal_set; b: byte): boolean; assembler; [public,alias:'FPC_SET_IN_BYTE']; {$ifdef hascompilerproc} compilerproc; {$else} {$ifndef NOSAVEREGISTERS}saveregisters;{$endif} {$endif}
 {
 {
   tests if the element b is in the set p the carryflag is set if it present
   tests if the element b is in the set p the carryflag is set if it present
 }
 }
@@ -686,7 +686,10 @@ end;
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.17  2003-12-24 22:38:24  peter
+  Revision 1.18  2004-10-24 20:01:41  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.17  2003/12/24 22:38:24  peter
     * fix set_set_range
     * fix set_set_range
 
 
   Revision 1.16  2003/12/04 21:42:07  peter
   Revision 1.16  2003/12/04 21:42:07  peter

+ 6 - 3
rtl/inc/aliases.inc

@@ -26,14 +26,17 @@
 
 
 { export for internal usage }
 { export for internal usage }
 Procedure int_Finalize (Data,TypeInfo: Pointer); [external name 'FPC_FINALIZE'];
 Procedure int_Finalize (Data,TypeInfo: Pointer); [external name 'FPC_FINALIZE'];
-Procedure int_Addref (Data,TypeInfo : Pointer);saveregisters; [external name 'FPC_ADDREF'];
-Procedure int_DecRef (Data, TypeInfo : Pointer);saveregisters;[external name 'FPC_DECREF'];
+Procedure int_Addref (Data,TypeInfo : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif} [external name 'FPC_ADDREF'];
+Procedure int_DecRef (Data, TypeInfo : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif} [external name 'FPC_DECREF'];
 Procedure int_Initialize (Data,TypeInfo: Pointer); [external name 'FPC_INITIALIZE'];
 Procedure int_Initialize (Data,TypeInfo: Pointer); [external name 'FPC_INITIALIZE'];
 procedure int_FinalizeArray(data,typeinfo : pointer;count,size : longint); [external name 'FPC_FINALIZEARRAY'];
 procedure int_FinalizeArray(data,typeinfo : pointer;count,size : longint); [external name 'FPC_FINALIZEARRAY'];
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.2  2002-09-07 15:07:44  peter
+  Revision 1.3  2004-10-24 20:01:41  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.2  2002/09/07 15:07:44  peter
     * old logs removed and tabs fixed
     * old logs removed and tabs fixed
 
 
 }
 }

+ 9 - 6
rtl/inc/astrings.inc

@@ -87,7 +87,7 @@ begin
 end;
 end;
 
 
 
 
-Procedure fpc_AnsiStr_Decr_Ref (Var S : Pointer);saveregisters;[Public,Alias:'FPC_ANSISTR_DECR_REF'];  {$ifdef hascompilerproc} compilerproc; {$endif}
+Procedure fpc_AnsiStr_Decr_Ref (Var S : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[Public,Alias:'FPC_ANSISTR_DECR_REF'];  {$ifdef hascompilerproc} compilerproc; {$endif}
 {
 {
   Decreases the ReferenceCount of a non constant ansistring;
   Decreases the ReferenceCount of a non constant ansistring;
   If the reference count is zero, deallocate the string;
   If the reference count is zero, deallocate the string;
@@ -114,13 +114,13 @@ end;
 
 
 {$ifdef hascompilerproc}
 {$ifdef hascompilerproc}
 { also define alias for internal use in the system unit }
 { also define alias for internal use in the system unit }
-Procedure fpc_AnsiStr_Decr_Ref (Var S : Pointer);saveregisters; [external name 'FPC_ANSISTR_DECR_REF'];
+Procedure fpc_AnsiStr_Decr_Ref (Var S : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif} [external name 'FPC_ANSISTR_DECR_REF'];
 {$endif hascompilerproc}
 {$endif hascompilerproc}
 
 
 {$ifdef hascompilerproc}
 {$ifdef hascompilerproc}
-Procedure fpc_AnsiStr_Incr_Ref (S : Pointer);saveregisters;[Public,Alias:'FPC_ANSISTR_INCR_REF'];  {$ifdef hascompilerproc} compilerproc; {$endif}
+Procedure fpc_AnsiStr_Incr_Ref (S : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[Public,Alias:'FPC_ANSISTR_INCR_REF'];  {$ifdef hascompilerproc} compilerproc; {$endif}
 {$else}
 {$else}
-Procedure fpc_AnsiStr_Incr_Ref (Var S : Pointer);saveregisters;[Public,Alias:'FPC_ANSISTR_INCR_REF'];
+Procedure fpc_AnsiStr_Incr_Ref (Var S : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[Public,Alias:'FPC_ANSISTR_INCR_REF'];
 {$endif}
 {$endif}
 Begin
 Begin
   If S=Nil then
   If S=Nil then
@@ -132,7 +132,7 @@ end;
 
 
 {$ifdef hascompilerproc}
 {$ifdef hascompilerproc}
 { also define alias which can be used inside the system unit }
 { also define alias which can be used inside the system unit }
-Procedure fpc_AnsiStr_Incr_Ref (S : Pointer);saveregisters; [external name 'FPC_ANSISTR_INCR_REF'];
+Procedure fpc_AnsiStr_Incr_Ref (S : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[external name 'FPC_ANSISTR_INCR_REF'];
 {$endif hascompilerproc}
 {$endif hascompilerproc}
 
 
 Procedure fpc_AnsiStr_Assign (Var S1 : Pointer;S2 : Pointer);[Public,Alias:'FPC_ANSISTR_ASSIGN'];  {$ifdef hascompilerproc} compilerproc; {$endif}
 Procedure fpc_AnsiStr_Assign (Var S1 : Pointer;S2 : Pointer);[Public,Alias:'FPC_ANSISTR_ASSIGN'];  {$ifdef hascompilerproc} compilerproc; {$endif}
@@ -864,7 +864,10 @@ end;
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.47  2004-07-12 17:58:19  peter
+  Revision 1.48  2004-10-24 20:01:41  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.47  2004/07/12 17:58:19  peter
     * remove maxlen field from ansistring/widestrings
     * remove maxlen field from ansistring/widestrings
 
 
   Revision 1.46  2004/07/02 21:21:09  peter
   Revision 1.46  2004/07/02 21:21:09  peter

+ 10 - 7
rtl/inc/dynarr.inc

@@ -93,7 +93,7 @@ procedure fpc_dynarray_clear(var p : pointer;ti : pointer); [Public,Alias:'FPC_D
   var
   var
      realp : pdynarray;
      realp : pdynarray;
   begin
   begin
-    if (P=Nil) then 
+    if (P=Nil) then
       exit;
       exit;
     realp:=pdynarray(p-sizeof(tdynarray));
     realp:=pdynarray(p-sizeof(tdynarray));
     if declocked(realp^.refcount) then
     if declocked(realp^.refcount) then
@@ -107,7 +107,7 @@ Procedure fpc_dynarray_clear (var p : pointer;ti : pointer);[external name 'FPC_
 {$endif hascompilerproc}
 {$endif hascompilerproc}
 
 
 
 
-procedure fpc_dynarray_decr_ref(var p : pointer;ti : pointer);saveregisters;[Public,Alias:'FPC_DYNARRAY_DECR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
+procedure fpc_dynarray_decr_ref(var p : pointer;ti : pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[Public,Alias:'FPC_DYNARRAY_DECR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
   var
   var
      realp : pdynarray;
      realp : pdynarray;
   begin
   begin
@@ -127,10 +127,10 @@ procedure fpc_dynarray_decr_ref(var p : pointer;ti : pointer);saveregisters;[Pub
 
 
 {$ifdef hascompilerproc}
 {$ifdef hascompilerproc}
 { provide local access to dynarr_decr_ref for dynarr_setlength }
 { provide local access to dynarr_decr_ref for dynarr_setlength }
-procedure fpc_dynarray_decr_ref(var p : pointer;ti : pointer);saveregisters; [external name 'FPC_DYNARRAY_DECR_REF'];
+procedure fpc_dynarray_decr_ref(var p : pointer;ti : pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif} [external name 'FPC_DYNARRAY_DECR_REF'];
 {$endif}
 {$endif}
 
 
-procedure fpc_dynarray_incr_ref(p : pointer);saveregisters;[Public,Alias:'FPC_DYNARRAY_INCR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
+procedure fpc_dynarray_incr_ref(p : pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[Public,Alias:'FPC_DYNARRAY_INCR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
   var
   var
      realp : pdynarray;
      realp : pdynarray;
   begin
   begin
@@ -146,7 +146,7 @@ procedure fpc_dynarray_incr_ref(p : pointer);saveregisters;[Public,Alias:'FPC_DY
 
 
 {$ifdef hascompilerproc}
 {$ifdef hascompilerproc}
 { provide local access to dynarr_decr_ref for dynarr_setlength }
 { provide local access to dynarr_decr_ref for dynarr_setlength }
-procedure fpc_dynarray_incr_ref(p : pointer);saveregisters; [external name 'FPC_DYNARRAY_INCR_REF'];
+procedure fpc_dynarray_incr_ref(p : pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[external name 'FPC_DYNARRAY_INCR_REF'];
 {$endif}
 {$endif}
 
 
 { provide local access to dynarr_setlength }
 { provide local access to dynarr_setlength }
@@ -311,7 +311,7 @@ procedure fpc_dynarray_copy(var pdest : pointer;psrc : pointer;ti : pointer;
      realpsrc:=pdynarray(psrc-sizeof(tdynarray));
      realpsrc:=pdynarray(psrc-sizeof(tdynarray));
      { skip kind and name }
      { skip kind and name }
      inc(pointer(ti),ord(pdynarraytypeinfo(ti)^.namelen));
      inc(pointer(ti),ord(pdynarraytypeinfo(ti)^.namelen));
-     
+
 {$ifdef FPC_REQUIRES_PROPER_ALIGNMENT}
 {$ifdef FPC_REQUIRES_PROPER_ALIGNMENT}
      move(pdynarraytypeinfo(ti)^.elesize,elesize,sizeof(elesize));
      move(pdynarraytypeinfo(ti)^.elesize,elesize,sizeof(elesize));
      move(pdynarraytypeinfo(ti)^.eletype,eletype,sizeof(eletype));
      move(pdynarraytypeinfo(ti)^.eletype,eletype,sizeof(eletype));
@@ -348,7 +348,10 @@ procedure fpc_dynarray_copy(var pdest : pointer;psrc : pointer;ti : pointer;
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.29  2004-09-15 07:28:09  michael
+  Revision 1.30  2004-10-24 20:01:41  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.29  2004/09/15 07:28:09  michael
   + Fix crash when resizing dynamic array
   + Fix crash when resizing dynamic array
 
 
   Revision 1.28  2004/05/31 20:25:04  peter
   Revision 1.28  2004/05/31 20:25:04  peter

+ 7 - 4
rtl/inc/except.inc

@@ -78,10 +78,10 @@ end;
 
 
 {$ifndef HAS_ADDR_STACK_ON_STACK}
 {$ifndef HAS_ADDR_STACK_ON_STACK}
 Function fpc_PushExceptAddr (Ft: Longint): PJmp_buf ;
 Function fpc_PushExceptAddr (Ft: Longint): PJmp_buf ;
-  [Public, Alias : 'FPC_PUSHEXCEPTADDR'];saveregisters;
+  [Public, Alias : 'FPC_PUSHEXCEPTADDR'];{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}
 {$else HAS_ADDR_STACK_ON_STACK}
 {$else HAS_ADDR_STACK_ON_STACK}
 Function fpc_PushExceptAddr (Ft: Longint;_buf,_newaddr : pointer): PJmp_buf ;
 Function fpc_PushExceptAddr (Ft: Longint;_buf,_newaddr : pointer): PJmp_buf ;
-  [Public, Alias : 'FPC_PUSHEXCEPTADDR'];saveregisters; {$ifdef hascompilerproc} compilerproc; {$endif}
+  [Public, Alias : 'FPC_PUSHEXCEPTADDR'];{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}{$ifdef hascompilerproc} compilerproc; {$endif}
 {$endif HAS_ADDR_STACK_ON_STACK}
 {$endif HAS_ADDR_STACK_ON_STACK}
 
 
 var
 var
@@ -122,7 +122,7 @@ end;
 
 
 
 
 Procedure fpc_PushExceptObj (Obj : TObject; AnAddr,AFrame : Pointer);
 Procedure fpc_PushExceptObj (Obj : TObject; AnAddr,AFrame : Pointer);
-  [Public, Alias : 'FPC_PUSHEXCEPTOBJECT'];saveregisters; {$ifdef hascompilerproc} compilerproc; {$endif}
+  [Public, Alias : 'FPC_PUSHEXCEPTOBJECT'];{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}{$ifdef hascompilerproc} compilerproc; {$endif}
 var
 var
   Newobj : PExceptObject;
   Newobj : PExceptObject;
 begin
 begin
@@ -310,7 +310,10 @@ begin
 end;
 end;
 {
 {
   $Log$
   $Log$
-  Revision 1.15  2004-04-27 18:47:51  florian
+  Revision 1.16  2004-10-24 20:01:41  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.15  2004/04/27 18:47:51  florian
     * exception addr record size for 64 bit systems fixed
     * exception addr record size for 64 bit systems fixed
 
 
   Revision 1.14  2004/02/05 01:16:12  florian
   Revision 1.14  2004/02/05 01:16:12  florian

+ 6 - 3
rtl/inc/generic.inc

@@ -484,7 +484,7 @@ end;
 
 
 
 
 {$ifndef FPC_SYSTEM_HAS_FPC_CHECK_OBJECT}
 {$ifndef FPC_SYSTEM_HAS_FPC_CHECK_OBJECT}
-procedure fpc_check_object(_vmt : pointer);saveregisters;[public,alias:'FPC_CHECK_OBJECT'];  {$ifdef hascompilerproc} compilerproc; {$endif}
+procedure fpc_check_object(_vmt : pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[public,alias:'FPC_CHECK_OBJECT'];  {$ifdef hascompilerproc} compilerproc; {$endif}
 type
 type
   pvmt = ^tvmt;
   pvmt = ^tvmt;
   tvmt = packed record
   tvmt = packed record
@@ -505,7 +505,7 @@ end;
 { checks for a correct vmt pointer }
 { checks for a correct vmt pointer }
 { deeper check to see if the current object is }
 { deeper check to see if the current object is }
 { really related to the true }
 { really related to the true }
-procedure fpc_check_object_ext(vmt, expvmt : pointer);saveregisters;[public,alias:'FPC_CHECK_OBJECT_EXT']; {$ifdef hascompilerproc} compilerproc; {$endif}
+procedure fpc_check_object_ext(vmt, expvmt : pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[public,alias:'FPC_CHECK_OBJECT_EXT']; {$ifdef hascompilerproc} compilerproc; {$endif}
 type
 type
   pvmt = ^tvmt;
   pvmt = ^tvmt;
   tvmt = packed record
   tvmt = packed record
@@ -1245,7 +1245,10 @@ end;
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.82  2004-10-14 17:39:33  florian
+  Revision 1.83  2004-10-24 20:01:41  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.82  2004/10/14 17:39:33  florian
     + added system.align
     + added system.align
     + threadvars are now aligned
     + threadvars are now aligned
 
 

+ 6 - 3
rtl/inc/genset.inc

@@ -145,7 +145,7 @@ procedure do_unset_byte(p : pointer;b : byte);[public,alias:'FPC_SET_UNSET_BYTE'
 
 
 {$ifndef FPC_SYSTEM_HAS_FPC_SET_IN_BYTE}
 {$ifndef FPC_SYSTEM_HAS_FPC_SET_IN_BYTE}
 
 
- function fpc_set_in_byte(const p: fpc_normal_set; b: byte): boolean; [public,alias:'FPC_SET_IN_BYTE']; {$ifdef hascompilerproc} compilerproc; {$else} saveregisters; {$endif}
+ function fpc_set_in_byte(const p: fpc_normal_set; b: byte): boolean; [public,alias:'FPC_SET_IN_BYTE']; {$ifdef hascompilerproc} compilerproc; {$else} {$ifndef NOSAVEREGISTERS}saveregisters;{$endif} {$endif}
  {
  {
    tests if the element b is in the set p the carryflag is set if it present
    tests if the element b is in the set p the carryflag is set if it present
  }
  }
@@ -235,7 +235,7 @@ procedure do_unset_byte(p : pointer;b : byte);[public,alias:'FPC_SET_UNSET_BYTE'
 {$endif}
 {$endif}
 
 
 {$ifndef FPC_SYSTEM_HAS_FPC_SET_COMP_SETS}
 {$ifndef FPC_SYSTEM_HAS_FPC_SET_COMP_SETS}
- function fpc_set_comp_sets(const set1,set2 : fpc_normal_set):boolean;[public,alias:'FPC_SET_COMP_SETS'];{$ifdef hascompilerproc} compilerproc; {$else} saveregisters; {$endif}
+ function fpc_set_comp_sets(const set1,set2 : fpc_normal_set):boolean;[public,alias:'FPC_SET_COMP_SETS'];{$ifdef hascompilerproc} compilerproc; {$else} {$ifndef NOSAVEREGISTERS}saveregisters;{$endif} {$endif}
  {
  {
   compares set1 and set2 zeroflag is set if they are equal
   compares set1 and set2 zeroflag is set if they are equal
  }
  }
@@ -270,7 +270,10 @@ procedure do_unset_byte(p : pointer;b : byte);[public,alias:'FPC_SET_UNSET_BYTE'
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.7  2002-09-07 15:07:45  peter
+  Revision 1.8  2004-10-24 20:01:41  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.7  2002/09/07 15:07:45  peter
     * old logs removed and tabs fixed
     * old logs removed and tabs fixed
 
 
 }
 }

+ 5 - 2
rtl/inc/heaptrc.pp

@@ -723,7 +723,7 @@ var
 {$endif go32v2}
 {$endif go32v2}
 
 
 
 
-procedure CheckPointer(p : pointer);[saveregisters,public, alias : 'FPC_CHECKPOINTER'];
+procedure CheckPointer(p : pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[public, alias : 'FPC_CHECKPOINTER'];
 var
 var
   i  : ptrint;
   i  : ptrint;
   pp : pheap_mem_info;
   pp : pheap_mem_info;
@@ -1138,7 +1138,10 @@ finalization
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.33  2004-09-21 14:49:29  peter
+  Revision 1.34  2004-10-24 20:01:41  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.33  2004/09/21 14:49:29  peter
     * fix reallocmem
     * fix reallocmem
 
 
   Revision 1.32  2004/09/16 07:21:08  michael
   Revision 1.32  2004/09/16 07:21:08  michael

+ 18 - 15
rtl/inc/objpas.inc

@@ -36,11 +36,11 @@
 
 
 {$ifndef HASINTF}
 {$ifndef HASINTF}
     { dummies for make cycle with 1.0.x }
     { dummies for make cycle with 1.0.x }
-    procedure fpc_intf_decr_ref(var i: pointer);saveregisters;[public,alias: 'FPC_INTF_DECR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
+    procedure fpc_intf_decr_ref(var i: pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[public,alias: 'FPC_INTF_DECR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
       begin
       begin
       end;
       end;
 
 
-    procedure fpc_intf_incr_ref(i: pointer);saveregisters;[public,alias: 'FPC_INTF_INCR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
+    procedure fpc_intf_incr_ref(i: pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[public,alias: 'FPC_INTF_INCR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
       begin
       begin
       end;
       end;
 
 
@@ -59,7 +59,7 @@
 {$else HASINTF}
 {$else HASINTF}
 
 
     { interface helpers }
     { interface helpers }
-    procedure fpc_intf_decr_ref(var i: pointer);saveregisters;[public,alias: 'FPC_INTF_DECR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
+    procedure fpc_intf_decr_ref(var i: pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[public,alias: 'FPC_INTF_DECR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
       begin
       begin
         if assigned(i) then
         if assigned(i) then
           IUnknown(i)._Release;
           IUnknown(i)._Release;
@@ -68,11 +68,11 @@
 
 
     {$ifdef hascompilerproc}
     {$ifdef hascompilerproc}
     { local declaration for intf_decr_ref for local access }
     { local declaration for intf_decr_ref for local access }
-    procedure intf_decr_ref(var i: pointer);saveregisters; [external name 'FPC_INTF_DECR_REF'];
+    procedure intf_decr_ref(var i: pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif} [external name 'FPC_INTF_DECR_REF'];
     {$endif hascompilerproc}
     {$endif hascompilerproc}
 
 
 
 
-    procedure fpc_intf_incr_ref(i: pointer);saveregisters;[public,alias: 'FPC_INTF_INCR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
+    procedure fpc_intf_incr_ref(i: pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[public,alias: 'FPC_INTF_INCR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
       begin
       begin
          if assigned(i) then
          if assigned(i) then
            IUnknown(i)._AddRef;
            IUnknown(i)._AddRef;
@@ -80,7 +80,7 @@
 
 
     {$ifdef hascompilerproc}
     {$ifdef hascompilerproc}
     { local declaration of intf_incr_ref for local access }
     { local declaration of intf_incr_ref for local access }
-    procedure intf_incr_ref(i: pointer);saveregisters; [external name 'FPC_INTF_INCR_REF'];
+    procedure intf_incr_ref(i: pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif} [external name 'FPC_INTF_INCR_REF'];
     {$endif hascompilerproc}
     {$endif hascompilerproc}
 
 
     procedure fpc_intf_assign(var D: pointer; const S: pointer);[public,alias: 'FPC_INTF_ASSIGN']; {$ifdef hascompilerproc} compilerproc; {$endif}
     procedure fpc_intf_assign(var D: pointer; const S: pointer);[public,alias: 'FPC_INTF_ASSIGN']; {$ifdef hascompilerproc} compilerproc; {$endif}
@@ -544,9 +544,9 @@
 
 
         var
         var
            vmt  : tclass;
            vmt  : tclass;
-	   temp : pbyte;
-	   count,
-	   i    : longint;
+           temp : pbyte;
+           count,
+           i    : longint;
 {$ifdef FPC_REQUIRES_PROPER_ALIGNMENT}
 {$ifdef FPC_REQUIRES_PROPER_ALIGNMENT}
            recelem  : TRecElem;
            recelem  : TRecElem;
 {$endif FPC_REQUIRES_PROPER_ALIGNMENT}
 {$endif FPC_REQUIRES_PROPER_ALIGNMENT}
@@ -554,11 +554,11 @@
            vmt:=ClassType;
            vmt:=ClassType;
            while vmt<>nil do
            while vmt<>nil do
              begin
              begin
-	       { This need to be included here, because Finalize()
-	         has should support for tkClass }
-	       Temp:=Pointer((Pointer(vmt)+vmtInitTable)^);
+               { This need to be included here, because Finalize()
+                 has should support for tkClass }
+               Temp:=Pointer((Pointer(vmt)+vmtInitTable)^);
                if Assigned(Temp) then
                if Assigned(Temp) then
- 	         begin
+                 begin
                    inc(Temp);
                    inc(Temp);
                    I:=Temp^;
                    I:=Temp^;
                    inc(temp,I+1);                // skip name string;
                    inc(temp,I+1);                // skip name string;
@@ -581,7 +581,7 @@
                      With PRecRec(Temp)^.elements[I] do
                      With PRecRec(Temp)^.elements[I] do
                        int_Finalize (pointer(self)+Offset,Info);
                        int_Finalize (pointer(self)+Offset,Info);
 {$endif FPC_REQUIRES_PROPER_ALIGNMENT}
 {$endif FPC_REQUIRES_PROPER_ALIGNMENT}
-		 end;
+                 end;
                vmt:=pclass(pointer(vmt)+vmtParent)^;
                vmt:=pclass(pointer(vmt)+vmtParent)^;
              end;
              end;
         end;
         end;
@@ -758,7 +758,10 @@
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.41  2004-10-10 19:18:31  florian
+  Revision 1.42  2004-10-24 20:01:41  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.41  2004/10/10 19:18:31  florian
     * fixed aligntoptr
     * fixed aligntoptr
 
 
   Revision 1.40  2004/10/05 20:21:23  florian
   Revision 1.40  2004/10/05 20:21:23  florian

+ 14 - 11
rtl/inc/rtti.inc

@@ -83,7 +83,7 @@ TArrayRec = record
 end;
 end;
 
 
 
 
-Procedure fpc_Initialize (Data,TypeInfo : pointer);saveregisters;[Public,Alias : 'FPC_INITIALIZE'];  {$ifdef hascompilerproc} compilerproc; {$endif}
+Procedure fpc_Initialize (Data,TypeInfo : pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[Public,Alias : 'FPC_INITIALIZE'];  {$ifdef hascompilerproc} compilerproc; {$endif}
 
 
 { this definition is sometimes (depending on switches)
 { this definition is sometimes (depending on switches)
   already defined or not so define it locally to avoid problems PM }
   already defined or not so define it locally to avoid problems PM }
@@ -147,7 +147,7 @@ begin
 end;
 end;
 
 
 
 
-Procedure fpc_finalize (Data,TypeInfo: Pointer);saveregisters;[Public,Alias : 'FPC_FINALIZE'];  {$ifdef hascompilerproc} compilerproc; {$endif}
+Procedure fpc_finalize (Data,TypeInfo: Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[Public,Alias : 'FPC_FINALIZE'];  {$ifdef hascompilerproc} compilerproc; {$endif}
 { this definition is sometimes (depending on switches)
 { this definition is sometimes (depending on switches)
   already defined or not so define it locally to avoid problems PM }
   already defined or not so define it locally to avoid problems PM }
 Var Temp    : PByte;
 Var Temp    : PByte;
@@ -165,14 +165,14 @@ begin
     tkAstring :
     tkAstring :
       begin
       begin
         fpc_AnsiStr_Decr_Ref(PPointer(Data)^);
         fpc_AnsiStr_Decr_Ref(PPointer(Data)^);
-	PPointer(Data)^:=nil;
-      end;	
+        PPointer(Data)^:=nil;
+      end;
 {$ifdef HASWIDESTRING}
 {$ifdef HASWIDESTRING}
     tkWstring :
     tkWstring :
       begin
       begin
         fpc_WideStr_Decr_Ref(PPointer(Data)^);
         fpc_WideStr_Decr_Ref(PPointer(Data)^);
-	PPointer(Data)^:=nil;
-      end;	
+        PPointer(Data)^:=nil;
+      end;
 {$endif HASWIDESTRING}
 {$endif HASWIDESTRING}
     tkArray :
     tkArray :
       begin
       begin
@@ -216,7 +216,7 @@ begin
     tkInterface:
     tkInterface:
       begin
       begin
         Intf_Decr_Ref(PPointer(Data)^);
         Intf_Decr_Ref(PPointer(Data)^);
-	PPointer(Data)^:=nil;
+        PPointer(Data)^:=nil;
       end;
       end;
 {$endif HASINTF}
 {$endif HASINTF}
     tkDynArray:
     tkDynArray:
@@ -229,7 +229,7 @@ begin
 end;
 end;
 
 
 
 
-Procedure fpc_Addref (Data,TypeInfo : Pointer);saveregisters; [Public,alias : 'FPC_ADDREF'];  {$ifdef hascompilerproc} compilerproc; {$endif}
+Procedure fpc_Addref (Data,TypeInfo : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif} [Public,alias : 'FPC_ADDREF'];  {$ifdef hascompilerproc} compilerproc; {$endif}
 
 
 { this definition is sometimes (depending on switches)
 { this definition is sometimes (depending on switches)
   already defined or not so define it locally to avoid problems PM }
   already defined or not so define it locally to avoid problems PM }
@@ -301,9 +301,9 @@ end;
 
 
 { alias for internal use }
 { alias for internal use }
 { we use another name else the compiler gets puzzled because of the wrong forward def }
 { we use another name else the compiler gets puzzled because of the wrong forward def }
-procedure fpc_systemDecRef (Data, TypeInfo : Pointer);saveregisters;[external name 'FPC_DECREF'];
+procedure fpc_systemDecRef (Data, TypeInfo : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[external name 'FPC_DECREF'];
 
 
-Procedure fpc_DecRef (Data, TypeInfo : Pointer);saveregisters;[Public,alias : 'FPC_DECREF'];  {$ifdef hascompilerproc} compilerproc; {$endif}
+Procedure fpc_DecRef (Data, TypeInfo : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[Public,alias : 'FPC_DECREF'];  {$ifdef hascompilerproc} compilerproc; {$endif}
 { this definition is sometimes (depending on switches)
 { this definition is sometimes (depending on switches)
   already defined or not so define it locally to avoid problems PM }
   already defined or not so define it locally to avoid problems PM }
 Var Temp    : PByte;
 Var Temp    : PByte;
@@ -385,7 +385,10 @@ procedure fpc_finalize_array(data,typeinfo : pointer;count,size : longint); [Pub
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.15  2004-10-04 21:26:16  florian
+  Revision 1.16  2004-10-24 20:01:42  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.15  2004/10/04 21:26:16  florian
     * rtti alignment fixed
     * rtti alignment fixed
 
 
   Revision 1.14  2004/08/18 21:03:35  florian
   Revision 1.14  2004/08/18 21:03:35  florian

+ 8 - 5
rtl/inc/system.inc

@@ -547,7 +547,7 @@ begin
 end;
 end;
 
 
 
 
-procedure fpc_iocheck;[saveregisters,public,alias:'FPC_IOCHECK']; {$ifdef hascompilerproc} compilerproc; {$endif}
+procedure fpc_iocheck;{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[public,alias:'FPC_IOCHECK']; {$ifdef hascompilerproc} compilerproc; {$endif}
 var
 var
   l : longint;
   l : longint;
 begin
 begin
@@ -577,7 +577,7 @@ End;
 {$DEFINE STACKCHECK}
 {$DEFINE STACKCHECK}
 {$ENDIF}
 {$ENDIF}
 {$S-}
 {$S-}
-procedure fpc_stackcheck(stack_size:Cardinal);[saveregisters,public,alias:'FPC_STACKCHECK'];
+procedure fpc_stackcheck(stack_size:Cardinal);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[public,alias:'FPC_STACKCHECK'];
 var
 var
   c : Pointer;
   c : Pointer;
 begin
 begin
@@ -689,7 +689,7 @@ begin
 end;
 end;
 
 
 
 
-Procedure lib_exit;saveregisters;[Public,Alias:'FPC_LIB_EXIT'];
+Procedure lib_exit;{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[Public,Alias:'FPC_LIB_EXIT'];
 begin
 begin
   InternalExit;
   InternalExit;
 end;
 end;
@@ -849,7 +849,7 @@ end;
 procedure fpc_AbstractErrorIntern;  compilerproc; external name 'FPC_ABSTRACTERROR';
 procedure fpc_AbstractErrorIntern;  compilerproc; external name 'FPC_ABSTRACTERROR';
 {$endif hascompilerproc}
 {$endif hascompilerproc}
 
 
-Procedure fpc_assert(Const Msg,FName:Shortstring;LineNo:Longint;ErrorAddr:Pointer); [SaveRegisters,Public,Alias : 'FPC_ASSERT']; {$ifdef hascompilerproc} compilerproc; {$endif}
+Procedure fpc_assert(Const Msg,FName:Shortstring;LineNo:Longint;ErrorAddr:Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif} [Public,Alias : 'FPC_ASSERT']; {$ifdef hascompilerproc} compilerproc; {$endif}
 begin
 begin
   if pointer(AssertErrorProc)<>nil then
   if pointer(AssertErrorProc)<>nil then
     AssertErrorProc(Msg,FName,LineNo,ErrorAddr)
     AssertErrorProc(Msg,FName,LineNo,ErrorAddr)
@@ -891,7 +891,10 @@ end;
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.65  2004-10-09 21:00:46  jonas
+  Revision 1.66  2004-10-24 20:01:42  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.65  2004/10/09 21:00:46  jonas
     + cgenmath with libc math functions. Faster than the routines in genmath
     + cgenmath with libc math functions. Faster than the routines in genmath
       and also have full double support (exp() only has support for values in
       and also have full double support (exp() only has support for values in
       the single range in genmath, for example). Used in FPC_USE_LIBC is
       the single range in genmath, for example). Used in FPC_USE_LIBC is

+ 9 - 6
rtl/inc/wstrings.inc

@@ -175,7 +175,7 @@ begin
 end;
 end;
 
 
 
 
-Procedure fpc_WideStr_Decr_Ref (Var S : Pointer);saveregisters;[Public,Alias:'FPC_WIDESTR_DECR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
+Procedure fpc_WideStr_Decr_Ref (Var S : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[Public,Alias:'FPC_WIDESTR_DECR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
 {
 {
   Decreases the ReferenceCount of a non constant widestring;
   Decreases the ReferenceCount of a non constant widestring;
   If the reference count is zero, deallocate the string;
   If the reference count is zero, deallocate the string;
@@ -202,13 +202,13 @@ end;
 
 
 {$ifdef hascompilerproc}
 {$ifdef hascompilerproc}
 { alias for internal use }
 { alias for internal use }
-Procedure fpc_WideStr_Decr_Ref (Var S : Pointer);saveregisters;[external name 'FPC_WIDESTR_DECR_REF'];
+Procedure fpc_WideStr_Decr_Ref (Var S : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[external name 'FPC_WIDESTR_DECR_REF'];
 {$endif compilerproc}
 {$endif compilerproc}
 
 
 {$ifdef hascompilerproc}
 {$ifdef hascompilerproc}
-Procedure fpc_WideStr_Incr_Ref (S : Pointer);saveregisters;[Public,Alias:'FPC_WIDESTR_INCR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
+Procedure fpc_WideStr_Incr_Ref (S : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[Public,Alias:'FPC_WIDESTR_INCR_REF']; {$ifdef hascompilerproc} compilerproc; {$endif}
 {$else}
 {$else}
-Procedure fpc_WideStr_Incr_Ref (Var S : Pointer);saveregisters;[Public,Alias:'FPC_WIDESTR_INCR_REF'];
+Procedure fpc_WideStr_Incr_Ref (Var S : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[Public,Alias:'FPC_WIDESTR_INCR_REF'];
 {$endif compilerproc}
 {$endif compilerproc}
 Begin
 Begin
   If S=Nil then
   If S=Nil then
@@ -220,7 +220,7 @@ end;
 
 
 {$ifdef hascompilerproc}
 {$ifdef hascompilerproc}
 { alias for internal use }
 { alias for internal use }
-Procedure fpc_WideStr_Incr_Ref (S : Pointer);saveregisters;[external name 'FPC_WIDESTR_INCR_REF'];
+Procedure fpc_WideStr_Incr_Ref (S : Pointer);{$ifndef NOSAVEREGISTERS}saveregisters;{$endif}[external name 'FPC_WIDESTR_INCR_REF'];
 {$endif compilerproc}
 {$endif compilerproc}
 
 
 function fpc_WideStr_To_ShortStr (high_of_res: SizeInt;const S2 : WideString): shortstring;[Public, alias: 'FPC_WIDESTR_TO_SHORTSTR'];  {$ifdef hascompilerproc} compilerproc; {$endif}
 function fpc_WideStr_To_ShortStr (high_of_res: SizeInt;const S2 : WideString): shortstring;[Public, alias: 'FPC_WIDESTR_TO_SHORTSTR'];  {$ifdef hascompilerproc} compilerproc; {$endif}
@@ -1237,7 +1237,10 @@ function Utf8ToAnsi(const s : UTF8String) : ansistring;{$ifdef SYSTEMINLINE}inli
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.44  2004-09-29 14:55:49  mazen
+  Revision 1.45  2004-10-24 20:01:42  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.44  2004/09/29 14:55:49  mazen
   * widestring conversion routines takes a widechar so no
   * widestring conversion routines takes a widechar so no
   information is lost
   information is lost
 
 

+ 6 - 1
tests/test/cg/tcalcst9.pp

@@ -1,3 +1,5 @@
+{ %maxversion=1.9.4 }
+
 {****************************************************************}
 {****************************************************************}
 {  CODE GENERATOR TEST PROGRAM                                   }
 {  CODE GENERATOR TEST PROGRAM                                   }
 {  By Carl Eric Codere                                           }
 {  By Carl Eric Codere                                           }
@@ -851,7 +853,10 @@ end.
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.6  2004-03-27 19:26:40  florian
+  Revision 1.7  2004-10-24 20:01:42  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.6  2004/03/27 19:26:40  florian
     * alignment fixed
     * alignment fixed
 
 
   Revision 1.5  2003/04/22 10:24:29  florian
   Revision 1.5  2003/04/22 10:24:29  florian

+ 6 - 1
tests/test/cg/tcalfun9.pp

@@ -1,3 +1,5 @@
+{ %maxversion=1.9.4 }
+
  {****************************************************************}
  {****************************************************************}
  {  CODE GENERATOR TEST PROGRAM                                   }
  {  CODE GENERATOR TEST PROGRAM                                   }
  {  By Carl Eric Codere                                           }
  {  By Carl Eric Codere                                           }
@@ -1429,7 +1431,10 @@ end.
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.6  2004-05-02 12:11:44  peter
+  Revision 1.7  2004-10-24 20:01:42  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.6  2004/05/02 12:11:44  peter
     * fixed linefeeds
     * fixed linefeeds
 
 
   Revision 1.5  2003/04/22 10:24:29  florian
   Revision 1.5  2003/04/22 10:24:29  florian

+ 6 - 1
tests/test/cg/tcalobj8.pp

@@ -1,3 +1,5 @@
+{ %maxversion=1.9.4 }
+
 {****************************************************************}
 {****************************************************************}
 {  CODE GENERATOR TEST PROGRAM                                   }
 {  CODE GENERATOR TEST PROGRAM                                   }
 {  Copyright (c) 2002 Carl Eric Codere                           }
 {  Copyright (c) 2002 Carl Eric Codere                           }
@@ -3294,7 +3296,10 @@ end.
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.6  2004-05-02 12:11:44  peter
+  Revision 1.7  2004-10-24 20:01:42  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.6  2004/05/02 12:11:44  peter
     * fixed linefeeds
     * fixed linefeeds
 
 
   Revision 1.5  2003/04/22 10:24:29  florian
   Revision 1.5  2003/04/22 10:24:29  florian

+ 6 - 1
tests/test/cg/tcalpvr8.pp

@@ -1,3 +1,5 @@
+{ %maxversion=1.9.4 }
+
 {****************************************************************}
 {****************************************************************}
 {  CODE GENERATOR TEST PROGRAM                                   }
 {  CODE GENERATOR TEST PROGRAM                                   }
 {****************************************************************}
 {****************************************************************}
@@ -527,7 +529,10 @@ end.
 
 
 {
 {
    $Log$
    $Log$
-   Revision 1.5  2003-05-15 20:34:29  peter
+   Revision 1.6  2004-10-24 20:01:42  peter
+     * saveregisters calling convention is obsolete
+
+   Revision 1.5  2003/05/15 20:34:29  peter
      * removed po_containsself tests
      * removed po_containsself tests
 
 
    Revision 1.4  2003/01/16 22:14:49  peter
    Revision 1.4  2003/01/16 22:14:49  peter

+ 6 - 1
tests/test/cg/tcalval9.pp

@@ -1,3 +1,5 @@
+{ %maxversion=1.9.4 }
+
 {****************************************************************}
 {****************************************************************}
 {  CODE GENERATOR TEST PROGRAM                                   }
 {  CODE GENERATOR TEST PROGRAM                                   }
 {  By Carl Eric Codere                                           }
 {  By Carl Eric Codere                                           }
@@ -1294,7 +1296,10 @@ end.
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.6  2004-03-27 19:34:13  florian
+  Revision 1.7  2004-10-24 20:01:42  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.6  2004/03/27 19:34:13  florian
     * alignment fixed
     * alignment fixed
 
 
   Revision 1.5  2003/04/22 10:24:29  florian
   Revision 1.5  2003/04/22 10:24:29  florian

+ 6 - 1
tests/test/cg/tcalvar9.pp

@@ -1,3 +1,5 @@
+{ %maxversion=1.9.4 }
+
 {****************************************************************}
 {****************************************************************}
 {  CODE GENERATOR TEST PROGRAM                                   }
 {  CODE GENERATOR TEST PROGRAM                                   }
 {  By Carl Eric Codere                                           }
 {  By Carl Eric Codere                                           }
@@ -824,7 +826,10 @@ end.
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.6  2004-03-27 19:38:50  florian
+  Revision 1.7  2004-10-24 20:01:42  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.6  2004/03/27 19:38:50  florian
     * alignment fixed
     * alignment fixed
 
 
   Revision 1.5  2003/04/22 10:24:29  florian
   Revision 1.5  2003/04/22 10:24:29  florian

+ 8 - 1
tests/test/cg/tldparam.pp

@@ -234,6 +234,7 @@
       end;
       end;
 
 
 
 
+{$ifdef VER1_0}
    function testretbyteregs: byte; saveregisters;
    function testretbyteregs: byte; saveregisters;
      begin
      begin
        Write('(byte) : Value should be 125...');
        Write('(byte) : Value should be 125...');
@@ -263,6 +264,7 @@
         Write('(double) : Value should be -77.14...');
         Write('(double) : Value should be -77.14...');
         testretdoubleregs := -77.14;
         testretdoubleregs := -77.14;
       end;
       end;
+{$endif VER1_0}
 
 
    function testretbytecdecl: byte; cdecl;
    function testretbytecdecl: byte; cdecl;
      begin
      begin
@@ -380,12 +382,14 @@ begin
   WriteLn(testretint64inline);
   WriteLn(testretint64inline);
   WriteLn(testretrealinline);
   WriteLn(testretrealinline);
   WriteLn(testretdoubleinline);
   WriteLn(testretdoubleinline);
+{$ifdef VER1_0}  
   WriteLn('---------------------- SAVEREGS ----------------------');
   WriteLn('---------------------- SAVEREGS ----------------------');
   WriteLn(testretbyteregs);
   WriteLn(testretbyteregs);
   WriteLn(testretwordregs);
   WriteLn(testretwordregs);
   WriteLn(testretint64regs);
   WriteLn(testretint64regs);
   WriteLn(testretrealregs);
   WriteLn(testretrealregs);
   WriteLn(testretdoubleregs);
   WriteLn(testretdoubleregs);
+{$endif VER1_0}  
   WriteLn('------------------------ CDECL -----------------------');
   WriteLn('------------------------ CDECL -----------------------');
   WriteLn(testretbytecdecl);
   WriteLn(testretbytecdecl);
   WriteLn(testretwordcdecl);
   WriteLn(testretwordcdecl);
@@ -397,7 +401,10 @@ end.
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.3  2002-09-07 15:40:56  peter
+  Revision 1.4  2004-10-24 20:01:42  peter
+    * saveregisters calling convention is obsolete
+
+  Revision 1.3  2002/09/07 15:40:56  peter
     * old logs removed and tabs fixed
     * old logs removed and tabs fixed
 
 
 }
 }