Most machines had undefined valu_t and redefined it to a different type. Edit mach/*/as/mach0.c to remove such redefinitions, so the next change to valu_t will affect all machines. Edit mach/proto/as/comm0.h to change valu_t to int64_t, and add uvalu_t and uint64_t. Remove int64_t y_valu8 from the yacc %union, now that valu_t y_valu can hold 64 bits. Replace y_valu8 with y_valu. The .data8 pseudo becomes less special; it now accepts absolute expressions. This change simplifies the assembler and seems to have no effect on the assembled output. Among the files in share/ack/examples, the only changes are in hilo_bas.* and startrek_c.linuxppc, but those files seem to change whenever I rebuild them.
		
			
				
	
	
		
			29 lines
		
	
	
	
		
			727 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			727 B
		
	
	
	
		
			C
		
	
	
	
	
	
/* $Id$ */
 | 
						|
/*
 | 
						|
 * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
 | 
						|
 * See the copyright notice in the ACK home directory, in the file "Copyright".
 | 
						|
 */
 | 
						|
/* @(#)mach0.c	1.5 */
 | 
						|
/*
 | 
						|
 * Motorola 68000/68010 options
 | 
						|
 */
 | 
						|
 | 
						|
#define	THREE_PASS		/* branch and offset optimization */
 | 
						|
#define	BYTES_REVERSED		/* high order byte has lowest address */
 | 
						|
#define	WORDS_REVERSED		/* high order word has lowest address */
 | 
						|
#define	LISTING			/* enable listing facilities */
 | 
						|
#define RELOCATION		/* generate relocatable code */
 | 
						|
#define DEBUG 0
 | 
						|
 | 
						|
#define Xfit(f)		if (!(f)) Xnofit();
 | 
						|
 | 
						|
#undef	ADDR_T
 | 
						|
#define	ADDR_T		long
 | 
						|
 | 
						|
#undef	ALIGNWORD
 | 
						|
#define	ALIGNWORD	2
 | 
						|
#undef	ALIGNSECT
 | 
						|
#define	ALIGNSECT	2
 | 
						|
 | 
						|
#undef	VALWIDTH
 | 
						|
#define	VALWIDTH	8
 |