This is not a fix for the relocation errors seen at link time in
previous builds.

  http://build-failures.rhaalovely.net/riscv64/2021-11-05/www/webkitgtk4.log

I don't know how to fix those errors in LLint.  Maybe some of the asm
involved isn't position-independant enough (the .cpp files themselves
are built with -fPIC).

This commit is what introduces partial riscv64 native support, it's not
complete yet:

  
https://github.com/WebKit/WebKit/commit/d9b48eb602eb0269030f018afddd16c560d0b501

Our port already contains logic to force-disable JIT and force-enable
the C_LOOP interpreter on some architectures.  alas the flag name for
C_LOOP has changed.  This is the reason why C_LOOP wasn't forced on
riscv64.

ok?

PS: I'm not sure a REVISION bump is needed.  The diff unbreaks riscv64
and may affect a bunch of architectures that don't have any kind of
assembler support.  The latter already have C_LOOP enabled by default
per Source/cmake/WebKitFeatures.cmake:93.  Should we reverse the logic
and always enforce JIT=NO/C_LOOP=YES on !(amd64|aarch64)?


Index: Makefile
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/Makefile,v
retrieving revision 1.156
diff -u -p -r1.156 Makefile
--- Makefile    3 Nov 2021 16:37:11 -0000       1.156
+++ Makefile    24 Nov 2021 21:19:03 -0000
@@ -113,12 +113,13 @@ CONFIGURE_ARGS += -DUSE_WPE_RENDERER=OFF
 CONFIGURE_ARGS +=      -DENABLE_GAMEPAD=OFF
 
 # sync with Source/JavaScriptCore/assembler/MacroAssembler.h
+# riscv64 has JIT support but fails to link with relocation errors
 .if ${MACHINE_ARCH} != "aarch64" && ${MACHINE_ARCH} != "amd64" && \
     ${MACHINE_ARCH} != "arm" && ${MACHINE_ARCH} != "i386" && \
     ${MACHINE_ARCH} != "mips64" && ${MACHINE_ARCH} != "mips64el"
 # #error "The MacroAssembler is not supported on this platform."
 CONFIGURE_ARGS +=      -DENABLE_JIT=OFF
-CONFIGURE_ARGS +=      -DENABLE_LLINT_C_LOOP=ON
+CONFIGURE_ARGS +=      -DENABLE_C_LOOP=ON
 .endif
 
 


-- 
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF  DDCC 0DFA 74AE 1524 E7EE

Reply via email to