[Bug 251251] --cref on ld.lld writes the cref table to stdout even with -Map=filename
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=251251 Mark Linimon changed: What|Removed |Added Assignee|b...@freebsd.org|toolch...@freebsd.org -- You are receiving this mail because: You are the assignee for the bug. ___ freebsd-toolchain@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-toolchain To unsubscribe, send any mail to "freebsd-toolchain-unsubscr...@freebsd.org"
devel/glib20 build issue
Hi, While trying to build assorted ports on RISC-V I found that devel/glib20 doesn’t build. It turns out to be due to a missing __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 define. That define is implicitly set by the toolchain. Or, at least, it is on other platforms (ARM, MIPS, x86, …), but not on RISC-V. That’s likely just been forgotten. The following toolchain patch fixes that for me: diff --git a/contrib/llvm-project/clang/lib/Basic/Targets/RISCV.cpp b/contrib/llvm-project/clang/lib/Basic/Targets/RISCV.cpp index 4ba703c8dd1..73f1b5bc446 100644 --- a/contrib/llvm-project/clang/lib/Basic/Targets/RISCV.cpp +++ b/contrib/llvm-project/clang/lib/Basic/Targets/RISCV.cpp @@ -115,8 +115,14 @@ void RISCVTargetInfo::getTargetDefines(const LangOptions &Opts, Builder.defineMacro("__riscv_muldiv"); } - if (HasA) + if (HasA) { Builder.defineMacro("__riscv_atomic"); +Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1"); +Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2"); +Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4"); +if (Is64Bit) + Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8"); + } if (HasF || HasD) { Builder.defineMacro("__riscv_flen", HasD ? "64" : "32"); Best regards, Kristof ___ freebsd-toolchain@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-toolchain To unsubscribe, send any mail to "freebsd-toolchain-unsubscr...@freebsd.org"
Re: devel/glib20 build issue
On 19 Nov 2020, at 11:57, Kristof Provost wrote: > > While trying to build assorted ports on RISC-V I found that devel/glib20 > doesn’t build. > It turns out to be due to a missing __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 > define. That define is implicitly set by the toolchain. Or, at least, it is > on other platforms (ARM, MIPS, x86, …), but not on RISC-V. > > That’s likely just been forgotten. The following toolchain patch fixes that > for me: > > diff --git a/contrib/llvm-project/clang/lib/Basic/Targets/RISCV.cpp > b/contrib/llvm-project/clang/lib/Basic/Targets/RISCV.cpp > index 4ba703c8dd1..73f1b5bc446 100644 > --- a/contrib/llvm-project/clang/lib/Basic/Targets/RISCV.cpp > +++ b/contrib/llvm-project/clang/lib/Basic/Targets/RISCV.cpp > @@ -115,8 +115,14 @@ void RISCVTargetInfo::getTargetDefines(const > LangOptions &Opts, >Builder.defineMacro("__riscv_muldiv"); > } > > - if (HasA) > + if (HasA) { >Builder.defineMacro("__riscv_atomic"); > +Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1"); > +Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2"); > +Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4"); > +if (Is64Bit) > + Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8"); > + } > > if (HasF || HasD) { >Builder.defineMacro("__riscv_flen", HasD ? "64" : "32"); Hi Kristof, Can you please submit this upstream? We already have way too many gratuitous RISC-V differences that haven't been upstreamed. -Dimitry signature.asc Description: Message signed with OpenPGP
Re: devel/glib20 build issue
On 19 Nov 2020, at 11:59, Dimitry Andric wrote: On 19 Nov 2020, at 11:57, Kristof Provost wrote: While trying to build assorted ports on RISC-V I found that devel/glib20 doesn’t build. It turns out to be due to a missing __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 define. That define is implicitly set by the toolchain. Or, at least, it is on other platforms (ARM, MIPS, x86, …), but not on RISC-V. That’s likely just been forgotten. The following toolchain patch fixes that for me: diff --git a/contrib/llvm-project/clang/lib/Basic/Targets/RISCV.cpp b/contrib/llvm-project/clang/lib/Basic/Targets/RISCV.cpp index 4ba703c8dd1..73f1b5bc446 100644 --- a/contrib/llvm-project/clang/lib/Basic/Targets/RISCV.cpp +++ b/contrib/llvm-project/clang/lib/Basic/Targets/RISCV.cpp @@ -115,8 +115,14 @@ void RISCVTargetInfo::getTargetDefines(const LangOptions &Opts, Builder.defineMacro("__riscv_muldiv"); } - if (HasA) + if (HasA) { Builder.defineMacro("__riscv_atomic"); +Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1"); +Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2"); +Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4"); +if (Is64Bit) + Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8"); + } if (HasF || HasD) { Builder.defineMacro("__riscv_flen", HasD ? "64" : "32"); Hi Kristof, Can you please submit this upstream? We already have way too many gratuitous RISC-V differences that haven't been upstreamed. https://reviews.llvm.org/D91784 Best regards, Kristof ___ freebsd-toolchain@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-toolchain To unsubscribe, send any mail to "freebsd-toolchain-unsubscr...@freebsd.org"