This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC/PATCH] x86_64 port (attempt 2)


Patch has been checked in.

-- Jeff J.

Hans Kester wrote:
Ping!

The GCC mainline now has support for x86_64-elf. Mainline does not
build for any of our targets at the moment, but that will be fixed
when 4.3 is released.

If this port can be committed we should have a working toolchain in
the end (binutils/gcc/newlib).

Hans Kester


On 8/22/07, Hans Kester <kester.hans@gmail.com> wrote:
On 8/21/07, Jeff Johnston <jjohnstn@redhat.com> wrote:
  Is anyone pursuing the gcc patch you mentioned?  That patch is pretty
old (dated March 2005).
Yes, I have already sent a new patch last week
(http://gcc.gnu.org/ml/gcc-patches/2007-08/msg00936.html). It hasn't
been reviewed yet, I will ping them soon. Mark Mitchel told me to give
it a week. Binutils was fixed long ago.

  I would have assumed in your patch that you would keep/reuse use some
of the i386 assembler routines that you didn't have specific
replacements for.  For example, you don't have a libm_machine_dir which
implements the fast math library routines.  You also don't have some
other string routines that are implemented in libc/machine/i386.  Is
there some reason you decided not to do this?
Basically I implemented the functions that we needed to be fast:
memcpy and memset. I think some evolution is needed here: when we or
anyone else needs a faster string or math function it will need to be
implemented. I might take a look at the string and math functions when
I have more time. For the moment this can be a nice starting point.

Any requirement for x86_64 libgloss (cygmon)?
Same story here: we don't need it at the moment. Perhaps we or someone
else can dive into this later.

  I noted a typo in setjmp.h for the __x86_64__ flag (missing a
trailing underscore).
You are right. That would make

Index: newlib/libc/include/machine/setjmp.h
===================================================================
RCS file: /cvs/src/src/newlib/libc/include/machine/setjmp.h,v
retrieving revision 1.32
diff -u -r1.32 setjmp.h
--- newlib/libc/include/machine/setjmp.h        18 Dec 2006 16:48:03 -00001.32
+++ newlib/libc/include/machine/setjmp.h        15 Aug 2007 08:57:54 -0000
@@ -67,6 +67,11 @@
 #endif
 #endif

+#ifdef __x86_64__
+#define _JBTYPE long long
+#define _JBLEN  8
+#endif
+
 #ifdef __i960__
 #define _JBLEN 35
 #endif



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]