RESOLVED INVALID 104270
disabling JIT should disable also the YARR JIT
https://bugs.webkit.org/show_bug.cgi?id=104270
Summary disabling JIT should disable also the YARR JIT
Dan Horák
Reported 2012-12-06 09:46:27 PST
I get a build failure when building webkitgtk3-1.11.2 in Fedora/s390x because it looks like that YARR JIT is still enabled while JIT is disabled in the configure command and this combination sets ASSEMBLER to enabled state. The logic in Source/WTF/wtf/Platform.h has some error. ... g++ -DHAVE_CONFIG_H -I. -Wall -W -Wcast-align -Wchar-subscripts -Wreturn-type -Wformat -Wformat-security -Wno-format-y2k -Wundef -Wmissing-format-attribute -Wpointer-arith -Wwrite-strings -Wno-unused-parameter -Wno-parentheses -fno-exceptions -DENABLE_GLIB_SUPPORT=1 -DBUILDING_CAIRO__=1 -DBUILDING_GTK__=1 -DWTF_CHANGES -DBUILDING_WEBKIT2__=1 -DXP_UNIX -DMOZ_X11 -DWTF_USE_ICU_UNICODE=1 -DWTF_USE_GSTREAMER=1 -DWTF_USE_ACCELERATED_COMPOSITING=1 -DENABLE_3D_RENDERING=1 -DWTF_USE_TEXTURE_MAPPER=1 -DWTF_USE_TEXTURE_MAPPER_GL=1 -DWTF_USE_GLX=1 -DWTF_USE_EGL=1 -DWTF_USE_OPENGL=1 -DNDEBUG -DENABLE_JIT=0 -I./Source -I./Source/JavaScriptCore -I./Source/JavaScriptCore/API -I./Source/JavaScriptCore/assembler -I./Source/JavaScriptCore/bytecode -I./Source/JavaScriptCore/bytecompiler -I./Source/JavaScriptCore/dfg -I./Source/JavaScriptCore/disassembler -I./Source/JavaScriptCore/heap -I./Source/JavaScriptCore/debugger -I./Source/JavaScriptCore/ForwardingHeaders -I./Source/JavaScriptCore/interpreter -I./Source/JavaScriptCore/jit -I./Source/JavaScriptCore/jit -I./Source/JavaScriptCore/llint -I./Source/JavaScriptCore/parser -I./Source/JavaScriptCore/profiler -I./Source/JavaScriptCore/runtime -I./Source/JavaScriptCore/tools -I./Source/JavaScriptCore/yarr -I./DerivedSources/JavaScriptCore -I./Source/WTF -O2 -g1 -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -march=z9-109 -mtune=z10 -Wno-c++0x-compat -O2 -c -o Source/JavaScriptCore/llint/Programs_LLIntOffsetsExtractor-LLIntOffsetsExtractor.o `test -f 'Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp' || echo './'`Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp In file included from ./Source/JavaScriptCore/bytecode/ValueRecovery.h:31:0, from ./Source/JavaScriptCore/bytecode/CodeOrigin.h:29, from ./Source/JavaScriptCore/bytecode/CodeBlock.h:38, from Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp:29: ./Source/JavaScriptCore/assembler/MacroAssembler.h:62:2: error: #error "The MacroAssembler is not supported on this platform." ... full logs at http://s390.koji.fedoraproject.org/koji/taskinfo?taskID=878782
Attachments
Dan Horák
Comment 1 2012-12-17 09:05:06 PST
I think the problem is in the snippet from WTF/wtf/Platform.h (below), LLINT_C_LOOP is enabled on eg. s390x (where JIT is explicitly disabled) which leads to YARR also being enabled. I can YARR only x86/x86_64, MIPS, SH4 and ARM support in the YARR code. ... /* Yet Another Regex Runtime - turned on by default for JIT enabled ports. */ #if !defined(ENABLE_YARR_JIT) && (ENABLE(JIT) || ENABLE(LLINT_C_LOOP)) && !PLATFORM(CHROMIUM) && !(OS(QNX) && PLATFORM(QT)) #define ENABLE_YARR_JIT 1 /* Setting this flag compares JIT results with interpreter results. */ #define ENABLE_YARR_JIT_DEBUG 0 #endif ...
Gavin Barraclough
Comment 2 2013-05-24 18:00:52 PDT
We provide the ability to compile in the YARR_JIT and/or the JS language JITs – this is intentional (when bringing up new architectures, we often compile in only the YARR_JIT, and not the JIT). If you don't want to builds the YARR_JIT for your platform, please just disable it!
Dan Horák
Comment 3 2013-05-24 23:45:38 PDT
(In reply to comment #2) > We provide the ability to compile in the YARR_JIT and/or the JS language JITs – this is intentional (when bringing up new architectures, we often compile in only the YARR_JIT, and not the JIT). If you don't want to builds the YARR_JIT for your platform, please just disable it! So there is a configure switch to disable YARR_JIT?
Note You need to log in before you can comment on or make changes to this bug.