From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:55396) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z4p7k-0002DL-3v for qemu-devel@nongnu.org; Tue, 16 Jun 2015 07:33:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Z4p7h-0001Gq-3e for qemu-devel@nongnu.org; Tue, 16 Jun 2015 07:33:47 -0400 Received: from mail-yk0-f175.google.com ([209.85.160.175]:36690) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z4p7g-0001GY-VC for qemu-devel@nongnu.org; Tue, 16 Jun 2015 07:33:45 -0400 Received: by ykdr198 with SMTP id r198so10667086ykd.3 for ; Tue, 16 Jun 2015 04:33:44 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <52628688d4f3b34cefd0ebab12dd0f1ec8fe3618.1434432813.git.crosthwaite.peter@gmail.com> References: <52628688d4f3b34cefd0ebab12dd0f1ec8fe3618.1434432813.git.crosthwaite.peter@gmail.com> From: Peter Maydell Date: Tue, 16 Jun 2015 12:33:24 +0100 Message-ID: Content-Type: text/plain; charset=UTF-8 Subject: Re: [Qemu-devel] [PATCH v2 4/4] microblaze: boot: Use cpu_set_pc List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Crosthwaite Cc: "Edgar E. Iglesias" , Peter Crosthwaite , QEMU Developers , =?UTF-8?Q?Andreas_F=C3=A4rber?= On 16 June 2015 at 06:46, Peter Crosthwaite wrote: > Use cpu_set_pc for setting program counters when bootloading. This > removes an instance of system level code having to reach into the CPU > env. > > Signed-off-by: Peter Crosthwaite > --- > hw/microblaze/boot.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/hw/microblaze/boot.c b/hw/microblaze/boot.c > index 4c44317..ec68479 100644 > --- a/hw/microblaze/boot.c > +++ b/hw/microblaze/boot.c > @@ -54,7 +54,7 @@ static void main_cpu_reset(void *opaque) > env->regs[5] = boot_info.cmdline; > env->regs[6] = boot_info.initrd_start; > env->regs[7] = boot_info.fdt; > - env->sregs[SR_PC] = boot_info.bootstrap_pc; > + cpu_set_pc(CPU(cpu), boot_info.bootstrap_pc, &error_abort); Well, it sort of removes an instance of reaching into the CPU env, but there's all those other ones in plain sight just above. Is there much point in setting SR_PC indirectly if we don't have a mechanism for setting the other regs indirectly? -- PMM