aboutsummaryrefslogtreecommitdiff
path: root/gas/as.c
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1995-07-05 21:52:10 +0000
committerIan Lance Taylor <ian@airs.com>1995-07-05 21:52:10 +0000
commita7aa7a2ba9d572c6ff085f28d540cd623214c63b (patch)
tree2e1b79cec1a3334fd41e06a6d11ec6d3060c4d6b /gas/as.c
parent9814e22f03d9380aa8865545b5c2a6840cc9d35d (diff)
downloadgdb-a7aa7a2ba9d572c6ff085f28d540cd623214c63b.zip
gdb-a7aa7a2ba9d572c6ff085f28d540cd623214c63b.tar.gz
gdb-a7aa7a2ba9d572c6ff085f28d540cd623214c63b.tar.bz2
* 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.
Diffstat (limited to 'gas/as.c')
-rw-r--r--gas/as.c23
1 files changed, 17 insertions, 6 deletions
diff --git a/gas/as.c b/gas/as.c
index 5a937b3..d439a95 100644
--- a/gas/as.c
+++ b/gas/as.c
@@ -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;