aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-m68k.c
diff options
context:
space:
mode:
authorKen Raeburn <raeburn@cygnus>1993-09-27 03:55:33 +0000
committerKen Raeburn <raeburn@cygnus>1993-09-27 03:55:33 +0000
commitb80d39a01c08c64e9f94c2158e713cfb754acf0b (patch)
tree560752ecd4edf7b89717ea0d15f0ab23d2c5a5d3 /gas/config/tc-m68k.c
parenteafdb6956165717645d77c919d43f35683d32367 (diff)
downloadgdb-b80d39a01c08c64e9f94c2158e713cfb754acf0b.zip
gdb-b80d39a01c08c64e9f94c2158e713cfb754acf0b.tar.gz
gdb-b80d39a01c08c64e9f94c2158e713cfb754acf0b.tar.bz2
(flag_want_pic): New variable, mostly ignored.
(md_parse_option) [TE_SUN3]: Set it for "-k". (m68k_ip): Generate proper fixup for mode 7.3.
Diffstat (limited to 'gas/config/tc-m68k.c')
-rw-r--r--gas/config/tc-m68k.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/gas/config/tc-m68k.c b/gas/config/tc-m68k.c
index 64f1ff2..0f243b8 100644
--- a/gas/config/tc-m68k.c
+++ b/gas/config/tc-m68k.c
@@ -81,6 +81,11 @@ CONST char FLT_CHARS[] = "rRsSfFdDxXeEpP";
const int md_reloc_size = 8; /* Size of relocation record */
+/* Are we trying to generate PIC code? If so, absolute references
+ ought to be made PC-relative. They aren't yet, but we can parse
+ the option now so the user doesn't get an error... */
+int flag_want_pic;
+
/* Its an arbitrary name: This means I don't approve of it */
/* See flames below */
static struct obstack robyn;
@@ -2273,9 +2278,15 @@ m68k_ip (instring)
{
if (opP->reg == PC)
{
+#if 0
add_frag (adds (opP->con1),
offs (opP->con1) + 2,
TAB (PCLEA, SZ_UNDEF));
+#else
+ addword (0x0170);
+ add_fix ('l', opP->con1, 0);
+ addword (0), addword (0);
+#endif
break;
}
else
@@ -4863,6 +4874,8 @@ s_proc (ignore)
* so don't use or document it, but that's the way the parsing
* works).
*
+ * -k Ignored for now. (Sun 3 only. Indicates PIC.)
+ *
* MAYBE_FLOAT_TOO is defined below so that specifying a processor type
* (e.g. m68020) also requests that float instructions be included. This
* is the default setup, mostly to avoid hassling users. A better
@@ -4890,6 +4903,12 @@ md_parse_option (argP, cntP, vecP)
jsr's. */
break;
+#ifdef TE_SUN3
+ case 'k':
+ flag_want_pic = 1;
+ break;
+#endif
+
case 'A':
(*argP)++;
/* intentional fall-through */