Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Feb 2009 22:51:10 -0800
From:      Marcel Moolenaar <xcllnt@mac.com>
To:        "M. Warner Losh" <imp@bsdimp.com>
Cc:        mips@FreeBSD.org, tinderbox@FreeBSD.org, current@FreeBSD.org
Subject:   Re: [head tinderbox] failure on mips/mips
Message-ID:  <B23797BE-91FB-4AE1-8370-E77D66ED05B6@mac.com>
In-Reply-To: <20090217.234216.1276682135.imp@bsdimp.com>
References:  <20090217.203647.-1518647466.imp@bsdimp.com> <20090217.222152.-109416210.imp@bsdimp.com> <4CB77F1D-4235-47D8-B654-1C4F29B6C649@mac.com> <20090217.234216.1276682135.imp@bsdimp.com>

next in thread | previous in thread | raw e-mail | index | archive | help

On Feb 17, 2009, at 10:42 PM, M. Warner Losh wrote:

> : A safer approach is to mark ifi_epoch as packed or put differently,
> : define time_t as a 64-bit integral with 32-bit alignment. This can
> : avoid a lot of unexpected internal padding as well (e.g. struct
> : timeval).
>
> Marking it as packed won't help.  If the elements aren't properly
> aligned, gcc won't access multi-word entities properly.  It might
> eliminate the warning, but it will break at runtime.

But GCC will use a pair of 32-bit loads and/or stores to
access the 64-bit integral in that case. There should be
no runtime breakage. You only do this for n32 of course.

-- 
Marcel Moolenaar
xcllnt@mac.com






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?B23797BE-91FB-4AE1-8370-E77D66ED05B6>