Messages in this thread | | | From | "Nakajima, Jun" <> | Subject | RE: [PATCH] fixes for building kernel using Intel compiler | Date | Fri, 18 Oct 2002 19:17:19 -0700 |
| |
Thanks, Andi.
No, because of (size_t) (it's typedef) from offsetof() and &. But if ( (int) offsetof(struct task_struct, thread.i387.fxsave) % 16) { would be optiminzed away. So I'll change the patch like that.
Thanks, Jun -----Original Message----- From: Andi Kleen [mailto:ak@suse.de] Sent: Friday, October 18, 2002 6:02 PM To: Nakajima, Jun Cc: Andi Kleen; David S. Miller; torvalds@transmeta.com; linux-kernel@vger.kernel.org; Mallick, Asit K; Saxena, Sunil Subject: Re: [PATCH] fixes for building kernel using Intel compiler
On Fri, Oct 18, 2002 at 05:45:08PM -0700, Nakajima, Jun wrote: > No, it removes most of such cases. It happens only for a general boolean > controlling expression, and this is the only spot as far as we tested. But
So it would be optimized away if changed to
if ((offsetof(struct task_struct, thread.i387.fxsave) & 15) != 0) {
?
> our argument is that the checking code is not required because > thread.i387.fxsave is __attribute__ ((aligned (16))). If __attribute__ > ((aligned (...))) is broken, we should see more problems.
I think it would be better to keep the check, even with attribute aligned. These bugs are nasty to debug when they happen.
-Andi - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |