[webkit-qt] MIPS support

Stephane Cerveau scerveau at connected-labs.com
Thu Dec 15 06:58:01 PST 2011


Dear all,

Compiling JSC on MIPS, i encounter an issue with JITStub.cpp during the 
link stage.
Here is the output:

/cd JavaScriptCore/ && make -f Makefile.jsc
make[1]: Entering directory 
`/home/developer/DEV/GIT/owb2/build-mips-webkit/Release/JavaScriptCore'
mips-linux-gnu-g++ -c -pipe -mips32 -Wall -Wextra -Wreturn-type 
-fno-strict-aliasing -Wcast-align -Wchar-subscripts -Wformat-security 
-Wreturn-type -Wno-unused-parameter -Wno-sign-compare -Wno-switch 
-Wno-switch-enum -Wundef -Wmissing-noreturn -Winit-self -O0 
-fvisibility=hidden -fvisibility-inlines-hidden -D_REENTRANT 
-DENABLE_SVG=0 -DNDEBUG -DBUILDING_QT__=1 -DNDEBUG 
-DQT_ASCII_CAST_WARNINGS -DBUILDING_JavaScriptCore -DBUILDING_WTF 
-DQT_NO_DEBUG -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED 
-I../../../../qt/release_qt_mips/mkspecs/qws/linux-gnu-mips-g++ 
-I../../../Source/JavaScriptCore 
-I../../../../qt/release_qt_mips/include/QtCore 
-I../../../../qt/release_qt_mips/include/QtNetwork 
-I../../../../qt/release_qt_mips/include 
-I../../../Source/JavaScriptCore -I../../../Source 
-I../../../Source/ThirdParty -I../../../Source/JavaScriptCore/assembler 
-I../../../Source/JavaScriptCore/bytecode 
-I../../../Source/JavaScriptCore/bytecompiler 
-I../../../Source/JavaScriptCore/heap 
-I../../../Source/JavaScriptCore/dfg 
-I../../../Source/JavaScriptCore/debugger 
-I../../../Source/JavaScriptCore/interpreter 
-I../../../Source/JavaScriptCore/jit 
-I../../../Source/JavaScriptCore/parser 
-I../../../Source/JavaScriptCore/profiler 
-I../../../Source/JavaScriptCore/runtime 
-I../../../Source/JavaScriptCore/wtf 
-I../../../Source/JavaScriptCore/wtf/gobject 
-I/home/developer/DEV/GIT/owb2/Source/JavaScriptCore/wtf/symbian 
-I../../../Source/JavaScriptCore/wtf/unicode 
-I../../../Source/JavaScriptCore/yarr 
-I../../../Source/JavaScriptCore/API 
-I../../../Source/JavaScriptCore/ForwardingHeaders -Igenerated 
-I/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include 
-I/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/freetype2 
-I../../../Source -I/home/developer/DEV/GIT/owb2/Source/../include 
-I../include/QtWebKit -I../include -I. -I../../../Source/JavaScriptCore 
-I. -o obj/release/jsc.o ../../../Source/JavaScriptCore/jsc.cpp
In file included from 
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/sys/cdefs.h:348,
                  from 
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/features.h:329,
                  from 
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/inttypes.h:26,
                  from ../../../Source/JavaScriptCore/wtf/Assertions.h:50,
                  from ../../../Source/JavaScriptCore/wtf/PossiblyNull.h:29,
                  from ../../../Source/JavaScriptCore/wtf/FastMalloc.h:25,
                  from ../../../Source/JavaScriptCore/config.h:99,
                  from ../../../Source/JavaScriptCore/jsc.cpp:23:
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/bits/wordsize.h:20:18: 
warning: "_ABI64" is not defined
In file included from 
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/stdint.h:28,
                  from 
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/inttypes.h:28,
                  from ../../../Source/JavaScriptCore/wtf/Assertions.h:50,
                  from ../../../Source/JavaScriptCore/wtf/PossiblyNull.h:29,
                  from ../../../Source/JavaScriptCore/wtf/FastMalloc.h:25,
                  from ../../../Source/JavaScriptCore/config.h:99,
                  from ../../../Source/JavaScriptCore/jsc.cpp:23:
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/bits/wordsize.h:20:18: 
warning: "_ABI64" is not defined
In file included from 
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/bits/types.h:28,
                  from 
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/sys/types.h:31,
                  from 
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/stdlib.h:320,
                  from ../../../Source/JavaScriptCore/wtf/FastMalloc.h:26,
                  from ../../../Source/JavaScriptCore/config.h:99,
                  from ../../../Source/JavaScriptCore/jsc.cpp:23:
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/bits/wordsize.h:20:18: 
warning: "_ABI64" is not defined
In file included from 
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/sys/types.h:270,
                  from 
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/stdlib.h:320,
                  from ../../../Source/JavaScriptCore/wtf/FastMalloc.h:26,
                  from ../../../Source/JavaScriptCore/config.h:99,
                  from ../../../Source/JavaScriptCore/jsc.cpp:23:
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/bits/pthreadtypes.h:25:18: 
warning: "_ABI64" is not defined
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/bits/pthreadtypes.h:60:18: 
warning: "_ABI64" is not defined
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/bits/pthreadtypes.h:83:18: 
warning: "_ABI64" is not defined
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/bits/pthreadtypes.h:89:18: 
warning: "_ABI64" is not defined
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/include/bits/pthreadtypes.h:152:19: 
warning: "_ABI64" is not defined
In file included from ../../../Source/JavaScriptCore/runtime/JSObject.h:31,
                  from ../../../Source/JavaScriptCore/runtime/JSArray.h:24,
                  from 
../../../Source/JavaScriptCore/runtime/JSGlobalObject.h:25,
                  from 
../../../Source/JavaScriptCore/runtime/JSObjectWithGlobalObject.h:29,
                  from 
../../../Source/JavaScriptCore/runtime/JSFunction.h:27,
                  from 
../../../Source/JavaScriptCore/runtime/Executable.h:30,
                  from 
../../../Source/JavaScriptCore/bytecode/EvalCodeCache.h:32,
                  from 
../../../Source/JavaScriptCore/bytecode/CodeBlock.h:33,
                  from 
../../../Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h:33,
                  from ../../../Source/JavaScriptCore/jsc.cpp:25:
../../../Source/JavaScriptCore/runtime/JSCell.h: In member function 
'void* JSC::MarkedBlock::allocate()':
../../../Source/JavaScriptCore/runtime/JSCell.h:354: warning: cast from 
'char (*)[8]' to 'JSC::JSCell*' increases required alignment of target type
../../../Source/JavaScriptCore/runtime/WriteBarrier.h: In member 
function 'T* JSC::WriteBarrierBase<T>::get() const [with T = 
JSC::Structure]':
../../../Source/JavaScriptCore/runtime/JSCell.h:174:   instantiated from 
here
../../../Source/JavaScriptCore/runtime/WriteBarrier.h:70: warning: cast 
from 'JSC::JSCell*' to 'JSC::Structure*' increases required alignment of 
target type
../../../Source/JavaScriptCore/runtime/WriteBarrier.h: In member 
function 'T* JSC::WriteBarrierBase<T>::get() const [with T = 
JSC::JSGlobalObject]':
../../../Source/JavaScriptCore/runtime/ScopeChain.h:79:   instantiated 
from here
../../../Source/JavaScriptCore/runtime/WriteBarrier.h:70: warning: cast 
from 'JSC::JSCell*' to 'JSC::JSGlobalObject*' increases required 
alignment of target type
../../../Source/JavaScriptCore/runtime/WriteBarrier.h: In member 
function 'T* JSC::WriteBarrierBase<T>::get() const [with T = 
JSC::JSFunction]':
../../../Source/JavaScriptCore/runtime/JSGlobalObject.h:176:   
instantiated from here
../../../Source/JavaScriptCore/runtime/WriteBarrier.h:70: warning: cast 
from 'JSC::JSCell*' to 'JSC::JSFunction*' increases required alignment 
of target type
../../../Source/JavaScriptCore/runtime/WriteBarrier.h: In member 
function 'T* JSC::WriteBarrierBase<T>::get() const [with T = 
JSC::StringPrototype]':
../../../Source/JavaScriptCore/runtime/JSGlobalObject.h:184:   
instantiated from here
../../../Source/JavaScriptCore/runtime/WriteBarrier.h:70: warning: cast 
from 'JSC::JSCell*' to 'JSC::StringPrototype*' increases required 
alignment of target type
../../../Source/JavaScriptCore/runtime/WriteBarrier.h: In member 
function 'T* JSC::WriteBarrierBase<T>::get() const [with T = 
JSC::NumberPrototype]':
../../../Source/JavaScriptCore/runtime/JSGlobalObject.h:185:   
instantiated from here
../../../Source/JavaScriptCore/runtime/WriteBarrier.h:70: warning: cast 
from 'JSC::JSCell*' to 'JSC::NumberPrototype*' increases required 
alignment of target type
../../../Source/JavaScriptCore/heap/Handle.h: In static member function 
'static T* JSC::HandleTypes<T>::getFromSlot(JSC::JSValue*) [with T = 
JSC::Structure]':
../../../Source/JavaScriptCore/heap/Handle.h:155:   instantiated from 
'typename JSC::HandleTypes<T>::ExternalType JSC::Handle<T>::get() const 
[with T = JSC::Structure]'
../../../Source/JavaScriptCore/runtime/ScopeChain.h:40:   instantiated 
from here
../../../Source/JavaScriptCore/heap/Handle.h:82: warning: cast from 
'JSC::JSCell*' to 'JSC::Structure*' increases required alignment of 
target type
mips-linux-gnu-g++ -Wl,-rpath 
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/lib -Wl,-rpath 
/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/lib -Wl,-O1 
-Wl,-rpath,/home/developer/DEV/GIT/qt/release_qt_mips/lib 
-Wl,-rpath,/home/developer/DEV/GIT/owb2/build-mips-webkit/Release/lib -o 
./jsc obj/release/jsc.o    -L./release 
-L/home/developer/DEV/GIT/qt/release_qt_mips/lib -ljscore 
-L/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/lib 
-L/usr/mipsel-hardfloat-linux-gnu/target/connected-labs/usr/lib 
-lQtNetwork -L/home/developer/DEV/GIT/qt/release_qt_mips/lib -lQtCore 
-lpthread
./release/libjscore.a(JITStubs.o): In function `ctiVMThrowTrampoline':
*JITStubs.cpp:(.text+0x64): relocation truncated to fit: R_MIPS_PC16 
against `cti_vm_throw'
./release/libjscore.a(JITStubs.o): In function `cti_op_create_this':
JITStubs.cpp:(.text+0xa8): relocation truncated to fit: R_MIPS_PC16 
against `JITStubThunked_op_create_this'
./release/libjscore.a(JITStubs.o): In function `cti_op_convert_this':
JITStubs.cpp:(.text+0xc8): relocation truncated to fit: R_MIPS_PC16 
against `JITStubThunked_op_convert_this'
./release/libjscore.a(JITStubs.o): In function `cti_op_convert_this_strict':
JITStubs.cpp:(.text+0xe8): relocation truncated to fit: R_MIPS_PC16 
against `JITStubThunked_op_convert_this_strict'
./release/libjscore.a(JITStubs.o): In function `cti_op_add':
JITStubs.cpp:(.text+0x108): relocation truncated to fit: R_MIPS_PC16 
against `JITStubThunked_op_add'
./release/libjscore.a(JITStubs.o): In function `cti_op_pre_inc':
JITStubs.cpp:(.text+0x128): relocation truncated to fit: R_MIPS_PC16 
against `JITStubThunked_op_pre_inc'
./release/libjscore.a(JITStubs.o): In function `cti_timeout_check':
JITStubs.cpp:(.text+0x148): relocation truncated to fit: R_MIPS_PC16 
against `JITStubThunked_timeout_check'
./release/libjscore.a(JITStubs.o): In function `cti_register_file_check':
JITStubs.cpp:(.text+0x168): relocation truncated to fit: R_MIPS_PC16 
against `JITStubThunked_register_file_check'
./release/libjscore.a(JITStubs.o): In function `cti_op_loop_if_lesseq':
JITStubs.cpp:(.text+0x188): relocation truncated to fit: R_MIPS_PC16 
against `JITStubThunked_op_loop_if_lesseq'
./release/libjscore.a(JITStubs.o): In function `cti_op_new_object':
JITStubs.cpp:(.text+0x1a8): relocation truncated to fit: R_MIPS_PC16 
against `JITStubThunked_op_new_object'
./release/libjscore.a(JITStubs.o): In function `cti_op_put_by_id_generic':
JITStubs.cpp:(.text+0x1c8): additional relocation overflows omitted from 
the output
collect2: ld returned 1 exit status*
make[1]: *** [jsc] Error 1
make[1]: Leaving directory 
`/home/developer/DEV/GIT/owb2/build-mips-webkit/Release/JavaScriptCore'
make: *** [sub-JavaScriptCore-jsc-pro-make_default-ordered] Error 2/

I m using gcc version 4.3.2 from Sourcery Toolchain and i'm tryin to 
build the QtWebKit 2.2.0 Master branch.
Is there anybody who encounter this issue ?
Is it a cflags issue ?

Best regards.

Stéphane Cerveau

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-qt/attachments/20111215/0799d3a9/attachment-0001.html>


More information about the webkit-qt mailing list