#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.