From mboxrd@z Thu Jan 1 00:00:00 1970 From: "J. Bruce Fields" Subject: Re: MSEC_TO_JIFFIES is messed up... Date: Wed, 12 May 2004 18:07:33 -0400 Sender: netdev-bounce@oss.sgi.com Message-ID: <20040512220733.GB16658@fieldses.org> References: <20040512020700.6f6aa61f.akpm@osdl.org> <20040512181903.GG13421@kroah.com> <40A26FFA.4030701@pobox.com> <20040512193349.GA14936@elte.hu> <20040512200305.GA16078@elte.hu> <20040512213913.GA16658@fieldses.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Davide Libenzi , Ingo Molnar , Jeff Garzik , Greg KH , Andrew Morton , Linux Kernel Mailing List , Netdev Return-path: To: Andreas Schwab Content-Disposition: inline In-Reply-To: Errors-to: netdev-bounce@oss.sgi.com List-Id: netdev.vger.kernel.org On Wed, May 12, 2004 at 11:55:18PM +0200, Andreas Schwab wrote: > "J. Bruce Fields" writes: > > > If gcc really optimizes that to just the identity function, then surely > > that's a gcc bug? Multiplication is left-associative, so i * 1000 / > > 1000 = (i * 1000) / 1000, but (i * 1000) should be zero for any i > > divisible by i^(sizeof(int) - 12). > > Signed integer overflow is undefined in C, so the compiler is allowed to > assume it does not happen. Ugh, right, got it.--b.