David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								196fa914b3 
								
							 
						 
						
							
							
								
								lxa now works, I hope; traps are better (and stubbed out on qemuppc).  
							
							
							
						 
						
							2016-11-20 11:57:21 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								d5328492d7 
								
							 
						 
						
							
							
								
								Better handling of float conversions; more tests; converting to unsigned ints  
							
							... 
							
							
							
							works now. 
							
						 
						
							2016-11-20 11:27:40 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								132baac78a 
								
							 
						 
						
							
							
								
								Add some more tests.  
							
							
							
						 
						
							2016-11-20 10:46:53 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								454a7494bb 
								
							 
						 
						
							
							
								
								cif8 and cuf8 work now. More tests.  
							
							
							
						 
						
							2016-11-19 11:42:30 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								db3564f35a 
								
							 
						 
						
							
							
								
								Use .hol0 as an additional name for hol0; mcg requires it.  
							
							
							
						 
						
							2016-11-19 11:09:07 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								d31bc6a3f9 
								
							 
						 
						
							
							
								
								Made csa and csb work with mcg; adjust the libem functions and the  
							
							... 
							
							
							
							corresponding invocation in the ncg table so the same helpers can be used for
both mcg and ncg. Add a new IR opcode, FARJUMP, which jumps to a helper
function but saves volatile registers. 
							
						 
						
							2016-11-19 10:55:41 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								a4616b7124 
								
							 
						 
						
							
							
								
								Betterer timeout handling.  
							
							
							
						 
						
							2016-11-17 22:04:50 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								c25ad82a89 
								
							 
						 
						
							
							
								
								Tests can now specify (via a hacky filename suffix) which runtime they want.  
							
							
							
						 
						
							2016-11-16 21:08:03 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								71e6ca26d5 
								
							 
						 
						
							
							
								
								Add another test.  
							
							
							
						 
						
							2016-11-16 20:56:45 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								edfee33576 
								
							 
						 
						
							
							
								
								Cleanup; the test driver is now way more robust.  
							
							
							
						 
						
							2016-11-16 20:50:14 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								cc686ded62 
								
							 
						 
						
							
							
								
								Get subtractions the right way round.  
							
							
							
						 
						
							2016-11-15 20:25:11 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								5e8babf098 
								
							 
						 
						
							
							
								
								Add a basic integer shift test.  
							
							
							
						 
						
							2016-11-14 22:12:13 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								c6bce0aaee 
								
							 
						 
						
							
							
								
								Add basic integer comparison test.  
							
							
							
						 
						
							2016-11-14 22:01:25 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								6a4f465f53 
								
							 
						 
						
							
							
								
								Add a rather bodged test framework for the qemuppc plat, which only runs if the  
							
							... 
							
							
							
							qemu-system-ppc emulator is installed. 
							
						 
						
							2016-11-13 13:37:22 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								f52cb45e49 
								
							 
						 
						
							
							
								
								Add just enough Open Firmware support for an output console.  
							
							
							
						 
						
							2016-11-12 22:09:54 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								48e74f46fc 
								
							 
						 
						
							
							
								
								Add the very experimental qemuppc plat, intended to generate minimal images  
							
							... 
							
							
							
							which can be emulated using qemu (for, hopefully, a test suite). Currently it
generates images which won't run because there's no RAM. 
							
						 
						
							2016-11-12 19:20:58 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								8c3670483f 
								
							 
						 
						
							
							
								
								Get top working with the PowerPC; use it to eliminate useless branches and  
							
							... 
							
							
							
							moves. 
							
						 
						
							2016-10-29 23:37:11 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								a8c4dac67c 
								
							 
						 
						
							
							
								
								Merge from default (merging in George Koehler's PowerPC changes).  
							
							
							
						 
						
							2016-10-29 22:40:40 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								5f0164db62 
								
							 
						 
						
							
							
								
								Bolt mcg into the PowerPC backend. It doesn't build yet, but it is generating  
							
							... 
							
							
							
							*some* code. 
							
						 
						
							2016-10-17 00:06:06 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								d539389e81 
								
							 
						 
						
							
							
								
								Merge in the unfinished PowerPC branch.  
							
							
							
						 
						
							2016-10-16 22:38:27 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									George Koehler 
								
							 
						 
						
							
							
							
							
								
							
							
								9017ba9dea 
								
							 
						 
						
							
							
								
								Merge branch 'default' into kernigh-linuxppc  
							
							
							
						 
						
							2016-09-30 13:55:06 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									George Koehler 
								
							 
						 
						
							
							
							
							
								
							
							
								ce5faba919 
								
							 
						 
						
							
							
								
								Remove .linenumber and .filename; use hol0 and hol0+4.  
							
							... 
							
							
							
							We need this because some .e files in lang/ are using 'loe 0' and 'lae
4' to load the line number from hol0 and filename from hol0+4. 
							
						 
						
							2016-09-30 13:40:36 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									George Koehler 
								
							 
						 
						
							
							
							
							
								
							
							
								b427d33f9f 
								
							 
						 
						
							
							
								
								Define the begdata, begrom, begbss symbols for linuxppc.  
							
							... 
							
							
							
							I copied the definitions from linux386 and linux68k.
This change also moves _errno and the other common symbols in boot.s
from .text to .bss.  Common symbols belong in .bss, but the assembler
seems dumb enough to put them in any section. 
							
						 
						
							2016-09-30 13:21:42 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									George Koehler 
								
							 
						 
						
							
							
							
							
								
							
							
								865ef629dd 
								
							 
						 
						
							
							
								
								Multiple tweaks to plat/linuxppc/descr  
							
							... 
							
							
							
							Don't define __POWERPC.  I don't know any other compiler that defines
__POWERPC and don't want to invent a new macro.  Apple's gcc 4.0.1
from Xcode 2.5 defines __ppc__, _ARCH_PPC, __POWERPC__.  Debian's gcc
4.9.2-10 defines _ARCH_PPC, __PPC__, __powerpc__, __PPC, __powerpc,
PPC, powerpc.
Move the base vm address from 0x80000000 down to 0x10000000, as this
is where Debian loads /bin/true.  This is still higher than the base
addresses for linux386 and linux68k.
Sync led's arguments with linux386. 
							
						 
						
							2016-09-21 16:26:30 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									George Koehler 
								
							 
						 
						
							
							
							
							
								
							
							
								f6dc6f6875 
								
							 
						 
						
							
							
								
								Implement isatty() for Linux.  
							
							... 
							
							
							
							If it understands TIOCGETD, then it is a tty, else it isn't one.  This
seems to help Basic's input statement so I can see the prompt before
I enter my input. 
							
						 
						
							2016-09-20 21:28:37 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									George Koehler 
								
							 
						 
						
							
							
							
							
								
							
							
								5b69777647 
								
							 
						 
						
							
							
								
								Rename our pseudo-opcode 'la' to 'li32'.  
							
							... 
							
							
							
							GNU as has "la %r4,8(%r3)" as an alias for "addi %r4,%r3,8", meaning
to load the address of the thing at 8(%r3).  Our 'la', now 'li32',
makes an addis/ori pair to load an immediate 32-bit value.  For
example, "li32 r4,23456789" loads a big number. 
							
						 
						
							2016-09-18 17:03:23 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								80cb6ba927 
								
							 
						 
						
							
							
								
								Eliminate the RELOH2 relocation, as it never worked --- the address would be  
							
							... 
							
							
							
							calculated incorrectly because of overflow errors.
Replace it with an extended RELOPPC relocation which understands addis/ori
pairs; add an la pseudoop to the assembler which generates these and the
appropriate relocation. Make good.
--HG--
branch : dtrg-experimental-powerpc-branch 
							
						 
						
							2016-09-17 12:43:15 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								45a950571d 
								
							 
						 
						
							
							
								
								Mostly add support for the experimental and largely broken linuxppc platform.  
							
							... 
							
							
							
							(Doesn't quite build.)
--HG--
branch : dtrg-experimental-powerpc-branch 
							
						 
						
							2016-09-15 23:12:03 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								8c94b1316c 
								
							 
						 
						
							
							
								
								Add unlink system call.  
							
							
							
						 
						
							2016-09-04 19:23:02 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								f67c98e239 
								
							 
						 
						
							
							
								
								Distributions are a pain --- let's not bother any more. Instead, we just tag  
							
							... 
							
							
							
							the repository and download a complete snapshot, old and ancient stuff and all. 
							
						 
						
							2016-09-02 23:00:38 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								612e38f1c6 
								
							 
						 
						
							
							
								
								Remove the old make-based build system, plus some big chunks of horribly  
							
							... 
							
							
							
							obsolete protomake build system. 
							
						 
						
							2016-09-02 22:17:51 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								5bae29a00c 
								
							 
						 
						
							
							
								
								ego now builds and is used.  
							
							... 
							
							
							
							This needed lots of refactoring to ego --- not all platforms have ego descr
files, and ego will just crash if you invoke it without one. I think originally
it was never intended that these platforms would be used at -O2 or above.
Plats now only specify the ego descr file if they have one. 
							
						 
						
							2016-08-21 22:01:19 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								1a7b4f8729 
								
							 
						 
						
							
							
								
								Build the examples when doing a normal build; this exercises the compiler as a  
							
							... 
							
							
							
							whole and is one step further towards a proper test suite. 
							
						 
						
							2016-08-20 14:05:24 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								edee22510b 
								
							 
						 
						
							
							
								
								liblinux is no more; its files are now in libsys.  
							
							
							
						 
						
							2016-08-20 14:03:49 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								52eaf753b6 
								
							 
						 
						
							
							
								
								rpi has a time() function; don't try to call gettimeofday().  
							
							
							
						 
						
							2016-08-20 14:03:19 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								204f932ed2 
								
							 
						 
						
							
							
								
								Raspberry Pi backend now builds.  
							
							
							
						 
						
							2016-08-20 12:40:13 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								420c47c386 
								
							 
						 
						
							
							
								
								Fix dependency error (only shows up with make, not ninja. Odd).  
							
							
							
						 
						
							2016-08-15 00:46:43 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								38fa6941d5 
								
							 
						 
						
							
							
								
								linux68k builds now.  
							
							
							
						 
						
							2016-08-14 11:34:18 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								3df4906d52 
								
							 
						 
						
							
							
								
								Turns out I wasn't building the syscall libraries. Do so.  
							
							
							
						 
						
							2016-08-14 11:23:57 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								b549980af2 
								
							 
						 
						
							
							
								
								Wasn't exporting the plat headers; refactor to make this a little cleaner.  
							
							
							
						 
						
							2016-08-14 11:01:36 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								f253b6a169 
								
							 
						 
						
							
							
								
								linux386 builds. Also, forgot to turn back on the language runtimes.  
							
							
							
						 
						
							2016-08-14 10:37:55 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								262c5fedcf 
								
							 
						 
						
							
							
								
								Biggish refactor to break cycles; my build rules were full of them. cpm builds,  
							
							... 
							
							
							
							which requires top and topgen. 
							
						 
						
							2016-08-14 01:39:40 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								e0b8bd221d 
								
							 
						 
						
							
							
								
								Pascal runtime library now builds.  
							
							
							
						 
						
							2016-08-13 13:07:19 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								e770d09dc8 
								
							 
						 
						
							
							
								
								Pascal compiler builds.  
							
							
							
						 
						
							2016-08-13 13:03:06 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								00c67fcc0e 
								
							 
						 
						
							
							
								
								Modula-2 runtime library now builds.  
							
							
							
						 
						
							2016-08-13 12:43:44 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								08b7c4aaae 
								
							 
						 
						
							
							
								
								The Basic runtime builds now.  
							
							
							
						 
						
							2016-08-12 00:24:40 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								7c60c27302 
								
							 
						 
						
							
							
								
								The Basic compiler works now.  
							
							
							
						 
						
							2016-08-12 00:19:51 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								3ce4e53aa9 
								
							 
						 
						
							
							
								
								Most of libc builds now (missing malloc).  
							
							
							
						 
						
							2016-08-08 23:55:47 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								0d77cb8279 
								
							 
						 
						
							
							
								
								We can build our first C file.  
							
							
							
						 
						
							2016-08-07 21:56:53 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								5e84be70fd 
								
							 
						 
						
							
							
								
								Massive ackbuilder refactor --- cleaner and more expressive. Lists  
							
							... 
							
							
							
							are automatically flattened (leading to better build files), and the
list and filename functions are vastly more orthogonal. 
							
						 
						
							2016-08-04 23:51:19 +02:00