From owner-svn-src-all@FreeBSD.ORG Sun Apr 11 10:13:44 2010 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A12C8106566C; Sun, 11 Apr 2010 10:13:44 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail02.syd.optusnet.com.au (mail02.syd.optusnet.com.au [211.29.132.183]) by mx1.freebsd.org (Postfix) with ESMTP id 1E7588FC0A; Sun, 11 Apr 2010 10:13:43 +0000 (UTC) Received: from besplex.bde.org (c122-106-168-84.carlnfd1.nsw.optusnet.com.au [122.106.168.84]) by mail02.syd.optusnet.com.au (8.13.1/8.13.1) with ESMTP id o3BADecX027220 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sun, 11 Apr 2010 20:13:41 +1000 Date: Sun, 11 Apr 2010 20:13:40 +1000 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Roman Divacky In-Reply-To: <20100411092417.GA37528@freebsd.org> Message-ID: <20100411200313.G2454@besplex.bde.org> References: <201004091521.o39FLBqx035856@svn.freebsd.org> <20100411175432.S10835@delplex.bde.org> <20100411092417.GA37528@freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Bruce Evans Subject: Re: svn commit: r206424 - head/usr.bin/xlint/lint1 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 11 Apr 2010 10:13:44 -0000 On Sun, 11 Apr 2010, Roman Divacky wrote: > On Sun, Apr 11, 2010 at 07:16:12PM +1000, Bruce Evans wrote: >> .... However2, the system ALIGN() on >> amd64 doesn't know the correct alignment either (both essentially had >> 64 bits hard-coded). Now xlint uses a different hard-coded alignment >> (128 bits). > > so you suggest fixing the ALIGN on amd64? ie. to make it 128bit? It's an ABI change, thus needs careful release engineering. _ALIGN (= ALIGN) is used in the CMSG ABI in so I think would affect public ABIs. amd64 has a strict ABI which I think involves 128-byte alignment for long doubles (not sure if it specifies anything for non-C things like copies of SSE registers). The system should have a macro to support the maximal alignment and it is easiest to use ALIGN() for this (otherwise you would need a new macro for this and keep ALIGN() for pointers and longs...). Bruce