diff options
author | Marcin Juszkiewicz <hrw@openedhand.com> | 2007-05-09 10:39:10 +0000 |
---|---|---|
committer | Marcin Juszkiewicz <hrw@openedhand.com> | 2007-05-09 10:39:10 +0000 |
commit | ff0fe2be89778bf06ba0287911eac31c141be415 (patch) | |
tree | 434c9872c2c522fec9dfa616284d9b130b7cfe4d /meta/packages/mozilla/files/eabi-fix2.patch | |
parent | 79efb6c8b3e9926d8ba591391bfc8b9e58c39896 (diff) | |
download | poky-ff0fe2be89778bf06ba0287911eac31c141be415.tar.gz |
minimo: added 0.016 version with EABI patches - works in qemuarm
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1622 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta/packages/mozilla/files/eabi-fix2.patch')
-rw-r--r-- | meta/packages/mozilla/files/eabi-fix2.patch | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/meta/packages/mozilla/files/eabi-fix2.patch b/meta/packages/mozilla/files/eabi-fix2.patch new file mode 100644 index 0000000000..5f64e7f796 --- /dev/null +++ b/meta/packages/mozilla/files/eabi-fix2.patch | |||
@@ -0,0 +1,56 @@ | |||
1 | https://bugzilla.mozilla.org/show_bug.cgi?id=369722 | ||
2 | |||
3 | Index: js/src/jsnum.h | ||
4 | =================================================================== | ||
5 | RCS file: /cvsroot/mozilla/js/src/jsnum.h,v | ||
6 | retrieving revision 3.27 | ||
7 | diff -p -u -8 -r3.27 jsnum.h | ||
8 | --- mozilla/js/src/jsnum.h 21 Dec 2006 01:00:32 -0000 3.27 | ||
9 | +++ mozilla/js/src/jsnum.h 8 Feb 2007 12:13:01 -0000 | ||
10 | @@ -52,23 +52,24 @@ JS_BEGIN_EXTERN_C | ||
11 | |||
12 | /* | ||
13 | * Stefan Hanske <sh990154@mail.uni-greifswald.de> reports: | ||
14 | * ARM is a little endian architecture but 64 bit double words are stored | ||
15 | * differently: the 32 bit words are in little endian byte order, the two words | ||
16 | * are stored in big endian`s way. | ||
17 | */ | ||
18 | |||
19 | -#if defined(__arm) || defined(__arm32__) || defined(__arm26__) || defined(__arm__) | ||
20 | -#define CPU_IS_ARM | ||
21 | +#if !defined(__ARM_EABI__) && \ | ||
22 | + (defined(__arm) || defined(__arm32__) || defined(__arm26__) || defined(__arm__)) | ||
23 | +#define IEEE_ARM | ||
24 | #endif | ||
25 | |||
26 | typedef union jsdpun { | ||
27 | struct { | ||
28 | -#if defined(IS_LITTLE_ENDIAN) && !defined(CPU_IS_ARM) | ||
29 | +#if defined(IS_LITTLE_ENDIAN) && !defined(IEEE_ARM) | ||
30 | uint32 lo, hi; | ||
31 | #else | ||
32 | uint32 hi, lo; | ||
33 | #endif | ||
34 | } s; | ||
35 | jsdouble d; | ||
36 | } jsdpun; | ||
37 | |||
38 | @@ -87,17 +88,17 @@ typedef union jsdpun { | ||
39 | |||
40 | #else /* not or old GNUC */ | ||
41 | |||
42 | /* | ||
43 | * We don't know of any non-gcc compilers that perform alias optimization, | ||
44 | * so this code should work. | ||
45 | */ | ||
46 | |||
47 | -#if defined(IS_LITTLE_ENDIAN) && !defined(CPU_IS_ARM) | ||
48 | +#if defined(IS_LITTLE_ENDIAN) && !defined(IEEE_ARM) | ||
49 | #define JSDOUBLE_HI32(x) (((uint32 *)&(x))[1]) | ||
50 | #define JSDOUBLE_LO32(x) (((uint32 *)&(x))[0]) | ||
51 | #else | ||
52 | #define JSDOUBLE_HI32(x) (((uint32 *)&(x))[0]) | ||
53 | #define JSDOUBLE_LO32(x) (((uint32 *)&(x))[1]) | ||
54 | #endif | ||
55 | |||
56 | #define JSDOUBLE_SET_HI32(x, y) (JSDOUBLE_HI32(x)=(y)) | ||