Date: Sun, 14 Mar 1999 00:37:04 +0100 (CET) From: Remy Nonnenmacher <remy@synx.com> To: dennis@etinc.com Cc: hackers@FreeBSD.ORG Subject: Re: 'C' language question Message-ID: <199903132345.AAA29762@rt2.synx.com> In-Reply-To: <199903132232.RAA19255@etinc.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 13 Mar, Dennis wrote: > *reg |= 0x80000000; > > generates a byte OR (ORB instruction) which trashes the register with > gcc 2.9.2....a stupid "optimization" that happens to be wrong in this > case. Just for fun: i couldn't resist to expose you all a real 'optimization' madness of the C compiler of a big (really big) company : (after macros expension) Original : if (A == 0) {...} if ((A == 0 ? *ptr++ : func()) == 7) {...} assembler code generated : if (A == 0) {..} else if (*++ptr == 7) {..} ^^^^^ just to say that 'stupid' seems a little hard in the original message case. RN. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199903132345.AAA29762>