emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: configure.in support for FreeBSD ia64/sparc64/powerpc


From: Ulrich Mueller
Subject: Re: configure.in support for FreeBSD ia64/sparc64/powerpc
Date: Fri, 19 Dec 2008 14:51:21 +0100

>>>>> On Mon, 6 Nov 2006, Giorgos Keramidas wrote:

>On 2006-11-03 22:28, Chong Yidong <address@hidden> wrote:
>>Giorgos Keramidas <address@hidden> writes:
>>> The following change makes Emacs buildable on FreeBSD running on
>>> sparc64, ia64 and powerpc too.  It has been tested for some time
>>> as a local patch in the editors/emacs-devel port of FreeBSD, so it
>>> would be nice if it became part of Emacs 22.  We won't have to
>>> maintain local diffs for this part then:
>>>
>>> --- a/src/alloc.c   Fri Oct 27 15:45:51 2006 +0000
>>> +++ b/src/alloc.c   Sat Oct 28 01:49:45 2006 +0300
>>> @@ -4560,7 +4560,11 @@ mark_stack ()
>>>       needed on ia64 too.  See mach_dep.c, where it also says inline
>>>       assembler doesn't work with relevant proprietary compilers.
>>> */
>>>  #ifdef sparc
>>> +#ifdef __sparc64__
>>> +  asm ("flushw");
>>> +#else
>>>    asm ("ta 3");
>>> +#endif
>>>  #endif
>>
>> Is this change correct for non-FreeBSD sparc64 systems too?
>> (I don't know anything about this part of the code.)

> Sorry for taking so long to follow up about this.  I tried looking
> at the sparc v9 specification for hints about why this change is
> needed on 64-bit SPARC platforms, but I couldn't come up with
> anything in a reasonable amount of time.  I am not that proficient
> with SPARC64 assembly, but I will ask our FreeBSD/sparc64 people for
> details.

> I'll follow up again when I get a reply from the people who know more
> about sparc64 assembly :)

Following up to this message from two years ago. ;-)

Gentoo also maintains the above as local patch, both for FreeBSD and
GNU/Linux. Our Sparc team says that the patch is sane, and without it
Emacs cannot be built on Sparc/FreeBSD. See Gentoo Bug 159584 for
further details: <http://bugs.gentoo.org/159584>

Below is a slightly updated patch that will apply to the currect CVS
trunk. It would be nice if it could make it into Emacs 23.

Ulrich

--- emacs-orig/src/alloc.c
+++ emacs/src/alloc.c
@@ -4573,7 +4573,11 @@
      needed on ia64 too.  See mach_dep.c, where it also says inline
      assembler doesn't work with relevant proprietary compilers.  */
 #ifdef __sparc__
+#ifdef __sparc64__
+  asm ("flushw");
+#else
   asm ("ta 3");
+#endif
 #endif
 
   /* Save registers that we need to see on the stack.  We need to see




reply via email to

[Prev in Thread] Current Thread [Next in Thread]