[Webkit-unassigned] [Bug 282901] [RISCV] Using lshift64 in MacroAssembler for RISCV
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Mon Dec 9 02:56:06 PST 2024
https://bugs.webkit.org/show_bug.cgi?id=282901
david.abd+webkit at gmail.com changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |david.abd+webkit at gmail.com
--- Comment #4 from david.abd+webkit at gmail.com ---
I am compiling webkitgtk-2.47.2 and still see this or similar issue. I checked `Source/JavaScriptCore/assembler/MacroAssembler.h` to make sure that the file is OK.
It seems there are 6 implementations for lshift32 and 5 for lshift64. I assume it needs `void lshift64(TrustedImm32 imm, RegisterID shiftAmount, RegisterID dest)`, which is not implemented. ARM64 has all 6 implemented. Same for X86_64. I didn't check the rest.
Error:
```
builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp
In file included from /builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp:28:
In file included from /builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/bytecode/ArithProfile.h:28:
In file included from /builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/jit/GPRInfo.h:28:
In file included from /builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/assembler/MacroAssembler.h:85:
/builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h:4612:17: warning: enumeration value 'Carry' not handled in switch [-Wswitch]
4612 | switch (cond) {
| ^~~~
In file included from /builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp:28:
In file included from /builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/bytecode/ArithProfile.h:28:
In file included from /builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/jit/GPRInfo.h:28:
/builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/assembler/MacroAssembler.h:1054:9: error: no matching member function for call to 'lshift64'
1054 | lshift64(imm, shiftAmount, dest);
| ^~~~~~~~
/builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h:678:10: note: candidate function not viable: no known conversion from 'TrustedImm32' to 'RegisterID' (aka 'JSC::RISCV64Registers::RegisterID') for 1st argument
678 | void lshift64(RegisterID src, RegisterID shiftAmount, RegisterID dest)
| ^ ~~~~~~~~~~~~~~
/builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h:695:10: note: candidate function not viable: no known conversion from 'TrustedImm32' to 'Address' for 1st argument
695 | void lshift64(Address src, RegisterID shiftAmount, RegisterID dest)
| ^ ~~~~~~~~~~~
/builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h:688:10: note: candidate function not viable: no known conversion from 'TrustedImm32' to 'RegisterID' (aka 'JSC::RISCV64Registers::RegisterID') for 1st argument
688 | void lshift64(RegisterID src, TrustedImm32 imm, RegisterID dest)
| ^ ~~~~~~~~~~~~~~
/builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h:683:10: note: candidate function not viable: requires 2 arguments, but 3 were provided
683 | void lshift64(TrustedImm32 shiftAmount, RegisterID dest)
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/builddir/build/BUILD/webkitgtk-2.47.2-build/webkitgtk-2.47.2/Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h:673:10: note: candidate function not viable: requires 2 arguments, but 3 were provided
673 | void lshift64(RegisterID shiftAmount, RegisterID dest)
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning and 1 error generated.
```
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20241209/7ed62b01/attachment-0001.htm>
More information about the webkit-unassigned
mailing list