This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Patch to optabs.c
- To: gcc at gcc dot gnu dot org
- Subject: Patch to optabs.c
- From: "tim_ouyang"@sunplus.com.tw
- Date: Tue, 26 Dec 2000 17:07:19 +0800
Hello,
The following patch fixes a bug in expand_binop(). When the operation is add or
sub, the original optabs.c forgets to copy the result of first word back to
target.
I am porting GCC to a 16-bit micro-processor. When I feed the testsuite into the
ported GCC, I found this bug. After add this patch, the GCC works fine and
generates correct codes.
==========8<==============8<============
[/gcc-snapshot/gcc]$ diff -Nau optabs.c optabs.c.new
--- optabs.c Fri Nov 17 14:05:15 2000
+++ optabs.c.new Tue Dec 26 15:08:05 2000
@@ -1230,6 +1230,13 @@
break;
}
}
+ else
+ {
+ if (x == 0)
+ break;
+ else if (target_piece != x)
+ emit_move_insn (target_piece, x);
+ }
carry_in = carry_out;
}
==========>8==============>8============
Happy New Year!
Tim Ouyang (¼Ú¶§¤h®x)
IP Design Dept.
Intellectual Property Development Division
Sunplus Technology Co.,Ltd.
19, Innovation Road 1, Science-Based Industrial Park, Hsin-Chu, Taiwan
Phone: +886-3-5786005 Ext. 2467
Fax: +886-3-5784418
E-Mail : tim_ouyang@sunplus.com.tw