Re: devel/glib20 build issue

2020-11-19 Thread Kristof Provost

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 ,

 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"


Re: devel/glib20 build issue

2020-11-19 Thread Dimitry Andric
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 ,
>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


devel/glib20 build issue

2020-11-19 Thread Kristof Provost

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 ,

 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"


[Bug 251251] --cref on ld.lld writes the cref table to stdout even with -Map=filename

2020-11-19 Thread bugzilla-noreply
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"