a434749fd9
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.
35 lines
781 B
C
35 lines
781 B
C
/*
|
|
* $Source$
|
|
* $State$
|
|
*/
|
|
|
|
#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
|
|
|
|
#undef ADDR_T
|
|
#define ADDR_T uint32_t
|
|
|
|
#undef word_t
|
|
#define word_t uint32_t
|
|
|
|
#undef ALIGNWORD
|
|
#define ALIGNWORD 4
|
|
|
|
#undef ALIGNSECT
|
|
#define ALIGNSECT 4
|
|
|
|
#undef VALWIDTH
|
|
#define VALWIDTH 8
|
|
|
|
#define FIXUPFLAGS (RELBR | RELWR)
|
|
|
|
/* 6-bit mb (mask begin) or me (mask end) field */
|
|
#define MB6(v) (((v) & 0x1F)<<6 | ((v) & 0x20)>>0)
|
|
|
|
/* 6-bit sh (shift) field */
|
|
#define SH6(v) (((v) & 0x1F)<<11 | ((v) & 0x20)>>4)
|