From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Rob Browning Newsgroups: gmane.linux.debian.devel.bugs.general,gmane.lisp.guile.bugs Subject: Bug#649718: Issues with alignment and m68k register naming Date: Sat, 13 Sep 2014 13:37:42 -0500 Message-ID: <87bnqjz7rd.fsf@trouble.defaultvalue.org> References: <878uq9xfg8.fsf@glaurung.internal.golden-gryphon.com> <20140511104318.GA23754@bongo.bofh.it> <87a9anwfzq.fsf@glaurung.internal.golden-gryphon.com> <87y4y7uf4y.fsf@igel.home> Reply-To: Rob Browning , 649718@bugs.debian.org NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: ger.gmane.org 1410633559 11222 80.91.229.3 (13 Sep 2014 18:39:19 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 13 Sep 2014 18:39:19 +0000 (UTC) Cc: Thorsten Glaser , 649718@bugs.debian.org, 649718-forwarded@bugs.debian.org To: bug-guile@gnu.org Original-X-From: bounce-debian-bugs-dist=glddb-debian-bugs-dist=m.gmane.org@lists.debian.org Sat Sep 13 20:39:12 2014 Return-path: Envelope-to: glddb-debian-bugs-dist@m.gmane.org Original-Received: from bendel.debian.org ([82.195.75.100]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XSsE3-0004fR-I5 for glddb-debian-bugs-dist@m.gmane.org; Sat, 13 Sep 2014 20:39:11 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by bendel.debian.org (Postfix) with QMQP id 1737C62; Sat, 13 Sep 2014 18:39:11 +0000 (UTC) Old-Return-Path: Original-Received: from localhost (localhost [127.0.0.1]) by bendel.debian.org (Postfix) with ESMTP id 030FEE8 for ; Sat, 13 Sep 2014 18:39:11 +0000 (UTC) X-Virus-Scanned: at lists.debian.org with policy bank bug X-Spam-Flag: NO X-Spam-Score: -4.21 X-Spam-Level: X-Spam-Status: No, score=-4.21 tagged_above=-10000 required=5.3 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, T_RP_MATCHES_RCVD=-0.01] autolearn=unavailable Original-Received: from bendel.debian.org ([127.0.0.1]) by localhost (lists.debian.org [127.0.0.1]) (amavisd-new, port 2525) with ESMTP id 3krLnxZjtW2X for ; Sat, 13 Sep 2014 18:39:08 +0000 (UTC) Original-Received: from buxtehude.debian.org (buxtehude.debian.org [140.211.166.26]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (Client CN "buxtehude.debian.org", Issuer "Debian SMTP CA" (not verified)) by bendel.debian.org (Postfix) with ESMTPS id 306A862; Sat, 13 Sep 2014 18:39:08 +0000 (UTC) Original-Received: from debbugs by buxtehude.debian.org with local (Exim 4.80) (envelope-from ) id 1XSsDw-0008Gm-Qq; Sat, 13 Sep 2014 18:39:04 +0000 X-Loop: owner@bugs.debian.org Resent-From: Rob Browning Resent-To: debian-bugs-dist@lists.debian.org X-Loop: owner@bugs.debian.org Resent-Date: Sat, 13 Sep 2014 18:39:01 +0000 Resent-Message-ID: X-Debian-PR-Message: followup 649718 X-Debian-PR-Package: guile-2.0 X-Debian-PR-Keywords: patch X-Debian-PR-Source: guile-2.0 Original-Received: via spool by 649718-submit@bugs.debian.org id=B649718.141063346531485 (code B ref 649718); Sat, 13 Sep 2014 18:39:01 +0000 Original-Received: (at 649718) by bugs.debian.org; 13 Sep 2014 18:37:45 +0000 X-Spam-Bayes: score:0.0000 Tokens: new, 25; hammy, 151; neutral, 185; spammy, 0. spammytokens: hammytokens:0.000-+--H*UA:sk:x86_64-, 0.000-+--H*u:sk:x86_64-, 0.000-+--H*u:Notmuch, 0.000-+--H*u:notmuchmail.org, 0.000-+--H*UA:Notmuch Original-Received: from defaultvalue.org ([70.85.129.156] ident=postfix) by buxtehude.debian.org with esmtp (Exim 4.80) (envelope-from ) id 1XSsCf-0008BN-27; Sat, 13 Sep 2014 18:37:45 +0000 Original-Received: from trouble.defaultvalue.org (localhost [127.0.0.1]) (Authenticated sender: rlb@defaultvalue.org) by defaultvalue.org (Postfix) with ESMTPSA id 2E0BF20B1C; Sat, 13 Sep 2014 13:37:43 -0500 (CDT) Original-Received: by trouble.defaultvalue.org (Postfix, from userid 1000) id D9C1714E189; Sat, 13 Sep 2014 13:37:42 -0500 (CDT) In-Reply-To: User-Agent: Notmuch/0.18.1 (http://notmuchmail.org) Emacs/24.3.1 (x86_64-pc-linux-gnu) X-CrossAssassin-Score: 2 X-Debian-Message: from BTS X-Mailing-List: archive/latest/1108722 X-Loop: debian-bugs-dist@lists.debian.org List-Id: List-URL: List-Post: List-Help: List-Subscribe: List-Unsubscribe: Precedence: list Resent-Sender: debian-bugs-dist-request@lists.debian.org Xref: news.gmane.org gmane.linux.debian.devel.bugs.general:1189148 gmane.lisp.guile.bugs:7545 Archived-At: --=-=-= Content-Type: text/plain [If possible, please preserve the -forwarded address in any replies.] This was reported to Debian a bit back, and I thought it might be appropriate for consideration upstream. Further details can be found here: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=649718 And here's a standalone version of the patch from the debdiff there: --=-=-= Content-Type: text/x-diff; charset=utf-8 Content-Disposition: inline; filename=9000-Fix-alignment-and-m68k-registers.patch Content-Transfer-Encoding: quoted-printable Content-Description: fix-alignment-and-m68k-register.diff >From schwab@linux-m68k.org Mon May 12 18:37:51 2014 From: Andreas Schwab Message-ID: <87y4y7uf4y.fsf@igel.home> To: Thorsten Glaser Cc: Manoj Srivastava , debian-68k@lists.debian.org Date: Mon, 12 May 2014 18:37:49 +0200 X-Original-Subject: Re: Guile language support in make Subject: Fix alignment and registers for m68k Fix bogus alignment assumptions (on some architectures, =E2=80=9Cnatural=E2= =80=9D alignment is not used, which means even an uint64_t is possibly unaligned, or aligned to only a 2 byte (m68k) or 4 byte boundary). Also, fix register name for m68k. -- Thorsten Glaser writes: > and the guile-2.0 Build-Depends on m68k because guile does not > work there (and nobody appears capable enough to debug it)? --- a/libguile/gsubr.c +++ b/libguile/gsubr.c @@ -213,7 +213,7 @@ */ static const struct { - scm_t_uint64 dummy; /* ensure 8-byte alignment; perhaps there's a better= way */ + scm_t_uint64 dummy SCM_ALIGNED (sizeof (scm_t_uint64)); /* ensure 8-byte= alignment; perhaps there's a better way */ const scm_t_uint8 bytes[121 * (sizeof (struct scm_objcode) + 16 + sizeof (struct scm_objcode) + 32)]; } raw_bytecode =3D { @@ -317,7 +317,7 @@ static const struct =20 static const struct { - scm_t_uint64 dummy; /* alignment */ + scm_t_uint64 dummy SCM_ALIGNED (sizeof (scm_t_uint64)); /* alignment */ scm_t_cell cells[121 * 2]; /* 11*11 double cells */ } objcode_cells =3D { 0, --- a/libguile/vm-engine.h +++ b/libguile/vm-engine.h @@ -74,7 +74,7 @@ #define FP_REG asm("%r16") #endif #ifdef __mc68000__ -#define IP_REG asm("a5") +#define IP_REG asm("a3") #define SP_REG asm("a4") #define FP_REG #endif --=-=-= Content-Type: text/plain -- Rob Browning rlb @defaultvalue.org and @debian.org GPG as of 2011-07-10 E6A9 DA3C C9FD 1FF8 C676 D2C4 C0F0 39E9 ED1B 597A GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4 --=-=-=--