This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: reload error in current CVS gcc version
- To: Ulrich Drepper <drepper at cygnus dot com>
- Subject: Re: reload error in current CVS gcc version
- From: Bernd Schmidt <bernds at cygnus dot co dot uk>
- Date: Fri, 8 Oct 1999 19:13:48 +0100 (BST)
- cc: gcc-bugs at sourceware dot cygnus dot com, gcc-patches at gcc dot gnu dot org
On 7 Oct 1999, Ulrich Drepper wrote:
> The current egcs^H^H^H^Hgcc crashes on x86 with a reload problem on the
> source code I've put at
>
> http://www.cygnus.com/~drepper/nsFrame.ii.bz2
>
> (In case you wonder, it's code from Mozilla.)
Fixed by the patch below, which I've committed.
Here's a smaller testcase. Should I add that to c-torture/compile (I can
obfuscate it some more if it's still too close to mozilla source :)?
typedef struct {
int x;
} FILE;
extern void fputs (const char *, FILE *);
int mView;
void
foo (FILE* out, int aIndent)
{
if (0 != mView) {
aIndent++;
aIndent--;
{ int __t = aIndent; while (--__t >= 0) fputs(" ", out); }
}
{ int __t = aIndent; while (--__t >= 0) fputs(" ", out); }
}
Bernd
+ * i386.md (prologue_allocate_stack): Add '=' constraint letter on
+ output operand.
+
Index: config/i386/i386.md
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/config/i386/i386.md,v
retrieving revision 1.88
diff -u -p -r1.88 i386.md
--- i386.md 1999/10/05 05:00:55 1.88
+++ i386.md 1999/10/08 16:50:18
@@ -7740,7 +7740,7 @@
;; in proper program order.
(define_insn "prologue_allocate_stack"
- [(set (match_operand:SI 0 "register_operand" "r")
+ [(set (match_operand:SI 0 "register_operand" "=r")
(plus:SI (match_operand:SI 1 "register_operand" "0")
(match_operand:SI 2 "nonmemory_operand" "ri")))
(set (match_operand:SI 3 "register_operand" "r")