Browse Source

Configured distr system for the 6.0pre3 release.

dtrg 17 years ago
parent
commit
54ce3f451b
12 changed files with 94 additions and 18 deletions
  1. 2 0
      .distr
  2. 9 0
      CHANGES
  3. 6 5
      README
  4. 0 1
      lang/cem/libcc.ansi/headers/.distr
  5. 2 4
      mach/i80/.distr
  6. 38 2
      mach/i80/libem/.distr
  7. 5 2
      mach/i80/libend/.distr
  8. 1 0
      mach/i80/pmfile
  9. 1 0
      mach/i80/top/.distr
  10. 16 0
      mach/i80/top/table
  11. 5 4
      plat/cpm/.distr
  12. 9 0
      plat/cpm/descr

+ 2 - 0
.distr

@@ -46,9 +46,11 @@ lang/m2
 #lang/basic
 #lang/basic
 
 
 mach/proto
 mach/proto
+mach/i80
 mach/i86
 mach/i86
 mach/i386
 mach/i386
 
 
+plat/cpm
 plat/pc86
 plat/pc86
 plat/linux386
 plat/linux386
 
 

+ 9 - 0
CHANGES

@@ -2,6 +2,15 @@
 # $State$
 # $State$
 # $Revision$
 # $Revision$
 
 
+6.0pre3
+
+  Added the cpm platform. Made some optimisations to the i80 code generator,
+  including getting topgen up and running and adding some peephole optimiser
+  rules. Fixed loads of bugs in ego so that it now works on platforms that
+  support it (pc86 and linux386). Made the floating point work on platforms
+  that support it (pc86 and linux386 again). Made stdint.h work. Lots and lots
+  of bugfixes and tweaks everywhere.
+  
 6.0pre2
 6.0pre2
 
 
   Much simplified the syscall interface by disabling libmon and instead
   Much simplified the syscall interface by disabling libmon and instead

+ 6 - 5
README

@@ -2,11 +2,11 @@
 # $State$
 # $State$
 # $Revision$
 # $Revision$
 
 
-                     THE AMSTERDAM COMPILER KIT V6.0pre2
+                     THE AMSTERDAM COMPILER KIT V6.0pre3
                      ===================================
                      ===================================
 
 
                   © 1987-2005 Vrije Universiteit, Amsterdam
                   © 1987-2005 Vrije Universiteit, Amsterdam
-                                2007-04-24
+                                2007-04-29
 
 
 
 
 INTRODUCTION
 INTRODUCTION
@@ -34,6 +34,7 @@ Platforms:
 
 
 pc86          produces bootable floppy disk images for 8086 PCs
 pc86          produces bootable floppy disk images for 8086 PCs
 linux386      produces ELF executables for PC Linux systems
 linux386      produces ELF executables for PC Linux systems
+cpm           produces i80 CP/M .COM files
 
 
 
 
 INSTALLATION
 INSTALLATION
@@ -125,8 +126,8 @@ GOTCHAS
 
 
 There are some things you should be aware of.
 There are some things you should be aware of.
 
 
-- Look at plat/linux386/README and plat/pc86/README for information about the
-  two supported platforms.
+- Look at plat/<PLATFORMNAME>/README for information about the two supported
+  platforms.
   
   
 - The library support is fairly limited; for C, it's at roughly the ANSI C
 - The library support is fairly limited; for C, it's at roughly the ANSI C
   level, and for the other languages it's similar.
   level, and for the other languages it's similar.
@@ -166,4 +167,4 @@ Please enjoy.
 
 
 David Given (dtrg on Sourceforge)
 David Given (dtrg on Sourceforge)
 dg@cowlark.com
 dg@cowlark.com
-2007-04-24
+2007-04-29

+ 0 - 1
lang/cem/libcc.ansi/headers/.distr

@@ -20,4 +20,3 @@ stdbool.h
 fcntl.h
 fcntl.h
 tgmath.h
 tgmath.h
 locale.h
 locale.h
-stdint.h

+ 2 - 4
mach/i80/.distr

@@ -1,8 +1,6 @@
-Action
+pmfile
 as
 as
+top
 ncg
 ncg
-dl
 libem
 libem
 libend
 libend
-libmon
-mach_params

+ 38 - 2
mach/i80/libem/.distr

@@ -1,2 +1,38 @@
-LIST
-libem_s.a
+pmfile
+aar2.s
+adi4.s
+and.s
+blm.s
+cii.s
+cmi4.s
+cms.s
+com.s
+csa.s
+csb.s
+dup.s
+dvi2.s
+dvi4.s
+exg.s
+flp.s
+inn.s
+ior.s
+lar2.s
+loi.s
+mli2.s
+mli4.s
+mlu2.s
+ngi4.s
+nop.s
+rck.s
+rol4.s
+ror4.s
+sar2.s
+sbi4.s
+set2.s
+set.s
+sli2.s
+sli4.s
+sri2.s
+sri4.s
+sti.s
+xor.s

+ 5 - 2
mach/i80/libend/.distr

@@ -1,2 +1,5 @@
-LIST
-end_s.a
+pmfile
+edata.s
+em_end.s
+end.s
+etext.s

+ 1 - 0
mach/i80/pmfile

@@ -11,6 +11,7 @@ mach_i80 = group {
 	
 	
 	proto_as,
 	proto_as,
 	proto_ncg { ARCHDIR = "i80" },
 	proto_ncg { ARCHDIR = "i80" },
+	proto_top,
 	
 	
 	install = pm.install("%ROOTDIR%/lib/%ARCH%/descr", "%BINDIR%%PLATIND%/%ARCH%/descr")
 	install = pm.install("%ROOTDIR%/lib/%ARCH%/descr", "%BINDIR%%PLATIND%/%ARCH%/descr")
 }
 }

+ 1 - 0
mach/i80/top/.distr

@@ -0,0 +1 @@
+table

+ 16 - 0
mach/i80/top/table

@@ -0,0 +1,16 @@
+
+/* 68020 desciptor table for ACK target optimizer */
+
+MAXOP 2;
+
+%%;
+
+X, Y, Z             { TRUE };
+%%;
+
+mvi X, Y : mov X, Z          -> mov X, Z ;
+
+xchg : inx h : xchg          -> inx d ;
+xchg : inx d : xchg          -> inx h ;
+
+%%;

+ 5 - 4
plat/cpm/.distr

@@ -4,21 +4,22 @@ pmfile
 README
 README
 include/ack/config.h
 include/ack/config.h
 include/unistd.h
 include/unistd.h
+include/cpm.h
 libsys/pmfile
 libsys/pmfile
-libsys/_hol0.s
+libsys/_bdos.s
 libsys/brk.c
 libsys/brk.c
 libsys/close.c
 libsys/close.c
 libsys/creat.c
 libsys/creat.c
 libsys/errno.s
 libsys/errno.s
 libsys/getpid.c
 libsys/getpid.c
+libsys/_hol0.s
+libsys/_inn2.s
 libsys/isatty.c
 libsys/isatty.c
 libsys/kill.c
 libsys/kill.c
-libsys/libsys.h
 libsys/lseek.c
 libsys/lseek.c
 libsys/open.c
 libsys/open.c
 libsys/read.c
 libsys/read.c
 libsys/signal.c
 libsys/signal.c
 libsys/time.c
 libsys/time.c
+libsys/_trap.s
 libsys/write.c
 libsys/write.c
-libsys/_sys_rawread.s
-libsys/_sys_rawwrite.s

+ 9 - 0
plat/cpm/descr

@@ -28,6 +28,15 @@ name be
 	stdout
 	stdout
 	need .e
 	need .e
 end
 end
+name asopt
+	from .s
+	to .so
+	program {EM}/lib.bin/{PLATFORM}/top
+	args
+	optimizer
+	stdin
+	stdout
+end
 name as
 name as
 	from .s.so
 	from .s.so
 	to .o
 	to .o