diff options
author | Michael Lauer <mickey@vanille-media.de> | 2005-08-14 16:40:05 +0000 |
---|---|---|
committer | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2005-08-14 16:40:05 +0000 |
commit | ef4409bc8d3c40b3ba39d2fe4c91e68785bbd419 (patch) | |
tree | fa9776f473f438140f6ea852e0d12967624a7beb /packages/uclibc/uclibc-0.9.27/thumb-ldso-dlboot.patch | |
parent | 1e9f32efa15fcc6649119f0c4c398b3405f6b9c0 (diff) | |
parent | f3ead211477be5319bbb8cb5a983e6ec68dd2a23 (diff) |
merge of 38a9824230c1f33aa1b69405d1a6074d1df99753
and d83e77353ac4cf240e630aa66aa54eb794547a60
Diffstat (limited to 'packages/uclibc/uclibc-0.9.27/thumb-ldso-dlboot.patch')
-rw-r--r-- | packages/uclibc/uclibc-0.9.27/thumb-ldso-dlboot.patch | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/packages/uclibc/uclibc-0.9.27/thumb-ldso-dlboot.patch b/packages/uclibc/uclibc-0.9.27/thumb-ldso-dlboot.patch new file mode 100644 index 0000000000..9d3cb6bbab --- /dev/null +++ b/packages/uclibc/uclibc-0.9.27/thumb-ldso-dlboot.patch @@ -0,0 +1,21 @@ +--- /home/work-tmp/jbowler/nslu2/ucslugc.0807/work/uclibc-0.9.27-r5/uClibc-0.9.27/ldso/ldso/arm/dl-startup.h 2005-01-11 23:59:21.000000000 -0800 ++++ uClibc-0.9.27/ldso/ldso/arm/dl-startup.h 2005-08-11 23:40:01.393797745 -0700 +@@ -7,6 +7,9 @@ + + /* Overrive the default _dl_boot function, and replace it with a bit of asm. + * Then call the real _dl_boot function, which is now named _dl_boot2. */ ++/*NOTE: the 'bx' instruction at the end replaces mov pc, r6 - which is not ++ * compatible with thumb interworking. The instruction should be supported ++ * on all modern ARM architectures (because they all support thumb). */ + asm("" \ + " .text\n" \ + " .globl _dl_boot\n" \ +@@ -17,7 +20,7 @@ + " bl _dl_boot2\n" \ + " mov r6, r0\n" \ + " mov r0, r7\n" \ +-" mov pc, r6\n" \ ++" bx r6\n" \ + ); + + #define DL_BOOT(X) static __attribute_used__ void* _dl_boot2 (X) |