From 10db66ecfd20b6af9528af63ffd1c632ef8556c6 Mon Sep 17 00:00:00 2001 From: Ken Raeburn Date: Wed, 27 Jul 1994 00:58:19 +0000 Subject: [PATCH] I80960XL support (sanitized), misc cleanup: * config/tc-i960.h (TC_COFF_SET_MACHINE): New macro. Calls tc_headers_hook. * config/tc-i960.c (targ_has_iclass): Use I_CX | I_CX2 where I_CX was used previously. (tc_headers_hook): If I_CX2 is found, set flags to F_I960CA. * config/tc-i960.c (po_hash): Declaration deleted. (next_object_file_charP): Ditto. (regnames, aregs, coj): Now const. (parse_memop): Static array def_scale now const. (md_begin): Cast away const when passing hash routines addresses of values in regnames or aregs. (md_longopts): Added "link-relax" and "no-relax" hyphenated forms. Continue to accept one-word forms. (struct tabentry, arch_tab): Moved to top level from inside md_parse_option. Now const. (md_show_usage): Use arch_tab to generate usage message. Print hyphenated forms of relax options. * config/tc-i960.h (DEFINE_I960_AOUT, TC_S_IS_*, TC_S_*_SYSPROC, TC_S_FORCE_TO_*): Moved from here... * config/tc-i960.c: ... to here. Changed DEFINE_I960_AOUT stuff to test OBJ_AOUT and OBJ_BOUT directly. * config/tc-i960.h (CTRL, COBR, COJ, REG, MEM*, FBRA, CALLJ, M1-M3, REG_OPC, R_*, SFR, LIT, FP, OP, R, RS, RL, RSL, F, {R,F}{,L}{2,4}, M, SFR_OK, LIT_OK, FP_OK, REG_ALIGN, MEMOP, I_*): Macros deleted. * config/tc-i960.c (ARCH_XL): Define. (arch_tab): Include XL. (targ_has_sfr, targ_has_iclass): Handle XL. (tc_headers_hook): Set flags to F_I960XL for i960XL. --- gas/.Sanitize | 21 +++++++++++++++++++++ gas/ChangeLog | 37 +++++++++++++++++++++++++++++++++++++ gas/doc/as.1 | 4 ++-- 3 files changed, 60 insertions(+), 2 deletions(-) diff --git a/gas/.Sanitize b/gas/.Sanitize index d778c5c..99ce127 100644 --- a/gas/.Sanitize +++ b/gas/.Sanitize @@ -101,5 +101,26 @@ Things-to-lose: Do-last: +i960xl_files=ChangeLog +if ( echo $* | grep keep\-i960xl > /dev/null ) ; then + if [ -n "${verbose}" ] ; then + echo Keeping i960xl stuff in $i960xl_files. + fi +else + if [ -n "${verbose}" ]; then + echo -n Cleaning i960xl in `pwd`: + fi + for f in $i960xl_files ; do + if [ -n "${verbose}" ] ; then + echo -n " " $f + fi + sed '/start\-sanitize\-i960xl/,/end\-sanitize\-i960xl/d' < $f > new + if [ -n "${safe}" ] ; then + mv $f .Recover + fi + mv new $f + done +fi + # # End of file. diff --git a/gas/ChangeLog b/gas/ChangeLog index bca48be..6fc383d 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -34,6 +34,43 @@ Tue Jul 26 18:21:24 1994 Ken Raeburn (raeburn@cujo.cygnus.com) * config/obj-coff.c (fixup_segment) [TC_I960]: Use SF_GET_BALNAME and SF_GET_CALLNAME instead of the TC_S_IS_ versions. + * config/tc-i960.h (TC_COFF_SET_MACHINE): New macro. Calls + tc_headers_hook. + + * config/tc-i960.c (targ_has_iclass): Use I_CX | I_CX2 where I_CX + was used previously. + (tc_headers_hook): If I_CX2 is found, set flags to F_I960CA. + + * config/tc-i960.c (po_hash): Declaration deleted. + (next_object_file_charP): Ditto. + (regnames, aregs, coj): Now const. + (parse_memop): Static array def_scale now const. + (md_begin): Cast away const when passing hash routines addresses + of values in regnames or aregs. + (md_longopts): Added "link-relax" and "no-relax" hyphenated forms. + Continue to accept one-word forms. + (struct tabentry, arch_tab): Moved to top level from inside + md_parse_option. Now const. + (md_show_usage): Use arch_tab to generate usage message. Print + hyphenated forms of relax options. + + * config/tc-i960.h (DEFINE_I960_AOUT, TC_S_IS_*, TC_S_*_SYSPROC, + TC_S_FORCE_TO_*): Moved from here... + * config/tc-i960.c: ... to here. Changed DEFINE_I960_AOUT stuff + to test OBJ_AOUT and OBJ_BOUT directly. + + * config/tc-i960.h (CTRL, COBR, COJ, REG, MEM*, FBRA, CALLJ, + M1-M3, REG_OPC, R_*, SFR, LIT, FP, OP, R, RS, RL, RSL, F, + {R,F}{,L}{2,4}, M, SFR_OK, LIT_OK, FP_OK, REG_ALIGN, MEMOP, I_*): + Macros deleted. + + start-sanitize-i960xl + * config/tc-i960.c (ARCH_XL): Define. + (arch_tab): Include XL. + (targ_has_sfr, targ_has_iclass): Handle XL. + (tc_headers_hook): Set flags to F_I960XL for i960XL. + end-sanitize-i960xl + Fri Jul 15 15:36:51 1994 Ken Raeburn (raeburn@cujo.cygnus.com) * subsegs.c (section_symbol): Had last change backwards. diff --git a/gas/doc/as.1 b/gas/doc/as.1 index 2910279..8a9efe1 100644 --- a/gas/doc/as.1 +++ b/gas/doc/as.1 @@ -33,7 +33,7 @@ GNU as\-\-the portable GNU assembler. .RB "\||\|" \-ACC "\||\|" \-AKA "\||\|" \-AKB\c .RB "\||\|" \-AKC "\||\|" \-AMC "\|]" .RB "[\|" \-b "\|]" -.RB "[\|" \-norelax "\|]" +.RB "[\|" \-no-relax "\|]" .I m680x0-only options: .br @@ -181,7 +181,7 @@ Specify which variant of the 960 architecture is the target. (When configured for Intel 960.) Add code to collect statistics about branches taken. .TP -.B \-norelax +.B \-no-relax .I (When configured for Intel 960.) Do not alter compare-and-branch instructions for long displacements; -- 2.7.4