[webkit-dev] Error "Unknown architecture." on ppc64le and s390x
Eike Rathke
erack at redhat.com
Thu Nov 28 13:15:12 PST 2019
Hi,
In Fedora rawhide WebKitGTK 2.27.3 fails to build on ppc64le and s390x with
... -c ../Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp
In file included from ../Source/JavaScriptCore/heap/Heap.h:31,
from ../Source/JavaScriptCore/heap/DeferGC.h:29,
from ../Source/JavaScriptCore/runtime/ConcurrentJSLock.h:28,
from ../Source/JavaScriptCore/bytecode/ArrayProfile.h:28,
from ../Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp:29:
../Source/JavaScriptCore/heap/GCMemoryOperations.h:125:2: error: #error "Unknown architecture."
125 | #error "Unknown architecture."
| ^~~~~
../Source/JavaScriptCore/heap/GCMemoryOperations.h:241:2: error: #error "Unknown architecture."
241 | #error "Unknown architecture."
| ^~~~~
../Source/JavaScriptCore/heap/GCMemoryOperations.h:299:2: error: #error "Unknown architecture."
299 | #error "Unknown architecture."
| ^~~~~
In file included from ../Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp:28:
../Source/JavaScriptCore/bytecode/ArithProfile.h:263:38: warning: comparison of promoted ~unsigned with unsigned [-Wsign-compare]
263 | static_assert(specialFastPathBit > ~clearLhsObservedTypeBitMask, "These bits should not intersect and specialFastPathBit should be a higher bit.");
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../Source/JavaScriptCore/heap/Heap.h:31,
from ../Source/JavaScriptCore/heap/DeferGC.h:29,
from ../Source/JavaScriptCore/runtime/ConcurrentJSLock.h:28,
from ../Source/JavaScriptCore/bytecode/ArrayProfile.h:28,
from ../Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp:29:
../Source/JavaScriptCore/heap/GCMemoryOperations.h: In instantiation of 'void JSC::gcSafeZeroMemory(T*, size_t) [with T = JSC::WriteBarrierBase<JSC::Unknown, WTF::DumbValueTraits<JSC::Unknown> >; size_t = long unsigned int]':
../Source/JavaScriptCore/runtime/JSObject.h:1183:101: required from here
../Source/JavaScriptCore/heap/GCMemoryOperations.h:253:40: warning: unused parameter 'dst' [-Wunused-parameter]
253 | ALWAYS_INLINE void gcSafeZeroMemory(T* dst, size_t bytes)
| ~~~^~~
Reason apparently is that for USE(JSVALUE64) the path
#if COMPILER(GCC_COMPATIBLE) && USE(JSVALUE64)
is hit but only implemented for CPU(X86_64) and CPU(ARM64)
As a quick remedy patching those places out to something like
#if COMPILER(GCC_COMPATIBLE) && 0
for those architectures probably should work to use "the other"
implementation, have to try.
Other than that, the #if directives should cater for unknown CPU values
and use the default non-GCC implementation.
Thanks
Eike
--
GPG key 0x6A6CD5B765632D3A - 2265 D7F3 A7B0 95CC 3918 630B 6A6C D5B7 6563 2D3A
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20191128/c5afc66f/attachment.bin>
More information about the webkit-dev
mailing list