* config/tc-sparc.c (md_shortopts): Add "K:" if OBJ_ELF.

(md_parse_option): If OBJ_ELF, check for -K.  Die if -K PIC, since
	PIC code is not currently supported.

	* as.c (parse_args): Change std_shortopts to be an array rather
	than a constant string.  Only include 'K' if WORKING_DOT_WORD is
	not defined.  Only check for 'K' in that case as well.
	* as.h (flag_warn_displacement): Only declare if WORKING_DOT_WORD
	is not defined.
PR 7131.
This commit is contained in:
Ian Lance Taylor
1995-07-05 21:52:10 +00:00
parent 9814e22f03
commit a7aa7a2ba9
4 changed files with 85 additions and 58 deletions

View File

@@ -214,13 +214,22 @@ parse_args (pargc, pargv)
char *shortopts;
extern CONST char *md_shortopts;
#ifdef VMS
/* -v takes an argument on VMS, so we don't make it a generic option. */
CONST char *std_shortopts = "-JKLRWZfa::DI:o:wX";
#else
CONST char *std_shortopts = "-JKLRWZfa::DI:o:vwX";
static const char std_shortopts[] =
{
'-', 'J',
#ifndef WORKING_DOT_WORD
/* -K is not meaningful if .word is not being hacked. */
'K',
#endif
'L', 'R', 'W', 'Z', 'f', 'a', ':', ':', 'D', 'I', ':', 'o', ':',
#ifndef VMS
/* -v takes an argument on VMS, so we don't make it a generic
option. */
'v',
#endif
'w', 'X',
'\0'
};
struct option *longopts;
extern struct option md_longopts[];
extern size_t md_longopts_size;
@@ -348,9 +357,11 @@ parse_args (pargc, pargv)
flag_signed_overflow_ok = 1;
break;
#ifndef WORKING_DOT_WORD
case 'K':
flag_warn_displacement = 1;
break;
#endif
case 'L':
flag_keep_locals = 1;