From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35306) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YzKzM-0005xd-K4 for qemu-devel@nongnu.org; Mon, 01 Jun 2015 04:22:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YzKzI-0002PU-C9 for qemu-devel@nongnu.org; Mon, 01 Jun 2015 04:22:28 -0400 Received: from mail-wi0-x22f.google.com ([2a00:1450:400c:c05::22f]:35745) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YzKzI-0002PO-4C for qemu-devel@nongnu.org; Mon, 01 Jun 2015 04:22:24 -0400 Received: by wicmx19 with SMTP id mx19so67663924wic.0 for ; Mon, 01 Jun 2015 01:22:23 -0700 (PDT) Sender: Paolo Bonzini Message-ID: <556C1632.7040800@redhat.com> Date: Mon, 01 Jun 2015 10:22:10 +0200 From: Paolo Bonzini MIME-Version: 1.0 References: <2061f9093c29ead79876a07e3f3561e69fa72ed7.1433052533.git.crosthwaite.peter@gmail.com> In-Reply-To: <2061f9093c29ead79876a07e3f3561e69fa72ed7.1433052533.git.crosthwaite.peter@gmail.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [RFC v2 25/34] arm: enable multi-arch List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Crosthwaite , qemu-devel@nongnu.org Cc: peter.maydell@linaro.org, rth@twiddle.net, edgar.iglesias@gmail.com, afaerber@suse.de, Peter Crosthwaite On 31/05/2015 08:11, Peter Crosthwaite wrote: > +#ifndef TARGET_MULTI > + > #define EXCP_UDEF 1 /* undefined instruction */ > #define EXCP_SWI 2 /* software interrupt */ > #define EXCP_PREFETCH_ABORT 3 > @@ -57,6 +71,10 @@ > #define EXCP_VIRQ 14 > #define EXCP_VFIQ 15 > > +#endif /* TARGET_MULTI */ Separate header for stuff private to target-arm? > +/* These defs are public as needed by ARMv7M NVIC */ > + > #define ARMV7M_EXCP_RESET 1 > #define ARMV7M_EXCP_NMI 2 > #define ARMV7M_EXCP_HARD 3 > @@ -73,6 +91,8 @@ > #define CPU_INTERRUPT_VIRQ CPU_INTERRUPT_TGT_EXT_2 > #define CPU_INTERRUPT_VFIQ CPU_INTERRUPT_TGT_EXT_3 > > +#ifndef TARGET_MULTI > + > /* The usual mapping for an AArch64 system register to its AArch32 > * counterpart is for the 32 bit world to have access to the lower > * half only (with writes leaving the upper half untouched). It's > @@ -87,6 +107,8 @@ > #define offsetofhigh32(S, M) (offsetof(S, M) + sizeof(uint32_t)) > #endif > > +#endif /* !TARGET_MULTI */ > + > /* Meanings of the ARMCPU object's four inbound GPIO lines */ > #define ARM_CPU_IRQ 0 > #define ARM_CPU_FIQ 1 > @@ -95,6 +117,7 @@ > > struct arm_boot_info; > > +#undef NB_MMU_MODES Perhaps do this for all targets, even if they compile just fine without it? You had a similar case in patch 2 ("FIXME: apply target-foo change pattern to all archs"). Paolo > #define NB_MMU_MODES 7