Bug 149044

Summary: REGRESSION(r189575): Appears to break ARM64 linux builds
Product: WebKit Reporter: Michael Saboff <msaboff>
Component: JavaScriptCoreAssignee: Michael Saboff <msaboff>
Status: RESOLVED FIXED    
Severity: Normal CC: ossy
Priority: P2    
Version: Other   
Hardware: Other   
OS: Linux   
Bug Depends on:    
Bug Blocks: 108645, 148666    
Attachments:
Description Flags
Patch with speculative fix for ARM64 Linux fpizlo: review+

Description Michael Saboff 2015-09-10 13:44:04 PDT
Looking at build bot output, it appears that r189575 broke ARM64 linux builds.

Like this is fixed by replacing 4 occurrences of "fp" with "x29" in llintLowLevelInterpreter.asm.

Build output at https://build.webkit.org/builders/EFL%20Linux%20AArch64%20Release/builds/3263/steps/compile-webkit/logs/stdio:
FAILED: /usr/lib/icecc/bin_aarch64/aarch64-linux-gnu-g++  -w --sysroot=/ -I/usr/include -I/usr/include/aarch64-linux-gnu  -DBUILDING_EFL__=1 -DBUILDING_JavaScriptCore -DBUILDING_WITH_CMAKE=1 -DDATA_DIR=\"/usr/local/share/ewebkit2-1\" -DDEFAULT_THEME_DIR=\"/home/oszi/slaves/efl-arm64/buildslave/efl-linux-aarch64-release/build/WebKitBuild/Release/WebCore/platform/efl/DefaultTheme\" -DHAVE_CONFIG_H=1 -DJavaScriptCore_EXPORTS -DSTATICALLY_LINKED_WITH_WTF -DUSE_CROSS_PLATFORM_CONTEXT_MENUS=1 -DUSE_GSTREAMER_MPEGTS -DUSE_WEBAUDIO_GSTREAMER=1 -DWEBKIT_EXEC_PATH=\"/home/oszi/slaves/efl-arm64/buildslave/efl-linux-aarch64-release/build/WebKitBuild/Release/bin\" -DWEB_INSPECTOR_DIR=\"/home/oszi/slaves/efl-arm64/buildslave/efl-linux-aarch64-release/build/WebKitBuild/Release/share/ewebkit2-1/inspector\" -std=c++11 -std=c++11 -O3 -DNDEBUG -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-rtti -fPIC -I. -I../../Source/JavaScriptCore -I../../Source/JavaScriptCore/.. -I../../Source/JavaScriptCore/API -I../../Source/JavaScriptCore/ForwardingHeaders -I../../Source/JavaScriptCore/assembler -I../../Source/JavaScriptCore/bindings -I../../Source/JavaScriptCore/builtins -I../../Source/JavaScriptCore/bytecode -I../../Source/JavaScriptCore/bytecompiler -I../../Source/JavaScriptCore/dfg -I../../Source/JavaScriptCore/disassembler -I../../Source/JavaScriptCore/ftl -I../../Source/JavaScriptCore/heap -I../../Source/JavaScriptCore/debugger -I../../Source/JavaScriptCore/inspector -I../../Source/JavaScriptCore/inspector/agents -I../../Source/JavaScriptCore/inspector/augmentable -I../../Source/JavaScriptCore/inspector/remote -I../../Source/JavaScriptCore/interpreter -I../../Source/JavaScriptCore/jit -I../../Source/JavaScriptCore/llint -I../../Source/JavaScriptCore/llvm -I../../Source/JavaScriptCore/parser -I../../Source/JavaScriptCore/profiler -I../../Source/JavaScriptCore/replay -I../../Source/JavaScriptCore/runtime -I../../Source/JavaScriptCore/tools -I../../Source/JavaScriptCore/wasm -I../../Source/JavaScriptCore/yarr -IDerivedSources -IDerivedSources/ForwardingHeaders -IDerivedSources/JavaScriptCore -IDerivedSources/JavaScriptCore/inspector -I../../Source/JavaScriptCore/disassembler/udis86 -I../DependenciesEFL/Root/include/efl-1 -I../DependenciesEFL/Root/include/ecore-1 -I../DependenciesEFL/Root/include/glib-2.0 -I../DependenciesEFL/Root/lib/glib-2.0/include -I../DependenciesEFL/Root/include/eina-1 -I../DependenciesEFL/Root/include/eina-1/eina -I../DependenciesEFL/Root/include/eo-1 -I../../Source/WTF -I../../Source/WTF/wtf/efl -isystem /usr/include/aarch64-linux-gnu    -Werror -Wall -Wextra -Wcast-align -Wformat-security -Wmissing-format-attribute -Wpointer-arith -Wundef -Wwrite-strings -MMD -MT Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o -MF "Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o.d" -o Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/llint/LowLevelInterpreter.cpp.o -c ../../Source/JavaScriptCore/llint/LowLevelInterpreter.cpp
/tmp/ccjhCOrJ.s: Assembler messages:
/tmp/ccjhCOrJ.s:664: Error: integer 64-bit register expected at operand 3 -- `stp x27,x28,[fp,#-16]'
/tmp/ccjhCOrJ.s:665: Error: integer 64-bit register expected at operand 3 -- `stp xzr,x26,[fp,#-32]'
/tmp/ccjhCOrJ.s:719: Error: integer 64-bit register expected at operand 3 -- `stp x27,x28,[fp,#-16]'
/tmp/ccjhCOrJ.s:720: Error: integer 64-bit register expected at operand 3 -- `stp xzr,x26,[fp,#-32]'
/tmp/ccjhCOrJ.s:774: Error: integer 64-bit register expected at operand 3 -- `stp x27,x28,[fp,#-16]'
/tmp/ccjhCOrJ.s:775: Error: integer 64-bit register expected at operand 3 -- `stp xzr,x26,[fp,#-32]'
/tmp/ccjhCOrJ.s:834: Error: integer 64-bit register expected at operand 3 -- `stp x27,x28,[fp,#-16]'
/tmp/ccjhCOrJ.s:835: Error: integer 64-bit register expected at operand 3 -- `stp xzr,x26,[fp,#-32]'
/tmp/ccjhCOrJ.s:912: Error: integer 64-bit register expected at operand 3 -- `stp x27,x28,[fp,#-16]'
/tmp/ccjhCOrJ.s:913: Error: integer 64-bit register expected at operand 3 -- `stp xzr,x26,[fp,#-32]'
/tmp/ccjhCOrJ.s:991: Error: integer 64-bit register expected at operand 3 -- `stp x27,x28,[fp,#-16]'
/tmp/ccjhCOrJ.s:992: Error: integer 64-bit register expected at operand 3 -- `stp xzr,x26,[fp,#-32]'
/tmp/ccjhCOrJ.s:1111: Error: integer 64-bit register expected at operand 3 -- `stp x27,x28,[fp,#-16]'
/tmp/ccjhCOrJ.s:1112: Error: integer 64-bit register expected at operand 3 -- `stp xzr,x26,[fp,#-32]'
/tmp/ccjhCOrJ.s:4445: Error: integer 64-bit register expected at operand 3 -- `ldp xzr,x26,[fp,#-32]'
/tmp/ccjhCOrJ.s:4446: Error: integer 64-bit register expected at operand 3 -- `ldp x27,x28,[fp,#-16]'
/tmp/ccjhCOrJ.s:4558: Error: integer 64-bit register expected at operand 3 -- `ldp xzr,x26,[fp,#-32]'
/tmp/ccjhCOrJ.s:4559: Error: integer 64-bit register expected at operand 3 -- `ldp x27,x28,[fp,#-16]'
ninja: build stopped: subcommand failed.
program finished with exit code 1
Comment 1 Michael Saboff 2015-09-10 13:48:32 PDT
Created attachment 260948 [details]
Patch with speculative fix for ARM64 Linux
Comment 2 Michael Saboff 2015-09-10 13:50:40 PDT
Committed r189588: <http://trac.webkit.org/changeset/189588>
Comment 3 Csaba Osztrogonác 2015-09-10 15:00:53 PDT
(In reply to comment #2)
> Committed r189588: <http://trac.webkit.org/changeset/189588>

Thanks for the fix.