Syntax error in - RE: egcs/gcc ChangeLog genattrtab.c config/i386/i3 ...

Donn Terry donnte@microsoft.com
Wed Jun 28 13:55:00 GMT 2000


The piece of this patch that I include below contains an
ISO C (lowest common denominator compiler) violation: 
it includes newlines in a quoted string.  Since my bootstrap
compiler doesn't like that idea, it's a problem for me.
I can bandaid it easily, but you may prefer to fix it
"your way".  I haven't yet checked for further instances
of the same problem.

Donn


@@ -4550,18 +4795,25 @@
 	  (const_int 0)))]
   ""
   "test{b}\\t{%1, %0|%0, %1}"
-  [(set_attr "type" "icmp")
+  [(set_attr "type" "test")
+   (set_attr "modrm" "0,1,1")
+   (set_attr "mode" "QI")
    (set_attr "pent_pair" "uv,np,uv")])
 
 (define_insn "testqi_ccno_1"
   [(set (reg:CCNO 17)
-        (compare:CCNO (and:QI (match_operand:QI 0 "nonimmediate_operand"
"%*a,q,qm")
-			      (match_operand:QI 1 "nonmemory_operand"
"n,n,qn"))
+        (compare:CCNO (and:QI (match_operand:QI 0 "nonimmediate_operand"
"%*a,q,qm,r")
+			      (match_operand:QI 1 "nonmemory_operand"
"n,n,qn,n"))
 		      (const_int 0)))]
   ""
-  "test{b}\\t{%1, %0|%0, %1}"
-  [(set_attr "type" "icmp")
-   (set_attr "pent_pair" "uv,np,uv")])
>>>>>>>>>>>>>>>JUST BELOW HERE<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+  "test{b}\\t{%1, %0|%0, %1} 
+   test{b}\\t{%1, %0|%0, %1} 
+   test{b}\\t{%1, %0|%0, %1} 
+   test{l}\\t{%1, %0|%0, %1}"
+  [(set_attr "type" "test")
+   (set_attr "modrm" "0,1,1,1")
+   (set_attr "mode" "QI,QI,QI,SI")
+   (set_attr "pent_pair" "uv,np,uv,np")])
 
 (define_insn "*testqi_ext_ccz_0"
   [(set (reg:CCZ 17)



> -----Original Message-----
> From: hubicka@gcc.gnu.org [ mailto:hubicka@gcc.gnu.org ]
> Sent: Tuesday, June 27, 2000 3:25 AM
> To: gcc-cvs@gcc.gnu.org
> Subject: egcs/gcc ChangeLog genattrtab.c config/i386/i3 ...
> 
> 
> CVSROOT:	/cvs/gcc
> Module name:	egcs
> Changes by:	hubicka@sourceware.cygnus.com	00/06/27 03:24:39
> 
> Modified files:
> 	gcc            : ChangeLog genattrtab.c 
> 	gcc/config/i386: i386-protos.h i386.c i386.md 
> 
> Log message:
> 	* genattrtab.c (write_attr_value): Do not abort for 
> CONST_INT operands.
> 	* i386.c (ix86_attr_length_default): Kill.
> 	(ix86_attr_length_immediate_default, 
> ix86_attr_length_address_default):
> 	New.
> 	* i386-protos.h (ix86_attr_length_default): Kill
> 	(ix86_attr_length_immediate_default, 
> ix86_attr_length_address_default):
> 	Add prototype
> 	* i386.md (attribute type): Add "test".
> 	(attribute length_prefix): Kill.
> 	(attribute length_opcode): Kill.
> 	(attribute i387, mode, length_immediate, 
> length_address, prefix_data16,
> 	prefix_rep, prefix_0f, modrm): New.
> 	(attribute length): Compute using the new attributes.
> 	(attribute pent_prefix): New.
> 	(attribute pent_pair): Compute using pent_prefix.
> 	(all insn patterns): Set mode,modrm and 
> immediate_length attributes where
> 	needed.
> 	(cmpsi patterns): Compute sizes propertly for test instruction.
> 	(movsi, movhi patterns): Compute sizes propertly for 
> eax shortcuts.
> 	(movstricthi_xor, movstrictqi_xor): New patterns.
> 	(andsi/andhi): Use splitters to generate xor instructions.
> 	(xorqi_ext_1): New pattern.
> 	(movstricthi->movstricthi_xor peep2): New.
> 
> Patches:
> http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/ChangeLog.diff ?
cvsroot=gcc&r1=1.6973&r2=1.6974
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/genattrtab.c.diff?cvsroot=gcc
&r1=1.77&r2=1.78
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/config/i386/i386-protos.h.dif
f?cvsroot=gcc&r1=1.22&r2=1.23
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/config/i386/i386.c.diff?cvsro
ot=gcc&r1=1.163&r2=1.164
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/config/i386/i386.md.diff?cvsr
oot=gcc&r1=1.159&r2=1.160


More information about the Gcc-bugs mailing list