aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCatherine Moore <clm@redhat.com>2005-02-23 02:44:18 +0000
committerCatherine Moore <clm@redhat.com>2005-02-23 02:44:18 +0000
commitee3c981485dea8e34e473f6bfaf1b1e8ed25f709 (patch)
tree88b3a9f014f49097796d83da8848c4e7b4208b14
parente46482877cdcd9161d63b10bc848f30f8f16a735 (diff)
downloadgdb-ee3c981485dea8e34e473f6bfaf1b1e8ed25f709.zip
gdb-ee3c981485dea8e34e473f6bfaf1b1e8ed25f709.tar.gz
gdb-ee3c981485dea8e34e473f6bfaf1b1e8ed25f709.tar.bz2
* read.c (read_a_source_file): Reinstate TC_EQUAL_IN_INSN test.
* doc/internals.texi (TC_EQUAL_IN_INSN): Reinstate.
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/doc/internals.texi8
-rw-r--r--gas/read.c10
3 files changed, 20 insertions, 3 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 6efebf6..fc664d4 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2005-02-22 Catherine Moore <clm@cm00re.com>
+
+ * read.c (read_a_source_file): Reinstate TC_EQUAL_IN_INSN test.
+ * doc/internals.texi (TC_EQUAL_IN_INSN): Reinstate.
+
2005-02-22 Eric Christopher <echristo@redhat.com>
* config/tc-mips.c (struct proc): Change isym to
diff --git a/gas/doc/internals.texi b/gas/doc/internals.texi
index 8cfd33e..d991670 100644
--- a/gas/doc/internals.texi
+++ b/gas/doc/internals.texi
@@ -1024,6 +1024,14 @@ LABELS_WITHOUT_COLONS is defined.
If you define this macro, GAS will not require pseudo-ops to start with a
@kbd{.} character.
+@item TC_EQUAL_IN_INSN
+@cindex TC_EQUAL_IN_INSN
+If you define this macro, it should return nonzero if the instruction is
+permitted to contain an @kbd{=} character. GAS will call it with two
+arguments, the character before the @kbd{=} character, and the value of
+the string preceding the equal sign. GAS uses this macro to decide if a
+@kbd{=} is an assignment or an instruction.
+
@item TC_EOL_IN_INSN
@cindex TC_EOL_IN_INSN
If you define this macro, it should return nonzero if the current input line
diff --git a/gas/read.c b/gas/read.c
index 9ee8d49..3c5734b 100644
--- a/gas/read.c
+++ b/gas/read.c
@@ -729,9 +729,13 @@ read_a_source_file (char *name)
/* Input_line_pointer->after ':'. */
SKIP_WHITESPACE ();
}
- else if (c == '='
- || ((c == ' ' || c == '\t')
- && input_line_pointer[1] == '='))
+ else if ((c == '='
+ || ((c == ' ' || c == '\t')
+ && input_line_pointer[1] == '='))
+#ifdef TC_EQUAL_IN_INSN
+ && !TC_EQUAL_IN_INSN (c, s)
+#endif
+ )
{
equals (s, 1);
demand_empty_rest_of_line ();