diff options
author | Alistair Francis <alistair.francis@wdc.com> | 2018-06-26 16:02:34 -0700 |
---|---|---|
committer | Otavio Salvador <otavio@ossystems.com.br> | 2018-06-29 13:42:13 -0300 |
commit | 65c85d36407edb113b1b6d40bf7d8966a7651ea4 (patch) | |
tree | 2dd5cd99b0052dc1506883c2ba95fc26e524d6a6 /recipes-qt/qt5/qtscript/0001-javascriptcore-Use-64-bit-ints.patch | |
parent | 1452ed3db4fe692de2f83f195f3e7df1263f593d (diff) | |
download | meta-qt5-65c85d36407edb113b1b6d40bf7d8966a7651ea4.tar.gz |
qt5/qtscript: Fix qtscript cross compile error
Fix errors like this:
error: cast from 'QTJSC::JSCell*' to 'int32_t' {aka 'int'} loses precision
when cross compiling for RISC-V.
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Diffstat (limited to 'recipes-qt/qt5/qtscript/0001-javascriptcore-Use-64-bit-ints.patch')
-rw-r--r-- | recipes-qt/qt5/qtscript/0001-javascriptcore-Use-64-bit-ints.patch | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/recipes-qt/qt5/qtscript/0001-javascriptcore-Use-64-bit-ints.patch b/recipes-qt/qt5/qtscript/0001-javascriptcore-Use-64-bit-ints.patch new file mode 100644 index 00000000..a083decf --- /dev/null +++ b/recipes-qt/qt5/qtscript/0001-javascriptcore-Use-64-bit-ints.patch | |||
@@ -0,0 +1,58 @@ | |||
1 | From 8fd53951d53ef8c5b62fe985665dad0545bb3161 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alistair Francis <alistair.francis@wdc.com> | ||
3 | Date: Mon, 4 Jun 2018 14:24:59 -0700 | ||
4 | Subject: [PATCH] javascriptcore: Use 64-bit ints | ||
5 | |||
6 | Where required use 64-bit integers for casts. | ||
7 | |||
8 | Signed-off-by: Alistair Francis <alistair.francis@wdc.com> | ||
9 | Upstream-Status: Pending | ||
10 | --- | ||
11 | .../JavaScriptCore/assembler/X86Assembler.h | 2 +- | ||
12 | .../javascriptcore/JavaScriptCore/runtime/JSValue.h | 8 ++++++++ | ||
13 | 2 files changed, 9 insertions(+), 1 deletion(-) | ||
14 | |||
15 | diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h b/src/3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h | ||
16 | index ab3d05f..ed5965f 100644 | ||
17 | --- a/src/3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h | ||
18 | +++ b/src/3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h | ||
19 | @@ -2033,7 +2033,7 @@ private: | ||
20 | } | ||
21 | } | ||
22 | |||
23 | -#if !CPU(X86_64) | ||
24 | +#if CPU(X86) | ||
25 | void memoryModRM(int reg, void* address) | ||
26 | { | ||
27 | // noBase + ModRmMemoryNoDisp means noBase + ModRmMemoryDisp32! | ||
28 | diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h b/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h | ||
29 | index 7584c52..958ac89 100644 | ||
30 | --- a/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h | ||
31 | +++ b/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h | ||
32 | @@ -490,7 +490,11 @@ namespace JSC { | ||
33 | u.asBits.tag = CellTag; | ||
34 | else | ||
35 | u.asBits.tag = EmptyValueTag; | ||
36 | +#if CPU(X86) | ||
37 | u.asBits.payload = reinterpret_cast<int32_t>(ptr); | ||
38 | +#else | ||
39 | + u.asBits.payload = reinterpret_cast<int64_t>(ptr); | ||
40 | +#endif | ||
41 | #if ENABLE(JSC_ZOMBIES) | ||
42 | ASSERT(!isZombie()); | ||
43 | #endif | ||
44 | @@ -502,7 +506,11 @@ namespace JSC { | ||
45 | u.asBits.tag = CellTag; | ||
46 | else | ||
47 | u.asBits.tag = EmptyValueTag; | ||
48 | +#if CPU(X86) | ||
49 | u.asBits.payload = reinterpret_cast<int32_t>(const_cast<JSCell*>(ptr)); | ||
50 | +#else | ||
51 | + u.asBits.payload = reinterpret_cast<int64_t>(const_cast<JSCell*>(ptr)); | ||
52 | +#endif | ||
53 | #if ENABLE(JSC_ZOMBIES) | ||
54 | ASSERT(!isZombie()); | ||
55 | #endif | ||
56 | -- | ||
57 | 2.17.1 | ||
58 | |||