From patchwork Fri May 6 14:25:40 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Schwab X-Patchwork-Id: 9033681 Return-Path: X-Original-To: patchwork-qemu-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 612D7BF29F for ; Fri, 6 May 2016 14:26:34 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id BCBB120381 for ; Fri, 6 May 2016 14:26:33 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 0A8AA2035D for ; Fri, 6 May 2016 14:26:33 +0000 (UTC) Received: from localhost ([::1]:58633 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aygi4-0007as-Rj for patchwork-qemu-devel@patchwork.kernel.org; Fri, 06 May 2016 10:26:28 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42394) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ayghi-00073O-An for qemu-devel@nongnu.org; Fri, 06 May 2016 10:26:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ayghW-0005LC-C0 for qemu-devel@nongnu.org; Fri, 06 May 2016 10:26:00 -0400 Received: from mail-out.m-online.net ([2001:a60:0:28:0:1:25:1]:56083) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ayghW-0005Hk-26 for qemu-devel@nongnu.org; Fri, 06 May 2016 10:25:54 -0400 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 3r1YwQ3H87z3hm1R; Fri, 6 May 2016 16:25:42 +0200 (CEST) Received: from localhost (dynscan1.mnet-online.de [192.168.6.68]) by mail.m-online.net (Postfix) with ESMTP id 3r1YwP71X3zvkDQ; Fri, 6 May 2016 16:25:41 +0200 (CEST) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.68]) (amavisd-new, port 10024) with ESMTP id 5m-b_U71QI58; Fri, 6 May 2016 16:25:40 +0200 (CEST) X-Auth-Info: ItZGGRdZsao9U83szR7zUwKLzgg03/tSMu1pJZx2DDJQDHfvxg7tbCYpEzHAQQZz Received: from igel.home (ppp-88-217-22-5.dynamic.mnet-online.de [88.217.22.5]) by mail.mnet-online.de (Postfix) with ESMTPA; Fri, 6 May 2016 16:25:40 +0200 (CEST) Received: by igel.home (Postfix, from userid 1000) id 71BA02C5CC9; Fri, 6 May 2016 16:25:40 +0200 (CEST) From: Andreas Schwab To: Laurent Vivier References: <1462392752-17703-1-git-send-email-laurent@vivier.eu> <87twibzfzj.fsf@linux-m68k.org> <87poszze4m.fsf@linux-m68k.org> <87805eaf-d1d2-69af-b56f-b66d9b67438a@vivier.eu> X-Yow: Can you MAIL a BEAN CAKE? Date: Fri, 06 May 2016 16:25:40 +0200 In-Reply-To: <87805eaf-d1d2-69af-b56f-b66d9b67438a@vivier.eu> (Laurent Vivier's message of "Fri, 6 May 2016 15:53:54 +0200") Message-ID: <87y47nxnyz.fsf@linux-m68k.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux) MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 2001:a60:0:28:0:1:25:1 Subject: Re: [Qemu-devel] [PATCH 00/52] 680x0 instructions emulation X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: agraf@suse.de, John Paul Adrian Glaubitz , rth@twiddle.net, qemu-devel@nongnu.org, gerg@uclinux.org Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Here is a testcase: when compiling tlink.c from the gcc sources with gcc-6 r234449 (which was bootstrapped in aranym): $ g++ -fno-PIE -c -fomit-frame-pointer -O2 -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -DHAVE_CONFIG_H -I. -I. -I../../gcc -I../../gcc/. -I../../gcc/../include -I../../gcc/../libcpp/include -I../../gcc/../libdecnumber -I../../gcc/../libdecnumber/dpd -I../libdecnumber -I../../gcc/../libbacktrace -o tlink.o ../../gcc/tlink.c I get this difference for the generated assembler: Andreas. --- aranym/tlink.s 2016-05-06 16:19:02.377982900 +0200 +++ qemu/tlink.s 2016-05-06 16:18:26.385935256 +0200 @@ -2202,12 +2202,12 @@ _Z8do_tlinkPPcS0_: move.l ldout,-(%sp) move.l %d6,-(%sp) pea .LC23 - jsr _Z15collect_executePKcPPcS0_S0_ib + move.l #_Z15collect_executePKcPPcS0_S0_ib,%d4 + move.l %d4,%a1 + jsr (%a1) move.l %a0,-(%sp) pea .LC23 - move.l #_Z12collect_waitPKcP7pex_obj,%d4 - move.l %d4,%a0 - jsr (%a0) + jsr _Z12collect_waitPKcP7pex_obj move.l %d0,%d3 lea (28,%sp),%sp clr.l (%sp) @@ -2416,7 +2416,8 @@ _Z8do_tlinkPPcS0_: move.l 4(%a5),%d0 cmp.l %d2,%d0 jne .L327 - btst #0,3(%a5) + move.b 3(%a5),%d0 + btst #0,%d0 jeq .L382 clr.l 4(%a0) move.l %d2,%d0 @@ -2489,11 +2490,11 @@ _Z8do_tlinkPPcS0_: move.l ldout,-(%sp) move.l %d6,-(%sp) pea .LC23 - jsr _Z15collect_executePKcPPcS0_S0_ib + move.l %d4,%a1 + jsr (%a1) move.l %a0,-(%sp) pea .LC23 - move.l %d4,%a0 - jsr (%a0) + jsr _Z12collect_waitPKcP7pex_obj move.l %d0,%d3 lea (32,%sp),%sp jne .L387 @@ -2562,11 +2563,11 @@ _Z8do_tlinkPPcS0_: move.l ldout,-(%sp) move.l %d6,-(%sp) pea .LC23 - jsr _Z15collect_executePKcPPcS0_S0_ib + move.l %d4,%a1 + jsr (%a1) move.l %a0,-(%sp) pea .LC23 - move.l %d4,%a0 - jsr (%a0) + jsr _Z12collect_waitPKcP7pex_obj move.l %d0,%d3 lea (32,%sp),%sp jeq .L368