Browse Source

* aasm.pas: pai_align instead of pai_align_abstract if cpu <> i386
+ systems.pas: info for macos/ppc
* new/cgobj.pas: compiles again without newst define
* new/powerpc/cgcpu: generate different entry/exit code depending on
whether target_os is MacOs or Linux

Jonas Maebe 25 years ago
parent
commit
57e41f9053
4 changed files with 175 additions and 30 deletions
  1. 25 1
      compiler/aasm.pas
  2. 12 5
      compiler/new/cgobj.pas
  3. 40 7
      compiler/new/powerpc/cgcpu.pas
  4. 98 17
      compiler/systems.pas

+ 25 - 1
compiler/aasm.pas

@@ -195,8 +195,13 @@ unit aasm;
 
 
        { alignment for operator }
        { alignment for operator }
 
 
+{$ifdef i386}
        pai_align_abstract = ^tai_align_abstract;
        pai_align_abstract = ^tai_align_abstract;
        tai_align_abstract = object(tai)
        tai_align_abstract = object(tai)
+{$else i386}
+       pai_align = ^tai_align;
+       tai_align = object(tai)
+{$endif i386}
           buf       : array[0..63] of char; { buf used for fill }
           buf       : array[0..63] of char; { buf used for fill }
           aligntype : byte;   { 1 = no align, 2 = word align, 4 = dword align }
           aligntype : byte;   { 1 = no align, 2 = word align, 4 = dword align }
           fillsize  : byte;   { real size to fill }
           fillsize  : byte;   { real size to fill }
@@ -715,7 +720,11 @@ uses
                               TAI_ALIGN
                               TAI_ALIGN
  ****************************************************************************}
  ****************************************************************************}
 
 
+{$ifdef i386}
      constructor tai_align_abstract.init(b: byte);
      constructor tai_align_abstract.init(b: byte);
+{$else i386}
+     constructor tai_align.init(b: byte);
+{$endif i386}
        begin
        begin
           inherited init;
           inherited init;
           typ:=ait_align;
           typ:=ait_align;
@@ -729,7 +738,11 @@ uses
        end;
        end;
 
 
 
 
+{$ifdef i386}
      constructor tai_align_abstract.init_op(b: byte; _op: byte);
      constructor tai_align_abstract.init_op(b: byte; _op: byte);
+{$else i386}
+     constructor tai_align.init_op(b: byte; _op: byte);
+{$endif i386}
        begin
        begin
           inherited init;
           inherited init;
           typ:=ait_align;
           typ:=ait_align;
@@ -744,7 +757,11 @@ uses
        end;
        end;
 
 
 
 
+{$ifdef i386}
      function tai_align_abstract.getfillbuf:pchar;
      function tai_align_abstract.getfillbuf:pchar;
+{$else i386}
+     function tai_align.getfillbuf:pchar;
+{$endif i386}
        begin
        begin
          getfillbuf:=@buf;
          getfillbuf:=@buf;
        end;
        end;
@@ -1050,7 +1067,14 @@ uses
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.81  2000-04-10 12:21:33  jonas
+  Revision 1.82  2000-04-22 14:25:03  jonas
+    * aasm.pas: pai_align instead of pai_align_abstract if cpu <> i386
+    + systems.pas: info for macos/ppc
+    * new/cgobj.pas: compiles again without newst define
+    * new/powerpc/cgcpu: generate different entry/exit code depending on
+      whether target_os is MacOs or Linux
+
+  Revision 1.81  2000/04/10 12:21:33  jonas
     * added ait_symbol_end to SkipInstr
     * added ait_symbol_end to SkipInstr
 
 
   Revision 1.80  2000/02/29 23:55:53  pierre
   Revision 1.80  2000/02/29 23:55:53  pierre

+ 12 - 5
compiler/new/cgobj.pas

@@ -759,7 +759,7 @@ unit cgobj;
                else
                else
                  parasize:=aktprocdef^.localst^.paramdatasize+procinfo^.para_offset-pointersize;
                  parasize:=aktprocdef^.localst^.paramdatasize+procinfo^.para_offset-pointersize;
             {$ELSE}
             {$ELSE}
-               if (aktproc^.proctypeoption in [potype_unitinit,potype_proginit,potype_unitfinalize]) then
+               if (aktprocsym^.definition^.proctypeoption in [potype_unitinit,potype_proginit,potype_unitfinalize]) then
                  parasize:=0
                  parasize:=0
                else
                else
                  parasize:=aktprocsym^.definition^.parast^.datasize+procinfo^.para_offset-pointersize;
                  parasize:=aktprocsym^.definition^.parast^.datasize+procinfo^.para_offset-pointersize;
@@ -773,7 +773,7 @@ unit cgobj;
                else
                else
                  parasize:=aktprocdef^.localst^.paramdatasize+procinfo^.para_offset-pointersize*2;
                  parasize:=aktprocdef^.localst^.paramdatasize+procinfo^.para_offset-pointersize*2;
             {$ELSE}
             {$ELSE}
-               if (aktprocdef^.proctypeoption in [potype_unitinit,potype_proginit,potype_unitfinalize]) then
+               if (aktprocsym^.definition^.proctypeoption in [potype_unitinit,potype_proginit,potype_unitfinalize]) then
                  parasize:=0
                  parasize:=0
                else
                else
                  parasize:=aktprocsym^.definition^.parast^.datasize+procinfo^.para_offset-pointersize*2;
                  parasize:=aktprocsym^.definition^.parast^.datasize+procinfo^.para_offset-pointersize*2;
@@ -783,7 +783,7 @@ unit cgobj;
                if (pointerrupt in aktprocdef^.options) then
                if (pointerrupt in aktprocdef^.options) then
                  g_interrupt_stackframe_entry(list);
                  g_interrupt_stackframe_entry(list);
             {$ELSE}
             {$ELSE}
-               if (po_interrupt in aktprocdef^.procoptions) then
+               if (po_interrupt in aktprocsym^.definition^.procoptions) then
                  g_interrupt_stackframe_entry(list);
                  g_interrupt_stackframe_entry(list);
             {$ENDIF NEWST}
             {$ENDIF NEWST}
 
 
@@ -1020,7 +1020,7 @@ unit cgobj;
 
 
          {$IFNDEF NEWST}
          {$IFNDEF NEWST}
          { finalize paras data }
          { finalize paras data }
-         if assigned(aktprocdef^.parast) then
+         if assigned(aktprocsym^.definition^.parast) then
            aktprocsym^.definition^.parast^.foreach({$ifndef TP}@{$endif}_finalize_data);
            aktprocsym^.definition^.parast^.foreach({$ifndef TP}@{$endif}_finalize_data);
          {$ENDIF NEWST}
          {$ENDIF NEWST}
 
 
@@ -1329,7 +1329,14 @@ unit cgobj;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.36  2000-03-11 21:11:24  daniel
+  Revision 1.37  2000-04-22 14:25:03  jonas
+    * aasm.pas: pai_align instead of pai_align_abstract if cpu <> i386
+    + systems.pas: info for macos/ppc
+    * new/cgobj.pas: compiles again without newst define
+    * new/powerpc/cgcpu: generate different entry/exit code depending on
+      whether target_os is MacOs or Linux
+
+  Revision 1.36  2000/03/11 21:11:24  daniel
     * Ported hcgdata to new symtable.
     * Ported hcgdata to new symtable.
     * Alignment code changed as suggested by Peter
     * Alignment code changed as suggested by Peter
     + Usage of my is operator replacement, is_object
     + Usage of my is operator replacement, is_object

+ 40 - 7
compiler/new/powerpc/cgcpu.pas

@@ -62,11 +62,11 @@ unit cgcpu;
 
 
           procedure g_stackframe_entry_sysv(list : paasmoutput;localsize : longint);
           procedure g_stackframe_entry_sysv(list : paasmoutput;localsize : longint);
           procedure g_stackframe_entry_mac(list : paasmoutput;localsize : longint);
           procedure g_stackframe_entry_mac(list : paasmoutput;localsize : longint);
-{          procedure g_stackframe_entry(list : paasmoutput;localsize : longint);virtual;}
+          procedure g_stackframe_entry(list : paasmoutput;localsize : longint);virtual;
           procedure g_restore_frame_pointer(list : paasmoutput);virtual;
           procedure g_restore_frame_pointer(list : paasmoutput);virtual;
-{          procedure g_return_from_proc(list : paasmoutput;parasize : aword); virtual;}
-          procedure g_return_from_proc_sysv(list : paasmoutput;parasize : aword); virtual;
-          procedure g_return_from_proc_mac(list : paasmoutput;parasize : aword); virtual;
+          procedure g_return_from_proc(list : paasmoutput;parasize : aword); virtual;
+          procedure g_return_from_proc_sysv(list : paasmoutput;parasize : aword);
+          procedure g_return_from_proc_mac(list : paasmoutput;parasize : aword);
 
 
           procedure a_loadaddress_ref_reg(list : paasmoutput;const ref2 : treference;r : tregister);virtual;
           procedure a_loadaddress_ref_reg(list : paasmoutput;const ref2 : treference;r : tregister);virtual;
 
 
@@ -123,7 +123,7 @@ const
   implementation
   implementation
 
 
     uses
     uses
-       globtype,globals,verbose;
+       globtype,globals,verbose,systems;
 
 
 { parameter passing... Still needs extra support from the processor }
 { parameter passing... Still needs extra support from the processor }
 { independent code generator                                        }
 { independent code generator                                        }
@@ -365,6 +365,19 @@ const
 
 
 { *********** entry/exit code and address loading ************ }
 { *********** entry/exit code and address loading ************ }
 
 
+    procedure tcgppc.g_stackframe_entry(list : paasmoutput;localsize : longint);
+    begin
+      case target_os.id of
+        os_powerpc_macos:
+          g_stackframe_entry_mac(list,localsize);
+        os_powerpc_linux:
+          g_stackframe_entry_sysv(list,localsize)
+        else
+          internalerror(2204001);
+      end;
+    end;
+
+
     procedure tcgppc.g_stackframe_entry_sysv(list : paasmoutput;localsize : longint);
     procedure tcgppc.g_stackframe_entry_sysv(list : paasmoutput;localsize : longint);
  { generated the entry code of a procedure/function. Note: localsize is the }
  { generated the entry code of a procedure/function. Note: localsize is the }
  { sum of the size necessary for local variables and the maximum possible   }
  { sum of the size necessary for local variables and the maximum possible   }
@@ -481,6 +494,19 @@ const
  { no frame pointer on the PowerPC (maybe there is one in the SystemV ABI?)}
  { no frame pointer on the PowerPC (maybe there is one in the SystemV ABI?)}
       end;
       end;
 
 
+    procedure tcgppc.g_return_from_proc(list : paasmoutput;parasize : aword);
+    begin
+      case target_os.id of
+        os_powerpc_macos:
+          g_return_from_proc_mac(list,parasize);
+        os_powerpc_linux:
+          g_return_from_proc_sysv(list,parasize)
+        else
+          internalerror(2204001);
+      end;
+    end;
+
+
      procedure tcgppc.g_return_from_proc_sysv(list : paasmoutput;parasize : aword);
      procedure tcgppc.g_return_from_proc_sysv(list : paasmoutput;parasize : aword);
 
 
      var regcounter: TRegister;
      var regcounter: TRegister;
@@ -491,7 +517,7 @@ const
          a_reg_dealloc(list,regcounter);
          a_reg_dealloc(list,regcounter);
        { AltiVec context restore, not yet implemented !!! }
        { AltiVec context restore, not yet implemented !!! }
 
 
-       { address if gpr save area to r11 }
+       { address of gpr save area to r11 }
        list^.concat(new(paicpu,op_reg_reg_const(A_ADDI,R_11,R_31,-144)));
        list^.concat(new(paicpu,op_reg_reg_const(A_ADDI,R_11,R_31,-144)));
        { restore gprs }
        { restore gprs }
        list^.concat(new(paicpu,op_sym_ofs(A_BL,newasmsymbol('_restgpr_14'),0)));
        list^.concat(new(paicpu,op_sym_ofs(A_BL,newasmsymbol('_restgpr_14'),0)));
@@ -719,7 +745,14 @@ const
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.11  2000-01-07 01:14:57  peter
+  Revision 1.12  2000-04-22 14:25:04  jonas
+    * aasm.pas: pai_align instead of pai_align_abstract if cpu <> i386
+    + systems.pas: info for macos/ppc
+    * new/cgobj.pas: compiles again without newst define
+    * new/powerpc/cgcpu: generate different entry/exit code depending on
+      whether target_os is MacOs or Linux
+
+  Revision 1.11  2000/01/07 01:14:57  peter
     * updated copyright to 2000
     * updated copyright to 2000
 
 
   Revision 1.10  1999/12/24 22:48:10  jonas
   Revision 1.10  1999/12/24 22:48:10  jonas

+ 98 - 17
compiler/systems.pas

@@ -61,7 +61,7 @@ unit systems;
             target_i386_OS2,target_i386_Win32
             target_i386_OS2,target_i386_Win32
             ,target_m68k_Amiga,target_m68k_Atari,target_m68k_Mac,
             ,target_m68k_Amiga,target_m68k_Atari,target_m68k_Mac,
             target_m68k_linux,target_m68k_PalmOS,target_alpha_linux,
             target_m68k_linux,target_m68k_PalmOS,target_alpha_linux,
-            target_powerpc_linux
+            target_powerpc_linux,target_powerpc_macos
        );
        );
 
 
        ttargetflags = (tf_none,
        ttargetflags = (tf_none,
@@ -72,7 +72,7 @@ unit systems;
        {$ifdef i386} i386targetcnt=5; {$else} i386targetcnt=0; {$endif}
        {$ifdef i386} i386targetcnt=5; {$else} i386targetcnt=0; {$endif}
        {$ifdef m68k} m68ktargetcnt=5; {$else} m68ktargetcnt=0; {$endif}
        {$ifdef m68k} m68ktargetcnt=5; {$else} m68ktargetcnt=0; {$endif}
        {$ifdef alpha} alphatargetcnt=1; {$else} alphatargetcnt=0; {$endif}
        {$ifdef alpha} alphatargetcnt=1; {$else} alphatargetcnt=0; {$endif}
-       {$ifdef powerpc} powerpctargetcnt=1; {$else} powerpctargetcnt=0; {$endif}
+       {$ifdef powerpc} powerpctargetcnt=2; {$else} powerpctargetcnt=0; {$endif}
        targetcnt=i386targetcnt+m68ktargetcnt+alphatargetcnt+powerpctargetcnt+1;
        targetcnt=i386targetcnt+m68ktargetcnt+alphatargetcnt+powerpctargetcnt+1;
 
 
      type
      type
@@ -83,14 +83,14 @@ unit systems;
             as_i386_tasm,as_i386_masm,
             as_i386_tasm,as_i386_masm,
             as_i386_dbg,as_i386_coff,as_i386_pecoff
             as_i386_dbg,as_i386_coff,as_i386_pecoff
             ,as_m68k_as,as_m68k_gas,as_m68k_mit,as_m68k_mot,as_m68k_mpw,
             ,as_m68k_as,as_m68k_gas,as_m68k_mit,as_m68k_mot,as_m68k_mpw,
-            as_alpha_as,as_powerpc_as
+            as_alpha_as,as_powerpc_as,as_powerpc_mpw
        );
        );
        { binary assembler writers, needed to test for -a }
        { binary assembler writers, needed to test for -a }
      const
      const
        {$ifdef i386} i386asmcnt=12; {$else} i386asmcnt=0; {$endif}
        {$ifdef i386} i386asmcnt=12; {$else} i386asmcnt=0; {$endif}
        {$ifdef m68k} m68kasmcnt=5; {$else} m68kasmcnt=0; {$endif}
        {$ifdef m68k} m68kasmcnt=5; {$else} m68kasmcnt=0; {$endif}
        {$ifdef alpha} alphaasmcnt=1; {$else} alphaasmcnt=0; {$endif}
        {$ifdef alpha} alphaasmcnt=1; {$else} alphaasmcnt=0; {$endif}
-       {$ifdef powerpc} powerpcasmcnt=1; {$else} powerpcasmcnt=0; {$endif}
+       {$ifdef powerpc} powerpcasmcnt=2; {$else} powerpcasmcnt=0; {$endif}
        asmcnt=i386asmcnt+m68kasmcnt+alphaasmcnt+powerpcasmcnt+1;
        asmcnt=i386asmcnt+m68kasmcnt+alphaasmcnt+powerpcasmcnt+1;
 
 
        binassem : set of tasm = [
        binassem : set of tasm = [
@@ -111,13 +111,13 @@ unit systems;
 
 
      type
      type
        tres = (res_none
        tres = (res_none
-            ,res_i386_windres
+            ,res_i386_windres,res_m68k_mpw,res_powerpc_mpw
        );
        );
      const
      const
        {$ifdef i386} i386rescnt=1; {$else} i386rescnt=0; {$endif}
        {$ifdef i386} i386rescnt=1; {$else} i386rescnt=0; {$endif}
-       {$ifdef m68k} m68krescnt=0; {$else} m68krescnt=0; {$endif}
+       {$ifdef m68k} m68krescnt=1; {$else} m68krescnt=0; {$endif}
        {$ifdef alpha} alpharescnt=0; {$else} alpharescnt=0; {$endif}
        {$ifdef alpha} alpharescnt=0; {$else} alpharescnt=0; {$endif}
-       {$ifdef powerpc} powerpcrescnt=0; {$else} powerpcrescnt=0; {$endif}
+       {$ifdef powerpc} powerpcrescnt=1; {$else} powerpcrescnt=0; {$endif}
        rescnt=i386rescnt+m68krescnt+alpharescnt+powerpcrescnt+1;
        rescnt=i386rescnt+m68krescnt+alpharescnt+powerpcrescnt+1;
 
 
      type
      type
@@ -125,13 +125,13 @@ unit systems;
             os_i386_GO32V1,os_i386_GO32V2,os_i386_Linux,os_i386_OS2,
             os_i386_GO32V1,os_i386_GO32V2,os_i386_Linux,os_i386_OS2,
             os_i386_Win32,
             os_i386_Win32,
             os_m68k_Amiga,os_m68k_Atari,os_m68k_Mac,os_m68k_Linux,
             os_m68k_Amiga,os_m68k_Atari,os_m68k_Mac,os_m68k_Linux,
-            os_m68k_PalmOS,os_alpha_linux,os_powerpc_linux
+            os_m68k_PalmOS,os_alpha_linux,os_powerpc_linux,os_powerpc_macos
        );
        );
      const
      const
        i386oscnt=5;
        i386oscnt=5;
        m68koscnt=5;
        m68koscnt=5;
        alphaoscnt=1;
        alphaoscnt=1;
-       powerpcoscnt=1;
+       powerpcoscnt=2;
        oscnt=i386oscnt+m68koscnt+alphaoscnt+powerpcoscnt+1;
        oscnt=i386oscnt+m68koscnt+alphaoscnt+powerpcoscnt+1;
 
 
    type
    type
@@ -398,11 +398,11 @@ implementation
             id     : os_m68k_mac;
             id     : os_m68k_mac;
             name         : 'Macintosh m68k';
             name         : 'Macintosh m68k';
             shortname    : 'mac';
             shortname    : 'mac';
-            sharedlibext : '.dll';
-            staticlibext : '.a';
+            sharedlibext : 'Lib';
+            staticlibext : 'Lib';
             sourceext    : '.pp';
             sourceext    : '.pp';
             pasext       : '.pas';
             pasext       : '.pas';
-            exeext       : '.tpp';
+            exeext       : '';
             defext       : '';
             defext       : '';
             scriptext    : '';
             scriptext    : '';
             libprefix    : '';
             libprefix    : '';
@@ -483,7 +483,7 @@ implementation
             name         : 'Linux for PowerPC';
             name         : 'Linux for PowerPC';
             shortname    : 'linuxppc';
             shortname    : 'linuxppc';
             sharedlibext : '.so';
             sharedlibext : '.so';
-            staticlibext : '.a';
+            staticlibext : '.s';
             sourceext    : '.pp';
             sourceext    : '.pp';
             pasext       : '.pas';
             pasext       : '.pas';
             exeext       : '';
             exeext       : '';
@@ -498,6 +498,27 @@ implementation
             size_of_longint : 4;
             size_of_longint : 4;
             use_bound_instruction : false;
             use_bound_instruction : false;
             use_function_relative_addresses : true
             use_function_relative_addresses : true
+          ),
+          (
+            id     : os_powerpc_macos;
+            name         : 'MacOs (PowerPC)';
+            shortname    : 'MacOs/PPC';
+            sharedlibext : 'Lib';
+            staticlibext : 'Lib';
+            sourceext    : '.pp';
+            pasext       : '.pas';
+            exeext       : '';
+            defext       : '';
+            scriptext    : '';
+            libprefix    : '';
+            Cprefix      : '';
+            newline      : #13;
+            endian       : endian_big;
+            stackalignment : 8;
+            size_of_pointer : 4;
+            size_of_longint : 4;
+            use_bound_instruction : false;
+            use_function_relative_addresses : true
           )
           )
           );
           );
 
 
@@ -764,7 +785,7 @@ implementation
             externals : false;
             externals : false;
             needar : true;
             needar : true;
             labelprefix : '__L';
             labelprefix : '__L';
-            comment : '| ';
+            comment : '* ';
             secnames : ('',
             secnames : ('',
               '.text','.data','.bss',
               '.text','.data','.bss',
               '.idata$2','.idata$4','.idata$5','.idata$6','.idata$7','.edata',
               '.idata$2','.idata$4','.idata$5','.idata$6','.idata$7','.edata',
@@ -804,6 +825,21 @@ implementation
               '','','','','','',
               '','','','','','',
               '.stab','.stabstr')
               '.stab','.stabstr')
           )
           )
+          ,(
+            id     : as_powerpc_mpw;
+            idtxt  : 'PPCAsm';
+            asmbin : 'PPCAsm';
+            asmcmd : '-o $OBJ $ASM';
+            allowdirect : true;
+            externals : false;
+            needar : true;
+            labelprefix : '.L';
+            comment : '; ';
+            secnames : ('',
+              '.text','.data','.bss',
+              '','','','','','',
+              '.stab','.stabstr')
+          )
 {$endif}
 {$endif}
           );
           );
 
 
@@ -860,6 +896,20 @@ implementation
             rescmd : '--include $INC -O coff -o $OBJ $RES'
             rescmd : '--include $INC -O coff -o $OBJ $RES'
           )
           )
 {$endif i386}
 {$endif i386}
+{$ifdef m68k}
+          ,(
+            id     : res_m68k_mpw;
+            resbin : 'rez';
+            rescmd : '-i $INC -o $OBJ $RES'
+          )
+{$endif m68}
+{$ifdef powerpc}
+          ,(
+            id     : res_powerpc_mpw;
+            resbin : 'rez';
+            rescmd : '-i $INC -o $OBJ $RES'
+          )
+{$endif powerpc}
           );
           );
 
 
 
 
@@ -1147,9 +1197,9 @@ implementation
           ,(
           ,(
             target      : target_powerpc_LINUX;
             target      : target_powerpc_LINUX;
             flags       : [];
             flags       : [];
-            cpu         : alpha;
+            cpu         : powerpc;
             short_name  : 'LINUX';
             short_name  : 'LINUX';
-            unit_env    : 'LINUXUNITS';
+            unit_env    : '';
             system_unit : 'syslinux';
             system_unit : 'syslinux';
             smartext    : '.sl';
             smartext    : '.sl';
             unitext     : '.ppu';
             unitext     : '.ppu';
@@ -1167,6 +1217,30 @@ implementation
             heapsize    : 256*1024;
             heapsize    : 256*1024;
             maxheapsize : 32768*1024;
             maxheapsize : 32768*1024;
             stacksize   : 8192
             stacksize   : 8192
+          ),
+          (
+            target      : target_powerpc_MACOS;
+            flags       : [];
+            cpu         : powerpc;
+            short_name  : 'MACOS';
+            unit_env    : '';
+            system_unit : 'sysmac';
+            smartext    : '.sl';
+            unitext     : '.ppt';
+            unitlibext  : '.ppl';
+            asmext      : '.a';
+            objext      : '.o';
+            resext      : '.res';
+            resobjext   : '.or';
+            exeext      : '';
+            os          : os_powerpc_macos;
+            assem       : as_powerpc_mpw;
+            assemsrc    : as_powerpc_mpw;
+            ar          : ar_powerpc_ar;
+            res         : res_powerpc_mpw;
+            heapsize    : 256*1024;
+            maxheapsize : 32768*1024;
+            stacksize   : 8192
           )
           )
 {$endif}
 {$endif}
           );
           );
@@ -1525,7 +1599,14 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.101  2000-04-04 14:18:15  pierre
+  Revision 1.102  2000-04-22 14:25:03  jonas
+    * aasm.pas: pai_align instead of pai_align_abstract if cpu <> i386
+    + systems.pas: info for macos/ppc
+    * new/cgobj.pas: compiles again without newst define
+    * new/powerpc/cgcpu: generate different entry/exit code depending on
+      whether target_os is MacOs or Linux
+
+  Revision 1.101  2000/04/04 14:18:15  pierre
    * nasmwin32 is 9 chars long, idtxt changed accordingly
    * nasmwin32 is 9 chars long, idtxt changed accordingly
 
 
   Revision 1.100  2000/04/04 13:54:58  pierre
   Revision 1.100  2000/04/04 13:54:58  pierre