From 65c85d36407edb113b1b6d40bf7d8966a7651ea4 Mon Sep 17 00:00:00 2001 From: Alistair Francis Date: Tue, 26 Jun 2018 16:02:34 -0700 Subject: 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 --- .../0001-javascriptcore-Use-64-bit-ints.patch | 58 ++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 recipes-qt/qt5/qtscript/0001-javascriptcore-Use-64-bit-ints.patch (limited to 'recipes-qt/qt5/qtscript') 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 @@ +From 8fd53951d53ef8c5b62fe985665dad0545bb3161 Mon Sep 17 00:00:00 2001 +From: Alistair Francis +Date: Mon, 4 Jun 2018 14:24:59 -0700 +Subject: [PATCH] javascriptcore: Use 64-bit ints + +Where required use 64-bit integers for casts. + +Signed-off-by: Alistair Francis +Upstream-Status: Pending +--- + .../JavaScriptCore/assembler/X86Assembler.h | 2 +- + .../javascriptcore/JavaScriptCore/runtime/JSValue.h | 8 ++++++++ + 2 files changed, 9 insertions(+), 1 deletion(-) + +diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h b/src/3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h +index ab3d05f..ed5965f 100644 +--- a/src/3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h ++++ b/src/3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h +@@ -2033,7 +2033,7 @@ private: + } + } + +-#if !CPU(X86_64) ++#if CPU(X86) + void memoryModRM(int reg, void* address) + { + // noBase + ModRmMemoryNoDisp means noBase + ModRmMemoryDisp32! +diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h b/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h +index 7584c52..958ac89 100644 +--- a/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h ++++ b/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h +@@ -490,7 +490,11 @@ namespace JSC { + u.asBits.tag = CellTag; + else + u.asBits.tag = EmptyValueTag; ++#if CPU(X86) + u.asBits.payload = reinterpret_cast(ptr); ++#else ++ u.asBits.payload = reinterpret_cast(ptr); ++#endif + #if ENABLE(JSC_ZOMBIES) + ASSERT(!isZombie()); + #endif +@@ -502,7 +506,11 @@ namespace JSC { + u.asBits.tag = CellTag; + else + u.asBits.tag = EmptyValueTag; ++#if CPU(X86) + u.asBits.payload = reinterpret_cast(const_cast(ptr)); ++#else ++ u.asBits.payload = reinterpret_cast(const_cast(ptr)); ++#endif + #if ENABLE(JSC_ZOMBIES) + ASSERT(!isZombie()); + #endif +-- +2.17.1 + -- cgit v1.2.3