[haiku-bugs] Re: [Haiku] #1141: Support for x86-64 architecture

  • From: "nmentley" <trac@xxxxxxxxxxxx>
  • Date: Wed, 05 May 2010 21:14:59 -0000

#1141: Support for x86-64 architecture
---------------------------+------------------------------------------------
 Reporter:  ekdahl         |       Owner:  bonefish   
     Type:  enhancement    |      Status:  assigned   
 Priority:  normal         |   Milestone:  Unscheduled
Component:  System/Kernel  |     Version:             
 Keywords:                 |   Blockedby:             
 Platform:  x86-64         |    Blocking:             
---------------------------+------------------------------------------------

Comment(by nmentley):

 I've submitted the patch with the corrections you've suggested.

 Just a few notes.

 gcc/gcc/config/i386/haiku64.h:
 I irresponsibly left the comment "If ELF is the default format, we should
 not use /lib/elf" in from the file I based haiku64.h off of... Which
 happens to be haiku.h of the same directory. That comment is actually
 included in all the gcc/gcc/config/(arch)/haiku.h files strangely enough.


 build/jam/BuildSetup:
 I'm currently reading up on the atomic_*() functions... So I might be
 alittle off here.
 In headers/os/support/SupportDefs.h: I've implemented sub, xor, nand, but
 I'm unsure of the atomic_set function. I've commented it out for now.
 I've included the newly defined atomic functions in the definition
 B_USE_EXTRA_BUILTIN_ATOMIC_FUNCTIONS since these builtins aren't supported
 in x86. This might not be the cleanest way to define the atomic functions
 tho.


 headers/posix/arch/x86_64/arch_setjmp.h:
 I used 12 since it's the jmpbuf size on freebsd amd64, but that'll be
 changed to a more logical jmpbuf size later.
 Correcnt me if I'm wrong, but I was under the impression that setjmp() and
 longjmp() are defined in src/system/libroot/ponix/arch/(arch)/siglongjmp.S
 and  src/system/libroot/ponix/arch/(arch)/sigsetjmp.S and not in this
 file.
 They don't have much to do with the gnu toolchain which was atleast my
 goal for this patch, but I'll for sure work on setjmp() and longjmp()
 before continuing working with haiku_loader.

 Sorry about this patch being a bit shaky and thanks for the help.

-- 
Ticket URL: <http://dev.haiku-os.org/ticket/1141#comment:14>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: