Date: Sun, 18 Oct 2015 12:46:02 +0300 From: Konstantin Belousov <kostikbel@gmail.com> To: Ian Lepore <ian@FreeBSD.org> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r289477 - head/sys/arm/mv Message-ID: <20151018094602.GF2257@kib.kiev.ua> In-Reply-To: <201510180103.t9I13h0w056671@repo.freebsd.org> References: <201510180103.t9I13h0w056671@repo.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Oct 18, 2015 at 01:03:43AM +0000, Ian Lepore wrote: > Author: ian > Date: Sun Oct 18 01:03:43 2015 > New Revision: 289477 > URL: https://svnweb.freebsd.org/changeset/base/289477 > > Log: > Fix a strange macro re-definition compile error. If the VM_MAXUSER_ADDRESS > value is defined as a config option the definition is emitted into > opt_global.h which is force-included into everything. In addition, the > symbol is emitted by the genassym mechanism, but that by its nature reduces > the value to a 0xnnnnnnnn number. When compiling a .S file you end up > with two different definitions of the macro (they evaluate to the same > number, but the text is different, upsetting the compiler). > > Nothing has changed about this code for a while but the compile error is > new, so this must be fallout from the clang 3.7 update or something. > > Modified: > head/sys/arm/mv/std-pj4b.mv > > Modified: head/sys/arm/mv/std-pj4b.mv > ============================================================================== > --- head/sys/arm/mv/std-pj4b.mv Sun Oct 18 00:59:28 2015 (r289476) > +++ head/sys/arm/mv/std-pj4b.mv Sun Oct 18 01:03:43 2015 (r289477) > @@ -5,4 +5,8 @@ cpu CPU_MV_PJ4B > machine arm armv6 > makeoptions CONF_CFLAGS="-march=armv7a" > > -options VM_MAXUSER_ADDRESS="(KERNBASE-(1024*1024*1024))" > +# This was originally defined as "(KERNBASE-(1024*1024*1024))" but that > +# (in opt_global.h) clashed with the value emitted by genassym which > +# reduces the original macro text to its numeric value. The only way > +# to avoid that is to define it here as the numeric value genassym emits. > +options VM_MAXUSER_ADDRESS="0x80000000" Genassym started to generate VM_MAXUSER_ADDRESS after r289372. Strange that I did not saw the error. Why does marvell need this override ?
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20151018094602.GF2257>