public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
[parent not found: <200502181605.j1IG5t7e028779@mx1.redhat.com>]
[parent not found: <200502171836.j1HIaXgg006973@mx1.redhat.com>]
* [PATCH]  Additional TC_EQUAL_IN_INSN check
@ 2005-02-15 18:10 Catherine Moore
  0 siblings, 0 replies; 7+ messages in thread
From: Catherine Moore @ 2005-02-15 18:10 UTC (permalink / raw)
  To: binutils; +Cc: clm


This patch adds an argument to TC_EQUAL_IN_INSN so that the current string
can be checked.  It also adds an additional check for TC_EQUAL_IN_INSN in
read_a_source_file.  The gas tests passed on targets linux, hppa-elf and
v850-elf. 

Okay to apply?

Thanks,
Catherine

2005-02-15  Catherine Moore <clm@cm00re.com>

	* read.c (read_a_source_file): Pass s to TC_EQUAL_IN_INSN.
	Add additional check for TC_EQUAL_IN_INSN.
	* config/tc-hppa.h (TC_EQUAL_IN_INSN): Add argument.
	* doc/internals.texi (TC_EQUAL_IN_INSN): Document new argument.


Index: doc/internals.texi
===================================================================
RCS file: /cvs/src/src/gas/doc/internals.texi,v
retrieving revision 1.40
diff -p -r1.40 internals.texi
*** doc/internals.texi	17 Aug 2004 12:19:58 -0000	1.40
--- doc/internals.texi	15 Feb 2005 13:14:43 -0000
*************** If you define this macro, GAS will not r
*** 1027,1036 ****
  @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
! @code{input_line_pointer} at that point.  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
--- 1027,1036 ----
  @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 three
! arguments, the character before the @kbd{=} character, the current string
! @code{s}, and the value of @code{input_line_pointer} at that point.  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
Index: read.c
===================================================================
RCS file: /cvs/src/src/gas/read.c,v
retrieving revision 1.88
diff -p -r1.88 read.c
*** read.c	31 Jan 2005 14:26:08 -0000	1.88
--- read.c	15 Feb 2005 13:14:46 -0000
*************** read_a_source_file (char *name)
*** 708,720 ****
  		  /* Input_line_pointer->after ':'.  */
  		  SKIP_WHITESPACE ();
  		}
! 	      else if (c == '='
  		       || ((c == ' ' || c == '\t')
  			   && input_line_pointer[1] == '='
  #ifdef TC_EQUAL_IN_INSN
! 			   && !TC_EQUAL_IN_INSN (c, input_line_pointer)
  #endif
  			   ))
  		{
  		  equals (s, 1);
  		  demand_empty_rest_of_line ();
--- 708,724 ----
  		  /* Input_line_pointer->after ':'.  */
  		  SKIP_WHITESPACE ();
  		}
! 	      else if ((c == '='
  		       || ((c == ' ' || c == '\t')
  			   && input_line_pointer[1] == '='
  #ifdef TC_EQUAL_IN_INSN
! 			   && !TC_EQUAL_IN_INSN (c, s, input_line_pointer)
  #endif
  			   ))
+ #ifdef TC_EQUAL_IN_INSN
+ 		      && !TC_EQUAL_IN_INSN (c, s, input_line_pointer)
+ #endif
+ 		      )
  		{
  		  equals (s, 1);
  		  demand_empty_rest_of_line ();
Index: config/tc-hppa.h
===================================================================
RCS file: /cvs/src/src/gas/config/tc-hppa.h,v
retrieving revision 1.26
diff -p -r1.26 tc-hppa.h
*** config/tc-hppa.h	27 Jul 2004 22:30:25 -0000	1.26
--- config/tc-hppa.h	15 Feb 2005 13:14:46 -0000
*************** extern const char	hppa_symbol_chars[];
*** 123,129 ****
     completer in an instruction.  This can be detected by checking the
     previous character, if the character is a comma, then the equal is
     being used as part of an instruction.  */
! #define TC_EQUAL_IN_INSN(C, PTR)	((C) == ',')
  
  /* Similarly for an exclamation point.  It is used in FP comparison
     instructions and as an end of line marker.  When used in an instruction
--- 123,129 ----
     completer in an instruction.  This can be detected by checking the
     previous character, if the character is a comma, then the equal is
     being used as part of an instruction.  */
! #define TC_EQUAL_IN_INSN(C, NAME, PTR)	((C) == ',')
  
  /* Similarly for an exclamation point.  It is used in FP comparison
     instructions and as an end of line marker.  When used in an instruction




^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2005-02-18 16:08 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <200502151337.j1FDb4u2012330@mx3.redhat.com>
2005-02-16 17:54 ` [PATCH] Additional TC_EQUAL_IN_INSN check Nick Clifton
2005-02-17 21:34   ` Catherine Moore
     [not found]   ` <20050217183642.EVRM13037.imta01ps.mx.bigpond.com@psmam02.bigpond.com>
2005-02-18 12:36     ` Alan Modra
     [not found] <200502181605.j1IG5t7e028779@mx1.redhat.com>
2005-02-18 22:14 ` Nick Clifton
     [not found] <200502171836.j1HIaXgg006973@mx1.redhat.com>
2005-02-18 21:41 ` Nick Clifton
2005-02-18 21:43   ` Catherine Moore
2005-02-15 18:10 Catherine Moore

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).