Xtensa updates

Chris Zankel chris at zankel.net
Thu Nov 1 18:55:43 UTC 2012


Hi,

I'm the Xtensa maintainer and have a few outstanding patches that I want
to commit. Support for the Xtensa architecture has been dormant for
quite some time now, but I finally have time to bring it up-to-date.

Except for one patch, all changes are inside the xtensa subdirectory.
This one patch adds a definition for ELFCLASSM for Xtensa in the ldd.c
file (see below). You can find these patches in the 'xtensa' branch of
https://github.com/czankel/xtensa-buildroot.git

Please let me know if you have any questions or comments.

Thanks,
-Chris


 --- a/utils/ldd.c
+++ b/utils/ldd.c
@@ -106,6 +106,11 @@
 #define ELFCLASSM      ELFCLASS32
 #endif
 
+#if defined(__xtensa__)
+#define MATCH_MACHINE(x) (x == EM_XTENSA)
+#define ELFCLASSM      ELFCLASS32
+#endif
+
 #ifndef MATCH_MACHINE
 # ifdef __linux__
 #  include <asm/elf.h>


ldd: ELFCLASSM was not defined for the Xtensa architecture
xtensa: add sigcontext.h
xtensa: use atomic instructions instead of a syscall
xtensa: add a set of atomic intrinsics
xtensa: fix a misnumbered register in sigsetjmp
xtensa: add a stub user.h file
xtensa: sysdep.h needs to include sys/syscall.h
xtensa: add missing atomic intrinsics

libc/sysdeps/linux/xtensa/bits/atomic.h            |  233
++++++++++++++++++++
libc/sysdeps/linux/xtensa/bits/sigcontext.h        |   41 ++++
libc/sysdeps/linux/xtensa/setjmp.S                 |    2 +-
libc/sysdeps/linux/xtensa/sys/user.h               |   20 ++
libc/sysdeps/linux/xtensa/sysdep.h                 |    2 +
.../linuxthreads.old/sysdeps/xtensa/pt-machine.h   |   42 +++-
utils/ldd.c                                        |    5 +
7 files changed, 339 insertions(+), 6 deletions(-)
create mode 100644 libc/sysdeps/linux/xtensa/bits/atomic.h
create mode 100644 libc/sysdeps/linux/xtensa/bits/sigcontext.h
create mode 100644 libc/sysdeps/linux/xtensa/sys/user.h



More information about the uClibc mailing list