From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bernd Schmidt To: Richard Kenner Cc: egcs@cygnus.com Subject: Re: next glibc showstopper Date: Wed, 03 Dec 1997 05:46:00 -0000 Message-id: References: <9712012221.AA15274@vlsi1.ultra.nyu.edu> X-SW-Source: 1997-12/msg00176.html > This indeed should have been done in i386.[ch]. > > Can you show me the exact RTL so we can figure out where it should > be changed? I've figured it out. It turned out to be caused by a piece of code from Intel's pentium patches that shouldn't have gotten in there. Removing this code fixes the problem. Bernd * i386.c (notice_update_cc): Remove bogus pentium GCC code. *** ./config/i386/i386.c.orig-1 Tue Dec 2 20:08:51 1997 --- ./config/i386/i386.c Tue Dec 2 20:12:18 1997 *************** notice_update_cc (exp) *** 3542,3556 **** if (SET_DEST (exp) == pc_rtx) return; - #ifdef IS_STACK_MODE - /* Moving into a memory of stack_mode may have been moved - in between the use and set of cc0 by loop_spl(). So - old value of cc.status must be retained */ - if (GET_CODE(SET_DEST(exp)) == MEM - && IS_STACK_MODE (GET_MODE (SET_DEST (exp)))) - return; - #endif - /* Moving register or memory into a register: it doesn't alter the cc's, but it might invalidate the RTX's which we remember the cc's came from. --- 3542,3547 ----