aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/ChangeLog19
-rw-r--r--gas/NEWS3
-rw-r--r--gas/config/tc-h8300.c14
-rw-r--r--gas/config/tc-h8300.h2
-rw-r--r--gas/config/tc-sh.c6
-rw-r--r--gas/config/tc-sh.h2
-rw-r--r--gas/doc/as.texinfo4
-rw-r--r--gas/doc/c-h8300.texi14
-rw-r--r--gas/doc/c-m32c.texi2
-rw-r--r--gas/doc/c-sh.texi3
-rw-r--r--gas/doc/c-sh64.texi3
11 files changed, 65 insertions, 7 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 8cba2db..6f03d92 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,22 @@
+2008-08-06 DJ Delorie <dj@redhat.com>
+
+ * NEWS: Mention these changes.
+
+ * config/tc-h8300.h (H_TICK_HEX): Define.
+ * config/tc-h8300.c (OPTION_H_TICK_HEX): New.
+ (md_longopts): Add "-h-tick-hex".
+ (md_parse_option): Support it.
+ * doc/c-h8300.texi (H8/300 Options): Document it.
+ * doc/as.texinfo (Overview): Likewise.
+
+ * config/tc-sh.h (H_TICK_HEX): Define.
+ * config/tc-sh.c (OPTION_H_TICK_HEX): New.
+ (md_longopts): Add "-h-tick-hex".
+ (md_parse_option): Support it.
+ * doc/c-sh.texi (SH Options): Document it.
+ * doc/c-sh64.texi (SH64 Options): Document it.
+ * doc/as.texinfo (Overview): Likewise.
+
2008-08-05 Alan Modra <amodra@bigpond.net.au>
PR gas/6656
diff --git a/gas/NEWS b/gas/NEWS
index da7fe0d..e3d2f0f 100644
--- a/gas/NEWS
+++ b/gas/NEWS
@@ -1,4 +1,7 @@
-*- text -*-
+* New command line option, -h-tick-hex, for sh, m32c, and h8/300 targets, which
+ adds compatibility with H'00 style hex constants.
+
* New command line option, -msse-check=[none|error|warning], for x86
targets.
diff --git a/gas/config/tc-h8300.c b/gas/config/tc-h8300.c
index 95864f3..86b2450 100644
--- a/gas/config/tc-h8300.c
+++ b/gas/config/tc-h8300.c
@@ -2018,8 +2018,11 @@ md_atof (int type, char *litP, int *sizeP)
return ieee_md_atof (type, litP, sizeP, TRUE);
}
+#define OPTION_H_TICK_HEX (OPTION_MD_BASE)
+
const char *md_shortopts = "";
struct option md_longopts[] = {
+ { "h-tick-hex", no_argument, NULL, OPTION_H_TICK_HEX },
{NULL, no_argument, NULL, 0}
};
@@ -2028,7 +2031,16 @@ size_t md_longopts_size = sizeof (md_longopts);
int
md_parse_option (int c ATTRIBUTE_UNUSED, char *arg ATTRIBUTE_UNUSED)
{
- return 0;
+ switch (c)
+ {
+ case OPTION_H_TICK_HEX:
+ enable_h_tick_hex = 1;
+ break;
+
+ default:
+ return 0;
+ }
+ return 1;
}
void
diff --git a/gas/config/tc-h8300.h b/gas/config/tc-h8300.h
index 58849a2..4a2427c 100644
--- a/gas/config/tc-h8300.h
+++ b/gas/config/tc-h8300.h
@@ -89,3 +89,5 @@ extern int SXmode;
/* This target is buggy, and sets fix size too large. */
#define TC_FX_SIZE_SLACK(FIX) 1
+
+#define H_TICK_HEX 1
diff --git a/gas/config/tc-sh.c b/gas/config/tc-sh.c
index ac6e17f..2ed1b8e 100644
--- a/gas/config/tc-sh.c
+++ b/gas/config/tc-sh.c
@@ -3096,6 +3096,7 @@ enum options
OPTION_NO_EXPAND,
OPTION_PT32,
#endif
+ OPTION_H_TICK_HEX,
OPTION_DUMMY /* Not used. This is just here to make it easy to add and subtract options from this enum. */
};
@@ -3122,6 +3123,7 @@ struct option md_longopts[] =
{"no-expand", no_argument, NULL, OPTION_NO_EXPAND},
{"expand-pt32", no_argument, NULL, OPTION_PT32},
#endif /* HAVE_SH64 */
+ { "h-tick-hex", no_argument, NULL, OPTION_H_TICK_HEX },
{NULL, no_argument, NULL, 0}
};
@@ -3252,6 +3254,10 @@ md_parse_option (int c, char *arg ATTRIBUTE_UNUSED)
break;
#endif /* HAVE_SH64 */
+ case OPTION_H_TICK_HEX:
+ enable_h_tick_hex = 1;
+ break;
+
default:
return 0;
}
diff --git a/gas/config/tc-sh.h b/gas/config/tc-sh.h
index 8f2af48..dfdabd4 100644
--- a/gas/config/tc-sh.h
+++ b/gas/config/tc-sh.h
@@ -247,3 +247,5 @@ extern int sh_regname_to_dw2regnum (char *regname);
#define DWARF2_CIE_DATA_ALIGNMENT (-4)
#endif /* OBJ_ELF */
+
+#define H_TICK_HEX 1
diff --git a/gas/doc/as.texinfo b/gas/doc/as.texinfo
index 2a373da..9426f5a 100644
--- a/gas/doc/as.texinfo
+++ b/gas/doc/as.texinfo
@@ -293,7 +293,9 @@ gcc(1), ld(1), and the Info entries for @file{binutils} and @file{ld}.
[@b{-O}|@b{-n}|@b{-N}]
@end ifset
@ifset H8
-@c Renesas family chips have no machine-dependent assembler options
+
+@emph{Target H8/300 options:}
+ [-h-tick-hex]
@end ifset
@ifset HPPA
@c HPPA has no machine-dependent assembler options (yet).
diff --git a/gas/doc/c-h8300.texi b/gas/doc/c-h8300.texi
index d75f738..c725abd 100644
--- a/gas/doc/c-h8300.texi
+++ b/gas/doc/c-h8300.texi
@@ -20,10 +20,16 @@
@node H8/300 Options
@section Options
-@cindex H8/300 options (none)
-@cindex options, H8/300 (none)
-@code{@value{AS}} has no additional command-line options for the
-Renesas (formerly Hitachi) H8/300 family.
+@cindex H8/300 options
+@cindex options, H8/300
+The Renesas H8/300 version of @code{@value{AS}} has one
+machine-dependent option:
+
+@table @code
+@item -h-tick-hex
+Support H'00 style hex constants in addition to 0x00 style.
+
+@end table
@node H8/300 Syntax
@section Syntax
diff --git a/gas/doc/c-m32c.texi b/gas/doc/c-m32c.texi
index 026f6a2..2adc2a6 100644
--- a/gas/doc/c-m32c.texi
+++ b/gas/doc/c-m32c.texi
@@ -30,7 +30,7 @@ change the default to the M32C microprocessor.
@cindex options, M32C
@cindex M32C options
-The Renesas M32C version of @code{@value{AS}} has two
+The Renesas M32C version of @code{@value{AS}} has these
machine-dependent options:
@table @code
diff --git a/gas/doc/c-sh.texi b/gas/doc/c-sh.texi
index e6dbe4b..75d2191 100644
--- a/gas/doc/c-sh.texi
+++ b/gas/doc/c-sh.texi
@@ -63,6 +63,9 @@ Enable sh2e, sh3e, sh4, and sh4a insn sets.
@item --isa=all
Enable sh1, sh2, sh2e, sh3, sh3e, sh4, sh4a, and sh-dsp insn sets.
+@item -h-tick-hex
+Support H'00 style hex constants in addition to 0x00 style.
+
@end table
@node SH Syntax
diff --git a/gas/doc/c-sh64.texi b/gas/doc/c-sh64.texi
index c38d14e..b24190e 100644
--- a/gas/doc/c-sh64.texi
+++ b/gas/doc/c-sh64.texi
@@ -65,6 +65,9 @@ Do not expand MOVI, PT, PTA or PTB instructions.
@item -expand-pt32
With -abi=64, expand PT, PTA and PTB instructions to 32 bits only.
+@item -h-tick-hex
+Support H'00 style hex constants in addition to 0x00 style.
+
@end table
@node SH64 Syntax