WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
274826
[GTK] [2.45.3] riscv: LowLevelInterpreter.cpp:610:78: error: expected ‘)’ before ‘OFFLINE_ASM_ALIGN_TRAP’
https://bugs.webkit.org/show_bug.cgi?id=274826
Summary
[GTK] [2.45.3] riscv: LowLevelInterpreter.cpp:610:78: error: expected ‘)’ bef...
Alberto Garcia
Reported
2024-05-29 05:04:01 PDT
In file included from /home/berto/webkit2gtk-2.45.3/Source/JavaScriptCore/assembler/MacroAssembler.h:81, from /home/berto/webkit2gtk-2.45.3/Source/JavaScriptCore/jit/Reg.h:30, from /home/berto/webkit2gtk-2.45.3/Source/JavaScriptCore/jit/RegisterAtOffset.h:30, from /home/berto/webkit2gtk-2.45.3/Source/JavaScriptCore/jit/RegisterAtOffsetList.h:30, from /home/berto/webkit2gtk-2.45.3/Source/JavaScriptCore/wasm/WasmCallee.h:32, from /home/berto/webkit2gtk-2.45.3/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp:633: /home/berto/webkit2gtk-2.45.3/Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h: In member function ‘void JSC::MacroAssemblerRISCV64::testFinalize(ResultCondition, JSC::AbstractMacroAssembler<JSC::RISCV64Assembler>::RegisterID, JSC::AbstractMacroAssembler<JSC::RISCV64Assembler>::RegisterID)’: /home/berto/webkit2gtk-2.45.3/Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h:4463:16: warning: enumeration value ‘Carry’ not handled in switch [-Wswitch] 4463 | switch (cond) { | ^ /home/berto/webkit2gtk-2.45.3/build-soup3/JavaScriptCore/DerivedSources/LLIntAssembly.h: At global scope: /home/berto/webkit2gtk-2.45.3/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp:610:78: error: expected ‘)’ before ‘OFFLINE_ASM_ALIGN_TRAP’ 610 | OFFLINE_ASM_GLOBAL_LABEL_IMPL(label, OFFLINE_ASM_NO_ALT_ENTRY_DIRECTIVE, OFFLINE_ASM_ALIGN_TRAP(align), HIDE_SYMBOL) | ^~~~~~~~~~~~~~~~~~~~~~ /home/berto/webkit2gtk-2.45.3/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp:573:5: note: in definition of macro ‘OFFLINE_ASM_GLOBAL_LABEL_IMPL’ 573 | ALIGNMENT \ | ^~~~~~~~~ /home/berto/webkit2gtk-2.45.3/build-soup3/JavaScriptCore/DerivedSources/LLIntAssembly.h:104463:1: note: in expansion of macro ‘OFFLINE_ASM_ALIGNED_GLOBAL_LABEL’ 104463 | OFFLINE_ASM_ALIGNED_GLOBAL_LABEL(ipint_unreachable_validate, 256) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Attachments
Add attachment
proposed patch, testcase, etc.
Andreas Schwab
Comment 1
2024-10-05 14:22:38 PDT
+#elif CPU(RISCV64) +#define OFFLINE_ASM_ALIGN_TRAP(align) OFFLINE_ASM_BEGIN_SPACER "\n .balignw " #align ", 0x9002\n" // pad with c.ebreak instructions
Alberto Garcia
Comment 2
2024-10-05 16:57:06 PDT
That does not seem to be enough: In file included from webkit2gtk-2.46.1/Source/JavaScriptCore/assembler/MacroAssembler.h:81, from webkit2gtk-2.46.1/Source/JavaScriptCore/jit/GPRInfo.h:28, from webkit2gtk-2.46.1/Source/JavaScriptCore/bytecode/ArithProfile.h:28, from webkit2gtk-2.46.1/Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp:28: webkit2gtk-2.46.1/Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h: In member function ‘void JSC::MacroAssemblerRISCV64::testFinalize(ResultCondition, JSC::AbstractMacroAssembler<JSC::RISCV64Assembler>::RegisterID, JSC::AbstractMacroAssembler<JSC::RISCV64Assembler>::RegisterID)’: webkit2gtk-2.46.1/Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h:4508:16: warning: enumeration value ‘Carry’ not handled in switch [-Wswitch] 4508 | switch (cond) { | ^ webkit2gtk-2.46.1/Source/JavaScriptCore/jit/GPRInfo.h: At global scope: webkit2gtk-2.46.1/Source/JavaScriptCore/jit/GPRInfo.h:759:38: error: ‘RICSV64Registers’ has not been declared 759 | static constexpr GPRReg regWS0 = RICSV64Registers::x6; | ^~~~~~~~~~~~~~~~ webkit2gtk-2.46.1/Source/JavaScriptCore/jit/GPRInfo.h:760:38: error: ‘RICSV64Registers’ has not been declared 760 | static constexpr GPRReg regWS1 = RICSV64Registers::x7; | ^~~~~~~~~~~~~~~~ webkit2gtk-2.46.1/Source/JavaScriptCore/jit/GPRInfo.h:761:38: error: ‘RICSV64Registers’ has not been declared 761 | static constexpr GPRReg regWA0 = RICSV64Registers::x10; | ^~~~~~~~~~~~~~~~ webkit2gtk-2.46.1/Source/JavaScriptCore/jit/GPRInfo.h:762:38: error: ‘RICSV64Registers’ has not been declared 762 | static constexpr GPRReg regWA1 = RICSV64Registers::x11; | ^~~~~~~~~~~~~~~~ webkit2gtk-2.46.1/Source/JavaScriptCore/jit/GPRInfo.h:763:38: error: ‘RICSV64Registers’ has not been declared 763 | static constexpr GPRReg regWA2 = RICSV64Registers::x12; | ^~~~~~~~~~~~~~~~ webkit2gtk-2.46.1/Source/JavaScriptCore/jit/GPRInfo.h:764:38: error: ‘RICSV64Registers’ has not been declared 764 | static constexpr GPRReg regWA3 = RICSV64Registers::x13; | ^~~~~~~~~~~~~~~~ webkit2gtk-2.46.1/Source/JavaScriptCore/jit/GPRInfo.h:765:38: error: ‘RICSV64Registers’ has not been declared 765 | static constexpr GPRReg regWA4 = RICSV64Registers::x14; | ^~~~~~~~~~~~~~~~ webkit2gtk-2.46.1/Source/JavaScriptCore/jit/GPRInfo.h:766:38: error: ‘RICSV64Registers’ has not been declared 766 | static constexpr GPRReg regWA5 = RICSV64Registers::x15; | ^~~~~~~~~~~~~~~~ webkit2gtk-2.46.1/Source/JavaScriptCore/jit/GPRInfo.h:767:38: error: ‘RICSV64Registers’ has not been declared 767 | static constexpr GPRReg regWA6 = RICSV64Registers::x16; | ^~~~~~~~~~~~~~~~ webkit2gtk-2.46.1/Source/JavaScriptCore/jit/GPRInfo.h:768:38: error: ‘RICSV64Registers’ has not been declared 768 | static constexpr GPRReg regWA7 = RICSV64Registers::x17; | ^~~~~~~~~~~~~~~~
Andreas Schwab
Comment 3
2024-10-21 14:57:37 PDT
https://bugs.webkit.org/show_bug.cgi?id=281380
Alberto Garcia
Comment 4
2024-10-22 04:18:52 PDT
Oh, I see. With that and your patch from
comment #1
it gets a bit better but I still cannot make it build: FAILED: JavaScriptCore/DerivedSources/LLIntDesiredOffsets.h /home/berto/webkit2gtk-2.46.2/build-soup3/JavaScriptCore/DerivedSources/LLIntDesiredOffsets.h cd /home/berto/webkit2gtk-2.46.2/build-soup3/Source/JavaScriptCore && /usr/bin/ruby /home/berto/webkit2gtk-2.46.2/Source/JavaScriptCore/offlineasm/generate_offset_extractor.rb -I/home/berto/webkit2gtk-2.46.2/build-soup3/JavaScriptCore/DerivedSources/ /home/berto/webkit2gtk-2.46.2/Source/JavaScriptCore/llint/LowLevelInterpreter.asm /home/berto/webkit2gtk-2.46.2/build-soup3/bin/LLIntSettingsExtractor /home/berto/webkit2gtk-2.46.2/build-soup3/JavaScriptCore/DerivedSources/LLIntDesiredOffsets.h C_LOOP normal LowLevelInterpreter.asm:2738 in call to entry: Could not find macro entry (MacroError) ninja: build stopped: subcommand failed. This is webkitgtk 2.46.2 and I'm using -DENABLE_JIT=OFF -DENABLE_WEBASSEMBLY=OFF
Michael Orlitzky
Comment 5
2024-11-14 06:31:38 PST
***
Bug 281138
has been marked as a duplicate of this bug. ***
Michael Orlitzky
Comment 6
2024-11-14 06:36:09 PST
This _particular_ error was fixed by
https://github.com/WebKit/WebKit/pull/36458
If you check the recent open/closed PRs on Github with "riscv" in the name, there are several others in the pipeline to fix riscv build failures (thanks to MingZhu Yan).
Michael Catanzaro
Comment 7
2024-12-10 14:45:06 PST
(In reply to Michael Orlitzky from
comment #6
)
> This _particular_ error was fixed by >
https://github.com/WebKit/WebKit/pull/36458
Thanks for flagging this.
EWS
Comment 8
2024-12-11 15:13:13 PST
Committed
287700@main
(23ae044647e7): <
https://commits.webkit.org/287700@main
> Reviewed commits have been landed. Closing PR #37767 and removing active labels.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug