All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/1] package/go: bump version to 1.16
@ 2021-02-17 22:21 Christian Stewart
  2021-02-18 10:37 ` Peter Korsgaard
  0 siblings, 1 reply; 7+ messages in thread
From: Christian Stewart @ 2021-02-17 22:21 UTC (permalink / raw)
  To: buildroot

Release notes: https://golang.org/doc/go1.16

The latest Go release, version 1.16, arrives six months after Go 1.15. Most of
its changes are in the implementation of the toolchain, runtime, and libraries.

The linker changes in 1.16 extend the 1.15 improvements to all supported
architecture/OS combinations (the 1.15 performance improvements were primarily
focused on ELF-based OSes and amd64 architectures). For a representative set of
large Go programs, linking is 20-25% faster than 1.15 and requires 5-15% less
memory on average for linux/amd64, with larger improvements for other
architectures and OSes. Most binaries are also smaller as a result of more
aggressive symbol pruning.

Signed-off-by: Christian Stewart <christian@paral.in>
---
 package/go/go.hash | 2 +-
 package/go/go.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/go/go.hash b/package/go/go.hash
index cbc82a9b64..4181fb52c5 100644
--- a/package/go/go.hash
+++ b/package/go/go.hash
@@ -1,3 +1,3 @@
 # From https://golang.org/dl/
-sha256  540c0ab7781084d124991321ed1458e479982de94454a98afab6acadf38497c2  go1.15.8.src.tar.gz
+sha256  7688063d55656105898f323d90a79a39c378d86fe89ae192eb3b7fc46347c95a  go1.16.src.tar.gz
 sha256	2d36597f7117c38b006835ae7f537487207d8ec407aa9d9980794b2030cbc067  LICENSE
diff --git a/package/go/go.mk b/package/go/go.mk
index 7b7f173706..9946682730 100644
--- a/package/go/go.mk
+++ b/package/go/go.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-GO_VERSION = 1.15.8
+GO_VERSION = 1.16
 GO_SITE = https://storage.googleapis.com/golang
 GO_SOURCE = go$(GO_VERSION).src.tar.gz
 
-- 
2.30.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] package/go: bump version to 1.16
  2021-02-17 22:21 [Buildroot] [PATCH 1/1] package/go: bump version to 1.16 Christian Stewart
@ 2021-02-18 10:37 ` Peter Korsgaard
  2021-02-19 11:52   ` Christian Stewart
  0 siblings, 1 reply; 7+ messages in thread
From: Peter Korsgaard @ 2021-02-18 10:37 UTC (permalink / raw)
  To: buildroot

>>>>> "Christian" == Christian Stewart <christian@paral.in> writes:

 > Release notes: https://golang.org/doc/go1.16

The release notes mention changes for i386 machines without SSE support,
but you don't seem to be handling that?

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] package/go: bump version to 1.16
  2021-02-18 10:37 ` Peter Korsgaard
@ 2021-02-19 11:52   ` Christian Stewart
  2021-02-19 12:22     ` Peter Korsgaard
  0 siblings, 1 reply; 7+ messages in thread
From: Christian Stewart @ 2021-02-19 11:52 UTC (permalink / raw)
  To: buildroot

On Thu, Feb 18, 2021 at 2:37 AM Peter Korsgaard <peter@korsgaard.com> wrote:
>
> >>>>> "Christian" == Christian Stewart <christian@paral.in> writes:
>
>  > Release notes: https://golang.org/doc/go1.16
>
> The release notes mention changes for i386 machines without SSE support,
> but you don't seem to be handling that?

I guess you're talking about this section:

 As announced in the Go 1.15 release notes, Go 1.16 drops support for
x87 mode compilation (GO386=387). Support for non-SSE2 processors is
now available using soft float mode (GO386=softfloat). Users running
on non-SSE2 processors should replace GO386=387 with GO386=softfloat.

We don't set GO386 so it doesn't apply.

Best,
Christian

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] package/go: bump version to 1.16
  2021-02-19 11:52   ` Christian Stewart
@ 2021-02-19 12:22     ` Peter Korsgaard
  2021-02-19 12:27       ` Christian Stewart
  0 siblings, 1 reply; 7+ messages in thread
From: Peter Korsgaard @ 2021-02-19 12:22 UTC (permalink / raw)
  To: buildroot

>>>>> "Christian" == Christian Stewart <christian@paral.in> writes:

 > On Thu, Feb 18, 2021 at 2:37 AM Peter Korsgaard <peter@korsgaard.com> wrote:
 >> 
 >> >>>>> "Christian" == Christian Stewart <christian@paral.in> writes:
 >> 
 >> > Release notes: https://golang.org/doc/go1.16
 >> 
 >> The release notes mention changes for i386 machines without SSE support,
 >> but you don't seem to be handling that?

 > I guess you're talking about this section:

 >  As announced in the Go 1.15 release notes, Go 1.16 drops support for
 > x87 mode compilation (GO386=387). Support for non-SSE2 processors is
 > now available using soft float mode (GO386=softfloat). Users running
 > on non-SSE2 processors should replace GO386=387 with GO386=softfloat.

 > We don't set GO386 so it doesn't apply.

But using SSE2 presumably means that go applications built for i386 will
only run on machines with SSE2 support, so as a minimum we need to
adjust BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS to ensure go is not
available on older i386 variants?

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] package/go: bump version to 1.16
  2021-02-19 12:22     ` Peter Korsgaard
@ 2021-02-19 12:27       ` Christian Stewart
  2021-02-19 12:42         ` Peter Korsgaard
  0 siblings, 1 reply; 7+ messages in thread
From: Christian Stewart @ 2021-02-19 12:27 UTC (permalink / raw)
  To: buildroot

Hi Peter,

On Fri, Feb 19, 2021 at 4:22 AM Peter Korsgaard <peter@korsgaard.com> wrote:
>  >  As announced in the Go 1.15 release notes, Go 1.16 drops support for
>  > x87 mode compilation (GO386=387). Support for non-SSE2 processors is
>  > now available using soft float mode (GO386=softfloat). Users running
>  > on non-SSE2 processors should replace GO386=387 with GO386=softfloat.
>
>  > We don't set GO386 so it doesn't apply.
>
> But using SSE2 presumably means that go applications built for i386 will
> only run on machines with SSE2 support, so as a minimum we need to
> adjust BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS to ensure go is not
> available on older i386 variants?

Better to just set GO386=softfloat for older i386 variants without SSE2.

IMO, this seems like a separate issue from the version bump.

Best regards,
Christian

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] package/go: bump version to 1.16
  2021-02-19 12:27       ` Christian Stewart
@ 2021-02-19 12:42         ` Peter Korsgaard
  2021-02-19 23:50           ` Christian Stewart
  0 siblings, 1 reply; 7+ messages in thread
From: Peter Korsgaard @ 2021-02-19 12:42 UTC (permalink / raw)
  To: buildroot

>>>>> "Christian" == Christian Stewart <christian@paral.in> writes:

 > Hi Peter,
 > On Fri, Feb 19, 2021 at 4:22 AM Peter Korsgaard <peter@korsgaard.com> wrote:
 >> >  As announced in the Go 1.15 release notes, Go 1.16 drops support for
 >> > x87 mode compilation (GO386=387). Support for non-SSE2 processors is
 >> > now available using soft float mode (GO386=softfloat). Users running
 >> > on non-SSE2 processors should replace GO386=387 with GO386=softfloat.
 >> 
 >> > We don't set GO386 so it doesn't apply.
 >> 
 >> But using SSE2 presumably means that go applications built for i386 will
 >> only run on machines with SSE2 support, so as a minimum we need to
 >> adjust BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS to ensure go is not
 >> available on older i386 variants?

 > Better to just set GO386=softfloat for older i386 variants without SSE2.

 > IMO, this seems like a separate issue from the version bump.

Why? Isn't that new behaviour? If so, this should be fixed as part of
the version bump.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] package/go: bump version to 1.16
  2021-02-19 12:42         ` Peter Korsgaard
@ 2021-02-19 23:50           ` Christian Stewart
  0 siblings, 0 replies; 7+ messages in thread
From: Christian Stewart @ 2021-02-19 23:50 UTC (permalink / raw)
  To: buildroot

Hi Peter,

On Fri, Feb 19, 2021 at 4:42 AM Peter Korsgaard <peter@korsgaard.com> wrote:
>  >> > We don't set GO386 so it doesn't apply.
>  >>
>  >> But using SSE2 presumably means that go applications built for i386 will
>  >> only run on machines with SSE2 support, so as a minimum we need to
>  >> adjust BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS to ensure go is not
>  >> available on older i386 variants?
>
>  > Better to just set GO386=softfloat for older i386 variants without SSE2.
>
>  > IMO, this seems like a separate issue from the version bump.
>
> Why? Isn't that new behaviour? If so, this should be fixed as part of
> the version bump.

OK, I will submit a v2 which sets it if SSE2 is unavailable.

Defconfig:

BR2_x86_i486=y
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
BR2_PACKAGE_RUNC=y

In v2 it should set

$(if $(GO_GO386),GO386=$(GO_GO386))

# i386: use softfloat if no SSE2: https://golang.org/doc/go1.16#386
ifneq ($(BR2_X86_CPU_HAS_SSE2),y)
GO_GO386 = softfloat
endif

Best,
Christian

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-02-19 23:50 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-17 22:21 [Buildroot] [PATCH 1/1] package/go: bump version to 1.16 Christian Stewart
2021-02-18 10:37 ` Peter Korsgaard
2021-02-19 11:52   ` Christian Stewart
2021-02-19 12:22     ` Peter Korsgaard
2021-02-19 12:27       ` Christian Stewart
2021-02-19 12:42         ` Peter Korsgaard
2021-02-19 23:50           ` Christian Stewart

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.